Ansible Playbook: Menggunakan Fail Konfigurasi
Memudahkan anda untuk deploy dalam environment berbeza
Dalam pembangunan kod untuk data pipeline, mesti anda tidak dapat pisahkan situasi di mana anda perlu menguji di DEV dan kemudian ke SIT atau ke PROD environment.
Jika sebelum ini, ansible anda agak statik, kali ini saya ingin berkongsi untuk variable anda lebih dinamik berdasarkan environment.
Playbook seperti berikut:
inventory.yml
[local]
localhost
passing_configuration.yml
---
- name: Workshop Playbook
hosts: local
connection: local
tasks:
- name: Debug variable from config file
debug:
msg: "{{ database_name }}"
uat_config.yml
deploy_env: "uat"
database_name: "{{ deploy_env }}-db-env"
sit_config.yml
deploy_env: "sit"
database_name: "{{ deploy_env }}-db-env"
Jadi perkara yang berbeza kali adalah, anda perlu menambah satu lagi parameter (--extra-vars="@sit_config.yml”) dalam semasa and run the ansible playbook
ansible-playbook passing_configuration.yml -i inventory.yml --extra-vars="@sit_config.yml"
Jika anda ingin mengubah configuration file and hanya perlu tujukan fail tersebut dalam skrip seperti di bawah
ansible-playbook passing_configuration.yml -i inventory.yml --extra-vars="@uat_config.yml"