Shared, generic pipelines synchronized to project repositories by using a "Synchronize pipelines" pipeline inside each project.
Everytime, when a new repository is created a structure from packs/{{ technology name }}
should be copied into a fresh repository.
- Generate a new Personal Access Token (with access to modifying workflows)
- Save it into organization or repository secrets as
WORKFLOW_UPDATE_TOKEN
- Copy files and directories from this repository -
packs/{{ technology name }}
to your repository root directory - Run
bash ci-sync.sh
- Edit variables in
.github/helpers/ci-vars.env
- Run
python .github/helpers/apply-vars.py
git add .
git commit -m "feat: Add CI"
git push
Shared pipelines are synchronized by running a pipeline "Synchronize pipelines" manually from GitHub Actions panel.
Feel free to use our pipelines in your projects, we are making those pipelines as generic as it is possible. Please feel free to make a PR to the repository.