From 3853fb86dc5e5822d7bad4136b4474313c4c81b1 Mon Sep 17 00:00:00 2001 From: Scott Little Date: Tue, 14 Apr 2020 22:49:01 -0400 Subject: [PATCH] Fixes for fast layer download 1) Pass the correct yum.conf to dl_lower_layer_rpms.sh. One that is consistent with the -s -S -u -U flag we pass. 2) Allow dl_lower_layer_rpms.sh to accept a yum.conf that includes a path element. Story: 2006166 Task: 39307 Change-Id: Ib1a434feb7ce2aa068816d31aa8d858441360ac7 Signed-off-by: Scott Little --- centos-mirror-tools/dl_lower_layer_rpms.sh | 6 ++++-- centos-mirror-tools/download_mirror.sh | 9 +++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/centos-mirror-tools/dl_lower_layer_rpms.sh b/centos-mirror-tools/dl_lower_layer_rpms.sh index bbdb71b71..3e530ebd5 100755 --- a/centos-mirror-tools/dl_lower_layer_rpms.sh +++ b/centos-mirror-tools/dl_lower_layer_rpms.sh @@ -274,8 +274,10 @@ dl_repo () { local TMP local YUM_CONF_DIR_TMP local MUNGED_LIST - YUM_CONF_TMP="$(mktemp "/tmp/${YUM_CONF}.XXXXXX")" - TMP=$(echo "${YUM_CONF_TMP}" | sed "s#^.*${YUM_CONF}.##") + local YUM_CONF_NAME + YUM_CONF_NAME=$(basename "${YUM_CONF}") + YUM_CONF_TMP="$(mktemp "/tmp/${YUM_CONF_NAME}.XXXXXX")" + TMP=$(basename "${YUM_CONF_TMP}" | sed "s#^${YUM_CONF_NAME}.##") YUM_CONF_DIR=$(dirname "${YUM_CONF_TMP}") YUM_REPOS_DIR_TMP="${YUM_CONF_DIR}/yum.repos.d.${TMP}" MUNGED_LIST="${YUM_CONF_DIR}/yum.lst.${TMP}" diff --git a/centos-mirror-tools/download_mirror.sh b/centos-mirror-tools/download_mirror.sh index 8f185bd94..4a4497312 100755 --- a/centos-mirror-tools/download_mirror.sh +++ b/centos-mirror-tools/download_mirror.sh @@ -393,9 +393,11 @@ else # point to the repos that need to be modified as well. if dl_from_upstream; then # add + echo "${make_stx_mirror_yum_conf} -R -d $TEMP_DIR -y $alternate_yum_conf -r $alternate_repo_dir -D $distro -l $layer ${make_stx_mirror_yum_conf_extra_args}" ${make_stx_mirror_yum_conf} -R -d $TEMP_DIR -y $alternate_yum_conf -r $alternate_repo_dir -D $distro -l $layer ${make_stx_mirror_yum_conf_extra_args} else # substitute + echo "${make_stx_mirror_yum_conf} -d $TEMP_DIR -y $alternate_yum_conf -r $alternate_repo_dir -D $distro -l $layer ${make_stx_mirror_yum_conf_extra_args}" ${make_stx_mirror_yum_conf} -d $TEMP_DIR -y $alternate_yum_conf -r $alternate_repo_dir -D $distro -l $layer ${make_stx_mirror_yum_conf_extra_args} fi else @@ -404,9 +406,11 @@ else # in these scripts. if dl_from_upstream; then # add + echo "${make_stx_mirror_yum_conf} -R -d $TEMP_DIR -y /etc/yum.conf -r /etc/yum.repos.d -D $distro -l $layer ${make_stx_mirror_yum_conf_extra_args}" ${make_stx_mirror_yum_conf} -R -d $TEMP_DIR -y /etc/yum.conf -r /etc/yum.repos.d -D $distro -l $layer ${make_stx_mirror_yum_conf_extra_args} else # substitute + echo "${make_stx_mirror_yum_conf} -d $TEMP_DIR -y /etc/yum.conf -r /etc/yum.repos.d -D $distro -l $layer ${make_stx_mirror_yum_conf_extra_args}" ${make_stx_mirror_yum_conf} -d $TEMP_DIR -y /etc/yum.conf -r /etc/yum.repos.d -D $distro -l $layer ${make_stx_mirror_yum_conf_extra_args} fi fi @@ -434,10 +438,7 @@ for key in "${!layer_pkg_urls[@]}"; do #download RPMs/SRPMs from CentOS repos by "yumdownloader" level=L1 logfile=$(generate_log_name $list $level) - llrd_extra_args="" - if [ $use_system_yum_conf -eq 0 ]; then - llrd_extra_args="-c '${alternate_yum_conf}'" - fi + llrd_extra_args="-c ${TEMP_DIR}/yum.conf" echo "$lower_layer_rpm_downloader -l ${lower_layer} -b ${build_type} -r $(dirname $url) ${llrd_extra_args} ${list} ${level}" $lower_layer_rpm_downloader -l ${lower_layer} -b ${build_type} -r $(dirname $url) ${llrd_extra_args} ${list} ${level} |& tee $logfile local_retcode=${PIPESTATUS[0]}