Make matrix-registration use Postgres by default

Now that 0.7.2 is out, the Docker image supports Postgres
and we can do the (SQLite -> Postgres) migration.

I've also found out that we needed to fix up the `tokens.ex_date` column
data type a bit to prevent matrix-registration from raising exceptions
when comparing `datetime.now()` with `ex_date` coming from the database.

Example:

> File "/usr/local/lib/python3.8/site-packages/matrix_registration/tokens.py", line 58, in valid
> expired = self.ex_date < datetime.now()
> TypeError: can't compare offset-naive and offset-aware datetimes
This commit is contained in:
Slavi Pantaleev
2020-12-15 23:19:56 +02:00
parent 1bd5c240e5
commit a197968b7f
4 changed files with 7 additions and 11 deletions

View File

@ -1317,9 +1317,8 @@ matrix_registration_systemd_required_services_list: |
(['matrix-postgres.service'] if matrix_postgres_enabled else [])
}}
# We'd like to use 'postgres' if matrix_postgres_enabled, but the container image doesn't seem to support that.
# Learn more here: https://github.com/ZerataX/matrix-registration/issues/44
matrix_registration_database_engine: 'sqlite'
# Postgres is the default, except if not using `matrix_postgres` (internal postgres)
matrix_registration_database_engine: "{{ 'postgres' if matrix_postgres_enabled else 'sqlite' }}"
matrix_registration_database_password: "{{ matrix_synapse_macaroon_secret_key | password_hash('sha512', 'mx.registr.db') | to_uuid }}"
######################################################################