Возможно ли / допустимо ли запускать более одной книги для бродячего и ответственного поставщика в следующей форме:

 config.vm.define "repo", primary: true do |d|
    d.vm.hostname = "some.hostname"
    # Create a private network, which allows host-only access to the machine
    # using a specific IP.
    d.vm.network :private_network, ip: "10.10.2.90"
    d.vm.provision 'ansible' do |ansible|
      ansible.config_file = 'ansible/ansible.cfg'
      ansible.playbook = 'ansible/playbook1.yml'
      ansible.playbook = 'ansible/playbook2.yml'
      ansible.sudo = true
      ansible.inventory_path = 'ansible/inventory/site'
      ansible.host_key_checking = false
    end
  end
6
pkaramol 3 Апр 2017 в 14:18

2 ответа

Лучший ответ

Нет не будет действительным

Если вы хотите запустить 2 playbook, вам нужно будет запустить ANSI провайдера дважды, это можно сделать так:

 config.vm.define "repo", primary: true do |d|
    d.vm.hostname = "some.hostname"
    # Create a private network, which allows host-only access to the machine
    # using a specific IP.
    d.vm.network :private_network, ip: "10.10.2.90"

    # First playbook
    d.vm.provision  "playbook1", type:'ansible' do |ansible|
      ansible.config_file = 'ansible/ansible.cfg'
      ansible.playbook = 'ansible/playbook1.yml'
      ansible.sudo = true
      ansible.inventory_path = 'ansible/inventory/site'
      ansible.host_key_checking = false
    end

    # Second playbook
    d.vm.provision  "playbook2", type:'ansible' do |ansible|
      ansible.config_file = 'ansible/ansible.cfg'
      ansible.playbook = 'ansible/playbook2.yml'
      ansible.sudo = true
      ansible.inventory_path = 'ansible/inventory/site'
      ansible.host_key_checking = false
    end
  end
12
shrimpwagon 4 Фев 2019 в 17:24

Вы также можете использовать роль вместо playbook, и эта роль содержит указатели на несколько playbook, которые определены в подкаталогах ролей. Например, playbook.yml содержит

---
- name: BaseOS configuration
  hosts: all
  become: yes
  roles:
    - baseos
    - users

BaseOS и пользователи существуют в подкаталоге ролей и будут выполняться последовательно при вызове playbook.yml.

1
cpe111 5 Июн 2019 в 14:19