Back to Apisix

Licensed to the Apache Software Foundation (ASF) under one or more

MAINTAIN.md

3.16.06.2 KB
Original Source
<!-- # # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. # The ASF licenses this file to You under the Apache License, Version 2.0 # (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # -->

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 [email protected]

    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 [email protected]
  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

    • 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 if the version number is the largest
  13. Send the ANNOUNCE email to [email protected] & [email protected]

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 [email protected]

    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 [email protected]
  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

    • 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.
  11. Update APISIX helm chart
  12. Send the ANNOUNCE email to [email protected] & [email protected]