#! /bin/sh NB_TOKEN=$(bw get password "Netbox RO token") curl -Ss -H "Authorization: Token ${NB_TOKEN}" https://netbox.niet.verweg.com/graphql/ --json '{ "query": "query {virtual_machine_list(status: \"active\", ) {name vcpus disk memory cluster {name} role {name} primary_ip4 {address} primary_ip6 {address} }}" }' | jq -r ' ([ .data[][] | { (.name): { netbox_vcpus: .vcpus, netbox_disk: .disk, netbox_memory: .memory, netbox_role: .role.name, netbox_primary_ip4: .primary_ip4, netbox_primary_ip6: .primary_ip6, }} ] | add ) as $hostvars | [([ .data[] | group_by(.cluster.name) | .[] | { key: ([.[].cluster.name]|unique)[0], value: {hosts:[(.[].name)]}} ] | from_entries, {_meta: {hostvars: $hostvars}})] | add '