diff options
Diffstat (limited to 'default.nix')
-rw-r--r-- | default.nix | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/default.nix b/default.nix new file mode 100644 index 0000000..a6feeb4 --- /dev/null +++ b/default.nix @@ -0,0 +1,47 @@ +{ nixpkgs, declInput }: let pkgs = import nixpkgs {}; in { + # this file generates the spec.json file which contains all the jobs + # a job set may be all the hosts of a user of stockholm + + # what we need to get here is for each host we want to build the "input" + # from its source.nix and add them to the "inputs" field + # in addition to that we need to define how a system is built inside the + # "local" release.nix + + # nixexprinput points to the path expression which should be used for evaluation + # nixexprpath is the file which will be built. + # that means in best case we should be able to use default.nix from + # <stockholm> after nixos-config is set! + + jobsets = pkgs.runCommand "spec.json" {} '' + cat <<EOF + ${builtins.toXML declInput} + EOF + cat > $out <<EOF + { + "makefu/x.r": { + "enabled": 1, + "hidden": false, + "description": "js", + "nixexprinput": "src", + "nixexprpath": "host.nix", + "checkinterval": 15, + "schedulingshares": 100, + "enableemail": false, + "emailoverride": "", + "keepnr": 3, + "inputs": { + "src": { "type": "git", "value": "http://cgit.euer.krebsco.de/hydra-stockholm", "emailresponsible": false }, + "stockholm": { "type": "git", "value": "http://cgit.krebsco.de/stockholm", "emailresponsible": false }, + "nixpkgs": { "type": "git", "value": "https://github.com/makefu/nixpkgs 51810e0", "emailresponsible": false }, + "nixos-hardware": { "type": "git", "value": "https://github.com/nixos/nixos-hardware.git 8a05dc9", "emailresponsible": false }, + "python": { "type": "git", "value": "https://github.com/garbas/nixpkgs-python cac319b", "emailresponsible": false }, + "nixos-config": { "type": "path", "value": "<stockholm/makefu/1systems/x/config.nix>", "emailresponsible": false }, + "secrets": { "type": "path", "value": "<stockholm/makefu/6tests/data/secrets>", "emailresponsible": false }, + "host" { "type": "string", "value": "x", "emailresponsible": false }, + "owner" { "type": "string", "value": "makefu", "emailresponsible": false } + } + } + } + EOF + ''; +} |