Jump to: navigation, search

Difference between revisions of "OpenstackChefStablebranchCreateNotes"

(Steps for new master branch)
m
Line 7: Line 7:
 
# Wait for the Patch to be merged by Infra
 
# Wait for the Patch to be merged by Infra
 
# Changes for each cookbook and repo, create a bug to tie all the following branch work together
 
# Changes for each cookbook and repo, create a bug to tie all the following branch work together
## update .gitignore to remove both lock files
+
## (Not needed for Kilo or later, ChefDK is assumed) update .gitignore to remove both lock files
 
## update.gitreview to ref defaultbranch=stable/juno
 
## update.gitreview to ref defaultbranch=stable/juno
 
## update Berksfile to ref branch: 'stable/juno'
 
## update Berksfile to ref branch: 'stable/juno'
## (Not needed for Kilo and later, ChefDK is assumed) create Gemfile.lock then Berks.lock.  One way to do this is to simply run "rake unit", then "git add *.lock"
+
## (Not needed for Kilo or later, ChefDK is assumed) create Gemfile.lock then Berks.lock.  One way to do this is to simply run "rake unit", then "git add *.lock"
 
## see https://github.com/stackforge/cookbook-openstack-identity/commit/3a99613b89fb28d21def8cbeaa63e40da32768f5 for example
 
## see https://github.com/stackforge/cookbook-openstack-identity/commit/3a99613b89fb28d21def8cbeaa63e40da32768f5 for example
 
# Create a review with the above and put it up against the stable/<release> branch.
 
# Create a review with the above and put it up against the stable/<release> branch.
Line 23: Line 23:
 
# Changes for each cookbook and repo
 
# Changes for each cookbook and repo
 
## update metadata with new version level
 
## update metadata with new version level
## (Not needed for Kilo and later, ChefDK is assumed) once infra gate changes are in place to handle it, update Gemfile wtih new levels
+
## (Not needed for Kilo or later, ChefDK is assumed) once infra gate changes are in place to handle it, update Gemfile wtih new levels
 
## create robocop TODO file to outline that work to be done (rubocop --auto-gen-config and add "inherit_from: .rubocop_todo.yml" in your .rubocop.yml)
 
## create robocop TODO file to outline that work to be done (rubocop --auto-gen-config and add "inherit_from: .rubocop_todo.yml" in your .rubocop.yml)
 
## update code with refs to old openstack release  (i.e. "juno" -> "kilo"  (Common release and yum attributes, ...)
 
## update code with refs to old openstack release  (i.e. "juno" -> "kilo"  (Common release and yum attributes, ...)

Revision as of 18:23, 27 August 2015

Steps to create stable/<release> branch

Awesome! We've decided as a group to create the next stable branch. Here are some steps to remind you on how to do it.

  1. Go to for each repo as a core member and create the branch with the SHA you want.
  2. To get Gerrit to report to the #openstack-chef channel create the "stable/<release_name>" via openstack-infra/project-config project under: gerritbot/channels.yaml. Something like this is an example. You may be required to remove an old branch too, keep this in mind.
  3. Wait for the Patch to be merged by Infra
  4. Changes for each cookbook and repo, create a bug to tie all the following branch work together
    1. (Not needed for Kilo or later, ChefDK is assumed) update .gitignore to remove both lock files
    2. update.gitreview to ref defaultbranch=stable/juno
    3. update Berksfile to ref branch: 'stable/juno'
    4. (Not needed for Kilo or later, ChefDK is assumed) create Gemfile.lock then Berks.lock. One way to do this is to simply run "rake unit", then "git add *.lock"
    5. see https://github.com/stackforge/cookbook-openstack-identity/commit/3a99613b89fb28d21def8cbeaa63e40da32768f5 for example
  5. Create a review with the above and put it up against the stable/<release> branch.
  6. Get it merged in and you should be good

Steps for new master branch

Now we have a new master, need to get it in sync with matching base openstack release.

  1. Possible infra changes for changes to the gates we want for this release
  2. Decide on new levels of tools (ChefDK, rubocop, foodcritic), we have always be trying to move forward with these
  3. Changes for each cookbook and repo
    1. update metadata with new version level
    2. (Not needed for Kilo or later, ChefDK is assumed) once infra gate changes are in place to handle it, update Gemfile wtih new levels
    3. create robocop TODO file to outline that work to be done (rubocop --auto-gen-config and add "inherit_from: .rubocop_todo.yml" in your .rubocop.yml)
    4. update code with refs to old openstack release (i.e. "juno" -> "kilo" (Common release and yum attributes, ...)
    5. update each conf file with any new base openstack defaults and new/changed sections
    6. update all code looking for deprecation's that can now be removed
    7. update any package dependencies that have changed for each component
    8. update all spec test platforms to targeted levels we want for this release

back to main page: https://wiki.openstack.org/wiki/Chef/GettingStarted