Revert "Revert "Update Chef Client to 18.0.185""
Reverts code-dot-org/code-dot-org#53037, restoring https://github.com/code-dot-org/code-dot-org/pull/52294
The last time we attempted this, once the upgrade made it to the test server a bunch of dashboard legacy tests started failing. When we reverted our upgrade attempt and tried to return to Chef 17, the test server ended up in a bad state from which we were unable to recover for several days. Our ultimate recourse was to recreate the entire server from scratch. See this slack thread for more details
Unfortunately, we were never able to figure out the exact nature of the failures on the old test server. It seems extremely likely that they were related to the attempt to upgrade Chef, but could have also been due to some of the many inconsistencies and exceptions that server had built up over the years, for which we wanted to recreate it anyway.
Testing Story
Tested on an adhoc. I first spun up a brand new adhoc based on staging and verified that it was provisioned successfully. I also manually modified some config files in order to be able to run the dashboard legacy tests on the adhoc, which all passed.
I then merged this branch into the adhoc branch and let it rebuild with the updated cookbooks. Unfortunately, adhocs do not pick up updates to default attributes, so the automatic rebuild did not upgrade the adhoc to Chef 18; to do that, I manually modified the appropriate recipe to hardcode the desired version and manually executed sudo /opt/chef/bin/chef-client -o cdo-apps to upgrade the server to Chef 18.
The upgrade was successful, as was a follow-up automatic build. I was still able to successfully run dashboard legacy tests.
This PR is a continuation of #53055, which was mis-closed by the Git LFS migration (#55759).
Previous Comments:
Previous Reviews:
- pablo-code-org approved -