oci 2.5.0 → 2.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +5 -1
  3. data/lib/oci.rb +4 -0
  4. data/lib/oci/auth/federation_client.rb +4 -4
  5. data/lib/oci/auth/signers/instance_principals_security_token_signer.rb +22 -16
  6. data/lib/oci/autoscaling/auto_scaling_client.rb +774 -0
  7. data/lib/oci/autoscaling/auto_scaling_client_composite_operations.rb +24 -0
  8. data/lib/oci/autoscaling/autoscaling.rb +38 -0
  9. data/lib/oci/autoscaling/models/action.rb +182 -0
  10. data/lib/oci/autoscaling/models/auto_scaling_configuration.rb +282 -0
  11. data/lib/oci/autoscaling/models/auto_scaling_configuration_summary.rb +234 -0
  12. data/lib/oci/autoscaling/models/auto_scaling_policy.rb +222 -0
  13. data/lib/oci/autoscaling/models/auto_scaling_policy_summary.rb +179 -0
  14. data/lib/oci/autoscaling/models/capacity.rb +170 -0
  15. data/lib/oci/autoscaling/models/condition.rb +186 -0
  16. data/lib/oci/autoscaling/models/create_auto_scaling_configuration_details.rb +256 -0
  17. data/lib/oci/autoscaling/models/create_auto_scaling_policy_details.rb +196 -0
  18. data/lib/oci/autoscaling/models/create_condition_details.rb +176 -0
  19. data/lib/oci/autoscaling/models/create_threshold_policy_details.rb +166 -0
  20. data/lib/oci/autoscaling/models/instance_pool_resource.rb +148 -0
  21. data/lib/oci/autoscaling/models/metric.rb +186 -0
  22. data/lib/oci/autoscaling/models/resource.rb +177 -0
  23. data/lib/oci/autoscaling/models/threshold.rb +188 -0
  24. data/lib/oci/autoscaling/models/threshold_policy.rb +173 -0
  25. data/lib/oci/autoscaling/models/update_auto_scaling_configuration_details.rb +219 -0
  26. data/lib/oci/autoscaling/models/update_auto_scaling_policy_details.rb +194 -0
  27. data/lib/oci/autoscaling/models/update_condition_details.rb +176 -0
  28. data/lib/oci/autoscaling/models/update_threshold_policy_details.rb +164 -0
  29. data/lib/oci/autoscaling/util.rb +2 -0
  30. data/lib/oci/core/blockstorage_client.rb +1 -1
  31. data/lib/oci/core/compute_client.rb +1 -1
  32. data/lib/oci/core/compute_management_client.rb +135 -1
  33. data/lib/oci/core/compute_management_client_composite_operations.rb +80 -0
  34. data/lib/oci/core/core.rb +8 -0
  35. data/lib/oci/core/models/attach_load_balancer_details.rb +191 -0
  36. data/lib/oci/core/models/create_instance_pool_details.rb +19 -4
  37. data/lib/oci/core/models/detach_load_balancer_details.rb +167 -0
  38. data/lib/oci/core/models/image.rb +14 -1
  39. data/lib/oci/core/models/instance.rb +18 -2
  40. data/lib/oci/core/models/instance_agent_config.rb +154 -0
  41. data/lib/oci/core/models/instance_agent_features.rb +154 -0
  42. data/lib/oci/core/models/instance_pool.rb +19 -4
  43. data/lib/oci/core/models/instance_pool_instance_load_balancer_backend.rb +219 -0
  44. data/lib/oci/core/models/instance_pool_load_balancer_attachment.rb +253 -0
  45. data/lib/oci/core/models/instance_summary.rb +19 -4
  46. data/lib/oci/core/models/launch_instance_agent_config_details.rb +155 -0
  47. data/lib/oci/core/models/launch_instance_details.rb +14 -1
  48. data/lib/oci/core/models/update_instance_agent_config_details.rb +154 -0
  49. data/lib/oci/core/models/update_instance_details.rb +16 -1
  50. data/lib/oci/core/virtual_network_client.rb +1 -1
  51. data/lib/oci/database/database_client.rb +12 -14
  52. data/lib/oci/database/models/autonomous_data_warehouse_connection_strings.rb +3 -1
  53. data/lib/oci/database/models/autonomous_database_connection_strings.rb +3 -1
  54. data/lib/oci/database/models/create_data_guard_association_details.rb +2 -7
  55. data/lib/oci/database/models/create_data_guard_association_to_existing_db_system_details.rb +5 -1
  56. data/lib/oci/database/models/create_data_guard_association_with_new_db_system_details.rb +4 -1
  57. data/lib/oci/database/models/database_summary.rb +1 -1
  58. data/lib/oci/database/models/db_node.rb +15 -1
  59. data/lib/oci/database/models/db_node_summary.rb +15 -1
  60. data/lib/oci/database/models/db_system.rb +15 -1
  61. data/lib/oci/database/models/db_system_summary.rb +15 -1
  62. data/lib/oci/database/models/db_version_summary.rb +1 -1
  63. data/lib/oci/database/models/launch_db_system_base.rb +33 -2
  64. data/lib/oci/database/models/launch_db_system_details.rb +5 -1
  65. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +5 -1
  66. data/lib/oci/database/models/update_db_system_details.rb +1 -1
  67. data/lib/oci/identity/identity.rb +4 -0
  68. data/lib/oci/identity/identity_client.rb +468 -12
  69. data/lib/oci/identity/identity_client_composite_operations.rb +79 -0
  70. data/lib/oci/identity/models/change_tag_namespace_compartment_detail.rb +154 -0
  71. data/lib/oci/identity/models/create_identity_provider_details.rb +2 -1
  72. data/lib/oci/identity/models/mfa_totp_device.rb +279 -0
  73. data/lib/oci/identity/models/mfa_totp_device_summary.rb +267 -0
  74. data/lib/oci/identity/models/mfa_totp_token.rb +155 -0
  75. data/lib/oci/identity/models/tag_namespace_summary.rb +1 -1
  76. data/lib/oci/identity/models/user.rb +18 -4
  77. data/lib/oci/monitoring/models/aggregated_datapoint.rb +166 -0
  78. data/lib/oci/monitoring/models/alarm.rb +538 -0
  79. data/lib/oci/monitoring/models/alarm_history_collection.rb +183 -0
  80. data/lib/oci/monitoring/models/alarm_history_entry.rb +187 -0
  81. data/lib/oci/monitoring/models/alarm_status_summary.rb +277 -0
  82. data/lib/oci/monitoring/models/alarm_summary.rb +386 -0
  83. data/lib/oci/monitoring/models/create_alarm_details.rb +423 -0
  84. data/lib/oci/monitoring/models/datapoint.rb +179 -0
  85. data/lib/oci/monitoring/models/failed_metric_record.rb +166 -0
  86. data/lib/oci/monitoring/models/list_metrics_details.rb +271 -0
  87. data/lib/oci/monitoring/models/metric.rb +197 -0
  88. data/lib/oci/monitoring/models/metric_data.rb +243 -0
  89. data/lib/oci/monitoring/models/metric_data_details.rb +227 -0
  90. data/lib/oci/monitoring/models/post_metric_data_details.rb +194 -0
  91. data/lib/oci/monitoring/models/post_metric_data_response_details.rb +170 -0
  92. data/lib/oci/monitoring/models/summarize_metrics_data_details.rb +229 -0
  93. data/lib/oci/monitoring/models/suppression.rb +196 -0
  94. data/lib/oci/monitoring/models/update_alarm_details.rb +423 -0
  95. data/lib/oci/monitoring/monitoring.rb +37 -0
  96. data/lib/oci/monitoring/monitoring_client.rb +923 -0
  97. data/lib/oci/monitoring/monitoring_client_composite_operations.rb +145 -0
  98. data/lib/oci/monitoring/util.rb +2 -0
  99. data/lib/oci/ons/models/backoff_retry_policy.rb +192 -0
  100. data/lib/oci/ons/models/confirmation_result.rb +221 -0
  101. data/lib/oci/ons/models/create_subscription_details.rb +238 -0
  102. data/lib/oci/ons/models/create_topic_details.rb +209 -0
  103. data/lib/oci/ons/models/delivery_policy.rb +153 -0
  104. data/lib/oci/ons/models/message_details.rb +163 -0
  105. data/lib/oci/ons/models/notification_topic.rb +302 -0
  106. data/lib/oci/ons/models/notification_topic_summary.rb +303 -0
  107. data/lib/oci/ons/models/publish_result.rb +168 -0
  108. data/lib/oci/ons/models/subscription.rb +273 -0
  109. data/lib/oci/ons/models/subscription_summary.rb +300 -0
  110. data/lib/oci/ons/models/topic_attributes_details.rb +184 -0
  111. data/lib/oci/ons/models/update_subscription_details.rb +188 -0
  112. data/lib/oci/ons/notification_control_plane_client.rb +463 -0
  113. data/lib/oci/ons/notification_control_plane_client_composite_operations.rb +24 -0
  114. data/lib/oci/ons/notification_data_plane_client.rb +680 -0
  115. data/lib/oci/ons/notification_data_plane_client_composite_operations.rb +104 -0
  116. data/lib/oci/ons/ons.rb +33 -0
  117. data/lib/oci/ons/util.rb +2 -0
  118. data/lib/oci/regions.rb +5 -0
  119. data/lib/oci/resource_manager/models/apply_job_plan_resolution.rb +189 -0
  120. data/lib/oci/resource_manager/models/config_source.rb +208 -0
  121. data/lib/oci/resource_manager/models/create_config_source_details.rb +187 -0
  122. data/lib/oci/resource_manager/models/create_job_details.rb +225 -0
  123. data/lib/oci/resource_manager/models/create_stack_details.rb +239 -0
  124. data/lib/oci/resource_manager/models/create_zip_upload_config_source_details.rb +166 -0
  125. data/lib/oci/resource_manager/models/failure_details.rb +185 -0
  126. data/lib/oci/resource_manager/models/job.rb +399 -0
  127. data/lib/oci/resource_manager/models/job_summary.rb +311 -0
  128. data/lib/oci/resource_manager/models/log_entry.rb +225 -0
  129. data/lib/oci/resource_manager/models/stack.rb +305 -0
  130. data/lib/oci/resource_manager/models/stack_summary.rb +249 -0
  131. data/lib/oci/resource_manager/models/update_config_source_details.rb +184 -0
  132. data/lib/oci/resource_manager/models/update_job_details.rb +188 -0
  133. data/lib/oci/resource_manager/models/update_stack_details.rb +225 -0
  134. data/lib/oci/resource_manager/models/update_zip_upload_config_source_details.rb +164 -0
  135. data/lib/oci/resource_manager/models/zip_upload_config_source.rb +149 -0
  136. data/lib/oci/resource_manager/resource_manager.rb +36 -0
  137. data/lib/oci/resource_manager/resource_manager_client.rb +1264 -0
  138. data/lib/oci/resource_manager/resource_manager_client_composite_operations.rb +263 -0
  139. data/lib/oci/resource_manager/util.rb +2 -0
  140. data/lib/oci/version.rb +1 -1
  141. metadata +100 -2
