[ { "name": "install packagaes", "become": true, "ansible.builtin.apt": { "update_cache": true, "pkg": [ "python3-venv" ] } }, { "name": "setup user", "become": true, "ansible.builtin.user": { "state": "present", "system": true, "name": "{{var_synapse_bridge_mautrix_telegram_user}}", "group": "{{var_synapse_bridge_mautrix_telegram_group}}", "create_home": false, "home": "{{var_synapse_bridge_mautrix_telegram_directory}}" } }, { "name": "setup virtual environment", "become": true, "become_user": "{{var_synapse_bridge_mautrix_telegram_user}}", "ansible.builtin.command": { "chdir": "{{var_synapse_bridge_mautrix_telegram_user}}", "cmd": "virtualenv -p /usr/bin/python3 ." } }, { "name": "install stuff", "become": true, "become_user": "{{var_synapse_bridge_mautrix_telegram_user}}", "ansible.builtin.shell": { "chdir": "{{var_synapse_bridge_mautrix_telegram_user}}", "cmd": "source ./bin/activate && pip install --upgrade mautrix-telegram[all]" } }, { "name": "place configuration", "become": true, "become_user": "{{var_synapse_bridge_mautrix_telegram_user}}", "ansible.builtin.template": { "src": "mautrix-telegram-conf.yaml", "dest": "{{var_synapse_bridge_mautrix_telegram_directory}}/config.yaml" } }, { "name": "generate app service registration file", "become": true, "become_user": "{{var_synapse_bridge_mautrix_telegram_user}}", "ansible.builtin.command": { "chdir": "{{var_synapse_bridge_mautrix_telegram_user}}", "cmd": "source ./bin/activate && python -m mautrix_telegram -g" } }, { "name": "place synapse conf snippet", "become": true, "ansible.builtin.template": { "src": "mautrix-telegram-appservice.yaml", "dest": "/etc/matrix-synapse/conf.d/mautrix-telegram.yaml" } }, { "name": "place control script", "become": true, "ansible.builtin.template": { "src": "mautrix-telegram-control.sh", "dest": "/usr/local/bin/mautrix-telegram" } }, { "name": "place systemd script", "become": true, "ansible.builtin.template": { "src": "mautrix-telegram-systemd.service", "dest": "/etc/systemd/system/multi-user.target.wants/mautrix-telegram.service" } }, { "name": "enable and start service", "become": true, "ansible.builtin.systemd_service": { "state": "restarted", "enabled": true, "name": "mautrix-telegram" } }, { "name": "restart service", "become": true, "ansible.builtin.systemd_service": { "state": "restarted", "name": "matrix-synapse" } } ]