27 lines
1.1 KiB
Django/Jinja
27 lines
1.1 KiB
Django/Jinja
#!/bin/sh
|
|
###############################################################################
|
|
# \_o< WARNING : This file is being managed by ansible! >o_/ #
|
|
# ~~~~ ~~~~ #
|
|
###############################################################################
|
|
|
|
set -eu
|
|
|
|
export HOME=/root
|
|
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
|
export BORG_RSH="ssh -i /root/.ssh/borg"
|
|
|
|
{% for job in borg_jobs %}
|
|
{% if job.pre_command is defined %}
|
|
{{ job.pre_command }}
|
|
{% endif %}
|
|
{% if job.command_to_pipe is defined %}
|
|
{{ job.command_to_pipe }} | borg create borg@{{ borg_server }}:/srv/borg/repos/{{ inventory_hostname }}::{{ job.name }}-{now} -
|
|
{% else %}
|
|
borg create {% for exclude in job.exclude|default([]) %} --exclude {{ exclude }}{% endfor %} borg@{{ borg_server }}:/srv/borg/repos/{{ inventory_hostname }}::{{ job.name }}-{now} {{ job.path }}
|
|
{% endif %}
|
|
{% if job.post_command is defined %}
|
|
{{ job.post_command }}
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
borg prune borg@{{ borg_server }}:/srv/borg/repos/{{ inventory_hostname }} {{ borg_prune_arguments }}
|