Skip to content

ci: synchronize organization settings and shared workflows - #993

Merged
ReenigneArcher merged 22 commits into
masterfrom
codex/file-sync-preview
Nov 7, 2026
Merged

ReenigneArcher merged 22 commits into
masterfrom
codex/file-sync-preview

Conversation

@ReenigneArcher

@ReenigneArcher ReenigneArcher commented Nov 6, 2026 •

Copy link
Copy Markdown
Member

Description

Replace the legacy global replicator and topic-based workflow gates with one org_sync invocation, one sync policy, and the shared organizations.json registry.

  • Keep file rules, custom-property definitions, and administration in .github/org-sync.json. The registry drives discovery and organization administration, excluding the source org from administration.
  • Sync only credential names required by the active moving projects to their destination organizations. New secrets/variables default to all-repository access; later value updates preserve manual visibility and selected-repository access. Codecov credentials are configured manually and excluded from the policy and controller bindings.
  • Preserve project identity fields while copying shared settings, active Actions policies, blocked users, security configurations/defaults, and source Discord hooks. Do not copy CLA Assistant or commit webhook receiver credentials.
  • Sync shared community health files to repositories named .github across the registry. Retain workflow profiles, deselection cleanup, and obsolete Docker cleanup; replace topic checks with workflow_profiles.
  • Run one job: internal PRs preview unconditionally; master pushes, midnight UTC schedules, and organization/full dispatches deliver. Exact-repository runs are file-only. Preserve fork restrictions and omit administration for Dependabot events.
  • Repair the dead support-docs link. Document current policy behavior and transfer prerequisites.

Pin actions v2026.1107.144430 at 2dfa92c5136a2c66c5614ec766cc679f6f537334 for combined-policy support and access-preserving credential updates. File delivery creates target PRs; those PRs are not automatically merged.

Screenshot

Issues Fixed or Closed

Roadmap Issues

Testing

  • Local npm test: 170 tests passed, including expected org/kind/name mappings, explicit credential destinations, absence of repository-access policies, manual Codecov handling, community health defaults, and property-based workflow gates.
  • The exact pinned action loaders accept the combined policy with default all-repository access and access preservation enabled for every credential.
  • Workflow YAML parsing, line-length validation, and git diff --check passed.
  • The action's full local JavaScript suite passes 598 tests, with complete credential line/branch coverage. Access-preservation regressions fail against the previous implementation and pass with the update. ESLint passes.
  • The test fixture lists expected variable, Actions-secret, and Dependabot-secret names directly by destination organization. It contains no repository names, source commits, or archived-repository inventory. Codecov credentials remain manually managed.
  • Hosted validation for the released action pin is pending. Local release-tag/SHA resolution, YAML parsing, version-comment, line-length, and git diff --check validation passed.

Type of Change

  • feat: New feature (non-breaking change which adds functionality)
  • fix: Bug fix (non-breaking change which fixes an issue)
  • docs: Documentation only changes
  • style: Changes that do not affect the meaning of the code (white-space, formatting, missing semicolons, etc.)
  • refactor: Code change that neither fixes a bug nor adds a feature
  • perf: Code change that improves performance
  • test: Adding missing tests or correcting existing tests
  • build: Changes that affect the build system or external dependencies
  • ci: Changes to CI configuration files and scripts
  • chore: Other changes that don't modify src or test files
  • revert: Reverts a previous commit
  • BREAKING CHANGE: Introduces a breaking change (can be combined with any type above)

Checklist

  • Code follows the style guidelines of this project
  • Code has been self-reviewed
  • Code has been commented, particularly in hard-to-understand areas
  • Code docstring/documentation-blocks for new or existing methods/components have been added or updated
  • Tests have been added or updated for new or modified functionality, including regression tests for bug fixes

AI Usage

See our AI usage policy.

  • AI tools were used while preparing this PR

@ReenigneArcher ReenigneArcher changed the title ci: add file sync policy and dry-run workflow ci: replace global replicator with org sync Nov 6, 2026
@ReenigneArcher ReenigneArcher changed the title ci: replace global replicator with org sync ci: migrate shared workflows to repository custom properties Nov 6, 2026
@ReenigneArcher ReenigneArcher changed the title ci: migrate shared workflows to repository custom properties ci: synchronize organization settings and shared workflows Nov 7, 2026
@sonarqubecloud

sonarqubecloud Bot commented Nov 7, 2026

Copy link
Copy Markdown

@ReenigneArcher
ReenigneArcher merged commit f14259f into master Nov 7, 2026
22 checks passed
@ReenigneArcher
ReenigneArcher deleted the codex/file-sync-preview branch November 7, 2026 18:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant