Updated prod Jenkinsfile

This commit is contained in:
Erik Tiekstra
2021-05-04 10:13:18 +02:00
parent 55c4e7cfc2
commit 94c4316553
2 changed files with 23 additions and 16 deletions

View File

@@ -100,7 +100,7 @@ pipeline {
npm run build:dafa
cp nginx/nginx.conf ${NGINX_PATH}
// cp -r nginx/* ${NGINX_PATH}
#cp -r nginx/* ${NGINX_PATH}
'''
echo '### Application built! ###'

View File

@@ -1,9 +1,10 @@
def cicdproject = "${CI_CD_NAMESPACE}"
def cicdproject = "${CICD_NAMESPACE}"
def appname = "${APP_NAME}"
def devproject = "${DEV_NAMESPACE}"
def t2project = "${T2_NAMESPACE}"
def prodproject = "${PROD_NAMESPACE}"
def utv_project = "${UTV_NAMESPACE}"
def acc_project = "${ACC_NAMESPACE}"
def prod_project = "${PROD_NAMESPACE}"
def jenkinsslave = "nodejs15-agent"
def dist_path = "dist/apps/dafa-web"
pipeline {
@@ -88,11 +89,17 @@ pipeline {
}
stage("Build application") {
environment {
NGINX_PATH = "${dist_path}/."
}
steps {
echo '### Building application... ###'
sh '''
npm run build:prod -- --output-path=dist
cp -r nginx/* dist/.
npm run build:dafa -- --prod
cp nginx/nginx.conf ${NGINX_PATH}
#cp -r nginx/* ${NGINX_PATH}
ls -la dist
'''
echo '### Application built! ###'
@@ -104,8 +111,8 @@ pipeline {
echo '### Creating image... ###'
script {
openshift.withCluster() {
openshift.withProject(devproject) {
openshift.selector("bc", "${ appname }").startBuild("--from-dir=./dist", "--wait=true")
openshift.withProject(utv_project) {
openshift.selector("bc", "${ appname }").startBuild("--from-dir=${dist_path}", "--wait=true")
openshift.tag("${ appname }:latest", "${ appname }:${BUILD_TAG}")
}
}
@@ -115,19 +122,19 @@ pipeline {
}
}
stage('Deploy T2') {
stage('Deploy to "acc"') {
steps {
echo '### Deploying to T2... ###'
echo '### Deploying to "acc"... ###'
script {
openshift.withCluster() {
openshift.withProject(t2project) {
openshift.raw("set image dc/${ appname } ${ appname }=docker-registry.default.svc:5000/${devproject}/${ appname }:${BUILD_TAG} --record=true --source=docker ")
openshift.withProject(acc_project) {
openshift.raw("set image dc/${ appname } ${ appname }=docker-registry.default.svc:5000/${utv_project}/${ appname }:${BUILD_TAG} --record=true --source=docker ")
openshift.raw("annotate dc ${ appname } version=${BUILD_TAG} --overwrite=true")
openshift.selector("dc", "${ appname }").rollout().status();
}
}
}
echo '### Deployed to T2! ###'
echo '### Deployed to "acc"! ###'
}
}
@@ -145,7 +152,7 @@ pipeline {
openshift.withProject(cicdproject) {
def registry = "nexus.arbetsformedlingen.se:5555"
withCredentials([usernamePassword(credentialsId: "${openshift.project()}-nexus-secret", usernameVariable: "REG_USER", passwordVariable: "REG_PWD")]) {
sh "skopeo copy docker://docker-registry.default.svc:5000/${devproject}/${appname}:latest docker://${registry}/app-af-nexus/${appname}:${BUILD_TAG} --src-creds jenkins:\$(oc whoami -t) --dest-creds \"$REG_USER:$REG_PWD\" --src-tls-verify=false --dest-tls-verify=false --format v2s2"
sh "skopeo copy docker://docker-registry.default.svc:5000/${utv_project}/${appname}:latest docker://${registry}/app-af-nexus/${appname}:${BUILD_TAG} --src-creds jenkins:\$(oc whoami -t) --dest-creds \"$REG_USER:$REG_PWD\" --src-tls-verify=false --dest-tls-verify=false --format v2s2"
}
}
}
@@ -166,7 +173,7 @@ pipeline {
}
openshift.withCluster( env.API, env.TOKEN ) {
openshift.withProject(prodproject) {
openshift.withProject(prod_project) {
// Wait for approval
timeout(time:1440, unit:'MINUTES') {
input message: "Go Live with ${ appname } in Production?", ok: "Confirm"