2018-07-12 00:49:03 +00:00
|
|
|
- name: Install MongoDB required packages
|
|
|
|
package:
|
|
|
|
name: "{{ item }}"
|
|
|
|
state: present
|
2017-05-27 18:09:50 +00:00
|
|
|
with_items:
|
|
|
|
- mongodb-server
|
|
|
|
- mongodb
|
2017-10-19 06:33:02 +00:00
|
|
|
when: internet_available
|
2017-05-27 18:09:50 +00:00
|
|
|
tags:
|
|
|
|
- download
|
|
|
|
|
2018-07-12 00:49:03 +00:00
|
|
|
- name: Create the data directory for MongoDB
|
|
|
|
file:
|
|
|
|
state: directory
|
|
|
|
path: "{{ item.path }}"
|
|
|
|
owner: mongodb
|
2017-05-27 18:09:50 +00:00
|
|
|
with_items:
|
2018-07-12 00:49:03 +00:00
|
|
|
- { path: '/var/run/mongodb' }
|
2018-07-17 16:50:52 +00:00
|
|
|
- { path: "{{ mongodb_db_path }}" }
|
2018-07-12 00:49:03 +00:00
|
|
|
- { path: '/var/log/mongodb' }
|
2017-05-27 18:09:50 +00:00
|
|
|
|
2018-07-17 16:55:25 +00:00
|
|
|
- name: Populate & position /etc/mongod.conf, /etc/systemd/system/mongodb.service
|
2018-07-12 00:49:03 +00:00
|
|
|
template:
|
|
|
|
src: "{{ item.src }}"
|
|
|
|
dest: "{{ item.dest }}"
|
|
|
|
owner: root
|
|
|
|
group: root
|
|
|
|
mode: 0644
|
2017-05-27 18:09:50 +00:00
|
|
|
with_items:
|
2018-07-17 17:29:45 +00:00
|
|
|
- { src: 'mongodb.service.j2', dest: '/etc/systemd/system/mongodb.service' }
|
2018-07-17 17:12:37 +00:00
|
|
|
- { src: 'mongod.conf.j2', dest: "{{ mongodb_conf }}" }
|
2017-05-27 18:09:50 +00:00
|
|
|
|
2018-07-12 00:49:03 +00:00
|
|
|
- name: Restart service if enabled
|
|
|
|
service:
|
|
|
|
name: "{{ item.name }}"
|
|
|
|
enabled: yes
|
|
|
|
state: restarted
|
2017-05-27 18:09:50 +00:00
|
|
|
with_items:
|
2018-07-12 00:49:03 +00:00
|
|
|
- { name: mongodb }
|
2017-05-27 18:09:50 +00:00
|
|
|
when: mongodb_enabled
|
|
|
|
|
2018-07-12 00:49:03 +00:00
|
|
|
- name: Stop service if not enabled
|
|
|
|
service:
|
|
|
|
name: "{{ item.name }}"
|
|
|
|
enabled: no
|
|
|
|
state: stopped
|
2017-05-27 18:09:50 +00:00
|
|
|
with_items:
|
2018-07-12 00:49:03 +00:00
|
|
|
- { name: mongodb }
|
2017-05-27 18:09:50 +00:00
|
|
|
when: not mongodb_enabled
|
|
|
|
|
2018-07-12 00:49:03 +00:00
|
|
|
- name: Add 'mongodb' to list of services at /etc/iiab/iiab.ini
|
|
|
|
ini_file:
|
|
|
|
dest: "{{ service_filelist }}"
|
|
|
|
section: mongodb
|
|
|
|
option: "{{ item.option }}"
|
|
|
|
value: "{{ item.value }}"
|
2017-05-27 18:09:50 +00:00
|
|
|
with_items:
|
2018-07-12 00:49:03 +00:00
|
|
|
- option: name
|
|
|
|
value: MongoDB
|
|
|
|
- option: description
|
|
|
|
value: '"MongoDB is an open-source document database that provides high performance, high availability, and automatic scaling."'
|
|
|
|
- option: enabled
|
|
|
|
value: "{{ mongodb_enabled }}"
|