# SPDX-FileCopyrightText: 2024 MDAD Team and contributors # # SPDX-License-Identifier: AGPL-3.0-or-later --- # beeper-linkedin is a Matrix <-> LinkedIn bridge # Project source code URL: https://github.com/beeper/linkedin matrix_beeper_linkedin_enabled: true # renovate: datasource=docker depName=ghcr.io/beeper/linkedin matrix_beeper_linkedin_version: latest # See: https://github.com/beeper/linkedin/pkgs/container/linkedin matrix_beeper_linkedin_docker_image: "{{ matrix_beeper_linkedin_docker_image_name_prefix }}beeper/linkedin:{{ matrix_beeper_linkedin_docker_image_tag }}" matrix_beeper_linkedin_docker_image_force_pull: "{{ matrix_beeper_linkedin_docker_image_tag.startswith('latest') }}" matrix_beeper_linkedin_docker_image_name_prefix: "{{ 'localhost/' if matrix_beeper_linkedin_container_image_self_build else 'ghcr.io/' }}" matrix_beeper_linkedin_docker_image_tag: "{{ 'latest' if matrix_beeper_linkedin_version == 'master' else matrix_beeper_linkedin_version }}" matrix_beeper_linkedin_container_image_self_build: false matrix_beeper_linkedin_container_image_self_build_repo: "https://github.com/beeper/linkedin" matrix_beeper_linkedin_container_image_self_build_branch: "{{ 'master' if matrix_beeper_linkedin_version == 'latest' else matrix_beeper_linkedin_version }}" matrix_beeper_linkedin_base_path: "{{ matrix_base_data_path }}/beeper-linkedin" matrix_beeper_linkedin_config_path: "{{ matrix_beeper_linkedin_base_path }}/config" matrix_beeper_linkedin_data_path: "{{ matrix_beeper_linkedin_base_path }}/data" matrix_beeper_linkedin_docker_src_files_path: "{{ matrix_beeper_linkedin_base_path }}/docker-src" matrix_beeper_linkedin_homeserver_address: "" matrix_beeper_linkedin_homeserver_domain: "{{ matrix_domain }}" matrix_beeper_linkedin_appservice_address: "http://matrix-beeper-linkedin:29319" matrix_beeper_linkedin_bridge_presence: true matrix_beeper_linkedin_bridge_space_support_enable: true matrix_beeper_linkedin_command_prefix: "!li" matrix_beeper_linkedin_bridge_permissions: | {{ {matrix_beeper_linkedin_homeserver_domain: 'user'} | combine({matrix_admin: 'admin'} if matrix_admin else {}) }} matrix_beeper_linkedin_container_network: "" matrix_beeper_linkedin_container_additional_networks: "{{ matrix_beeper_linkedin_container_additional_networks_auto + matrix_beeper_linkedin_container_additional_networks_custom }}" matrix_beeper_linkedin_container_additional_networks_auto: [] matrix_beeper_linkedin_container_additional_networks_custom: [] # A list of extra arguments to pass to the container matrix_beeper_linkedin_container_extra_arguments: [] # List of systemd services that matrix-beeper-linkedin.service depends on. matrix_beeper_linkedin_systemd_required_services_list: "{{ matrix_beeper_linkedin_systemd_required_services_list_default + matrix_beeper_linkedin_systemd_required_services_list_auto + matrix_beeper_linkedin_systemd_required_services_list_custom }}" matrix_beeper_linkedin_systemd_required_services_list_default: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}" matrix_beeper_linkedin_systemd_required_services_list_auto: [] matrix_beeper_linkedin_systemd_required_services_list_custom: [] # List of systemd services that matrix-beeper-linkedin.service wants matrix_beeper_linkedin_systemd_wanted_services_list: [] matrix_beeper_linkedin_appservice_token: "" matrix_beeper_linkedin_homeserver_token: "" matrix_beeper_linkedin_appservice_bot_username: linkedinbot matrix_beeper_linkedin_appservice_bot_displayname: LinkedIn bridge bot matrix_beeper_linkedin_appservice_bot_avatar: mxc://nevarro.space/cwsWnmeMpWSMZLUNblJHaIvP # Database-related configuration fields. # Only Postgres is supported. matrix_beeper_linkedin_database_engine: "postgres" matrix_beeper_linkedin_database_username: 'matrix_beeper_linkedin' matrix_beeper_linkedin_database_password: 'some-password' matrix_beeper_linkedin_database_hostname: '' matrix_beeper_linkedin_database_port: 5432 matrix_beeper_linkedin_database_name: 'matrix_beeper_linkedin' matrix_beeper_linkedin_database_sslmode: disable matrix_beeper_linkedin_database_connection_string: 'postgresql://{{ matrix_beeper_linkedin_database_username }}:{{ matrix_beeper_linkedin_database_password }}@{{ matrix_beeper_linkedin_database_hostname }}:{{ matrix_beeper_linkedin_database_port }}/{{ matrix_beeper_linkedin_database_name }}?sslmode={{ matrix_beeper_linkedin_database_sslmode }}' matrix_beeper_linkedin_appservice_database_type: "{{ { 'postgres':'postgres', }[matrix_beeper_linkedin_database_engine] }}" matrix_beeper_linkedin_appservice_database_uri: "{{ { 'postgres': matrix_beeper_linkedin_database_connection_string, }[matrix_beeper_linkedin_database_engine] }}" matrix_beeper_linkedin_bridge_login_shared_secret_map: "{{ matrix_beeper_linkedin_bridge_login_shared_secret_map_auto | combine(matrix_beeper_linkedin_bridge_login_shared_secret_map_custom) }}" matrix_beeper_linkedin_bridge_login_shared_secret_map_auto: {} matrix_beeper_linkedin_bridge_login_shared_secret_map_custom: {} # Servers to always allow double puppeting from matrix_beeper_linkedin_bridge_double_puppet_server_map: "{{ matrix_beeper_linkedin_bridge_double_puppet_server_map_default | combine(matrix_beeper_linkedin_bridge_double_puppet_server_map_auto) | combine(matrix_beeper_linkedin_bridge_double_puppet_server_map_custom) }}" matrix_beeper_linkedin_bridge_double_puppet_server_map_default: |- {{ {} | combine({ matrix_beeper_linkedin_homeserver_domain: matrix_beeper_linkedin_homeserver_address }) }} matrix_beeper_linkedin_bridge_double_puppet_server_map_auto: {} matrix_beeper_linkedin_bridge_double_puppet_server_map_custom: {} matrix_beeper_linkedin_provisioning_enabled: false matrix_beeper_linkedin_provisioning_shared_secret: '' # Specifies the default log level for all bridge loggers. matrix_beeper_linkedin_logging_level: WARNING # Enable End-to-bridge encryption matrix_beeper_linkedin_bridge_encryption_allow: "{{ matrix_bridges_encryption_enabled }}" matrix_beeper_linkedin_bridge_encryption_default: "{{ matrix_bridges_encryption_default }}" matrix_beeper_linkedin_bridge_encryption_appservice: "{{ matrix_beeper_linkedin_bridge_encryption_default }}" matrix_beeper_linkedin_bridge_encryption_require: false matrix_beeper_linkedin_bridge_encryption_key_sharing_allow: "{{ matrix_beeper_linkedin_bridge_encryption_allow }}" # Default beeper-linkedin configuration template which covers the generic use case. # You can customize it by controlling the various variables inside it. # # For a more advanced customization, you can extend the default (see `matrix_beeper_linkedin_configuration_extension_yaml`) # or completely replace this variable with your own template. matrix_beeper_linkedin_configuration_yaml: "{{ lookup('template', 'templates/config.yaml.j2') }}" matrix_beeper_linkedin_configuration_extension_yaml: | # Your custom YAML configuration goes here. # This configuration extends the default starting configuration (`matrix_beeper_linkedin_configuration_yaml`). # # You can override individual variables from the default configuration, or introduce new ones. # # If you need something more special, you can take full control by # completely redefining `matrix_beeper_linkedin_configuration_yaml`. matrix_beeper_linkedin_configuration_extension: "{{ matrix_beeper_linkedin_configuration_extension_yaml | from_yaml if matrix_beeper_linkedin_configuration_extension_yaml | from_yaml is mapping else {} }}" # Holds the final configuration (a combination of the default and its extension). # You most likely don't need to touch this variable. Instead, see `matrix_beeper_linkedin_configuration_yaml`. matrix_beeper_linkedin_configuration: "{{ matrix_beeper_linkedin_configuration_yaml | from_yaml | combine(matrix_beeper_linkedin_configuration_extension, recursive=True) }}" matrix_beeper_linkedin_registration_yaml: | id: beeper_linkedin url: {{ matrix_beeper_linkedin_appservice_address }} as_token: "{{ matrix_beeper_linkedin_appservice_token }}" hs_token: "{{ matrix_beeper_linkedin_homeserver_token }}" sender_localpart: _bot_{{ matrix_beeper_linkedin_appservice_bot_username }} rate_limited: false namespaces: users: - regex: '^@linkedin_.+:{{ matrix_beeper_linkedin_homeserver_domain | regex_escape }}$' exclusive: true - exclusive: true regex: '^@{{ matrix_beeper_linkedin_appservice_bot_username | regex_escape }}:{{ matrix_beeper_linkedin_homeserver_domain | regex_escape }}$' de.sorunome.msc2409.push_ephemeral: true matrix_beeper_linkedin_registration: "{{ matrix_beeper_linkedin_registration_yaml | from_yaml }}"