Fix mtce-guest not rebuilt after mtce-common
A recent change to stx-metal/mtce-common broke the nightly StarlingX build due to stx-nfv/mtce-guest build failure. This occurred after a stx-metal/mtce-common change removed a structure member that the stx-nfv/mtce-guest compile required. Since mtce-guest was not rebuilt automatically the pending compile error was not noticed during UT and the update was delivered only to show up as a nightly build failure. This commit recreates $MY_REPO/cgcs-tis-repo/dependancy-cache running create_dependancy_cache.py every time when any rpms and srpms changes, to keep the stx cache updated. The rpms/srpms changes are detected using the repodata files: The repodata filenames includes it’s own sha256 in their name, this is useful to detect rpm/srpms by only comparing the filenames. Closes-Bug: #1804687 Change-Id: Ieb6bf59542451a0cb4cc275bd9d59b532c5b6189 Signed-off-by: Felipe De Jesus Ruiz Garcia <felipe.de.jesus.ruiz.garcia@intel.com>
This commit is contained in:
parent
729ef33454
commit
e9bbaaf8a0
@ -38,11 +38,58 @@ fi
|
||||
|
||||
# Make sure we have a dependency cache
|
||||
DEP_CACHE="$MY_REPO/cgcs-tis-repo/dependancy-cache"
|
||||
|
||||
BUILD_TYPES=(" std rt installer containers")
|
||||
DEP_RPM_TYPE=(" RPMS SRPMS ")
|
||||
DEP_DELTAS="$DEP_CACHE/deltas-rpms-srpms"
|
||||
|
||||
make_cache_current_rpms () {
|
||||
|
||||
FILE=${1}
|
||||
|
||||
if [ -z "${FILE}" ]; then
|
||||
echo "File not specified"
|
||||
return;
|
||||
fi
|
||||
|
||||
if [ -f ${FILE} ]; then
|
||||
rm ${FILE}
|
||||
fi
|
||||
|
||||
for build_type in $BUILD_TYPES; do
|
||||
for rpm_type in $DEP_RPM_TYPE; do
|
||||
|
||||
if [ -d $MY_WORKSPACE/$build_type/rpmbuild/$rpm_type/repodata ]; then
|
||||
current=$MY_WORKSPACE/$build_type/rpmbuild/$rpm_type/
|
||||
|
||||
repoquery \
|
||||
--repofrompath=$build_type-$rpm_type,$current \
|
||||
--repoid=$build_type-$rpm_type --arch=noarch,src,x86_64 -a \
|
||||
--qf "%-10{repoid} %-40{name} %-10{version} %-10{release}" \
|
||||
>> ${FILE}
|
||||
fi
|
||||
done;
|
||||
done;
|
||||
}
|
||||
|
||||
if [ ! -d $DEP_CACHE ]; then
|
||||
echo "Dependency cache is missing. Creating it now."
|
||||
$BUILD_PKGS_DIR/create_dependancy_cache.py > $MY_WORKSPACE/create_dependancy_cache.log
|
||||
make_cache_current_rpms $DEP_DELTAS
|
||||
echo "Dependency cache created."
|
||||
echo ""
|
||||
else
|
||||
DEP_TMP=$(mktemp)
|
||||
make_cache_current_rpms $DEP_TMP
|
||||
if diff $DEP_DELTAS $DEP_TMP; then
|
||||
echo "No changes for stx projects"
|
||||
rm $DEP_TMP
|
||||
else
|
||||
echo "Changes detected for stx projects"
|
||||
echo "Recreating dependecy cache now."
|
||||
mv $DEP_TMP $DEP_DELTAS
|
||||
$BUILD_PKGS_DIR/create_dependancy_cache.py > $MY_WORKSPACE/create_dependancy_cache.log
|
||||
echo "Dependency cache recreated."
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ $SERIAL_FLAG -eq 1 ]; then
|
||||
|
Loading…
Reference in New Issue
Block a user