2
0
Fork 0

Hydra: build Solo5 PRs using release derivation

This just makes it easier to run the tests as well.
This commit is contained in:
Ehmry - 2019-10-22 17:58:45 +02:00
parent 756bec7052
commit b2d4dc491e
3 changed files with 83 additions and 88 deletions

View File

@ -18,14 +18,7 @@ let
keepnr = 8;
};
solo5 = import ./solo5-jobs.nix { pullRequests = solo5PullRequests; };
jobsets = ({
trunk = mkJobSet {
description = "Genodepkgs master branch";
nixexprpath = "release.nix";
inputs = {
releaseInputs = {
dhall-haskell = {
type = "git";
@ -66,6 +59,18 @@ let
};
};
solo5 = import ./solo5-jobs.nix {
inherit releaseInputs;
pullRequests = solo5PullRequests;
};
jobsets = ({
trunk = mkJobSet {
description = "Genodepkgs master branch";
nixexprpath = "release.nix";
inputs = releaseInputs;
};
} // solo5);

View File

@ -2,15 +2,14 @@
#
# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1
{ pullRequests }:
{ releaseInputs, pullRequests }:
with builtins;
let
pullRequests' = fromJSON (readFile pullRequests);
prToJob = pr:
{
prToJob = pr: {
name = "solo5-${toString pr.number}";
value = {
@ -25,29 +24,13 @@ let
emailoverride = "";
keepnr = 8;
inputs = {
inputs = releaseInputs // {
prSrc = {
type = "git";
value = "https://github.com/Solo5/solo5.git pull/${toString pr.number}/head";
emailresponsible = false;
};
genodepkgs = {
type = "git";
value = "https://gitea.c3d2.de/ehmry/genodepkgs.git master";
emailresponsible = false;
};
nixpkgs = {
type = "git";
value = "https://gitea.c3d2.de/ehmry/nixpkgs.git hybrid-19.09";
emailresponsible = false;
};
nim-overlay = {
type = "git";
value = "https://git.sr.ht/~ehmry/nim-overlay";
value = "https://github.com/Solo5/solo5.git pull/${
toString pr.number
}/head";
emailresponsible = false;
};

View File

@ -2,11 +2,16 @@
#
# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1
{ genodepkgs, nixpkgs, nim-overlay, prSrc }:
{ genodepkgs, nixpkgs, dhall-haskell, dhallNixpkgs, dhallNixpkgsStaticLinux
, nim-overlay, prSrc }:
let pkgs = import genodepkgs { inherit nixpkgs nim-overlay; };
in {
build.x86_64.solo5 = pkgs.solo5.overrideAttrs (attrs: {
let
release = import ../release.nix {
inherit dhall-haskell dhallNixpkgs dhallNixpkgsStaticLinux nixpkgs
genodepkgs nim-overlay;
};
prOverride = attrs: {
src = prSrc;
preConfigure = ''
cat <<EOM >include/solo5/solo5_version.h.distrib
@ -16,5 +21,7 @@ in {
#endif
EOM
'';
});
}
};
in
{ build.x86_64.solo5 = pkgs.solo5.overrideAttrs prOverride; }