Просмотр исходного кода

Improve self-building experience (avoid conflict with pullable images)

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/716

This patch makes us use more fully-qualified container image names
(either prefixed with docker.io/ or with localhost/).

The latter happens when self-building is enabled.

We've recently had issues where if an image was removed manually
and the service was restarted (making `docker run` fetch it from Docker Hub, etc.),
we'd end up with a pulled image, even though we're aiming for a self-built one.
Re-running the playbook would then not do a rebuild, because:
- the image with that name already exists (even though it's something
else)
- we sometimes had conditional logic where we'd build only if the git
repo changed

By explicitly changing the name of the images (prefixing with localhost/),
we avoid such confusion and the possibility that we'd automatically pul something
which is not what we expect.

Also, I've removed that condition where building would happen on git
changes only. We now always build (unless an image with that name
already exists). We just force-build when the git repo changes.
pull/720/head
Slavi Pantaleev 5 лет назад
Родитель
Сommit
5eed874199
32 измененных файлов: 81 добавлений и 40 удалений
  1. +2
    -1
      roles/matrix-bridge-mautrix-facebook/defaults/main.yml
  2. +2
    -2
      roles/matrix-bridge-mautrix-facebook/tasks/setup_install.yml
  3. +2
    -1
      roles/matrix-bridge-mautrix-hangouts/defaults/main.yml
  4. +3
    -3
      roles/matrix-bridge-mautrix-hangouts/tasks/setup_install.yml
  5. +2
    -1
      roles/matrix-bridge-mx-puppet-discord/defaults/main.yml
  6. +3
    -1
      roles/matrix-bridge-mx-puppet-discord/tasks/setup_install.yml
  7. +2
    -1
      roles/matrix-bridge-mx-puppet-instagram/defaults/main.yml
  8. +4
    -2
      roles/matrix-bridge-mx-puppet-instagram/tasks/setup_install.yml
  9. +2
    -1
      roles/matrix-bridge-mx-puppet-skype/defaults/main.yml
  10. +3
    -3
      roles/matrix-bridge-mx-puppet-skype/tasks/setup_install.yml
  11. +2
    -1
      roles/matrix-bridge-mx-puppet-slack/defaults/main.yml
  12. +2
    -0
      roles/matrix-bridge-mx-puppet-slack/tasks/setup_install.yml
  13. +2
    -1
      roles/matrix-bridge-mx-puppet-steam/defaults/main.yml
  14. +2
    -0
      roles/matrix-bridge-mx-puppet-steam/tasks/setup_install.yml
  15. +2
    -1
      roles/matrix-bridge-mx-puppet-twitter/defaults/main.yml
  16. +2
    -0
      roles/matrix-bridge-mx-puppet-twitter/tasks/setup_install.yml
  17. +2
    -1
      roles/matrix-client-element/defaults/main.yml
  18. +4
    -2
      roles/matrix-client-element/tasks/setup.yml
  19. +2
    -1
      roles/matrix-coturn/defaults/main.yml
  20. +3
    -1
      roles/matrix-coturn/tasks/setup_coturn.yml
  21. +3
    -1
      roles/matrix-dynamic-dns/defaults/main.yml
  22. +4
    -2
      roles/matrix-dynamic-dns/tasks/install.yml
  23. +2
    -1
      roles/matrix-ma1sd/defaults/main.yml
  24. +5
    -1
      roles/matrix-ma1sd/tasks/setup_ma1sd.yml
  25. +2
    -1
      roles/matrix-mailer/defaults/main.yml
  26. +3
    -1
      roles/matrix-mailer/tasks/setup_mailer.yml
  27. +2
    -1
      roles/matrix-registration/defaults/main.yml
  28. +2
    -2
      roles/matrix-registration/tasks/setup.yml
  29. +2
    -1
      roles/matrix-synapse-admin/defaults/main.yml
  30. +2
    -2
      roles/matrix-synapse-admin/tasks/setup.yml
  31. +2
    -1
      roles/matrix-synapse/defaults/main.yml
  32. +4
    -2
      roles/matrix-synapse/tasks/synapse/setup_install.yml

+ 2
- 1
roles/matrix-bridge-mautrix-facebook/defaults/main.yml Просмотреть файл

