Преглед изворни кода

feat: support mautrix-instagram bridgev2 APIs

pull/3577/head
Paul ALNET пре 1 година
родитељ
комит
c5f263a9cd
4 измењених фајлова са 51 додато и 0 уклоњено
  1. +3
    -0
      group_vars/matrix_servers
  2. +15
    -0
      roles/custom/matrix-bridge-mautrix-meta-instagram/defaults/main.yml
  3. +1
    -0
      roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/validate_config.yml
  4. +32
    -0
      roles/custom/matrix-bridge-mautrix-meta-instagram/templates/labels.j2

+ 3
- 0
group_vars/matrix_servers Прегледај датотеку

@@ -1568,7 +1568,10 @@ matrix_mautrix_meta_instagram_container_labels_traefik_tls_certResolver: "{{ dev
matrix_mautrix_meta_instagram_container_labels_metrics_middleware_basic_auth_enabled: "{{ matrix_metrics_exposure_http_basic_auth_enabled }}" matrix_mautrix_meta_instagram_container_labels_metrics_middleware_basic_auth_enabled: "{{ matrix_metrics_exposure_http_basic_auth_enabled }}"
matrix_mautrix_meta_instagram_container_labels_metrics_middleware_basic_auth_users: "{{ matrix_metrics_exposure_http_basic_auth_users }}" matrix_mautrix_meta_instagram_container_labels_metrics_middleware_basic_auth_users: "{{ matrix_metrics_exposure_http_basic_auth_users }}"


matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_hostname: "{{ matrix_server_fqn_matrix }}"

matrix_mautrix_meta_instagram_appservice_token: "{{ '%s' | format(matrix_homeserver_generic_secret_key) | password_hash('sha512', 'mau.meta.ig.as', rounds=655555) | to_uuid }}" matrix_mautrix_meta_instagram_appservice_token: "{{ '%s' | format(matrix_homeserver_generic_secret_key) | password_hash('sha512', 'mau.meta.ig.as', rounds=655555) | to_uuid }}"
matrix_mautrix_meta_instagram_appservice_bridgev2_enabled: false


matrix_mautrix_meta_instagram_homeserver_address: "{{ matrix_addons_homeserver_client_api_url }}" matrix_mautrix_meta_instagram_homeserver_address: "{{ matrix_addons_homeserver_client_api_url }}"




+ 15
- 0
roles/custom/matrix-bridge-mautrix-meta-instagram/defaults/main.yml Прегледај датотеку

@@ -55,6 +55,17 @@ matrix_mautrix_meta_instagram_container_labels_metrics_middleware_basic_auth_ena
# See: https://doc.traefik.io/traefik/middlewares/http/basicauth/#users # See: https://doc.traefik.io/traefik/middlewares/http/basicauth/#users
matrix_mautrix_meta_instagram_container_labels_metrics_middleware_basic_auth_users: '' matrix_mautrix_meta_instagram_container_labels_metrics_middleware_basic_auth_users: ''


# Controls whether labels will be added that expose the bridge's bridgev2 API endpoints
matrix_mautrix_meta_instagram_container_labels_bridgev2_enabled: "{{ matrix_mautrix_meta_instagram_appservice_bridgev2_enabled }}"
matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_hostname: ""
# Following two variables should be RegEx-escaped, see https://doc.traefik.io/traefik/middlewares/http/replacepathregex/
matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_stripprefix: "/_matrix/{{ matrix_mautrix_meta_instagram_identifier }}"
matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_rule: "Host(`{{ matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_hostname }}`) && PathPrefix(`{{ matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_stripprefix }}`)"
matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_priority: 0
matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_entrypoints: "{{ matrix_mautrix_meta_instagram_container_labels_traefik_entrypoints }}"
matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_tls: "{{ matrix_mautrix_meta_instagram_container_labels_metrics_traefik_entrypoints != 'web' }}"
matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_tls_certResolver: "{{ matrix_mautrix_meta_instagram_container_labels_traefik_tls_certResolver }}" # noqa var-naming

# matrix_mautrix_meta_instagram_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file. # matrix_mautrix_meta_instagram_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
# See `../templates/labels.j2` for details. # See `../templates/labels.j2` for details.
# #
@@ -144,6 +155,10 @@ matrix_mautrix_meta_instagram_appservice_database_uri: |-


