For this repository, the deploy pipeline follows these steps:
- Merge a working branch to
develop
branch => triggers a deploy to stage environment - Merge
develop
branch intomaster
branch => triggers a deploy to production environment
After the final step of the deployment pipeline, the lead developer must tag and release the production branch so that the Project Manager/s can complete their Release Notes.
Once the master
branch is merged into the production
branch, then:
- goto the release section of the repository,
- note the last release number,
- click the "Draft a New Release" button
- click on "Choose a Tag" and create a new tag, follow the pattern vYYYY.n where in is a number which increments (e.g. v2023.1).
- ensure the Target is the
production
branch - give the release a title. This should be the same as the tag name in step 4 above.
- in the Description, copy and paste in the template below, then click the
Generate release notes
button to append the commits to be bottom of the textbox. Update the "Jira Tickets` section with all tickets that have been addressed in this release. Update the " Linked Drupal Release" section with the release of boston.gov linked with this release of Patterns (if this release of patterns does not require a release of boston.gov, then add the current version of boston.gov). - click "Set as the latest release",
- click the
Save draft
button.
The Project Manager will edit the draft release notes, finalize and publish them.
- goto the release section of the repository,
- edit the latest draft release,
- update the [PM to complete] block with narrative related to the release,
- click "Set as the latest release",
- click the
Publish release
button.
A Github action will now fire which will post a message to the slack #jira-releases channel.
## [Copy title of production PR]
### Release Notes
[PM to complete]
### Related Jira tickets
[Add a list of Jira Tickets addressed in this Release, with links to the Jira website]
example: Dig-1839 - [Update residential exemption application in Assessing Online](https://bostondoit.atlassian.net/browse/DIG-1839)
### Linked Drupal Release
[add in the associated Drupal release, or the latest Drupal release if one is not required e.g. v9.2023.2]
- In Jira create a release with the following convention RepositoryName/release version (e.g. Patterns/v2023.1)
- The release description should include what was updated and a link to the release notes (e.g. patterns code updatesRelease Notes)
- Attached release fix version to tickets before releasing the tickets.