Skip to content

Commit 152a3bb

Browse files
spantaleevclaude
andcommitted
matrix-synapse: switch to modern community.docker docker_image modules
Replaces `community.docker.docker_image` with the modern `docker_image_pull` and `docker_image_build` split modules across all four task files (synapse, reverse_proxy_companion, goofys, rust-synapse-compress-state). Drops the `ansible_version` compatibility ladder and removes four `_container_image_force_pull` variables (the new pull module handles registry refresh natively via `pull: always`). The Synapse self-build path uses `ansible.builtin.shell` for BuildKit support and is left as-is. The customizations image build (which builds on top of the locally-tagged synapse image) is converted to `docker_image_build` with `pull: false`, preserving its existing rebuild-trigger semantics. Related to spantaleev#5191. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent b91ce39 commit 152a3bb

6 files changed

Lines changed: 20 additions & 27 deletions

File tree

roles/custom/matrix-synapse/defaults/main.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@ matrix_synapse_container_image_customizations_dockerfile_body_custom: ''
8686
matrix_synapse_container_image: "{{ matrix_synapse_container_image_registry_prefix }}{{ matrix_synapse_container_image_name }}:{{ matrix_synapse_container_image_tag }}"
8787
matrix_synapse_container_image_name: "{{ matrix_synapse_github_org_and_repo }}"
8888
matrix_synapse_container_image_tag: "{{ matrix_synapse_version }}"
89-
matrix_synapse_container_image_force_pull: "{{ matrix_synapse_container_image.endswith(':latest') }}"
9089
matrix_synapse_container_image_registry_prefix: "{{ 'localhost/' if matrix_synapse_container_image_self_build else matrix_synapse_container_image_registry_prefix_upstream }}"
9190
matrix_synapse_container_image_registry_prefix_upstream: "{{ matrix_synapse_container_image_registry_prefix_upstream_default }}"
9291
matrix_synapse_container_image_registry_prefix_upstream_default: "ghcr.io/"
@@ -1670,7 +1669,6 @@ matrix_s3_goofys_container_image: "{{ matrix_s3_goofys_container_image_registry_
16701669
matrix_s3_goofys_container_image_registry_prefix: "{{ matrix_s3_goofys_container_image_registry_prefix_upstream }}"
16711670
matrix_s3_goofys_container_image_registry_prefix_upstream: "{{ matrix_s3_goofys_container_image_registry_prefix_upstream_default }}"
16721671
matrix_s3_goofys_container_image_registry_prefix_upstream_default: "docker.io/"
1673-
matrix_s3_goofys_container_image_force_pull: "{{ matrix_s3_goofys_container_image.endswith(':latest') }}"
16741672
matrix_s3_media_store_custom_endpoint: "your-custom-endpoint"
16751673
matrix_s3_media_store_bucket_name: "your-bucket-name"
16761674
matrix_s3_media_store_aws_access_key: "your-aws-access-key"
@@ -1788,7 +1786,6 @@ matrix_synapse_rust_synapse_compress_state_container_image_version: v0.0.3
17881786
matrix_synapse_rust_synapse_compress_state_container_image_registry_prefix: "{{ matrix_synapse_rust_synapse_compress_state_container_image_registry_prefix_upstream }}"
17891787
matrix_synapse_rust_synapse_compress_state_container_image_registry_prefix_upstream: "{{ matrix_synapse_rust_synapse_compress_state_container_image_registry_prefix_upstream_default }}"
17901788
matrix_synapse_rust_synapse_compress_state_container_image_registry_prefix_upstream_default: "registry.gitlab.com/"
1791-
matrix_synapse_rust_synapse_compress_state_container_image_force_pull: "{{ matrix_synapse_rust_synapse_compress_state_container_image.endswith(':stable') or matrix_synapse_rust_synapse_compress_state_container_image.endswith(':latest') }}"
17921789

17931790
matrix_synapse_rust_synapse_compress_state_base_path: "{{ matrix_base_data_path }}/rust-synapse-compress-state"
17941791
matrix_synapse_rust_synapse_compress_state_synapse_compress_state_in_container_path: "/usr/local/bin/synapse_compress_state"
@@ -1870,7 +1867,6 @@ matrix_synapse_reverse_proxy_companion_container_image_registry_prefix: "{{ matr
18701867
matrix_synapse_reverse_proxy_companion_container_image_registry_prefix_upstream: "{{ matrix_synapse_reverse_proxy_companion_container_image_registry_prefix_upstream_default }}"
18711868
matrix_synapse_reverse_proxy_companion_container_image_registry_prefix_upstream_default: "docker.io/"
18721869
matrix_synapse_reverse_proxy_companion_container_image_tag: "{{ matrix_synapse_reverse_proxy_companion_version }}"
1873-
matrix_synapse_reverse_proxy_companion_container_image_force_pull: "{{ matrix_synapse_reverse_proxy_companion_container_image.endswith(':latest') }}"
18741870

18751871
matrix_synapse_reverse_proxy_companion_container_network: "{{ matrix_synapse_container_network }}"
18761872

roles/custom/matrix-synapse/tasks/goofys/setup_install.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,9 @@
1515
tasks_from: ensure_fuse_installed
1616

