Method: Puppet::Provider::ElasticPlugin#es_version

Defined in:
lib/puppet/provider/elastic_plugin.rb

#es_versionObject



153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
# File 'lib/puppet/provider/elastic_plugin.rb', line 153

def es_version
  return @es_version if @es_version
  es_save = ENV['ES_INCLUDE']
  java_save = ENV['JAVA_HOME']

  os = Facter.value('osfamily')
  if os == 'OpenBSD'
    ENV['JAVA_HOME'] = javapathhelper('-h', 'elasticsearch').chomp
    ENV['ES_INCLUDE'] = '/etc/elasticsearch/elasticsearch.in.sh'
  end
  begin
    version = es('-version')
  rescue
    ENV['ES_INCLUDE'] = es_save if es_save
    ENV['JAVA_HOME'] = java_save if java_save
    raise "Unknown ES version. Got #{version.inspect}"
  ensure
    ENV['ES_INCLUDE'] = es_save if es_save
    ENV['JAVA_HOME'] = java_save if java_save
    @es_version = version.scan(/\d+\.\d+\.\d+(?:\-\S+)?/).first
    debug "Found ES version #{@es_version}"
  end
end