@@ -6,7 +6,8 @@ matrix_mautrix_facebook_enabled: true
matrix_mautrix_facebook_container_image_self_build: false

# See: https://mau.dev/tulir/mautrix-facebook/container_registry
matrix_mautrix_facebook_docker_image: "dock.mau.dev/tulir/mautrix-facebook:latest"
matrix_mautrix_facebook_docker_image: "{{ matrix_mautrix_facebook_docker_image_name_prefix }}tulir/mautrix-facebook:latest"
matrix_mautrix_facebook_docker_image_name_prefix: "{{ 'localhost/' if matrix_mautrix_facebook_container_image_self_build else 'dock.mau.dev/' }}"
matrix_mautrix_facebook_docker_image_force_pull: "{{ matrix_mautrix_facebook_docker_image.endswith(':latest') }}"

matrix_mautrix_facebook_base_path: "{{ matrix_base_data_path }}/mautrix-facebook"


+ 2
- 2
roles/matrix-bridge-mautrix-facebook/tasks/setup_install.yml Просмотреть файл

@@ -43,12 +43,12 @@
docker_image:
name: "{{ matrix_mautrix_facebook_docker_image }}"
source: build
force_source: yes
force_source: "{{ matrix_mautrix_facebook_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mautrix_facebook_docker_src_files_path }}"
pull: yes
when: "matrix_mautrix_facebook_enabled|bool and matrix_mautrix_facebook_container_image_self_build and matrix_mautrix_facebook_git_pull_results.changed"
when: "matrix_mautrix_facebook_enabled|bool and matrix_mautrix_facebook_container_image_self_build|bool"

- name: Check if an old database file already exists
stat:


+ 2
- 1
roles/matrix-bridge-mautrix-hangouts/defaults/main.yml Просмотреть файл

@@ -6,7 +6,8 @@ matrix_mautrix_hangouts_enabled: true
matrix_mautrix_hangouts_container_image_self_build: false

# See: https://mau.dev/tulir/mautrix-hangouts/container_registry
matrix_mautrix_hangouts_docker_image: "dock.mau.dev/tulir/mautrix-hangouts:latest"
matrix_mautrix_hangouts_docker_image: "{{ matrix_mautrix_hangouts_docker_image_name_prefix }}tulir/mautrix-hangouts:latest"
matrix_mautrix_hangouts_docker_image_name_prefix: "{{ 'localhost/' if matrix_mautrix_hangouts_container_image_self_build else 'dock.mau.dev/' }}"
matrix_mautrix_hangouts_docker_image_force_pull: "{{ matrix_mautrix_hangouts_docker_image.endswith(':latest') }}"

matrix_mautrix_hangouts_base_path: "{{ matrix_base_data_path }}/mautrix-hangouts"


+ 3
- 3
roles/matrix-bridge-mautrix-hangouts/tasks/setup_install.yml Просмотреть файл

@@ -36,18 +36,18 @@
dest: "{{ matrix_mautrix_hangouts_docker_src_files_path }}"
force: "yes"
register: matrix_mautrix_hangouts_git_pull_results
when: "matrix_mautrix_hangouts_enabled|bool and matrix_mautrix_hangouts_container_image_self_build"
when: "matrix_mautrix_hangouts_enabled|bool and matrix_mautrix_hangouts_container_image_self_build|bool"

- name: Ensure Mautrix Hangouts Docker image is built
docker_image:
name: "{{ matrix_mautrix_hangouts_docker_image }}"
source: build
force_source: yes
force_source: "{{ matrix_mautrix_hangouts_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mautrix_hangouts_docker_src_files_path }}"
pull: yes
when: "matrix_mautrix_hangouts_enabled|bool and matrix_mautrix_hangouts_container_image_self_build and matrix_mautrix_hangouts_git_pull_results.changed"
when: "matrix_mautrix_hangouts_enabled|bool and matrix_mautrix_hangouts_container_image_self_build|bool"

- name: Check if an old database file already exists
stat:


+ 2
- 1
roles/matrix-bridge-mx-puppet-discord/defaults/main.yml Просмотреть файл

@@ -10,7 +10,8 @@ matrix_mx_puppet_discord_container_image_self_build: false
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:8432"), or empty string to not expose.
matrix_mx_puppet_discord_container_http_host_bind_port: ''

