-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbackup
executable file
·40 lines (34 loc) · 945 Bytes
/
backup
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/usr/bin/env perl6
use v6.d;
use lib 'scripts';
use GTKScripts;
sub MAIN (:$force, :$all) {
my @valid-backups = qqx{git remote}.lines;
#if $CONFIG-NAME.IO.e {
#parse-file;
if %config<backups> {
for %config<backups>.Array {
next unless $_ eq @valid-backups.any;
my @items = «git push $_»;
@items.push: '--force' if $force;
@items.push: '--all' if $all;
my $proc = Proc::Async.new( |@items );
$proc.stdout.tap(-> $o { $o.say; });
await $proc.start;
}
} else {
say 'No backup repositories specified in config!';
}
#}
unless %config<backups> {
if @valid-backups.any eq 'backup' {
my @items = |<git push backup>;
@items.push: '--force' if $force;
my $proc = Proc::Async.new( |@items );
$proc.stdout.tap(-> $o { $o.say; });
await $proc.start;
} else {
say 'No backup repository configured!';
}
}
}