matrix_mautrix_meta_instagram_appservice_token: '' matrix_mautrix_meta_instagram_appservice_token: ''


# Whether to make public the bridgev2 API endpoints.
# See https://spec.mau.fi/megabridge/
matrix_mautrix_meta_instagram_appservice_bridgev2_enabled: false

# Controls which service this bridge is for. # Controls which service this bridge is for.
# Valid options: # Valid options:
# * facebook - connect to FB Messenger via facebook.com # * facebook - connect to FB Messenger via facebook.com


+ 1
- 0
roles/custom/matrix-bridge-mautrix-meta-instagram/tasks/validate_config.yml Прегледај датотеку

@@ -8,6 +8,7 @@
with_items: with_items:
- {'name': 'matrix_mautrix_meta_instagram_metrics_proxying_hostname', when: "{{ matrix_mautrix_meta_instagram_metrics_proxying_enabled }}"} - {'name': 'matrix_mautrix_meta_instagram_metrics_proxying_hostname', when: "{{ matrix_mautrix_meta_instagram_metrics_proxying_enabled }}"}
- {'name': 'matrix_mautrix_meta_instagram_metrics_proxying_path_prefix', when: "{{ matrix_mautrix_meta_instagram_metrics_proxying_enabled }}"} - {'name': 'matrix_mautrix_meta_instagram_metrics_proxying_path_prefix', when: "{{ matrix_mautrix_meta_instagram_metrics_proxying_enabled }}"}
- {'name': 'matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_hostname', when: "{{ matrix_mautrix_meta_instagram_container_labels_bridgev2_enabled }}"}
- {'name': 'matrix_mautrix_meta_instagram_appservice_token', when: true} - {'name': 'matrix_mautrix_meta_instagram_appservice_token', when: true}
- {'name': 'matrix_mautrix_meta_instagram_homeserver_token', when: true} - {'name': 'matrix_mautrix_meta_instagram_homeserver_token', when: true}
- {'name': 'matrix_mautrix_meta_instagram_container_network', when: true} - {'name': 'matrix_mautrix_meta_instagram_container_network', when: true}


+ 32
- 0
roles/custom/matrix-bridge-mautrix-meta-instagram/templates/labels.j2 Прегледај датотеку

@@ -43,6 +43,38 @@ traefik.http.routers.{{ matrix_mautrix_meta_instagram_identifier }}-metrics.tls.
{% endif %} {% endif %}




{% if matrix_mautrix_meta_instagram_container_labels_bridgev2_enabled %}
############################################################
# #
# Appservice Bridgev2 API #
# #
############################################################

traefik.http.middlewares.{{ matrix_mautrix_meta_instagram_identifier }}-bridgev2-stripprefix.stripprefix.prefixes={{ matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_stripprefix }}
traefik.http.routers.{{ matrix_mautrix_meta_instagram_identifier }}-bridgev2.middlewares={{ matrix_mautrix_meta_instagram_identifier }}-bridgev2-stripprefix

traefik.http.routers.{{ matrix_mautrix_meta_instagram_identifier }}-bridgev2.rule={{ matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_rule }}

{% if matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_priority | int > 0 %}
traefik.http.routers.{{ matrix_mautrix_meta_instagram_identifier }}-bridgev2.priority={{ matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_priority }}
{% endif %}

traefik.http.routers.{{ matrix_mautrix_meta_instagram_identifier }}-bridgev2.service={{ matrix_mautrix_meta_instagram_identifier }}-appservice
traefik.http.routers.{{ matrix_mautrix_meta_instagram_identifier }}-bridgev2.entrypoints={{ matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_entrypoints }}

traefik.http.routers.{{ matrix_mautrix_meta_instagram_identifier }}-bridgev2.tls={{ matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_tls | to_json }}
{% if matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_tls %}
traefik.http.routers.{{ matrix_mautrix_meta_instagram_identifier }}-bridgev2.tls.certResolver={{ matrix_mautrix_meta_instagram_container_labels_bridgev2_traefik_tls_certResolver }}
{% endif %}

############################################################
# #
# /Appservice Bridgev2 API #
# #
############################################################
{% endif %}


{% endif %} {% endif %}


{{ matrix_mautrix_meta_instagram_container_labels_additional_labels }} {{ matrix_mautrix_meta_instagram_container_labels_additional_labels }}

Loading…
Откажи
Сачувај