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-gitlab
git switch -c upgrade-chef-to-X
-
Update the appropriate software entries in
config/software/
. Changedefault_version
to be the newer version we’re upgrading to for:- chef-bin
- chef-gem
- chef-zero
- ohai
- Update entries in
Gemfile
to the new version. At a mininum, thechef
andohai
entries 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 --conservative
It 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-qa
run - 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-gitlab
ondev.gitlab.org
and 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