matrix_mx_puppet_discord_docker_image: "sorunome/mx-puppet-discord:latest"
matrix_mx_puppet_discord_docker_image: "{{ matrix_mx_puppet_discord_docker_image_name_prefix }}sorunome/mx-puppet-discord:latest"
matrix_mx_puppet_discord_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_discord_container_image_self_build else 'docker.io/' }}"
matrix_mx_puppet_discord_docker_image_force_pull: "{{ matrix_mx_puppet_discord_docker_image.endswith(':latest') }}"

matrix_mx_puppet_discord_base_path: "{{ matrix_base_data_path }}/mx-puppet-discord"


+ 3
- 1
roles/matrix-bridge-mx-puppet-discord/tasks/setup_install.yml Просмотреть файл

@@ -35,17 +35,19 @@
repo: https://github.com/matrix-discord/mx-puppet-discord.git
dest: "{{ matrix_mx_puppet_discord_docker_src_files_path }}"
force: "yes"
register: matrix_mx_puppet_discord_git_pull_results
when: "matrix_mx_puppet_discord_enabled|bool and matrix_mx_puppet_discord_container_image_self_build"

- name: Ensure MX Puppet Discord Docker image is built
docker_image:
name: "{{ matrix_mx_puppet_discord_docker_image }}"
source: build
force_source: "{{ matrix_mx_puppet_discord_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mx_puppet_discord_docker_src_files_path }}"
pull: yes
when: "matrix_mx_puppet_discord_enabled|bool and matrix_mx_puppet_discord_container_image_self_build"
when: "matrix_mx_puppet_discord_enabled|bool and matrix_mx_puppet_discord_container_image_self_build|bool"

- name: Check if an old database file already exists
stat:


+ 2
- 1
roles/matrix-bridge-mx-puppet-instagram/defaults/main.yml Просмотреть файл

@@ -5,7 +5,8 @@ matrix_mx_puppet_instagram_enabled: true

matrix_mx_puppet_instagram_container_image_self_build: false

matrix_mx_puppet_instagram_docker_image: "docker.io/sorunome/mx-puppet-instagram:latest"
matrix_mx_puppet_instagram_docker_image: "{{ matrix_mx_puppet_instagram_docker_image_name_prefix }}sorunome/mx-puppet-instagram:latest"
matrix_mx_puppet_instagram_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_instagram_container_image_self_build else 'docker.io/' }}"
matrix_mx_puppet_instagram_docker_image_force_pull: "{{ matrix_mx_puppet_instagram_docker_image.endswith(':latest') }}"

matrix_mx_puppet_instagram_base_path: "{{ matrix_base_data_path }}/mx-puppet-instagram"


+ 4
- 2
roles/matrix-bridge-mx-puppet-instagram/tasks/setup_install.yml Просмотреть файл

@@ -35,17 +35,19 @@
repo: https://github.com/Sorunome/mx-puppet-instagram.git
dest: "{{ matrix_mx_puppet_instagram_docker_src_files_path }}"
force: "yes"
when: "matrix_mx_puppet_instagram_enabled|bool and matrix_mx_puppet_instagram_container_image_self_build"
register: matrix_mx_puppet_instagram_git_pull_results
when: "matrix_mx_puppet_instagram_enabled|bool and matrix_mx_puppet_instagram_container_image_self_build|bool"

- name: Ensure mx-puppet-instagram Docker image is built
docker_image:
name: "{{ matrix_mx_puppet_instagram_docker_image }}"
source: build
force_source: "{{ matrix_mx_puppet_instagram_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mx_puppet_instagram_docker_src_files_path }}"
pull: yes
when: "matrix_mx_puppet_instagram_enabled|bool and matrix_mx_puppet_instagram_container_image_self_build"
when: "matrix_mx_puppet_instagram_enabled|bool and matrix_mx_puppet_instagram_container_image_self_build|bool"

- name: Ensure mx-puppet-instagram config.yaml installed
copy:


+ 2
- 1
roles/matrix-bridge-mx-puppet-skype/defaults/main.yml Просмотреть файл

@@ -5,7 +5,8 @@ matrix_mx_puppet_skype_enabled: true

matrix_mx_puppet_skype_container_image_self_build: false

