6 Months in the Life of OpenStack

OpenStack Rocky PTG

Release Team

Mission

Coordinating the release of OpenStack deliverables, by defining the overall development cycle, release models, publication processes, versioning rules and tools, then enabling project teams to produce their own releases.

Not Responsible for

  • Feature scheduling
  • Feature tracking
  • Prioritization of work

cycle-with-milestones

  • commit to publish development milestones following a predetermined schedule
  • commit to produce a release to match the end of the 6-month development cycle
  • used by service projects

cycle-with-intermediary

  • produce multiple full releases during the cycle
  • commit to produce a release near the end of the 6-month development cycle
  • used by libraries and service projects

cycle-trailing

  • commit to produce a release no later than 2 weeks after the end of the 6-month development cycle
  • within the cycle can follow milestones or produce intermediate releases
  • used by deployment tools

Staying in touch

  • #openstack-release on freenode
  • [release] on openstack-dev@

Before PTG

  • Establish and publish release schedule

Before Milestone 1

  • Make initial contact with PTLs
  • Sign up release liaisons

Before Milestone 2

  • First "warning" for projects that missed the milestone
  • Why do milestones apply to everyone?

Before Milestone 3

  • Coordinate the library release freeze
  • Update gerrit and the CI system to handle the new stable branches
  • Coordinate requirements freeze

Why do we want to release before the final cut-off?

  • Services are only tested with released libraries
  • We need a place to create the stable branch

Why do we freeze library releases?

  • Stability for consumers
  • Downstream packagers

Why are client and regular library freezes different?

  • Clients have late-landing features to support the service

Why do we freeze the requirements list?

  • Stability for our CI
  • Downstream packagers

Before RC1

  • Make sure cycle-with-intermediary projects are thinking about the end of cycle coming up

At RC1

  • Ensure all projects are branched
  • Coordinate updates and branching for devstack and grenade
  • Coordinate branching of requirements list

Before Final

  • Publish a planned set of final releases for PTL and liaison review

At Final

  • Tag the final releases
  • Coordinate with the docs team to publish the documentation

Planned Changes for Rocky

  • nudging library maintainers more often for releases
  • nudging cycle-with-intermediary maintainers earlier for releases
  • publishing all services to PyPI (under discussion)

Resources

openstack-infra/release-tools/presentation-6-months-in-the-life-of-openstack

openstack/releases/PROCESS.rst

Creative Commons License  This work is licensed under a Creative Commons Attribution 4.0 International License.