mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-04-30 12:44:39 +00:00
docs: Refer to main
branch in the stable branch strategy document
As there's no active `master` branch as part of kata-containers 2.x, let's avoid referring to it, and let's referr to the `main` branch instead. Signed-off-by: Fabiano Fidêncio <fidencio@redhat.com>
This commit is contained in:
parent
0c463babf3
commit
54a750086d
@ -41,7 +41,7 @@ for example Docker\*. Please refer to the release notes for further details.
|
|||||||
|
|
||||||
Any new features added since the last release will be available in the next minor
|
Any new features added since the last release will be available in the next minor
|
||||||
release. These will include bug fixes as well. To facilitate a stable user environment,
|
release. These will include bug fixes as well. To facilitate a stable user environment,
|
||||||
Kata provides stable branch-based releases and a master branch release.
|
Kata provides stable branch-based releases and a main branch release.
|
||||||
|
|
||||||
## Stable branch patch criteria
|
## Stable branch patch criteria
|
||||||
|
|
||||||
@ -49,8 +49,8 @@ No new features should be introduced to stable branches. This is intended to li
|
|||||||
providing only bug and security fixes.
|
providing only bug and security fixes.
|
||||||
|
|
||||||
## Branch Management
|
## Branch Management
|
||||||
Kata Containers will maintain two stable release branches in addition to the master branch.
|
Kata Containers will maintain two stable release branches in addition to the main branch.
|
||||||
Once a new MAJOR or MINOR release is created from master, a new stable branch is created for
|
Once a new MAJOR or MINOR release is created from main, a new stable branch is created for
|
||||||
the prior MAJOR or MINOR release and the older stable branch is no longer maintained. End of
|
the prior MAJOR or MINOR release and the older stable branch is no longer maintained. End of
|
||||||
maintenance for a branch is announced on the Kata Containers mailing list. Users can determine
|
maintenance for a branch is announced on the Kata Containers mailing list. Users can determine
|
||||||
the version currently installed by running `kata-runtime kata-env`. It is recommended to use the
|
the version currently installed by running `kata-runtime kata-env`. It is recommended to use the
|
||||||
@ -61,12 +61,12 @@ A couple of examples follow to help clarify this process.
|
|||||||
### New bug fix introduced
|
### New bug fix introduced
|
||||||
|
|
||||||
A bug fix is submitted against the runtime which does not introduce new inter-component dependencies.
|
A bug fix is submitted against the runtime which does not introduce new inter-component dependencies.
|
||||||
This fix is applied to both the master and stable branches, and there is no need to create a new
|
This fix is applied to both the main and stable branches, and there is no need to create a new
|
||||||
stable branch.
|
stable branch.
|
||||||
|
|
||||||
| Branch | Original version | New version |
|
| Branch | Original version | New version |
|
||||||
|--|--|--|
|
|--|--|--|
|
||||||
| `master` | `1.3.0-rc0` | `1.3.0-rc1` |
|
| `main` | `1.3.0-rc0` | `1.3.0-rc1` |
|
||||||
| `stable-1.2` | `1.2.0` | `1.2.1` |
|
| `stable-1.2` | `1.2.0` | `1.2.1` |
|
||||||
| `stable-1.1` | `1.1.2` | `1.1.3` |
|
| `stable-1.1` | `1.1.2` | `1.1.3` |
|
||||||
|
|
||||||
@ -74,19 +74,19 @@ stable branch.
|
|||||||
### New release made feature or change adding new inter-component dependency
|
### New release made feature or change adding new inter-component dependency
|
||||||
|
|
||||||
A new feature is introduced, which adds a new inter-component dependency. In this case a new stable
|
A new feature is introduced, which adds a new inter-component dependency. In this case a new stable
|
||||||
branch is created (stable-1.3) starting from master and the older stable branch (stable-1.1)
|
branch is created (stable-1.3) starting from main and the older stable branch (stable-1.1)
|
||||||
is dropped from maintenance.
|
is dropped from maintenance.
|
||||||
|
|
||||||
|
|
||||||
| Branch | Original version | New version |
|
| Branch | Original version | New version |
|
||||||
|--|--|--|
|
|--|--|--|
|
||||||
| `master` | `1.3.0-rc1` | `1.3.0` |
|
| `main` | `1.3.0-rc1` | `1.3.0` |
|
||||||
| `stable-1.3` | N/A| `1.3.0` |
|
| `stable-1.3` | N/A| `1.3.0` |
|
||||||
| `stable-1.2` | `1.2.1` | `1.2.2` |
|
| `stable-1.2` | `1.2.1` | `1.2.2` |
|
||||||
| `stable-1.1` | `1.1.3` | (unmaintained) |
|
| `stable-1.1` | `1.1.3` | (unmaintained) |
|
||||||
|
|
||||||
Note, the stable-1.1 branch will still exist with tag 1.1.3, but under current plans it is
|
Note, the stable-1.1 branch will still exist with tag 1.1.3, but under current plans it is
|
||||||
not maintained further. The next tag applied to master will be 1.4.0-alpha0. We would then
|
not maintained further. The next tag applied to main will be 1.4.0-alpha0. We would then
|
||||||
create a couple of alpha releases gathering features targeted for that particular release (in
|
create a couple of alpha releases gathering features targeted for that particular release (in
|
||||||
this case 1.4.0), followed by a release candidate. The release candidate marks a feature freeze.
|
this case 1.4.0), followed by a release candidate. The release candidate marks a feature freeze.
|
||||||
A new stable branch is created for the release candidate. Only bug fixes and any security issues
|
A new stable branch is created for the release candidate. Only bug fixes and any security issues
|
||||||
@ -94,26 +94,26 @@ are added to the branch going forward until release 1.4.0 is made.
|
|||||||
|
|
||||||
## Backporting Process
|
## Backporting Process
|
||||||
|
|
||||||
Development that occurs against the master branch and applicable code commits should also be submitted
|
Development that occurs against the main branch and applicable code commits should also be submitted
|
||||||
against the stable branches. Some guidelines for this process follow::
|
against the stable branches. Some guidelines for this process follow::
|
||||||
1. Only bug and security fixes which do not introduce inter-component dependencies are
|
1. Only bug and security fixes which do not introduce inter-component dependencies are
|
||||||
candidates for stable branches. These PRs should be marked with "bug" in GitHub.
|
candidates for stable branches. These PRs should be marked with "bug" in GitHub.
|
||||||
2. Once a PR is created against master which meets requirement of (1), a comparable one
|
2. Once a PR is created against main which meets requirement of (1), a comparable one
|
||||||
should also be submitted against the stable branches. It is the responsibility of the submitter
|
should also be submitted against the stable branches. It is the responsibility of the submitter
|
||||||
to apply their pull request against stable, and it is the responsibility of the
|
to apply their pull request against stable, and it is the responsibility of the
|
||||||
reviewers to help identify stable-candidate pull requests.
|
reviewers to help identify stable-candidate pull requests.
|
||||||
|
|
||||||
## Continuous Integration Testing
|
## Continuous Integration Testing
|
||||||
|
|
||||||
The test repository is forked to create stable branches from master. Full CI
|
The test repository is forked to create stable branches from main. Full CI
|
||||||
runs on each stable and master PR using its respective tests repository branch.
|
runs on each stable and main PR using its respective tests repository branch.
|
||||||
|
|
||||||
### An alternative method for CI testing:
|
### An alternative method for CI testing:
|
||||||
|
|
||||||
Ideally, the continuous integration infrastructure will run the same test suite on both master
|
Ideally, the continuous integration infrastructure will run the same test suite on both main
|
||||||
and the stable branches. When tests are modified or new feature tests are introduced, explicit
|
and the stable branches. When tests are modified or new feature tests are introduced, explicit
|
||||||
logic should exist within the testing CI to make sure only applicable tests are executed against
|
logic should exist within the testing CI to make sure only applicable tests are executed against
|
||||||
stable and master. While this is not in place currently, it should be considered in the long term.
|
stable and main. While this is not in place currently, it should be considered in the long term.
|
||||||
|
|
||||||
## Release Management
|
## Release Management
|
||||||
|
|
||||||
@ -121,7 +121,7 @@ stable and master. While this is not in place currently, it should be considered
|
|||||||
|
|
||||||
Releases are made every three weeks, which include a GitHub release as
|
Releases are made every three weeks, which include a GitHub release as
|
||||||
well as binary packages. These patch releases are made for both stable branches, and a "release candidate"
|
well as binary packages. These patch releases are made for both stable branches, and a "release candidate"
|
||||||
for the next `MAJOR` or `MINOR` is created from master. If there are no changes across all the repositories, no
|
for the next `MAJOR` or `MINOR` is created from main. If there are no changes across all the repositories, no
|
||||||
release is created and an announcement is made on the developer mailing list to highlight this.
|
release is created and an announcement is made on the developer mailing list to highlight this.
|
||||||
If a release is being made, each repository is tagged for this release, regardless
|
If a release is being made, each repository is tagged for this release, regardless
|
||||||
of whether changes are introduced. The release schedule can be seen on the
|
of whether changes are introduced. The release schedule can be seen on the
|
||||||
|
Loading…
Reference in New Issue
Block a user