Merge pull request #2964 from jsrain/master
Add ALP Micro image release
This commit is contained in:
commit
dde2d23118
248
gocd/alpmicro.target.gocd.yaml
Normal file
248
gocd/alpmicro.target.gocd.yaml
Normal file
@ -0,0 +1,248 @@
|
||||
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
|
||||
|
||||
SLE15.SP5.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}"
|
@ -14,7 +14,7 @@ done
|
||||
|
||||
grep group: *.yaml | cut -d: -f3 | sort -u | while read group; do
|
||||
case $group in
|
||||
BCI|Factory|Leap|Admin|LEO|MicroOS|Monitors|openSUSE.Checkers|SLE15.Stagings|SLE15.Target|SLE.Checkers)
|
||||
BCI|Factory|Leap|Admin|LEO|MicroOS|Monitors|openSUSE.Checkers|SLE15.Stagings|SLE15.Target|SLE.Checkers|ALP.Target)
|
||||
;;
|
||||
*)
|
||||
echo "Do not create new groups without being admin and knowing the consequences - found $group"
|
||||
|
Loading…
x
Reference in New Issue
Block a user