module Elasticsearch::XPack::API::Autoscaling::Actions

Public Instance Methods

delete_autoscaling_policy(arguments = {}) click to toggle source

Deletes an autoscaling policy. Designed for indirect use by ECE/ESS and ECK. Direct use is not supported.

@option arguments [String] :name the name of the autoscaling policy @option arguments [Hash] :headers Custom HTTP headers

@see www.elastic.co/guide/en/elasticsearch/reference/7.14/autoscaling-delete-autoscaling-policy.html

# File lib/elasticsearch/xpack/api/actions/autoscaling/delete_autoscaling_policy.rb, line 30
def delete_autoscaling_policy(arguments = {})
  raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]

  headers = arguments.delete(:headers) || {}

  arguments = arguments.clone

  _name = arguments.delete(:name)

  method = Elasticsearch::API::HTTP_DELETE
  path   = "_autoscaling/policy/#{Elasticsearch::API::Utils.__listify(_name)}"
  params = {}

  body = nil
  perform_request(method, path, params, body, headers).body
end
get_autoscaling_capacity(arguments = {}) click to toggle source

Gets the current autoscaling capacity based on the configured autoscaling policy. Designed for indirect use by ECE/ESS and ECK. Direct use is not supported.

@option arguments [Hash] :headers Custom HTTP headers

@see www.elastic.co/guide/en/elasticsearch/reference/7.14/autoscaling-get-autoscaling-capacity.html

# File lib/elasticsearch/xpack/api/actions/autoscaling/get_autoscaling_capacity.rb, line 29
def get_autoscaling_capacity(arguments = {})
  headers = arguments.delete(:headers) || {}

  arguments = arguments.clone

  method = Elasticsearch::API::HTTP_GET
  path   = "_autoscaling/capacity"
  params = {}

  body = nil
  perform_request(method, path, params, body, headers).body
end
get_autoscaling_decision(arguments = {}) click to toggle source

Gets the current autoscaling decision based on the configured autoscaling policy, indicating whether or not autoscaling is needed. This functionality is Experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features.

@option arguments [Hash] :headers Custom HTTP headers

@see www.elastic.co/guide/en/elasticsearch/reference/7.x/autoscaling-get-autoscaling-decision.html

# File lib/elasticsearch/xpack/api/actions/autoscaling/get_autoscaling_decision.rb, line 33
def get_autoscaling_decision(arguments = {})
  headers = arguments.delete(:headers) || {}

  arguments = arguments.clone

  method = Elasticsearch::API::HTTP_GET
  path   = "_autoscaling/decision"
  params = {}

  body = nil
  perform_request(method, path, params, body, headers).body
end
get_autoscaling_policy(arguments = {}) click to toggle source

Retrieves an autoscaling policy. Designed for indirect use by ECE/ESS and ECK. Direct use is not supported.

@option arguments [String] :name the name of the autoscaling policy @option arguments [Hash] :headers Custom HTTP headers

@see www.elastic.co/guide/en/elasticsearch/reference/7.14/autoscaling-get-autoscaling-policy.html

# File lib/elasticsearch/xpack/api/actions/autoscaling/get_autoscaling_policy.rb, line 30
def get_autoscaling_policy(arguments = {})
  raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]

  headers = arguments.delete(:headers) || {}

  arguments = arguments.clone

  _name = arguments.delete(:name)

  method = Elasticsearch::API::HTTP_GET
  path   = "_autoscaling/policy/#{Elasticsearch::API::Utils.__listify(_name)}"
  params = {}

  body = nil
  perform_request(method, path, params, body, headers).body
end
put_autoscaling_policy(arguments = {}) click to toggle source

Creates a new autoscaling policy. Designed for indirect use by ECE/ESS and ECK. Direct use is not supported.

@option arguments [String] :name the name of the autoscaling policy @option arguments [Hash] :headers Custom HTTP headers @option arguments [Hash] :body the specification of the autoscaling policy (Required)

@see www.elastic.co/guide/en/elasticsearch/reference/7.14/autoscaling-put-autoscaling-policy.html

# File lib/elasticsearch/xpack/api/actions/autoscaling/put_autoscaling_policy.rb, line 31
def put_autoscaling_policy(arguments = {})
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
  raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]

  headers = arguments.delete(:headers) || {}

  arguments = arguments.clone

  _name = arguments.delete(:name)

  method = Elasticsearch::API::HTTP_PUT
  path   = "_autoscaling/policy/#{Elasticsearch::API::Utils.__listify(_name)}"
  params = {}

  body = arguments[:body]
  perform_request(method, path, params, body, headers).body
end