-
-
Notifications
You must be signed in to change notification settings - Fork 116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable many deployment jobs #584
Comments
relates to #583 |
Hi @AllanOricil ! Thanks for this enhancement request and thanks for contributing in making this project better! I had a thought on this one and to me it seems to be possible to achieve the same result using multiple Using the example: a32dasv latest [v1.0.0] build v1.0.0
23echsd commit message 1
84jdhe2 commit message 2
528jded [sgd-delta-boundary boundary1] commit messages 3
63ecdsd [sgd-delete-after] commit message 4
94jwhe2 commit message 5
a28jded [sgd-delta-boundary boundary2] commit messages 6
bd231de[v1.1.0] build v1.1.0 It is possible to have the same result with those commands: sfdx sgd:source:delta -f v1.0.0 -t 84jdhe2 -o ./tmp/sgd/v1
sfdx sgd:source:delta -f 528jded -t 94jwhe2 -o ./tmp/sgd/boundary1
sfdx sgd:source:delta -f a28jded -t v1.1.0 -o ./tmp/sgd/boundary2 I agree it is not derived from the repo automatically. It is more manual to split the boundaries this way than using the repo with proper commit message and let the plugin do the work with only one commands. Defining the boundaries looks like an advanced CI automation use case to me, which requires work from release manager anyway. This work would certainly involve trial and error before knowing where to put the boundaries which is a similar work to document the chain of commands itself (different output). It can be hard to know the boundary at the PR Level when merging. I would feel more confortable (as a release manager) to write the chain of commands because it seems easier to correct. No need to amend a commit message to change the order (which can be quite annoying for everyone else if it is on a base branch like main). Let's see if there is traction from the community, as there is an easy way to use the plugin to have the same result I think it is best to see if it solves a big pain point for multiple people before investing in this. What do you think @AllanOricil? Do you want to shed more light on this? |
No, I'm OK with what you said. It was just an idea that I wanted to share. I agree that it does not make sense to work on it yet if there aren't clear use cases. I couldn't find one myself. |
Is your proposal related to a problem?
It is just an idea that was bothering me recently regarding doing delta deployments using many deployment jobs, instead of a single one. I'm not really sure if this is a real problem.
Let's assume that there is a use case for breaking a single release into many deployment jobs. For example, the following v1.1.0 build is too complex to be released using a single deployment job, and someone decided to do it using several deployment jobs, using only commits that point to successfull builds, and without adding new tags.
Describe a solution you propose
Maybe there could exist a reserved keyword that is added to git commits, or even git notes, which
sgd
could use to break a single deployment into many. For example, considering the following set of commits, and that v1.1.0 has to be released:sfdx source:delta -f v1.0.0 -o ./tmp/sgd
would output the following set of directories and manifests:and the following output would be sent to stdout:
CICD automations would then use this output to schedule many deployment jobs in a salesforce instance
Describe alternatives you've considered
I could implement an automation to do it as follows:
but I feel that this could be part of sgd's core since it is already iterating over a list of commits.
Additional context
N/A
The text was updated successfully, but these errors were encountered: