Merge branch 'master' into jammy_jellyfish
This commit is contained in:
@@ -7,6 +7,6 @@ node.default["kosmos_kvm"]["host"]["qemu_base_image"] = {
|
||||
}
|
||||
|
||||
# A systemd.timer OnCalendar config value
|
||||
node.default["kosmos_kvm"]["backup"]["schedule"] = "daily"
|
||||
node.default["kosmos_kvm"]["backup"]["schedule"] = "0/3:00"
|
||||
# Node/VM names excluded from backups
|
||||
node.default["kosmos_kvm"]["backup"]["nodes_excluded"] = []
|
||||
|
||||
@@ -22,8 +22,5 @@ borg create -v $REPOSITORY::$1_$(date +%F_%H-%M) \
|
||||
/var/lib/libvirt/images/$1.qcow2 \
|
||||
/root/backups/vm_meta/$1.xml
|
||||
|
||||
echo "Pivoting base image back to original"
|
||||
virsh blockcommit $1 vda --pivot --base=/var/lib/libvirt/images/$1.qcow2
|
||||
|
||||
echo "Removing snapshot image"
|
||||
rm /var/lib/libvirt/images/$1.hotswap.qcow2
|
||||
echo "Pivoting base image back to original, and removing the snapshot image"
|
||||
virsh blockcommit $1 vda --pivot --base=/var/lib/libvirt/images/$1.qcow2 && rm /var/lib/libvirt/images/$1.hotswap.qcow2
|
||||
|
||||
@@ -7,6 +7,14 @@ apt_package "borgbackup"
|
||||
|
||||
borg_credentials = data_bag_item("credentials", "borg")
|
||||
|
||||
if borg_credentials["nodes"].keys.include?(node.name)
|
||||
passphrase = borg_credentials["nodes"][node.name]["passphrase"]
|
||||
repository = borg_credentials["nodes"][node.name]["repository"]
|
||||
else
|
||||
passphrase = borg_credentials["passphrase"]
|
||||
repository = borg_credentials["repository"]
|
||||
end
|
||||
|
||||
file "/root/.ssh/borg_rsa" do
|
||||
content borg_credentials["ssh_key"]
|
||||
mode '0600'
|
||||
@@ -15,8 +23,8 @@ end
|
||||
file "/root/.borg_credentials.env" do
|
||||
content <<-EOF
|
||||
BORG_RSH='ssh -i /root/.ssh/borg_rsa'
|
||||
BORG_PASSPHRASE=#{borg_credentials["passphrase"]}
|
||||
BORG_REPO='#{borg_credentials["repository"]}'
|
||||
BORG_PASSPHRASE=#{passphrase}
|
||||
BORG_REPO='#{repository}'
|
||||
EOF
|
||||
end
|
||||
|
||||
@@ -54,7 +62,7 @@ end
|
||||
vm_domains = search(:node, "role:kvm_guest").map{|n| n["hostname"] } \
|
||||
& `virsh list --name`.strip.chomp.split("\n")
|
||||
|
||||
vm_domains.reject! { |d| node["kosmos_kvm"]["backup"]["nodes_excluded"].include?(d) }
|
||||
vm_domains.reject! { |d| node["kosmos_kvm"]["backup"]["nodes_excluded"].any?{ |n| d.match?(/^#{n}/) } }
|
||||
|
||||
template "/root/backups/backup_all_vms.sh" do
|
||||
source "backup_all_vms.sh.erb"
|
||||
|
||||
Reference in New Issue
Block a user