Skip to content

Describe general Ansible major version release schedule #2490

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 4 commits into
base: devel
Choose a base branch
from

Conversation

felixfontein
Copy link
Collaborator

…t Ansible 12.0.0's release schedule gets delayed according to ansible-core 2.19.0's release schedule.
@ansible-documentation-bot ansible-documentation-bot bot added the sc_approval This PR requires approval from the Ansible Community Steering Committee label Apr 5, 2025
Co-authored-by: Don Naro <[email protected]>
Comment on lines 23 to 43
The release of a new major Ansible version (``X.0.0``) is coupled to a new major ansible-core release (``2.Y.0``). This section describes the general schedule. A more specific schedule will be mentioned on each major version's roadmap page (see below). If ansible-core releases are delayed, the Ansible release schedule is usually updated to adhere to this general release schedule.

The generic release schedule of a new major Ansible version ``X.0.0`` can be split up into three phases:

1. When ansible-core 2.Y.0 **beta** releases are published, there will be one Ansible X.0.0 **alpha** release roughly one day after the corresponding ansible-core beta release.

1. When ansible-core 2.Y.0 **rc (release candidate)** releases are published, there will be one Ansible X.0.0 **alpha** release roughly one day after the corresponding ansible-core rc release.

1. When ansible-core 2.Y.0 is generally made available (usually on a Monday), the following schedule will happen from that day on:

1. The day of the ansible-core 2.Y.0 day is the last day for collections to make backwards incompatible releases that will be accepted into Ansible X.0.0. This includes adding new collections to Ansible X.0.0; from now on new collections have to wait for X.1.0 or later.

1. Ansible's feature freeze will happen on the next day (usually Tuesday), and the first (and usually only) Ansible X.0.0 **beta** release (b1) will be made.

1. One week later (again on Tuesday), the first Ansible X.0.0 **rc (release candidate)** will be released. For this release, only bugfix updates for collections are accepted from the versions included in the Ansible X.0.0 b1.

1. If no release blockers showed up by Friday of the same week, Ansible X.0.0 will be made generally available on Tuesday of the following week (thus one week after X.0.0 rc1).

1. If there have been release blockers, a second release candidate release, Ansible X.0.0 rc2, will happen on Tuesday of the following week (one week after X.0.0 rc1), and the general availability will usually happen one week after that (again on a Tuesday).

1. Four weeks after the ansible-core 2.Y.0 release, and 1-2 weeks after the Ansible X.0.0 release, ansible-core 2.Y.1 will be released on (usuaully) a Monday, and one day later (usually Tuesday) there will be the Ansible X.1.0 release.
Copy link
Contributor

@mariolenz mariolenz Apr 9, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The release of a new major Ansible version (``X.0.0``) is coupled to a new major ansible-core release (``2.Y.0``). This section describes the general schedule. A more specific schedule will be mentioned on each major version's roadmap page (see below). If ansible-core releases are delayed, the Ansible release schedule is usually updated to adhere to this general release schedule.
The generic release schedule of a new major Ansible version ``X.0.0`` can be split up into three phases:
1. When ansible-core 2.Y.0 **beta** releases are published, there will be one Ansible X.0.0 **alpha** release roughly one day after the corresponding ansible-core beta release.
1. When ansible-core 2.Y.0 **rc (release candidate)** releases are published, there will be one Ansible X.0.0 **alpha** release roughly one day after the corresponding ansible-core rc release.
1. When ansible-core 2.Y.0 is generally made available (usually on a Monday), the following schedule will happen from that day on:
1. The day of the ansible-core 2.Y.0 day is the last day for collections to make backwards incompatible releases that will be accepted into Ansible X.0.0. This includes adding new collections to Ansible X.0.0; from now on new collections have to wait for X.1.0 or later.
1. Ansible's feature freeze will happen on the next day (usually Tuesday), and the first (and usually only) Ansible X.0.0 **beta** release (b1) will be made.
1. One week later (again on Tuesday), the first Ansible X.0.0 **rc (release candidate)** will be released. For this release, only bugfix updates for collections are accepted from the versions included in the Ansible X.0.0 b1.
1. If no release blockers showed up by Friday of the same week, Ansible X.0.0 will be made generally available on Tuesday of the following week (thus one week after X.0.0 rc1).
1. If there have been release blockers, a second release candidate release, Ansible X.0.0 rc2, will happen on Tuesday of the following week (one week after X.0.0 rc1), and the general availability will usually happen one week after that (again on a Tuesday).
1. Four weeks after the ansible-core 2.Y.0 release, and 1-2 weeks after the Ansible X.0.0 release, ansible-core 2.Y.1 will be released on (usuaully) a Monday, and one day later (usually Tuesday) there will be the Ansible X.1.0 release.
The release of a new major Ansible version is coupled to a new major ansible-core release. This section describes the general schedule. A more specific schedule will be mentioned on each major version's roadmap page (see below). If ansible-core releases are delayed, the Ansible release schedule is usually updated to adhere to this general release schedule.
The generic release schedule of a new major Ansible version can be split up into three phases:
1. When ansible-core **beta** releases are published, there will be one Ansible **alpha** release roughly one day after the corresponding ansible-core beta release.
1. When ansible-core **rc (release candidate)** releases are published, there will be one Ansible **alpha** release roughly one day after the corresponding ansible-core rc release.
1. When a new ansible-core version is generally made available (usually on a Monday), the following schedule will happen from that day on:
1. The day of the ansible-core GA release is the last day for collections to make backwards incompatible releases that will be accepted into the next Ansible version. This includes adding new collections to Ansible; from now on new collections have to wait for the next minor Ansible release or later.
1. Ansible's feature freeze will happen on the next day (usually Tuesday), and the first (and usually only) Ansible **beta** release (b1) will be made.
1. One week later (again on Tuesday), the first Ansible **rc (release candidate)** will be released. For this release, only bugfix updates for collections are accepted from the versions included in the beta.
1. If no release blockers showed up by Friday of the same week, the next Ansible release will be made generally available on Tuesday of the following week (thus one week after rc1).
1. If there have been release blockers, a second release candidate release, rc2, will happen on Tuesday of the following week (one week after rc1), and the general availability will usually happen one week after that (again on a Tuesday).
1. Four weeks after the ansible-core release, and 1-2 weeks after the Ansible release, ansible-core .1 will be released on (usually) a Monday, and one day later (usually Tuesday) there will be the Ansible .1.0 release.

All this ansible-core 2.Y.0 and ansible-core 2.Y.0rc andAnsible X.0.0 and Ansible X.0.0 beta stuff is very correct and exact, but it's also very hard to read and understand. Can't we simplify this? All those Xses an Yses are somewhat confusing IMHO.

@felixfontein felixfontein changed the title Describe general Ansible major version release schedule; announce that Ansible 12.0.0's release schedule gets delayed according to ansible-core 2.19.0's release schedule Describe general Ansible major version release schedule Apr 9, 2025
@felixfontein
Copy link
Collaborator Author

As discussed in the meeting I've removed the Ansible 12 roadmap changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
sc_approval This PR requires approval from the Ansible Community Steering Committee
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants