matrix-docker-ansible-deploy/roles/matrix-postgres-backup/defaults/main.yml

140 lines
7.8 KiB
YAML

matrix_postgres_backup_enabled: false
matrix_postgres_backup_connection_hostname: "matrix-postgres"
matrix_postgres_backup_connection_port: 5432
matrix_postgres_backup_connection_username: "matrix"
matrix_postgres_backup_connection_password: ""
matrix_postgres_backup_extra_opts: "-Z9 --schema=public --blobs"
matrix_postgres_backup_schedule: "@daily"
matrix_postgres_backup_keep_days: "7"
matrix_postgres_backup_keep_weeks: "4"
matrix_postgres_backup_keep_months: "12"
matrix_postgres_backup_healthcheck_port: "8080"
matrix_postgres_backup_db_list: ""
matrix_postgres_backup_path: "{{ matrix_base_data_path }}/postgres-backup"
matrix_postgres_base_path: "{{ matrix_base_data_path }}/postgres"
matrix_postgres_data_path: "{{ matrix_postgres_base_path }}/data"
# uses sqlite per default
matrix_postgres_backup_matrix_reminder_bot_enabled: false
matrix_bot_matrix_reminder_bot_database_name: 'matrix_reminder_bot'
# uses sqlite per default
matrix_postgres_backup_matrix_appservice_discord_enabled: false
matrix_appservice_discord_database_name: 'matrix_appservice_discord'
# uses nedb per default
matrix_postgres_backup_matrix_appservice_irc_enabled: false
matrix_appservice_irc_database_name: 'matrix_appservice_irc'
# uses nedb per default
matrix_postgres_backup_matrix_appservice_slack_enabled: false
matrix_appservice_slack_database_name: 'matrix_appservice_slack'
# uses postgres per default
matrix_postgres_backup_matrix_mautrix_facebook_enabled: false
matrix_mautrix_facebook_database_name: 'matrix_mautrix_facebook'
# uses sqlite per default
matrix_postgres_backup_matrix_mautrix_hangouts_enabled: false
matrix_mautrix_hangouts_database_name: 'matrix_mautrix_hangouts'
# uses postgres per default
matrix_postgres_backup_matrix_mautrix_signal_enabled: false
matrix_mautrix_signal_database_name: 'matrix_mautrix_signal'
# uses sqlite per default
matrix_postgres_backup_matrix_mautrix_telegram_enabled: false
matrix_mautrix_telegram_database_name: 'matrix_mautrix_telegram'
# uses sqlite per default
matrix_postgres_backup_matrix_mautrix_whatsapp_enabled: false
matrix_mautrix_whatsapp_database_name: 'matrix_mautrix_whatsapp'
# uses sqlite per default
matrix_postgres_backup_matrix_mx_puppet_discord_enabled: false
matrix_mx_puppet_discord_database_name: 'matrix_mx_puppet_discord'
# uses sqlite per default
matrix_postgres_backup_matrix_mx_puppet_instagram_enabled: false
matrix_postgres_backup_matrix_mx_puppet_instagram_name: 'matrix_mx_puppet_instagram'
# uses sqlite per default
matrix_postgres_backup_matrix_mx_puppet_skype_enabled: false
matrix_mx_puppet_skype_database_name: 'matrix_mx_puppet_skype'
# uses sqlite per default
matrix_postgres_backup_matrix_mx_puppet_slack_enabled: false
matrix_mx_puppet_slack_database_name: 'matrix_mx_puppet_slack'
# uses sqlite per default
matrix_postgres_backup_matrix_mx_puppet_steam_enabled: false
matrix_mx_puppet_steam_database_name: 'matrix_mx_puppet_steam'
# uses sqlite per default
matrix_postgres_backup_matrix_mx_puppet_twitter_enabled: false
matrix_mx_puppet_twitter_database_name: 'matrix_mx_puppet_twitter'
# uses sqlite per default
matrix_postgres_backup_matrix_dimension_enabled: false
matrix_dimension_database_name: 'matrix_dimension'
# uses sqlite per default
matrix_postgres_backup_matrix_etherpad_enabled: false
matrix_etherpad_database_name: 'matrix_etherpad'
# uses sqlite per default
matrix_postgres_backup_matrix_ma1sd_enabled: false
matrix_ma1sd_database_name: 'matrix_ma1sd'
# uses sqlite per default
matrix_postgres_backup_matrix_registration_enabled: false
matrix_registration_database_engine: 'matrix_registration'
# uses postgres per default
matrix_postgres_backup_matrix_synapse_enabled: true
matrix_postgres_db_name: 'matrix'
matrix_postgres_backup_db_dict:
- { enabled: '{{matrix_postgres_backup_matrix_reminder_bot_enabled|bool}}' , dbname: '{{ matrix_bot_matrix_reminder_bot_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_appservice_discord_enabled|bool}}' , dbname: '{{ matrix_appservice_discord_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_appservice_irc_enabled|bool}}' , dbname: '{{ matrix_appservice_irc_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_appservice_slack_enabled|bool}}' , dbname: '{{ matrix_appservice_slack_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mautrix_facebook_enabled|bool}}' , dbname: '{{ matrix_mautrix_facebook_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mautrix_hangouts_enabled|bool}}' , dbname: '{{ matrix_mautrix_hangouts_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mautrix_signal_enabled|bool}}' , dbname: '{{ matrix_mautrix_signal_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mautrix_telegram_enabled|bool}}' , dbname: '{{ matrix_mautrix_telegram_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mautrix_whatsapp_enabled|bool}}' , dbname: '{{ matrix_mautrix_whatsapp_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mx_puppet_instagram_enabled|bool}}' , dbname: '{{ matrix_postgres_backup_matrix_mx_puppet_instagram_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mx_puppet_skype_enabled|bool}}' , dbname: '{{ matrix_mx_puppet_skype_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mx_puppet_slack_enabled|bool}}' , dbname: '{{ matrix_mx_puppet_slack_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mx_puppet_steam_enabled|bool}}' , dbname: '{{ matrix_mx_puppet_steam_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_mx_puppet_twitter_enabled|bool}}' , dbname: '{{ matrix_mx_puppet_twitter_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_dimension_enabled|bool}}' , dbname: '{{ matrix_dimension_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_etherpad_enabled|bool}}' , dbname: '{{ matrix_etherpad_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_ma1sd_enabled|bool}}' , dbname: '{{ matrix_ma1sd_database_name }}' }
- { enabled: '{{matrix_postgres_backup_matrix_registration_enabled|bool}}' , dbname: '{{ matrix_registration_database_engine }}' }
- { enabled: '{{matrix_postgres_backup_matrix_synapse_enabled|bool}}' , dbname: '{{ matrix_postgres_db_name }}' }
matrix_postgres_backup_architecture: amd64
# matrix_postgres_docker_image_suffix controls whether we use Alpine-based images (`-alpine`) or the normal Debian-based images.
# Alpine-based Postgres images are smaller and we usually prefer them, but they don't work on ARM32 (tested on a Raspberry Pi 3 running Raspbian 10.7).
# On ARM32, `-alpine` images fail with the following error:
# > LOG: startup process (PID 37) was terminated by signal 11: Segmentation fault
matrix_postgres_backup_docker_image_suffix: "{{ '-alpine' if matrix_postgres_backup_architecture in ['amd64', 'arm64'] else '' }}"
matrix_postgres_backup_docker_image_v9: "docker.io/prodrigestivill/postgres-backup-local:9.6{{ matrix_postgres_backup_docker_image_suffix }}"
matrix_postgres_backup_docker_image_v10: "docker.io/prodrigestivill/postgres-backup-local:10{{ matrix_postgres_backup_docker_image_suffix }}"
matrix_postgres_backup_docker_image_v11: "docker.io/prodrigestivill/postgres-backup-local:11{{ matrix_postgres_backup_docker_image_suffix }}"
matrix_postgres_backup_docker_image_v12: "docker.io/prodrigestivill/postgres-backup-local:12{{ matrix_postgres_backup_docker_image_suffix }}"
matrix_postgres_backup_docker_image_v13: "docker.io/prodrigestivill/postgres-backup-local:13{{ matrix_postgres_backup_docker_image_suffix }}"
matrix_postgres_backup_docker_image_latest: "{{ matrix_postgres_backup_docker_image_v13 }}"
# This variable is assigned at runtime. Overriding its value has no effect.
matrix_postgres_backup_docker_image_to_use: '{{ matrix_postgres_backup_docker_image_latest }}'
matrix_postgres_backup_docker_image_force_pull: "{{ matrix_postgres_backup_docker_image_to_use.endswith(':latest') }}"