matrix_mx_puppet_skype_docker_image: "sorunome/mx-puppet-skype:latest"
matrix_mx_puppet_skype_docker_image: "{{ matrix_mx_puppet_skype_docker_image_name_prefix }}sorunome/mx-puppet-skype:latest"
matrix_mx_puppet_skype_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_skype_container_image_self_build else 'docker.io/' }}"
matrix_mx_puppet_skype_docker_image_force_pull: "{{ matrix_mx_puppet_skype_docker_image.endswith(':latest') }}"

matrix_mx_puppet_skype_base_path: "{{ matrix_base_data_path }}/mx-puppet-skype"


+ 3
- 3
roles/matrix-bridge-mx-puppet-skype/tasks/setup_install.yml Просмотреть файл

@@ -36,18 +36,18 @@
dest: "{{ matrix_mx_puppet_skype_docker_src_files_path }}"
force: "yes"
register: matrix_mx_puppet_skype_git_pull_results
when: "matrix_mx_puppet_skype_enabled|bool and matrix_mx_puppet_skype_container_image_self_build"
when: "matrix_mx_puppet_skype_enabled|bool and matrix_mx_puppet_skype_container_image_self_build|bool"

- name: Ensure MX Puppet Skype Docker image is built
docker_image:
name: "{{ matrix_mx_puppet_skype_docker_image }}"
source: build
force_source: yes
force_source: "{{ matrix_mx_puppet_skype_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mx_puppet_skype_docker_src_files_path }}"
pull: yes
when: "matrix_mx_puppet_skype_enabled|bool and matrix_mx_puppet_skype_container_image_self_build and matrix_mx_puppet_skype_git_pull_results.changed"
when: "matrix_mx_puppet_skype_enabled|bool and matrix_mx_puppet_skype_container_image_self_build|bool"

- name: Check if an old database file already exists
stat:


+ 2
- 1
roles/matrix-bridge-mx-puppet-slack/defaults/main.yml Просмотреть файл

@@ -10,7 +10,8 @@ matrix_mx_puppet_slack_container_image_self_build: false
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:8432"), or empty string to not expose.
matrix_mx_puppet_slack_container_http_host_bind_port: ''

matrix_mx_puppet_slack_docker_image: "sorunome/mx-puppet-slack:latest"
matrix_mx_puppet_slack_docker_image: "{{ matrix_mx_puppet_slack_docker_image_name_prefix }}sorunome/mx-puppet-slack:latest"
matrix_mx_puppet_slack_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_slack_container_image_self_build else 'docker.io/' }}"
matrix_mx_puppet_slack_docker_image_force_pull: "{{ matrix_mx_puppet_slack_docker_image.endswith(':latest') }}"

matrix_mx_puppet_slack_base_path: "{{ matrix_base_data_path }}/mx-puppet-slack"


+ 2
- 0
roles/matrix-bridge-mx-puppet-slack/tasks/setup_install.yml Просмотреть файл

@@ -35,12 +35,14 @@
repo: https://github.com/Sorunome/mx-puppet-slack.git
dest: "{{ matrix_mx_puppet_slack_docker_src_files_path }}"
force: "yes"
register: matrix_mx_puppet_slack_git_pull_results
when: "matrix_mx_puppet_slack_enabled|bool and matrix_mx_puppet_slack_container_image_self_build"

- name: Ensure MX Puppet Slack Docker image is built
docker_image:
name: "{{ matrix_mx_puppet_slack_docker_image }}"
source: build
force_source: "{{ matrix_mx_puppet_slack_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mx_puppet_slack_docker_src_files_path }}"


+ 2
- 1
roles/matrix-bridge-mx-puppet-steam/defaults/main.yml Просмотреть файл

@@ -10,7 +10,8 @@ matrix_mx_puppet_steam_container_image_self_build: false
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:8432"), or empty string to not expose.
matrix_mx_puppet_steam_container_http_host_bind_port: ''

matrix_mx_puppet_steam_docker_image: "icewind1991/mx-puppet-steam:latest"
matrix_mx_puppet_steam_docker_image: "{{ matrix_mx_puppet_steam_docker_image_name_prefix }}icewind1991/mx-puppet-steam:latest"
matrix_mx_puppet_steam_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_steam_container_image_self_build else 'docker.io/' }}"
matrix_mx_puppet_steam_docker_image_force_pull: "{{ matrix_mx_puppet_steam_docker_image.endswith(':latest') }}"

