ansible-role-mongodb/tasks/replication.yml

30 lines
1.2 KiB
YAML
Raw Normal View History

2015-02-10 12:45:13 +00:00
---
- name: Create keyFile
copy:
dest: "{{ mongodb_conf_keyFile }}"
content: "{{ mongodb_keyfile_content }}"
owner: "{{ mongodb_user }}"
group: "root"
mode: 0600
- name: Check replication status
shell: "{{ item }}"
register: replication_status
when: mongodb_conf_auth == "yes"
with_items:
- /usr/bin/mongo --username {{ mongodb_root_admin_name }} --password {{ mongodb_root_admin_password }} admin --eval 'printjson(rs.status())' | tail -n +3
- /usr/bin/mongo admin --eval 'printjson(rs.status())' | tail -n +3
changed_when: false
- debug:
msg: "{{ (replication_status.results[0].stdout|from_json).errmsg }}"
- name: Create the file to initialize the mongod replica set
template: src=repset_init.js.j2 dest=/tmp/repset_init.js
when: mongodb_conf_auth == "yes" and (replication_status.results[0].stdout|from_json).errmsg | search("EMPTYCONFIG")
- name: Initialize replica set
shell: /usr/bin/mongo --username {{ mongodb_root_admin_name }} --password {{ mongodb_root_admin_password }} admin /tmp/repset_init.js
when: mongodb_conf_auth == "yes" and (replication_status.results[0].stdout|from_json).errmsg | search("EMPTYCONFIG")