Hello,
I have been trying to create an index using the ruby integrations of Elasticsearch. The code that I have as of now is as follows.
build_id = ENV['BUILD_NUM']
elastic_ip = ENV['ELASTIC_IP']
project_name = params[:project_name]
total_tests = params[:total_tests]
code_coverage = params[:code_coverage]
build_status = params[:build_status]
elasticBody = {totalTests: total_tests, codeCoverage: code_coverage, buildStatus: build_status}
client = Elasticsearch::Client.new host: elastic_ip, log: true
client.index index: project_name.downcase, id: build_id.to_i, body: elasticBody
This code is posting data to Elastic with no specific data type. So is there a way that I can specify the data type for the fields (total_tests = integer, codeCoverage = float, buildStatus = keyword) explicitly? My idea was to have the code for elasticBody as follows but I'm not sure if that would work.
elasticBody = {totalTests: total_tests.to_i, codeCoverage: code_coverage.to_f, buildStatus: build_status.to_s}
Thank you!