DR Preparation: #repos for common workflows #2493
Replies: 7 comments 3 replies
-
|
Another small con for one repo. When one composite action uses another one from the same repo then some special handling must be implemented so that the calling composite action gets exactly the called action based on the commit from the calling actions Git repo checkout. |
Beta Was this translation helpful? Give feedback.
-
|
I would also add as con of option B that this would largely increase the amount of repositories |
Beta Was this translation helpful? Give feedback.
-
|
Not really a pro but proven in use: We had one repo that included everything (workflow files and bash scripts).
For every such version tag we guaranteed that the related files can work together. |
Beta Was this translation helpful? Give feedback.
-
|
I'll go for option A ( with all its cons) due to one main reason: conformity |
Beta Was this translation helpful? Give feedback.
-
|
I like option B thematically, as the workflow is in the repository it belongs to. |
Beta Was this translation helpful? Give feedback.
-
|
Option B looks more logical & honest to me |
Beta Was this translation helpful? Give feedback.
-
|
Why do we need individual workflows? I assume for "certifiable" we have to stick to same way of working in each and every "Feature-Repos" How do we deal with Infrastructure, Process, Integration Repos? So I prefer A) and the MUST for all using the same. Mid-refactoring shall be done on a branch. Backward-compatibility: not really needed (?), from my point of view we have to link workflows with releases to be able to reproduce. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Warning
Alternatives
Option A: One common repository
cicd-workflowsPros:
Cons:
Option A2: One common repository with multiple independently versioned “topics”
All workflows and actions live in a single repository, but are grouped into independently versioned domains
(e.g.
docs-1.0.5,build-2.3.7,compliance-0.9.2).Intended benefit:
Challenges / Risks:
Option B: Individual repositories
apt-install,dash-license-scan, …Pros:
Cons:
Use-Case discussion
As the above has valid Pros and Cons and no clear winner, let's try to define it based on use cases
action.ymldash-license-scan)Conclusion / Summary DRAFT
We use A!
We will split the existing workflows between "official entry points" and "internal steps".
Some exceptions have already been identified:
The biggest/only con of A is the shared lifecycle of all workflows. Versioning (SemVer) will be defined by the official entry points. However that only hurts, when the churn becomes too big (see problem statement). Once we reach that point, we will discuss A2 or B.
Beta Was this translation helpful? Give feedback.
All reactions