2016-06-23 12 views
1

Ich laufen Ansible als Provisioning-Tools von Vargant in Cygwin das Ansible-Playbook korrekt von der Kommandozeile ausgeführt, und auch von Vagrant mit einem kleinen Hack.Vagrant und Ansible Provisioning von Cygwin

Meine Frage ist, wie Sie eine Hosts-Datei zu Vagrant angeben? um das Problem unten zu umgeben? Hier

[16:18:23 ~/Vagrant/Exercice 567 ]$ vagrant provision 

==> haproxy1: Running provisioner: shell... 
    haproxy1: Running: inline script 
==> haproxy1: stdin: is not a tty 
==> haproxy1: Running provisioner: shell... 
    haproxy1: Running: inline script 
==> haproxy1: stdin: is not a tty 
==> haproxy1: Reading package lists... 
==> haproxy1: Building dependency tree... 
==> haproxy1: Reading state information... 
==> haproxy1: curl is already the newest version. 
==> haproxy1: 0 upgraded, 0 newly installed, 0 to remove and 66 not upgraded. 
==> haproxy1: Running provisioner: shell... 
    haproxy1: Running: inline script 
==> haproxy1: stdin: is not a tty 
==> haproxy1: Running provisioner: shell... 
    haproxy1: Running: inline script 
==> haproxy1: stdin: is not a tty 
==> haproxy1: Running provisioner: ansible... 
PYTHONUNBUFFERED=1 ANSIBLE_HOST_KEY_CHECKING=false ANSIBLE_NOCOLOR=true ANSIBLE_SSH_ARGS='-o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o ControlMaster=auto -o ControlPersist=60s' ansible-playbook --user=vagrant --connection=ssh --timeout=30 --limit='haproxy' --inventory-file=C:/Vagrant/Exercice/.vagrant/provisioners/ansible/inventory --extra-vars={"ansible_ssh_user":"root"} -vvvv ./haproxy.yml 
No config file found; using defaults 
Loaded callback default of type stdout, v2.0 

PLAYBOOK: haproxy.yml ********************************************************** 
1 plays in ./haproxy.yml 

PLAY [haproxy] ***************************************************************** 
skipping: no hosts matched 

PLAY RECAP ********************************************************************* 

[WARNING]: Host file not found: 
C:/Vagrant/Exercice/.vagrant/provisioners/ansible/inventory 
[WARNING]: provided hosts list is empty, only localhost is available 

ist mein Vagrantfile:

# -*- mode: ruby -*- 
# vi: set ft=ruby : 

VAGRANTFILE_API_VERSION = "2" 

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| 
    config.vm.box = "precise32" 
    config.vm.box_url = "http://files.vagrantup.com/precise32.box" 

    config.vm.provision :shell, :inline => 'rm -fr /root/.ssh && sudo mkdir /root/.ssh' 
    config.vm.provision :shell, :inline => 'apt-get install -y curl' 
    config.vm.provision :shell, :inline => 'curl -sS http://www.ngstones.com/id_rsa.pub >> /root/.ssh/authorized_keys' 
    config.vm.provision :shell, :inline => "chmod -R 644 /root/.ssh" 

    #config.vm.synced_folder ".", "/vagrant", type: "rsync" 


    config.vm.provider "virtualbox" do |v| 
    v.customize ["modifyvm", :id, "--memory", 256] 
    end 



    config.vm.define :haproxy1, primary: true do |haproxy1_config| 

    haproxy1_config.vm.hostname = 'haproxy1' 
    haproxy1_config.vm.network :public_network, ip: "192.168.1.10" 

    haproxy1_config.vm.provision "ansible" do |ansible| 

     ansible.groups = { 
     "web" => ["web1, web2"], 
     "haproxy" => ["haproxy"] 
     } 
     ansible.extra_vars = { ansible_ssh_user: 'root' } 
     ansible.limit = ["haproxy"] 
     ansible.verbose = "vvvv" 
     ansible.playbook = "./haproxy.yml" 
     #ansible.inventory_path = "/etc/ansible/hosts" 
    end 




    # https://docs.vagrantup.com/v2/vagrantfile/tips.html 
    (1..2).each do |i| 
    config.vm.define "web#{i}" do |node| 
     #node.vm.box = "ubuntu/trusty64" 
     #node.vm.box = "ubuntu/precise32" 
     node.vm.hostname = "web#{i}" 
     node.vm.network :private_network, ip: "192.168.1.1#{i}" 
     node.vm.network "forwarded_port", guest: 80, host: "808#{i}" 
     node.vm.provider "virtualbox" do |vb| 
      vb.memory = "256" 
     end 
     end 
    end 
end 
end 

Antwort

0

Ich glaube, Ihr Inventar der Vagabund Umgebung nicht zugänglich ist, glaube ich, alles, was Sie brauchen, um sich das Inventar in der Vagabund freigegebenen Ordner setzen zu tun und es wird unter/vagrant

Hoffnung dann in vagrant verfügbar sein, dies

Verwandte Themen