39b4df
{%- macro service_dropin(service_name, unit=[], service=[]) %}
39b4df
{%- if not '.' in service_name -%}
39b4df
{%- set service_name = service_name ~ '.service' -%}
39b4df
{%- endif -%}
39b4df
{{ service_name }}_custom:
76c612
  file.managed:
39b4df
    - name: /etc/systemd/system/{{ service_name }}.d/salt.conf
76c612
    - makedirs: True
76c612
    - contents:
76c612
        - {{ pillar['managed_by_salt'] | yaml_encode }}
39b4df
        {%- if unit %}
39b4df
        - '[Unit]'
39b4df
        {%- for line in unit %}
39b4df
        - '{{ line }}'
39b4df
        {%- endfor %}
39b4df
        {%- endif %} {#- close unit #}
39b4df
        {%- if service %}
76c612
        - '[Service]'
39b4df
        {%- for line in service %}
39b4df
        - '{{ line }}'
76c612
        {%- endfor %}
39b4df
        {%- endif %} {#- close service #}
39b4df
{%- endmacro %}
39b4df
39b4df
{%- macro puma_service_dropin(service, append=[]) %}
39b4df
{{ service_dropin(service, service=['Environment=RAILS_LOG_TO_STDOUT=1'] + append) }}
76c612
{%- endmacro %}
550470
550470
{%- macro known_hosts(hosts, user) %}
550470
{%- for target, keys in salt['mine.get'](hosts, 'ssh_host_keys', 'list').items() %}
550470
{%- if 'ed25519.pub' in keys %}
b2c7c0
known_hosts_{{ target }}:
550470
  ssh_known_hosts.present:
550470
    - name: {{ target }}
b2c7c0
    - user: {{ user }}
550470
    - key: {{ keys['ed25519.pub'].split()[1] }}
550470
    - enc: ssh-ed25519
550470
    - hash_known_hosts: False
550470
{%- endif %}
550470
{%- endfor %}
550470
{%- endmacro %}