initial commit, tisbackup documentation, WIP
This commit is contained in:
committed by
Denis Cardon
parent
d079b542be
commit
5f672dd630
Vendored
+252
@@ -0,0 +1,252 @@
|
||||
pipeline {
|
||||
agent { label 'debian-buster' }
|
||||
options {
|
||||
timestamps()
|
||||
disableConcurrentBuilds()
|
||||
buildDiscarder(logRotator(numToKeepStr: '10'))
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Clean before launch'){
|
||||
steps{
|
||||
sh '''
|
||||
echo "clean"
|
||||
make clean
|
||||
rm -Rf ./build/
|
||||
'''
|
||||
}
|
||||
}
|
||||
stage('Setup RestructuredText'){
|
||||
steps {
|
||||
sh '''
|
||||
echo "Installing requirements"
|
||||
pip3 install -U pip setuptools
|
||||
pip3 install -r requirements.txt --upgrade
|
||||
'''
|
||||
}
|
||||
}
|
||||
stage('Gettext'){
|
||||
steps{
|
||||
sh '''
|
||||
echo "gettext and update po"
|
||||
make gettext
|
||||
sphinx-intl update -p build/locale/ -l fr
|
||||
make clean
|
||||
'''
|
||||
}
|
||||
}
|
||||
stage('Make HTML'){
|
||||
steps{
|
||||
sh '''
|
||||
make htmlen
|
||||
make -e SPHINXOPTS="-D language='fr'" htmlfr
|
||||
'''
|
||||
}
|
||||
}
|
||||
stage('Make EPUB'){
|
||||
steps{
|
||||
sh '''
|
||||
make epub_en
|
||||
make -e SPHINXOPTS="-D language='fr'" epub_fr
|
||||
'''
|
||||
}
|
||||
}
|
||||
stage('Make LatexPDF'){
|
||||
steps{
|
||||
sh '''
|
||||
echo "make latexpdf EN"
|
||||
make latexpdf_en || true
|
||||
|
||||
echo "make latexpdf FR"
|
||||
make -e SPHINXOPTS="-D language='fr'" latexpdf_fr || true
|
||||
'''
|
||||
}
|
||||
}
|
||||
stage('Copy static files'){
|
||||
steps{
|
||||
sh '''
|
||||
cp ./robots.txt build/en/doc
|
||||
cp ./robots.txt build/fr/doc
|
||||
mkdir ./build/en/doc/.well-known
|
||||
mkdir ./build/fr/doc/.well-known
|
||||
cp security.txt ./build/en/doc/.well-known
|
||||
cp security.txt ./build/en/doc/.well-known
|
||||
'''
|
||||
}
|
||||
}
|
||||
stage('Publish over SSH'){
|
||||
steps{
|
||||
sshPublisher alwaysPublishFromMaster: true,
|
||||
publishers: [sshPublisherDesc(configName: 'root@doc.ad.tranquil.it',
|
||||
transfers: [sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/doc/wapt/en/doc/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/en/doc/',
|
||||
sourceFiles: 'build/en/doc/**'),
|
||||
sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/doc/wapt/fr/doc/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/fr/doc/',
|
||||
sourceFiles: 'build/fr/doc/**'),
|
||||
sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/doc/wapt/fr/doc/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/fr/epub/',
|
||||
sourceFiles: 'build/fr/epub/*.epub'),
|
||||
sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/doc/wapt/en/doc/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/en/epub/',
|
||||
sourceFiles: 'build/en/epub/*.epub'),
|
||||
sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/doc/wapt/fr/doc/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/fr/latex/',
|
||||
sourceFiles: 'build/fr/latex/WAPT.pdf'),
|
||||
sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/doc/wapt/en/doc/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/en/latex/',
|
||||
sourceFiles: 'build/en/latex/WAPT.pdf')
|
||||
],
|
||||
usePromotionTimestamp: false,
|
||||
useWorkspaceInPromotion: false,
|
||||
verbose: false)]
|
||||
}
|
||||
}
|
||||
stage('Clean release prod'){
|
||||
when {
|
||||
allOf {
|
||||
branch 'master'
|
||||
tag "release-*"
|
||||
}
|
||||
}
|
||||
steps {
|
||||
echo 'Cleanup prod'
|
||||
sshPublisher alwaysPublishFromMaster: true,
|
||||
publishers: [sshPublisherDesc(configName: 'root@wapt.fr',
|
||||
transfers: [sshTransfer(execCommand: 'rm -rf /var/www/wapt.fr/fr/doc-1.8/*'),
|
||||
sshTransfer(execCommand: 'rm -rf /var/www/wapt.fr/en/doc-1.8/*')],
|
||||
usePromotionTimestamp: false,
|
||||
useWorkspaceInPromotion: false,
|
||||
verbose: false)]
|
||||
}
|
||||
}
|
||||
stage('Publish release prod'){
|
||||
when {
|
||||
allOf {
|
||||
branch 'master'
|
||||
tag "release-*"
|
||||
}
|
||||
}
|
||||
steps {
|
||||
echo 'Publishing to doc.wapt.fr'
|
||||
sshPublisher alwaysPublishFromMaster: true,
|
||||
publishers: [sshPublisherDesc(configName: 'root@wapt.fr',
|
||||
transfers: [sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/wapt.fr/en/doc-1.8/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/en/doc/',
|
||||
sourceFiles: 'build/en/doc/**'),
|
||||
sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/wapt.fr/fr/doc-1.8/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/fr/doc/',
|
||||
sourceFiles: 'build/fr/doc/**'),
|
||||
sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/wapt.fr/en/doc-1.8/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/en/latex/',
|
||||
sourceFiles: 'build/en/latex/WAPT.pdf'),
|
||||
sshTransfer(excludes: '',
|
||||
execCommand: '', execTimeout: 120000,
|
||||
flatten: false,
|
||||
makeEmptyDirs: false,
|
||||
noDefaultExcludes: false,
|
||||
patternSeparator: '[, ]+',
|
||||
remoteDirectory: '/var/www/wapt.fr/fr/doc-1.8/',
|
||||
remoteDirectorySDF: false,
|
||||
removePrefix: 'build/fr/latex/',
|
||||
sourceFiles: 'build/fr/latex/WAPT.pdf')
|
||||
],
|
||||
usePromotionTimestamp: false,
|
||||
useWorkspaceInPromotion: false,
|
||||
verbose: false)]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
post {
|
||||
success {
|
||||
rocketSend message: "Successful Build - ${env.JOB_NAME} ${env.BUILD_NUMBER} - ${env.BUILD_TIMESTAMP} (<${env.BUILD_URL}|Open>)",
|
||||
channel: 'documentation',
|
||||
rawMessage: true
|
||||
}
|
||||
|
||||
failure {
|
||||
rocketSend message: "Build Failed - ${env.JOB_NAME} ${env.BUILD_NUMBER} - ${env.BUILD_TIMESTAMP} (<${env.BUILD_URL}|Open>)",
|
||||
channel: 'documentation',
|
||||
rawMessage: true
|
||||
}
|
||||
|
||||
unstable {
|
||||
rocketSend message: "Unstable Build - ${env.JOB_NAME} ${env.BUILD_NUMBER} - ${env.BUILD_TIMESTAMP} (<${env.BUILD_URL}|Open>)",
|
||||
channel: 'documentation',
|
||||
rawMessage: true
|
||||
}
|
||||
|
||||
aborted {
|
||||
rocketSend message: "Build Aborted - ${env.JOB_NAME} ${env.BUILD_NUMBER} - ${env.BUILD_TIMESTAMP} (<${env.BUILD_URL}|Open>)",
|
||||
channel: 'documentation',
|
||||
rawMessage: true
|
||||
}
|
||||
always {
|
||||
cleanWs()
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user