mine_functions: grains.items: []salt '*' mine.update
salt '*' mine.get '*' network.interfaces
To view this discussion on the web visit https://groups.google.com/d/msgid/salt-users/28c62149-341d-42de-b325-67affdcaea79%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
# salt-mine stuffmine_functions: grains.item: - fqdn - ipv4salt '*' mine.update)
salt-call mine.get 'app_env:someapp-dev-01' grains.item grain{% set my_hosts = [] -%}{% for host, data in salt['mine.get']('app_env:someapp-dev-01', 'grains.item', expr_form = 'grain').items() -%} {% do my_hosts.append(data["fqdn"]) -%}{% endfor -%}
{% set my_hosts = [] -%}{% set app_primary = [] -%}{% set web_primary = [] -%}{% set app_env = grains['app_env'] -%}
{% for host, data in salt['mine.get']('app_env:%s'|format(app_env), 'grains.item', expr_form = 'grain').items() -%} {% do my_hosts.append(data["fqdn"]) -%}{% endfor -%}{# assign variables based on hosts in the salt mine data -#}{% for host in my_hosts -%} {% if ( "app-" in host and "-01" in host ) -%} {% do app_primary.append(host) -%} {% endif -%} {% if ( "web-" in host and "-01" in host ) -%} {% do web_primary.append(host) -%} {% endif -%}{% endfor -%}
My Hosts: {{ my_hosts }}Primary Appserver: {{ app_primary[0] }}Primary Webserver: {{ web_primary[0] }}