diff options
Diffstat (limited to 'lass/2configs/buildbot-standalone.nix')
-rw-r--r-- | lass/2configs/buildbot-standalone.nix | 100 |
1 files changed, 77 insertions, 23 deletions
diff --git a/lass/2configs/buildbot-standalone.nix b/lass/2configs/buildbot-standalone.nix index 1db3ffd1f..12a5a7365 100644 --- a/lass/2configs/buildbot-standalone.nix +++ b/lass/2configs/buildbot-standalone.nix @@ -8,9 +8,6 @@ let ControlPath /tmp/%u_sshmux_%r@%h:%p ControlPersist 4h ''; - sshWrapper = pkgs.writeDash "ssh-wrapper" '' - ${pkgs.openssh}/bin/ssh -F ${sshHostConfig} -i ${shell.escape config.lass.build-ssh-privkey.path} "$@" - ''; in { config.krebs.buildbot.master = let @@ -47,8 +44,8 @@ in { sched.append(schedulers.SingleBranchScheduler( change_filter=util.ChangeFilter(branch_re=".*"), treeStableTimer=10, - name="prism-all-branches", - builderNames=["build-all"])) + name="build-all-branches", + builderNames=["build-all", "build-pkgs"])) ''; }; builder_pre = '' @@ -74,7 +71,7 @@ in { # prepare nix-shell # the dependencies which are used by the test script - deps = [ "gnumake", "jq", "nix", "(import <stockholm>).pkgs.populate" ] + deps = [ "gnumake", "jq", "nix", "(import <stockholm>).pkgs.populate", "openssh" ] # TODO: --pure , prepare ENV in nix-shell command: # SSL_CERT_FILE,LOGNAME,NIX_REMOTE nixshell = ["nix-shell", @@ -93,20 +90,20 @@ in { for i in [ "mors", "uriel", "shodan", "helios", "cloudkrebs", "echelon", "dishfire", "prism" ]: addShell(f,name="build-{}".format(i),env=env_lass, command=nixshell + \ - ["make \ + ["mkdir -p /tmp/testbuild/$LOGNAME && touch /tmp/testbuild/$LOGNAME/.populate; \ + make \ test \ - ssh=${sshWrapper} \ - target=build@localhost${config.users.users.build.home}/testbuild \ + target=$LOGNAME@${config.krebs.build.host.name}/tmp/testbuild/$LOGNAME \ method=build \ system={}".format(i)]) for i in [ "x", "wry", "vbob", "wbob", "shoney" ]: addShell(f,name="build-{}".format(i),env=env_makefu, command=nixshell + \ - ["make \ + ["mkdir -p /tmp/testbuild/$LOGNAME && touch /tmp/testbuild/$LOGNAME/.populate; \ + make \ test \ - ssh=${sshWrapper} \ - target=build@localhost${config.users.users.build.home}/testbuild \ + target=$LOGNAME@${config.krebs.build.host.name}/tmp/testbuild/$LOGNAME \ method=build \ system={}".format(i)]) @@ -114,7 +111,7 @@ in { slavenames=slavenames, factory=f)) - ''; + ''; fast-tests = '' f = util.BuildFactory() @@ -122,37 +119,94 @@ in { for i in [ "mors", "uriel", "shodan", "helios", "cloudkrebs", "echelon", "dishfire", "prism" ]: addShell(f,name="build-{}".format(i),env=env_lass, command=nixshell + \ - ["make \ + ["mkdir -p /tmp/testbuild/$LOGNAME && touch /tmp/testbuild/$LOGNAME/.populate; \ + make \ test \ - ssh=${sshWrapper} \ - target=build@localhost${config.users.users.build.home}/testbuild \ + target=$LOGNAME@${config.krebs.build.host.name}/tmp/testbuild/$LOGNAME \ method=eval \ system={}".format(i)]) for i in [ "x", "wry", "vbob", "wbob", "shoney" ]: addShell(f,name="build-{}".format(i),env=env_makefu, command=nixshell + \ - ["make \ + ["mkdir -p /tmp/testbuild/$LOGNAME && touch /tmp/testbuild/$LOGNAME/.populate; \ + make \ test \ - ssh=${sshWrapper} \ - target=build@localhost${config.users.users.build.home}/testbuild \ + target=$LOGNAME@${config.krebs.build.host.name}/tmp/testbuild/$LOGNAME \ method=eval \ system={}".format(i)]) - for i in [ "test-minimal-deploy" ]: + for i in [ "test-minimal-deploy", "test-all-krebs-modules", "wolf" ]: addShell(f,name="build-{}".format(i),env=env_shared, command=nixshell + \ - ["make \ + ["mkdir -p /tmp/testbuild/$LOGNAME && touch /tmp/testbuild/$LOGNAME/.populate; \ + make \ test \ - ssh=${sshWrapper} \ - target=build@localhost${config.users.users.build.home}/testbuild \ + target=$LOGNAME@${config.krebs.build.host.name}/tmp/testbuild/$LOGNAME \ method=eval \ system={}".format(i)]) bu.append(util.BuilderConfig(name="fast-tests", slavenames=slavenames, factory=f)) + ''; + build-pkgs = '' + f = util.BuildFactory() + f.addStep(grab_repo) + for i in [ + "apt-cacher-ng", + "bepasty-client-cli", + "cac-api", + "cac-cert", + "cac-panel", + "charybdis", + "collectd-connect-time", + "dic", + "drivedroid-gen-repo", + "exim", + "fortclientsslvpn", + "get", + "git-hooks", + "github-hosts-sync", + "go", + "hashPassword", + "haskellPackages.blessings", + "haskellPackages.email-header", + "haskellPackages.megaparsec", + "haskellPackages.scanner", + "haskellPackages.xmonad-stockholm", + "krebspaste", + "krebszones", + "logf", + "much", + "newsbot-js", + "noVNC", + "passwdqc-utils", + "populate", + "posix-array", + "pssh", + "push", + "Reaktor", + "realwallpaper", + "repo-sync", + "retiolum-bootstrap", + "tarantool", + "test", + "tinc_graphs", + "translate-shell", + "urlwatch", + "vncdotool", + "with-tmpdir", + "youtube-tools", + ]: + addShell(f,name="build-{}".format(i),env=env_lass, + command=nixshell + \ + ["mkdir -p /tmp/testbuild/$LOGNAME && touch /tmp/testbuild/$LOGNAME/.populate; \ + make system=prism pkgs.{}".format(i)]) + bu.append(util.BuilderConfig(name="build-pkgs", + slavenames=slavenames, + factory=f)) ''; }; enable = true; |