uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
119
pkgs/development/python-modules/buildbot/default.nix
Normal file
119
pkgs/development/python-modules/buildbot/default.nix
Normal file
|
|
@ -0,0 +1,119 @@
|
|||
{ stdenv, lib, buildPythonPackage, fetchpatch, fetchPypi, makeWrapper, isPy3k
|
||||
, python, twisted, jinja2, msgpack, zope_interface, sqlalchemy, alembic
|
||||
, python-dateutil, txaio, autobahn, pyjwt, pyyaml, treq, txrequests, pypugjs
|
||||
, boto3, moto, mock, lz4, setuptoolsTrial
|
||||
, buildbot-worker, buildbot-pkg, buildbot-plugins, parameterized, git, openssh
|
||||
, glibcLocales
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
let
|
||||
withPlugins = plugins: buildPythonPackage {
|
||||
pname = "${package.pname}-with-plugins";
|
||||
inherit (package) version;
|
||||
|
||||
dontUnpack = true;
|
||||
dontBuild = true;
|
||||
doCheck = false;
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
propagatedBuildInputs = plugins ++ package.propagatedBuildInputs;
|
||||
|
||||
installPhase = ''
|
||||
makeWrapper ${package}/bin/buildbot $out/bin/buildbot \
|
||||
--prefix PYTHONPATH : "${package}/${python.sitePackages}:$PYTHONPATH"
|
||||
ln -sfv ${package}/lib $out/lib
|
||||
'';
|
||||
|
||||
passthru = package.passthru // {
|
||||
withPlugins = morePlugins: withPlugins (morePlugins ++ plugins);
|
||||
};
|
||||
};
|
||||
|
||||
package = buildPythonPackage rec {
|
||||
pname = "buildbot";
|
||||
version = "3.5.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-woGHdCan5qTp00toNkWa821EgVQMrPK+OWXoqFcgIDQ=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
# core
|
||||
twisted
|
||||
jinja2
|
||||
msgpack
|
||||
zope_interface
|
||||
sqlalchemy
|
||||
alembic
|
||||
python-dateutil
|
||||
txaio
|
||||
autobahn
|
||||
pyjwt
|
||||
pyyaml
|
||||
]
|
||||
# tls
|
||||
++ twisted.optional-dependencies.tls;
|
||||
|
||||
checkInputs = [
|
||||
treq
|
||||
txrequests
|
||||
pypugjs
|
||||
boto3
|
||||
moto
|
||||
mock
|
||||
lz4
|
||||
setuptoolsTrial
|
||||
buildbot-worker
|
||||
buildbot-pkg
|
||||
buildbot-plugins.www
|
||||
parameterized
|
||||
git
|
||||
openssh
|
||||
glibcLocales
|
||||
];
|
||||
|
||||
patches = [
|
||||
# This patch disables the test that tries to read /etc/os-release which
|
||||
# is not accessible in sandboxed builds.
|
||||
./skip_test_linux_distro.patch
|
||||
(fetchpatch{
|
||||
url = "https://github.com/buildbot/buildbot/commit/54b8f62902122b0091319a96d0f9edd4195ab4c6.patch";
|
||||
stripLen = 1;
|
||||
sha256 = "sha256-OqW3ZQK0bfqPG3YlrBbrSEEKsM/XqY2NO862ZD/DgHs=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace buildbot/scripts/logwatcher.py --replace '/usr/bin/tail' "$(type -P tail)"
|
||||
'';
|
||||
|
||||
# TimeoutErrors on slow machines -> aarch64
|
||||
doCheck = !stdenv.isAarch64;
|
||||
|
||||
preCheck = ''
|
||||
export LC_ALL="en_US.UTF-8"
|
||||
export PATH="$out/bin:$PATH"
|
||||
|
||||
# remove testfile which is missing configuration file from sdist
|
||||
rm buildbot/test/integration/test_graphql.py
|
||||
'';
|
||||
|
||||
disabled = !isPy3k;
|
||||
|
||||
passthru = {
|
||||
inherit withPlugins;
|
||||
tests.buildbot = nixosTests.buildbot;
|
||||
updateScript = ./update.sh;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
broken = stdenv.isDarwin;
|
||||
homepage = "https://buildbot.net/";
|
||||
description = "An open-source continuous integration framework for automating software build, test, and release processes";
|
||||
maintainers = with maintainers; [ ryansydnor lopsided98 ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
};
|
||||
in package
|
||||
31
pkgs/development/python-modules/buildbot/pkg.nix
Normal file
31
pkgs/development/python-modules/buildbot/pkg.nix
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
{ lib, buildPythonPackage, fetchPypi, isPy3k, buildbot }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "buildbot-pkg";
|
||||
inherit (buildbot) version;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-CYbMixfZZ1xypV0J7TW54n/fja9RGMlWiF7StJYFnqM=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# Their listdir function filters out `node_modules` folders.
|
||||
# Do we have to care about that with Nix...?
|
||||
substituteInPlace buildbot_pkg.py --replace "os.listdir = listdir" ""
|
||||
'';
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
pythonImportsCheck = [ "buildbot_pkg" ];
|
||||
|
||||
disabled = !isPy3k;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://buildbot.net/";
|
||||
description = "Buildbot Packaging Helper";
|
||||
maintainers = with maintainers; [ ryansydnor lopsided98 ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
}
|
||||
118
pkgs/development/python-modules/buildbot/plugins.nix
Normal file
118
pkgs/development/python-modules/buildbot/plugins.nix
Normal file
|
|
@ -0,0 +1,118 @@
|
|||
{ lib, buildPythonPackage, fetchPypi, buildbot-pkg, mock }:
|
||||
|
||||
{
|
||||
www = buildPythonPackage rec {
|
||||
pname = "buildbot-www";
|
||||
inherit (buildbot-pkg) version;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-boa/MWi/HAhNU3/n96i0fuoQ+jT5I+dWoe1Zd7f/Yvs=";
|
||||
};
|
||||
|
||||
# Remove unneccessary circular dependency on buildbot
|
||||
postPatch = ''
|
||||
sed -i "s/'buildbot'//" setup.py
|
||||
'';
|
||||
|
||||
buildInputs = [ buildbot-pkg mock ];
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://buildbot.net/";
|
||||
description = "Buildbot UI";
|
||||
maintainers = with maintainers; [ ryansydnor lopsided98 ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
};
|
||||
|
||||
console-view = buildPythonPackage rec {
|
||||
pname = "buildbot-console-view";
|
||||
inherit (buildbot-pkg) version;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-NUDTwgkQuasOlJxNTlvfIm99LNVCrRIdBmgeJnwkSU8=";
|
||||
};
|
||||
|
||||
buildInputs = [ buildbot-pkg ];
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://buildbot.net/";
|
||||
description = "Buildbot Console View Plugin";
|
||||
maintainers = with maintainers; [ ryansydnor lopsided98 ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
};
|
||||
|
||||
waterfall-view = buildPythonPackage rec {
|
||||
pname = "buildbot-waterfall-view";
|
||||
inherit (buildbot-pkg) version;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-EmiIDCG4iFIwFnwii8fjII7C7wsBifzeZeW7HyY04dE=";
|
||||
};
|
||||
|
||||
buildInputs = [ buildbot-pkg ];
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://buildbot.net/";
|
||||
description = "Buildbot Waterfall View Plugin";
|
||||
maintainers = with maintainers; [ ryansydnor lopsided98 ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
};
|
||||
|
||||
grid-view = buildPythonPackage rec {
|
||||
pname = "buildbot-grid-view";
|
||||
inherit (buildbot-pkg) version;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-QcS8QJ17uzDvkynTczj05LojuIT6feGiQNCwCESbVLw=";
|
||||
};
|
||||
|
||||
buildInputs = [ buildbot-pkg ];
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://buildbot.net/";
|
||||
description = "Buildbot Grid View Plugin";
|
||||
maintainers = with maintainers; [ lopsided98 ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
};
|
||||
|
||||
wsgi-dashboards = buildPythonPackage rec {
|
||||
pname = "buildbot-wsgi-dashboards";
|
||||
inherit (buildbot-pkg) version;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-U9ecRxpDowzjD4GsrW4FUHcbNaWeAFGKDlqMrbIoTrQ=";
|
||||
};
|
||||
|
||||
buildInputs = [ buildbot-pkg ];
|
||||
|
||||
# No tests
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://buildbot.net/";
|
||||
description = "Buildbot WSGI dashboards Plugin";
|
||||
maintainers = with maintainers; [ lopsided98 ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
diff -Nur buildbot-0.9.6/buildbot/test/unit/test_buildbot_net_usage_data.py buildbot-0.9.6.patched/buildbot/test/unit/test_buildbot_net_usage_data.py
|
||||
--- buildbot-0.9.6/buildbot/test/unit/test_buildbot_net_usage_data.py 2017-04-19 16:57:02.000000000 +0200
|
||||
+++ buildbot-0.9.6.patched/buildbot/test/unit/test_buildbot_net_usage_data.py 2017-05-04 12:22:54.575762551 +0200
|
||||
@@ -147,6 +147,7 @@
|
||||
_sendBuildbotNetUsageData({'foo': 'bar'})
|
||||
|
||||
def test_linux_distro(self):
|
||||
+ raise SkipTest("NixOS sandboxed builds hides /etc/os-release")
|
||||
system = platform.system()
|
||||
if system != "Linux":
|
||||
raise SkipTest("test is only for linux")
|
||||
12
pkgs/development/python-modules/buildbot/update.sh
Executable file
12
pkgs/development/python-modules/buildbot/update.sh
Executable file
|
|
@ -0,0 +1,12 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p nix-update
|
||||
set -eu -o pipefail
|
||||
|
||||
nix-update python3Packages.buildbot
|
||||
nix-update --version=skip python3Packages.buildbot-worker
|
||||
nix-update --version=skip python3Packages.buildbot-pkg
|
||||
nix-update --version=skip python3Packages.buildbot-plugins.www
|
||||
nix-update --version=skip python3Packages.buildbot-plugins.console-view
|
||||
nix-update --version=skip python3Packages.buildbot-plugins.waterfall-view
|
||||
nix-update --version=skip python3Packages.buildbot-plugins.grid-view
|
||||
nix-update --version=skip python3Packages.buildbot-plugins.wsgi-dashboards
|
||||
66
pkgs/development/python-modules/buildbot/worker.nix
Normal file
66
pkgs/development/python-modules/buildbot/worker.nix
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, buildbot
|
||||
|
||||
# patch
|
||||
, coreutils
|
||||
|
||||
# propagates
|
||||
, autobahn
|
||||
, future
|
||||
, msgpack
|
||||
, twisted
|
||||
|
||||
# tests
|
||||
, mock
|
||||
, parameterized
|
||||
, psutil
|
||||
, setuptoolsTrial
|
||||
|
||||
# passthru
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
buildPythonPackage (rec {
|
||||
pname = "buildbot-worker";
|
||||
inherit (buildbot) version;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-HZH3TdH5dhr3f6ev25O3SgPPNbiFGMmAp9DHwcb/2MA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace buildbot_worker/scripts/logwatcher.py \
|
||||
--replace /usr/bin/tail "${coreutils}/bin/tail"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
setuptoolsTrial
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
autobahn
|
||||
future
|
||||
msgpack
|
||||
twisted
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
mock
|
||||
parameterized
|
||||
psutil
|
||||
];
|
||||
|
||||
passthru.tests = {
|
||||
smoke-test = nixosTests.buildbot;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://buildbot.net/";
|
||||
description = "Buildbot Worker Daemon";
|
||||
maintainers = with maintainers; [ ryansydnor lopsided98 ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
})
|
||||
Loading…
Add table
Add a link
Reference in a new issue