pipeline {
    agent { label 'Wrangler1' }
    environment {
        PROJECT_NAME = 'joplin'
    }
    stages {
        stage('Pull Docker Images') {
            steps {
                sh 'docker compose pull'
            }
        }
        stage('Deploy') {
            steps {
                withCredentials([usernamePassword(credentialsId: 'google-email-apps-password', passwordVariable: 'GMAIL_APP_PASSWORD', usernameVariable: 'GMAIL_EMAIL'), usernamePassword(credentialsId: 'ldap-bind-auth-user', passwordVariable: 'BINDPASS', usernameVariable: 'BINDUSER')]) {
                    sh """
                        BINDUSER=${BINDUSER} BINDPASS=${BINDPASS} GMAIL_APP_PASSWORD="${GMAIL_APP_PASSWORD}" GMAIL_EMAIL=${GMAIL_EMAIL} COMPOSE_PROJECT_NAME=${PROJECT_NAME} docker compose up -d --force-recreate
                    """
                }
            }
        }
    }
}