Upgrading Chef
Chef is a major part of omnibus-gitlab, and periodically needs to be updated. Follow these steps to upgrade to the latest version and verify the functionality.
Upgrade steps
-
Create a new branch in
omnibus-gitlabgit switch -c upgrade-chef-to-X -
Update the appropriate software entries in
config/software/. Changedefault_versionto be the newer version we’re upgrading to for:- chef-bin
- chef-gem
- chef-zero
- ohai
- Update entries in
Gemfileto the new version. At a mininum, thechefandohaientries will need to be updated. -
Update the bundle
- If this is a major version upgrade
bundle update chef ohai- If this is a minor version upgrade
bundle update chef ohai --conservativeIt may be necessary to chase down errors related to dependencies being upgraded
-
Commit the changes
git add config/software/chef-{bin,gem,zero}.rb git add Gemfile{,.lock} git commit git push - Ensure the pipelines pass on GitLab.com
- Trigger an EE package pipeline to ensure we get a
gitlab-qarun - When available, trigger an HA validation job
- Check QA jobs for the package pipeline, and the HA validation job, ensure pipelines are green, or any failures are unrelated.
- Push to
omnibus-gitlabondev.gitlab.organd ensure the package builds on all platforms - Download a package to a dev environment, and verify you can upgrade from an older version of
omnibus-gitlab, to the newer package - Verify a Geo installation is successful using the newer package
Bonus points
- Read through the Changelog and Release notes, identify any improvements, new features, or bug fixes which may apply to omnibus and open follow up issues