module Nucleus::Adapters::V1::OpenshiftV2::Regions
Public Instance Methods
region(region_name)
click to toggle source
@see Stub#region
# File lib/nucleus/adapters/v1/openshift_v2/regions.rb, line 16 def region(region_name) region = convert_region(region_name) raise Errors::AdapterResourceNotFoundError, "Region '#{region_name}' does not exist at the endpoint" if region.nil? region end
regions()
click to toggle source
@see Stub#regions
# File lib/nucleus/adapters/v1/openshift_v2/regions.rb, line 7 def regions response = get('/regions').body[:data] response.each { |region| to_nucleus_region(region) } # filter all non-available regions response.delete_if { |region| region[:allow_selection] == false } response end
Private Instance Methods
convert_region(region_name)
click to toggle source
# File lib/nucleus/adapters/v1/openshift_v2/regions.rb, line 34 def convert_region(region_name) found_region = native_region(region_name) found_region = to_nucleus_region(found_region) unless found_region.nil? found_region end
native_region(region_name)
click to toggle source
# File lib/nucleus/adapters/v1/openshift_v2/regions.rb, line 40 def native_region(region_name) response = get('/regions').body[:data] response.delete_if { |region| region[:allow_selection] == false } response.find { |region| region[:name].casecmp(region_name) == 0 } end
retrieve_region(application)
click to toggle source
Retrieve a native region for the abstracted ID and assign its name to the application entity
# File lib/nucleus/adapters/v1/openshift_v2/regions.rb, line 26 def retrieve_region(application) return unless application.key?(:region) found_region = native_region(application[:region]) raise Errors::SemanticAdapterRequestError, "Region '#{application[:region]}' does not exist at the endpoint" if found_region.nil? application[:region] = found_region[:name] end
to_nucleus_region(region)
click to toggle source
# File lib/nucleus/adapters/v1/openshift_v2/regions.rb, line 46 def to_nucleus_region(region) region[:id] = region.delete(:name) # first created zone region[:created_at] = region[:zones].min_by { |v| v[:created_at] } # last updated zone region[:updated_at] = region[:zones].max_by { |v| v[:updated_at] } region end