dev #37
14
expenses_manager/Jenkinsfile
vendored
14
expenses_manager/Jenkinsfile
vendored
@ -207,22 +207,24 @@ pipeline {
|
||||
# edit plus "docker-compose up -d web".
|
||||
ssh ${SSH_OPTS} ${NAS_USER}@${NAS_HOST} \
|
||||
"echo WEB_IMAGE=${IMAGE}:${SHA} > ${COMPOSE_DIR}/.env \
|
||||
&& cd ${COMPOSE_DIR} \
|
||||
&& sudo ${NAS_COMPOSE} up -d web"
|
||||
&& cd ${COMPOSE_DIR} \
|
||||
&& sudo ${NAS_COMPOSE} up -d web"
|
||||
'''
|
||||
|
||||
script {
|
||||
// Confirm the application actually answers. A container that
|
||||
// starts and immediately crashes would otherwise pass as a
|
||||
// successful deployment.
|
||||
// The Host header must match ALLOWED_HOSTS or Django answers
|
||||
// 400 regardless of health. A 301 is the expected reply here:
|
||||
// SECURE_SSL_REDIRECT sends plain HTTP to HTTPS, and reaching
|
||||
// that redirect already proves the app processed the request.
|
||||
def code = sh(returnStdout: true, script: '''
|
||||
ssh ${SSH_OPTS} ${NAS_USER}@${NAS_HOST} \
|
||||
"sleep 10 && curl -s -o /dev/null -w '%{http_code}' \
|
||||
-H 'Host: finanzas.kuijper.es' \
|
||||
http://127.0.0.1:8001/"
|
||||
''').trim()
|
||||
|
||||
echo "Respuesta HTTP: ${code}"
|
||||
if (!(code in ['200', '302'])) {
|
||||
if (!(code in ['200', '301', '302'])) {
|
||||
error("La aplicacion no responde correctamente (HTTP ${code})")
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user