MAINTAIN.md 6.2 KB

Release steps

Release patch version

  1. Create a pull request (contains the changelog and version change) to master > The changelog only needs to provide a link to the minor branch.
  2. Create a pull request (contains the backport commits, and the change in step 1) to minor branch > This should include those PRs that contain the need backport tag since the last patch release. Also, the title of these PRs need to be added to the changelog of the minor branch.
  3. Merge it into minor branch
  4. Package a vote artifact to Apache's dev-apisix repo. The artifact can be created via VERSION=x.y.z make release-src
  5. Send the vote email to dev@apisix.apache.org > After executing the VERSION=x.y.z make release-src command, the content of the vote email will be automatically generated in the ./release directory named apache-apisix-${x.y.z}-vote-contents
  6. When the vote is passed, send the vote result email to dev@apisix.apache.org
  7. Move the vote artifact to Apache's apisix repo
  8. Register the release info in https://reporter.apache.org/addrelease.html?apisix
  9. Create a GitHub release from the minor branch
  10. Update APISIX's website if the version number is the largest
  11. Update APISIX rpm package > Go to apisix-build-tools repository and create a new tag named apisix-${x.y.z} to automatically submit the package to yum repo
  12. - If the version number is the largest, update APISIX docker in APISIX docker repository, after PR merged, then create a new branch from master, named as release/apisix-${version}, e.g. release/apisix-2.10.2.
    • If released an LTS version and the version number less than the current largest(e.g. the current largest version number is 2.14.1, but the LTS version 2.13.2 is to be released), submit a PR like APISIX docker in APISIX docker repository and named as release/apisix-${version}, e.g. release/apisix-2.13.2, after PR reviewed, don't need to merged PR, just close the PR and push the branch to APISIX docker repository.
  13. Update APISIX helm chart if the version number is the largest
  14. Send the ANNOUNCE email to dev@apisix.apache.org & announce@apache.org

Release minor version

  1. Create a minor branch, and create pull request to master branch from it
  2. Package a vote artifact to Apache's dev-apisix repo. The artifact can be created via VERSION=x.y.z make release-src
  3. Send the vote email to dev@apisix.apache.org > After executing the VERSION=x.y.z make release-src command, the content of the vote email will be automatically generated in the ./release directory named apache-apisix-${x.y.z}-vote-contents
  4. When the vote is passed, send the vote result email to dev@apisix.apache.org
  5. Move the vote artifact to Apache's apisix repo
  6. Register the release info in https://reporter.apache.org/addrelease.html?apisix
  7. Create a GitHub release from the minor branch
  8. Merge the pull request into master branch
  9. Update APISIX's website
  10. Update APISIX rpm package. > Go to apisix-build-tools repository and create a new tag named apisix-${x.y.z} to automatically submit the rpm package to yum repo
  11. - If the version number is the largest, update APISIX docker in APISIX docker repository, after PR merged, then create a new branch from master, named as release/apisix-${version}, e.g. release/apisix-2.10.2.
    • If released an LTS version and the version number less than the current largest(e.g. the current largest version number is 2.14.1, but the LTS version 2.13.2 is to be released), submit a PR like APISIX docker in APISIX docker repository and named as release/apisix-${version}, e.g. release/apisix-2.13.2, after PR reviewed, don't need to merged PR, just close the PR and push the branch to APISIX docker repository.
  12. Update APISIX helm chart
  13. Send the ANNOUNCE email to dev@apisix.apache.org & announce@apache.org