Let's just create a role that populates the Linode inventory..
This commit is contained in:
17
roles/inventory/linode_inventory/tasks/main.yml
Normal file
17
roles/inventory/linode_inventory/tasks/main.yml
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
- name: Run Linode dynamic inventory script
|
||||
ansible.builtin.command: "{{ playbook_dir }}/roles/inventory/linode_inventory/files/linode_inventory.py"
|
||||
register: linode_inventory_raw
|
||||
changed_when: false
|
||||
|
||||
- name: Parse JSON inventory output
|
||||
ansible.builtin.set_fact:
|
||||
linode_inventory: "{{ linode_inventory_raw.stdout | from_json }}"
|
||||
|
||||
- name: Add Linode hosts dynamically
|
||||
ansible.builtin.add_host:
|
||||
name: "{{ item.key }}"
|
||||
ansible_host: "{{ item.value.ansible_host }}"
|
||||
groups: all
|
||||
loop: "{{ linode_inventory['_meta']['hostvars'] | dict2items }}"
|
||||
|
Reference in New Issue
Block a user