17 |
use Sack::Merge; |
use Sack::Merge; |
18 |
|
|
19 |
my @cloud; |
my @cloud; |
20 |
my $cloud_path = $ENV{CLOUD} || die "start with: CLOUD=etc/cloud perl -I/srv/Sack/lib $0\n"; |
my $cloud_path = $ENV{CLOUD} || "etc/cloud"; |
21 |
|
die "start with: CLOUD=etc/cloud perl -I/srv/Sack/lib $0\n" unless -e $cloud_path; |
22 |
@cloud = read_file $cloud_path; |
@cloud = read_file $cloud_path; |
23 |
@cloud = map { chomp $_; $_ } @cloud; |
@cloud = map { chomp $_; $_ } @cloud; |
24 |
|
|
108 |
} elsif ( $repl =~ m{load\s*(\S+)?} ) { |
} elsif ( $repl =~ m{load\s*(\S+)?} ) { |
109 |
my $name = $1 || 'shard'; |
my $name = $1 || 'shard'; |
110 |
@shard_paths = glob "/tmp/sack/$name/*"; |
@shard_paths = glob "/tmp/sack/$name/*"; |
111 |
warn "loading shards ", dump( @shard_paths ); |
warn "loading shard $name from ", dump( @shard_paths ); |
112 |
to_all { load => $name }; |
to_all { load => $name }; |
113 |
} elsif ( $repl =~ m{view\s*(\S+)?} ) { |
} elsif ( $repl =~ m{view\s*(\S+)?} ) { |
114 |
my $path = $1 || '/srv/Sack/views/00.demo.pl'; |
my $path = $1 || '/srv/Sack/views/00.demo.pl'; |
122 |
my $out = Sack::Merge->out; |
my $out = Sack::Merge->out; |
123 |
warn "out ",dump( $out ); |
warn "out ",dump( $out ); |
124 |
$response->{out} = $out; |
$response->{out} = $out; |
125 |
|
} elsif ( $repl =~ m{clean} ) { |
126 |
|
delete $info->{shard}; |
127 |
|
to_all { clean => 1 }; |
128 |
} else { |
} else { |
129 |
$response->{error}->{unknown} = $data; |
$response->{error}->{unknown} = $data; |
130 |
} |
} |