Атрибуты шеф-повара ваграннта - программирование
Подтвердить что ты не робот

Атрибуты шеф-повара ваграннта

Я пытаюсь настроить свой файл Vagrant на наличие некоторых атрибутов шеф-повара, но я должен делать что-то неправильно, потому что рецепты шеф-повара используют значения по умолчанию вместо моих атрибутов, которые я пытаюсь установить. Вот мой раздел конфигурации моего бродячего файла:

config.vm.provision :chef_solo do |chef|
    chef.json = {
      :mysql => {
        :server_root_password => 'password'
      },
      :nodejs => {
        :version => '0.6.14',
        :dir => '/usr/local',
        :npm => '1.1.13'
      }
    }
    chef.cookbooks_path = "config/env/cookbooks"
    chef.add_recipe "apt"
    chef.add_recipe "mongodb::10gen_repo"
    chef.add_recipe "mongodb"
    chef.add_recipe "mysql::client"
    chef.add_recipe "mysql::server"
    chef.add_recipe "nodejs"
    chef.add_recipe "nodejs::npm"
    #chef.add_recipe "mymc_service"

end

Является ли мой Ruby неправильным или есть лучший способ сделать это?

4b9b3361

Ответ 1

Я новичок в Vagrant, Ruby и Chef, но это то, что сработало для меня:

config.vm.provision :chef_solo do |chef|
    chef.json = {
        "mysql" => {
            "server_root_password" => "password"
        }
    }
    chef.add_recipe "mysql" # etc
end

Ответ 2

Недавно я столкнулся с этой проблемой. Хотя ответ Майка не разрешил мою проблему, возможно, из-за новых версий бродяг/шеф-поваров, он указал мне в правильном направлении. Следующим является то, что я должен был сделать для работы сервера MySQL:

config.vm.provision :chef_solo do |chef|
    chef.json = {
        :mysql => {
            :server_root_password => "password",
            :server_repl_password => "password",
            :server_debian_password => "password"
        }
    }
    chef.add_recipe "mysql::server"
end