40 lines
1.6 KiB
YAML
40 lines
1.6 KiB
YAML
---
|
|
# Packages
|
|
- name: Define elasticsearch_package (Debian)
|
|
set_fact:
|
|
elasticsearch_package: "elasticsearch-{{ elasticsearch_version}}.deb"
|
|
when: elasticsearch_package is not defined and ansible_os_family == 'Debian'
|
|
- name: Define elasticsearch_package (Redhat)
|
|
set_fact:
|
|
elasticsearch_package: "elasticsearch-{{ elasticsearch_version}}.noarch.rpm"
|
|
when: elasticsearch_package is not defined and ansible_os_family == 'RedHat'
|
|
- name: Define elasticsearch_package (Linux)
|
|
set_fact:
|
|
elasticsearch_package: "elasticsearch-{{ elasticsearch_version}}.tar.gz"
|
|
when: elasticsearch_package is not defined
|
|
|
|
- name: Define elasticsearch_url
|
|
set_fact:
|
|
elasticsearch_url: "https://download.elastic.co/elasticsearch/elasticsearch/{{ elasticsearch_package}}"
|
|
when: elasticsearch_url is not defined
|
|
|
|
- debug: var=elasticsearch_url
|
|
|
|
# TODO Is /opt always a good destination?
|
|
# It is good to always have one location to avoid downloading again
|
|
# It is bad to have a location hard-coded because we don't know if it
|
|
# will always exist and have space... better to use mktemp, but then
|
|
# have to ensure that desired version is already installde with
|
|
# dpkg-query -W elasticsearch and parse the output...
|
|
- name: Download elasticsearch package
|
|
get_url: url={{ elasticsearch_url }} dest=/opt/{{ elasticsearch_package}}
|
|
|
|
# Debian section
|
|
- name: Ensure elasticsearch is installed.
|
|
apt: deb=/opt/{{ elasticsearch_package }} state=installed
|
|
when: ansible_os_family == 'Debian'
|
|
|
|
# Linux section
|
|
- name: Ensure elasticsearch is installed.
|
|
apt: deb=/opt/{{ elasticsearch_package }} state=installed
|
|
when: ansible_os_family == 'Linux'
|