format_version: 3 pipelines: ALP.Micro.Images: group: ALP.Target lock_behavior: unlockWhenFinished materials: repos: git: git://botmaster.suse.de/suse-repos.git auto_update: true whitelist: - SUSE:ALP:Products:Micro:1.0_-_images.yaml destination: repos scripts: auto_update: true git: https://github.com/openSUSE/openSUSE-release-tools.git whitelist: - DO_NOT_TRIGGER destination: scripts environment_variables: OSC_CONFIG: /home/go/config/oscrc-staging-bot stages: - Expect.Images.To.Finish: resources: - staging-bot tasks: - script: | export PYTHONPATH=scripts set -e ./scripts/gocd/verify-repo-built-successful.py -A https://api.suse.de -p SUSE:ALP:Products:Micro:1.0 -r images - Release.Images.To.Test: approval: manual roles: - SLE environment_variables: OSC_CONFIG: /home/go/config/oscrc-totest-manager resources: - staging-bot tasks: - script: |- set -e PRODUCTS=$(osc -A https://api.suse.de ls SUSE:ALP:Products:Micro:1.0 | grep "^ALP-Micro" | grep -v release | grep -v : ||:) if [ -z "${PRODUCTS}" ]; then echo "[WARNNING] There is no image to be released" fi for product in 000product $PRODUCTS; do osc -A https://api.suse.de release SUSE:ALP:Products:Micro:1.0 $product done sleep 600 while (osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:ToTest/_result?view=summary&repository=images" | grep "result project" | grep -v 'code="published" state="published">'); do echo PENDING sleep 600 done osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:ToTest/_result?view=summary&repository=images" | grep "result project" | grep 'code="published" state="published">' && echo PUBLISHED - Release.Images.To.Publish: approval: manual roles: - SLE environment_variables: OSC_CONFIG: /home/go/config/oscrc-totest-manager resources: - staging-bot tasks: - script: |- osc -A https://api.suse.de release SUSE:ALP:Products:Micro:1.0:ToTest sleep 600 while (osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:PUBLISH/_result?view=summary&repository=containers" | grep "result project" | grep -v 'code="published" state="published">'); do echo PENDING sleep 600 done osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:PUBLISH/_result?view=summary&repository=containers" | grep "result project" | grep 'code="published" state="published">' && echo PUBLISHED while (osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:PUBLISH/_result?view=summary&repository=images" | grep "result project" | grep -v 'code="published" state="published">'); do echo PENDING sleep 600 done osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:PUBLISH/_result?view=summary&repository=images" | grep "result project" | grep 'code="published" state="published">' && echo PUBLISHED ALP.Micro.Images.NEW: group: ALP.Target lock_behavior: unlockWhenFinished materials: repos: git: git://botmaster.suse.de/suse-repos.git auto_update: true whitelist: - SUSE:ALP:Products:Micro:1.0_-_images.yaml destination: repos scripts: auto_update: true git: https://github.com/openSUSE/openSUSE-release-tools.git whitelist: - DO_NOT_TRIGGER destination: scripts environment_variables: OSC_CONFIG: /home/go/config/oscrc-staging-bot stages: - Expect.Images.To.Finish: resources: - staging-bot tasks: - script: | export PYTHONPATH=scripts set -e ./scripts/gocd/verify-repo-built-successful.py -A https://api.suse.de -p SUSE:ALP:Products:Micro:1.0 -r containerfile ./scripts/gocd/verify-repo-built-successful.py -A https://api.suse.de -p SUSE:ALP:Products:Micro:1.0 -r images - Release.Images.To.Test: approval: manual roles: - SLE environment_variables: OSC_CONFIG: /home/go/config/oscrc-totest-manager JIRA_PAT: /home/go/config/jira-pat JIRA_INSTANCE: /home/go/config/jira-instance resources: - staging-bot tasks: - script: |- sle-prjmgr-tools --jira-instance $JIRA_INSTANCE --osc-config $OSC_CONFIG ibs_to_jira --jira-pat $JIRA_PAT -p SUSE:ALP:Products:Micro:1.0 - Release.Images.To.Publish: approval: manual roles: - SLE environment_variables: OSC_CONFIG: /home/go/config/oscrc-totest-manager resources: - staging-bot tasks: - script: |- osc -A https://api.suse.de release SUSE:ALP:Products:Micro:1.0:ToTest sleep 600 while (osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:PUBLISH/_result?view=summary&repository=containers" | grep "result project" | grep -v 'code="published" state="published">'); do echo PENDING sleep 600 done osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:PUBLISH/_result?view=summary&repository=containers" | grep "result project" | grep 'code="published" state="published">' && echo PUBLISHED while (osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:PUBLISH/_result?view=summary&repository=images" | grep "result project" | grep -v 'code="published" state="published">'); do echo PENDING sleep 600 done osc -A https://api.suse.de/ api "/build/SUSE:ALP:Products:Micro:1.0:PUBLISH/_result?view=summary&repository=images" | grep "result project" | grep 'code="published" state="published">' && echo PUBLISHED ALP.Micro.ImagesManual: group: ALP.Target lock_behavior: unlockWhenFinished materials: repos: git: git://botmaster.suse.de/suse-repos.git auto_update: true whitelist: - SUSE:ALP:Products:Micro:1.0_-_images.yaml destination: repos scripts: auto_update: true git: https://github.com/openSUSE/openSUSE-release-tools.git whitelist: - DO_NOT_TRIGGER destination: scripts environment_variables: OSC_CONFIG: /home/go/config/oscrc-staging-bot stages: - Relase.Images.To.Test: approval: manual roles: - SLE jobs: Check.Images.Finish: resources: - staging-bot tasks: - script: | export PYTHONPATH=scripts while (! ./scripts/gocd/verify-repo-built-successful.py -A https://api.suse.de -p SUSE:ALP:Products:Micro:1.0 -r images); do sleep 300 done Release.To.Test: environment_variables: OSC_CONFIG: /home/go/config/oscrc-totest-manager resources: - staging-bot tasks: - script: |- set -e PRODUCTS=$(osc -A https://api.suse.de ls SUSE:ALP:Products:Micro:1.0 | grep "^ALP-Micro" | grep -v release) for product in 000product $PRODUCTS; do osc -A https://api.suse.de release SUSE:ALP:Products:Micro:1.0 $product done - Release.Images.To.Publish: approval: manual roles: - SLE environment_variables: OSC_CONFIG: /home/go/config/oscrc-totest-manager resources: - staging-bot tasks: - script: osc -A https://api.suse.de release SUSE:ALP:Products:Micro:1.0:ToTest ALP.Micro.ReleaseScc: group: ALP.Target parameters: product: alp-micro-1.0 target: MyTarget build: "0.0" materials: scripts: auto_update: true git: https://github.com/openSUSE/openSUSE-release-tools.git whitelist: - DO_NOT_TRIGGER destination: scripts stages: # "ratt" is an alias for the internal IP of the API, only available on botmaster. - Release.Images.Update: approval: manual roles: - SLE resources: - staging-bot tasks: - script: curl --verbose --max-time 3600 "http://ratt:5000/update?product=#{product}&target=#{target}&build=#{build}" - Release.Images.Rename: approval: manual roles: - SLE resources: - staging-bot tasks: - script: curl --verbose --max-time 3600 "http://ratt:5000/rename?product=#{product}&target=#{target}" - Release.Images.Sync: approval: manual roles: - SLE resources: - staging-bot tasks: - script: curl --verbose --max-time 3600 "http://ratt:5000/sync?product=#{product}&target=#{target}" - Release.Images.Release: approval: manual roles: - SLE resources: - staging-bot tasks: - script: curl --verbose --max-time 3600 "http://ratt:5000/release?product=#{product}"