Возможное динамическое обновление инвентаря - PullRequest
0 голосов
/ 28 февраля 2019

Я создал простой питон динамической инвентаризации, который печатает JSON в стандартный вывод, упомянутый ниже, но инвентаризация Ansible не обновляется.

Команда: ansible-playbook playbooks/deploy.yaml -i playbook/inventory_test.py

Инвентарь JSON:

{
    'python_hosts': {
        'hosts': ['10.220.21.122', '10.220.21.278'],
        'vars': {
            'ansible_ssh_user': 'projectuser',
        }
    },
    '_meta': {
        'hostvars': {
            '10.220.21.122': {
                'host_specific_var': 'testhost'
            },
            '10.220.21.278': {
                'host_specific_var': 'towerhost'
            }
        }
    }
} 

Я также пробовал это:

- hosts: localhost

  tasks:

  - name: test
    script: ./inventory_test.py

  - name: Refresh inventory
    meta: refresh_inventory

  - name: print new inventory
    debug:
      var: groups

Но инвентарь по-прежнему не обновляется автоматически,

Ansible версия - 2.6.4

Любая помощь по этому вопросу действительно приветствуется.

1 Ответ

0 голосов
/ 01 марта 2019

Это из-за кеша ... Перейдите в ~ / .ansible / tmp и удалите файл inventory_test.cache.

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

...