...
Move convenience binaries and related artifacts from dist/dev to dist/release (note, the release branch requires PMC access):
Code Block language bash svn move -m "${JIRA_TICKET}" https://dist.apache.org/repos/dist/dev/nifi/nifi-registry/nifi-registry-${VERSION} https://dist.apache.org/repos/dist/release/nifi/nifi-registry/nifi-registry-${VERSION}
- At https://repository.apache.org, login with your Apache ID credentials, go to Staging Repositories, select Release and follow the instructions on the site.
For the source code git repository, merge the release branch into master:
Code Block language bash git checkout master git merge --no-ff ${JIRA_TICKET}-RC${RC} git push asf master
Update the Migration Guidance on the Wiki:
https://cwiki.apache.org/confluence/display/NIFI/Migration+GuidanceUpdate the wiki release notes with the final date of the release:
https://cwiki.apache.org/confluence/display/NIFI/Release+NotesUpdate the NiFi website to point to the new download(s).
- Remove older release artifacts from download page (leave the current release and the previous one).
- For the release just previous to this new one change the links to point to the archive location. See current page as an example of the needed URL changes.
- In addition to updating the download page as described delete artifacts other than the current/new release from the dist/nifi SVN storage. They are already in the archive location so no need to do anything else.If the release is on the latest development line, update the NiFi website documentation pages for NiFi Registry to match the release.
- Run the NiFi Registry ${VERSION}
- Pull down the documentation by runningwget -prk http://${host}:${port}/nifi-registry-docs/documentation
- Rename the file index file that was generated by runningmv ${host}:${port}/nifi-registry-docs/documentation ${host}:${port}/nifi-registry-docs/index.html
- Use svn to replace the nifi and nifi-docs folders inhttps://svn.apache.org/repos/asf/nifi/site/trunk/docs with those in the ${host}:${port}
directory pulled down aboveIn Jira, mark the ${JIRA_TICKET} resolved. All tickets for the Jira release version should now be resolved or closed.
Mark the release version for ${VERSION} as 'Released' and 'Archived' using the NiFi Registry Versions management page.
This may also be a good time to create a Jira version for the next planned release of ${NEXT_VERSION} (usually the next minor version).Ensure the release artifacts are successfully mirrored to the archive, specifically
https://archive.apache.org/dist/nifi/nifi-registry/nifi-registry-${VERSION}/nifi-registry-${VERSION}-bin.tar.gz.
If there were any issues with the above listed file not being available, it may be necessary to reach out to the ASF Infra team.Info title Docker Image Note When the Docker image build is automated (as of this writing, not currently setup for NiFi Registry), then it is triggered by pushing the signed tag in the next step. The release artifacts must be present in the archive before continuing. Create a proper signed tag of the released codebase based on the RC tag created during the Maven release process.
For instructions on setting up to sign your tag see: http://gitready.com/advanced/2014/11/02/gpg-sign-releases.html or the Appendix B section below.Code Block language bash # create the tag in your local repo git tag -s rel/nifi-registry-${VERSION} -m "${JIRA_TICKET} signed release tag for approved release of NiFi Registry ${VERSION}" ${RC_TAG_COMMIT_ID} # push the tag to the ASF repo git push asf rel/nifi-registry-${VERSION}
- Build the new Docker image based on the artifacts accessible via the archive.apache.org mirror. Tag the image as the current version and latest and push to the official repository. (TODO, expand these instructions for doing this manually or setup automation with ASF Infra as we have to NiFi.)
Update Docker version information for the dockerhub image to point to the next release. For instance, if the ${NEXT_VERSION} is 0.4.0-SNAPSHOT, these values should be updated to 0.4.0, so that at the time of the next release they will reference the correct version number. This currently consists of two files:
-
nifi-registry-core/nifi-registry-docker/dockerhub/Dockerfile
, Line 24, and
-nifi-registry-core/nifi-registry-docker/dockerhub/DockerImage.txt
, Line 16.After the release has been complete for 24 hours send the release announcement email.
Info For an understanding of why you need to wait 24 hours, see: https://www.apache.org/dev/release.html#release-announcements TO: announce@apache.org, dev@nifi.apache.org
REPLY-TO: dev@nifi.apache.org
FROM: ${RM_USER}@apache.org
SUBJECT: [ANNOUNCE] Apache NiFi Registry ${VERSION} ReleaseBODY:
Expand title Template for email body. Click here to expand... No Format Hello, The Apache NiFi team would like to announce the release of Apache NiFi Registry ${VERSION}. Apache NiFi is an easy to use, powerful, and reliable system to process and distribute data. Apache NiFi was made for dataflow. It supports highly configurable directed graphs of data routing, transformation, and system mediation logic. Registry, a subproject of Apache NiFi, is a complementary application that provides a central location for storage and management of shared resources across one or more instances of NiFi or MiNiFi. More details on Apache NiFi Registry, along with release artifacts, can be found here: https://nifi.apache.org/registry.html Maven artifacts have been made available here: https://repository.apache.org/content/repositories/releases/org/apache/nifi/registry/ Issues closed/resolved for this list can be found here: ${JIRA_RELEASE_NOTES_URL} Release note highlights can be found here: https://cwiki.apache.org/confluence/display/NIFI/Release+Notes#ReleaseNotes-NiFiRegistry${VERSION} Thank you, The Apache NiFi team
...