Skip to content

Commit

Permalink
Remove (non-working) SQLite support from beeper-linkedin bridge
Browse files Browse the repository at this point in the history
This bridge doesn't support SQLite anyway, so it's not necessary
to carry around configuration fields and code for migration from SQLite
to Postgres. There's nothing to migrate.
  • Loading branch information
spantaleev committed Aug 23, 2021
1 parent 78c2213 commit 603ad7c
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 71 deletions.
2 changes: 0 additions & 2 deletions group_vars/matrix_servers
Original file line number Diff line number Diff line change
Expand Up @@ -244,8 +244,6 @@ matrix_beeper_linkedin_login_shared_secret: "{{ matrix_synapse_ext_password_prov

matrix_beeper_linkedin_bridge_presence: "{{ matrix_synapse_presence_enabled if matrix_synapse_enabled else true }}"

# Postgres is the default, except if not using `matrix_postgres` (internal postgres)
matrix_beeper_linkedin_database_engine: "{{ 'postgres' if matrix_postgres_enabled else 'sqlite' }}"
matrix_beeper_linkedin_database_password: "{{ matrix_synapse_macaroon_secret_key | password_hash('sha512', 'maulinkedin.db') | to_uuid }}"

######################################################################
Expand Down
13 changes: 3 additions & 10 deletions roles/matrix-bridge-beeper-linkedin/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,9 @@ matrix_beeper_linkedin_homeserver_token: ""
matrix_beeper_linkedin_appservice_bot_username: linkedinbot


# Database-related configuration fields. (only works with postgres for now!)
# To use Postgres:
# - change the engine (`matrix_beeper_linkedin_database_engine: 'postgres'`)
# - adjust your database credentials via the `matrix_beeper_linkedin_postgres_*` variables
matrix_beeper_linkedin_database_engine: "sqlite"

matrix_beeper_linkedin_sqlite_database_path_local: "{{ matrix_beeper_linkedin_data_path }}/beeper-linkedin.db"
matrix_beeper_linkedin_sqlite_database_path_in_container: "/data/beeper-linkedin.db"
# 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: ""
Expand All @@ -50,14 +45,12 @@ matrix_beeper_linkedin_database_connection_string: 'postgresql://{{ matrix_beepe

matrix_beeper_linkedin_appservice_database_type: "{{
{
'sqlite': 'sqlite3',
'postgres':'postgres',
}[matrix_beeper_linkedin_database_engine]
}}"

matrix_beeper_linkedin_appservice_database_uri: "{{
{
'sqlite': matrix_beeper_linkedin_sqlite_database_path_in_container,
'postgres': matrix_beeper_linkedin_database_connection_string,
}[matrix_beeper_linkedin_database_engine]
}}"
Expand Down
59 changes: 0 additions & 59 deletions roles/matrix-bridge-beeper-linkedin/tasks/setup_install.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,33 +8,6 @@
The matrix-bridge-beeper-linkedin role needs to execute before the matrix-synapse role.
when: "matrix_synapse_role_executed|default(False)"

- set_fact:
matrix_beeper_linkedin_requires_restart: false

- block:
- name: Check if an SQLite database already exists
stat:
path: "{{ matrix_beeper_linkedin_sqlite_database_path_local }}"
register: matrix_beeper_linkedin_sqlite_database_path_local_stat_result

- block:
- set_fact:
matrix_postgres_db_migration_request:
src: "{{ matrix_beeper_linkedin_sqlite_database_path_local }}"
dst: "{{ matrix_beeper_linkedin_database_connection_string }}"
caller: "{{ role_path|basename }}"
engine_variable_name: 'matrix_beeper_linkedin_database_engine'
engine_old: 'sqlite'
systemd_services_to_stop: ['matrix-beeper-linkedin.service']
pgloader_options: ['--with "quote identifiers"']

- import_tasks: "{{ role_path }}/../matrix-postgres/tasks/util/migrate_db_to_postgres.yml"

- set_fact:
matrix_beeper_linkedin_requires_restart: true
when: "matrix_beeper_linkedin_sqlite_database_path_local_stat_result.stat.exists|bool"
when: "matrix_beeper_linkedin_database_engine == 'postgres'"

- name: Ensure Beeper LinkedIn image is pulled
docker_image:
name: "{{ matrix_beeper_linkedin_docker_image }}"
Expand All @@ -54,32 +27,6 @@
- "{{ matrix_beeper_linkedin_config_path }}"
- "{{ matrix_beeper_linkedin_data_path }}"

- name: Check if an old database file exists
stat:
path: "{{ matrix_beeper_linkedin_base_path }}/beeper-linkedin.db"
register: matrix_beeper_linkedin_stat_database

- name: Check if an old matrix state file exists
stat:
path: "{{ matrix_beeper_linkedin_base_path }}/mx-state.json"
register: matrix_beeper_linkedin_stat_mx_state

- name: (Data relocation) Ensure matrix-beeper-linkedin.service is stopped
service:
name: matrix-beeper-linkedin
state: stopped
daemon_reload: yes
failed_when: false
when: "matrix_beeper_linkedin_stat_database.stat.exists"

- name: (Data relocation) Move beeper-linkedin database file to ./data directory
command: "mv {{ matrix_beeper_linkedin_base_path }}/beeper-linkedin.db {{ matrix_beeper_linkedin_data_path }}/beeper-linkedin.db"
when: "matrix_beeper_linkedin_stat_database.stat.exists"

- name: (Data relocation) Move beeper-linkedin mx-state file to ./data directory
command: "mv {{ matrix_beeper_linkedin_base_path }}/mx-state.json {{ matrix_beeper_linkedin_data_path }}/mx-state.json"
when: "matrix_beeper_linkedin_stat_mx_state.stat.exists"

- name: Ensure beeper-linkedin config.yaml installed
copy:
content: "{{ matrix_beeper_linkedin_configuration|to_nice_yaml }}"
Expand Down Expand Up @@ -107,9 +54,3 @@
service:
daemon_reload: yes
when: "matrix_beeper_linkedin_systemd_service_result.changed"

- name: Ensure matrix-beeper-linkedin.service restarted, if necessary
service:
name: "matrix-beeper-linkedin.service"
state: restarted
when: "matrix_beeper_linkedin_requires_restart|bool"

0 comments on commit 603ad7c

Please sign in to comment.