--- - name: Opensearch installation block: - name: Create the opensearch user, {{ opensearch_user }} user: name: '{{ opensearch_user }}' home: '{{ opensearch_base_install_dir }}' createhome: false shell: /sbin/nologin system: true - name: Create the opensearch file system file: dest: '{{ item }}' state: directory owner: '{{ opensearch_user }}' group: '{{ opensearch_user }}' mode: 0750 loop: '{{ opensearch_directories }}' - name: Get the opensearch distribution get_url: url: '{{ opensearch_download_url }}' dest: /srv register: opensearch_download - name: Get the opensearch cli tools get_url: url: '{{ opensearch_cli_tools_url }}' dest: /srv - name: Unpack the opensearch distribution unarchive: src: '/srv/{{ opensearch_filename }}' remote_src: true dest: /opt owner: root group: root when: opensearch_download is changed - name: Create a link to the correct place file: src: '/srv/{{ opensearch_filename }}' dest: '{{ opensearch_base_install_dir }}' state: link tags: ['opensearch'] - name: Opensearch configuration block: - name: Install the opensearch JVM options template: src: jvm.options.j2 dest: '{{ opensearch_config_dir }}/jvm.options' owner: root group: '{{ opensearch_user }}' mode: 0640 notify: Restart opensearch - name: Install the opensearch configuration template: src: opensearch.yml.j2 dest: '{{ opensearch_config_dir }}/opensearch.yml' owner: root group: '{{ opensearch_user }}' mode: 0640 notify: Restart opensearch tags: ['opensearch', 'opensearch_conf'] - name: Opensearch service status block: - name: Install the opensearch systemd unit template: src: opensearch.service.j2 dest: /etc/systemd/system/opensearch.service owner: root group: root mode: 0644 register: opensearch_unit_update notify: Restart opensearch - name: Reload systemd systemd: daemon_reload: true when: opensearch_unit_update is changed - name: Ensure that opensearch is running and enabled service: opensearch status: started enabled: true when: opensearch_enabled - name: Ensure that opensearch is stopped and disabled service: opensearch status: stopped enabled: false when: not opensearch_enabled tags: ['opensearch', 'opensearch_service']