mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2024-11-14 11:20:16 +00:00
90a142439a
* Add matrix-registration-bot This adds an install and uninstall task plus helpers. The bot is disabled by default. This commit does not include documentation, yet. In short, the bot can be enabled by adding matrix_bot_matrix_registration_bot_enabled: true matrix_bot_matrix_registration_bot_matrix_user_password: "verysecret" matrix_bot_matrix_registration_bot_matrix_admin_token: "supersecret" to the host_vars * Change bot username to bot.matrix-registration-bot following convention * Address smaller remarks, fix local docker build * Switch to an env file * Add environment variables extension for additional config * Add documentation for the matrix-registration-bot * Add screenshot on how to obtain admin access token * Use bot as admin to only have one access token (bot and admin api) * Use cleaner setting of matrix_synapse_registration_requires_token * Use config file for cleaner more secure usage * Delete unneeded env * Rename vars to make usage clear * Fix typos/wording and add notice about logging out * Convert configuration to use |to_json * Reorder role includes Nothing should be after `matrix-common-after`. `matrix-bot-matrix-registration-bot` can probably be anywhere, but it makes sense to put it next to the other `matrix-bot-*` roles. * Minor group_vars/matrix_servers touchups Co-authored-by: Slavi Pantaleev <slavi@devture.com>
74 lines
3.3 KiB
YAML
74 lines
3.3 KiB
YAML
---
|
|
|
|
- name: Ensure matrix-registration-bot paths exist
|
|
file:
|
|
path: "{{ item.path }}"
|
|
state: directory
|
|
mode: 0750
|
|
owner: "{{ matrix_user_username }}"
|
|
group: "{{ matrix_user_groupname }}"
|
|
with_items:
|
|
- {path: "{{ matrix_bot_matrix_registration_bot_config_path }}", when: true}
|
|
- - {path: "{{ matrix_bot_matrix_registration_bot_data_path }}", when: true}
|
|
- {path: "{{ matrix_bot_matrix_registration_bot_docker_src_files_path }}", when: true}
|
|
when: "item.when|bool"
|
|
|
|
- name: Ensure matrix-registration-bot configuration file created
|
|
template:
|
|
src: "{{ role_path }}/templates/config/config.yml.j2"
|
|
dest: "{{ matrix_bot_matrix_registration_bot_config_path }}/config.yml"
|
|
owner: "{{ matrix_user_username }}"
|
|
group: "{{ matrix_user_groupname }}"
|
|
mode: 0640
|
|
|
|
- name: Ensure matrix-registration-bot image is pulled
|
|
docker_image:
|
|
name: "{{ matrix_bot_matrix_registration_bot_docker_image }}"
|
|
source: "{{ 'pull' if ansible_version.major > 2 or ansible_version.minor > 7 else omit }}"
|
|
force_source: "{{ matrix_bot_matrix_registration_bot_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_matrix_registration_bot_docker_image_force_pull }}"
|
|
when: "not matrix_bot_matrix_registration_bot_container_image_self_build|bool"
|
|
register: result
|
|
retries: "{{ matrix_container_retries_count }}"
|
|
delay: "{{ matrix_container_retries_delay }}"
|
|
until: result is not failed
|
|
|
|
- name: Ensure matrix-registration-bot repository is present on self-build
|
|
git:
|
|
repo: "{{ matrix_bot_matrix_registration_bot_docker_repo }}"
|
|
dest: "{{ matrix_bot_matrix_registration_bot_docker_src_files_path }}"
|
|
force: "yes"
|
|
become: true
|
|
become_user: "{{ matrix_user_username }}"
|
|
register: matrix_bot_matrix_registration_bot_git_pull_results
|
|
when: "matrix_bot_matrix_registration_bot_container_image_self_build|bool"
|
|
|
|
- name: Ensure matrix-registration-bot image is built
|
|
docker_image:
|
|
name: "{{ matrix_bot_matrix_registration_bot_docker_image }}"
|
|
source: build
|
|
force_source: "{{ matrix_bot_matrix_registration_bot_git_pull_results.changed 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_mailer_git_pull_results.changed }}"
|
|
build:
|
|
dockerfile: Dockerfile
|
|
path: "{{ matrix_bot_matrix_registration_bot_docker_src_files_path }}"
|
|
pull: true
|
|
when: "matrix_bot_matrix_registration_bot_container_image_self_build|bool"
|
|
|
|
- name: Ensure matrix-bot-matrix-registration-bot.service installed
|
|
template:
|
|
src: "{{ role_path }}/templates/systemd/matrix-bot-matrix-registration-bot.service.j2"
|
|
dest: "{{ matrix_systemd_path }}/matrix-bot-matrix-registration-bot.service"
|
|
mode: 0644
|
|
register: matrix_bot_matrix_registration_bot_systemd_service_result
|
|
|
|
- name: Ensure systemd reloaded after matrix-bot-matrix-registration-bot.service installation
|
|
service:
|
|
daemon_reload: true
|
|
when: "matrix_bot_matrix_registration_bot_systemd_service_result.changed|bool"
|
|
|
|
- name: Ensure matrix-bot-matrix-registration-bot.service restarted, if necessary
|
|
service:
|
|
name: "matrix-bot-matrix-registration-bot.service"
|
|
state: restarted
|