forked from robert/robertjohnson.work
39 lines
1.2 KiB
Groovy
39 lines
1.2 KiB
Groovy
pipeline {
|
|
agent {
|
|
docker {
|
|
image 'jvconseil/jekyll-docker'
|
|
args '''
|
|
-u root:root
|
|
-v "${PWD}:/srv"
|
|
-e JEKYLL_UID=1001 -e JEKYLL_GID=1001
|
|
'''
|
|
}
|
|
}
|
|
environment {
|
|
KEY_FILE = credentials('ubuntu-box.myemail.cloud')
|
|
}
|
|
stages {
|
|
stage('Prep') {
|
|
steps {
|
|
sh 'apk add curl'
|
|
sh 'chmod -R 777 .'
|
|
sh 'gem install bundler'
|
|
sh 'curl -d "scottjohnson.pro Prep stage done." https://ntfy.draft13.com/jenkins'
|
|
}
|
|
}
|
|
stage('Build') {
|
|
steps {
|
|
sh 'bundle install'
|
|
sh 'bundle exec jekyll build'
|
|
sh 'curl -d "scottjohnson.pro Build stage done." https://ntfy.draft13.com/jenkins'
|
|
}
|
|
}
|
|
stage('Deploy') {
|
|
steps {
|
|
sh 'scp -r -o StrictHostKeychecking=no -i $KEY_FILE _site/ ubuntu@box.myemail.cloud:/home/ubuntu'
|
|
sh 'ssh ubuntu@box.myemail.cloud -i $KEY_FILE \'bash -s\' < deploy.sh'
|
|
sh 'curl -d "scottjohnson.pro Deploy stage done." https://ntfy.draft13.com/jenkins'
|
|
}
|
|
}
|
|
}
|
|
} |