vrischmann.restic
Restic
Разворачивайте резервные копии restic с использованием системных сервисов и таймеров systemd.
Эта роль имеет два режима:
user
— добавляет сервисы и таймеры для пользователя.server
— добавляет системные сервисы и таймеры.
Требования
Необходимо, чтобы restic был установлен и ваши репозитории уже инициализированы.
Переменные роли
Имя | Обязательно | Описание |
---|---|---|
restic_binary |
нет | Полный путь к бинарному файлу restic. |
restic_backup_mode |
да | Режим резервного копирования (либо "user", либо "server"). |
restic_user_home |
нет | Домашний каталог пользователя (если работает в режиме "user"). |
restic_user_name |
нет | Имя пользователя (если работает в режиме "user"). |
restic_user_group |
нет | Группа пользователя (если работает в режиме "user"). |
restic_backups |
да | Список определений резервных копий для restic. |
restic_conf_directory |
нет | Каталог конфигурации (если работает в режиме "server"). |
Определение резервной копии
Список restic_backups
содержит N элементов, определяющих резервные копии.
Каждое определение резервной копии должно содержать следующую информацию:
- Имя репозитория (используйте только алфавитно-цифровые символы для сервисов systemd)
- Переменные окружения для restic для использования репозитория
- Спецификация расписания для таймера systemd.
- Каталоги для резервного копирования
Также можно указать список каталогов для исключения.
Например, это определяет два репозитория:
restic_backups:
- name: remote-scaleway
env:
AWS_ACCESS_KEY_ID: "{{ restic_scaleway_aws_access_key_id }}"
AWS_SECRET_ACCESS_KEY: "{{ restic_scaleway_aws_secret_access_key }}"
RESTIC_REPOSITORY: "s3:s3.fr-par.scw.cloud/foobar/home"
RESTIC_PASSWORD: "{{ restic_remote_password }}"
calendar_spec: "*-*-* *:00/15:00"
backup_directories:
- /home/vincent
excludes:
- /home/vincent/tmp
- name: remote-linode
env:
AWS_ACCESS_KEY_ID: "{{ restic_linode_aws_access_key_id }}"
AWS_SECRET_ACCESS_KEY: "{{ restic_linode_aws_secret_access_key }}"
RESTIC_REPOSITORY: "s3:eu-central-1.linodeobjects.com/foobar/barbaz"
RESTIC_PASSWORD: "{{ restic_remote_password }}"
calendar_spec: "*-*-* *:00/15:00"
backup_directories:
- /data/media
excludes:
- /data/media/Movies
Лицензия
MIT
Установить
ansible-galaxy install vrischmann.restic
Лицензия
mit
Загрузки
134
Владелец
Still learning