Skip to content

Instantly share code, notes, and snippets.

@odyssey4me
Last active August 7, 2018 19:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save odyssey4me/f2c2065a5496b09e219d5663ab304e98 to your computer and use it in GitHub Desktop.
Save odyssey4me/f2c2065a5496b09e219d5663ab304e98 to your computer and use it in GitHub Desktop.
jmespath ironic
{
"filtered_ironic_drivers": [
{
"hardware_type": "ipmi",
"boot": "pxe",
"deploy": "direct",
"inspect": "inspector",
"management": "ipmitool",
"power": "ipmitool"
},
{
"hardware_type": "ipmi",
"boot": "pxe",
"deploy": "iscsi",
"inspect": "inspector",
"management": "ipmitool",
"power": "ipmitool"
},
]
}
- hosts: localhost
connection: local
gather_facts: no
vars:
ironic_drivers_enabled:
- agent_ipmitool
- pxe_ipmitool
ironic_driver_types:
agent_ilo:
hardware_type: ilo
boot: ilo-virtual-media
deploy: direct
inspect: ilo
management: ilo
power: ilo
agent_ipmitool:
hardware_type: ipmi
boot: pxe
deploy: direct
inspect: inspector
management: ipmitool
power: ipmitool
agent_ipmitool_socat:
hardware_type: ipmi
boot: pxe
deploy: direct
inspect: inspector
management: ipmitool
power: ipmitool
pxe_ipmitool:
hardware_type: ipmi
boot: pxe
deploy: iscsi
inspect: inspector
management: ipmitool
power: ipmitool
filtered_ironic_drivers: |-
{% set concat_drivers = [] %}
{% for driver in ironic_drivers_enabled %}
{% if driver in ironic_driver_types.keys() %}
{% set _ = concat_drivers.append(ironic_driver_types[driver]) %}
{% endif %}
{% endfor %}
{{ concat_drivers }}
tasks:
- debug:
var: filtered_ironic_drivers
- debug:
msg: "enabled_hardware_types = {{ ((filtered_ironic_drivers | json_query('[*].hardware_type')) | unique) | join(',') }}"
filtered_ironic_drivers[*].hardware_type
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment