Unverified Commit 9e64f794 authored by Robert Scott's avatar Robert Scott Committed by GitHub
Browse files

Merge pull request #208944 from risicle/ris-dockertools-makeoverridable

dockerTools: use makeOverridable for buildImage family of functions
parents ac08ee94 680dfee1
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -253,6 +253,8 @@ The module update takes care of the new config syntax and the data itself (user

- `programs.gnupg.agent.pinentryFlavor` is now set in `/etc/gnupg/gpg-agent.conf`, and will no longer take precedence over a `pinentry-program` set in `~/.gnupg/gpg-agent.conf`.

- `dockerTools.buildImage`, `dockerTools.buildLayeredImage` and `dockerTools.streamLayeredImage` now use `lib.makeOverridable` to allow `dockerTools`-based images to be customized more efficiently at the nix-level.

- `services.influxdb2` now supports doing an automatic initial setup and provisioning of users, organizations, buckets and authentication tokens, see [#249502](https://github.com/NixOS/nixpkgs/pull/249502) for more details.

- `wrapHelm` now exposes `passthru.pluginsDir` which can be passed to `helmfile`. For convenience, a top-level package `helmfile-wrapped` has been added, which inherits `passthru.pluginsDir` from `kubernetes-helm-wrapped`. See [#217768](https://github.com/NixOS/nixpkgs/issues/217768) for details.
+9 −6
Original line number Diff line number Diff line
@@ -487,7 +487,7 @@ rec {
      '';
    };

  buildLayeredImage = { name, ... }@args:
  buildLayeredImage = lib.makeOverridable ({ name, ... }@args:
    let
      stream = streamLayeredImage args;
    in
@@ -496,7 +496,8 @@ rec {
        inherit (stream) imageName;
        passthru = { inherit (stream) imageTag; };
        nativeBuildInputs = [ pigz ];
      } "${stream} | pigz -nTR > $out";
      } "${stream} | pigz -nTR > $out"
  );

  # 1. extract the base image
  # 2. create the layer
@@ -504,7 +505,7 @@ rec {
  # 4. compute the layer id
  # 5. put the layer in the image
  # 6. repack the image
  buildImage =
  buildImage = lib.makeOverridable (
    args@{
      # Image name.
      name
@@ -751,7 +752,8 @@ rec {
      '';

    in
    checked result;
    checked result
  );

  # Merge the tarballs of images built with buildImage into a single
  # tarball that contains all images. Running `docker load` on the resulting
@@ -837,7 +839,7 @@ rec {
    })
  );

  streamLayeredImage =
  streamLayeredImage = lib.makeOverridable (
    {
      # Image Name
      name
@@ -1046,7 +1048,8 @@ rec {
          makeWrapper ${streamScript} $out --add-flags ${conf}
        '';
      in
      result;
      result
  );

  # This function streams a docker image that behaves like a nix-shell for a derivation
  streamNixShellImage =