0
我目前運行以下命令ansible PostgreSQL的模塊來創建角色並添加數據庫
# su - postgres
$ psql
postgres=# create role user_name with login encrypted password 'password';
postgres=# create database database_name owner user_name template template0 encoding 'UTF8' lc_collate 'en_US.UTF-8' lc_ctype 'en_US.UTF-8';
我想利用postgresql module in ansible的這樣做。
到目前爲止,我已經試過這
- name: create the "{{ ovirt_engine_dwh_db_name }}" db from the command line
command: |
psql -c "create role {{ ovirt_engine_dwh_db_user }} with login encrypted password '{{ ovirt_engine_dwh_db_password }}';"
psql -c "create database {{ ovirt_engine_dwh_db_name }} owner {{ ovirt_engine_dwh_db_user }} template template0 encoding 'UTF8' lc_collate 'en_US.UTF-8' lc_ctype 'en_US.UTF-8';"
become_user: postgres
但如果我嘗試這裏面談到的錯誤是Jinja2的模板不能代替我在defaults/main.yml
你問你如何將你的問題中的命令轉換爲postgresql ansible模塊或爲什麼你當前的任務失敗?如果是後者,是否可以包含錯誤輸出? – kfreezy
@kfreezy我很好奇如何將命令轉換爲postgresql ansible模塊。我很想看看我如何使用它們來做到這一點。現在,我通過創建sql模板並在主機上單獨運行它們來實現它。這個錯誤是由於這樣一個事實:任務是在一個非默認的目錄結構中,因此無法讀取'defaults/main.yml' –