#proxy #vagrant #chef-infra
#прокси #vagrant #шеф-повар-инфра
Вопрос:
Хорошо, я пытаюсь обновить chef-client с помощью vagrant omnibus и proxyconf. Я полагал, что это вытащит прокси из proxyconf, но это выглядит не так. Вот мой список плагинов:
vagrant plugin list
vagrant-login (1.0.1, system)
vagrant-omnibus (1.4.1)
- Version Constraint: 1.4.1
vagrant-proxyconf (1.3.2)
- Version Constraint: 1.3.2
vagrant-share (1.1.0, system)
и мой файл Vagrant:
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.omnibus.chef_version = :latest
if Vagrant.has_plugin?("vagrant-proxyconf")
config.proxy.http = "my proxy"
config.proxy.https = "my proxy"
end
Когда я запускаю его с помощью vagrant up, на компьютере нет обновленного chef-клиента. Я попытался использовать рецепт [omnibus_updater] в моем списке выполнения, но он по-прежнему терпит неудачу, потому что другой рецепт терпит неудачу из-за сбоя компиляции (из-за более старой версии chef-client, какая боль в заднице). Есть идеи? Кроме создания нового виртуального ящика?
Обновление: запуск в режиме отладки не показывает никаких ошибок при использовании :latest . Обновление до 11.12.8 выдает следующую ошибку
vagrant-omnibus:
* '11.12.8' is not a valid version of Chef.
Вход в виртуальную машину показывает, что $ HTTP_PROXY и $ HTTPS_PROXY установлены правильно. Выполнение команд на встроенной виртуальной машине работает:
chef-client -v
Chef: 10.14.2
sudo gem update chef
chef-client -v
Chef: 11.12.8
Комментарии:
1. Измените
:latest
на любую версию, которую вы хотите.2. Установили ли вы
HTTP_PROXY
переменные среды иHTTPS_PROXY
переменные среды (на хосте)?3. Пожалуйста, запустите
vagrant up --debug
и вставьте / вставьте все выходные данные.
Ответ №1:
Вещь 1 ::latest не выдает ошибку, когда не удается захватить артефакт. Переключение на именованную версию начинает не находить артефакт, что наводит меня на мысль, что он не проходит через прокси.
Вещь 2: я думаю, что это проблема с омнибусом в Windows. Я нашел этот способ, который может это исправить? https://github.com/schisamo/vagrant-omnibus/pull/89. Я думаю, что этот плагин не использует настройки, установленные poxy-conf.
В НАСТОЯЩЕЕ ВРЕМЯ ИСПОЛЬЗУЕТСЯ ЭТОТ ОБХОДНОЙ ПУТЬ: установите http-прокси в строке Windows cmd
SET HTTP_PROXY=http://username:password@proxy:port