44 lines
905 B
Groovy
44 lines
905 B
Groovy
pipeline {
|
|
agent any
|
|
|
|
environment {
|
|
NODE_ENV = 'production'
|
|
REMOTE_USER = 'alex'
|
|
REMOTE_HOST = '117.72.202.202'
|
|
REMOTE_FRONT_PATH = '/var/www/alex-ui'
|
|
NGINX_CONTAINER = 'nginx'
|
|
}
|
|
|
|
stages {
|
|
stage('Checkout') {
|
|
steps {
|
|
checkout scm
|
|
}
|
|
}
|
|
|
|
stage('Install & Build') {
|
|
steps {
|
|
sh '''
|
|
echo "当前目录: $(pwd)"
|
|
rm -rf node_modules package-lock.json dist
|
|
npm cache clean --force
|
|
npm install --legacy-peer-deps
|
|
npx vue-cli-service build
|
|
'''
|
|
}
|
|
}
|
|
|
|
stage('Deploy') {
|
|
steps {
|
|
sshagent(['alex']) {
|
|
sh '''
|
|
scp -r dist/* ${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_FRONT_PATH}/
|
|
ssh ${REMOTE_USER}@${REMOTE_HOST} "docker restart ${NGINX_CONTAINER}"
|
|
'''
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|