11steps :
22 # Get ssh key from Google Secret Manager
33 - name : gcr.io/cloud-builders/gcloud
4- id : sshkey
4+ id : ssh_keys
55 entrypoint : ' bash'
6- args : [ '-c', 'gcloud secrets versions access latest --secret=ortelius- github > /root/.ssh/id_rsa;chmod 600 /root/.ssh/id_rsa;ssh-keyscan -t rsa github.com > /root/.ssh/known_hosts' ]
6+ args : [ '-c', 'gcloud secrets versions access latest --secret=github > /root/.ssh/id_rsa;chmod 600 /root/.ssh/id_rsa;ssh-keyscan -t rsa github.com > /root/.ssh/known_hosts' ]
77 volumes :
88 - name : ' ssh'
99 path : /root/.ssh
10+
11+ # Login to Quay for push.
12+ - name : ' gcr.io/cloud-builders/docker'
13+ id : login
14+ waitFor : ['ssh_keys']
15+ entrypoint : ' bash'
16+ args : ['-c', 'docker login quay.io --username "$$QUAY_USERID" --password $$QUAY_PASSWORD']
17+ secretEnv : ['QUAY_USERID', 'QUAY_PASSWORD']
18+ env :
19+ - ' DOCKER_CONFIG=/workspace/docker-config'
1020
21+ # Setup environment including img tag name for nginx
1122 - name : gcr.io/cloud-builders/docker
12- id : cloudbuild_sh
23+ id : env
24+ waitFor : ['login']
1325 entrypoint : ' bash'
14- args : ['-c', 'ls -A1 | xargs rm -rf;git clone $$COMPONENT_GITURL . ;git checkout --track -b $BRANCH_NAME origin/$BRANCH_NAME;env | sed "s/^/export /" >> /workspace/cloudbuild.sh']
26+ args : ['-c', 'ls -A1 | grep -v docker-config | xargs rm -rf;git init; git remote add origin $$COMPONENT_GITURL;git fetch ;git checkout --track -b $BRANCH_NAME origin/$BRANCH_NAME;env | sed "s/^/export /" >> /workspace/cloudbuild.sh']
1527 volumes :
1628 - name : ' ssh'
1729 path : /root/.ssh
1830 env :
31+ - ' COMPONENT_APPLICATION=GLOBAL.ortelius.saas.ortelius-devops'
32+ - ' COMPONENT_NAME=GLOBAL.ortelius.saas.ms-compitem-crud'
1933 - ' COMPONENT_GITURL=git@github.com:ortelius/ortelius-ms-compitem-crud.git'
20- - ' COMPONENT_VERSION=9.0.0'
34+ - ' COMPONENT_VARIANT=$BRANCH_NAME'
35+ - ' COMPONENT_VERSION=10.0.0'
36+ - ' COMPONENT_VERSION_COMMIT="v$$COMPONENT_VERSION.$$(git rev-list --count $BRANCH_NAME)-g$SHORT_SHA"'
2137 - ' COMPONENT_DOCKERREPO=quay.io/ortelius/ms-compitem-crud'
38+ - ' COMPONENT_CUSTOMACTION=GLOBAL.HelmChart'
39+ - ' COMPONENT_CHARTNAME=chart/ms-compitem-crud'
40+ - ' COMPONENT_CHARTNAMESPACE=ortelius'
41+ - ' DEPLOY_ENV=GLOBAL.ortelius.saas.aks-cluster'
2242 - ' BLDDATE=`date`'
2343 - ' IMAGE_TAG="$BRANCH_NAME-v$$COMPONENT_VERSION.$$(git rev-list --count $BRANCH_NAME)-g$SHORT_SHA"'
44+ - ' DOCKER_CONFIG=/workspace/docker-config'
2445
25- # Login to Quay for push.
46+ # Build and push quay.io/ortelius/ms-compitem-crud
2647 - name : ' gcr.io/cloud-builders/docker'
27- id : login
48+ id : build_push
49+ waitFor : ['env']
2850 entrypoint : ' bash'
29- args : ['-c', '. /workspace/cloudbuild.sh;docker login quay.io --username "$$QUAY_USERID" --password $$QUAY_PASSWORD']
30- secretEnv : ['QUAY_USERID', 'QUAY_PASSWORD']
51+ args : ["-c", '. /workspace/cloudbuild.sh;docker build --tag $$COMPONENT_DOCKERREPO:$$IMAGE_TAG -f /workspace/Dockerfile .;docker push $$COMPONENT_DOCKERREPO:$$IMAGE_TAG']
3152 env :
3253 - ' DOCKER_CONFIG=/workspace/docker-config'
3354
34- # Build and push deployhub-webadmin.war - quay.io/ortelius/ms-textfile-crud
55+ # Get image id
3556 - name : ' gcr.io/cloud-builders/docker'
36- id : ortelius
37- waitFor : [ 'login' ]
57+ id : digest
58+ waitFor : ['build_push' ]
3859 entrypoint : ' bash'
39- args : ["-c", '. /workspace/cloudbuild.sh;docker build --tag $$COMPONENT_DOCKERREPO:$$IMAGE_TAG -f /workspace/Dockerfile .;docker push $$COMPONENT_DOCKERREPO:$$IMAGE_TAG']
4060 env :
4161 - ' DOCKER_CONFIG=/workspace/docker-config'
62+ args : ['-c', ". /workspace/cloudbuild.sh;echo export DIGEST=$(docker inspect --format='{{index .RepoDigests 0}}' $$COMPONENT_DOCKERREPO:$$IMAGE_TAG) >> /workspace/cloudbuild.sh" ]
63+
64+ # Capture new component version in DeployHub
65+ - name : ' quay.io/deployhub/compupdate'
66+ id : compupdate
67+ waitFor : ['digest']
68+ entrypoint : ' bash'
69+ secretEnv : ['DHUSER', 'DHPASS']
70+ args : ['-c', '. /workspace/cloudbuild.sh;dh updatecomp --dhurl https://console.deployhub.com --appname "$$COMPONENT_APPLICATION" --compname "$$COMPONENT_NAME" --compvariant "$$COMPONENT_VARIANT" --compversion "$$COMPONENT_VERSION_COMMIT" --deployenv "$$DEPLOY_ENV" --docker --compattr "GitCommit:$SHORT_SHA" --compattr "GitUrl:$$COMPONENT_GITURL" --compattr "GitRepo:ortelius/$REPO_NAME" --compattr "GitTag:$TAG_NAME" --compattr "GitBranch:$BRANCH_NAME" --compattr "Chart:$$COMPONENT_CHARTNAME" --compattr "DockerSha:$$DIGEST" --compattr "DockerBuildDate:$$BLDDATE" --compattr "DockerRepo:$$COMPONENT_DOCKERREPO" --compattr "BuildId:$BUILD_ID" --compattr "BuildUrl:https://console.cloud.google.com/cloud-build/builds/$BUILD_ID?project=$PROJECT_ID" --compattr "CustomAction:$$COMPONENT_CUSTOMACTION" --compattr "DockerTag:$$IMAGE_TAG" --compattr "ChartNamespace:$$COMPONENT_CHARTNAMESPACE"']
4271
4372secrets :
4473- kmsKeyName : projects/eighth-physics-169321/locations/global/keyRings/cli/cryptoKeys/quay
@@ -47,4 +76,9 @@ secrets:
4776- kmsKeyName : projects/eighth-physics-169321/locations/global/keyRings/cli/cryptoKeys/quay-pw
4877 secretEnv :
4978 QUAY_PASSWORD : CiQAUULEud9Ej8XtwNAb9gkbDVhSGFZYhUGE30fNwR+7ehAOkH8SMgCz6KYeykjgS16RPxgKlrIQL/1TKDt06v4OXGIisFXOkdWC+jvdda8mTzVNCi8sT5g6
50-
79+ - kmsKeyName : projects/eighth-physics-169321/locations/global/keyRings/cli/cryptoKeys/ortelius-id
80+ secretEnv :
81+ DHUSER : CiQAGgJuQMHWANazqTOeE/SyoX/YNVWnES7eJEVWY8mTP98Er3USMQC43iiopoGYhP/YahsQu/yUURiqJBVZURYiUiu5Z7UBkrDgUAonKCKjtzeSNUP7HoQ=
82+ - kmsKeyName : projects/eighth-physics-169321/locations/global/keyRings/cli/cryptoKeys/ortelius-pw
83+ secretEnv :
84+ DHPASS : CiQAZySXz07McN9e6fyr6X4qwkw4iBgeULmpq16RbxIAcqg6gTESMQB98+y30zqMVPx2S/Q/8ld+qlJWWxmocnbjLe9iyepMwyMl3yf+r5e55nf85PlrBBw=
0 commit comments