diff options
author | lassulus <lassulus@lassul.us> | 2017-07-25 23:15:59 +0200 |
---|---|---|
committer | lassulus <lassulus@lassul.us> | 2017-07-25 23:15:59 +0200 |
commit | 69b58e1c75f8596a2bc6a46c4b16c29afde2ae93 (patch) | |
tree | 2ee3614f1d8c06268ead11931295ff4bdf25dcd7 | |
parent | 38b375338f4a7e4d81533e2bf3759c632b9bee80 (diff) | |
parent | 80d72a7243408cfd1e31011f1f67a03fd4f27cc8 (diff) |
Merge remote-tracking branch 'gum/master' into HEAD
-rw-r--r-- | krebs/3modules/buildbot/master.nix | 16 | ||||
-rw-r--r-- | krebs/3modules/buildbot/slave.nix | 17 | ||||
-rw-r--r-- | krebs/5pkgs/simple/buildbot-slave/default.nix | 65 | ||||
-rw-r--r-- | krebs/5pkgs/simple/buildbot/default.nix | 70 |
4 files changed, 30 insertions, 138 deletions
diff --git a/krebs/3modules/buildbot/master.nix b/krebs/3modules/buildbot/master.nix index 432b93b05..12c685b82 100644 --- a/krebs/3modules/buildbot/master.nix +++ b/krebs/3modules/buildbot/master.nix @@ -2,8 +2,22 @@ with import <stockholm/lib>; let + # https://github.com/NixOS/nixpkgs/issues/14026 + nixpkgs-fix = import (pkgs.fetchgit { + url = https://github.com/nixos/nixpkgs; + rev = "e026b5c243ea39810826e68362718f5d703fb5d0"; + sha256 = "11lqd480bi6xbi7xbh4krrxmbp6a6iafv1d0q3sj461al0x0has8"; + }) {}; + + buildbot = nixpkgs-fix.buildbot.overrideDerivation (old: { + postUnpack = "sourceRoot=\${sourceRoot}/master"; + patches = []; + src = pkgs.fetchFromGitHub { + owner = "krebscode"; + repo = "buildbot-classic"; + rev = "5b4f5f6f1"; + sha256 = "1j3xn1gjzvsf90jvfmyln71fzlhjx642ivrqf47zfxpkacljja93"; };}); - buildbot = pkgs.buildbot; buildbot-master-config = pkgs.writeText "buildbot-master.cfg" '' # -*- python -*- from buildbot.plugins import * diff --git a/krebs/3modules/buildbot/slave.nix b/krebs/3modules/buildbot/slave.nix index e93c190dc..698bf3bcd 100644 --- a/krebs/3modules/buildbot/slave.nix +++ b/krebs/3modules/buildbot/slave.nix @@ -2,7 +2,20 @@ with import <stockholm/lib>; let - + # https://github.com/NixOS/nixpkgs/issues/14026 + nixpkgs-fix = import (pkgs.fetchgit { + url = https://github.com/nixos/nixpkgs; + rev = "e026b5c243ea39810826e68362718f5d703fb5d0"; + sha256 = "11lqd480bi6xbi7xbh4krrxmbp6a6iafv1d0q3sj461al0x0has8"; + }) {}; + pkg = nixpkgs-fix.buildbot-slave.overrideDerivation (old: { + postUnpack = "sourceRoot=\${sourceRoot}/slave"; + patches = []; + src = pkgs.fetchFromGitHub { + owner = "krebscode"; + repo = "buildbot-classic"; + rev = "5b4f5f6f1"; + sha256 = "1j3xn1gjzvsf90jvfmyln71fzlhjx642ivrqf47zfxpkacljja93"; };}); buildbot-slave-init = pkgs.writeText "buildbot-slave.tac" '' import os @@ -153,7 +166,7 @@ let workdir = shell.escape cfg.workDir; contact = shell.escape cfg.contact; description = shell.escape cfg.description; - buildbot = pkgs.buildbot-slave; + buildbot = pkg; # TODO:make this in { PermissionsStartOnly = true; diff --git a/krebs/5pkgs/simple/buildbot-slave/default.nix b/krebs/5pkgs/simple/buildbot-slave/default.nix deleted file mode 100644 index a2a01f685..000000000 --- a/krebs/5pkgs/simple/buildbot-slave/default.nix +++ /dev/null @@ -1,65 +0,0 @@ -{ stdenv, python2Packages, fetchFromGitHub, coreutils }: - -python2Packages.buildPythonApplication (rec { - name = "buildbot-slave-classic-2017-07-23"; - - src = fetchFromGitHub { - owner = "krebscode"; - repo = "buildbot-classic"; - rev = "38b780ee6ceee346686f76eba363d98204b73d24"; - sha256 = "0sn0clrbkdnryyiwhrm8an53k3awwbj6m9cz8zj1jz8qdggd9fff"; - }; - - postUnpack = "sourceRoot=\${sourceRoot}/slave"; - - propagatedBuildInputs = with python2Packages; [ twisted pathlib ]; - - # What's up with this?! 'trial' should be 'test', no? - # - # running tests - # usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] - # or: setup.py --help [cmd1 cmd2 ...] - # or: setup.py --help-commands - # or: setup.py cmd --help - # - # error: invalid command 'trial' - doCheck = false; - - postInstall = '' - mkdir -p "$out/share/man/man1" - cp docs/buildslave.1 "$out/share/man/man1" - ''; - - meta = with stdenv.lib; { - homepage = http://buildbot.net/; - - license = stdenv.lib.licenses.gpl2Plus; - - description = "Continuous integration system that automates the build/test cycle"; - - longDescription = - '' The BuildBot is a system to automate the compile/test cycle - required by most software projects to validate code changes. By - automatically rebuilding and testing the tree each time something - has changed, build problems are pinpointed quickly, before other - developers are inconvenienced by the failure. The guilty - developer can be identified and harassed without human - intervention. By running the builds on a variety of platforms, - developers who do not have the facilities to test their changes - everywhere before checkin will at least know shortly afterwards - whether they have broken the build or not. Warning counts, lint - checks, image size, compile time, and other build parameters can - be tracked over time, are more visible, and are therefore easier - to improve. - - The overall goal is to reduce tree breakage and provide a platform - to run tests or code-quality checks that are too annoying or - pedantic for any human to waste their time with. Developers get - immediate (and potentially public) feedback about their changes, - encouraging them to be more careful about testing before checking - in code. - ''; - maintainers = with maintainers; [ bjornfor ]; - platforms = platforms.all; - }; -}) diff --git a/krebs/5pkgs/simple/buildbot/default.nix b/krebs/5pkgs/simple/buildbot/default.nix deleted file mode 100644 index dc9d331a4..000000000 --- a/krebs/5pkgs/simple/buildbot/default.nix +++ /dev/null @@ -1,70 +0,0 @@ -{ stdenv, python2Packages, fetchFromGitHub -, enableDebugClient ? false -}: - -# enableDebugClient enables "buildbot debugclient", a Gtk-based debug control -# panel. Its mostly for developers. - -assert enableDebugClient -> python2Packages.pygobject != null && python2Packages.pyGtkGlade != null; - -with python2Packages; buildPythonApplication (rec { - name = "buildbot-classic-2017-07-23"; - - src = fetchFromGitHub { - owner = "krebscode"; - repo = "buildbot-classic"; - rev = "38b780ee6ceee346686f76eba363d98204b73d24"; - sha256 = "0sn0clrbkdnryyiwhrm8an53k3awwbj6m9cz8zj1jz8qdggd9fff"; - }; - - propagatedBuildInputs = - [ twisted dateutil jinja2 sqlalchemy_migrate pathlib - ] ++ stdenv.lib.optional enableDebugClient [ pygobject pyGtkGlade ]; - postUnpack = "sourceRoot=\${sourceRoot}/master"; - # What's up with this?! 'trial' should be 'test', no? - # - # running tests - # usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] - # or: setup.py --help [cmd1 cmd2 ...] - # or: setup.py --help-commands - # or: setup.py cmd --help - # - # error: invalid command 'trial' - doCheck = false; - - postInstall = '' - mkdir -p "$out/share/man/man1" - cp docs/buildbot.1 "$out/share/man/man1" - ''; - - meta = with stdenv.lib; { - homepage = http://buildbot.net/; - license = stdenv.lib.licenses.gpl2Plus; - # Of course, we don't really need that on NixOS. :-) - description = "Continuous integration system that automates the build/test cycle"; - longDescription = - '' The BuildBot is a system to automate the compile/test cycle - required by most software projects to validate code changes. By - automatically rebuilding and testing the tree each time something - has changed, build problems are pinpointed quickly, before other - developers are inconvenienced by the failure. The guilty - developer can be identified and harassed without human - intervention. By running the builds on a variety of platforms, - developers who do not have the facilities to test their changes - everywhere before checkin will at least know shortly afterwards - whether they have broken the build or not. Warning counts, lint - checks, image size, compile time, and other build parameters can - be tracked over time, are more visible, and are therefore easier - to improve. - - The overall goal is to reduce tree breakage and provide a platform - to run tests or code-quality checks that are too annoying or - pedantic for any human to waste their time with. Developers get - immediate (and potentially public) feedback about their changes, - encouraging them to be more careful about testing before checking - in code. - ''; - maintainers = with maintainers; [ bjornfor ]; - platforms = platforms.all; - }; -}) |