matrix_mx_puppet_steam_base_path: "{{ matrix_base_data_path }}/mx-puppet-steam"


+ 2
- 0
roles/matrix-bridge-mx-puppet-steam/tasks/setup_install.yml Просмотреть файл

@@ -35,12 +35,14 @@
repo: https://github.com/icewind1991/mx-puppet-steam.git
dest: "{{ matrix_mx_puppet_steam_docker_src_files_path }}"
force: "yes"
register: matrix_mx_puppet_steam_git_pull_results
when: "matrix_mx_puppet_steam_enabled|bool and matrix_mx_puppet_steam_container_image_self_build"

- name: Ensure MX Puppet Steam Docker image is built
docker_image:
name: "{{ matrix_mx_puppet_steam_docker_image }}"
source: build
force_source: "{{ matrix_mx_puppet_steam_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mx_puppet_steam_docker_src_files_path }}"


+ 2
- 1
roles/matrix-bridge-mx-puppet-twitter/defaults/main.yml Просмотреть файл

@@ -10,7 +10,8 @@ matrix_mx_puppet_twitter_container_image_self_build: false
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:8432"), or empty string to not expose.
matrix_mx_puppet_twitter_container_http_host_bind_port: ''

matrix_mx_puppet_twitter_docker_image: "sorunome/mx-puppet-twitter:latest"
matrix_mx_puppet_twitter_docker_image: "{{ matrix_mx_puppet_twitter_docker_image_name_prefix }}sorunome/mx-puppet-twitter:latest"
matrix_mx_puppet_twitter_docker_image_name_prefix: "{{ 'localhost/' if matrix_mx_puppet_twitter_container_image_self_build else 'docker.io/' }}"
matrix_mx_puppet_twitter_docker_image_force_pull: "{{ matrix_mx_puppet_twitter_docker_image.endswith(':latest') }}"

matrix_mx_puppet_twitter_base_path: "{{ matrix_base_data_path }}/mx-puppet-twitter"


+ 2
- 0
roles/matrix-bridge-mx-puppet-twitter/tasks/setup_install.yml Просмотреть файл

@@ -35,12 +35,14 @@
repo: https://github.com/Sorunome/mx-puppet-twitter.git
dest: "{{ matrix_mx_puppet_twitter_docker_src_files_path }}"
force: "yes"
register: matrix_mx_puppet_twitter_git_pull_results
when: "matrix_mx_puppet_twitter_enabled|bool and matrix_mx_puppet_twitter_container_image_self_build"

- name: Ensure MX Puppet Twitter Docker image is built
docker_image:
name: "{{ matrix_mx_puppet_twitter_docker_image }}"
source: build
force_source: "{{ matrix_mx_puppet_twitter_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mx_puppet_twitter_docker_src_files_path }}"


+ 2
- 1
roles/matrix-client-element/defaults/main.yml Просмотреть файл

@@ -2,7 +2,8 @@ matrix_client_element_enabled: true

matrix_client_element_container_image_self_build: false

matrix_client_element_docker_image: "vectorim/element-web:v1.7.13"
matrix_client_element_docker_image: "{{ matrix_client_element_docker_image_name_prefix }}vectorim/element-web:v1.7.13"
matrix_client_element_docker_image_name_prefix: "{{ 'localhost/' if matrix_client_element_container_image_self_build else 'docker.io/' }}"
matrix_client_element_docker_image_force_pull: "{{ matrix_client_element_docker_image.endswith(':latest') }}"

matrix_client_element_data_path: "{{ matrix_base_data_path }}/client-element"


+ 4
- 2
roles/matrix-client-element/tasks/setup.yml Просмотреть файл

@@ -30,17 +30,19 @@
dest: "{{ matrix_client_element_docker_src_files_path }}"
version: "{{ matrix_client_element_docker_image.split(':')[1] }}"
force: "yes"
when: "matrix_client_element_enabled|bool and matrix_client_element_container_image_self_build"
register: matrix_client_element_git_pull_results
when: "matrix_client_element_enabled|bool and matrix_client_element_container_image_self_build|bool"

- name: Ensure Element Docker image is built
docker_image:
name: "{{ matrix_client_element_docker_image }}"
source: build
force_source: "{{ matrix_client_element_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_client_element_docker_src_files_path }}"
pull: yes
when: "matrix_client_element_enabled|bool and matrix_client_element_container_image_self_build"
when: "matrix_client_element_enabled|bool and matrix_client_element_container_image_self_build|bool"

