Class: ThreeScaleToolbox::Commands::ImportCommand::OpenAPI::UpdateServiceProxyStep

Inherits:
Object
  • Object
show all
Includes:
Step
Defined in:
lib/3scale_toolbox/commands/import_command/openapi/update_service_proxy_step.rb

Instance Attribute Summary

Attributes included from Step

#context

Instance Method Summary collapse

Methods included from Step

#api_spec, #backend_api_host_header, #backend_api_secret_token, #base_path, #build_3scale_operations, #default_credentials_userkey, #initialize, #oidc_issuer_endpoint, #oidc_issuer_type, #operations, #override_private_base_url, #override_private_basepath, #override_public_basepath, #prefix_matching, #private_base_path, #production_public_base_url, #public_base_path, #resource, #service, #service=, #staging_public_base_url, #target_system_name, #threescale_client

Instance Method Details

#callObject

Updates Proxy config



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/3scale_toolbox/commands/import_command/openapi/update_service_proxy_step.rb', line 10

def call
  proxy_settings = {}

  add_endpoint_settings(proxy_settings)
  add_sandbox_endpoint_settings(proxy_settings)
  add_api_backend_settings(proxy_settings)
  add_security_proxy_settings(proxy_settings)

  return unless proxy_settings.size.positive?

  res = service.update_proxy proxy_settings
  if (errors = res['errors'])
    raise ThreeScaleToolbox::Error, "Service proxy has not been updated. #{errors}"
  end

  puts 'Service proxy updated'
end