Hydra: build Solo5 PRs using release derivation
This just makes it easier to run the tests as well.
This commit is contained in:
parent
756bec7052
commit
b2d4dc491e
|
@ -18,54 +18,59 @@ let
|
||||||
keepnr = 8;
|
keepnr = 8;
|
||||||
};
|
};
|
||||||
|
|
||||||
solo5 = import ./solo5-jobs.nix { pullRequests = solo5PullRequests; };
|
releaseInputs = {
|
||||||
|
|
||||||
|
dhall-haskell = {
|
||||||
|
type = "git";
|
||||||
|
value = "https://github.com/dhall-lang/dhall-haskell.git master";
|
||||||
|
emailresponsible = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
dhallNixpkgsStaticLinux = {
|
||||||
|
type = "git";
|
||||||
|
value =
|
||||||
|
"https://github.com/nh2/nixpkgs.git 925aac04f4ca58aceb83beef18cb7dae0715421b";
|
||||||
|
emailresponsible = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
dhallNixpkgs = {
|
||||||
|
type = "git";
|
||||||
|
value =
|
||||||
|
"https://gitea.c3d2.de/ehmry/nixpkgs.git 1d4de0d552ae9aa66a5b8dee5fb0650a4372d148";
|
||||||
|
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";
|
||||||
|
emailresponsible = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
solo5 = import ./solo5-jobs.nix {
|
||||||
|
inherit releaseInputs;
|
||||||
|
pullRequests = solo5PullRequests;
|
||||||
|
};
|
||||||
|
|
||||||
jobsets = ({
|
jobsets = ({
|
||||||
|
|
||||||
trunk = mkJobSet {
|
trunk = mkJobSet {
|
||||||
description = "Genodepkgs master branch";
|
description = "Genodepkgs master branch";
|
||||||
nixexprpath = "release.nix";
|
nixexprpath = "release.nix";
|
||||||
inputs = {
|
inputs = releaseInputs;
|
||||||
|
|
||||||
dhall-haskell = {
|
|
||||||
type = "git";
|
|
||||||
value = "https://github.com/dhall-lang/dhall-haskell.git master";
|
|
||||||
emailresponsible = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
dhallNixpkgsStaticLinux = {
|
|
||||||
type = "git";
|
|
||||||
value =
|
|
||||||
"https://github.com/nh2/nixpkgs.git 925aac04f4ca58aceb83beef18cb7dae0715421b";
|
|
||||||
emailresponsible = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
dhallNixpkgs = {
|
|
||||||
type = "git";
|
|
||||||
value =
|
|
||||||
"https://gitea.c3d2.de/ehmry/nixpkgs.git 1d4de0d552ae9aa66a5b8dee5fb0650a4372d148";
|
|
||||||
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";
|
|
||||||
emailresponsible = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // solo5);
|
} // solo5);
|
||||||
|
|
|
@ -2,59 +2,42 @@
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1
|
# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1
|
||||||
|
|
||||||
{ pullRequests }:
|
{ releaseInputs, pullRequests }:
|
||||||
|
|
||||||
with builtins;
|
with builtins;
|
||||||
|
|
||||||
let
|
let
|
||||||
pullRequests' = fromJSON (readFile pullRequests);
|
pullRequests' = fromJSON (readFile pullRequests);
|
||||||
|
|
||||||
prToJob = pr:
|
prToJob = pr: {
|
||||||
{
|
name = "solo5-${toString pr.number}";
|
||||||
name = "solo5-${toString pr.number}";
|
value = {
|
||||||
value = {
|
|
||||||
|
|
||||||
description = pr.title;
|
description = pr.title;
|
||||||
nixexprpath = "hydra/solo5.nix";
|
nixexprpath = "hydra/solo5.nix";
|
||||||
enabled = 1;
|
enabled = 1;
|
||||||
hidden = false;
|
hidden = false;
|
||||||
nixexprinput = "genodepkgs";
|
nixexprinput = "genodepkgs";
|
||||||
checkinterval = 300;
|
checkinterval = 300;
|
||||||
schedulingshares = 100;
|
schedulingshares = 100;
|
||||||
enableemail = false;
|
enableemail = false;
|
||||||
emailoverride = "";
|
emailoverride = "";
|
||||||
keepnr = 8;
|
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";
|
|
||||||
emailresponsible = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
prSrc = {
|
||||||
|
type = "git";
|
||||||
|
value = "https://github.com/Solo5/solo5.git pull/${
|
||||||
|
toString pr.number
|
||||||
|
}/head";
|
||||||
|
emailresponsible = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
jobs = map prToJob (attrValues pullRequests');
|
jobs = map prToJob (attrValues pullRequests');
|
||||||
|
|
||||||
|
|
|
@ -2,11 +2,16 @@
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1
|
# 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; };
|
let
|
||||||
in {
|
release = import ../release.nix {
|
||||||
build.x86_64.solo5 = pkgs.solo5.overrideAttrs (attrs: {
|
inherit dhall-haskell dhallNixpkgs dhallNixpkgsStaticLinux nixpkgs
|
||||||
|
genodepkgs nim-overlay;
|
||||||
|
};
|
||||||
|
|
||||||
|
prOverride = attrs: {
|
||||||
src = prSrc;
|
src = prSrc;
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
cat <<EOM >include/solo5/solo5_version.h.distrib
|
cat <<EOM >include/solo5/solo5_version.h.distrib
|
||||||
|
@ -16,5 +21,7 @@ in {
|
||||||
#endif
|
#endif
|
||||||
EOM
|
EOM
|
||||||
'';
|
'';
|
||||||
});
|
};
|
||||||
}
|
|
||||||
|
in
|
||||||
|
{ build.x86_64.solo5 = pkgs.solo5.overrideAttrs prOverride; }
|
||||||
|
|
Loading…
Reference in New Issue