Table of Contents |
---|
...
- In Jira, go to the Releases Page and add a new release name with start date and description.
- Move any issues that have been resolved, or that are planned to be resolved, to this release. The easiest way to do this is to filter down to the results you want and bulk edit them to change the 'Fix Version/s' field to match the release name. Try this filter - Done in current sprint, no fixversion
- Create a new page using the JIRA Report Blueprint by clicking the white elipsis in the page header. Go to "New release" and fill out the details for this release. The JIRA report on that page defaults to beta-002 so that needs to change.
Add the link to Slack's #general channel and mention @channel so all users are notified, e.g.
Code Block @channel new release https://hee-tis.atlassian.net/wiki/display/TISDEV/beta-001
Prep a release dev side
Code Block |
---|
title Release Process Developer->Github: Push to master Github->Jenkins: Webhook Jenkins->Jenkins: Build docker image with version Jenkins->Github: Tag with version Jenkins->Docker Registry: Push versioned image Jenkins->Docker Registry: Push latest image Jenkins->Ansible: Deploy latest image note left of Ansible: latest deployed to dev Ansible->Platform: Copy docker-compose templates Ansible->Platform: Run docker-compose Jenkins->CI Tests: Run tests |
For maven projects:
The project should already have the maven-release-plugin present, if it does not, here is how to add it:
In the pom.xml add in the plugin along with the proper scm link (make sure that the scm link matches the project's github repo). The example below is from revalidation:
<scm>
<developerConnection>scm:git:git@github.com:Health-Education-England/TIS-REVALIDATION.git</developerConnection>
<tag>HEAD</tag>
</scm>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.2</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-gitexe</artifactId>
<version>1.9.4</version>
</dependency>
</dependencies>
</plugin>
You should start with common projects that are required for others to compile (such as TIS-SHARED-MODULES).
...