modify the construction
This commit is contained in:
40
Jenkinsfile
vendored
40
Jenkinsfile
vendored
@ -2,39 +2,55 @@ pipeline {
|
||||
agent any
|
||||
|
||||
environment {
|
||||
NODE_ENV = 'development'
|
||||
REMOTE_USER = 'alex'
|
||||
SSH_CREDENTIALS_ID = 'alex-ssh-key'
|
||||
REMOTE_HOST = '117.72.202.202'
|
||||
REMOTE_USER = 'alex'
|
||||
REMOTE_DIR = '/home/alex/alex-ui'
|
||||
REMOTE_FRONT_PATH = '/var/www/alex-ui'
|
||||
NGINX_CONTAINER = 'nginx'
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Checkout') {
|
||||
stage('Pull Code') {
|
||||
steps {
|
||||
checkout scm
|
||||
sshagent([env.SSH_CREDENTIALS_ID]) {
|
||||
sh """
|
||||
ssh ${REMOTE_USER}@${REMOTE_HOST} '
|
||||
set -e
|
||||
cd ${REMOTE_DIR} || git clone git@117.72.202.202:ALEX/alex-ui.git ${REMOTE_DIR}
|
||||
cd ${REMOTE_DIR}
|
||||
git pull origin master
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Install & Build') {
|
||||
steps {
|
||||
sh '''
|
||||
sshagent([env.SSH_CREDENTIALS_ID]) {
|
||||
sh """
|
||||
ssh ${REMOTE_USER}@${REMOTE_HOST} '
|
||||
cd ${REMOTE_DIR}
|
||||
npm install --legacy-peer-deps
|
||||
npx vue-cli-service build
|
||||
'''
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Deploy') {
|
||||
steps {
|
||||
sshagent(['alex-ssh-key']) {
|
||||
sh '''
|
||||
scp -r dist/* ${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_FRONT_PATH}/
|
||||
ssh ${REMOTE_USER}@${REMOTE_HOST} "docker restart ${NGINX_CONTAINER}"
|
||||
'''
|
||||
sshagent([env.SSH_CREDENTIALS_ID]) {
|
||||
sh """
|
||||
ssh ${REMOTE_USER}@${REMOTE_HOST} '
|
||||
sudo cp -r ${REMOTE_DIR}/dist/* ${REMOTE_FRONT_PATH}/
|
||||
sudo docker restart ${NGINX_CONTAINER}
|
||||
'
|
||||
"""
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user