Update docs and files for backup-borg and synapse-auto-compressorpull/4034/head
| @@ -95,9 +95,9 @@ backup_borg_retention_keep_monthly: 12 | |||||
| backup_borg_retention_keep_yearly: 2 | backup_borg_retention_keep_yearly: 2 | ||||
| ``` | ``` | ||||
| ### Edit the backup schedule (optional) | |||||
| ### Edit the schedule (optional) | |||||
| By default the backup will run 4 a.m. every day based on the `backup_borg_schedule` variable. It is defined in the format of systemd timer calendar. | |||||
| By default the task will run 4 a.m. every day based on the `backup_borg_schedule` variable. It is defined in the format of systemd timer calendar. | |||||
| To edit the schedule, add the following configuration to your `vars.yml` file (adapt to your needs): | To edit the schedule, add the following configuration to your `vars.yml` file (adapt to your needs): | ||||
| @@ -134,10 +134,18 @@ The shortcut commands with the [`just` program](just.md) are also available: `ju | |||||
| `just install-all` is useful for maintaining your setup quickly ([2x-5x faster](../CHANGELOG.md#2x-5x-performance-improvements-in-playbook-runtime) than `just setup-all`) when its components remain unchanged. If you adjust your `vars.yml` to remove other components, you'd need to run `just setup-all`, or these components will still remain installed. Note these shortcuts run the `ensure-matrix-users-created` tag too. | `just install-all` is useful for maintaining your setup quickly ([2x-5x faster](../CHANGELOG.md#2x-5x-performance-improvements-in-playbook-runtime) than `just setup-all`) when its components remain unchanged. If you adjust your `vars.yml` to remove other components, you'd need to run `just setup-all`, or these components will still remain installed. Note these shortcuts run the `ensure-matrix-users-created` tag too. | ||||
| ## Manually start a backup | |||||
| ## Usage | |||||
| After installation, `backup-borg` will run automatically every day at `04:00:00` (as defined in `backup_borg_schedule` by default). | |||||
| ### Manually start the task | |||||
| Sometimes it can be helpful to run the backup as you'd like, avoiding to wait until 4 a.m., like when you test your configuration. | Sometimes it can be helpful to run the backup as you'd like, avoiding to wait until 4 a.m., like when you test your configuration. | ||||
| If you want to run it immediately, log in to the server with SSH and run `systemctl start matrix-backup-borg`. | If you want to run it immediately, log in to the server with SSH and run `systemctl start matrix-backup-borg`. | ||||
| This will not return until the backup is done, so it can possibly take a long time. Consider using [tmux](https://en.wikipedia.org/wiki/Tmux) if your SSH connection is unstable. | This will not return until the backup is done, so it can possibly take a long time. Consider using [tmux](https://en.wikipedia.org/wiki/Tmux) if your SSH connection is unstable. | ||||
| ## Troubleshooting | |||||
| As with all other services, you can find the logs in [systemd-journald](https://www.freedesktop.org/software/systemd/man/systemd-journald.service.html) by logging in to the server with SSH and running `journalctl -fu backup-borg`. | |||||
| @@ -14,6 +14,24 @@ Add the following configuration to your `inventory/host_vars/matrix.example.com/ | |||||
| matrix_synapse_auto_compressor_enabled: true | matrix_synapse_auto_compressor_enabled: true | ||||
| ``` | ``` | ||||
| ### Edit the schedule (optional) | |||||
| By default the task will run 0 a.m. every day based on the `matrix_synapse_auto_compressor_schedule` variable. It is defined in the format of systemd timer calendar. | |||||
| To edit the schedule, add the following configuration to your `vars.yml` file (adapt to your needs): | |||||
| ```yaml | |||||
| matrix_synapse_auto_compressor_schedule: "*-*-* 00:00:00" | |||||
| ``` | |||||
| ### Extending the configuration | |||||
| There are some additional things you may wish to configure about the component. | |||||
| Take a look at: | |||||
| - `roles/custom/matrix-synapse-auto-compressor/defaults/main.yml` for some variables that you can customize via your `vars.yml` file | |||||
| ## Installing | ## Installing | ||||
| After configuring the playbook, run it with [playbook tags](playbook-tags.md) as below: | After configuring the playbook, run it with [playbook tags](playbook-tags.md) as below: | ||||
| @@ -29,12 +47,16 @@ The shortcut commands with the [`just` program](just.md) are also available: `ju | |||||
| ## Usage | ## Usage | ||||
| After installation, `synapse_auto_compressor` will run automatically every day at `00:00:00` (as defined in `matrix_synapse_auto_compressor_calendar` by default). | |||||
| After installation, `synapse_auto_compressor` will run automatically every day at `00:00:00` (as defined in `matrix_synapse_auto_compressor_schedule` by default). | |||||
| ## Manually execute compression | |||||
| ### Manually start the task | |||||
| Sometimes it can be helpful to execute compression as you'd like, avoiding to wait until 00:00, like when you test your configuration. | Sometimes it can be helpful to execute compression as you'd like, avoiding to wait until 00:00, like when you test your configuration. | ||||
| If you want to execute it immediately, log in to the server with SSH and run `systemctl start matrix-synapse-auto-compressor`. | If you want to execute it immediately, log in to the server with SSH and run `systemctl start matrix-synapse-auto-compressor`. | ||||
| This will not return until the compression is done, so it can possibly take a long time. Consider using [tmux](https://en.wikipedia.org/wiki/Tmux) if your SSH connection is unstable. | This will not return until the compression is done, so it can possibly take a long time. Consider using [tmux](https://en.wikipedia.org/wiki/Tmux) if your SSH connection is unstable. | ||||
| ## Troubleshooting | |||||
| As with all other services, you can find the logs in [systemd-journald](https://www.freedesktop.org/software/systemd/man/systemd-journald.service.html) by logging in to the server with SSH and running `journalctl -fu matrix-synapse-auto-compressor`. | |||||
| @@ -56,7 +56,7 @@ matrix_synapse_auto_compressor_database_name: 'synapse' | |||||
| matrix_synapse_auto_compressor_synapse_database: 'postgres://{{ matrix_synapse_auto_compressor_database_username | urlencode() }}:{{ matrix_synapse_auto_compressor_database_password | urlencode() }}@{{ matrix_synapse_auto_compressor_database_hostname }}:{{ matrix_synapse_auto_compressor_database_port }}/{{ matrix_synapse_auto_compressor_database_name }}' | matrix_synapse_auto_compressor_synapse_database: 'postgres://{{ matrix_synapse_auto_compressor_database_username | urlencode() }}:{{ matrix_synapse_auto_compressor_database_password | urlencode() }}@{{ matrix_synapse_auto_compressor_database_hostname }}:{{ matrix_synapse_auto_compressor_database_port }}/{{ matrix_synapse_auto_compressor_database_name }}' | ||||
| # systemd calendar configuration for the compressor job | # systemd calendar configuration for the compressor job | ||||
| matrix_synapse_auto_compressor_calendar: "*-*-* 00:00:00" | |||||
| matrix_synapse_auto_compressor_schedule: "*-*-* 00:00:00" | |||||
| # The number of state groups to work on at once. | # The number of state groups to work on at once. | ||||
| # All of the entries from state_groups_state are requested from the database for state groups that are worked on. | # All of the entries from state_groups_state are requested from the database for state groups that are worked on. | ||||
| @@ -1,4 +1,13 @@ | |||||
| --- | --- | ||||
| - name: (Deprecation) Catch and report renamed settings | |||||
| ansible.builtin.fail: | |||||
| msg: >- | |||||
| Your configuration contains a variable, which now has a different name. | |||||
| Please change your configuration to rename the variable (`{{ item.old }}` -> `{{ item.new }}`). | |||||
| when: "item.old in vars" | |||||
| with_items: | |||||
| - "old": "matrix_synapse_auto_compressor_calendar" | |||||
| "new": "matrix_synapse_auto_compressor_schedule" | |||||
| - name: Fail if required matrix-synapse-auto-compressor settings not defined | - name: Fail if required matrix-synapse-auto-compressor settings not defined | ||||
| ansible.builtin.fail: | ansible.builtin.fail: | ||||
| @@ -3,7 +3,7 @@ Description=Synapse State Auto Compressor Timer | |||||
| [Timer] | [Timer] | ||||
| Unit=matrix-synapse-auto-compressor.service | Unit=matrix-synapse-auto-compressor.service | ||||
| OnCalendar={{ matrix_synapse_auto_compressor_calendar }} | |||||
| OnCalendar={{ matrix_synapse_auto_compressor_schedule }} | |||||
| [Install] | [Install] | ||||
| WantedBy=timers.target | WantedBy=timers.target | ||||