Rewrite reposyncer in Python and enforce repo settings #325
Loading…
Reference in a new issue
No description provided.
Delete branch "reposyncer-python"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Rewrites
reposyncer.shas a tested Python package. It now also enforces repo settings and branch protection.Changes
renovate.json, and the.disable/.nosyncopt-outs. The list of which file enables which pipeline now lives inreposyncer.json.mainbecomes the only rule on each repo. Its settings come fromreposyncer.jsonexactly: push disabled, no merge whitelist, rule applies to admins, everything else at Forgejo defaults. All other rules are deleted.<workflow name> / * (pull_request)). A workflow only becomes required once it is onmainand still in the generated baseline, so a reposyncer PR that adds, removes or renames a workflow is never blocked by its own check.--repooption to sync a single repo.testjob runsruffandpytest, including end-to-end tests against a local bare git repo and a fake forge.Before merging
The first live run will delete protection rules on other branches and remove any hand-added required checks on
mainin every synced org. Please review this PR's dry-run log for those changes. The live token also needs admin on every synced repo.🤖 Generated with Claude Code
https://claude.ai/code/session_01Ez959LAFLSHBaLnc3KeAad