feat(script): Add dry-run functionality (#1)
This commit is contained in:
parent
05a9f22b01
commit
70145d5897
@ -194,12 +194,16 @@ function do_snaps () {
|
|||||||
local snap_name
|
local snap_name
|
||||||
for snappable_dataset in "${snappable_datasets[@]}"; do
|
for snappable_dataset in "${snappable_datasets[@]}"; do
|
||||||
snap_name="${snappable_dataset}"'@'"${snap_name_prefix}${snap_field_separator}${date_string}${snap_field_separator}"'op:'"${operation}${snap_field_separator}"'sev:'"${severity}${snap_field_separator}"'pkgs:'"${trimmed_pkg_list_oneline}"
|
snap_name="${snappable_dataset}"'@'"${snap_name_prefix}${snap_field_separator}${date_string}${snap_field_separator}"'op:'"${operation}${snap_field_separator}"'sev:'"${severity}${snap_field_separator}"'pkgs:'"${trimmed_pkg_list_oneline}"
|
||||||
|
if [[ "${do_dry_run}" == 'true' ]]; then
|
||||||
|
pprint 'info' 'Dry-run, pretending to run zfs snapshot '"${snap_name}"
|
||||||
|
else
|
||||||
zfs snapshot "${snap_name}" && {
|
zfs snapshot "${snap_name}" && {
|
||||||
successfully_snapped_datasets+=("${snappable_dataset}")
|
successfully_snapped_datasets+=("${snappable_dataset}")
|
||||||
pprint 'info' 'Snapshot done: '"${snap_name}"
|
pprint 'info' 'Snapshot done: '"${snap_name}"
|
||||||
} || {
|
} || {
|
||||||
pprint 'warn' 'Snapshot failed: '"${snap_name}"
|
pprint 'warn' 'Snapshot failed: '"${snap_name}"
|
||||||
}
|
}
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -214,6 +218,9 @@ function get_snaps_in_cur_sev () {
|
|||||||
|
|
||||||
function do_retention () {
|
function do_retention () {
|
||||||
local snap_list snaps_done_by_us snaps_in_cur_sev snaps_limit oldest_snap
|
local snap_list snaps_done_by_us snaps_in_cur_sev snaps_limit oldest_snap
|
||||||
|
if [[ "${do_dry_run}" == 'true' ]]; then
|
||||||
|
pprint 'info' 'Dry-run, skipping potential zfs destroy operations ...'
|
||||||
|
else
|
||||||
for successfully_snapped_dataset in "${successfully_snapped_datasets[@]}"; do
|
for successfully_snapped_dataset in "${successfully_snapped_datasets[@]}"; do
|
||||||
snaps_in_cur_sev="$(get_snaps_in_cur_sev "${successfully_snapped_dataset}")"
|
snaps_in_cur_sev="$(get_snaps_in_cur_sev "${successfully_snapped_dataset}")"
|
||||||
if [[ "${severity}" == "${snaps_important_suffix}" ]]; then
|
if [[ "${severity}" == "${snaps_important_suffix}" ]]; then
|
||||||
@ -226,6 +233,7 @@ function do_retention () {
|
|||||||
zfs destroy "${oldest_snap}"
|
zfs destroy "${oldest_snap}"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
function main () {
|
function main () {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user