admin-webpc/builds/Jenkinsfile

36 lines
1.1 KiB
Groovy

pipeline {
agent any
environment {
APP_NAME="ocr-server-admin"
K8S_FILE="builds/ingress.yaml"
K8S_NAMESPACE="kube-qa"
}
stages {
stage('compile'){
steps {
nodejs('Node21') {
sh "npm install --registry=https://registry.npm.taobao.org && npm run build"
}
sh "mkdir -p /etc/nginx/html/${APP_NAME}/"
sh "rm -rf /etc/nginx/html/${APP_NAME}/*"
sh "mv dist/* /etc/nginx/html/${APP_NAME}/"
}
}
stage('ack deploy') {
agent none
steps {
sh "cat builds/nginx.conf > /etc/nginx/conf.d/${APP_NAME}.conf"
configFileProvider([configFile(fileId: '87b5c827-bd51-40af-99f4-31a800614e92', targetLocation: 'K8S-CONFIG', variable: 'KUBECONFIG')]) {
sh 'export tag=$BUILD_ID && envsubst < $K8S_FILE | kubectl apply -f -'
sh "kubectl rollout restart deployment -n ${K8S_NAMESPACE} nginx"
}
}
}
}
}