- name: Ensure Element configuration installed
copy:


+ 2
- 1
roles/matrix-coturn/defaults/main.yml Просмотреть файл

@@ -2,7 +2,8 @@ matrix_coturn_enabled: true

matrix_coturn_container_image_self_build: false

matrix_coturn_docker_image: "instrumentisto/coturn:4.5.1.3"
matrix_coturn_docker_image: "{{ matrix_coturn_docker_image_name_prefix }}instrumentisto/coturn:4.5.1.3"
matrix_coturn_docker_image_name_prefix: "{{ 'localhost/' if matrix_coturn_container_image_self_build else 'docker.io/' }}"
matrix_coturn_docker_image_force_pull: "{{ matrix_coturn_docker_image.endswith(':latest') }}"

# The Docker network that Coturn would be put into.


+ 3
- 1
roles/matrix-coturn/tasks/setup_coturn.yml Просмотреть файл

@@ -29,17 +29,19 @@
dest: "{{ matrix_coturn_docker_src_files_path }}"
version: "{{ matrix_coturn_docker_image.split(':')[1] }}"
force: "yes"
register: matrix_coturn_git_pull_results
when: "matrix_coturn_enabled|bool and matrix_coturn_container_image_self_build"

- name: Ensure Coturn Docker image is built
docker_image:
name: "{{ matrix_coturn_docker_image }}"
source: build
force_source: "{{ matrix_coturn_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_coturn_docker_src_files_path }}"
pull: yes
when: "matrix_coturn_enabled|bool and matrix_coturn_container_image_self_build"
when: "matrix_coturn_enabled|bool and matrix_coturn_container_image_self_build|bool"

- name: Ensure Coturn configuration path exists
file:


+ 3
- 1
roles/matrix-dynamic-dns/defaults/main.yml Просмотреть файл

@@ -5,7 +5,9 @@ matrix_dynamic_dns_enabled: true
matrix_dynamic_dns_daemon_interval: '300'

# The docker container to use when in mode
matrix_dynamic_dns_docker_image: 'linuxserver/ddclient:v3.9.1-ls45'
matrix_dynamic_dns_docker_image: '{{ matrix_dynamic_dns_docker_image_name_prefix }}linuxserver/ddclient:v3.9.1-ls45'

matrix_dynamic_dns_docker_image_name_prefix: "{{ 'localhost/' if matrix_dynamic_dns_container_image_self_build else 'docker.io/' }}"

# The image to force pull
matrix_dynamic_dns_docker_image_force_pull: "{{ matrix_dynamic_dns_docker_image.endswith(':latest') }}"


+ 4
- 2
roles/matrix-dynamic-dns/tasks/install.yml Просмотреть файл

@@ -26,17 +26,19 @@
repo: https://github.com/linuxserver/docker-ddclient.git
dest: "{{ matrix_dynamic_dns_docker_src_files_path }}"
force: "yes"
when: "matrix_dynamic_dns_enabled|bool and matrix_dynamic_dns_container_image_self_build"
register: matrix_dynamic_dns_git_pull_results
when: "matrix_dynamic_dns_enabled|bool and matrix_dynamic_dns_container_image_self_build|bool"

- name: Ensure Dynamic DNS Docker image is built
docker_image:
name: "{{ matrix_dynamic_dns_docker_image }}"
source: build
force_source: "{{ matrix_dynamic_dns_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_dynamic_dns_docker_src_files_path }}"
pull: yes
when: "matrix_dynamic_dns_enabled|bool and matrix_dynamic_dns_container_image_self_build"
when: "matrix_dynamic_dns_enabled|bool and matrix_dynamic_dns_container_image_self_build|bool"

- name: Ensure Dynamic DNS ddclient.conf installed
template:


+ 2
- 1
roles/matrix-ma1sd/defaults/main.yml Просмотреть файл

@@ -7,7 +7,8 @@ matrix_ma1sd_container_image_self_build: false

matrix_ma1sd_architecture: "amd64"

