1
+ ---
2
+ - name : OpenSearch Install | Install from .deb
3
+ when : ansible_os_family == 'Debian'
4
+ block :
5
+ - name : OpenSearch Install | Download GPG Key
6
+ ansible.builtin.get_url :
7
+ url : https://artifacts.opensearch.org/publickeys/opensearch.pgp
8
+ dest : /tmp/opensearch.pgp
9
+
10
+ - name : OpenSearch Install | Install GPG Key
11
+ ansible.builtin.command : gpg --dearmor --batch --yes -o /usr/share/keyrings/opensearch-keyring /tmp/opensearch.pgp
12
+
13
+ - name : OpenSearch Install | Deploy deb repository file
14
+ ansible.builtin.apt_repository :
15
+ repo : deb [signed-by=/usr/share/keyrings/opensearch-keyring] https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt stable main
16
+ state : present
17
+ filename : opensearch-core.list
18
+ notify : update repository cache
19
+
20
+ - name : OpenSearch Install | Flush handlers
21
+ meta : flush_handlers
22
+
23
+ - name : OpenSearch Install | Get installed Packages
24
+ package_facts :
25
+ manager : " auto"
26
+
27
+ - name : OpenSearch Install | Unhold opensearch
28
+ ansible.builtin.dpkg_selections :
29
+ name : opensearch
30
+ selection : install
31
+ when : " 'opensearch' in ansible_facts.packages"
32
+
33
+ - name : OpenSearch Install | Install OpenSearch
34
+ ansible.builtin.apt :
35
+ name : opensearch={{ os_version }}
36
+ state : present
37
+ environment :
38
+ OPENSEARCH_INITIAL_ADMIN_PASSWORD : " {{ admin_password }}"
39
+
40
+ - name : OpenSearch Install | Hold opensearch
41
+ ansible.builtin.dpkg_selections :
42
+ name : opensearch
43
+ selection : hold
44
+
45
+ - name : OpenSearch Install | Install from .rpm
46
+ when : ansible_os_family == 'RedHat'
47
+ block :
48
+ - name : OpenSearch Install | Install OpenSearch
49
+ ansible.builtin.yum :
50
+ name : https://artifacts.opensearch.org/releases/bundle/opensearch/{{ os_version }}/opensearch-{{ os_version }}-linux-x64.rpm
51
+ state : present
52
+ disable_gpg_check : true
53
+
54
+
55
+ - name : OpenSearch Install | Install from tar
56
+ when : ansible_os_family != 'Debian' and ansible_os_family != 'RedHat'
57
+ block :
58
+ - name : OpenSearch Install | Download opensearch {{ os_version }}
59
+ ansible.builtin.get_url :
60
+ url : " {{ os_download_url }}/{{ os_version }}/opensearch-{{ os_version }}-linux-x64.tar.gz"
61
+ dest : " /tmp/opensearch.tar.gz"
62
+ register : download
63
+
64
+ - name : OpenSearch Install | Create opensearch user
65
+ ansible.builtin.user :
66
+ name : " {{ os_user }}"
67
+ state : present
68
+ shell : /bin/false
69
+ create_home : true
70
+ home : " {{ os_home }}"
71
+ when : download.changed or iac_enable
72
+
73
+ - name : OpenSearch Install | Create home directory
74
+ ansible.builtin.file :
75
+ path : " {{ os_home }}"
76
+ state : directory
77
+ owner : " {{ os_user }}"
78
+ group : " {{ os_user }}"
79
+ when : download.changed or iac_enable
80
+
81
+ - name : OpenSearch Install | Extract the tar file
82
+ ansible.builtin.command : chdir=/tmp/ tar -xvzf opensearch.tar.gz -C "{{ os_home }}" --strip-components=1
83
+ when : download.changed or iac_enable
84
+
85
+ - name : OpenSearch Install | create systemd service
86
+ ansible.builtin.template :
87
+ src : opensearch.service
88
+ dest : " {{ systemctl_path }}/opensearch.service"
0 commit comments