Task obsługujący instalację i wstępną konfigurację roli dla MongoDB:
---
#Dodanie repo do apt-geta
- name: dodanie wpisu
shell: echo "deb http://repo.mongodb.org/apt/debian jessie/mongodb-org/3.4 main" | tee /etc/apt/sources.list.d/mongodb-org-3.4.list
- name: dodanie klucza
apt_key: keyserver="keyserver.ubuntu.com" id="0C49F3730359A14518585931BC711F9BA15703C6" state=present
#Instalalcja mongobongo w wersji 3.4, wlaczenie do autostartu i wystartowanie uslugi
- name: instalacja mongodb
apt: name=mongodb-org update_cache=yes state=latest
- name: dodanie do autostartu i uruchomienie uslugi mongod
service: name=mongod.service state=started enabled=yes
#Sprawdzenie wersji mongodb
- shell: mongod --version | head -n 1
tags: dev
register: mongo_vr
- debug: msg="{{mongo_vr.stdout}}"
tags: dev
- pause: prompt='Zabezpieczyc dostep do bazy bajobongo i dodac uzytkownika admin z haslem? Aby przerwac wcisnij Ctrl+C i nastepnie "A"'
#Zabezpiczenie dostepu do bazy i dodanie uzytkownika admin
#
# Logowanie przez: mongo -u "admin" -p "haslo" --authenticationDatabase "admin"
#
##########################################################
- name: instalacja pipy pythonowej
apt: name=python-pip update_cache=yes state=latest
- name: instalalcji paczki do obsugi modulu mongodb
pip: name=pymongo state=latest use_mirrors=no
- shell: cat /etc/mongod.conf | grep security
register: czy_dodawac_admina
- name: dodanie konta dla admina
mongodb_user: database=admin name=admin password={{ mongo_admin_pass }} login_port={{ mongo_login_port }} state=present
when: czy_dodawac_admina.stdout == "#security:"
- name: skopiowanie pliku konfiguracyjnego
template: src=mongod.conf.j2 dest=/etc/mongod.conf
notify:
- restart mongod
Zmienne powinny zostać umieszczone w default lub vars.