Github Action - Workflow Sync | Sync Files Across Repositories

This Github Action can come in handy when you have a lot of projects as I do. wherein some cases certain projects users action workflow which is common across projects. For example: Project 1 & Project 2 it can be a pain to keep all the workflow updated with Github Action's Module's version.
This also isn't limited to Github Action YAML files.
Another use case could be keeping the .editorconfig, LICENSE, tsconfig.json, tslint.json, .gitignore, azure-pieplines.yml, etc. in sync across all your repositories.
Here where this action comes in and reduces your stress 😉 it can update all your repository actions file based on the config provided
How Files Sync Work?
Before copying the WORKFLOW_FILES from the source to the destination. this action will provide some flexibility. this searches for a file in various locations for example lets take settings.yml as the file that you want to sync for multiple repositories
Below are the locations that this action search for the file/folder
./{OWNER}/{REPO_NAME}/workflows/{filename}./{OWNER}/workflows/{filename}./{WORKFLOW_FILES_DIR}/{filename}./.github/workflows/{filename}./{OWNER}/{REPO_NAME}/{filename}./{OWNER}/{filename}./{filename}
if the
settings.ymlis found inside theworkflowsfolder then the destination is automatically forced to.github/workflowsin the destination repoif the
settings.ymlis outside of theworkflowsfolder then the destination then its copied to the destination
How this can be useful?
Let's assume that you want to maintain all the common GitHub files in a single repository and suddenly a repository needs a single file to be changed in that case instead of editing the action YML / YAML file. you can just create a folder like {REPO_OWNER}/{REPO_NAME}/{FILE} to copy the overridden file to the destination
Questions or feedback? Please comment below.
See all my projects at Github.
Follow me on Twitter for updates

