Skip to content

Commit a5670b0

Browse files
committed
feat: run real sync against github test org in tests
1 parent 234da90 commit a5670b0

4 files changed

Lines changed: 78 additions & 0 deletions

File tree

.github/workflows/real-test.yaml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# SPDX-FileCopyrightText: 2025 DB Systel GmbH
2+
#
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
name: Test with real GitHub org
6+
7+
on:
8+
pull_request:
9+
workflow_dispatch:
10+
11+
jobs:
12+
selftest:
13+
runs-on: ubuntu-24.04
14+
env:
15+
GITHUB_APP_ID: ${{ secrets.TEST_GITHUB_APP_ID }}
16+
GITHUB_APP_PRIVATE_KEY: ${{ secrets.TEST_GITHUB_APP_PRIVATE_KEY }}
17+
steps:
18+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
19+
- uses: ./.github/actions/poetrybuild
20+
- name: Replace data in config files
21+
run: |
22+
sed -i "s/TEST_GITHUB_ORG/${{ secrets.TEST_GITHUB_ORG }}/g" tests/data/config/org.yaml
23+
- name: Make a test dry-run
24+
run: poetry run gh-org-mgr sync -c tests/data/config/ --dry -vv

tests/data/config/app.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# SPDX-FileCopyrightText: 2024 DB Systel GmbH
2+
# SPDX-License-Identifier: CC0-1.0
3+
4+
# ------------------------------------------------------------------------------
5+
# General configuration for this program
6+
# ------------------------------------------------------------------------------
7+
8+
# github_token: ghp_test
9+
# github_app_id: 12345
10+
# github_app_private_key: |
11+
# ------BEGIN RSA PRIVATE KEY-----
12+
# ...
13+
# ------END RSA PRIVATE KEY-----
14+
15+
# Delete teams that are not configured
16+
delete_unconfigured_teams: true
17+
18+
# Remove members that are not configured
19+
remove_members_without_team: true

tests/data/config/org.yaml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# SPDX-FileCopyrightText: 2025 DB Systel GmbH
2+
# SPDX-License-Identifier: CC0-1.0
3+
4+
# ------------------------------------------------------------------------------
5+
# General configuration for the GitHub organisation
6+
# ------------------------------------------------------------------------------
7+
8+
# Name of the GitHub organisation
9+
org_name: TEST_GITHUB_ORG
10+
org_owners:
11+
- mxmehl
12+
13+
# Default settings. Will be overridden if set in a team.
14+
# If neither defaults nor team settings are present:
15+
# - when creating a new team, will take GitHub's defaults.
16+
# - when syncing settting of a team, will not touch the current status.
17+
defaults:
18+
team:
19+
# Description of a team
20+
# description: ""
21+
# Level of privacy of a team. Can be "secret" or "closed"
22+
privacy: "closed"
23+
# Notification setting of a team. Can be "notifications_enabled" or "notifications_disabled"
24+
notification_setting: "notifications_enabled"
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# SPDX-FileCopyrightText: 2025 DB Systel GmbH
2+
# SPDX-License-Identifier: CC0-1.0
3+
4+
Test1:
5+
description: First test team
6+
member:
7+
8+
Test2:
9+
privacy: secret
10+
description: Second test team
11+
member:

0 commit comments

Comments
 (0)