matrix_ma1sd_docker_image: "ma1uta/ma1sd:2.4.0-{{ matrix_ma1sd_architecture }}"
matrix_ma1sd_docker_image: "{{ matrix_ma1sd_docker_image_name_prefix }}ma1uta/ma1sd:2.4.0-{{ matrix_ma1sd_architecture }}"
matrix_ma1sd_docker_image_name_prefix: "{{ 'localhost/' if matrix_ma1sd_container_image_self_build else 'docker.io/' }}"
matrix_ma1sd_docker_image_force_pull: "{{ matrix_ma1sd_docker_image.endswith(':latest') }}"

matrix_ma1sd_base_path: "{{ matrix_base_data_path }}/ma1sd"


+ 5
- 1
roles/matrix-ma1sd/tasks/setup_ma1sd.yml Просмотреть файл

@@ -56,6 +56,7 @@
dest: "{{ matrix_ma1sd_docker_src_files_path }}"
version: "{{ matrix_ma1sd_docker_image.split(':')[1].split('-')[0] }}"
force: "yes"
register: matrix_ma1sd_git_pull_results

- name: Ensure ma1sd Docker image is built
shell: "./gradlew dockerBuild"
@@ -64,7 +65,10 @@

- name: Ensure ma1sd Docker image is tagged correctly
docker_image:
name: "{{ matrix_ma1sd_docker_image.split('-')[0] }}"
# The build script always tags the image with something like `ma1uta/ma1sd:2.4.0`.
# Remove the `-{{ matrix_ma1sd_architecture }}` suffix and our `localhost/` prefix (applied when self-building)
# to get to what has actually been built, so we can retag it as `{{ matrix_ma1sd_docker_image }}`.
name: "{{ matrix_ma1sd_docker_image.split('-')[0].replace('localhost/', '') }}"
repository: "{{ matrix_ma1sd_docker_image }}"
force_tag: yes
source: local


+ 2
- 1
roles/matrix-mailer/defaults/main.yml Просмотреть файл

@@ -7,7 +7,8 @@ matrix_mailer_container_image_self_build_repository_url: "https://github.com/dev
matrix_mailer_container_image_self_build_src_files_path: "{{ matrix_mailer_base_path }}/docker-src"
matrix_mailer_container_image_self_build_version: "{{ matrix_mailer_docker_image.split(':')[1] }}"

matrix_mailer_docker_image: "devture/exim-relay:4.93.1-r0"
matrix_mailer_docker_image: "{{ matrix_mailer_docker_image_name_prefix }}devture/exim-relay:4.93.1-r0"
matrix_mailer_docker_image_name_prefix: "{{ 'localhost/' if matrix_mailer_container_image_self_build else 'docker.io/' }}"
matrix_mailer_docker_image_force_pull: "{{ matrix_mailer_docker_image.endswith(':latest') }}"

# The user/group that the container runs with.


+ 3
- 1
roles/matrix-mailer/tasks/setup_mailer.yml Просмотреть файл

@@ -29,12 +29,14 @@
dest: "{{ matrix_mailer_container_image_self_build_src_files_path }}"
version: "{{ matrix_mailer_container_image_self_build_version }}"
force: "yes"
when: "matrix_mailer_container_image_self_build|bool"
register: matrix_mailer_git_pull_results
when: "matrix_mailer_enabled|bool and matrix_mailer_container_image_self_build|bool"

- name: Ensure exim-relay Docker image is built
docker_image:
name: "{{ matrix_mailer_docker_image }}"
source: build
force_source: "{{ matrix_mailer_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_mailer_container_image_self_build_src_files_path }}"


+ 2
- 1
roles/matrix-registration/defaults/main.yml Просмотреть файл

@@ -12,7 +12,8 @@ matrix_registration_docker_src_files_path: "{{ matrix_registration_base_path }}/

matrix_registration_version: "v0.7.0"

matrix_registration_docker_image: "devture/zeratax-matrix-registration:{{ matrix_registration_version }}"
matrix_registration_docker_image: "{{ matrix_registration_docker_image_name_prefix }}devture/zeratax-matrix-registration:{{ matrix_registration_version }}"
matrix_registration_docker_image_name_prefix: "{{ 'localhost/' if matrix_registration_container_image_self_build else 'docker.io/' }}"
matrix_registration_docker_image_force_pull: "{{ matrix_registration_docker_image.endswith(':latest') }}"
matrix_registration_docker_repo: "https://github.com/ZerataX/matrix-registration"



