Search code examples
ansibleansible-inventory

Create group with multiple names - Ansible GCE inventory plugin


I want to create a dynamic inventory, and create a group to put the nodes where I scrape data from.I'm using the gcp_compute plugin in my dynamic inventory.

What I want to achieve:
I want to retrieve multiple hostnames/ip and put them in the same group. I want it to be quite modular, so I can switch nodenames easily.

This how it looks so far:

plugin: gcp_compute
auth_kind: serviceaccount
cache: true
gather_facts: false
retrieve_image_info: true
service_account_file: servicefile.json
groups:
  node_exporter: "'db-vm' in name"

I want to use something like: node_exporter: "'db-vm' OR 'prometheus-vm' in name" or something similar. How can I achieve this.

This is the command I use too see if it works or not: ansible-inventory -i gce_inventory.gcp.yml --graph. All my nodes gets ungrouped.


Solution

  • I solved it very easily...

    I believe I made some mistakes before when doing the conditional, but now accidentally solved it.

    To be able to retrieve multiple, here how:
    node_exporter: "'db-vm' in name or 'prometheus-vm' in name"