From 242d79e84637cf33bfecc44b1c6f2a31670fbdca Mon Sep 17 00:00:00 2001 From: Liu Shilong Date: Thu, 22 Jun 2023 23:11:05 +0800 Subject: [PATCH] [build] Fix reproducible build version issue when failed to download web file (#14587) (#14779) Why I did it refine reproducible build. How I did it Fix reset map variable in bash. Ignore empty web file md5sum value. If web file didn't backup in azure storage, use file on web. How to verify i --- src/sonic-build-hooks/scripts/buildinfo_base.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/sonic-build-hooks/scripts/buildinfo_base.sh b/src/sonic-build-hooks/scripts/buildinfo_base.sh index 965edb4055..c36f4139de 100755 --- a/src/sonic-build-hooks/scripts/buildinfo_base.sh +++ b/src/sonic-build-hooks/scripts/buildinfo_base.sh @@ -120,7 +120,6 @@ set_reproducible_mirrors() download_packages() { local parameters=("$@") - local filenames= declare -A filenames for (( i=0; i<${#parameters[@]}; i++ )) do @@ -140,7 +139,7 @@ download_packages() local filename=$(echo $url | awk -F"/" '{print $NF}' | cut -d? -f1 | cut -d# -f1) [ -f $WEB_VERSION_FILE ] && version=$(grep "^${url}=" $WEB_VERSION_FILE | awk -F"==" '{print $NF}') if [ -z "$version" ]; then - echo "Warning: Failed to verify the package: $url, the version is not specified" 1>&2 + log_err "Warning: Failed to verify the package: $url, the version is not specified" continue fi @@ -154,15 +153,16 @@ download_packages() else real_version=$(get_url_version $url) if [ "$real_version" != "$version" ]; then - echo "Failed to verify url: $url, real hash value: $real_version, expected value: $version_filename" 1>&2 - exit 1 + log_err "Warning: Failed to verify url: $url, real hash value: $real_version, expected value: $version_filename" + continue fi fi else real_version=$(get_url_version $url) fi - - echo "$url==$real_version" >> ${BUILD_WEB_VERSION_FILE} + # ignore md5sum for string "" + # echo -n "" | md5sum == d41d8cd98f00b204e9800998ecf8427e + [[ $real_version == "d41d8cd98f00b204e9800998ecf8427e" ]] || echo "$url==$real_version" >> ${BUILD_WEB_VERSION_FILE} fi done