ver 2
This commit is contained in:
30
Jenkinsfile
vendored
30
Jenkinsfile
vendored
@ -11,6 +11,7 @@ pipeline {
|
||||
string(name: 'DB_USER', defaultValue: 'postgres', description: 'Имя пользователя базы данных')
|
||||
string(name: 'DB_NAME', defaultValue: 'mydb', description: 'Имя базы данных')
|
||||
string(name: 'BACKUP_DIR', defaultValue: '/var/backups/postgresql', description: 'Директория для бэкапа')
|
||||
string(name: 'TASKS', defaultValue: '', description: 'Список тегов задач для выполнения (setup,firewall,init,configure,database,user,backup)')
|
||||
}
|
||||
stages {
|
||||
stage('Clone repository') {
|
||||
@ -37,19 +38,24 @@ pipeline {
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('Install PostgreSQL') {
|
||||
stage('Run PostgreSQL Playbook') {
|
||||
steps {
|
||||
ansiblePlaybook(
|
||||
playbook: 'install_postgresql.yml',
|
||||
inventory: "inventory.yml",
|
||||
extraVars: [
|
||||
postgres_user: params.DB_USER,
|
||||
postgres_password: PSQL_PASSWORD,
|
||||
postgres_db: params.DB_NAME,
|
||||
backup_dir: params.BACKUP_DIR,
|
||||
ansible_ssh_private_key_file: env.DECRYPTED_KEY_FILE
|
||||
]
|
||||
)
|
||||
script {
|
||||
def tagsString = params.TASKS ? params.TASKS.split(',').join(',') : ''
|
||||
|
||||
ansiblePlaybook(
|
||||
playbook: 'playbooks/install_postgresql.yml',
|
||||
inventory: "inventory.yml",
|
||||
extraVars: [
|
||||
postgres_user: params.DB_USER,
|
||||
postgres_password: PSQL_PASSWORD,
|
||||
postgres_db: params.DB_NAME,
|
||||
backup_dir: params.BACKUP_DIR,
|
||||
ansible_ssh_private_key_file: env.DECRYPTED_KEY_FILE
|
||||
],
|
||||
tags: tagsString
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user