35 |
35 |
36 |
36 |
37 # set params: in operation |
37 # set params: in operation |
38 if $elasticsearch::ensure == 'present' { |
38 if $elasticsearch::ensure == 'present' { |
39 |
39 |
|
40 if $elasticsearch::restart_package_change { |
|
41 Package[$elasticsearch::package_name] ~> Elasticsearch::Service <| |> |
|
42 } |
|
43 Package[$elasticsearch::package_name] ~> Exec['remove_plugin_dir'] |
|
44 |
40 # Create directory to place the package file |
45 # Create directory to place the package file |
|
46 $package_dir = $elasticsearch::package_dir |
41 exec { 'create_package_dir_elasticsearch': |
47 exec { 'create_package_dir_elasticsearch': |
42 cwd => '/', |
48 cwd => '/', |
43 path => ['/usr/bin', '/bin'], |
49 path => ['/usr/bin', '/bin'], |
44 command => "mkdir -p ${elasticsearch::package_dir}", |
50 command => "mkdir -p ${package_dir}", |
45 creates => $elasticsearch::package_dir, |
51 creates => $package_dir, |
46 } |
52 } |
47 |
53 |
48 file { $elasticsearch::package_dir: |
54 file { $package_dir: |
49 ensure => 'directory', |
55 ensure => 'directory', |
50 purge => $elasticsearch::purge_package_dir, |
56 purge => $elasticsearch::purge_package_dir, |
51 force => $elasticsearch::purge_package_dir, |
57 force => $elasticsearch::purge_package_dir, |
52 backup => false, |
58 backup => false, |
53 require => Exec['create_package_dir_elasticsearch'], |
59 require => Exec['create_package_dir_elasticsearch'], |
54 } |
60 } |
55 |
|
56 |
61 |
57 # Check if we want to install a specific version or not |
62 # Check if we want to install a specific version or not |
58 if $elasticsearch::version == false { |
63 if $elasticsearch::version == false { |
59 |
64 |
60 $package_ensure = $elasticsearch::autoupgrade ? { |
65 $package_ensure = $elasticsearch::autoupgrade ? { |
75 case $elasticsearch::package_provider { |
80 case $elasticsearch::package_provider { |
76 'package': { $before = Package[$elasticsearch::package_name] } |
81 'package': { $before = Package[$elasticsearch::package_name] } |
77 default: { fail("software provider \"${elasticsearch::package_provider}\".") } |
82 default: { fail("software provider \"${elasticsearch::package_provider}\".") } |
78 } |
83 } |
79 |
84 |
80 $package_dir = $elasticsearch::package_dir |
|
81 |
85 |
82 $filenameArray = split($elasticsearch::package_url, '/') |
86 $filenameArray = split($elasticsearch::package_url, '/') |
83 $basefilename = $filenameArray[-1] |
87 $basefilename = $filenameArray[-1] |
84 |
88 |
85 $sourceArray = split($elasticsearch::package_url, ':') |
89 $sourceArray = split($elasticsearch::package_url, ':') |
109 $exec_environment = [ |
113 $exec_environment = [ |
110 'use_proxy=yes', |
114 'use_proxy=yes', |
111 "http_proxy=${elasticsearch::proxy_url}", |
115 "http_proxy=${elasticsearch::proxy_url}", |
112 "https_proxy=${elasticsearch::proxy_url}", |
116 "https_proxy=${elasticsearch::proxy_url}", |
113 ] |
117 ] |
|
118 } else { |
|
119 $exec_environment = [] |
114 } |
120 } |
115 |
121 |
116 exec { 'download_package_elasticsearch': |
122 exec { 'download_package_elasticsearch': |
117 command => "${elasticsearch::params::download_tool} ${pkg_source} ${elasticsearch::package_url} 2> /dev/null", |
123 command => "${elasticsearch::params::download_tool} ${pkg_source} ${elasticsearch::package_url} 2> /dev/null", |
118 creates => $pkg_source, |
124 creates => $pkg_source, |
153 } |
159 } |
154 |
160 |
155 # Package removal |
161 # Package removal |
156 } else { |
162 } else { |
157 |
163 |
158 if ($::operatingsystem == 'OpenSuSE') { |
164 if ($::osfamily == 'Suse') { |
159 Package { |
165 Package { |
160 provider => 'rpm', |
166 provider => 'rpm', |
161 } |
167 } |
|
168 $package_ensure = 'absent' |
|
169 } else { |
|
170 $package_ensure = 'purged' |
162 } |
171 } |
163 $package_ensure = 'purged' |
|
164 |
172 |
165 } |
173 } |
166 |
174 |
167 if ($elasticsearch::package_provider == 'package') { |
175 if ($elasticsearch::package_provider == 'package') { |
168 |
176 |
169 package { $elasticsearch::package_name: |
177 package { $elasticsearch::package_name: |
170 ensure => $package_ensure, |
178 ensure => $package_ensure, |
171 } |
179 } |
|
180 |
|
181 exec { 'remove_plugin_dir': |
|
182 refreshonly => true, |
|
183 command => "rm -rf ${elasticsearch::plugindir}", |
|
184 } |
|
185 |
172 |
186 |
173 } else { |
187 } else { |
174 fail("\"${elasticsearch::package_provider}\" is not supported") |
188 fail("\"${elasticsearch::package_provider}\" is not supported") |
175 } |
189 } |
176 |
190 |