1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-13 19:52:06 +00:00
iiab/roles/mongodb/tasks/main.yml

73 lines
2.1 KiB
YAML

- name: Install mongodb required packages
package: name={{ item }}
state=present
with_items:
- mongodb-server
- mongodb
when: internet_available
tags:
- download
- name: create the data directory for mongodb
file: state=directory
path={{ item.path }}
owner=mongodb
with_items:
- { path: '/var/run/mongodb' }
- { path: '/library/dbdata/mongodb' }
- { path: '/var/log/mongodb' }
- name: Create systemd files
template: src={{ item.src }}
dest={{ item.dest }}
owner=root
group=root
mode=0644
with_items:
- { src: 'mongodb.service' , dest: '/etc/systemd/system/' }
- { src: 'mongodb' , dest: '/etc/sysconfig/'}
- { src: 'mongod.conf' , dest: '/etc/mongod.conf'}
- { src: 'mongod.conf' , dest: '/etc/mongodb.conf'}
- name: enable services
service: name={{ item.name }}
enabled=yes
state=restarted
with_items:
- { name: mongodb }
when: mongodb_enabled
- name: disable services
service: name={{ item.name }}
enabled=no
state=stopped
with_items:
- { name: mongodb }
when: not mongodb_enabled
# See https://github.com/iiab/iiab/issues/254 for other attempts to eliminate
# these 256MB files. Brute Force Idea: rm /var/lib/mongodb/journal/prealloc.*
- name: find /var/lib/mongodb/prealloc.* files to delete
find:
paths: /var/lib/mongodb/journal
patterns: prealloc.*
register: files_to_delete
- name: delete prealloc files
file:
path: "{{ item.path }}"
state: absent
with_items: "{{ files_to_delete.files }}"
- name: add mongodb to service list
ini_file: dest="{{ service_filelist }}"
section=mongodb
option="{{ item.option }}"
value="{{ item.value }}"
with_items:
- 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 }}"