This commit is contained in:
2026-03-13 15:54:07 +01:00
commit 5001aa8b6d
3 changed files with 136 additions and 0 deletions

View File

@@ -0,0 +1,76 @@
{ nixpkgs, pulls, ... }:
let
pkgs = import nixpkgs { };
prs = builtins.fromJSON (builtins.readFile pulls);
prJobsets = pkgs.lib.mapAttrs (num: info: {
enabled = 1;
hidden = false;
description = "PR ${num}: ${info.title}";
checkinterval = 300;
schedulingshares = 20;
enableemail = false;
emailoverride = "";
keepnr = 1;
type = 1;
flake = "${info.head.repo.html_url}/archive/${info.head.ref}.tar.gz";
inputs = {
gitea_repo_name = {
type = "string";
value = "${info.head.repo.name}";
emailresponsible = false;
};
gitea_repo_owner = {
type = "string";
value = "${info.head.repo.owner.username}";
emailresponsible = false;
};
gitea_http_url = {
type = "string";
value = "https://git.dynamicdiscord.de";
emailresponsible = false;
};
gitea_status_repo = {
type = "string";
value = "${info.head.ref}";
emailresponsible = false;
};
};
}) prs;
mkFlakeJobset = branch: {
description = "Build ${branch} branch of the repo";
checkinterval = 300;
enabled = "1";
schedulingshares = 100;
enableemail = false;
emailoverride = "";
keepnr = 3;
hidden = false;
type = 1;
flake = "git+https://git.dynamicdiscord.de/kalipso/hydra-notify-test/archive/${branch}.tar.gz";
};
desc = prJobsets // {
"master" = mkFlakeJobset "master";
};
log = {
pulls = prs;
jobsets = desc;
};
in
{
jobsets = pkgs.runCommand "spec-jobsets.json" { } ''
cat >$out <<'EOF'
${builtins.toJSON desc}
EOF
# This is to get nice .jobsets build logs on Hydra
cat >tmp <<'EOF'
${builtins.toJSON log}
EOF
${pkgs.jq}/bin/jq . tmp
'';
}

45
.hydra/spec.json Normal file
View File

@@ -0,0 +1,45 @@
{
"enabled": 1,
"hidden": false,
"description": "gitea notify test repo",
"nixexprinput": "nixexpr",
"flake" = "git+https://git.dynamicdiscord.de/kalipso/hydra-notify-test/archive/${branch}.tar.gz";
"checkinterval": 60,
"schedulingshares": 100,
"enableemail": false,
"emailoverride": "",
"keepnr": 5,
"type": 0,
"inputs": {
"hydra-notify-test": {
"value": "https://git.dynamicdiscord.de/kalipso/hydra-notify-test master",
"type": "git",
"emailresponsible": false
},
"nixpkgs": {
"value": "https://github.com/NixOS/nixpkgs nixos-25.11",
"type": "git",
"emailresponsible": false
},
"gitea_repo_name" : {
"type" : "string",
"value" : "hydra-notify-test",
"emailresponsible" : false
},
"gitea_repo_owner" : {
"type" : "string",
"value" : "kalipso",
"emailresponsible" : false
},
gitea_http_url : {
"type" : "string",
"value" : "https://git.dynamicdiscord.de",
"emailresponsible" : false
},
gitea_status_repo : {
"type" : "string",
"value" : "hydra-notify-test",
"emailresponsible" : false
}
}
}

15
flake.nix Normal file
View File

@@ -0,0 +1,15 @@
{
description = "A very basic flake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
};
outputs = { self, nixpkgs }: {
packages.x86_64-linux.hello = nixpkgs.legacyPackages.x86_64-linux.hello;
packages.x86_64-linux.default = self.packages.x86_64-linux.hello;
};
}