oraclebmc 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE.txt +82 -0
- data/README.md +220 -0
- data/lib/oraclebmc/api_client.rb +349 -0
- data/lib/oraclebmc/config.rb +80 -0
- data/lib/oraclebmc/config_file_loader.rb +85 -0
- data/lib/oraclebmc/core/blockstorage_client.rb +459 -0
- data/lib/oraclebmc/core/compute_client.rb +1053 -0
- data/lib/oraclebmc/core/core.rb +82 -0
- data/lib/oraclebmc/core/models/attach_i_scsi_volume_details.rb +179 -0
- data/lib/oraclebmc/core/models/attach_volume_details.rb +206 -0
- data/lib/oraclebmc/core/models/capture_console_history_details.rb +162 -0
- data/lib/oraclebmc/core/models/console_history.rb +252 -0
- data/lib/oraclebmc/core/models/cpe.rb +209 -0
- data/lib/oraclebmc/core/models/create_cpe_details.rb +187 -0
- data/lib/oraclebmc/core/models/create_dhcp_details.rb +195 -0
- data/lib/oraclebmc/core/models/create_drg_attachment_details.rb +184 -0
- data/lib/oraclebmc/core/models/create_drg_details.rb +173 -0
- data/lib/oraclebmc/core/models/create_image_details.rb +188 -0
- data/lib/oraclebmc/core/models/create_internet_gateway_details.rb +195 -0
- data/lib/oraclebmc/core/models/create_ip_sec_connection_details.rb +210 -0
- data/lib/oraclebmc/core/models/create_route_table_details.rb +195 -0
- data/lib/oraclebmc/core/models/create_security_list_details.rb +206 -0
- data/lib/oraclebmc/core/models/create_subnet_details.rb +253 -0
- data/lib/oraclebmc/core/models/create_vcn_details.rb +187 -0
- data/lib/oraclebmc/core/models/create_volume_backup_details.rb +173 -0
- data/lib/oraclebmc/core/models/create_volume_details.rb +211 -0
- data/lib/oraclebmc/core/models/dhcp_dns_option.rb +203 -0
- data/lib/oraclebmc/core/models/dhcp_option.rb +171 -0
- data/lib/oraclebmc/core/models/dhcp_options.rb +246 -0
- data/lib/oraclebmc/core/models/drg.rb +224 -0
- data/lib/oraclebmc/core/models/drg_attachment.rb +246 -0
- data/lib/oraclebmc/core/models/egress_security_rule.rb +240 -0
- data/lib/oraclebmc/core/models/i_scsi_volume_attachment.rb +254 -0
- data/lib/oraclebmc/core/models/icmp_options.rb +173 -0
- data/lib/oraclebmc/core/models/image.rb +282 -0
- data/lib/oraclebmc/core/models/ingress_security_rule.rb +240 -0
- data/lib/oraclebmc/core/models/instance.rb +326 -0
- data/lib/oraclebmc/core/models/internet_gateway.rb +248 -0
- data/lib/oraclebmc/core/models/ip_sec_connection.rb +261 -0
- data/lib/oraclebmc/core/models/ip_sec_connection_device_config.rb +195 -0
- data/lib/oraclebmc/core/models/ip_sec_connection_device_status.rb +198 -0
- data/lib/oraclebmc/core/models/launch_instance_details.rb +327 -0
- data/lib/oraclebmc/core/models/port_range.rb +175 -0
- data/lib/oraclebmc/core/models/route_rule.rb +177 -0
- data/lib/oraclebmc/core/models/route_table.rb +246 -0
- data/lib/oraclebmc/core/models/security_list.rb +257 -0
- data/lib/oraclebmc/core/models/shape.rb +164 -0
- data/lib/oraclebmc/core/models/subnet.rb +325 -0
- data/lib/oraclebmc/core/models/tcp_options.rb +177 -0
- data/lib/oraclebmc/core/models/tunnel_config.rb +193 -0
- data/lib/oraclebmc/core/models/tunnel_status.rb +218 -0
- data/lib/oraclebmc/core/models/udp_options.rb +177 -0
- data/lib/oraclebmc/core/models/update_cpe_details.rb +162 -0
- data/lib/oraclebmc/core/models/update_dhcp_details.rb +172 -0
- data/lib/oraclebmc/core/models/update_drg_attachment_details.rb +162 -0
- data/lib/oraclebmc/core/models/update_drg_details.rb +162 -0
- data/lib/oraclebmc/core/models/update_image_details.rb +165 -0
- data/lib/oraclebmc/core/models/update_instance_details.rb +165 -0
- data/lib/oraclebmc/core/models/update_internet_gateway_details.rb +173 -0
- data/lib/oraclebmc/core/models/update_ip_sec_connection_details.rb +162 -0
- data/lib/oraclebmc/core/models/update_route_table_details.rb +173 -0
- data/lib/oraclebmc/core/models/update_security_list_details.rb +184 -0
- data/lib/oraclebmc/core/models/update_subnet_details.rb +162 -0
- data/lib/oraclebmc/core/models/update_vcn_details.rb +162 -0
- data/lib/oraclebmc/core/models/update_volume_backup_details.rb +162 -0
- data/lib/oraclebmc/core/models/update_volume_details.rb +163 -0
- data/lib/oraclebmc/core/models/vcn.rb +272 -0
- data/lib/oraclebmc/core/models/vnic.rb +274 -0
- data/lib/oraclebmc/core/models/vnic_attachment.rb +271 -0
- data/lib/oraclebmc/core/models/volume.rb +249 -0
- data/lib/oraclebmc/core/models/volume_attachment.rb +284 -0
- data/lib/oraclebmc/core/models/volume_backup.rb +273 -0
- data/lib/oraclebmc/core/util.rb +1 -0
- data/lib/oraclebmc/core/virtual_network_client.rb +2263 -0
- data/lib/oraclebmc/errors.rb +62 -0
- data/lib/oraclebmc/global_context.rb +21 -0
- data/lib/oraclebmc/identity/identity.rb +38 -0
- data/lib/oraclebmc/identity/identity_client.rb +1462 -0
- data/lib/oraclebmc/identity/models/add_user_to_group_details.rb +173 -0
- data/lib/oraclebmc/identity/models/api_key.rb +251 -0
- data/lib/oraclebmc/identity/models/availability_domain.rb +173 -0
- data/lib/oraclebmc/identity/models/compartment.rb +251 -0
- data/lib/oraclebmc/identity/models/create_api_key_details.rb +162 -0
- data/lib/oraclebmc/identity/models/create_compartment_details.rb +187 -0
- data/lib/oraclebmc/identity/models/create_group_details.rb +186 -0
- data/lib/oraclebmc/identity/models/create_policy_details.rb +215 -0
- data/lib/oraclebmc/identity/models/create_swift_password_details.rb +163 -0
- data/lib/oraclebmc/identity/models/create_user_details.rb +186 -0
- data/lib/oraclebmc/identity/models/group.rb +251 -0
- data/lib/oraclebmc/identity/models/policy.rb +277 -0
- data/lib/oraclebmc/identity/models/swift_password.rb +266 -0
- data/lib/oraclebmc/identity/models/ui_password.rb +227 -0
- data/lib/oraclebmc/identity/models/update_compartment_details.rb +162 -0
- data/lib/oraclebmc/identity/models/update_group_details.rb +162 -0
- data/lib/oraclebmc/identity/models/update_policy_details.rb +190 -0
- data/lib/oraclebmc/identity/models/update_state_details.rb +163 -0
- data/lib/oraclebmc/identity/models/update_swift_password_details.rb +162 -0
- data/lib/oraclebmc/identity/models/update_user_details.rb +162 -0
- data/lib/oraclebmc/identity/models/user.rb +257 -0
- data/lib/oraclebmc/identity/models/user_group_membership.rb +249 -0
- data/lib/oraclebmc/identity/util.rb +1 -0
- data/lib/oraclebmc/load_balancer/load_balancer.rb +45 -0
- data/lib/oraclebmc/load_balancer/load_balancer_client.rb +1218 -0
- data/lib/oraclebmc/load_balancer/models/backend.rb +262 -0
- data/lib/oraclebmc/load_balancer/models/backend_details.rb +248 -0
- data/lib/oraclebmc/load_balancer/models/backend_set.rb +211 -0
- data/lib/oraclebmc/load_balancer/models/backend_set_details.rb +197 -0
- data/lib/oraclebmc/load_balancer/models/certificate.rb +209 -0
- data/lib/oraclebmc/load_balancer/models/certificate_details.rb +245 -0
- data/lib/oraclebmc/load_balancer/models/create_backend_details.rb +248 -0
- data/lib/oraclebmc/load_balancer/models/create_backend_set_details.rb +210 -0
- data/lib/oraclebmc/load_balancer/models/create_certificate_details.rb +245 -0
- data/lib/oraclebmc/load_balancer/models/create_listener_details.rb +216 -0
- data/lib/oraclebmc/load_balancer/models/create_load_balancer_details.rb +233 -0
- data/lib/oraclebmc/load_balancer/models/health_checker.rb +265 -0
- data/lib/oraclebmc/load_balancer/models/health_checker_details.rb +264 -0
- data/lib/oraclebmc/load_balancer/models/ip_address.rb +165 -0
- data/lib/oraclebmc/load_balancer/models/listener.rb +216 -0
- data/lib/oraclebmc/load_balancer/models/listener_details.rb +202 -0
- data/lib/oraclebmc/load_balancer/models/load_balancer.rb +296 -0
- data/lib/oraclebmc/load_balancer/models/load_balancer_policy.rb +162 -0
- data/lib/oraclebmc/load_balancer/models/load_balancer_protocol.rb +162 -0
- data/lib/oraclebmc/load_balancer/models/load_balancer_shape.rb +162 -0
- data/lib/oraclebmc/load_balancer/models/ssl_configuration.rb +195 -0
- data/lib/oraclebmc/load_balancer/models/ssl_configuration_details.rb +195 -0
- data/lib/oraclebmc/load_balancer/models/update_backend_details.rb +220 -0
- data/lib/oraclebmc/load_balancer/models/update_backend_set_details.rb +197 -0
- data/lib/oraclebmc/load_balancer/models/update_health_checker_details.rb +263 -0
- data/lib/oraclebmc/load_balancer/models/update_listener_details.rb +202 -0
- data/lib/oraclebmc/load_balancer/models/update_load_balancer_details.rb +165 -0
- data/lib/oraclebmc/load_balancer/models/work_request.rb +269 -0
- data/lib/oraclebmc/load_balancer/models/work_request_error.rb +185 -0
- data/lib/oraclebmc/load_balancer/util.rb +55 -0
- data/lib/oraclebmc/regions.rb +41 -0
- data/lib/oraclebmc/response.rb +86 -0
- data/lib/oraclebmc/signer.rb +119 -0
- data/lib/oraclebmc/version.rb +5 -0
- data/lib/oraclebmc/waiter.rb +111 -0
- data/lib/oraclebmc.rb +20 -0
- metadata +265 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
|
|
2
|
+
|
|
3
|
+
require 'base64'
|
|
4
|
+
require 'digest'
|
|
5
|
+
require 'openssl'
|
|
6
|
+
require 'securerandom'
|
|
7
|
+
require 'time'
|
|
8
|
+
require 'uri'
|
|
9
|
+
require 'cgi'
|
|
10
|
+
|
|
11
|
+
module OracleBMC
|
|
12
|
+
|
|
13
|
+
# Used to sign HTTP requests as required by Oracle Bare Metal Cloud services.
|
|
14
|
+
class Signer
|
|
15
|
+
|
|
16
|
+
# The Oracle Bare Metal Cloud Services API signature version
|
|
17
|
+
SIGNATURE_VERSION = "1"
|
|
18
|
+
|
|
19
|
+
# Creates a Signer
|
|
20
|
+
#
|
|
21
|
+
# @param [String] user OCID of the user to be used for authentication, for example "ocidv1:user:oc1:phx:1460406592659:aaaaaaaawcbqrkycbolrirg2n3xjl5fyxe".
|
|
22
|
+
# @param [String] fingerprint Fingerprint of the key used for authentication, for example "20:3b:97:13:55:1c:5b:0d:d3:37:d8:50:4e:c5:3a:34"
|
|
23
|
+
# @param [String] tenancy OCID of the tenancy
|
|
24
|
+
# @param [String] private_key_file Full path and filename of the unencrypted PEM file, for example "/Users/bgustafs/.ssh/id_rsa.pem"
|
|
25
|
+
# @param [String] pass_phrase Optional pass phrase used to encrypt the private key
|
|
26
|
+
def initialize(user, fingerprint, tenancy, private_key_file, pass_phrase:nil)
|
|
27
|
+
fail 'Missing required parameter user.' unless user
|
|
28
|
+
fail 'Missing required parameter fingerprint.' unless fingerprint
|
|
29
|
+
fail 'Missing required parameter tenancy.' unless tenancy
|
|
30
|
+
fail 'Missing required parameter private_key_file.' unless private_key_file
|
|
31
|
+
|
|
32
|
+
@key_id = tenancy + "/" + user + "/" + fingerprint
|
|
33
|
+
@private_key_file = private_key_file
|
|
34
|
+
@pass_phrase = pass_phrase
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# Generates the correct signature and adds it to the
|
|
38
|
+
# headers that are passed in. Also injects any required
|
|
39
|
+
# headers that might be missing.
|
|
40
|
+
#
|
|
41
|
+
# @param [Symbol] method The HTTP method, such as :get or :post.
|
|
42
|
+
# @param [String] uri The URI, such as 'https://iaas.us-phoenix-1.oraclecloud.com/20160918/volumeAttachments/'
|
|
43
|
+
# @param [Hash] headers A hash of headers
|
|
44
|
+
# @param [String] body The request body
|
|
45
|
+
def sign(method, uri, headers, body)
|
|
46
|
+
method = method.to_sym.downcase
|
|
47
|
+
uri = URI(uri)
|
|
48
|
+
path = uri.query.nil? ? uri.path : "#{uri.path}?#{uri.query}"
|
|
49
|
+
inject_missing_headers(method, headers, body, uri)
|
|
50
|
+
signature = compute_signature(headers, method, path)
|
|
51
|
+
unless signature.nil?
|
|
52
|
+
inject_authorization_header(headers, method, signature)
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
private
|
|
57
|
+
|
|
58
|
+
GENERIC_HEADERS = [:"date", :"(request-target)", :"host"]
|
|
59
|
+
BODY_HEADERS = [:"content-length", :"content-type", :"x-content-sha256"]
|
|
60
|
+
|
|
61
|
+
OPERATION_HEADER_MAPPING = {
|
|
62
|
+
options: [],
|
|
63
|
+
get: GENERIC_HEADERS,
|
|
64
|
+
head: GENERIC_HEADERS,
|
|
65
|
+
delete: GENERIC_HEADERS,
|
|
66
|
+
put: GENERIC_HEADERS + BODY_HEADERS,
|
|
67
|
+
post: GENERIC_HEADERS + BODY_HEADERS
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
def inject_missing_headers(method, headers, body, uri)
|
|
71
|
+
headers["date"] ||= Time.now.utc.httpdate
|
|
72
|
+
headers["content-type"] ||= "application/json"
|
|
73
|
+
headers["accept"] ||= "*/*"
|
|
74
|
+
headers["host"] ||= uri.host
|
|
75
|
+
|
|
76
|
+
if method == :put || method == :post
|
|
77
|
+
body ||= ''
|
|
78
|
+
headers["content-length"] ||= body.length.to_s
|
|
79
|
+
headers["x-content-sha256"] ||= Digest::SHA256.base64digest(body)
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
def inject_authorization_header(headers, method, signature)
|
|
84
|
+
signed_headers = OPERATION_HEADER_MAPPING[method].map(&:to_s).join(" ")
|
|
85
|
+
headers["authorization"] = [
|
|
86
|
+
%(Signature headers="#{signed_headers}"),
|
|
87
|
+
%(keyId="#{@key_id}"),
|
|
88
|
+
%(algorithm="rsa-sha256"),
|
|
89
|
+
%(signature="#{signature}"),
|
|
90
|
+
%(version="#{SIGNATURE_VERSION}")
|
|
91
|
+
].join(",")
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def compute_signature(headers, method, path)
|
|
95
|
+
return if OPERATION_HEADER_MAPPING[method].empty?
|
|
96
|
+
signing_string = OPERATION_HEADER_MAPPING[method].map do |header|
|
|
97
|
+
if header == :"(request-target)"
|
|
98
|
+
"#{header}: #{method.downcase} #{path}"
|
|
99
|
+
else
|
|
100
|
+
"#{header}: #{headers[header.to_s]}"
|
|
101
|
+
end
|
|
102
|
+
end.join("\n")
|
|
103
|
+
|
|
104
|
+
signature = private_key.sign(OpenSSL::Digest::SHA256.new, signing_string.encode("ascii"))
|
|
105
|
+
Base64.strict_encode64(signature)
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
def private_key
|
|
109
|
+
# If a pass_phase was not provided and the key is in fact encrypted, then passing in
|
|
110
|
+
# nil for the passphrase here will show a user prompt and block until there is a response.
|
|
111
|
+
# Passing in an empty string will work for some versions of Ruby's openssl wrapper, but
|
|
112
|
+
# other versions will enforce the 4 character password minimum at this point. Passing in
|
|
113
|
+
# a dummy password that's greater than 4 characters avoids both problems, and will
|
|
114
|
+
# always succeed if the file is not encrypted.
|
|
115
|
+
@private_key ||= OpenSSL::PKey::RSA.new(File.read(@private_key_file), @pass_phrase || SecureRandom.uuid)
|
|
116
|
+
end
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
end
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
|
|
2
|
+
|
|
3
|
+
module OracleBMC
|
|
4
|
+
module Waiter
|
|
5
|
+
module Errors
|
|
6
|
+
# Raised when a call to wait_until reaches the maximum wait time.
|
|
7
|
+
class MaximumWaitTimeExceededError < RuntimeError; end
|
|
8
|
+
|
|
9
|
+
# Raised when wait_until is called on a response that does not
|
|
10
|
+
# support waiters. Typically, waiters are only supported for
|
|
11
|
+
# get operations.
|
|
12
|
+
class WaitUntilNotSupportedError < RuntimeError; end
|
|
13
|
+
|
|
14
|
+
# If thrown from the yield statement of a waiter, it will cause the
|
|
15
|
+
# waiter to fail with this exception.
|
|
16
|
+
class WaiterFailedError < RuntimeError; end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
class Response
|
|
21
|
+
|
|
22
|
+
# Wait until the value of the given property in the response data has
|
|
23
|
+
# the given value. This will block the current thread until the
|
|
24
|
+
# the desired state is reached, the maximum wait time is reached, or the
|
|
25
|
+
# optional yield block throws :stop_succeed or :stop_fail. This is only
|
|
26
|
+
# supported for responses resulting from GET operations. A typical use
|
|
27
|
+
# case is to wait on an instance until it is in a running state:
|
|
28
|
+
#
|
|
29
|
+
# compute_client.get_instance(@instance_id).wait_until(:lifecycle_state, OracleBMC::Core::Models::Instance::LIFECYCLE_STATE_RUNNING)
|
|
30
|
+
#
|
|
31
|
+
# Although this can be run on any property of the data resulting from any
|
|
32
|
+
# GET operation, the most common use case is to check state properties on
|
|
33
|
+
# operations that GET a single object.
|
|
34
|
+
#
|
|
35
|
+
# The wait will poll at an increasing interval up to 'max_interval_seconds'
|
|
36
|
+
# for a maximum total time of 'max_wait_seconds'. If the maximum time
|
|
37
|
+
# is exceeded, then it will raise a {OracleBMC::Waiter::Errors::MaximumWaitTimeExceededError}.
|
|
38
|
+
#
|
|
39
|
+
# On successful completion the final Response object will be returned. The
|
|
40
|
+
# original Response object will not be altered.
|
|
41
|
+
#
|
|
42
|
+
# If any responses result in an error, then the error will be thrown as normal
|
|
43
|
+
# resulting in the wait being aborted.
|
|
44
|
+
#
|
|
45
|
+
# @param [Symbol] property The property of the response data to evaluate. For example, :lifecycle_state.
|
|
46
|
+
# @param state The value of the property that will indicate successful completion of the wait.
|
|
47
|
+
# @param [Integer] max_interval_seconds The maximum interval between queries, in seconds.
|
|
48
|
+
# @param [Integer] max_wait_seconds The maximum time to wait, in seconds.
|
|
49
|
+
# @yieldparam [Response] response A response object for every additional successful call to the get request.
|
|
50
|
+
# Throw :stop_succeed from the yield to stop the waiter and return the current response.
|
|
51
|
+
# Throw :stop_fail from the yield to stop the waiter and throw a WaiterFailedError.
|
|
52
|
+
# @return [Response] The final response, which will contain the property in the specified state.
|
|
53
|
+
def wait_until(property, state, max_interval_seconds: 30, max_wait_seconds: 1200)
|
|
54
|
+
fail 'Cannot wait on a response without data.' unless self.data
|
|
55
|
+
fail 'Response data does not contain the given property.' unless self.data.methods.include? property
|
|
56
|
+
|
|
57
|
+
raise Waiter::Errors::WaitUntilNotSupportedError.new('wait_until is not supported by this response.') unless @api_call
|
|
58
|
+
|
|
59
|
+
response = self
|
|
60
|
+
count = 0
|
|
61
|
+
interval_seconds = 1
|
|
62
|
+
start_time = Time.now
|
|
63
|
+
|
|
64
|
+
while true
|
|
65
|
+
if response.data.send(property) == state
|
|
66
|
+
return response
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
elapsed_seconds = (Time.now - start_time).to_i
|
|
70
|
+
|
|
71
|
+
if elapsed_seconds + interval_seconds > max_wait_seconds
|
|
72
|
+
if max_wait_seconds > elapsed_seconds
|
|
73
|
+
# Make one last request right at the maximum wait time.
|
|
74
|
+
interval_seconds = max_wait_seconds - elapsed_seconds
|
|
75
|
+
else
|
|
76
|
+
raise Waiter::Errors::MaximumWaitTimeExceededError.new('Maximum wait time has been exceeded.')
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
sleep(interval_seconds)
|
|
81
|
+
|
|
82
|
+
interval_seconds *= 2
|
|
83
|
+
if interval_seconds > max_interval_seconds
|
|
84
|
+
interval_seconds = max_interval_seconds
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
response = @api_call.call(nil)
|
|
88
|
+
|
|
89
|
+
if block_given?
|
|
90
|
+
continue = false
|
|
91
|
+
catch(:stop_fail) {
|
|
92
|
+
catch(:stop_succeed) {
|
|
93
|
+
yield response
|
|
94
|
+
continue = true
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
if not continue
|
|
98
|
+
return response
|
|
99
|
+
end
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
if not continue
|
|
103
|
+
raise Waiter::Errors::WaiterFailedError
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
end
|
|
111
|
+
end
|
data/lib/oraclebmc.rb
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
|
|
2
|
+
|
|
3
|
+
require 'oraclebmc/api_client'
|
|
4
|
+
require 'oraclebmc/config'
|
|
5
|
+
require 'oraclebmc/config_file_loader'
|
|
6
|
+
require 'oraclebmc/errors'
|
|
7
|
+
require 'oraclebmc/global_context'
|
|
8
|
+
require 'oraclebmc/regions'
|
|
9
|
+
require 'oraclebmc/response'
|
|
10
|
+
require 'oraclebmc/signer'
|
|
11
|
+
require 'oraclebmc/version'
|
|
12
|
+
require 'oraclebmc/waiter'
|
|
13
|
+
|
|
14
|
+
require 'oraclebmc/core/core'
|
|
15
|
+
require 'oraclebmc/identity/identity'
|
|
16
|
+
require 'oraclebmc/load_balancer/load_balancer'
|
|
17
|
+
|
|
18
|
+
# Top level module for the Oracle Bare Metal Cloud SDK
|
|
19
|
+
module OracleBMC
|
|
20
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: oraclebmc
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 1.1.1
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Oracle
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2017-02-23 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: typhoeus
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - "~>"
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '1.0'
|
|
20
|
+
- - ">="
|
|
21
|
+
- !ruby/object:Gem::Version
|
|
22
|
+
version: 1.0.2
|
|
23
|
+
type: :runtime
|
|
24
|
+
prerelease: false
|
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
26
|
+
requirements:
|
|
27
|
+
- - "~>"
|
|
28
|
+
- !ruby/object:Gem::Version
|
|
29
|
+
version: '1.0'
|
|
30
|
+
- - ">="
|
|
31
|
+
- !ruby/object:Gem::Version
|
|
32
|
+
version: 1.0.2
|
|
33
|
+
- !ruby/object:Gem::Dependency
|
|
34
|
+
name: json
|
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - "~>"
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: '1.4'
|
|
40
|
+
- - ">="
|
|
41
|
+
- !ruby/object:Gem::Version
|
|
42
|
+
version: 1.4.6
|
|
43
|
+
type: :runtime
|
|
44
|
+
prerelease: false
|
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
46
|
+
requirements:
|
|
47
|
+
- - "~>"
|
|
48
|
+
- !ruby/object:Gem::Version
|
|
49
|
+
version: '1.4'
|
|
50
|
+
- - ">="
|
|
51
|
+
- !ruby/object:Gem::Version
|
|
52
|
+
version: 1.4.6
|
|
53
|
+
- !ruby/object:Gem::Dependency
|
|
54
|
+
name: inifile
|
|
55
|
+
requirement: !ruby/object:Gem::Requirement
|
|
56
|
+
requirements:
|
|
57
|
+
- - "~>"
|
|
58
|
+
- !ruby/object:Gem::Version
|
|
59
|
+
version: '3.0'
|
|
60
|
+
- - ">="
|
|
61
|
+
- !ruby/object:Gem::Version
|
|
62
|
+
version: 3.0.0
|
|
63
|
+
type: :runtime
|
|
64
|
+
prerelease: false
|
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
66
|
+
requirements:
|
|
67
|
+
- - "~>"
|
|
68
|
+
- !ruby/object:Gem::Version
|
|
69
|
+
version: '3.0'
|
|
70
|
+
- - ">="
|
|
71
|
+
- !ruby/object:Gem::Version
|
|
72
|
+
version: 3.0.0
|
|
73
|
+
- !ruby/object:Gem::Dependency
|
|
74
|
+
name: yard
|
|
75
|
+
requirement: !ruby/object:Gem::Requirement
|
|
76
|
+
requirements:
|
|
77
|
+
- - "~>"
|
|
78
|
+
- !ruby/object:Gem::Version
|
|
79
|
+
version: 0.8.7.6
|
|
80
|
+
- - ">="
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: 0.8.7.6
|
|
83
|
+
type: :development
|
|
84
|
+
prerelease: false
|
|
85
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
86
|
+
requirements:
|
|
87
|
+
- - "~>"
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: 0.8.7.6
|
|
90
|
+
- - ">="
|
|
91
|
+
- !ruby/object:Gem::Version
|
|
92
|
+
version: 0.8.7.6
|
|
93
|
+
description: Ruby SDK for Oracle Bare Metal Cloud Services.
|
|
94
|
+
email:
|
|
95
|
+
- joe.levy@oracle.com
|
|
96
|
+
executables: []
|
|
97
|
+
extensions: []
|
|
98
|
+
extra_rdoc_files: []
|
|
99
|
+
files:
|
|
100
|
+
- "./lib/oraclebmc.rb"
|
|
101
|
+
- "./lib/oraclebmc/api_client.rb"
|
|
102
|
+
- "./lib/oraclebmc/config.rb"
|
|
103
|
+
- "./lib/oraclebmc/config_file_loader.rb"
|
|
104
|
+
- "./lib/oraclebmc/core/blockstorage_client.rb"
|
|
105
|
+
- "./lib/oraclebmc/core/compute_client.rb"
|
|
106
|
+
- "./lib/oraclebmc/core/core.rb"
|
|
107
|
+
- "./lib/oraclebmc/core/models/attach_i_scsi_volume_details.rb"
|
|
108
|
+
- "./lib/oraclebmc/core/models/attach_volume_details.rb"
|
|
109
|
+
- "./lib/oraclebmc/core/models/capture_console_history_details.rb"
|
|
110
|
+
- "./lib/oraclebmc/core/models/console_history.rb"
|
|
111
|
+
- "./lib/oraclebmc/core/models/cpe.rb"
|
|
112
|
+
- "./lib/oraclebmc/core/models/create_cpe_details.rb"
|
|
113
|
+
- "./lib/oraclebmc/core/models/create_dhcp_details.rb"
|
|
114
|
+
- "./lib/oraclebmc/core/models/create_drg_attachment_details.rb"
|
|
115
|
+
- "./lib/oraclebmc/core/models/create_drg_details.rb"
|
|
116
|
+
- "./lib/oraclebmc/core/models/create_image_details.rb"
|
|
117
|
+
- "./lib/oraclebmc/core/models/create_internet_gateway_details.rb"
|
|
118
|
+
- "./lib/oraclebmc/core/models/create_ip_sec_connection_details.rb"
|
|
119
|
+
- "./lib/oraclebmc/core/models/create_route_table_details.rb"
|
|
120
|
+
- "./lib/oraclebmc/core/models/create_security_list_details.rb"
|
|
121
|
+
- "./lib/oraclebmc/core/models/create_subnet_details.rb"
|
|
122
|
+
- "./lib/oraclebmc/core/models/create_vcn_details.rb"
|
|
123
|
+
- "./lib/oraclebmc/core/models/create_volume_backup_details.rb"
|
|
124
|
+
- "./lib/oraclebmc/core/models/create_volume_details.rb"
|
|
125
|
+
- "./lib/oraclebmc/core/models/dhcp_dns_option.rb"
|
|
126
|
+
- "./lib/oraclebmc/core/models/dhcp_option.rb"
|
|
127
|
+
- "./lib/oraclebmc/core/models/dhcp_options.rb"
|
|
128
|
+
- "./lib/oraclebmc/core/models/drg.rb"
|
|
129
|
+
- "./lib/oraclebmc/core/models/drg_attachment.rb"
|
|
130
|
+
- "./lib/oraclebmc/core/models/egress_security_rule.rb"
|
|
131
|
+
- "./lib/oraclebmc/core/models/i_scsi_volume_attachment.rb"
|
|
132
|
+
- "./lib/oraclebmc/core/models/icmp_options.rb"
|
|
133
|
+
- "./lib/oraclebmc/core/models/image.rb"
|
|
134
|
+
- "./lib/oraclebmc/core/models/ingress_security_rule.rb"
|
|
135
|
+
- "./lib/oraclebmc/core/models/instance.rb"
|
|
136
|
+
- "./lib/oraclebmc/core/models/internet_gateway.rb"
|
|
137
|
+
- "./lib/oraclebmc/core/models/ip_sec_connection.rb"
|
|
138
|
+
- "./lib/oraclebmc/core/models/ip_sec_connection_device_config.rb"
|
|
139
|
+
- "./lib/oraclebmc/core/models/ip_sec_connection_device_status.rb"
|
|
140
|
+
- "./lib/oraclebmc/core/models/launch_instance_details.rb"
|
|
141
|
+
- "./lib/oraclebmc/core/models/port_range.rb"
|
|
142
|
+
- "./lib/oraclebmc/core/models/route_rule.rb"
|
|
143
|
+
- "./lib/oraclebmc/core/models/route_table.rb"
|
|
144
|
+
- "./lib/oraclebmc/core/models/security_list.rb"
|
|
145
|
+
- "./lib/oraclebmc/core/models/shape.rb"
|
|
146
|
+
- "./lib/oraclebmc/core/models/subnet.rb"
|
|
147
|
+
- "./lib/oraclebmc/core/models/tcp_options.rb"
|
|
148
|
+
- "./lib/oraclebmc/core/models/tunnel_config.rb"
|
|
149
|
+
- "./lib/oraclebmc/core/models/tunnel_status.rb"
|
|
150
|
+
- "./lib/oraclebmc/core/models/udp_options.rb"
|
|
151
|
+
- "./lib/oraclebmc/core/models/update_cpe_details.rb"
|
|
152
|
+
- "./lib/oraclebmc/core/models/update_dhcp_details.rb"
|
|
153
|
+
- "./lib/oraclebmc/core/models/update_drg_attachment_details.rb"
|
|
154
|
+
- "./lib/oraclebmc/core/models/update_drg_details.rb"
|
|
155
|
+
- "./lib/oraclebmc/core/models/update_image_details.rb"
|
|
156
|
+
- "./lib/oraclebmc/core/models/update_instance_details.rb"
|
|
157
|
+
- "./lib/oraclebmc/core/models/update_internet_gateway_details.rb"
|
|
158
|
+
- "./lib/oraclebmc/core/models/update_ip_sec_connection_details.rb"
|
|
159
|
+
- "./lib/oraclebmc/core/models/update_route_table_details.rb"
|
|
160
|
+
- "./lib/oraclebmc/core/models/update_security_list_details.rb"
|
|
161
|
+
- "./lib/oraclebmc/core/models/update_subnet_details.rb"
|
|
162
|
+
- "./lib/oraclebmc/core/models/update_vcn_details.rb"
|
|
163
|
+
- "./lib/oraclebmc/core/models/update_volume_backup_details.rb"
|
|
164
|
+
- "./lib/oraclebmc/core/models/update_volume_details.rb"
|
|
165
|
+
- "./lib/oraclebmc/core/models/vcn.rb"
|
|
166
|
+
- "./lib/oraclebmc/core/models/vnic.rb"
|
|
167
|
+
- "./lib/oraclebmc/core/models/vnic_attachment.rb"
|
|
168
|
+
- "./lib/oraclebmc/core/models/volume.rb"
|
|
169
|
+
- "./lib/oraclebmc/core/models/volume_attachment.rb"
|
|
170
|
+
- "./lib/oraclebmc/core/models/volume_backup.rb"
|
|
171
|
+
- "./lib/oraclebmc/core/util.rb"
|
|
172
|
+
- "./lib/oraclebmc/core/virtual_network_client.rb"
|
|
173
|
+
- "./lib/oraclebmc/errors.rb"
|
|
174
|
+
- "./lib/oraclebmc/global_context.rb"
|
|
175
|
+
- "./lib/oraclebmc/identity/identity.rb"
|
|
176
|
+
- "./lib/oraclebmc/identity/identity_client.rb"
|
|
177
|
+
- "./lib/oraclebmc/identity/models/add_user_to_group_details.rb"
|
|
178
|
+
- "./lib/oraclebmc/identity/models/api_key.rb"
|
|
179
|
+
- "./lib/oraclebmc/identity/models/availability_domain.rb"
|
|
180
|
+
- "./lib/oraclebmc/identity/models/compartment.rb"
|
|
181
|
+
- "./lib/oraclebmc/identity/models/create_api_key_details.rb"
|
|
182
|
+
- "./lib/oraclebmc/identity/models/create_compartment_details.rb"
|
|
183
|
+
- "./lib/oraclebmc/identity/models/create_group_details.rb"
|
|
184
|
+
- "./lib/oraclebmc/identity/models/create_policy_details.rb"
|
|
185
|
+
- "./lib/oraclebmc/identity/models/create_swift_password_details.rb"
|
|
186
|
+
- "./lib/oraclebmc/identity/models/create_user_details.rb"
|
|
187
|
+
- "./lib/oraclebmc/identity/models/group.rb"
|
|
188
|
+
- "./lib/oraclebmc/identity/models/policy.rb"
|
|
189
|
+
- "./lib/oraclebmc/identity/models/swift_password.rb"
|
|
190
|
+
- "./lib/oraclebmc/identity/models/ui_password.rb"
|
|
191
|
+
- "./lib/oraclebmc/identity/models/update_compartment_details.rb"
|
|
192
|
+
- "./lib/oraclebmc/identity/models/update_group_details.rb"
|
|
193
|
+
- "./lib/oraclebmc/identity/models/update_policy_details.rb"
|
|
194
|
+
- "./lib/oraclebmc/identity/models/update_state_details.rb"
|
|
195
|
+
- "./lib/oraclebmc/identity/models/update_swift_password_details.rb"
|
|
196
|
+
- "./lib/oraclebmc/identity/models/update_user_details.rb"
|
|
197
|
+
- "./lib/oraclebmc/identity/models/user.rb"
|
|
198
|
+
- "./lib/oraclebmc/identity/models/user_group_membership.rb"
|
|
199
|
+
- "./lib/oraclebmc/identity/util.rb"
|
|
200
|
+
- "./lib/oraclebmc/load_balancer/load_balancer.rb"
|
|
201
|
+
- "./lib/oraclebmc/load_balancer/load_balancer_client.rb"
|
|
202
|
+
- "./lib/oraclebmc/load_balancer/models/backend.rb"
|
|
203
|
+
- "./lib/oraclebmc/load_balancer/models/backend_details.rb"
|
|
204
|
+
- "./lib/oraclebmc/load_balancer/models/backend_set.rb"
|
|
205
|
+
- "./lib/oraclebmc/load_balancer/models/backend_set_details.rb"
|
|
206
|
+
- "./lib/oraclebmc/load_balancer/models/certificate.rb"
|
|
207
|
+
- "./lib/oraclebmc/load_balancer/models/certificate_details.rb"
|
|
208
|
+
- "./lib/oraclebmc/load_balancer/models/create_backend_details.rb"
|
|
209
|
+
- "./lib/oraclebmc/load_balancer/models/create_backend_set_details.rb"
|
|
210
|
+
- "./lib/oraclebmc/load_balancer/models/create_certificate_details.rb"
|
|
211
|
+
- "./lib/oraclebmc/load_balancer/models/create_listener_details.rb"
|
|
212
|
+
- "./lib/oraclebmc/load_balancer/models/create_load_balancer_details.rb"
|
|
213
|
+
- "./lib/oraclebmc/load_balancer/models/health_checker.rb"
|
|
214
|
+
- "./lib/oraclebmc/load_balancer/models/health_checker_details.rb"
|
|
215
|
+
- "./lib/oraclebmc/load_balancer/models/ip_address.rb"
|
|
216
|
+
- "./lib/oraclebmc/load_balancer/models/listener.rb"
|
|
217
|
+
- "./lib/oraclebmc/load_balancer/models/listener_details.rb"
|
|
218
|
+
- "./lib/oraclebmc/load_balancer/models/load_balancer.rb"
|
|
219
|
+
- "./lib/oraclebmc/load_balancer/models/load_balancer_policy.rb"
|
|
220
|
+
- "./lib/oraclebmc/load_balancer/models/load_balancer_protocol.rb"
|
|
221
|
+
- "./lib/oraclebmc/load_balancer/models/load_balancer_shape.rb"
|
|
222
|
+
- "./lib/oraclebmc/load_balancer/models/ssl_configuration.rb"
|
|
223
|
+
- "./lib/oraclebmc/load_balancer/models/ssl_configuration_details.rb"
|
|
224
|
+
- "./lib/oraclebmc/load_balancer/models/update_backend_details.rb"
|
|
225
|
+
- "./lib/oraclebmc/load_balancer/models/update_backend_set_details.rb"
|
|
226
|
+
- "./lib/oraclebmc/load_balancer/models/update_health_checker_details.rb"
|
|
227
|
+
- "./lib/oraclebmc/load_balancer/models/update_listener_details.rb"
|
|
228
|
+
- "./lib/oraclebmc/load_balancer/models/update_load_balancer_details.rb"
|
|
229
|
+
- "./lib/oraclebmc/load_balancer/models/work_request.rb"
|
|
230
|
+
- "./lib/oraclebmc/load_balancer/models/work_request_error.rb"
|
|
231
|
+
- "./lib/oraclebmc/load_balancer/util.rb"
|
|
232
|
+
- "./lib/oraclebmc/regions.rb"
|
|
233
|
+
- "./lib/oraclebmc/response.rb"
|
|
234
|
+
- "./lib/oraclebmc/signer.rb"
|
|
235
|
+
- "./lib/oraclebmc/version.rb"
|
|
236
|
+
- "./lib/oraclebmc/waiter.rb"
|
|
237
|
+
- LICENSE.txt
|
|
238
|
+
- README.md
|
|
239
|
+
homepage: https://docs.us-phoenix-1.oraclecloud.com/tools/ruby/latest/frames.html
|
|
240
|
+
licenses:
|
|
241
|
+
- Universal Permissive License 1.0
|
|
242
|
+
- Apache License 2.0
|
|
243
|
+
metadata: {}
|
|
244
|
+
post_install_message:
|
|
245
|
+
rdoc_options: []
|
|
246
|
+
require_paths:
|
|
247
|
+
- lib
|
|
248
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
249
|
+
requirements:
|
|
250
|
+
- - ">="
|
|
251
|
+
- !ruby/object:Gem::Version
|
|
252
|
+
version: '0'
|
|
253
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
254
|
+
requirements:
|
|
255
|
+
- - ">="
|
|
256
|
+
- !ruby/object:Gem::Version
|
|
257
|
+
version: '0'
|
|
258
|
+
requirements: []
|
|
259
|
+
rubyforge_project:
|
|
260
|
+
rubygems_version: 2.4.5.1
|
|
261
|
+
signing_key:
|
|
262
|
+
specification_version: 4
|
|
263
|
+
summary: Oracle Bare Metal Cloud Services Ruby SDK
|
|
264
|
+
test_files: []
|
|
265
|
+
has_rdoc:
|