--- <% stagings = %w(A B C D E F G H S V Y) -%> format_version: 3 pipelines: <% stagings.each do |letter| %> SUSE.SLFO.Main.Staging.<%= letter %>: environment_variables: STAGING_PROJECT: SUSE:SLFO:Main:Staging:<%= letter %> STAGING_API: https://api.suse.de OSC_CONFIG: /home/go/config/oscrc-staging-bot group: SLFO.Stagings lock_behavior: unlockWhenFinished materials: stagings: git: git://botmaster.suse.de/suse-repos.git auto_update: true destination: repos whitelist: - SUSE:SLFO:Main:Staging:<%= letter %>_-_standard.yaml scripts: auto_update: true git: https://github.com/openSUSE/openSUSE-release-tools.git whitelist: - DO_NOT_TRIGGER destination: scripts stages: - Checks: jobs: Check.Build.Succeeds: resources: - staging-bot tasks: - script: |- export PYTHONPATH=$PWD/scripts cd scripts/gocd ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n packagelists -r standard -s pending ./verify-repo-built-successful.py -A $STAGING_API -p $STAGING_PROJECT -r standard Repo.Checker: environment_variables: OSC_CONFIG: /home/go/config/oscrc-staging-bot resources: - repo-checker tasks: - script: |- ./scripts/staging-installcheck.py -A $STAGING_API -p SUSE:SLFO:Main -s $STAGING_PROJECT - Update.000product: resources: - repo-checker tasks: - script: |- export PYTHONPATH=$PWD/scripts cd scripts/gocd if ../pkglistgen.py --debug -A $STAGING_API update_and_solve --engine product_composer --staging $STAGING_PROJECT --force; then ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n packagelists -r standard -s success else ./report-status.py -A $STAGING_API -p $STAGING_PROJECT -n packagelists -r standard -s failure exit 1 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; 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 - Enable.images.repo: resources: - staging-bot tasks: - script: |- osc -A $STAGING_API api -X POST "/source/$STAGING_PROJECT?cmd=remove_flag&repository=images&flag=build" export PYTHONPATH=$PWD/scripts while osc -A $STAGING_API api "/build/$STAGING_PROJECT/_result?view=summary&repository=images" | grep 'dirty=.true.'; do sleep 60 done ./scripts/gocd/report-status.py -A $STAGING_API -p $STAGING_PROJECT -n images:enabled -r standard -s success <% end -%>