ansible-role-mongodb/tasks/install.debian.yml

73 lines
2.1 KiB
YAML
Raw Normal View History

2014-06-04 15:03:58 +00:00
---
- name: Check if running on systemd
stat: path=/sbin/init
register: sbin_init
2015-06-16 08:19:58 +00:00
changed_when: false
2018-02-15 06:14:31 +00:00
check_mode: no
2015-02-25 07:57:36 +00:00
- name: Establish some role-related facts
set_fact:
mongodb_is_systemd: "{{ sbin_init.stat.islnk is defined and sbin_init.stat.islnk }}"
mongodb_major_version: "{{ mongodb_version[0:3] }}"
2015-02-25 07:57:36 +00:00
2018-02-23 12:35:03 +00:00
- name: Overwrite mongodb_version especially for Debian 9
set_fact:
mongodb_major_version: "3.2"
2018-02-23 12:44:46 +00:00
when: ansible_distribution_release == "stretch"
2015-02-25 07:57:36 +00:00
2014-06-04 15:03:58 +00:00
- name: Add APT key
2016-04-17 13:43:00 +00:00
apt_key:
2017-06-16 11:58:39 +00:00
keyserver: "{{ mongodb_apt_keyserver }}"
id: "{{ mongodb_apt_key_id[mongodb_major_version] }}"
2016-04-17 13:43:00 +00:00
when: mongodb_package == 'mongodb-org'
- name: Fail when used wrong mongodb_version variable
fail:
msg: "mongodb_version variable should be '2.6', '3.0' or '3.2'"
2016-04-17 13:43:00 +00:00
when: (mongodb_package == 'mongodb-org' and
(mongodb_version is not defined
or mongodb_repository[mongodb_major_version] is not defined))
2015-01-07 11:31:53 +00:00
- name: Add APT repository
apt_repository: repo="{{ mongodb_repository[item] }}" update_cache=yes
with_items: "{{ mongodb_major_version }}"
2016-04-17 13:43:00 +00:00
when: mongodb_package == 'mongodb-org'
2015-01-07 11:31:53 +00:00
- name: Install MongoDB package
apt: name={{item}} state=present
with_items:
- "{{mongodb_package}}"
- numactl
2015-02-25 07:57:36 +00:00
2018-02-23 12:35:03 +00:00
- name: Add systemd configuration if present
copy: src=mongodb.service dest=/lib/systemd/system/mongodb.service owner=root group=root mode=0640
when: mongodb_is_systemd
- name: Add symlink for systemd
file: src=/lib/systemd/system/mongodb.service dest=/etc/systemd/system/multi-user.target.wants/mongodb.service state=link
when: mongodb_is_systemd
notify: reload systemd
2015-02-26 14:11:22 +00:00
- name: reload systemd
shell: systemctl daemon-reload
2018-02-23 12:35:03 +00:00
when: mongodb_is_systemd and mongodb_manage_service
- meta: flush_handlers
when: mongodb_is_systemd
2015-04-06 16:38:52 +00:00
- name: Install PyMongo package
apt: pkg=python-pymongo state=latest
when: not mongodb_pymongo_from_pip
2015-04-06 16:51:47 +00:00
- name: Install PIP
2015-04-06 16:38:52 +00:00
apt: pkg={{ item }}
with_items:
- python-dev
- python-pip
when: mongodb_pymongo_from_pip
- name: Install PyMongo from PIP
2016-04-17 13:43:00 +00:00
pip: name=pymongo state=latest
2015-04-06 16:38:52 +00:00
when: mongodb_pymongo_from_pip