From 2dbd1f123e2c9dd5d81513ef0b2d6443bf5edde3 Mon Sep 17 00:00:00 2001 From: Sergey Poznyakoff Date: Mon, 20 Jan 2020 11:56:03 +0200 Subject: Create backup copies of Apache configuration files during setup on Slackware. --- lib/App/Acmeman/Apache/Layout/slackware.pm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/App/Acmeman/Apache/Layout/slackware.pm b/lib/App/Acmeman/Apache/Layout/slackware.pm index d09017a..fd9ea31 100644 --- a/lib/App/Acmeman/Apache/Layout/slackware.pm +++ b/lib/App/Acmeman/Apache/Layout/slackware.pm @@ -5,6 +5,7 @@ use Carp; use parent 'App::Acmeman::Apache::Layout'; use Apache::Config::Preproc; use App::Acmeman::Log qw(:all); +use File::BackupCopy; our $PRIORITY = 10; @@ -175,7 +176,14 @@ sub run_commands_for_file { error((0+@commands) . " left unmatched in edit queue for file $file"); error("$file left unchanged"); } else { - # FIXME: backup/rollback + my $backup_name = backup_copy($app->filename, error => \my $error); + if ($backup_name) { + debug(1, "modifying ".$app->filename."; prior version saved in $backup_name"); + } elsif ($error) { + error("can't backup ".$app->filename.": $error"); + error("file left unchanged"); + return; + } $app->save; } } -- cgit v1.2.1