1717
- name: Ensure Goofys Docker image is pulled
18-
community.docker.docker_image:
18+
community.docker.docker_image_pull:
1919
name: "{{ matrix_s3_goofys_container_image }}"
20-
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
21-
force_source: "{{ matrix_s3_goofys_container_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
22-
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_s3_goofys_container_image_force_pull }}"
20+
pull: always
2321
register: matrix_goofys_container_image_pull_result
2422
retries: "{{ devture_playbook_help_container_retries_count }}"
2523
delay: "{{ devture_playbook_help_container_retries_delay }}"

roles/custom/matrix-synapse/tasks/reverse_proxy_companion/setup_install.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,9 @@
5252
when: not matrix_synapse_reverse_proxy_companion_njs_enabled
5353

5454
- name: Ensure matrix-synapse-reverse-proxy-companion nginx container image is pulled
55-
community.docker.docker_image:
55+
community.docker.docker_image_pull:
5656
name: "{{ matrix_synapse_reverse_proxy_companion_container_image }}"
57-
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
58-
force_source: "{{ matrix_synapse_reverse_proxy_companion_container_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
59-
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_synapse_reverse_proxy_companion_container_image_force_pull }}"
57+
pull: always
6058
register: matrix_synapse_reverse_proxy_companion_container_image_pull_result
6159
retries: "{{ devture_playbook_help_container_retries_count }}"
6260
delay: "{{ devture_playbook_help_container_retries_delay }}"

roles/custom/matrix-synapse/tasks/rust-synapse-compress-state/main.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,9 @@
5151
group: "{{ matrix_synapse_gid }}"
5252

5353
- name: Ensure rust-synapse-compress-state image is pulled
54-
community.docker.docker_image:
54+
community.docker.docker_image_pull:
5555
name: "{{ matrix_synapse_rust_synapse_compress_state_container_image }}"
56-
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
57-
force_source: "{{ matrix_synapse_rust_synapse_compress_state_container_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
58-
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_synapse_rust_synapse_compress_state_container_image_force_pull }}"
56+
pull: always
5957
register: result
6058
retries: "{{ devture_playbook_help_container_retries_count }}"
6159
delay: "{{ devture_playbook_help_container_retries_delay }}"

roles/custom/matrix-synapse/tasks/synapse/setup_install.yml

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,9 @@
6767
when: "matrix_synapse_git_pull_results.changed | bool or matrix_synapse_container_image_check_result.stdout == ''"
6868

6969
- name: Ensure Synapse Docker image is pulled
70-
community.docker.docker_image:
70+
community.docker.docker_image_pull:
7171
name: "{{ matrix_synapse_container_image }}"
72-
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
73-
force_source: "{{ matrix_synapse_container_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}"
74-
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_synapse_container_image_force_pull }}"
72+
pull: always
7573
when: "not matrix_synapse_container_image_self_build"
7674
register: result
7775
retries: "{{ devture_playbook_help_container_retries_count }}"
@@ -90,14 +88,14 @@
9088
register: matrix_synapse_container_image_customizations_dockerfile_result
9189

9290
- name: Ensure customized Docker image for Synapse is built
93-
community.docker.docker_image:
91+
community.docker.docker_image_build:
9492
name: "{{ matrix_synapse_container_image_customized }}"
95-
source: build
96-
force_source: "{{ matrix_synapse_container_image_customizations_dockerfile_result.changed or matrix_synapse_container_image_customized_force_source }}"
97-
build:
98-
dockerfile: Dockerfile
99-
path: "{{ matrix_synapse_customized_container_src_files_path }}"
100-
nocache: "{{ matrix_synapse_container_image_customized_build_nocache }}"
93+
dockerfile: Dockerfile
94+
path: "{{ matrix_synapse_customized_container_src_files_path }}"
95+
pull: false
96+
nocache: "{{ matrix_synapse_container_image_customized_build_nocache }}"
97+
rebuild: "{{ 'always' if (matrix_synapse_container_image_customizations_dockerfile_result.changed | bool or matrix_synapse_container_image_customized_force_source | bool) else 'never' }}"
98+
register: matrix_synapse_container_image_customized_build_result
10199

102100
# We do this so that the signing key would get generated.
103101
#

roles/custom/matrix-synapse/tasks/validate_config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,11 @@
8888

8989
- {'old': 'matrix_synapse_container_image_customizations_s3_storage_provider_installation_old_boto_workaround_enabled', 'new': '<removed; see https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/4637>'}
9090

91+
- {'old': 'matrix_synapse_container_image_force_pull', 'new': '<removed> (the new community.docker.docker_image_pull module handles this natively)'}
92+
- {'old': 'matrix_s3_goofys_container_image_force_pull', 'new': '<removed> (the new community.docker.docker_image_pull module handles this natively)'}
93+
- {'old': 'matrix_synapse_rust_synapse_compress_state_container_image_force_pull', 'new': '<removed> (the new community.docker.docker_image_pull module handles this natively)'}
94+
- {'old': 'matrix_synapse_reverse_proxy_companion_container_image_force_pull', 'new': '<removed> (the new community.docker.docker_image_pull module handles this natively)'}
95+
9196
- name: (Deprecation) Catch and report renamed settings in matrix_synapse_configuration_extension_yaml
9297
ansible.builtin.fail:
9398
msg: >-

0 commit comments

Comments
 (0)