Build overriden python packages too

This commit is contained in:
Tyson Whitehead
2018-08-21 15:37:06 -04:00
parent ffc812c681
commit c2c217660b

View File

@@ -92,7 +92,29 @@ in let
# jobs - The jobs hydra is to run. # jobs - The jobs hydra is to run.
# #
jobs = { jobs =
let
# Extract the valid derivations from an overlay
#
# nameSet - the attribute set the uncomposed overlay (just the names are required)
# valueSet - the final attribute from the composed overlay (the values are required)
#
extractDerivations = valueSet: nameSet:
builtins.listToAttrs
( builtins.map
( name: { inherit name; value = valueSet.${name}; } )
( pkgs.lib.filter
( name: pkgs.lib.isDerivation valueSet.${name} )
( pkgs.lib.attrNames nameSet ) ) );
# Provided overlays
pkgsNamesTopLevel = let self = import ./pkgs/all-packages.nix self { } self; in self;
pkgsNamesPython = let self = import ./pkgs/python-packages.nix { } self { } ; in self;
temporaryNamesTopLevel = let self = import ./temporary/all-temporary.nix self { } self; in self;
temporaryNamesPython = let self = import ./temporary/python-packages.nix { } self { } ; in self;
in {
# Tweak the nixos make-channel code to include the upstream channel. # Tweak the nixos make-channel code to include the upstream channel.
# #
# 1. Replace the git repo nixpkgs with a copy of the unpacked nixpkgs channel. # 1. Replace the git repo nixpkgs with a copy of the unpacked nixpkgs channel.
@@ -115,9 +137,7 @@ in let
tested = pkgs.lib.hydraJob (pkgs.releaseTools.aggregate { tested = pkgs.lib.hydraJob (pkgs.releaseTools.aggregate {
name = "ccpkgs-${version}"; name = "ccpkgs-${version}";
constituents = constituents = builtins.map ( pkgs.lib.collect pkgs.lib.isDerivation ) [ jobs.pkgs jobs.temporary ];
builtins.attrValues jobs.pkgs
++ builtins.attrValues jobs.temporary;
meta = { meta = {
description = "Release-critical builds for the ccpkgs channel"; description = "Release-critical builds for the ccpkgs channel";
@@ -127,19 +147,18 @@ in let
# pkgs - Attribute set of overlayed pkgs. # pkgs - Attribute set of overlayed pkgs.
# #
pkgs = pkgs = extractDerivations pkgs pkgsNamesTopLevel // {
builtins.listToAttrs python2Packages = extractDerivations pkgs.python2Packages pkgsNamesPython;
( builtins.map ( name: { inherit name; value = pkgs.${name}; } ) python3Packages = extractDerivations pkgs.python3Packages pkgsNamesPython;
( builtins.filter ( name: builtins.isAttrs pkgs.${name} && pkgs.${name}.type or "" == "derivation" ) };
( builtins.attrNames ( let self = import ./pkgs/all-packages.nix self { } self; in self ) ) ) );
# temporary - Attribute set of overlayed pkgs. # temporary - Attribute set of overlayed pkgs.
# #
temporary = temporary = extractDerivations pkgs temporaryNamesTopLevel // {
builtins.listToAttrs python2Packages = extractDerivations pkgs.python2Packages temporaryNamesPython;
( map ( name: { inherit name; value = pkgs.${name}; } ) python3Packages = extractDerivations pkgs.python3Packages temporaryNamesPython;
( builtins.filter ( name: builtins.isAttrs pkgs.${name} && pkgs.${name}.type or "" == "derivation" ) };
( builtins.attrNames ( let self = import ./temporary/all-temporary.nix self { } self; in self ) ) ) );
}; };
in jobs in jobs