Editing Chef Workstation to not download the newest Chef-Client version when bootstrapping


#1

Hey Guys,

I have been hitting a wall on this one for over a week now. I used the "Starter Chef Workstation" package from the Chef hosting server ( [https://api.chef.io). I have everything working properly, but when I bootstrap (from windows PowerShell) to my Chef-Client, I noticed it is installing the newest version of Chef-Client, which the software I am working, can't use. I am trying to find which config/rb file in my chef-repo or opscode folder, I would need to edit to stop the "chef-client-latest.msi". The below syntax is what PowerShell is spitting out if it is of any help (NODEMACHINE = my Chef-Client hostname:

C:\Users\trev9414>goto install
NODEMACHINE Checking for existing downloaded package at "C:\Users\trev9414\AppData\Local\Temp\chef-client-latest.msi"
NODEMACHINE Found existing downloaded package, deleting.
NODEMACHINE Attempting to download client package using PowerShell if available...
NODEMACHINE powershell.exe -ExecutionPolicy Unrestricted -InputFormat None -NoProfile -NonInteractive -File C:\chef\wget.ps1 "https://www.chef.io/chef/download?p=windows&pv=2016&m=x86_64&DownloadContext=PowerShell&v=14" "C:\Users\trev9414\AppData\Local\Temp\chef-client-latest.msi"
NODEMACHINE Download via PowerShell succeeded.

Please let me know if your have any further questions or need more info.

Thanks for any help!


#2

You can specify the version of the client you want to install from your bootstrap command

--bootstrap-version VERSION

The version of the chef-client to install.

https://docs.chef.io/knife_bootstrap.html

Alternately if you have a local artifact repository you can host the version of chef client that you need locally and you can push that to your clients using the bootstrap command as well.

We do this with and specifying rpm -i local.repo.com/chef_client_version.rpm

--bootstrap-install-command COMMAND

Execute a custom installation command sequence for the chef-client. This option may not be used in the same command with --bootstrap-curl-options or --bootstrap-wget-options .