class ThreeScaleToolbox::Commands::ImportCommand::OpenAPI::UpdateServiceOidcConfStep
Public Instance Methods
call()
click to toggle source
Updates OIDC config
# File lib/3scale_toolbox/commands/import_command/openapi/update_service_oidc_conf_step.rb, line 10 def call # setting required attrs, operation is idempotent oidc_settings = {} add_flow_settings(oidc_settings) return unless oidc_settings.size.positive? res = service.update_oidc oidc_settings if (errors = res['errors']) raise ThreeScaleToolbox::Error, "Service oidc has not been updated. #{errors}" end puts 'Service oidc updated' end
Private Instance Methods
add_flow_settings(settings)
click to toggle source
# File lib/3scale_toolbox/commands/import_command/openapi/update_service_oidc_conf_step.rb, line 28 def add_flow_settings(settings) # only applies to oauth2 sec type return if api_spec.security.nil? || api_spec.security[:type] != 'oauth2' oidc_configuration = { standard_flow_enabled: false, implicit_flow_enabled: false, service_accounts_enabled: false, direct_access_grants_enabled: false }.merge(api_spec.security[:flow] => true) settings.merge!(oidc_configuration) end