raven-actions/Repo Files Sync

GitHub Action to Sync Files like Workflows Between Repositories.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
GH_TOKENToken used to access target repositories. Accepts a Personal Access Token (classic or fine-grained) or a GitHub App installation token; the type is detected automatically from the token prefix. When an installation token (prefix `ghs_`) is supplied, commits are created through the GitHub API (verified) and GIT_EMAIL/GIT_USERNAME are required. Note: the default `GITHUB_TOKEN` will not work for cross-repo sync. yes
CONFIG_PATHPath to the sync configuration file. Defaults to `.github/sync.yml`. no
INLINE_CONFIGInline YAML configuration (alternative to CONFIG_PATH). When set, this is used instead of reading CONFIG_PATH. no
REPOSLimit the sync to specific target repositories. Comma-separated list of `owner/name` (optionally `@branch`) that must match repositories already defined in the sync config. This only filters which repositories are processed (keeping their order from the config); the file configuration still comes from the existing config. Names that do not match any configured repository are ignored (no error). Leave empty to sync every repository from the config. no
PR_LABELSLabels to add to the pull request. Defaults to `sync`. Set to `false` to disable. no
PR_TITLECustom title for the pull request. When set, it overrides the auto-generated title and COMMIT_AS_PR_TITLE. Defaults to an empty string (auto-generated title). no
PR_BODYAdditional content to add in the PR description. Defaults to an empty string. no
ASSIGNEESUsers to assign to the pull request. Defaults to none. no
REVIEWERSUsers to request a review from. Defaults to none. no
TEAM_REVIEWERSTeams to request a review from. Defaults to none. no
COMMIT_PREFIXPrefix for commit message and pull request title. Defaults to 🔄. no
COMMIT_BODYCommit message body. Appended to the commit message, separated by two line returns. Defaults to an empty string. no
COMMIT_EACH_FILECommit each configured file/directory separately. Defaults to true. no
GIT_EMAILEmail used for commits. Required when using a GitHub App installation token. no
GIT_USERNAMEUsername used for commits. Required when using a GitHub App installation token. no
TMP_DIRWorking directory where all sync operations are performed. Defaults to `tmp-${Date.now().toString()}`. no
DRY_RUNRuns the sync logic but does not push any changes. Defaults to false. no
SKIP_CLEANUPSkip removing the temporary directory (useful for debugging). Defaults to false. no
OVERWRITE_EXISTING_PRReuse the same sync branch/PR between runs. If false, create a new branch per run. Defaults to true. no
REBASEKeep an existing sync pull request up to date with the target (base) branch, similar to Dependabot's rebase. When the PR branch falls behind the base branch it is rebuilt on the latest base and force-updated, which discards any commits pushed manually to the sync branch. Requires OVERWRITE_EXISTING_PR (default) and has no effect with SKIP_PR. Defaults to false. no
ORIGINAL_MESSAGERe-use the original commit message for commits. Works only if the workflow is triggered by a push containing a single commit. Defaults to false. no
COMMIT_AS_PR_TITLEUse the commit message as PR title. Works only if ORIGINAL_MESSAGE is true and exactly one commit is created. Defaults to false. no
SKIP_PRSkips creating a Pull Request and pushes directly to the default branch. Defaults to false no
BRANCH_PREFIXSpecify a different prefix for the new branch in the target repo. Defaults to repo-sync/SOURCE_REPO_NAME no
DELETE_ORPHANEDGlobal default for deleting orphaned files in target repositories. Used when file-level `deleteOrphaned` is not set. Defaults to false. no
FORKSpecify the user account for a fork and pull-request workflow. Defaults to false. no
namedescription
pull_request_urlsJSON array of created Pull Request URLs. Empty when no PRs were created.