curriculum.vitae/Jenkinsfile

70 lines
2.0 KiB
Groovy

pipeline {
agent any
stages {
stage('#1 Fetch App') {
steps {
echo '#1 Fetch App'
sh 'rm -r *'
git credentialsId: 'git-tbs093a', url: 'git@github.com:TBS093A/curriculum_vitae.git'
sh 'ls -la'
}
}
stage('#2 Build App (npm node)') {
steps {
echo '#2 Build App (npm node)'
withCredentials([sshUserPrivateKey(credentialsId: 'cv-kamil-zuk', keyFileVariable: 'PRIV_KEY')]) {
script {
echo "$PRIV_KEY"
sh '''
ssh -v -o StrictHostKeyChecking=no -i $PRIV_KEY -tt ubuntu@13.48.201.185 "cd /home/ubuntu/docker-compose/volumes/jenkins_node_00_npm/ ; rm -r *"
scp -v -o StrictHostKeyChecking=no -i $PRIV_KEY -r ./ ubuntu@172.31.41.210:/home/ubuntu/docker-compose/volumes/jenkins_node_00_npm/
ssh -v -o StrictHostKeyChecking=no -i $PRIV_KEY -tt ubuntu@13.48.201.185 "cd /home/ubuntu/docker-compose/volumes/jenkins_node_00_npm/ ; docker-compose up -d jenkins_node_00_npm"
scp -v -o StrictHostKeyChecking=no -i $PRIV_KEY -r ubuntu@13.48.201.185:/home/ubuntu/docker-compose/volumes/jenkins_node_00_npm/public ./public
'''
}
}
}
}
stage('#3 Deploy App') {
steps {
echo '#3 Deploy App'
sshPublisher(
publishers: [
sshPublisherDesc(
configName: 'aws - kamil-zuk-cv.tk - 13.48.201.185',
transfers: [
sshTransfer(
cleanRemote: false,
excludes: '',
execCommand: 'ls -la',
execTimeout: 120000,
flatten: false,
makeEmptyDirs: false,
noDefaultExcludes: false,
patternSeparator: '[, ]+',
remoteDirectory: './docker-compose/volumes/https-nginx-static/kamil-zuk-cv.tk',
remoteDirectorySDF: false,
removePrefix: '',
sourceFiles: './public/*'
)
],
usePromotionTimestamp: false,
useWorkspaceInPromotion: false,
verbose: false
)
]
)
echo 'Deploy Success'
}
}
}
}