This document outlines the steps involved in the release process for the NGINX Prometheus Exporter.
The project follows Semantic Versioning.
The features that will go into the next release are reflected in the corresponding milestone. Refer to the Issue Lifecycle document for information on issue creation and assignment to releases.
-
Create an issue to define and track release-related activities. Choose a title that follows the format
Release X.Y.Z
. -
Stop merging any new work into the main branch.
-
Check the release draft under the GitHub releases page to ensure that everything is in order.
-
Create a PR to update the version in the
Makefile
and README to the new version, and any other necessary changes. -
Once the PR is merged, create a new release tag in the format
vX.Y.Z
:git tag -a vX.Y.Z -m "Release vX.Y.Z" git push origin vX.Y.Z
As a result, the CI/CD pipeline will:
- Build the Docker image and push it to the registries.
- Publish the release to Snapcraft, Homebrew, Scoop, and Nix.
- Create a GitHub release with the autogenerated changelog and artifacts attached.
- Announce the release in the community Slack.