Move roles/matrix* to roles/custom/matrix*
This paves the way for installing other roles into `roles/galaxy` using `ansible-galaxy`, similar to how it's done in: - https://github.com/spantaleev/gitea-docker-ansible-deploy - https://github.com/spantaleev/nextcloud-docker-ansible-deploy In the near future, we'll be removing a lot of the shared role code from here and using upstream roles for it. Some of the core `matrix-*` roles have already been extracted out into other reusable roles: - https://github.com/devture/com.devture.ansible.role.postgres - https://github.com/devture/com.devture.ansible.role.systemd_docker_base - https://github.com/devture/com.devture.ansible.role.timesync - https://github.com/devture/com.devture.ansible.role.vars_preserver - https://github.com/devture/com.devture.ansible.role.playbook_runtime_messages - https://github.com/devture/com.devture.ansible.role.playbook_help We just need to migrate to those.
This commit is contained in:
18
roles/custom/matrix-jitsi/templates/web/custom-config.js.j2
Normal file
18
roles/custom/matrix-jitsi/templates/web/custom-config.js.j2
Normal file
@ -0,0 +1,18 @@
|
||||
config.defaultLanguage = {{ matrix_jitsi_web_config_defaultLanguage|to_json }};
|
||||
|
||||
|
||||
if (!config.hasOwnProperty('p2p')) config.p2p = {% raw %}{}{% endraw %};
|
||||
|
||||
{% if matrix_jitsi_web_stun_servers|length > 0 %}
|
||||
config.p2p.stunServers = [
|
||||
{% for url in matrix_jitsi_web_stun_servers %}
|
||||
{ urls: {{ url|to_json }} }{% if not loop.last %},{% endif %}
|
||||
{% endfor %}
|
||||
];
|
||||
{% endif %}
|
||||
|
||||
{% if matrix_jitsi_etherpad_enabled %}
|
||||
config.etherpad_base = {{ (matrix_jitsi_etherpad_base + '/p/') |to_json }}
|
||||
{% endif %}
|
||||
|
||||
{{ matrix_jitsi_web_custom_config_extension }}
|
@ -0,0 +1,3 @@
|
||||
|
||||
{{ matrix_jitsi_web_custom_interface_config_extension }}
|
||||
|
111
roles/custom/matrix-jitsi/templates/web/env.j2
Normal file
111
roles/custom/matrix-jitsi/templates/web/env.j2
Normal file
@ -0,0 +1,111 @@
|
||||
AMPLITUDE_ID
|
||||
ANALYTICS_SCRIPT_URLS
|
||||
ANALYTICS_WHITELISTED_EVENTS
|
||||
CALLSTATS_CUSTOM_SCRIPT_URL
|
||||
CALLSTATS_ID
|
||||
CALLSTATS_SECRET
|
||||
CHROME_EXTENSION_BANNER_JSON
|
||||
CONFCODE_URL
|
||||
CONFIG_EXTERNAL_CONNECT
|
||||
DEFAULT_LANGUAGE
|
||||
DEPLOYMENTINFO_ENVIRONMENT
|
||||
DEPLOYMENTINFO_ENVIRONMENT_TYPE
|
||||
DEPLOYMENTINFO_REGION
|
||||
DEPLOYMENTINFO_SHARD
|
||||
DEPLOYMENTINFO_USERREGION
|
||||
DESKTOP_SHARING_FRAMERATE_MIN
|
||||
DESKTOP_SHARING_FRAMERATE_MAX
|
||||
DIALIN_NUMBERS_URL
|
||||
DIALOUT_AUTH_URL
|
||||
DIALOUT_CODES_URL
|
||||
DISABLE_AUDIO_LEVELS
|
||||
DISABLE_DEEP_LINKING
|
||||
DISABLE_HTTPS=0
|
||||
DISABLE_POLLS
|
||||
DISABLE_REACTIONS
|
||||
DROPBOX_APPKEY
|
||||
DROPBOX_REDIRECT_URI
|
||||
DYNAMIC_BRANDING_URL
|
||||
ENABLE_AUDIO_PROCESSING
|
||||
ENABLE_AUTH={{ 1 if matrix_jitsi_enable_auth else 0 }}
|
||||
ENABLE_BREAKOUT_ROOMS={{1 if matrix_jitsi_enable_breakout_rooms else 0}}
|
||||
ENABLE_CALENDAR
|
||||
ENABLE_COLIBRI_WEBSOCKET
|
||||
ENABLE_FILE_RECORDING_SERVICE
|
||||
ENABLE_FILE_RECORDING_SERVICE_SHARING
|
||||
ENABLE_FLOC=0
|
||||
ENABLE_GUESTS={{ 1 if matrix_jitsi_enable_guests else 0 }}
|
||||
ENABLE_HSTS=0
|
||||
ENABLE_HTTP_REDIRECT=0
|
||||
ENABLE_IPV6
|
||||
ENABLE_LETSENCRYPT=0
|
||||
ENABLE_LIPSYNC
|
||||
ENABLE_NO_AUDIO_DETECTION
|
||||
ENABLE_NOISY_MIC_DETECTION
|
||||
ENABLE_PREJOIN_PAGE
|
||||
ENABLE_P2P={{ 1 if matrix_jitsi_enable_p2p else 0 }}
|
||||
ENABLE_WELCOME_PAGE
|
||||
ENABLE_CLOSE_PAGE
|
||||
ENABLE_RECORDING={{ 1 if matrix_jitsi_enable_recording else 0 }}
|
||||
ENABLE_REMB
|
||||
ENABLE_REQUIRE_DISPLAY_NAME
|
||||
ENABLE_SIMULCAST
|
||||
ENABLE_STATS_ID
|
||||
ENABLE_STEREO
|
||||
ENABLE_SUBDOMAINS
|
||||
ENABLE_TALK_WHILE_MUTED
|
||||
ENABLE_TCC
|
||||
ENABLE_TRANSCRIPTIONS={{ 1 if matrix_jitsi_enable_transcriptions else 0 }}
|
||||
ENABLE_XMPP_WEBSOCKET
|
||||
ENABLE_JAAS_COMPONENTS={{ 1 if matrix_jitsi_enable_jaas_components else false }}
|
||||
ETHERPAD_PUBLIC_URL
|
||||
ETHERPAD_URL_BASE={{ (matrix_jitsi_etherpad_base + '/') if matrix_jitsi_etherpad_enabled else ''}}
|
||||
GOOGLE_ANALYTICS_ID
|
||||
GOOGLE_API_APP_CLIENT_ID
|
||||
INVITE_SERVICE_URL
|
||||
JICOFO_AUTH_USER={{ matrix_jitsi_jicofo_auth_user }}
|
||||
LETSENCRYPT_DOMAIN={{ matrix_server_fqn_jitsi }}
|
||||
LETSENCRYPT_EMAIL={{ matrix_ssl_lets_encrypt_support_email }}
|
||||
LETSENCRYPT_USE_STAGING=0
|
||||
MATOMO_ENDPOINT
|
||||
MATOMO_SITE_ID
|
||||
MICROSOFT_API_APP_CLIENT_ID
|
||||
NGINX_RESOLVER
|
||||
NGINX_WORKER_PROCESSES
|
||||
NGINX_WORKER_CONNECTIONS
|
||||
PEOPLE_SEARCH_URL
|
||||
PUBLIC_URL={{ matrix_jitsi_web_public_url }}
|
||||
RESOLUTION={{ matrix_jitsi_web_config_resolution_height_ideal_and_max }}
|
||||
RESOLUTION_MIN={{ matrix_jitsi_web_config_resolution_height_min }}
|
||||
RESOLUTION_WIDTH={{ matrix_jitsi_web_config_resolution_width_ideal_and_max }}
|
||||
RESOLUTION_WIDTH_MIN={{ matrix_jitsi_web_config_resolution_width_min }}
|
||||
START_AUDIO_MUTED={{ matrix_jitsi_web_config_start_audio_muted_after_nth_participant }}
|
||||
START_AUDIO_ONLY
|
||||
START_BITRATE
|
||||
START_SILENT
|
||||
START_WITH_AUDIO_MUTED
|
||||
START_VIDEO_MUTED={{ matrix_jitsi_web_config_start_video_muted_after_nth_participant }}
|
||||
START_WITH_VIDEO_MUTED
|
||||
TESTING_CAP_SCREENSHARE_BITRATE
|
||||
TESTING_OCTO_PROBABILITY
|
||||
TOKEN_AUTH_URL
|
||||
TZ={{ matrix_jitsi_timezone }}
|
||||
VIDEOQUALITY_BITRATE_H264_LOW
|
||||
VIDEOQUALITY_BITRATE_H264_STANDARD
|
||||
VIDEOQUALITY_BITRATE_H264_HIGH
|
||||
VIDEOQUALITY_BITRATE_VP8_LOW
|
||||
VIDEOQUALITY_BITRATE_VP8_STANDARD
|
||||
VIDEOQUALITY_BITRATE_VP8_HIGH
|
||||
VIDEOQUALITY_BITRATE_VP9_LOW
|
||||
VIDEOQUALITY_BITRATE_VP9_STANDARD
|
||||
VIDEOQUALITY_BITRATE_VP9_HIGH
|
||||
VIDEOQUALITY_ENFORCE_PREFERRED_CODEC
|
||||
VIDEOQUALITY_PREFERRED_CODEC
|
||||
XMPP_AUTH_DOMAIN={{ matrix_jitsi_xmpp_auth_domain }}
|
||||
XMPP_BOSH_URL_BASE={{ matrix_jitsi_xmpp_bosh_url_base }}
|
||||
XMPP_DOMAIN={{ matrix_jitsi_xmpp_domain }}
|
||||
XMPP_GUEST_DOMAIN={{ matrix_jitsi_xmpp_guest_domain }}
|
||||
XMPP_MUC_DOMAIN={{ matrix_jitsi_xmpp_muc_domain }}
|
||||
XMPP_RECORDER_DOMAIN={{ matrix_jitsi_recorder_domain }}
|
||||
|
||||
{{ matrix_jitsi_web_environment_variables_extension }}
|
@ -0,0 +1,39 @@
|
||||
#jinja2: lstrip_blocks: "True"
|
||||
[Unit]
|
||||
Description=Matrix jitsi-web server
|
||||
{% for service in matrix_jitsi_web_systemd_required_services_list %}
|
||||
Requires={{ service }}
|
||||
After={{ service }}
|
||||
{% endfor %}
|
||||
DefaultDependencies=no
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
Environment="HOME={{ matrix_systemd_unit_home_path }}"
|
||||
ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-web 2>/dev/null || true'
|
||||
ExecStartPre=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-web 2>/dev/null || true'
|
||||
|
||||
ExecStart={{ matrix_host_command_docker }} run --rm --name matrix-jitsi-web \
|
||||
--log-driver=none \
|
||||
--network={{ matrix_docker_network }} \
|
||||
--network-alias={{ matrix_jitsi_xmpp_domain }} \
|
||||
--env-file={{ matrix_jitsi_web_base_path }}/env \
|
||||
{% if matrix_jitsi_web_container_http_host_bind_port %}
|
||||
-p {{ matrix_jitsi_web_container_http_host_bind_port }}:80 \
|
||||
{% endif %}
|
||||
--mount type=bind,src={{ matrix_jitsi_web_config_path }},dst=/config \
|
||||
--mount type=bind,src={{ matrix_jitsi_web_transcripts_path }},dst=/usr/share/jitsi-meet/transcripts \
|
||||
--mount type=bind,src={{ matrix_jitsi_web_crontabs_path }},dst=/var/spool/cron/crontabs \
|
||||
{% for arg in matrix_jitsi_web_container_extra_arguments %}
|
||||
{{ arg }} \
|
||||
{% endfor %}
|
||||
{{ matrix_jitsi_web_docker_image }}
|
||||
|
||||
ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} kill matrix-jitsi-web 2>/dev/null || true'
|
||||
ExecStop=-{{ matrix_host_command_sh }} -c '{{ matrix_host_command_docker }} rm matrix-jitsi-web 2>/dev/null || true'
|
||||
Restart=always
|
||||
RestartSec=30
|
||||
SyslogIdentifier=matrix-jitsi-web
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Reference in New Issue
Block a user