From b1763cd032ed50227fd8d6b9546944732be03f60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A2u=20Cao?= Date: Tue, 5 Dec 2023 18:04:57 +0100 Subject: [PATCH] Pattern-match node names for VM backup exclusion --- environments/production.json | 6 +++--- site-cookbooks/kosmos_kvm/recipes/backup.rb | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/environments/production.json b/environments/production.json index 8404558..cdc5ada 100644 --- a/environments/production.json +++ b/environments/production.json @@ -45,9 +45,9 @@ "kosmos_kvm": { "backup": { "nodes_excluded": [ - "garage-2", "garage-3", "garage-4", - "postgres-5", - "rsk-mainnet-2", "rsk-testnet-3" + "garage-", + "rsk-", + "postgres-5" ] } }, diff --git a/site-cookbooks/kosmos_kvm/recipes/backup.rb b/site-cookbooks/kosmos_kvm/recipes/backup.rb index e2da98a..ae49929 100644 --- a/site-cookbooks/kosmos_kvm/recipes/backup.rb +++ b/site-cookbooks/kosmos_kvm/recipes/backup.rb @@ -54,7 +54,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"