Merge pull request #879 from grahamc/runcommand-meta

RunCommand: pass homepage, description, license, system, and nixname
This commit is contained in:
Eelco Dolstra 2021-02-25 09:59:19 +01:00 committed by GitHub
commit 3cd312fc4c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 36 additions and 18 deletions

View file

@ -71,6 +71,11 @@ sub buildFinished {
startTime => $build->get_column('starttime'),
stopTime => $build->get_column('stoptime'),
buildStatus => $build->get_column('buildstatus'),
nixName => $build->get_column('nixname'),
system => $build->get_column('system'),
homepage => $build->get_column('homepage'),
description => $build->get_column('description'),
license => $build->get_column('license'),
outputs => [],
products => [],
metrics => [],

View file

@ -1,25 +1,33 @@
with import ./config.nix;
{
metrics = mkDerivation {
name = "my-build-product";
builder = "/bin/sh";
outputs = [ "out" "bin" ];
args = [
(
builtins.toFile "builder.sh" ''
#! /bin/sh
metrics = (
mkDerivation {
name = "my-build-product";
builder = "/bin/sh";
outputs = [ "out" "bin" ];
args = [
(
builtins.toFile "builder.sh" ''
#! /bin/sh
echo "$PATH"
echo "$PATH"
mkdir $bin
echo "foo" > $bin/bar
mkdir $bin
echo "foo" > $bin/bar
metrics=$out/nix-support/hydra-metrics
mkdir -p "$(dirname "$metrics")"
echo "lineCoverage 18 %" >> "$metrics"
echo "maxResident 27 KiB" >> "$metrics"
''
)
];
metrics=$out/nix-support/hydra-metrics
mkdir -p "$(dirname "$metrics")"
echo "lineCoverage 18 %" >> "$metrics"
echo "maxResident 27 KiB" >> "$metrics"
''
)
];
}
) // {
meta = {
license = "GPL";
description = "An example meta property.";
homepage = "https://github.com/NixOS/hydra";
};
};
}

View file

@ -58,10 +58,15 @@ subtest "Validate the top level fields match" => sub {
is($dat->{project}, "tests", "The project matches.");
is($dat->{jobset}, "basic", "The jobset matches.");
is($dat->{job}, "metrics", "The job matches.");
is($dat->{nixName}, "my-build-product", "The nixName matches.");
is($dat->{system}, $newbuild->system, "The system matches.");
is($dat->{drvPath}, $newbuild->drvpath, "The derivation path matches.");
is($dat->{timestamp}, $newbuild->timestamp, "The result has a timestamp field.");
is($dat->{startTime}, $newbuild->starttime, "The result has a startTime field.");
is($dat->{stopTime}, $newbuild->stoptime, "The result has a stopTime field.");
is($dat->{homepage}, "https://github.com/NixOS/hydra", "The homepage is passed.");
is($dat->{description}, "An example meta property.", "The description is passed.");
is($dat->{license}, "GPL", "The license is passed.");
};
subtest "Validate the outputs match" => sub {