Skip to content
Snippets Groups Projects
Commit 0b1bf305 authored by OZGCloud's avatar OZGCloud
Browse files

OZG-3075 test build and deploy helm chart

parent 2d29bc78
No related branches found
No related tags found
No related merge requests found
...@@ -141,6 +141,26 @@ pipeline { ...@@ -141,6 +141,26 @@ pipeline {
} }
} }
stage('Test, build and deploy Helm Chart') {
steps {
container('k8s') {
script {
FAILED_STAGE=env.STAGE_NAME
HELMCH_CHART_VERSION = generateHelmChartVersion()
setHelmChartVersion(HELMCH_CHART_VERSION)
sh "helm lint -f user-manager-server/src/main/helm/test-values.yaml user-manager-server/src/main/helm"
sh "helm unittest -f '../../test/helm/*.yaml' user-manager-server/src/main/helm"
sh "helm package user-manager-server/src/main/helm"
deployHelmChart(HELMCH_CHART_VERSION)
}
}
}
}
stage('Rollout Dev UserManager') { stage('Rollout Dev UserManager') {
when { when {
branch 'master' branch 'master'
...@@ -189,6 +209,43 @@ pipeline { ...@@ -189,6 +209,43 @@ pipeline {
} }
} }
Void deployHelmChart(String helmChartVersion) {
withCredentials([usernamePassword(credentialsId: 'jenkins-nexus-login', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]){
if (env.BRANCH_NAME == 'release') {
result = sh script: '''curl -u $USERNAME:$PASSWORD http://nexus.dev-tools:8081/service/rest/v1/components?repository=ozg-base-apps -F file=@user-manager-'''+helmChartVersion+'''.tgz''', returnStdout: true
}
else {
result = sh script: '''curl -u $USERNAME:$PASSWORD http://nexus.dev-tools:8081/service/rest/v1/components?repository=ozg-base-apps-snapshot -F file=@user-manager-'''+helmChartVersion+'''.tgz''', returnStdout: true
}
if (result != '') {
error(result)
}
}
}
Void setHelmChartVersion(String helmChartVersion) {
def helmChartPath = 'user-manager-server/src/main/helm/Chart.yaml'
def chart = readYaml file: helmChartPath
chart.version = helmChartVersion
writeYaml file: helmChartPath, data: chart, overwrite: true
}
String generateHelmChartVersion() {
def chartVersion = getPomVersion('pom.xml')
if (env.BRANCH_NAME == 'master') {
chartVersion += "-${env.GIT_COMMIT.take(7)}"
}
else if (env.BRANCH_NAME != 'release') {
chartVersion += "-${env.BRANCH_NAME}"
}
return chartVersion
}
Void sendFailureMessage() { Void sendFailureMessage() {
def room = '' def room = ''
def data = """{"msgtype":"m.text", \ def data = """{"msgtype":"m.text", \
...@@ -223,6 +280,7 @@ Void setNewProvisioningVersion(String environment) { ...@@ -223,6 +280,7 @@ Void setNewProvisioningVersion(String environment) {
def envVersions = readYaml file: envFile def envVersions = readYaml file: envFile
envVersions.versions.user_manager.image.tag = IMAGE_TAG envVersions.versions.user_manager.image.tag = IMAGE_TAG
envVersions.charts.user_manager.version = HELMCH_CHART_VERSION
writeYaml file: envFile, data: envVersions, overwrite: true writeYaml file: envFile, data: envVersions, overwrite: true
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment