Updated prod Jenkinsfile
This commit is contained in:
2
openshift/dev/Jenkinsfile
vendored
2
openshift/dev/Jenkinsfile
vendored
@@ -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! ###'
|
||||
|
||||
37
openshift/prod/Jenkinsfile
vendored
37
openshift/prod/Jenkinsfile
vendored
@@ -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"
|
||||
|
||||
Reference in New Issue
Block a user