fetchgit: shallow clone for submodules (#254172)
This commit is contained in:
parent
6c35e00bfa
commit
d6e1c7cae6
2 changed files with 51 additions and 6 deletions
pkgs/build-support/fetchgit
|
@ -207,6 +207,9 @@ checkout_ref(){
|
||||||
|
|
||||||
# Update submodules
|
# Update submodules
|
||||||
init_submodules(){
|
init_submodules(){
|
||||||
|
# shallow with leaveDotGit will change hashes
|
||||||
|
[[ -z "$deepClone" ]] && [[ -z "$leaveDotGit" ]] && \
|
||||||
|
clean_git submodule update --init --recursive -j ${NIX_BUILD_CORES:-1} --progress --depth 1 || \
|
||||||
clean_git submodule update --init --recursive -j ${NIX_BUILD_CORES:-1} --progress
|
clean_git submodule update --init --recursive -j ${NIX_BUILD_CORES:-1} --progress
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,15 +1,13 @@
|
||||||
{ testers, fetchgit, ... }:
|
{ testers, fetchgit, ... }: {
|
||||||
|
|
||||||
{
|
|
||||||
simple = testers.invalidateFetcherByDrvHash fetchgit {
|
simple = testers.invalidateFetcherByDrvHash fetchgit {
|
||||||
name = "nix-source";
|
name = "simple-nix-source";
|
||||||
url = "https://github.com/NixOS/nix";
|
url = "https://github.com/NixOS/nix";
|
||||||
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
|
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
|
||||||
sha256 = "sha256-7DszvbCNTjpzGRmpIVAWXk20P0/XTrWZ79KSOGLrUWY=";
|
sha256 = "sha256-7DszvbCNTjpzGRmpIVAWXk20P0/XTrWZ79KSOGLrUWY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
sparseCheckout = testers.invalidateFetcherByDrvHash fetchgit {
|
sparseCheckout = testers.invalidateFetcherByDrvHash fetchgit {
|
||||||
name = "nix-source";
|
name = "sparse-checkout-nix-source";
|
||||||
url = "https://github.com/NixOS/nix";
|
url = "https://github.com/NixOS/nix";
|
||||||
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
|
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
|
||||||
sparseCheckout = [
|
sparseCheckout = [
|
||||||
|
@ -20,7 +18,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
sparseCheckoutNonConeMode = testers.invalidateFetcherByDrvHash fetchgit {
|
sparseCheckoutNonConeMode = testers.invalidateFetcherByDrvHash fetchgit {
|
||||||
name = "nix-source";
|
name = "sparse-checkout-non-cone-nix-source";
|
||||||
url = "https://github.com/NixOS/nix";
|
url = "https://github.com/NixOS/nix";
|
||||||
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
|
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
|
||||||
sparseCheckout = [
|
sparseCheckout = [
|
||||||
|
@ -30,4 +28,48 @@
|
||||||
nonConeMode = true;
|
nonConeMode = true;
|
||||||
sha256 = "sha256-FknO6C/PSnMPfhUqObD4vsW4PhkwdmPa9blNzcNvJQ4=";
|
sha256 = "sha256-FknO6C/PSnMPfhUqObD4vsW4PhkwdmPa9blNzcNvJQ4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
leave-git = testers.invalidateFetcherByDrvHash fetchgit {
|
||||||
|
name = "leave-git-nix-source";
|
||||||
|
url = "https://github.com/NixOS/nix";
|
||||||
|
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
|
||||||
|
sha256 = "sha256-zZxDxqaeWvuWuzwPizBLR7d59zP24+zqnWllNICenko=";
|
||||||
|
leaveDotGit = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
submodule-simple = testers.invalidateFetcherByDrvHash fetchgit {
|
||||||
|
name = "submodule-simple-source";
|
||||||
|
url = "https://github.com/pineapplehunter/nix-test-repo-with-submodule";
|
||||||
|
rev = "26473335b84ead88ee0a3b649b1c7fa4a91cfd4a";
|
||||||
|
sha256 = "sha256-rmP8PQT0wJBopdtr/hsB7Y/L1G+ZPdHC2r9LB05Qrj4=";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
submodule-leave-git = testers.invalidateFetcherByDrvHash fetchgit {
|
||||||
|
name = "submodule-leave-git-source";
|
||||||
|
url = "https://github.com/pineapplehunter/nix-test-repo-with-submodule";
|
||||||
|
rev = "26473335b84ead88ee0a3b649b1c7fa4a91cfd4a";
|
||||||
|
sha256 = "sha256-+uXIClcRJ4S1rdgx2Oyww+Jv4h1VXp8tfeh9lb07Fhk=";
|
||||||
|
leaveDotGit = true;
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
submodule-deep = testers.invalidateFetcherByDrvHash fetchgit {
|
||||||
|
name = "submodule-deep-source";
|
||||||
|
url = "https://github.com/pineapplehunter/nix-test-repo-with-submodule";
|
||||||
|
rev = "26473335b84ead88ee0a3b649b1c7fa4a91cfd4a";
|
||||||
|
sha256 = "sha256-LL7uhXQk3N3DcvBBxwjmfVx55tTXCGQ19T91tknopzw=";
|
||||||
|
deepClone = true;
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
submodule-leave-git-deep = testers.invalidateFetcherByDrvHash fetchgit {
|
||||||
|
name = "submodule-leave-git-deep-source";
|
||||||
|
url = "https://github.com/pineapplehunter/nix-test-repo-with-submodule";
|
||||||
|
rev = "26473335b84ead88ee0a3b649b1c7fa4a91cfd4a";
|
||||||
|
sha256 = "sha256-LL7uhXQk3N3DcvBBxwjmfVx55tTXCGQ19T91tknopzw=";
|
||||||
|
deepClone = true;
|
||||||
|
leaveDotGit = true;
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue