Ansible – MongoDB

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.