forked from lix-project/hydra
hydra-update-gc-roots: Only keep outputs when in direct mode
This prevents the server from gradually filling up due to store paths fetched by hydra-server that then get turned into a GC root by hydra-update-gc-roots.
This commit is contained in:
parent
fe82a666d5
commit
dd32033657
|
@ -11,6 +11,7 @@ use Hydra::Model::DB;
|
||||||
use POSIX qw(strftime);
|
use POSIX qw(strftime);
|
||||||
|
|
||||||
my $db = Hydra::Model::DB->new();
|
my $db = Hydra::Model::DB->new();
|
||||||
|
my $config = getHydraConfig();
|
||||||
|
|
||||||
|
|
||||||
my %roots;
|
my %roots;
|
||||||
|
@ -37,7 +38,9 @@ sub keepBuild {
|
||||||
$build->get_column('project'), ":", $build->get_column('jobset'), ":", $build->get_column('job'), "; ",
|
$build->get_column('project'), ":", $build->get_column('jobset'), ":", $build->get_column('job'), "; ",
|
||||||
$build->system, "; ",
|
$build->system, "; ",
|
||||||
strftime("%Y-%m-%d %H:%M:%S", localtime($build->timestamp)), ")\n";
|
strftime("%Y-%m-%d %H:%M:%S", localtime($build->timestamp)), ")\n";
|
||||||
if ($build->finished && ($build->buildstatus == 0 || $build->buildstatus == 6)) {
|
if (($config->{store_mode} // "direct") eq "direct" &&
|
||||||
|
$build->finished && ($build->buildstatus == 0 || $build->buildstatus == 6))
|
||||||
|
{
|
||||||
foreach my $path (split / /, $build->get_column('outpaths')) {
|
foreach my $path (split / /, $build->get_column('outpaths')) {
|
||||||
if (isValidPath($path)) {
|
if (isValidPath($path)) {
|
||||||
addRoot $path;
|
addRoot $path;
|
||||||
|
|
Loading…
Reference in a new issue