Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Herding Cats Into Boxes
How OpenStack release management changes with Big Tent
Doug Hellmann (@doughellmann)
Thierry Carre...
CC-BYhttps://www.flickr.com/photos/nromagna/3985886435/
Two approaches
Pre-versioning
1.0alpha1, 1.0beta2, 1.0rc1… 1.0
Post-versioning
1.0, 1.0.1, 1.1.0… 2.0
At the beginning
6-month time-based releases
YEAR.SEQUENCE (2014.1, 2014.2… 2015.1)
Swift: feature-based, frequent release...
Client libraries
Always backward-compatible
Single release channel
Semantic versioning
Oslo
Incubator copy-and-paste
Pre-versioning with alphas
Post-versioning without alphas
CC-BYhttps://www.flickr.com/photos/nromagna/3985886435/
Standardized library releases
Release As Needed
Semantic Versioning
Release Day Guidelines
Reviewable Release Requests
Semi-automated releases
Tagging
Launchpad Milestone
Announcement Emails
A push for intermediary releases
Reduce tight coupling
More flexibility
Death of common versioning
Intermediary requires own versioning
Less value for YEAR.SEQUENCE model
Continued confusion if ...
CC-BYhttps://www.flickr.com/photos/nromagna/3985886435/
What about stable branches ?
Used to do synchronized point releases
...but what does that mean in the big tent
...but you ...
Stable branch point releases
Tried getting rid of them completely
...but people still wanted reference points
Tried taggin...
Version numbers
nova 12.0.0 keystone 8.0.0
swift 2.5.0 neutron 7.0.0
heat 5.0.0 zaqar 1.0.0
ironic 4.2.0 ...
http://docs.openstack.org/releases/
Release models
release:cycle-with-milestones
pre-versioned, one time-based release
release:cycle-with-intermediary
post-ve...
Other release models
release:independent
outside of release cycle and stable branches
release:none
no “release”
Liberty stable point releases
Tag as-needed, or when OSSA
Communicate through releases repo
Encouraging regular releases
R...
Reno in-tree release notes
Compile notes from small files
Scan branch history for inputs
docs.openstack.org/developer/$PRO...
Launchpad
Good for planning
Historical tracking features complex
Automation
Run tagging script in CI
More tools for liaisons
Milestones
Reduce strict synchronization
doug@doughellmann.com
https://doughellmann.com
@doughellmann on
dhellmann on
thierry@openstack.org
http://ttx.re
@tcarrez ...
Herding cats into boxes
Herding cats into boxes
Upcoming SlideShare
Loading in …5
×

Herding cats into boxes

1,545 views

Published on

How OpenStack release management changes under the Big Tent.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Herding cats into boxes

  1. 1. Herding Cats Into Boxes How OpenStack release management changes with Big Tent Doug Hellmann (@doughellmann) Thierry Carrez (@tcarrez)
  2. 2. CC-BYhttps://www.flickr.com/photos/nromagna/3985886435/
  3. 3. Two approaches Pre-versioning 1.0alpha1, 1.0beta2, 1.0rc1… 1.0 Post-versioning 1.0, 1.0.1, 1.1.0… 2.0
  4. 4. At the beginning 6-month time-based releases YEAR.SEQUENCE (2014.1, 2014.2… 2015.1) Swift: feature-based, frequent releases X.Y.Z (1.1, 1.2, 1.2.1… 2.0) Post-versioning for stable release updates 2015.1.1 or 2.0.1
  5. 5. Client libraries Always backward-compatible Single release channel Semantic versioning
  6. 6. Oslo Incubator copy-and-paste Pre-versioning with alphas Post-versioning without alphas
  7. 7. CC-BYhttps://www.flickr.com/photos/nromagna/3985886435/
  8. 8. Standardized library releases Release As Needed Semantic Versioning Release Day Guidelines Reviewable Release Requests
  9. 9. Semi-automated releases Tagging Launchpad Milestone Announcement Emails
  10. 10. A push for intermediary releases Reduce tight coupling More flexibility
  11. 11. Death of common versioning Intermediary requires own versioning Less value for YEAR.SEQUENCE model Continued confusion if we keep both Switch once or switch later
  12. 12. CC-BYhttps://www.flickr.com/photos/nromagna/3985886435/
  13. 13. What about stable branches ? Used to do synchronized point releases ...but what does that mean in the big tent ...but you can update just a piece
  14. 14. Stable branch point releases Tried getting rid of them completely ...but people still wanted reference points Tried tagging all commits ...but people feared the pollution of tag space
  15. 15. Version numbers nova 12.0.0 keystone 8.0.0 swift 2.5.0 neutron 7.0.0 heat 5.0.0 zaqar 1.0.0 ironic 4.2.0 ...
  16. 16. http://docs.openstack.org/releases/
  17. 17. Release models release:cycle-with-milestones pre-versioned, one time-based release release:cycle-with-intermediary post-versioned, release as-needed
  18. 18. Other release models release:independent outside of release cycle and stable branches release:none no “release”
  19. 19. Liberty stable point releases Tag as-needed, or when OSSA Communicate through releases repo Encouraging regular releases Release notes
  20. 20. Reno in-tree release notes Compile notes from small files Scan branch history for inputs docs.openstack.org/developer/$PROJECT
  21. 21. Launchpad Good for planning Historical tracking features complex
  22. 22. Automation Run tagging script in CI More tools for liaisons
  23. 23. Milestones Reduce strict synchronization
  24. 24. doug@doughellmann.com https://doughellmann.com @doughellmann on dhellmann on thierry@openstack.org http://ttx.re @tcarrez on ttx on

×