流浪性供应与ansible错误

时间:2015-05-17 13:15:32

标签: vagrant ansible vagrant-plugin vagrant-cachier

我在

上收到以下错误
==> default: Configuring cache buckets...
==> default: Running provisioner: ansible... 

The executable 'ansible-playbook' Vagrant is trying to run was not
found in the PATH variable. This is an error. Please verify
this software is installed and on the path.

我正在使用vagrant-cachier插件进行作曲家供应商缓存并安装了ansible。可能是什么问题?

1 个答案:

答案 0 :(得分:1)

正如@ydaetskcoR所说,你在主机上错过了Ansible。或者,您可以在本地运行Playbooks,但Vagrant附带的配置程序不支持,因此您必须使用shell配置程序执行此操作:

config.vm.synced_folder "ansible", "/opt/ansible"

config.vm.provision "ansible", type: "shell" do |s|
  s.inline = <<SCRIPT
    hash ansible-playbook &> /dev/null
    if [ $? -eq 0 ]; then
      echo Ansible already installed.
    else
      echo $(date +"%T"): Updating APT database.
      apt-get update &> /dev/null
      echo $(date +"%T"): Installing Python and pip.
      apt-get -y install python-pip python-dev &> /dev/null
      echo $(date +"%T"): Installing Ansible via pip.
      pip install ansible &> /dev/null
    fi
    mkdir -p /etc/ansible
    hostname > /etc/ansible/hosts
    echo $(date +"%T"): Executing Ansible playbook.
    ansible-playbook /opt/ansible/playbook.yml --connection=local
SCRIPT
end
相关问题