Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>pull/4945/head
| @@ -3086,7 +3086,7 @@ matrix_bot_mjolnir_systemd_required_services_list_auto: | | |||
| (['matrix-pantalaimon.service'] if matrix_bot_mjolnir_pantalaimon_use else []) | |||
| }} | |||
| matrix_bot_mjolnir_docker_image_registry_prefix_upstream: "{{ matrix_container_global_registry_prefix_override if matrix_container_global_registry_prefix_override else matrix_bot_mjolnir_docker_image_registry_prefix_upstream_default }}" | |||
| matrix_bot_mjolnir_container_image_registry_prefix_upstream: "{{ matrix_container_global_registry_prefix_override if matrix_container_global_registry_prefix_override else matrix_bot_mjolnir_container_image_registry_prefix_upstream_default }}" | |||
| matrix_bot_mjolnir_container_image_self_build: "{{ matrix_architecture != 'amd64' }}" | |||
| @@ -22,16 +22,16 @@ matrix_bot_mjolnir_version: "v1.11.0" | |||
| matrix_bot_mjolnir_container_image_self_build: false | |||
| matrix_bot_mjolnir_container_image_self_build_repo: "https://github.com/matrix-org/mjolnir.git" | |||
| matrix_bot_mjolnir_docker_image: "{{ matrix_bot_mjolnir_docker_image_registry_prefix }}matrixdotorg/mjolnir:{{ matrix_bot_mjolnir_version }}" | |||
| matrix_bot_mjolnir_docker_image_registry_prefix: "{{ 'localhost/' if matrix_bot_mjolnir_container_image_self_build else matrix_bot_mjolnir_docker_image_registry_prefix_upstream }}" | |||
| matrix_bot_mjolnir_docker_image_registry_prefix_upstream: "{{ matrix_bot_mjolnir_docker_image_registry_prefix_upstream_default }}" | |||
| matrix_bot_mjolnir_docker_image_registry_prefix_upstream_default: "docker.io/" | |||
| matrix_bot_mjolnir_docker_image_force_pull: "{{ matrix_bot_mjolnir_docker_image.endswith(':latest') }}" | |||
| matrix_bot_mjolnir_container_image: "{{ matrix_bot_mjolnir_container_image_registry_prefix }}matrixdotorg/mjolnir:{{ matrix_bot_mjolnir_version }}" | |||
| matrix_bot_mjolnir_container_image_registry_prefix: "{{ 'localhost/' if matrix_bot_mjolnir_container_image_self_build else matrix_bot_mjolnir_container_image_registry_prefix_upstream }}" | |||
| matrix_bot_mjolnir_container_image_registry_prefix_upstream: "{{ matrix_bot_mjolnir_container_image_registry_prefix_upstream_default }}" | |||
| matrix_bot_mjolnir_container_image_registry_prefix_upstream_default: "docker.io/" | |||
| matrix_bot_mjolnir_container_image_force_pull: "{{ matrix_bot_mjolnir_container_image.endswith(':latest') }}" | |||
| matrix_bot_mjolnir_base_path: "{{ matrix_base_data_path }}/mjolnir" | |||
| matrix_bot_mjolnir_config_path: "{{ matrix_bot_mjolnir_base_path }}/config" | |||
| matrix_bot_mjolnir_data_path: "{{ matrix_bot_mjolnir_base_path }}/data" | |||
| matrix_bot_mjolnir_docker_src_files_path: "{{ matrix_bot_mjolnir_base_path }}/docker-src" | |||
| matrix_bot_mjolnir_container_src_files_path: "{{ matrix_bot_mjolnir_base_path }}/docker-src" | |||
| matrix_bot_mjolnir_container_network: "" | |||
| @@ -24,15 +24,15 @@ | |||
| - {path: "{{ matrix_bot_mjolnir_base_path }}", when: true} | |||
| - {path: "{{ matrix_bot_mjolnir_config_path }}", when: true} | |||
| - {path: "{{ matrix_bot_mjolnir_data_path }}", when: true} | |||
| - {path: "{{ matrix_bot_mjolnir_docker_src_files_path }}", when: "{{ matrix_bot_mjolnir_container_image_self_build }}"} | |||
| - {path: "{{ matrix_bot_mjolnir_container_src_files_path }}", when: "{{ matrix_bot_mjolnir_container_image_self_build }}"} | |||
| when: "item.when | bool" | |||
| - name: Ensure mjolnir Docker image is pulled | |||
| community.docker.docker_image: | |||
| name: "{{ matrix_bot_mjolnir_docker_image }}" | |||
| name: "{{ matrix_bot_mjolnir_container_image }}" | |||
| source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}" | |||
| force_source: "{{ matrix_bot_mjolnir_docker_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | |||
| force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_bot_mjolnir_docker_image_force_pull }}" | |||
| force_source: "{{ matrix_bot_mjolnir_container_image_force_pull if ansible_version.major > 2 or ansible_version.minor >= 8 else omit }}" | |||
| force: "{{ omit if ansible_version.major > 2 or ansible_version.minor >= 8 else matrix_bot_mjolnir_container_image_force_pull }}" | |||
| when: "not matrix_bot_mjolnir_container_image_self_build | bool" | |||
| register: matrix_bot_mjolnir_container_image_pull_result | |||
| retries: "{{ devture_playbook_help_container_retries_count }}" | |||
| @@ -42,8 +42,8 @@ | |||
| - name: Ensure mjolnir repository is present on self-build | |||
| ansible.builtin.git: | |||
| repo: "{{ matrix_bot_mjolnir_container_image_self_build_repo }}" | |||
| dest: "{{ matrix_bot_mjolnir_docker_src_files_path }}" | |||
| version: "{{ matrix_bot_mjolnir_docker_image.split(':')[1] }}" | |||
| dest: "{{ matrix_bot_mjolnir_container_src_files_path }}" | |||
| version: "{{ matrix_bot_mjolnir_container_image.split(':')[1] }}" | |||
| force: "yes" | |||
| become: true | |||
| become_user: "{{ matrix_user_name }}" | |||
| @@ -52,12 +52,12 @@ | |||
| - name: Ensure mjolnir Docker image is built | |||
| community.docker.docker_image: | |||
| name: "{{ matrix_bot_mjolnir_docker_image }}" | |||
| name: "{{ matrix_bot_mjolnir_container_image }}" | |||
| source: build | |||
| force_source: "{{ matrix_bot_mjolnir_git_pull_results.changed }}" | |||
| build: | |||
| dockerfile: Dockerfile | |||
| path: "{{ matrix_bot_mjolnir_docker_src_files_path }}" | |||
| path: "{{ matrix_bot_mjolnir_container_src_files_path }}" | |||
| pull: true | |||
| when: "matrix_bot_mjolnir_container_image_self_build | bool" | |||
| @@ -7,6 +7,21 @@ | |||
| --- | |||
| - name: (Deprecation) Catch and report renamed Mjolnir settings | |||
| ansible.builtin.fail: | |||
| msg: >- | |||
| Your configuration contains a variable, which now has a different name. | |||
| Please rename the variable (`{{ item.old }}` -> `{{ item.new }}`) on your configuration file (vars.yml). | |||
| when: "lookup('ansible.builtin.varnames', ('^' + item.old + '$'), wantlist=True) | length > 0" | |||
| with_items: | |||
| - {'old': 'matrix_bot_mjolnir_container_image_name_prefix', 'new': 'matrix_bot_mjolnir_container_image_registry_prefix'} | |||
| - {'old': 'matrix_bot_mjolnir_docker_image', 'new': 'matrix_bot_mjolnir_container_image'} | |||
| - {'old': 'matrix_bot_mjolnir_docker_image_force_pull', 'new': 'matrix_bot_mjolnir_container_image_force_pull'} | |||
| - {'old': 'matrix_bot_mjolnir_docker_image_registry_prefix', 'new': 'matrix_bot_mjolnir_container_image_registry_prefix'} | |||
| - {'old': 'matrix_bot_mjolnir_docker_image_registry_prefix_upstream', 'new': 'matrix_bot_mjolnir_container_image_registry_prefix_upstream'} | |||
| - {'old': 'matrix_bot_mjolnir_docker_image_registry_prefix_upstream_default', 'new': 'matrix_bot_mjolnir_container_image_registry_prefix_upstream_default'} | |||
| - {'old': 'matrix_bot_mjolnir_docker_src_files_path', 'new': 'matrix_bot_mjolnir_container_src_files_path'} | |||
| - name: Fail if required matrix-bot-mjolnir variables are undefined | |||
| ansible.builtin.fail: | |||
| msg: "The `{{ item.name }}` variable must be defined and have a non-null value." | |||
| @@ -26,12 +41,3 @@ | |||
| with_items: | |||
| - {'name': 'matrix_bot_mjolnir_access_token', when: "{{ matrix_bot_mjolnir_pantalaimon_use }}"} | |||
| when: "item.when | bool and not (lookup('vars', item.name, default='') == '' or lookup('vars', item.name, default='') is none)" | |||
| - name: (Deprecation) Catch and report renamed Mjolnir settings | |||
| ansible.builtin.fail: | |||
| msg: >- | |||
| Your configuration contains a variable, which now has a different name. | |||
| Please rename the variable (`{{ item.old }}` -> `{{ item.new }}`) on your configuration file (vars.yml). | |||
| when: "lookup('ansible.builtin.varnames', ('^' + item.old + '$'), wantlist=True) | length > 0" | |||
| with_items: | |||
| - {'old': 'matrix_bot_mjolnir_container_image_name_prefix', 'new': 'matrix_bot_mjolnir_container_image_registry_prefix'} | |||
| @@ -29,7 +29,7 @@ ExecStartPre={{ devture_systemd_docker_base_host_command_docker }} create \ | |||
| {% for arg in matrix_bot_mjolnir_container_extra_arguments %} | |||
| {{ arg }} \ | |||
| {% endfor %} | |||
| {{ matrix_bot_mjolnir_docker_image }} \ | |||
| {{ matrix_bot_mjolnir_container_image }} \ | |||
| bot --mjolnir-config /data/config/production.yaml | |||
| {% for network in matrix_bot_mjolnir_container_additional_networks %} | |||