Improve process to sync workflows across repos
- Dominant language
- C#
- Stars
- 135
- Forks
- 260
- Avg merge
- 3d 1h
- Merged PRs (30d)
- 143
Description
ideas:
- instead of syncing `.github/workflows`, instead only sync `eng/common`, and have stubs owned by each repo point to `eng/common`
- use a naming convention like `shared-*.yaml`, and a header comment like `# DO NOT EDIT`, to reduce risk of changing workflow in wrong repo
- add a check, similar to https://github.com/Azure/azure-sdk-tools/blob/main/eng/common/pipelines/templates/steps/eng-common-workflow-enforcer.yml, to block attempts to change shared workflows in wrong repo
teams discussion: https://teams.microsoft.com/l/message/19:3adeba4aa1164f1c889e148b1b3e3ddd@thread.skype/1775689722777?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=3e17dcb0-4257-4a30-b843-77f47f1d4121&parentMessageId=1775689722777&teamName=Azure%20SDK&channelName=APIView&createdTime=1775689722777
Contributor guide
Research direction
Start by reviewing the current .github/workflows layout and the referenced eng/common/pipelines/templates/steps/eng-common-workflow-enforcer.yml. Compare the proposed eng/common ownership, shared-*.yaml naming, and DO NOT EDIT headers with the existing sync process. Done means the cross-repository workflow ownership and enforcement approach is defined and implemented consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions
- Domain
- ci-cd, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100