summaryrefslogtreecommitdiffstats
path: root/shared/2configs/shared-buildbot.nix
diff options
context:
space:
mode:
Diffstat (limited to 'shared/2configs/shared-buildbot.nix')
-rw-r--r--shared/2configs/shared-buildbot.nix65
1 files changed, 45 insertions, 20 deletions
diff --git a/shared/2configs/shared-buildbot.nix b/shared/2configs/shared-buildbot.nix
index ebf5f4a1..b474af7b 100644
--- a/shared/2configs/shared-buildbot.nix
+++ b/shared/2configs/shared-buildbot.nix
@@ -7,6 +7,11 @@
# TODO for all users schedule a build for fast tests
{
+ # due to the fact that we actually build stuff on the box via the daemon,
+ # /nix/store should be cleaned up automatically as well
+ nix.gc.automatic = true;
+ nix.gc.dates = "05:23";
+
networking.firewall.allowedTCPPorts = [ 8010 9989 ];
krebs.buildbot.master = let
stockholm-mirror-url = http://cgit.wolf/stockholm-mirror ;
@@ -27,7 +32,7 @@
force-scheduler = ''
sched.append(schedulers.ForceScheduler(
name="force",
- builderNames=["full-tests","fast-tests"]))
+ builderNames=["full-tests","fast-tests","build-local"]))
'';
fast-tests-scheduler = ''
# test everything real quick
@@ -35,7 +40,7 @@
## all branches
change_filter=util.ChangeFilter(branch_re=".*"),
# treeStableTimer=10,
- name="fast-test-all-branches",
+ name="fast-all-branches",
builderNames=["fast-tests"]))
'';
test-cac-infest-master = ''
@@ -51,8 +56,8 @@
change_filter=util.ChangeFilter(branch="master"),
fileIsImportant=shared_files,
treeStableTimer=60*60, # master was stable for the last hour
- name="full-master-test",
- builderNames=["full-tests"]))
+ name="full-master",
+ builderNames=["full-tests","build-local"]))
'';
};
builder_pre = ''
@@ -69,7 +74,7 @@
# SSL_CERT_FILE,LOGNAME,NIX_REMOTE
nixshell = ["nix-shell",
"-I", "stockholm=.",
- "-I", "nixpkgs=/var/src/upstream-nixpkgs",
+ "-I", "nixpkgs=/var/src/nixpkgs",
"-p" ] + deps + [ "--run" ]
# prepare addShell function
@@ -90,26 +95,46 @@
addShell(f,name="instantiate-test-all-modules",env=env,
command=nixshell + \
["touch retiolum.rsa_key.priv; \
- nix-instantiate --eval -A \
- users.shared.test-all-krebs-modules.system \
- -I stockholm=. \
- --show-trace \
- -I secrets=. '<stockholm>' \
- --strict --json"])
-
- addShell(f,name="instantiate-test-minimal-deploy",env=env,
+ nix-instantiate \
+ --show-trace --eval --strict --json \
+ -I nixos-config=./shared/1systems/test-all-krebs-modules.nix \
+ -I secrets=. \
+ -A config.system.build.toplevel"]
+ )
+
+ addShell(f,name="build-test-minimal",env=env,
command=nixshell + \
- ["nix-instantiate --eval -A \
- users.shared.test-minimal-deploy.system \
- -I stockholm=. \
- -I secrets=. '<stockholm>' \
- --show-trace \
- --strict --json"])
+ ["nix-instantiate \
+ --show-trace --eval --strict --json \
+ -I nixos-config=./shared/1systems/test-minimal-deploy.nix \
+ -I secrets=. \
+ -A config.system.build.toplevel"]
+ )
bu.append(util.BuilderConfig(name="fast-tests",
slavenames=slavenames,
factory=f))
'';
+ # this build will try to build against local nixpkgs
+ # TODO change to do a 'local' populate and use the retrieved nixpkgs
+ build-local = ''
+ f = util.BuildFactory()
+ f.addStep(grab_repo)
+
+ addShell(f,name="build-test-all-modules",env=env,
+ command=nixshell + \
+ ["touch retiolum.rsa_key.priv; \
+ nix-build \
+ --show-trace --no-out-link \
+ -I nixos-config=./shared/1systems/test-all-krebs-modules.nix \
+ -I secrets=. \
+ -A config.system.build.toplevel"]
+ )
+
+ bu.append(util.BuilderConfig(name="build-local",
+ slavenames=slavenames,
+ factory=f))
+ '';
slow-tests = ''
s = util.BuildFactory()
s.addStep(grab_repo)
@@ -151,6 +176,6 @@
packages = with pkgs;[ git nix ];
# all nix commands will need a working nixpkgs installation
extraEnviron = {
- NIX_PATH="nixpkgs=/var/src/upstream-nixpkgs:nixos-config=./shared/1systems/wolf.nix"; };
+ NIX_PATH="nixpkgs=/var/src/nixpkgs:nixos-config=./shared/1systems/wolf.nix"; };
};
}