+ 2
- 2
roles/matrix-registration/tasks/setup.yml Просмотреть файл

@@ -39,12 +39,12 @@
docker_image:
name: "{{ matrix_registration_docker_image }}"
source: build
force_source: yes
force_source: "{{ matrix_registration_git_pull_results.changed }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_registration_docker_src_files_path }}"
pull: yes
when: "matrix_registration_enabled|bool and matrix_registration_container_image_self_build|bool and matrix_registration_git_pull_results.changed"
when: "matrix_registration_enabled|bool and matrix_registration_container_image_self_build|bool"

- name: Ensure matrix-registration config installed
copy:


+ 2
- 1
roles/matrix-synapse-admin/defaults/main.yml Просмотреть файл

@@ -7,7 +7,8 @@ matrix_synapse_admin_container_self_build: false
matrix_synapse_admin_docker_repo: "https://github.com/Awesome-Technologies/synapse-admin.git"
matrix_synapse_admin_docker_src_files_path: "{{ matrix_base_data_path }}/synapse-admin/docker-src"

matrix_synapse_admin_docker_image: "awesometechnologies/synapse-admin:0.5.0"
matrix_synapse_admin_docker_image: "{{ matrix_synapse_admin_docker_image_name_prefix }}awesometechnologies/synapse-admin:0.5.0"
matrix_synapse_admin_docker_image_name_prefix: "{{ 'localhost/' if matrix_synapse_admin_container_self_build else 'docker.io/' }}"
matrix_synapse_admin_docker_image_force_pull: "{{ matrix_synapse_admin_docker_image.endswith(':latest') }}"

# A list of extra arguments to pass to the container


+ 2
- 2
roles/matrix-synapse-admin/tasks/setup.yml Просмотреть файл

@@ -24,12 +24,12 @@
docker_image:
name: "{{ matrix_synapse_admin_docker_image }}"
source: build
force_source: yes
force_source: "{{ matrix_synapse_admin_git_pull_results }}"
build:
dockerfile: Dockerfile
path: "{{ matrix_synapse_admin_docker_src_files_path }}"
pull: yes
when: "matrix_synapse_admin_enabled|bool and matrix_synapse_admin_container_self_build|bool and matrix_synapse_admin_git_pull_results.changed"
when: "matrix_synapse_admin_enabled|bool and matrix_synapse_admin_container_self_build|bool"

- name: Ensure matrix-synapse-admin.service installed
template:


+ 2
- 1
roles/matrix-synapse/defaults/main.yml Просмотреть файл

@@ -5,7 +5,8 @@ matrix_synapse_enabled: true

matrix_synapse_container_image_self_build: false

matrix_synapse_docker_image: "matrixdotorg/synapse:v1.22.1"
matrix_synapse_docker_image: "{{ matrix_synapse_docker_image_name_prefix }}matrixdotorg/synapse:v1.22.1"
matrix_synapse_docker_image_name_prefix: "{{ 'localhost/' if matrix_synapse_container_image_self_build else 'docker.io/' }}"
matrix_synapse_docker_image_force_pull: "{{ matrix_synapse_docker_image.endswith(':latest') }}"

matrix_synapse_base_path: "{{ matrix_base_data_path }}/synapse"


+ 4
- 2
roles/matrix-synapse/tasks/synapse/setup_install.yml Просмотреть файл

@@ -24,17 +24,19 @@
dest: "{{ matrix_synapse_docker_src_files_path }}"
version: "{{ matrix_synapse_docker_image.split(':')[1] }}"
force: "yes"
when: "matrix_synapse_container_image_self_build"
register: matrix_synapse_git_pull_results
when: "matrix_synapse_container_image_self_build|bool"

- name: Ensure Synapse Docker image is built
docker_image:
name: "{{ matrix_synapse_docker_image }}"
source: build
force_source: "{{ matrix_synapse_git_pull_results.changed }}"
build:
dockerfile: docker/Dockerfile
path: "{{ matrix_synapse_docker_src_files_path }}"
pull: yes
when: "matrix_synapse_container_image_self_build"
when: "matrix_synapse_container_image_self_build|bool"

- name: Ensure Synapse Docker image is pulled
docker_image:


Загрузка…
Отмена
Сохранить