summary refs log tree commit diff
path: root/pkgs/build-support/docker/examples.nix
diff options
context:
space:
mode:
authorAntoine Eiche <lewo@abesis.fr>2019-04-30 00:46:00 +0200
committerAntoine Eiche <lewo@abesis.fr>2019-05-07 16:52:13 +0200
commit5ef1223f30f9233ecbaaf75cbd993602570eea64 (patch)
tree6e6866f7bc705309b4742c5a0e537a3dd75a7bc2 /pkgs/build-support/docker/examples.nix
parenta7eef11bb4d9ac863c6dfbb24278ae9053b43322 (diff)
downloadnixpkgs-5ef1223f30f9233ecbaaf75cbd993602570eea64.tar
nixpkgs-5ef1223f30f9233ecbaaf75cbd993602570eea64.tar.gz
nixpkgs-5ef1223f30f9233ecbaaf75cbd993602570eea64.tar.bz2
nixpkgs-5ef1223f30f9233ecbaaf75cbd993602570eea64.tar.lz
nixpkgs-5ef1223f30f9233ecbaaf75cbd993602570eea64.tar.xz
nixpkgs-5ef1223f30f9233ecbaaf75cbd993602570eea64.tar.zst
nixpkgs-5ef1223f30f9233ecbaaf75cbd993602570eea64.zip
nixos/tests/docker-tools: verify order of layers in stacked images
Diffstat (limited to 'pkgs/build-support/docker/examples.nix')
-rw-r--r--pkgs/build-support/docker/examples.nix39
1 files changed, 39 insertions, 0 deletions
diff --git a/pkgs/build-support/docker/examples.nix b/pkgs/build-support/docker/examples.nix
index 557a4dbf54b..ac21be907b8 100644
--- a/pkgs/build-support/docker/examples.nix
+++ b/pkgs/build-support/docker/examples.nix
@@ -187,4 +187,43 @@ rec {
     runAsRoot = "touch /example-file";
     fromImage = bash;
   };
+
+  # 13. example of 3 layers images This image is used to verify the
+  # order of layers is correct.
+  # It allows to validate
+  # - the layer of parent are below
+  # - the order of parent layer is preserved at image build time
+  #   (this is why there are 3 images)
+  layersOrder = let
+    l1 = pkgs.dockerTools.buildImage {
+      name = "l1";
+      tag = "latest";
+      extraCommands = ''
+        mkdir -p tmp
+        echo layer1 > tmp/layer1
+        echo layer1 > tmp/layer2
+        echo layer1 > tmp/layer3
+      '';
+    };
+    l2 = pkgs.dockerTools.buildImage {
+      name = "l2";
+      fromImage = l1;
+      tag = "latest";
+      extraCommands = ''
+        mkdir -p tmp
+        echo layer2 > tmp/layer2
+        echo layer2 > tmp/layer3
+      '';
+    };
+  in pkgs.dockerTools.buildImage {
+    name = "l3";
+    fromImage = l2;
+    tag = "latest";
+    contents = [ pkgs.coreutils ];
+    extraCommands = ''
+      mkdir -p tmp
+      echo layer3 > tmp/layer3
+    '';
+  };
+
 }