Added Doc Deployment
This commit is contained in:
parent
25b004dcd7
commit
2249e30a9a
9
Dockerfile
Normal file
9
Dockerfile
Normal file
@ -0,0 +1,9 @@
|
||||
FROM python:3.8
|
||||
|
||||
RUN apt-get update && apt-get install -y\
|
||||
rsync \
|
||||
openssh-client
|
||||
|
||||
RUN pip install pipenv
|
||||
|
||||
CMD ["/bin/bash"]
|
71
Jenkinsfile
vendored
71
Jenkinsfile
vendored
@ -1,16 +1,27 @@
|
||||
pipeline {
|
||||
agent none
|
||||
agent {
|
||||
dockerfile {
|
||||
args '-u root -v $HOME/docker_volumes/.cache/:/root/.cache/'
|
||||
}
|
||||
}
|
||||
environment {
|
||||
SPHINXOPTS = '-w sphinx-build.log'
|
||||
DEPLOY_HOST = 'docs@moriya.zapto.org'
|
||||
DEPLOY_PATH = 'www/docs/bot-base/'
|
||||
}
|
||||
|
||||
stages {
|
||||
stage('Test') {
|
||||
agent {
|
||||
docker {
|
||||
image 'python:3.8'
|
||||
}
|
||||
}
|
||||
stage('Install Dependencies') {
|
||||
steps {
|
||||
sh "pip install --no-cache-dir -t python pipenv"
|
||||
sh "PYTHONPATH=\$(pwd)/python PIPENV_VENV_IN_PROJECT=true python/bin/pipenv sync --sequential --dev"
|
||||
sh "export PYTHONPATH=\$(pwd)/python && cd src && PIPENV_VENV_IN_PROJECT=true \${PYTHONPATH}/bin/pipenv run pytest -p no:warnings --junit-xml test-reports/results.xml"
|
||||
sh 'pipenv sync --verbose --sequential --dev'
|
||||
}
|
||||
}
|
||||
|
||||
stage('Run Tests') {
|
||||
steps {
|
||||
sh '''export PYTHONPATH=$(pwd)/python
|
||||
cd src
|
||||
pipenv run pytest -p no:warnings --junit-xml test-reports/results.xml'''
|
||||
}
|
||||
post {
|
||||
always {
|
||||
@ -18,5 +29,45 @@ pipeline {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Build Documentation') {
|
||||
steps {
|
||||
sh '''export PYTHONPATH=$(pwd)/python
|
||||
cd doc
|
||||
rm -f sphinx-build.log
|
||||
pipenv run make html'''
|
||||
}
|
||||
post {
|
||||
failure {
|
||||
sh 'cat doc/sphinx-build.log'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('Deploy Documentation') {
|
||||
when {
|
||||
anyOf {
|
||||
branch 'stable'
|
||||
branch 'master'
|
||||
}
|
||||
}
|
||||
steps {
|
||||
sshagent(credentials: ['1cf72f47-b70c-4f90-a958-020956099d19']) {
|
||||
sh '''cd doc
|
||||
rm -f rsync.log
|
||||
echo ${DEPLOY_HOST}:${DEPLOY_PATH}${GIT_BRANCH#*/}/ >> debug.log
|
||||
ssh -o StrictHostKeyChecking=no -o BatchMode=yes ${DEPLOY_HOST} mkdir -p ${DEPLOY_PATH}{GIT_BRANCH#*/}/
|
||||
rsync -aze 'ssh -o StrictHostKeyChecking=no -o BatchMode=yes' \
|
||||
--log-file=rsync.log \
|
||||
--delete \
|
||||
./build/html/ ${DEPLOY_HOST}:${DEPLOY_PATH}${GIT_BRANCH#*/}/'''
|
||||
}
|
||||
}
|
||||
post {
|
||||
failure {
|
||||
sh 'cat doc/debug.log doc/rsync.log'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user