Merge pull request #270774 from emilytrau/libbacktrace-musl
[NixPkgs.git] / pkgs / top-level / release-python.nix
blob33080d5620f07e8b13cbdea84271918031f0496e
1 /*
2    test for example like this
3    $ hydra-eval-jobs pkgs/top-level/release-python.nix
4 */
6 { # The platforms for which we build Nixpkgs.
7   supportedSystems ? [
8     "aarch64-linux"
9     "x86_64-linux"
10   ]
11 , # Attributes passed to nixpkgs. Don't build packages marked as unfree.
12   nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; }; }
15 with import ./release-lib.nix {inherit supportedSystems nixpkgsArgs; };
16 with lib;
18 let
19   packagePython = mapAttrs (name: value:
20     let res = builtins.tryEval (
21       if isDerivation value then
22         value.meta.isBuildPythonPackage or []
23       else if value.recurseForDerivations or false || value.recurseForRelease or false then
24         packagePython value
25       else
26         []);
27     in lib.optionals res.success res.value
28     );
30   jobs = {
31     lib-tests = import ../../lib/tests/release.nix { inherit pkgs; };
32     pkgs-lib-tests = import ../pkgs-lib/tests { inherit pkgs; };
34     tested = pkgs.releaseTools.aggregate {
35       name = "python-tested";
36       meta.description = "Release-critical packages from the python package sets";
37       constituents = [
38         jobs.nixos-render-docs.x86_64-linux              # Used in nixos manual
39         jobs.remarshal.x86_64-linux                      # Used in pkgs.formats helper
40         jobs.python311Packages.buildcatrust.x86_64-linux # Used in pkgs.cacert
41         jobs.python311Packages.colorama.x86_64-linux     # Used in nixos test-driver
42         jobs.python311Packages.ptpython.x86_64-linux     # Used in nixos test-driver
43         jobs.python311Packages.requests.x86_64-linux     # Almost ubiquous package
44         jobs.python311Packages.sphinx.x86_64-linux       # Document creation for many packages
45       ];
46     };
48   } // (mapTestOn (packagePython pkgs));
49 in jobs