summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlper Nebi Yasak <alpernebiyasak@gmail.com>2022-08-27 16:39:47 +0300
committerAlper Nebi Yasak <alpernebiyasak@gmail.com>2022-08-27 17:35:55 +0300
commitcf295741650aaffcb03866ab15a0c7175c3dc882 (patch)
tree210b0b39a8ab6d230c5d99d34d6baec9c5818b6e
parentef39e05bb5df505774b42a8739c3e7e57d43dd36 (diff)
download: Use shallow clones for big projects
Downloading coreboot and U-Boot takes quite the disk space and bandwith. We don't need to download entire repos, only the revisions that we are interested in. Use the --depth=1 option to only download the files we need. Since the initial clones may not have our target revision, always try to fetch it. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
-rwxr-xr-xresources/scripts/download/coreboot18
-rwxr-xr-xresources/scripts/download/u-boot22
2 files changed, 20 insertions, 20 deletions
diff --git a/resources/scripts/download/coreboot b/resources/scripts/download/coreboot
index 965c00f6..80fff097 100755
--- a/resources/scripts/download/coreboot
+++ b/resources/scripts/download/coreboot
@@ -152,21 +152,21 @@ downloadfor() {
if [ ! -d coreboot ]; then
printf "Download coreboot from upstream:\n"
- git clone https://review.coreboot.org/coreboot || rm -Rf coreboot
+ git clone --depth=1 https://review.coreboot.org/coreboot || rm -Rf coreboot
if [ ! -d coreboot ]; then
printf "WARNING: Upstream failed. Trying backup github repository:\n"
- git clone https://github.com/coreboot/coreboot.git || rm -Rf coreboot
+ git clone --depth=1 https://github.com/coreboot/coreboot.git || rm -Rf coreboot
fi
if [ ! -d coreboot ]; then
printf "ERROR: download/coreboot: Problem with git-clone. Network issue?\n"
cd ../; return 1
fi
- else
- ( cd coreboot/; git pull || touch ../build_error )
- if [ -f ../build_error ]; then
- printf "ERROR: download/coreboot: Problem with git-pull. Network issue?\n"
- cd ../; return 1
- fi
+ fi
+
+ ( cd coreboot/; git fetch --depth=1 origin "${cbrevision}" || touch ../build_error )
+ if [ -f ../build_error ]; then
+ printf "ERROR: download/coreboot: Problem with git-fetch. Network issue?\n"
+ cd ../; return 1
fi
cp -R coreboot "${cbtree}" || touch ../build_error
@@ -184,7 +184,7 @@ downloadfor() {
cd ../../; return 1
fi
- git submodule update --init || touch ../../build_error
+ git submodule update --init --depth=1 || touch ../../build_error
if [ -f ../../build_error ]; then
printf "ERROR: download/coreboot: Unable to update submodules for tree '%s'\n" "${cbtree}"
cd ../../; return 1
diff --git a/resources/scripts/download/u-boot b/resources/scripts/download/u-boot
index 2e086337..5fc80868 100755
--- a/resources/scripts/download/u-boot
+++ b/resources/scripts/download/u-boot
@@ -125,12 +125,12 @@ downloadfor() {
if [ ! -d "${uboot_dir}" ]; then
printf "Download u-boot from upstream:\n"
- git clone https://source.denx.de/u-boot/u-boot.git \
+ git clone --depth=1 https://source.denx.de/u-boot/u-boot.git \
"${uboot_dir}" || \
rm -Rf "${uboot_dir}"
if [ ! -d "${uboot_dir}" ]; then
printf "WARNING: Upstream failed. Trying backup github repository:\n"
- git clone https://github.com/u-boot/u-boot.git \
+ git clone --depth=1 https://github.com/u-boot/u-boot.git \
"${uboot_dir}" || \
rm -Rf coreboot
fi
@@ -140,14 +140,14 @@ downloadfor() {
"download/u-boot"
return 1
fi
- else
- git -C "${uboot_dir}" pull || touch build_error
- if [ -f build_error ]; then
- printf \
- "ERROR: %s: Problem with git-pull. Network issue?\n" \
- "download/u-boot"
- return 1
- fi
+ fi
+
+ git -C "${uboot_dir}" fetch --depth=1 origin "${ubrevision}" || touch build_error
+ if [ -f build_error ]; then
+ printf \
+ "ERROR: %s: Problem with git-fetch. Network issue?\n" \
+ "download/u-boot"
+ return 1
fi
cp -R "${uboot_dir}" "${ubtree}" || touch build_error
@@ -167,7 +167,7 @@ downloadfor() {
return 1
fi
- git -C "${ubtree}" submodule update --init || touch build_error
+ git -C "${ubtree}" submodule update --init --depth=1 || touch build_error
if [ -f build_error ]; then
printf "ERROR: %s: Unable to update submodules for tree '%s'\n" \
"${ubtree}"