Unverified Commit 9c397b70 authored by Dmitriy Safronov's avatar Dmitriy Safronov Committed by GitHub
Browse files

asserts and updates (#5)

parent d50c1132
Loading
Loading
Loading
Loading
+13 −4
Original line number Diff line number Diff line
---

- name: "Create Docker extra service"
- name: Fail on spaces in service names
  with_dict: "{{ docker_extra_service }}"
  ansible.builtin.assert:
    that:
      - "' ' not in item.key"
  no_log: true

- name: Create Docker extra service
  when:
    - item.value.parameters is defined
    - item.value.parameters != None
@@ -13,8 +20,9 @@
    group: root
    mode: "0644"
  register: docker_extra_service_parameters
  no_log: true

- name: "Create Docker extra service env"
- name: Create Docker extra service env
  when:
    - item.value.env is defined
    - item.value.env != None
@@ -27,11 +35,12 @@
    group: root
    mode: "0644"
  register: docker_extra_service_env
  no_log: true

- name: "(Re)start Docker extra service"
- name: (Re)start Docker extra service
  with_items: "{{ (docker_extra_service_parameters.results + docker_extra_service_env.results) | selectattr('changed', 'equalto', true) | map(attribute='item.key') | list | unique }}"
  ansible.builtin.systemd:
    state: restarted
    state: reloaded
    enabled: true
    daemon_reload: true
    name: "docker-extra_{{ item }}.service"
+6 −3
Original line number Diff line number Diff line
@@ -7,11 +7,14 @@ Requires=docker.service

[Service]
Type=oneshot
Environment="TERM=dumb"
RemainAfterExit=true

ExecStart=/usr/bin/env sh -c 'docker ps --format "{% raw %}{{.Names}}{% endraw %}" -a | grep -q -x "{{ item.key }}" && docker start "{{ item.key }}" || docker run -d --name "{{ item.key }}" {{ item.value.parameters }}'
ExecStop=/usr/bin/docker stop "{{ item.key }}"
EnvironmentFile=/etc/systemd/system/docker-extra_{{ item.key }}.service.env
Environment="TERM=dumb"

ExecStart=/usr/bin/env sh -c 'docker ps --format "{% raw %}{{.Names}}{% endraw %}" -a | grep -q -x {{ item.key }} && docker start {{ item.key }} || docker run -d --name {{ item.key }} {{ item.value.parameters }}'
ExecReload=/usr/bin/env sh -c 'docker rm -f {{ item.key }} && docker run -d --name {{ item.key }} {{ item.value.parameters }}'
ExecStop=/usr/bin/docker stop {{ item.key }}

[Install]
WantedBy=multi-user.target