Build latest/main branch of rust-synapse-compress-state for non-amd64 users

The latest tagged release (v0.1.3) does not pin any versions in its
Dockerfile and as such fails to build right now.

The `main` branch of rust-synapse-compress-state has already addressed
this and is buildable, but there's no tagged release yet.

Reported here: https://github.com/matrix-org/rust-synapse-compress-state/issues/134
This commit is contained in:
Slavi Pantaleev 2024-01-05 07:04:19 +02:00
parent 14278c51c2
commit 06f561f0dd
2 changed files with 33 additions and 22 deletions

View File

@ -6,7 +6,7 @@
matrix_synapse_auto_compressor_enabled: true matrix_synapse_auto_compressor_enabled: true
# renovate: datasource=docker depName=registry.gitlab.com/etke.cc/rust-synapse-compress-state # renovate: datasource=docker depName=registry.gitlab.com/etke.cc/rust-synapse-compress-state
matrix_synapse_auto_compressor_version: v0.1.3 matrix_synapse_auto_compressor_version: "{{ 'latest' if matrix_synapse_auto_compressor_container_image_self_build else 'v0.1.3' }}"
matrix_synapse_auto_compressor_base_path: "{{ matrix_base_data_path }}/synapse-auto-compressor" matrix_synapse_auto_compressor_base_path: "{{ matrix_base_data_path }}/synapse-auto-compressor"
matrix_synapse_auto_compressor_container_src_files_path: "{{ matrix_synapse_auto_compressor_base_path }}/container-src" matrix_synapse_auto_compressor_container_src_files_path: "{{ matrix_synapse_auto_compressor_base_path }}/container-src"

View File

@ -34,6 +34,9 @@
delay: "{{ devture_playbook_help_container_retries_delay }}" delay: "{{ devture_playbook_help_container_retries_delay }}"
until: result is not failed until: result is not failed
- when: "matrix_synapse_auto_compressor_container_image_self_build | bool"
block:
- name: Ensure synapse-auto-compressor repository is present on self-build - name: Ensure synapse-auto-compressor repository is present on self-build
ansible.builtin.git: ansible.builtin.git:
repo: "{{ matrix_synapse_auto_compressor_container_image_self_build_repo }}" repo: "{{ matrix_synapse_auto_compressor_container_image_self_build_repo }}"
@ -43,19 +46,27 @@
become: true become: true
become_user: "{{ matrix_user_username }}" become_user: "{{ matrix_user_username }}"
register: matrix_synapse_auto_compressor_git_pull_results register: matrix_synapse_auto_compressor_git_pull_results
when: "matrix_synapse_auto_compressor_container_image_self_build | bool"
- name: Check if synapse-auto-compressor image exists
ansible.builtin.command: "{{ devture_systemd_docker_base_host_command_docker }} images --quiet --filter 'reference={{ matrix_synapse_auto_compressor_container_image }}'"
register: matrix_synapse_auto_compressor_container_image_check_result
changed_when: false
# Invoking the `docker build` command here, instead of calling the `docker_image` Ansible module,
# because the latter does not support BuildKit.
# See: https://github.com/ansible-collections/community.general/issues/514
- name: Ensure synapse-auto-compressor image is built - name: Ensure synapse-auto-compressor image is built
community.docker.docker_image: ansible.builtin.shell:
name: "{{ matrix_synapse_auto_compressor_container_image }}" chdir: "{{ matrix_synapse_auto_compressor_container_src_files_path }}"
source: build cmd: |
force_source: "{{ matrix_synapse_auto_compressor_git_pull_results.changed if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" {{ devture_systemd_docker_base_host_command_docker }} build \
force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_mailer_git_pull_results.changed }}" -t "{{ matrix_synapse_auto_compressor_container_image }}" \
build: -f Dockerfile \
dockerfile: Dockerfile .
path: "{{ matrix_synapse_auto_compressor_container_src_files_path }}" environment:
pull: true DOCKER_BUILDKIT: 1
when: "matrix_synapse_auto_compressor_container_image_self_build | bool" changed_when: true
when: "matrix_synapse_auto_compressor_git_pull_results.changed | bool or matrix_synapse_auto_compressor_container_image_check_result.stdout == ''"
- name: Ensure matrix-synapse-auto-compressor container network is created - name: Ensure matrix-synapse-auto-compressor container network is created
community.general.docker_network: community.general.docker_network: