diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..6985029 --- /dev/null +++ b/gating.yaml @@ -0,0 +1,6 @@ +--- !Policy +product_versions: + - rhel-8 +decision_context: osci_compose_gate +rules: + - !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional} diff --git a/tests/test-rebuild.sh b/tests/test-rebuild.sh new file mode 100755 index 0000000..973b9b3 --- /dev/null +++ b/tests/test-rebuild.sh @@ -0,0 +1,71 @@ +#!/bin/sh + +# for testing updates to ghc-rpm-macros etc +# In a pkg dir run +# $ ./test-rebuild.sh +# or clone a pkg branch: +# $ ./test-rebuild.sh [pkg] + +set -e + +PKG=${1:-$(fedpkg gimmespec | sed -e "s/.spec//")} + +[ -d "$PKG" -o -f "$PKG.spec" ] || fedpkg clone -a $PKG + +[ -d "$PKG" ] && cd $PKG + +ARCH=$(arch) + +#if [ -d $ARCH ]; then +# echo Please move existing $ARCH/ +# exit 1 +#fi + +if [ -f /etc/os-release ]; then + eval $(grep VERSION_ID /etc/os-release) + if git branch -a | grep -q f$VERSION_ID; then + BRANCH=f$VERSION_ID + else + case $VERSION_ID in + 7.*) BRANCH=epel7 ;; + *) BRANCH=master ;; + esac + fi +else +# assume RHEL6 + BRANCH=el6 +fi + +if [ "* $BRANCH" != "$(git branch | grep '^*')" ]; then + fedpkg switch-branch $BRANCH +fi + +if [ "* $BRANCH" != "$(git branch | grep '^*')" ]; then + echo "Git branch does not match Fedora installation!" + exit 1 +fi + +git pull + +echo Running dnf builddep: +sudo dnf builddep $PKG.spec + +fedpkg local + +VERREL=$(fedpkg verrel | sed -e "s/^$PKG-//") + +TMP=test-tmp + +mkdir -p $TMP/ + +PKGS=$(cd $ARCH; rpm -qp $(ls *-$VERREL*.rpm)) + +for i in $PKGS; do + # FIXME: should check NVR is same before building + rpm -q --quiet $i || sudo yum install -q $i + for k in list requires provides scripts; do + rpm -qp --$k $ARCH/$i.rpm | grep -v rpmlib > $TMP/$i.$k.test || : + rpm -q --$k $i | grep -v rpmlib > $TMP/$i.$k.installed || : + diff -u $TMP/$i.$k.installed $TMP/$i.$k.test || : + done +done