3 , buildPythonApplication
6 # Tie withPlugins through the fixed point here, so it will receive an
7 # overridden version properly
47 withPlugins = plugins: buildPythonApplication {
48 pname = "${buildbot.pname}-with-plugins";
49 inherit (buildbot) version;
60 propagatedBuildInputs = plugins ++ buildbot.propagatedBuildInputs;
63 makeWrapper ${buildbot}/bin/buildbot $out/bin/buildbot \
64 --prefix PYTHONPATH : "${buildbot}/${python.sitePackages}:$PYTHONPATH"
65 ln -sfv ${buildbot}/lib $out/lib
68 passthru = buildbot.passthru // {
69 withPlugins = morePlugins: withPlugins (morePlugins ++ plugins);
73 buildPythonApplication rec {
78 disabled = pythonOlder "3.8";
81 inherit pname version;
82 hash = "sha256-ruYW1sVoGvFMi+NS+xiNsn0Iq2RmKlax4bxHgYrj6ZY=";
93 propagatedBuildInputs = [
113 ++ twisted.optional-dependencies.tls;
115 nativeCheckInputs = [
134 # This patch disables the test that tries to read /etc/os-release which
135 # is not accessible in sandboxed builds.
136 ./skip_test_linux_distro.patch
140 substituteInPlace buildbot/scripts/logwatcher.py --replace '/usr/bin/tail' "$(type -P tail)"
143 # Silence the depreciation warning from SqlAlchemy
144 SQLALCHEMY_SILENCE_UBER_WARNING = 1;
146 # TimeoutErrors on slow machines -> aarch64
147 doCheck = !stdenv.isAarch64;
150 export LC_ALL="en_US.UTF-8"
151 export PATH="$out/bin:$PATH"
153 # remove testfile which is missing configuration file from sdist
154 rm buildbot/test/integration/test_graphql.py
155 # tests in this file are flaky, see https://github.com/buildbot/buildbot/issues/6776
156 rm buildbot/test/integration/test_try_client.py
161 tests.buildbot = nixosTests.buildbot;
162 updateScript = ./update.sh;
166 description = "An open-source continuous integration framework for automating software build, test, and release processes";
167 homepage = "https://buildbot.net/";
168 changelog = "https://github.com/buildbot/buildbot/releases/tag/v${version}";
169 maintainers = teams.buildbot.members;
170 license = licenses.gpl2Only;
171 broken = stdenv.isDarwin;