@@ -0,0 +1,263 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
4
+ module OCI
5
+ # This class provides a wrapper around {OCI::ResourceManager::ResourceManagerClient} and offers convenience methods
6
+ # for operations that would otherwise need to be chained together. For example, instead of performing an action
7
+ # on a resource (e.g. launching an instance, creating a load balancer) and then using a waiter to wait for the resource
8
+ # to enter a given state, you can call a single method in this class to accomplish the same functionality
9
+ class ResourceManager::ResourceManagerClientCompositeOperations
10
+ # The {OCI::ResourceManager::ResourceManagerClient} used to communicate with the service_client
11
+ #
12
+ # @return [OCI::ResourceManager::ResourceManagerClient]
13
+ attr_reader :service_client
14
+
15
+ # Initializes a new ResourceManagerClientCompositeOperations
16
+ #
17
+ # @param [OCI::ResourceManager::ResourceManagerClient] service_client The client used to communicate with the service.
18
+ # Defaults to a new service client created via {OCI::ResourceManager::ResourceManagerClient#initialize} with no arguments
19
+ def initialize(service_client = OCI::ResourceManager::ResourceManagerClient.new)
20
+ @service_client = service_client
21
+ end
22
+
23
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
24
+ # rubocop:disable Layout/EmptyLines
25
+
26
+
27
+ # Calls {OCI::ResourceManager::ResourceManagerClient#cancel_job} and then waits for the {OCI::ResourceManager::Models::Job} acted upon
28
+ # to enter the given state(s).
29
+ #
30
+ # @param [String] job_id The job OCID.
31
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::ResourceManager::Models::Job#lifecycle_state}
32
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::ResourceManager::ResourceManagerClient#cancel_job}
33
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
34
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
35
+ # * max_wait_seconds The maximum time to wait, in seconds
36
+ #
37
+ # @return [OCI::Response] A {OCI::Response} object with data of type nil
38
+ def cancel_job_and_wait_for_state(job_id, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
39
+ initial_get_result = @service_client.get_job(job_id)
40
+ operation_result = @service_client.cancel_job(job_id, base_operation_opts)
41
+
42
+ return operation_result if wait_for_states.empty?
43
+
44
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
45
+
46
+ begin
47
+ waiter_result = initial_get_result.wait_until(
48
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
49
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
50
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200,
51
+ succeed_on_not_found: true
52
+ )
53
+ result_to_return = waiter_result
54
+
55
+ return result_to_return
56
+ rescue StandardError
57
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
58
+ end
59
+ end
60
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
61
+ # rubocop:enable Layout/EmptyLines
62
+
63
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
64
+ # rubocop:disable Layout/EmptyLines
65
+
66
+
67
+ # Calls {OCI::ResourceManager::ResourceManagerClient#create_job} and then waits for the {OCI::ResourceManager::Models::Job} acted upon
68
+ # to enter the given state(s).
69
+ #
70
+ # @param [OCI::ResourceManager::Models::CreateJobDetails] create_job_details The properties for a request to create a job.
71
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::ResourceManager::Models::Job#lifecycle_state}
72
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::ResourceManager::ResourceManagerClient#create_job}
73
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
74
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
75
+ # * max_wait_seconds The maximum time to wait, in seconds
76
+ #
77
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::ResourceManager::Models::Job}
78
+ def create_job_and_wait_for_state(create_job_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
79
+ operation_result = @service_client.create_job(create_job_details, base_operation_opts)
80
+
81
+ return operation_result if wait_for_states.empty?
82
+
83
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
84
+ wait_for_resource_id = operation_result.data.id
85
+
86
+ begin
87
+ waiter_result = @service_client.get_job(wait_for_resource_id).wait_until(
88
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
89
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
90
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
91
+ )
92
+ result_to_return = waiter_result
93
+
94
+ return result_to_return
95
+ rescue StandardError
96
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
97
+ end
98
+ end
99
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
100
+ # rubocop:enable Layout/EmptyLines
101
+
102
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
103
+ # rubocop:disable Layout/EmptyLines
104
+
105
+
106
+ # Calls {OCI::ResourceManager::ResourceManagerClient#create_stack} and then waits for the {OCI::ResourceManager::Models::Stack} acted upon
107
+ # to enter the given state(s).
108
+ #
109
+ # @param [OCI::ResourceManager::Models::CreateStackDetails] create_stack_details The properties for creating a stack.
110
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::ResourceManager::Models::Stack#lifecycle_state}
111
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::ResourceManager::ResourceManagerClient#create_stack}
112
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
113
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
114
+ # * max_wait_seconds The maximum time to wait, in seconds
115
+ #
116
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::ResourceManager::Models::Stack}
117
+ def create_stack_and_wait_for_state(create_stack_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
118
+ operation_result = @service_client.create_stack(create_stack_details, base_operation_opts)
119
+
120
+ return operation_result if wait_for_states.empty?
121
+
122
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
123
+ wait_for_resource_id = operation_result.data.id
124
+
125
+ begin
126
+ waiter_result = @service_client.get_stack(wait_for_resource_id).wait_until(
127
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
128
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
129
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
130
+ )
131
+ result_to_return = waiter_result
132
+
133
+ return result_to_return
134
+ rescue StandardError
135
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
136
+ end
137
+ end
138
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
139
+ # rubocop:enable Layout/EmptyLines
140
+
141
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
142
+ # rubocop:disable Layout/EmptyLines
143
+
144
+
145
+ # Calls {OCI::ResourceManager::ResourceManagerClient#delete_stack} and then waits for the {OCI::ResourceManager::Models::Stack} acted upon
146
+ # to enter the given state(s).
147
+ #
148
+ # @param [String] stack_id The stack OCID.
149
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::ResourceManager::Models::Stack#lifecycle_state}
150
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::ResourceManager::ResourceManagerClient#delete_stack}
151
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
152
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
153
+ # * max_wait_seconds The maximum time to wait, in seconds
154
+ #
155
+ # @return [OCI::Response] A {OCI::Response} object with data of type nil
156
+ def delete_stack_and_wait_for_state(stack_id, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
157
+ initial_get_result = @service_client.get_stack(stack_id)
158
+ operation_result = @service_client.delete_stack(stack_id, base_operation_opts)
159
+
160
+ return operation_result if wait_for_states.empty?
161
+
162
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
163
+
164
+ begin
165
+ waiter_result = initial_get_result.wait_until(
166
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
167
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
168
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200,
169
+ succeed_on_not_found: true
170
+ )
171
+ result_to_return = waiter_result
172
+
173
+ return result_to_return
174
+ rescue StandardError
175
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
176
+ end
177
+ end
178
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
179
+ # rubocop:enable Layout/EmptyLines
180
+
181
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
182
+ # rubocop:disable Layout/EmptyLines
183
+
184
+
185
+ # Calls {OCI::ResourceManager::ResourceManagerClient#update_job} and then waits for the {OCI::ResourceManager::Models::Job} acted upon
186
+ # to enter the given state(s).
187
+ #
188
+ # @param [String] job_id The job OCID.
189
+ # @param [OCI::ResourceManager::Models::UpdateJobDetails] update_job_details Updates properties for the specified job.
190
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::ResourceManager::Models::Job#lifecycle_state}
191
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::ResourceManager::ResourceManagerClient#update_job}
192
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
193
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
194
+ # * max_wait_seconds The maximum time to wait, in seconds
195
+ #
196
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::ResourceManager::Models::Job}
197
+ def update_job_and_wait_for_state(job_id, update_job_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
198
+ operation_result = @service_client.update_job(job_id, update_job_details, base_operation_opts)
199
+
200
+ return operation_result if wait_for_states.empty?
201
+
202
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
203
+ wait_for_resource_id = operation_result.data.id
204
+
205
+ begin
206
+ waiter_result = @service_client.get_job(wait_for_resource_id).wait_until(
207
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
208
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
209
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
210
+ )
211
+ result_to_return = waiter_result
212
+
213
+ return result_to_return
214
+ rescue StandardError
215
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
216
+ end
217
+ end
218
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
219
+ # rubocop:enable Layout/EmptyLines
220
+
221
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
222
+ # rubocop:disable Layout/EmptyLines
223
+
224
+
225
+ # Calls {OCI::ResourceManager::ResourceManagerClient#update_stack} and then waits for the {OCI::ResourceManager::Models::Stack} acted upon
226
+ # to enter the given state(s).
227
+ #
228
+ # @param [String] stack_id The stack OCID.
229
+ # @param [OCI::ResourceManager::Models::UpdateStackDetails] update_stack_details Updated information provided for the stack.
230
+ #
231
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::ResourceManager::Models::Stack#lifecycle_state}
232
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::ResourceManager::ResourceManagerClient#update_stack}
233
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
234
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
235
+ # * max_wait_seconds The maximum time to wait, in seconds
236
+ #
237
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::ResourceManager::Models::Stack}
238
+ def update_stack_and_wait_for_state(stack_id, update_stack_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
239
+ operation_result = @service_client.update_stack(stack_id, update_stack_details, base_operation_opts)
240
+
241
+ return operation_result if wait_for_states.empty?
242
+
243
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
244
+ wait_for_resource_id = operation_result.data.id
245
+
246
+ begin
247
+ waiter_result = @service_client.get_stack(wait_for_resource_id).wait_until(
248
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
249
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
250
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
251
+ )
252
+ result_to_return = waiter_result
253
+
254
+ return result_to_return
255
+ rescue StandardError
256
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
257
+ end
258
+ end
259
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
260
+ # rubocop:enable Layout/EmptyLines
261
+ end
262
+ end
263
+ # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -0,0 +1,2 @@
1
+ # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
+
@@ -1,5 +1,5 @@
1
1
  # Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
2
2
 
3
3
  module OCI
4
- VERSION = '2.5.0'.freeze
4
+ VERSION = '2.5.1'.freeze
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oci
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0
4
+ version: 2.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oracle
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-21 00:00:00.000000000 Z
11
+ date: 2019-02-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -245,6 +245,30 @@ files:
245
245
  - "./lib/oci/auth/signers/x509_federation_client_based_security_token_signer.rb"
246
246
  - "./lib/oci/auth/url_based_certificate_retriever.rb"
247
247
  - "./lib/oci/auth/util.rb"
248
+ - "./lib/oci/autoscaling/auto_scaling_client.rb"
249
+ - "./lib/oci/autoscaling/auto_scaling_client_composite_operations.rb"
250
+ - "./lib/oci/autoscaling/autoscaling.rb"
251
+ - "./lib/oci/autoscaling/models/action.rb"
252
+ - "./lib/oci/autoscaling/models/auto_scaling_configuration.rb"
253
+ - "./lib/oci/autoscaling/models/auto_scaling_configuration_summary.rb"
254
+ - "./lib/oci/autoscaling/models/auto_scaling_policy.rb"
255
+ - "./lib/oci/autoscaling/models/auto_scaling_policy_summary.rb"
256
+ - "./lib/oci/autoscaling/models/capacity.rb"
257
+ - "./lib/oci/autoscaling/models/condition.rb"
258
+ - "./lib/oci/autoscaling/models/create_auto_scaling_configuration_details.rb"
259
+ - "./lib/oci/autoscaling/models/create_auto_scaling_policy_details.rb"
260
+ - "./lib/oci/autoscaling/models/create_condition_details.rb"
261
+ - "./lib/oci/autoscaling/models/create_threshold_policy_details.rb"
262
+ - "./lib/oci/autoscaling/models/instance_pool_resource.rb"
263
+ - "./lib/oci/autoscaling/models/metric.rb"
264
+ - "./lib/oci/autoscaling/models/resource.rb"
265
+ - "./lib/oci/autoscaling/models/threshold.rb"
266
+ - "./lib/oci/autoscaling/models/threshold_policy.rb"
267
+ - "./lib/oci/autoscaling/models/update_auto_scaling_configuration_details.rb"
268
+ - "./lib/oci/autoscaling/models/update_auto_scaling_policy_details.rb"
269
+ - "./lib/oci/autoscaling/models/update_condition_details.rb"
270
+ - "./lib/oci/autoscaling/models/update_threshold_policy_details.rb"
271
+ - "./lib/oci/autoscaling/util.rb"
248
272
  - "./lib/oci/base_signer.rb"
249
273
  - "./lib/oci/config.rb"
250
274
  - "./lib/oci/config_file_loader.rb"
@@ -296,6 +320,7 @@ files:
296
320
  - "./lib/oci/core/models/app_catalog_subscription_summary.rb"
297
321
  - "./lib/oci/core/models/attach_boot_volume_details.rb"
298
322
  - "./lib/oci/core/models/attach_i_scsi_volume_details.rb"
323
+ - "./lib/oci/core/models/attach_load_balancer_details.rb"
299
324
  - "./lib/oci/core/models/attach_paravirtualized_volume_details.rb"
300
325
  - "./lib/oci/core/models/attach_vnic_details.rb"
301
326
  - "./lib/oci/core/models/attach_volume_details.rb"
@@ -356,6 +381,7 @@ files:
356
381
  - "./lib/oci/core/models/cross_connect_port_speed_shape.rb"
357
382
  - "./lib/oci/core/models/cross_connect_status.rb"
358
383
  - "./lib/oci/core/models/delete_virtual_circuit_public_prefix_details.rb"
384
+ - "./lib/oci/core/models/detach_load_balancer_details.rb"
359
385
  - "./lib/oci/core/models/device.rb"
360
386
  - "./lib/oci/core/models/dhcp_dns_option.rb"
361
387
  - "./lib/oci/core/models/dhcp_option.rb"
@@ -378,6 +404,8 @@ files:
378
404
  - "./lib/oci/core/models/image_source_via_object_storage_uri_details.rb"
379
405
  - "./lib/oci/core/models/ingress_security_rule.rb"
380
406
  - "./lib/oci/core/models/instance.rb"
407
+ - "./lib/oci/core/models/instance_agent_config.rb"
408
+ - "./lib/oci/core/models/instance_agent_features.rb"
381
409
  - "./lib/oci/core/models/instance_configuration.rb"
382
410
  - "./lib/oci/core/models/instance_configuration_attach_vnic_details.rb"
383
411
  - "./lib/oci/core/models/instance_configuration_attach_volume_details.rb"
@@ -398,6 +426,8 @@ files:
398
426
  - "./lib/oci/core/models/instance_console_connection.rb"
399
427
  - "./lib/oci/core/models/instance_credentials.rb"
400
428
  - "./lib/oci/core/models/instance_pool.rb"
429
+ - "./lib/oci/core/models/instance_pool_instance_load_balancer_backend.rb"
430
+ - "./lib/oci/core/models/instance_pool_load_balancer_attachment.rb"
401
431
  - "./lib/oci/core/models/instance_pool_placement_configuration.rb"
402
432
  - "./lib/oci/core/models/instance_pool_placement_secondary_vnic_subnet.rb"
403
433
  - "./lib/oci/core/models/instance_pool_summary.rb"
@@ -409,6 +439,7 @@ files:
409
439
  - "./lib/oci/core/models/ip_sec_connection.rb"
410
440
  - "./lib/oci/core/models/ip_sec_connection_device_config.rb"
411
441
  - "./lib/oci/core/models/ip_sec_connection_device_status.rb"
442
+ - "./lib/oci/core/models/launch_instance_agent_config_details.rb"
412
443
  - "./lib/oci/core/models/launch_instance_details.rb"
413
444
  - "./lib/oci/core/models/launch_options.rb"
414
445
  - "./lib/oci/core/models/letter_of_authority.rb"
@@ -444,6 +475,7 @@ files:
444
475
  - "./lib/oci/core/models/update_drg_attachment_details.rb"
445
476
  - "./lib/oci/core/models/update_drg_details.rb"
446
477
  - "./lib/oci/core/models/update_image_details.rb"
478
+ - "./lib/oci/core/models/update_instance_agent_config_details.rb"
447
479
  - "./lib/oci/core/models/update_instance_configuration_details.rb"
448
480
  - "./lib/oci/core/models/update_instance_details.rb"
449
481
  - "./lib/oci/core/models/update_instance_pool_details.rb"
@@ -678,6 +710,7 @@ files:
678
710
  - "./lib/oci/identity/models/api_key.rb"
679
711
  - "./lib/oci/identity/models/auth_token.rb"
680
712
  - "./lib/oci/identity/models/availability_domain.rb"
713
+ - "./lib/oci/identity/models/change_tag_namespace_compartment_detail.rb"
681
714
  - "./lib/oci/identity/models/compartment.rb"
682
715
  - "./lib/oci/identity/models/create_api_key_details.rb"
683
716
  - "./lib/oci/identity/models/create_auth_token_details.rb"
@@ -703,6 +736,9 @@ files:
703
736
  - "./lib/oci/identity/models/identity_provider.rb"
704
737
  - "./lib/oci/identity/models/identity_provider_group_summary.rb"
705
738
  - "./lib/oci/identity/models/idp_group_mapping.rb"
739
+ - "./lib/oci/identity/models/mfa_totp_device.rb"
740
+ - "./lib/oci/identity/models/mfa_totp_device_summary.rb"
741
+ - "./lib/oci/identity/models/mfa_totp_token.rb"
706
742
  - "./lib/oci/identity/models/policy.rb"
707
743
  - "./lib/oci/identity/models/region.rb"
708
744
  - "./lib/oci/identity/models/region_subscription.rb"
@@ -831,6 +867,28 @@ files:
831
867
  - "./lib/oci/load_balancer/models/work_request.rb"
832
868
  - "./lib/oci/load_balancer/models/work_request_error.rb"
833
869
  - "./lib/oci/load_balancer/util.rb"
870
+ - "./lib/oci/monitoring/models/aggregated_datapoint.rb"
871
+ - "./lib/oci/monitoring/models/alarm.rb"
872
+ - "./lib/oci/monitoring/models/alarm_history_collection.rb"
873
+ - "./lib/oci/monitoring/models/alarm_history_entry.rb"
874
+ - "./lib/oci/monitoring/models/alarm_status_summary.rb"
875
+ - "./lib/oci/monitoring/models/alarm_summary.rb"
876
+ - "./lib/oci/monitoring/models/create_alarm_details.rb"
877
+ - "./lib/oci/monitoring/models/datapoint.rb"
878
+ - "./lib/oci/monitoring/models/failed_metric_record.rb"
879
+ - "./lib/oci/monitoring/models/list_metrics_details.rb"
880
+ - "./lib/oci/monitoring/models/metric.rb"
881
+ - "./lib/oci/monitoring/models/metric_data.rb"
882
+ - "./lib/oci/monitoring/models/metric_data_details.rb"
883
+ - "./lib/oci/monitoring/models/post_metric_data_details.rb"
884
+ - "./lib/oci/monitoring/models/post_metric_data_response_details.rb"
885
+ - "./lib/oci/monitoring/models/summarize_metrics_data_details.rb"
886
+ - "./lib/oci/monitoring/models/suppression.rb"
887
+ - "./lib/oci/monitoring/models/update_alarm_details.rb"
888
+ - "./lib/oci/monitoring/monitoring.rb"
889
+ - "./lib/oci/monitoring/monitoring_client.rb"
890
+ - "./lib/oci/monitoring/monitoring_client_composite_operations.rb"
891
+ - "./lib/oci/monitoring/util.rb"
834
892
  - "./lib/oci/object_storage/models/bucket.rb"
835
893
  - "./lib/oci/object_storage/models/bucket_summary.rb"
836
894
  - "./lib/oci/object_storage/models/commit_multipart_upload_details.rb"
@@ -872,7 +930,47 @@ files:
872
930
  - "./lib/oci/object_storage/transfer/upload_manager.rb"
873
931
  - "./lib/oci/object_storage/transfer/upload_manager_config.rb"
874
932
  - "./lib/oci/object_storage/util.rb"
933
+ - "./lib/oci/ons/models/backoff_retry_policy.rb"
934
+ - "./lib/oci/ons/models/confirmation_result.rb"
935
+ - "./lib/oci/ons/models/create_subscription_details.rb"
936
+ - "./lib/oci/ons/models/create_topic_details.rb"
937
+ - "./lib/oci/ons/models/delivery_policy.rb"
938
+ - "./lib/oci/ons/models/message_details.rb"
939
+ - "./lib/oci/ons/models/notification_topic.rb"
940
+ - "./lib/oci/ons/models/notification_topic_summary.rb"
941
+ - "./lib/oci/ons/models/publish_result.rb"
942
+ - "./lib/oci/ons/models/subscription.rb"
943
+ - "./lib/oci/ons/models/subscription_summary.rb"
944
+ - "./lib/oci/ons/models/topic_attributes_details.rb"
945
+ - "./lib/oci/ons/models/update_subscription_details.rb"
946
+ - "./lib/oci/ons/notification_control_plane_client.rb"
947
+ - "./lib/oci/ons/notification_control_plane_client_composite_operations.rb"
948
+ - "./lib/oci/ons/notification_data_plane_client.rb"
949
+ - "./lib/oci/ons/notification_data_plane_client_composite_operations.rb"
950
+ - "./lib/oci/ons/ons.rb"
951
+ - "./lib/oci/ons/util.rb"
875
952
  - "./lib/oci/regions.rb"
953
+ - "./lib/oci/resource_manager/models/apply_job_plan_resolution.rb"
954
+ - "./lib/oci/resource_manager/models/config_source.rb"
955
+ - "./lib/oci/resource_manager/models/create_config_source_details.rb"
956
+ - "./lib/oci/resource_manager/models/create_job_details.rb"
957
+ - "./lib/oci/resource_manager/models/create_stack_details.rb"
958
+ - "./lib/oci/resource_manager/models/create_zip_upload_config_source_details.rb"
959
+ - "./lib/oci/resource_manager/models/failure_details.rb"
960
+ - "./lib/oci/resource_manager/models/job.rb"
961
+ - "./lib/oci/resource_manager/models/job_summary.rb"
962
+ - "./lib/oci/resource_manager/models/log_entry.rb"
963
+ - "./lib/oci/resource_manager/models/stack.rb"
964
+ - "./lib/oci/resource_manager/models/stack_summary.rb"
965
+ - "./lib/oci/resource_manager/models/update_config_source_details.rb"
966
+ - "./lib/oci/resource_manager/models/update_job_details.rb"
967
+ - "./lib/oci/resource_manager/models/update_stack_details.rb"
968
+ - "./lib/oci/resource_manager/models/update_zip_upload_config_source_details.rb"
969
+ - "./lib/oci/resource_manager/models/zip_upload_config_source.rb"
970
+ - "./lib/oci/resource_manager/resource_manager.rb"
971
+ - "./lib/oci/resource_manager/resource_manager_client.rb"
972
+ - "./lib/oci/resource_manager/resource_manager_client_composite_operations.rb"
973
+ - "./lib/oci/resource_manager/util.rb"
876
974
  - "./lib/oci/resource_search/models/free_text_search_details.rb"
877
975
  - "./lib/oci/resource_search/models/queryable_field_description.rb"
878
976
  - "./lib/oci/resource_search/models/resource_summary.rb"