Matrix Docker Ansible eploy
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

126 lines
6.0 KiB

  1. ---
  2. # matrix-appservice-slack is a Matrix <-> Slack bridge
  3. # Project source code URL: https://github.com/matrix-org/matrix-appservice-slack
  4. matrix_appservice_slack_enabled: true
  5. matrix_appservice_slack_container_image_self_build: false
  6. matrix_appservice_slack_docker_repo: "https://github.com/matrix-org/matrix-appservice-slack.git"
  7. matrix_appservice_slack_docker_repo_version: "{{ 'master' if matrix_appservice_slack_version == 'latest' else matrix_appservice_slack_version }}"
  8. matrix_appservice_slack_docker_src_files_path: "{{ matrix_base_data_path }}/appservice-slack/docker-src"
  9. # matrix_appservice_slack_version used to contain the full Docker image tag (e.g. `release-X.X.X`).
  10. # It's a bare version number now. We try to somewhat retain compatibility below.
  11. matrix_appservice_slack_version: 2.1.2
  12. matrix_appservice_slack_docker_image: "{{ matrix_container_global_registry_prefix }}matrixdotorg/matrix-appservice-slack:{{ matrix_appservice_slack_docker_image_tag }}"
  13. matrix_appservice_slack_docker_image_tag: "{{ 'latest' if matrix_appservice_slack_version == 'latest' else ('release-' + matrix_appservice_slack_version) }}"
  14. matrix_appservice_slack_docker_image_force_pull: "{{ matrix_appservice_slack_docker_image.endswith(':latest') }}"
  15. matrix_appservice_slack_base_path: "{{ matrix_base_data_path }}/appservice-slack"
  16. matrix_appservice_slack_config_path: "{{ matrix_appservice_slack_base_path }}/config"
  17. matrix_appservice_slack_data_path: "{{ matrix_appservice_slack_base_path }}/data"
  18. matrix_appservice_slack_public_endpoint: /appservice-slack
  19. matrix_appservice_slack_inbound_uri_prefix: "{{ matrix_homeserver_url }}{{ matrix_appservice_slack_public_endpoint }}"
  20. # Once you make a control room in Matrix, you can get its ID by typing any message and checking its source
  21. matrix_appservice_slack_control_room_id: ''
  22. matrix_appservice_slack_bot_name: 'slackbot'
  23. matrix_appservice_slack_user_prefix: 'slack_'
  24. # Controls the SLACK_PORT and MATRIX_PORT of the installation
  25. matrix_appservice_slack_matrix_port: 9004
  26. matrix_appservice_slack_slack_port: 9003
  27. # Controls whether the appservice-slack container exposes its HTTP port (tcp/9003 in the container).
  28. #
  29. # Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:9999"), or empty string to not expose.
  30. matrix_appservice_slack_container_http_host_bind_port: ''
  31. matrix_appservice_slack_homeserver_media_url: "{{ matrix_server_fqn_matrix }}"
  32. matrix_appservice_slack_homeserver_url: ""
  33. matrix_appservice_slack_homeserver_domain: "{{ matrix_domain }}"
  34. matrix_appservice_slack_appservice_url: 'http://matrix-appservice-slack'
  35. # A list of extra arguments to pass to the container
  36. matrix_appservice_slack_container_extra_arguments: []
  37. # List of systemd services that matrix-appservice-slack.service depends on.
  38. matrix_appservice_slack_systemd_required_services_list: ['docker.service']
  39. # List of systemd services that matrix-appservice-slack.service wants
  40. matrix_appservice_slack_systemd_wanted_services_list: []
  41. matrix_appservice_slack_appservice_token: ''
  42. matrix_appservice_slack_homeserver_token: ''
  43. matrix_appservice_slack_id_token: ''
  44. matrix_appservice_slack_database_engine: nedb
  45. matrix_appservice_slack_database_username: matrix_appservice_slack
  46. matrix_appservice_slack_database_password: 'some-passsword'
  47. matrix_appservice_slack_database_hostname: ''
  48. matrix_appservice_slack_database_port: 5432
  49. matrix_appservice_slack_database_name: matrix_appservice_slack
  50. matrix_appservice_slack_database_sslmode: disable
  51. # This is just the Postgres connection string, if Postgres is used.
  52. # Naming clashes with `matrix_appservice_slack_database_connectionString` somewhat.
  53. matrix_appservice_slack_database_connection_string: 'postgresql://{{ matrix_appservice_slack_database_username }}:{{ matrix_appservice_slack_database_password }}@{{ matrix_appservice_slack_database_hostname }}:{{ matrix_appservice_slack_database_port }}/{{ matrix_appservice_slack_database_name }}?sslmode={{ matrix_appservice_slack_database_sslmode }}'
  54. # This is what actually goes into `database.connectionString` for the bridge.
  55. matrix_appservice_slack_database_connectionString: |- # noqa var-naming
  56. {{
  57. {
  58. 'nedb': 'nedb:///data',
  59. 'postgres': matrix_appservice_slack_database_connection_string,
  60. }[matrix_appservice_slack_database_engine]
  61. }}
  62. matrix_appservice_slack_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}"
  63. matrix_appservice_slack_configuration_extension_yaml: |
  64. #slack_hook_port: 9898
  65. #inbound_uri_prefix: "https://my.server.here:9898/"
  66. #bot_username: "slackbot"
  67. #username_prefix: "slack_"
  68. # Optional
  69. #slack_master_token: "abc-123-def"
  70. # Optional
  71. #matrix_admin_room: "!aBcDeF:matrix.org"
  72. #homeserver:
  73. # url: http://localhost:{{ matrix_synapse_container_client_api_port }}
  74. # server_name: my.server
  75. # Optional
  76. #tls:
  77. # key_file: /path/to/tls.key
  78. # crt_file: /path/to/tls.crt
  79. #logging:
  80. # console: "info"
  81. # files:
  82. # - "./debug.log": "info"
  83. #- "./error.log": "error"
  84. matrix_appservice_slack_configuration_extension: "{{ matrix_appservice_slack_configuration_extension_yaml | from_yaml if matrix_appservice_slack_configuration_extension_yaml | from_yaml else {} }}"
  85. matrix_appservice_slack_configuration: "{{ matrix_appservice_slack_configuration_yaml | from_yaml | combine(matrix_appservice_slack_configuration_extension, recursive=True) }}"
  86. matrix_appservice_slack_registration_yaml: |
  87. id: "{{ matrix_appservice_slack_id_token }}"
  88. as_token: "{{ matrix_appservice_slack_appservice_token }}"
  89. hs_token: "{{ matrix_appservice_slack_homeserver_token }}"
  90. namespaces:
  91. users:
  92. - exclusive: true
  93. regex: '@{{ matrix_appservice_slack_user_prefix }}.*'
  94. aliases:
  95. - exclusive: false
  96. regex: '#{{ matrix_appservice_slack_user_prefix }}.*'
  97. rooms: []
  98. url: "{{ matrix_appservice_slack_appservice_url }}:{{ matrix_appservice_slack_matrix_port }}"
  99. sender_localpart: slackbot
  100. rate_limited: true
  101. protocols: null
  102. matrix_appservice_slack_registration: "{{ matrix_appservice_slack_registration_yaml | from_yaml }}"