diff --git a/first-class-pipeline/src/com/freeleaps/devops/ArgoApplicationVersionUpdater.groovy b/first-class-pipeline/src/com/freeleaps/devops/ArgoApplicationVersionUpdater.groovy index 8da14656..12b766b5 100644 --- a/first-class-pipeline/src/com/freeleaps/devops/ArgoApplicationVersionUpdater.groovy +++ b/first-class-pipeline/src/com/freeleaps/devops/ArgoApplicationVersionUpdater.groovy @@ -13,25 +13,33 @@ class ArgoApplicationVersionUpdater { def update(environmentSlug, component) { steps.log.info("ArgoApplicationVersionUpdater", "[${environmentSlug}] Update Argo application image version to ${steps.env.BUILD_IMAGE_VERSION} for ${component.name}...") - steps.sh "ls -al ${workspace}" - def valuesFile = "${workspace}/${configurations.serviceName}/helm-pkg/${configurations.serviceName}/values-${environmentSlug}.yaml" - def data = steps.readYaml (file: valuesFile) - data.${component.name}.image.registry = steps.env.BUILD_IMAGE_REGISTRY - data.${component.name}.image.repository = steps.env.BUILD_IMAGE_REPOSITORY - data.${component.name}.image.tag = steps.env.BUILD_IMAGE_VERSION - data.${component.name}.image.name = steps.env.BUILD_IMAGE_NAME - steps.writeFile file: valuesFile, data: data, overwrite: true + steps.log.info("ArgoApplicationVersionUpdater", "[${environmentSlug}] Pull freeleaps-ops repository to workspace...") - steps.withCredentials([steps.usernamePassword(credentialsId: 'freeleaps-ops-credentials', passwordVariable: 'OPS_GIT_PASSWORD', usernameVariable: 'OPS_GIT_USERNAME')]) { - steps.sh """ - git config user.name "freeleaps-gitops-bot" - git config user.email "gitops@mathmast.com" - git remote add ci_origin https://${OPS_GIT_USERNAME}:${OPS_GIT_PASSWORD}@dev.azure.com/freeleaps/freeleaps-ops/_git/freeleaps-ops - git add ${valuesFile} - git commit -m "ci(bump): bump ${component.name} image version for ${environmentSlug} to ${steps.env.BUILD_IMAGE_VERSION}" - git push ci_origin HEAD:master - """ - steps.log.info("ArgoApplicationVersionUpdater", "[${environmentSlug}] ${component.name} image version bump to ${steps.env.BUILD_IMAGE_VERSION}") + steps.dir("${workspace}") { + steps.git branch: 'master', credentialsId: 'freeleaps-ops-credentials', url: 'https://freeleaps@dev.azure.com/freeleaps/freeleaps-ops/_git/freeleaps-ops' + this.workspace = "${workspace}/freeleaps-ops" + } + + steps.dir("${workspace}") { + def valuesFile = "./${configurations.serviceName}/helm-pkg/${configurations.serviceName}/values-${environmentSlug}.yaml" + def data = steps.readYaml (file: valuesFile) + data.${component.name}.image.registry = steps.env.BUILD_IMAGE_REGISTRY + data.${component.name}.image.repository = steps.env.BUILD_IMAGE_REPOSITORY + data.${component.name}.image.tag = steps.env.BUILD_IMAGE_VERSION + data.${component.name}.image.name = steps.env.BUILD_IMAGE_NAME + steps.writeFile file: valuesFile, data: data, overwrite: true + + steps.withCredentials([steps.usernamePassword(credentialsId: 'freeleaps-ops-credentials', passwordVariable: 'OPS_GIT_PASSWORD', usernameVariable: 'OPS_GIT_USERNAME')]) { + steps.sh """ + git config user.name "freeleaps-gitops-bot" + git config user.email "gitops@mathmast.com" + git remote add ci_origin https://${OPS_GIT_USERNAME}:${OPS_GIT_PASSWORD}@dev.azure.com/freeleaps/freeleaps-ops/_git/freeleaps-ops + git add ${valuesFile} + git commit -m "ci(bump): bump ${component.name} image version for ${environmentSlug} to ${steps.env.BUILD_IMAGE_VERSION}" + git push ci_origin HEAD:master + """ + steps.log.info("ArgoApplicationVersionUpdater", "[${environmentSlug}] ${component.name} image version bump to ${steps.env.BUILD_IMAGE_VERSION}") + } } } } \ No newline at end of file