Force deploy
Apps/everybody-mov/pipeline/head This commit looks good Details

This commit is contained in:
Amber McCloughan 2022-09-04 00:40:46 -04:00
parent 9d3b41f338
commit 5124b13e59
1 changed files with 28 additions and 15 deletions

43
Jenkinsfile vendored
View File

@ -8,22 +8,10 @@ pipeline {
REGISTRY = 'https://registry.digitalocean.com'
IMAGE_NAME = 'registry.digitalocean.com/ailuridae-registry/ailuridae.io/everybodymov'
IMAGE_BUILD = ''
APP_ID = credentials('digital-ocean-app-id')
}
stages {
stage('Setup') {
agent {
docker {
image env.PYTHON_IMAGE
args '--rm'
}
}
steps {
sh 'python -m pip install --no-cache-dir --upgrade --user pip'
sh 'python -m pip install --no-cache-dir pipenv --user'
sh 'python -m pipenv install --dev'
}
}
stage('Check') {
agent {
docker {
@ -32,7 +20,9 @@ pipeline {
}
}
steps {
sh 'python -m pipenv verify'
sh 'python -m pip install --no-cache-dir --upgrade --user pip'
sh 'python -m pip install --no-cache-dir --user pipenv'
sh 'python -m pipenv install --dev --deploy'
sh 'python -m pipenv check --clear'
sh 'python -m pipenv run bandit *.py'
}
@ -56,7 +46,7 @@ pipeline {
}
steps {
script {
// withCredentials annoyingly required to mask token.
// withCredentials is annoyingly required to mask token occurrences.
withCredentials([usernamePassword(
credentialsId: env.CREDENTIALS_ID,
usernameVariable: 'API_TOKEN_USER',
@ -70,6 +60,29 @@ pipeline {
}
}
}
stage('Deploy') {
agent {
label 'main'
}
when {
branch 'main'
}
steps {
script {
withCredentials([usernamePassword(
credentialsId: env.CREDENTIALS_ID,
usernameVariable: 'API_TOKEN_USER',
passwordVariable: 'API_TOKEN_PASS'
)]) {
sh '''
curl -H "Authorization: Bearer $API_TOKEN_PASS" -H "Content-Type: application/json" \
-X POST "https://api.digitalocean.com/v2/apps/$APP_ID/deployments" \
-d "{ \\"force_build\\" : true }"
'''
}
}
}
}
}
post {