diff options
author | Antoine Eiche <lewo@abesis.fr> | 2019-02-16 00:40:34 +0100 |
---|---|---|
committer | Antoine Eiche <lewo@abesis.fr> | 2019-02-16 00:50:23 +0100 |
commit | da7cd82ab1a7c4134425dbdc91c98b9f0a69abc6 (patch) | |
tree | 1de5678d4eec7cd8b850cbe165cba1a8323d1e4f | |
parent | 8568f68e612d203c54c14f39f38350d0043364b6 (diff) | |
download | nixlib-da7cd82ab1a7c4134425dbdc91c98b9f0a69abc6.tar nixlib-da7cd82ab1a7c4134425dbdc91c98b9f0a69abc6.tar.gz nixlib-da7cd82ab1a7c4134425dbdc91c98b9f0a69abc6.tar.bz2 nixlib-da7cd82ab1a7c4134425dbdc91c98b9f0a69abc6.tar.lz nixlib-da7cd82ab1a7c4134425dbdc91c98b9f0a69abc6.tar.xz nixlib-da7cd82ab1a7c4134425dbdc91c98b9f0a69abc6.tar.zst nixlib-da7cd82ab1a7c4134425dbdc91c98b9f0a69abc6.zip |
dockerTools.buildImage: preserve layers ordering at image repacking
This patch preserves the ordering of layers of a parent image when the new image is packed. It is currently not the case: layers are stacked in the reverse order. Fixes #55290
-rw-r--r-- | pkgs/build-support/docker/default.nix | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix index 83ff846db7ab..f59900ab7596 100644 --- a/pkgs/build-support/docker/default.nix +++ b/pkgs/build-support/docker/default.nix @@ -776,7 +776,7 @@ rec { imageJson=$(cat ${baseJson} | jq ". + {\"rootfs\": {\"diff_ids\": [], \"type\": \"layers\"}}") manifestJson=$(jq -n "[{\"RepoTags\":[\"$imageName:$imageTag\"]}]") - for layerTar in $(cat ./layer-list); do + for layerTar in $(tac ./layer-list); do layerChecksum=$(sha256sum image/$layerTar | cut -d ' ' -f1) imageJson=$(echo "$imageJson" | jq ".history |= [{\"created\": \"$(jq -r .created ${baseJson})\"}] + .") imageJson=$(echo "$imageJson" | jq ".rootfs.diff_ids |= [\"sha256:$layerChecksum\"] + .") |