Met de volgende jenkinsfile kan je automatisch een Pelican site bouwen met Jenkins. Dit maakt gebruik van deSFTP publish en Docker plugins
pipeline {
agent {
docker {
image 'python:3.8'
}
}
stages {
stage('setup') {
steps {
withEnv(["HOME=${env.WORKSPACE}"]) {
sh 'python -m pip install --user --upgrade pip "pelican[markdown]"'
sh 'python --version'
sh 'python -m pelican --version'
}
}
}
stage('publish - web') {
steps {
withEnv(["HOME=${env.WORKSPACE}"]) {
sh 'python -m pelican content -s publishconf.py'
}
sshPublisher(
publishers: [
sshPublisherDesc(
configName: 'vincentlammens.be',
sshRetry: [retries: 5, retryDelay: 10000],
transfers: [
sshTransfer(
remoteDirectory: '',
removePrefix: 'output/',
sourceFiles: 'output/**/*'
)
]
)
]
)
}
}
}
post {
always {
cleanWs()
}
}
}