Merge branch 'master' into leapmicro60

This commit is contained in:
Ruediger Oertel 2024-06-18 10:15:28 +02:00 committed by GitHub
commit 2ec0d7aba9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 86 additions and 18 deletions

View File

@ -44,7 +44,7 @@ jobs:
matrix:
image:
- registry.opensuse.org/opensuse/tumbleweed:latest
- registry.opensuse.org/opensuse/leap:15.5
- registry.opensuse.org/opensuse/leap:15.6
container: ${{ matrix.image }}
steps:
@ -61,8 +61,8 @@ jobs:
run: zypper -n ar https://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_Tumbleweed/openSUSE:Tools.repo
- name: add the openSUSE:Tools repository for Leap
if: ${{ contains(matrix.image, '15.5') }}
run: zypper -n ar https://download.opensuse.org/repositories/openSUSE:/Tools/15.5/openSUSE:Tools.repo
if: ${{ contains(matrix.image, '15.6') }}
run: zypper -n ar https://download.opensuse.org/repositories/openSUSE:/Tools/15.6/openSUSE:Tools.repo
- name: install the build & runtime dependencies of openSUSE-release-tool
run: |

View File

@ -59,13 +59,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -138,13 +143,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -217,13 +227,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -296,13 +311,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -375,13 +395,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -454,13 +479,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -533,13 +563,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -612,13 +647,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -691,13 +731,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -770,13 +815,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done
@ -849,13 +899,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done

View File

@ -60,13 +60,18 @@ pipelines:
fi
- Build.product:
timeout: 180
resources:
- staging-bot
tasks:
- script: |-
osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=product&flag=build"
export PYTHONPATH=$PWD/scripts
while ! ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; do
while ./scripts/gocd/verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r product; ret=$?; [ ${ret} -ne 0 ]; do
if [ ${ret} -eq 2 ]; then
echo "product repository not found. Project configuration issue?" >&2
exit 1
fi
sleep 60
done

View File

@ -14,9 +14,10 @@ from lxml import etree as ET
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Check if all packages built fine')
parser.add_argument('--apiurl', '-A', type=str, help='API URL of OBS')
parser.add_argument('-p', '--project', type=str, help='Project to check')
parser.add_argument('-p', '--project', type=str, help='Project to check',
required=True)
parser.add_argument('-r', '--repository', type=str,
help='Repository to check')
help='Repository to check', required=True)
args = parser.parse_args()
@ -26,7 +27,14 @@ if __name__ == '__main__':
logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger(__name__)
# first check if repo is finished
# first check if repo is available
url = makeurl(apiurl, ['source', args.project, "_meta"])
root = ET.parse(http_GET(url)).getroot()
if not root.xpath(f'repository[@name="{args.repository}"]'):
logger.error(f'Repository {args.repository} is not available in {args.project}')
sys.exit(2)
# then check if repo is finished
archs = target_archs(apiurl, args.project, args.repository)
for arch in archs:
url = makeurl(apiurl, ['build', args.project, args.repository, arch], {'view': 'status'})