You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

50 lines
1.7 KiB

pipeline {
agent any
environment {
ATHENA_DEPLOYMENT_SSH_KEY = credentials("athena_ssh_key")
ENVIRONMENT = credentials("ENVIRONMENT")
DB_HOST = credentials("DB_HOST")
DB_PORT = credentials("DB_PORT")
DB_USER = credentials("DB_USER")
DB_PASS = credentials("DB_PASS")
DB_NAME = credentials("DB_NAME")
DB_SSL = credentials("DB_SSL")
COOKIE_STRING = credentials("COOKIE_STRING")
ALLOW_REGISTRATION = credentials("ALLOW_REGISTRATION")
LOGGER_WEBHOOK_URL = credentials("LOGGER_WEBHOOK_URL")
}
stages {
stage('Build') {
steps {
echo 'Creating environment variables (.env)'
sh 'echo ENVIRONMENT=$ENVIRONMENT >> .env'
sh 'echo DB_HOST=$DB_HOST >> .env'
sh 'echo DB_PORT=$DB_PORT >> .env'
sh 'echo DB_USER=$DB_USER >> .env'
sh 'echo DB_PASS=$DB_PASS >> .env'
sh 'echo DB_NAME=$DB_NAME >> .env'
sh 'echo DB_SSL=$DB_SSL >> .env'
sh 'echo COOKIE_STRING=$COOKIE_STRING >> .env'
sh 'echo ALLOW_REGISTRATION=$ALLOW_REGISTRATION >> .env'
sh 'echo LOGGER_WEBHOOK_URL=$LOGGER_WEBHOOK_URL >> .env'
echo 'Clearing Git directory'
sh 'rm -rf ./.git'
}
}
stage('Test') {
steps {
echo 'Testing..'
}
}
stage('Deploy') {
steps {
echo 'Creating SSH Key...'
sh 'apt update'
sh 'apt install -y rsync'
sh 'bash scripts/deploy.sh'
}
}
}
}