The following is a list of what the existing Jenkins Pipelines do that the GitHub Actions Workflows don't (yet).
We'll be focusing on the features and functionality of the Jenkinsfile.cd Pipeline, since the GitHub Actions Workflows have incorporated all of the features and functionality of the Jenkinsfile.ci Pipeline.
The flow of the pipeline is setup in Jenkinsfile.cd but the execution is controlled by the testAndPublish script in the privatesovrin-foundation/jenkins-shared repository therefore anyone working on these enhancements will need to be granted read-only access to that repository in order to follow the code. The scripts automate the release process described here; Indy-Node Release Workflow. The same scripts are used for both indy-node and indy-plenum.
[ ] Configure auto-merge on PRs containing changes to setup.py and no other files.
[ ] Update the release version on release candidate (isRC) PRs.
[ ] Promote/copy artifacts (deb packages) to different locations in the repository.
[ ] Optionally run system tests (this feature is used for indy-node, but not indy-plenum).
[ ] Create a release PR for (off) RC PRs.
[ ] Notify a mailing list that a new RC release is waiting for approval, and then wait for the release to be approved.
[ ] Merge approved release candidate PRs into the release branch.
[ ] Notify a mailing list that a new release is available.
[ ] Rollback release commits on PRs when the release is not approved.
When developing the enhancements a separate issue should be created to track the work and be linked back to this issue. Feature enhancements should be limited to the smallest set of related features in order to limit the scope of the work.
The following is a list of what the existing Jenkins Pipelines do that the GitHub Actions Workflows don't (yet).
We'll be focusing on the features and functionality of the
Jenkinsfile.cd
Pipeline, since the GitHub Actions Workflows have incorporated all of the features and functionality of theJenkinsfile.ci
Pipeline.The flow of the pipeline is setup in
Jenkinsfile.cd
but the execution is controlled by thetestAndPublish
script in theprivate
sovrin-foundation/jenkins-shared repository therefore anyone working on these enhancements will need to be granted read-only access to that repository in order to follow the code. The scripts automate the release process described here; Indy-Node Release Workflow. The same scripts are used for bothindy-node
andindy-plenum
.setup.py
and no other files.isRC
) PRs.indy-node
, but notindy-plenum
).When developing the enhancements a separate issue should be created to track the work and be linked back to this issue. Feature enhancements should be limited to the smallest set of related features in order to limit the scope of the work.