--- - name: Debian - Add Elasticsearch repository key apt_key: url="http://packages.elasticsearch.org/GPG-KEY-elasticsearch" state=present when: es_use_repository - name: Debian - add elasticsearch repository apt_repository: repo="deb http://packages.elastic.co/elasticsearch/{{ es_major_version }}/debian stable main" state=present when: es_use_repository - name: Debian - Ensure elasticsearch is installed apt: name=elasticsearch{% if es_version is defined and es_version != "" %}={{ es_version }}{% endif %} state=present cache_valid_time=86400 when: es_use_repository register: elasticsearch_install - name: Debian - Download elasticsearch from url get_url: url={{ __es_package_url.default }}-{{ es_version }}.deb dest=/tmp/elasticsearch-{{ es_version }}.deb validate_certs=no when: not es_use_repository - name: Debian - Ensure elasticsearch is installed from downloaded package apt: deb=/tmp/elasticsearch-{{ es_version }}.deb when: not es_use_repository register: elasticsearch_install - name: Debian - configure memory lineinfile: dest=/etc/default/elasticsearch regexp="^ES_HEAP_SIZE" insertafter="^#ES_HEAP_SIZE" line="ES_HEAP_SIZE={{ es_heap_size }}" when: es_heap_size is defined register: elasticsearch_configure - name: Debian - configure data store lineinfile: dest=/etc/default/elasticsearch regexp="^DATA_DIR" insertafter="^#DATA_DIR" line="DATA_DIR={{ es_data_dir }}" when: es_data_dir is defined register: elasticsearch_configure - name: Debian - configure elasticsearch user lineinfile: dest=/etc/default/elasticsearch regexp="^ES_USER" insertafter="^#ES_USER" line="ES_USER={{ es_user }}" when: es_user is defined register: elasticsearch_configure - name: Debian - configure elasticsearch group lineinfile: dest=/etc/default/elasticsearch regexp="^ES_GROUP" insertafter="^#ES_GROUP" line="ES_GROUP={{ es_group }}" when: es_group is defined register: elasticsearch_configure - name: Debian - create data dir file: state=directory path={{ es_data_dir }} owner={{ es_user }} group={{ es_group }} when: es_data_dir is defined