aws-sdk-codeguruprofiler 1.1.1 → 1.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6c4c016b104cf7e179d480158752de359df1a190
4
- data.tar.gz: 3895b720baf17140facded72da3a25ab7d95a791
2
+ SHA256:
3
+ metadata.gz: 980fc4e18c74a9f84e0061f7b7e091a387810fd8e0d65ef419bf2f7f3ab6e290
4
+ data.tar.gz: '04239e618a8040610f390df60dd20e44f896bc7227954acb8e69d35bc2a65840'
5
5
  SHA512:
6
- metadata.gz: 8ed0062d957162412b397c22dc6c3681f492dd8f64710d128145554545a0f67fa873b7867189ec7da60ee863b1342d20206e0f61d2e0f2cfaddfed07f69dd138
7
- data.tar.gz: 8ce55e5f39ca4fc1c84e98c037f0771122b7499223ad9ebd9eeb6fa454f30953d1fc889d2cd667d2e1fb02c5696bd6981494c2a683ac4a64e1e722675f5f2367
6
+ metadata.gz: 371cef5e8376579df7f55dad8f3418ec23fb5571fa33bd722b2ca81f17bfc9bf621c492fb2651a905ab047e0b1bd7be529e0b2c1fa61418f81963e6a5e47306d
7
+ data.tar.gz: cc3b2e056d06156f6eb212dbc0879f1e799fee4c5a38525a75f75328de80d5eed9d609bbfe1bbc750631071f9e5f739082fb191d7353ebe18af4be4bd3063b07
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-codeguruprofiler/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # code_guru_profiler = Aws::CodeGuruProfiler::Client.new
28
+ # resp = code_guru_profiler.configure_agent(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from Amazon CodeGuru Profiler all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from Amazon CodeGuru Profiler are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
33
36
  #
34
37
  # begin
35
38
  # # do stuff
36
39
  # rescue Aws::CodeGuruProfiler::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all Amazon CodeGuru Profiler API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-codeguruprofiler/customizations'
42
45
  # @service
43
46
  module Aws::CodeGuruProfiler
44
47
 
45
- GEM_VERSION = '1.1.1'
48
+ GEM_VERSION = '1.6.1'
46
49
 
47
50
  end
@@ -24,12 +24,25 @@ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
24
24
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
25
25
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
26
26
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
27
+ require 'aws-sdk-core/plugins/http_checksum.rb'
27
28
  require 'aws-sdk-core/plugins/signature_v4.rb'
28
29
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
29
30
 
30
31
  Aws::Plugins::GlobalConfiguration.add_identifier(:codeguruprofiler)
31
32
 
32
33
  module Aws::CodeGuruProfiler
34
+ # An API client for CodeGuruProfiler. To construct a client, you need to configure a `:region` and `:credentials`.
35
+ #
36
+ # client = Aws::CodeGuruProfiler::Client.new(
37
+ # region: region_name,
38
+ # credentials: credentials,
39
+ # # ...
40
+ # )
41
+ #
42
+ # For details on configuring region and credentials see
43
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
44
+ #
45
+ # See {#initialize} for a full list of supported configuration options.
33
46
  class Client < Seahorse::Client::Base
34
47
 
35
48
  include Aws::ClientStubs
@@ -57,6 +70,7 @@ module Aws::CodeGuruProfiler
57
70
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
58
71
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
59
72
  add_plugin(Aws::Plugins::TransferEncoding)
73
+ add_plugin(Aws::Plugins::HttpChecksum)
60
74
  add_plugin(Aws::Plugins::SignatureV4)
61
75
  add_plugin(Aws::Plugins::Protocols::RestJson)
62
76
 
@@ -93,7 +107,7 @@ module Aws::CodeGuruProfiler
93
107
  # @option options [required, String] :region
94
108
  # The AWS region to connect to. The configured `:region` is
95
109
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
110
+ # a default `:region` is searched for in the following locations:
97
111
  #
98
112
  # * `Aws.config[:region]`
99
113
  # * `ENV['AWS_REGION']`
@@ -108,6 +122,12 @@ module Aws::CodeGuruProfiler
108
122
  # When set to `true`, a thread polling for endpoints will be running in
109
123
  # the background every 60 secs (default). Defaults to `false`.
110
124
  #
125
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
126
+ # Used only in `adaptive` retry mode. When true, the request will sleep
127
+ # until there is sufficent client side capacity to retry the request.
128
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
129
+ # not retry instead of sleeping.
130
+ #
111
131
  # @option options [Boolean] :client_side_monitoring (false)
112
132
  # When `true`, client-side metrics will be collected for all API requests from
113
133
  # this client.
@@ -132,6 +152,10 @@ module Aws::CodeGuruProfiler
132
152
  # When `true`, an attempt is made to coerce request parameters into
133
153
  # the required types.
134
154
  #
155
+ # @option options [Boolean] :correct_clock_skew (true)
156
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
157
+ # a clock skew correction and retry requests with skewed client clocks.
158
+ #
135
159
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
160
  # Set to true to disable SDK automatically adding host prefix
137
161
  # to default service endpoint when available.
@@ -139,7 +163,7 @@ module Aws::CodeGuruProfiler
139
163
  # @option options [String] :endpoint
140
164
  # The client endpoint is normally constructed from the `:region`
141
165
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
166
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
143
167
  #
144
168
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
169
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +178,7 @@ module Aws::CodeGuruProfiler
154
178
  # requests fetching endpoints information. Defaults to 60 sec.
155
179
  #
156
180
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
181
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
182
  #
159
183
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
184
  # The log formatter.
@@ -166,15 +190,29 @@ module Aws::CodeGuruProfiler
166
190
  # The Logger instance to send log messages to. If this option
167
191
  # is not set, logging will be disabled.
168
192
  #
193
+ # @option options [Integer] :max_attempts (3)
194
+ # An integer representing the maximum number attempts that will be made for
195
+ # a single request, including the initial attempt. For example,
196
+ # setting this value to 5 will result in a request being retried up to
197
+ # 4 times. Used in `standard` and `adaptive` retry modes.
198
+ #
169
199
  # @option options [String] :profile ("default")
170
200
  # Used when loading credentials from the shared credentials file
171
201
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
202
  #
203
+ # @option options [Proc] :retry_backoff
204
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
205
+ # This option is only used in the `legacy` retry mode.
206
+ #
173
207
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
208
+ # The base delay in seconds used by the default backoff function. This option
209
+ # is only used in the `legacy` retry mode.
175
210
  #
176
211
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
212
+ # A delay randomiser function used by the default backoff function.
213
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
214
+ # otherwise a Proc that takes and returns a number. This option is only used
215
+ # in the `legacy` retry mode.
178
216
  #
179
217
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
218
  #
@@ -182,11 +220,30 @@ module Aws::CodeGuruProfiler
182
220
  # The maximum number of times to retry failed requests. Only
183
221
  # ~ 500 level server errors and certain ~ 400 level client errors
184
222
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
223
+ # checksum errors, networking errors, timeout errors, auth errors,
224
+ # endpoint discovery, and errors from expired credentials.
225
+ # This option is only used in the `legacy` retry mode.
187
226
  #
188
227
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
228
+ # The maximum number of seconds to delay between retries (0 for no limit)
229
+ # used by the default backoff function. This option is only used in the
230
+ # `legacy` retry mode.
231
+ #
232
+ # @option options [String] :retry_mode ("legacy")
233
+ # Specifies which retry algorithm to use. Values are:
234
+ #
235
+ # * `legacy` - The pre-existing retry behavior. This is default value if
236
+ # no retry mode is provided.
237
+ #
238
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
239
+ # This includes support for retry quotas, which limit the number of
240
+ # unsuccessful retries a client can make.
241
+ #
242
+ # * `adaptive` - An experimental retry mode that includes all the
243
+ # functionality of `standard` mode along with automatic client side
244
+ # throttling. This is a provisional mode that may change behavior
245
+ # in the future.
246
+ #
190
247
  #
191
248
  # @option options [String] :secret_access_key
192
249
  #
@@ -209,16 +266,15 @@ module Aws::CodeGuruProfiler
209
266
  # requests through. Formatted like 'http://proxy.com:123'.
210
267
  #
211
268
  # @option options [Float] :http_open_timeout (15) The number of
212
- # seconds to wait when opening a HTTP session before rasing a
269
+ # seconds to wait when opening a HTTP session before raising a
213
270
  # `Timeout::Error`.
214
271
  #
215
272
  # @option options [Integer] :http_read_timeout (60) The default
216
273
  # number of seconds to wait for response data. This value can
217
- # safely be set
218
- # per-request on the session yeidled by {#session_for}.
274
+ # safely be set per-request on the session.
219
275
  #
220
276
  # @option options [Float] :http_idle_timeout (5) The number of
221
- # seconds a connection is allowed to sit idble before it is
277
+ # seconds a connection is allowed to sit idle before it is
222
278
  # considered stale. Stale connections are closed and removed
223
279
  # from the pool before making a request.
224
280
  #
@@ -227,7 +283,7 @@ module Aws::CodeGuruProfiler
227
283
  # request body. This option has no effect unless the request has
228
284
  # "Expect" header set to "100-continue". Defaults to `nil` which
229
285
  # disables this behaviour. This value can safely be set per
230
- # request on the session yeidled by {#session_for}.
286
+ # request on the session.
231
287
  #
232
288
  # @option options [Boolean] :http_wire_trace (false) When `true`,
233
289
  # HTTP debug output will be sent to the `:logger`.
@@ -394,6 +450,36 @@ module Aws::CodeGuruProfiler
394
450
  req.send_request(options)
395
451
  end
396
452
 
453
+ # Gets the profiling group policy.
454
+ #
455
+ # @option params [required, String] :profiling_group_name
456
+ # The name of the profiling group.
457
+ #
458
+ # @return [Types::GetPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
459
+ #
460
+ # * {Types::GetPolicyResponse#policy #policy} => String
461
+ # * {Types::GetPolicyResponse#revision_id #revision_id} => String
462
+ #
463
+ # @example Request syntax with placeholder values
464
+ #
465
+ # resp = client.get_policy({
466
+ # profiling_group_name: "ProfilingGroupName", # required
467
+ # })
468
+ #
469
+ # @example Response structure
470
+ #
471
+ # resp.policy #=> String
472
+ # resp.revision_id #=> String
473
+ #
474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetPolicy AWS API Documentation
475
+ #
476
+ # @overload get_policy(params = {})
477
+ # @param [Hash] params ({})
478
+ def get_policy(params = {}, options = {})
479
+ req = build_request(:get_policy, params)
480
+ req.send_request(options)
481
+ end
482
+
397
483
  # Gets the aggregated profile of a profiling group for the specified
398
484
  # time range. If the requested time range does not align with the
399
485
  # available aggregated profiles, it is expanded to attain alignment. If
@@ -512,6 +598,8 @@ module Aws::CodeGuruProfiler
512
598
  # * {Types::ListProfileTimesResponse#next_token #next_token} => String
513
599
  # * {Types::ListProfileTimesResponse#profile_times #profile_times} => Array&lt;Types::ProfileTime&gt;
514
600
  #
601
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
602
+ #
515
603
  # @example Request syntax with placeholder values
516
604
  #
517
605
  # resp = client.list_profile_times({
@@ -571,6 +659,8 @@ module Aws::CodeGuruProfiler
571
659
  # * {Types::ListProfilingGroupsResponse#profiling_group_names #profiling_group_names} => Array&lt;String&gt;
572
660
  # * {Types::ListProfilingGroupsResponse#profiling_groups #profiling_groups} => Array&lt;Types::ProfilingGroupDescription&gt;
573
661
  #
662
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
663
+ #
574
664
  # @example Request syntax with placeholder values
575
665
  #
576
666
  # resp = client.list_profiling_groups({
@@ -634,6 +724,92 @@ module Aws::CodeGuruProfiler
634
724
  req.send_request(options)
635
725
  end
636
726
 
727
+ # Provides permission to the principals. This overwrites the existing
728
+ # permissions, and is not additive.
729
+ #
730
+ # @option params [required, String] :action_group
731
+ # The list of actions that the users and roles can perform on the
732
+ # profiling group.
733
+ #
734
+ # @option params [required, Array<String>] :principals
735
+ # The list of role and user ARNs or the accountId that needs access
736
+ # (wildcards are not allowed).
737
+ #
738
+ # @option params [required, String] :profiling_group_name
739
+ # The name of the profiling group.
740
+ #
741
+ # @option params [String] :revision_id
742
+ # A unique identifier for the current revision of the policy. This is
743
+ # required, if a policy exists for the profiling group. This is not
744
+ # required when creating the policy for the first time.
745
+ #
746
+ # @return [Types::PutPermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
747
+ #
748
+ # * {Types::PutPermissionResponse#policy #policy} => String
749
+ # * {Types::PutPermissionResponse#revision_id #revision_id} => String
750
+ #
751
+ # @example Request syntax with placeholder values
752
+ #
753
+ # resp = client.put_permission({
754
+ # action_group: "agentPermissions", # required, accepts agentPermissions
755
+ # principals: ["Principal"], # required
756
+ # profiling_group_name: "ProfilingGroupName", # required
757
+ # revision_id: "RevisionId",
758
+ # })
759
+ #
760
+ # @example Response structure
761
+ #
762
+ # resp.policy #=> String
763
+ # resp.revision_id #=> String
764
+ #
765
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PutPermission AWS API Documentation
766
+ #
767
+ # @overload put_permission(params = {})
768
+ # @param [Hash] params ({})
769
+ def put_permission(params = {}, options = {})
770
+ req = build_request(:put_permission, params)
771
+ req.send_request(options)
772
+ end
773
+
774
+ # Removes statement for the provided action group from the policy.
775
+ #
776
+ # @option params [required, String] :action_group
777
+ # The list of actions that the users and roles can perform on the
778
+ # profiling group.
779
+ #
780
+ # @option params [required, String] :profiling_group_name
781
+ # The name of the profiling group.
782
+ #
783
+ # @option params [required, String] :revision_id
784
+ # A unique identifier for the current revision of the policy.
785
+ #
786
+ # @return [Types::RemovePermissionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
787
+ #
788
+ # * {Types::RemovePermissionResponse#policy #policy} => String
789
+ # * {Types::RemovePermissionResponse#revision_id #revision_id} => String
790
+ #
791
+ # @example Request syntax with placeholder values
792
+ #
793
+ # resp = client.remove_permission({
794
+ # action_group: "agentPermissions", # required, accepts agentPermissions
795
+ # profiling_group_name: "ProfilingGroupName", # required
796
+ # revision_id: "RevisionId", # required
797
+ # })
798
+ #
799
+ # @example Response structure
800
+ #
801
+ # resp.policy #=> String
802
+ # resp.revision_id #=> String
803
+ #
804
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemovePermission AWS API Documentation
805
+ #
806
+ # @overload remove_permission(params = {})
807
+ # @param [Hash] params ({})
808
+ def remove_permission(params = {}, options = {})
809
+ req = build_request(:remove_permission, params)
810
+ req.send_request(options)
811
+ end
812
+
637
813
  # Updates a profiling group.
638
814
  #
639
815
  # @option params [required, Types::AgentOrchestrationConfig] :agent_orchestration_config
@@ -688,7 +864,7 @@ module Aws::CodeGuruProfiler
688
864
  params: params,
689
865
  config: config)
690
866
  context[:gem_name] = 'aws-sdk-codeguruprofiler'
691
- context[:gem_version] = '1.1.1'
867
+ context[:gem_version] = '1.6.1'
692
868
  Seahorse::Client::Request.new(handlers, context)
693
869
  end
694
870
 
@@ -11,6 +11,7 @@ module Aws::CodeGuruProfiler
11
11
 
12
12
  include Seahorse::Model
13
13
 
14
+ ActionGroup = Shapes::StringShape.new(name: 'ActionGroup')
14
15
  AgentConfiguration = Shapes::StructureShape.new(name: 'AgentConfiguration')
15
16
  AgentOrchestrationConfig = Shapes::StructureShape.new(name: 'AgentOrchestrationConfig')
16
17
  AgentProfile = Shapes::BlobShape.new(name: 'AgentProfile')
@@ -29,6 +30,8 @@ module Aws::CodeGuruProfiler
29
30
  DescribeProfilingGroupRequest = Shapes::StructureShape.new(name: 'DescribeProfilingGroupRequest')
30
31
  DescribeProfilingGroupResponse = Shapes::StructureShape.new(name: 'DescribeProfilingGroupResponse')
31
32
  FleetInstanceId = Shapes::StringShape.new(name: 'FleetInstanceId')
33
+ GetPolicyRequest = Shapes::StructureShape.new(name: 'GetPolicyRequest')
34
+ GetPolicyResponse = Shapes::StructureShape.new(name: 'GetPolicyResponse')
32
35
  GetProfileRequest = Shapes::StructureShape.new(name: 'GetProfileRequest')
33
36
  GetProfileResponse = Shapes::StructureShape.new(name: 'GetProfileResponse')
34
37
  Integer = Shapes::IntegerShape.new(name: 'Integer')
@@ -44,6 +47,8 @@ module Aws::CodeGuruProfiler
44
47
  Period = Shapes::StringShape.new(name: 'Period')
45
48
  PostAgentProfileRequest = Shapes::StructureShape.new(name: 'PostAgentProfileRequest')
46
49
  PostAgentProfileResponse = Shapes::StructureShape.new(name: 'PostAgentProfileResponse')
50
+ Principal = Shapes::StringShape.new(name: 'Principal')
51
+ Principals = Shapes::ListShape.new(name: 'Principals')
47
52
  ProfileTime = Shapes::StructureShape.new(name: 'ProfileTime')
48
53
  ProfileTimes = Shapes::ListShape.new(name: 'ProfileTimes')
49
54
  ProfilingGroupArn = Shapes::StringShape.new(name: 'ProfilingGroupArn')
@@ -52,7 +57,12 @@ module Aws::CodeGuruProfiler
52
57
  ProfilingGroupName = Shapes::StringShape.new(name: 'ProfilingGroupName')
53
58
  ProfilingGroupNames = Shapes::ListShape.new(name: 'ProfilingGroupNames')
54
59
  ProfilingStatus = Shapes::StructureShape.new(name: 'ProfilingStatus')
60
+ PutPermissionRequest = Shapes::StructureShape.new(name: 'PutPermissionRequest')
61
+ PutPermissionResponse = Shapes::StructureShape.new(name: 'PutPermissionResponse')
62
+ RemovePermissionRequest = Shapes::StructureShape.new(name: 'RemovePermissionRequest')
63
+ RemovePermissionResponse = Shapes::StructureShape.new(name: 'RemovePermissionResponse')
55
64
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
65
+ RevisionId = Shapes::StringShape.new(name: 'RevisionId')
56
66
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
57
67
  String = Shapes::StringShape.new(name: 'String')
58
68
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
@@ -107,6 +117,13 @@ module Aws::CodeGuruProfiler
107
117
  DescribeProfilingGroupResponse[:payload] = :profiling_group
108
118
  DescribeProfilingGroupResponse[:payload_member] = DescribeProfilingGroupResponse.member(:profiling_group)
109
119
 
120
+ GetPolicyRequest.add_member(:profiling_group_name, Shapes::ShapeRef.new(shape: ProfilingGroupName, required: true, location: "uri", location_name: "profilingGroupName"))
121
+ GetPolicyRequest.struct_class = Types::GetPolicyRequest
122
+
123
+ GetPolicyResponse.add_member(:policy, Shapes::ShapeRef.new(shape: String, required: true, location_name: "policy"))
124
+ GetPolicyResponse.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, required: true, location_name: "revisionId"))
125
+ GetPolicyResponse.struct_class = Types::GetPolicyResponse
126
+
110
127
  GetProfileRequest.add_member(:accept, Shapes::ShapeRef.new(shape: String, location: "header", location_name: "Accept"))
111
128
  GetProfileRequest.add_member(:end_time, Shapes::ShapeRef.new(shape: Timestamp, location: "querystring", location_name: "endTime"))
112
129
  GetProfileRequest.add_member(:max_depth, Shapes::ShapeRef.new(shape: MaxDepth, location: "querystring", location_name: "maxDepth"))
@@ -158,6 +175,8 @@ module Aws::CodeGuruProfiler
158
175
 
159
176
  PostAgentProfileResponse.struct_class = Types::PostAgentProfileResponse
160
177
 
178
+ Principals.member = Shapes::ShapeRef.new(shape: Principal)
179
+
161
180
  ProfileTime.add_member(:start, Shapes::ShapeRef.new(shape: Timestamp, location_name: "start"))
162
181
  ProfileTime.struct_class = Types::ProfileTime
163
182
 
@@ -180,6 +199,25 @@ module Aws::CodeGuruProfiler
180
199
  ProfilingStatus.add_member(:latest_aggregated_profile, Shapes::ShapeRef.new(shape: AggregatedProfileTime, location_name: "latestAggregatedProfile"))
181
200
  ProfilingStatus.struct_class = Types::ProfilingStatus
182
201
 
202
+ PutPermissionRequest.add_member(:action_group, Shapes::ShapeRef.new(shape: ActionGroup, required: true, location: "uri", location_name: "actionGroup"))
203
+ PutPermissionRequest.add_member(:principals, Shapes::ShapeRef.new(shape: Principals, required: true, location_name: "principals"))
204
+ PutPermissionRequest.add_member(:profiling_group_name, Shapes::ShapeRef.new(shape: ProfilingGroupName, required: true, location: "uri", location_name: "profilingGroupName"))
205
+ PutPermissionRequest.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, location_name: "revisionId"))
206
+ PutPermissionRequest.struct_class = Types::PutPermissionRequest
207
+
208
+ PutPermissionResponse.add_member(:policy, Shapes::ShapeRef.new(shape: String, required: true, location_name: "policy"))
209
+ PutPermissionResponse.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, required: true, location_name: "revisionId"))
210
+ PutPermissionResponse.struct_class = Types::PutPermissionResponse
211
+
212
+ RemovePermissionRequest.add_member(:action_group, Shapes::ShapeRef.new(shape: ActionGroup, required: true, location: "uri", location_name: "actionGroup"))
213
+ RemovePermissionRequest.add_member(:profiling_group_name, Shapes::ShapeRef.new(shape: ProfilingGroupName, required: true, location: "uri", location_name: "profilingGroupName"))
214
+ RemovePermissionRequest.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, required: true, location: "querystring", location_name: "revisionId"))
215
+ RemovePermissionRequest.struct_class = Types::RemovePermissionRequest
216
+
217
+ RemovePermissionResponse.add_member(:policy, Shapes::ShapeRef.new(shape: String, required: true, location_name: "policy"))
218
+ RemovePermissionResponse.add_member(:revision_id, Shapes::ShapeRef.new(shape: RevisionId, required: true, location_name: "revisionId"))
219
+ RemovePermissionResponse.struct_class = Types::RemovePermissionResponse
220
+
183
221
  ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
184
222
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
185
223
 
@@ -268,6 +306,17 @@ module Aws::CodeGuruProfiler
268
306
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
269
307
  end)
270
308
 
309
+ api.add_operation(:get_policy, Seahorse::Model::Operation.new.tap do |o|
310
+ o.name = "GetPolicy"
311
+ o.http_method = "GET"
312
+ o.http_request_uri = "/profilingGroups/{profilingGroupName}/policy"
313
+ o.input = Shapes::ShapeRef.new(shape: GetPolicyRequest)
314
+ o.output = Shapes::ShapeRef.new(shape: GetPolicyResponse)
315
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
316
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
317
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
318
+ end)
319
+
271
320
  api.add_operation(:get_profile, Seahorse::Model::Operation.new.tap do |o|
272
321
  o.name = "GetProfile"
273
322
  o.http_method = "GET"
@@ -326,6 +375,32 @@ module Aws::CodeGuruProfiler
326
375
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
327
376
  end)
328
377
 
378
+ api.add_operation(:put_permission, Seahorse::Model::Operation.new.tap do |o|
379
+ o.name = "PutPermission"
380
+ o.http_method = "PUT"
381
+ o.http_request_uri = "/profilingGroups/{profilingGroupName}/policy/{actionGroup}"
382
+ o.input = Shapes::ShapeRef.new(shape: PutPermissionRequest)
383
+ o.output = Shapes::ShapeRef.new(shape: PutPermissionResponse)
384
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
385
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
386
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
387
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
388
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
389
+ end)
390
+
391
+ api.add_operation(:remove_permission, Seahorse::Model::Operation.new.tap do |o|
392
+ o.name = "RemovePermission"
393
+ o.http_method = "DELETE"
394
+ o.http_request_uri = "/profilingGroups/{profilingGroupName}/policy/{actionGroup}"
395
+ o.input = Shapes::ShapeRef.new(shape: RemovePermissionRequest)
396
+ o.output = Shapes::ShapeRef.new(shape: RemovePermissionResponse)
397
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
398
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
399
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
400
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
401
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
402
+ end)
403
+
329
404
  api.add_operation(:update_profiling_group, Seahorse::Model::Operation.new.tap do |o|
330
405
  o.name = "UpdateProfilingGroup"
331
406
  o.http_method = "PUT"
@@ -6,6 +6,34 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::CodeGuruProfiler
9
+
10
+ # When CodeGuruProfiler returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::CodeGuruProfiler::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all CodeGuruProfiler errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::CodeGuruProfiler::Errors::ServiceError
18
+ # # rescues all CodeGuruProfiler API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {ConflictException}
29
+ # * {InternalServerException}
30
+ # * {ResourceNotFoundException}
31
+ # * {ServiceQuotaExceededException}
32
+ # * {ThrottlingException}
33
+ # * {ValidationException}
34
+ #
35
+ # Additionally, error classes are dynamically generated for service errors based on the error code
36
+ # if they are not defined above.
9
37
  module Errors
10
38
 
11
39
  extend Aws::Errors::DynamicErrors
@@ -23,7 +51,6 @@ module Aws::CodeGuruProfiler
23
51
  def message
24
52
  @message || @data[:message]
25
53
  end
26
-
27
54
  end
28
55
 
29
56
  class InternalServerException < ServiceError
@@ -39,7 +66,6 @@ module Aws::CodeGuruProfiler
39
66
  def message
40
67
  @message || @data[:message]
41
68
  end
42
-
43
69
  end
44
70
 
45
71
  class ResourceNotFoundException < ServiceError
@@ -55,7 +81,6 @@ module Aws::CodeGuruProfiler
55
81
  def message
56
82
  @message || @data[:message]
57
83
  end
58
-
59
84
  end
60
85
 
61
86
  class ServiceQuotaExceededException < ServiceError
@@ -71,7 +96,6 @@ module Aws::CodeGuruProfiler
71
96
  def message
72
97
  @message || @data[:message]
73
98
  end
74
-
75
99
  end
76
100
 
77
101
  class ThrottlingException < ServiceError
@@ -87,7 +111,6 @@ module Aws::CodeGuruProfiler
87
111
  def message
88
112
  @message || @data[:message]
89
113
  end
90
-
91
114
  end
92
115
 
93
116
  class ValidationException < ServiceError
@@ -103,7 +126,6 @@ module Aws::CodeGuruProfiler
103
126
  def message
104
127
  @message || @data[:message]
105
128
  end
106
-
107
129
  end
108
130
 
109
131
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::CodeGuruProfiler
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -221,6 +221,44 @@ module Aws::CodeGuruProfiler
221
221
  include Aws::Structure
222
222
  end
223
223
 
224
+ # The structure representing the getPolicyRequest.
225
+ #
226
+ # @note When making an API call, you may pass GetPolicyRequest
227
+ # data as a hash:
228
+ #
229
+ # {
230
+ # profiling_group_name: "ProfilingGroupName", # required
231
+ # }
232
+ #
233
+ # @!attribute [rw] profiling_group_name
234
+ # The name of the profiling group.
235
+ # @return [String]
236
+ #
237
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetPolicyRequest AWS API Documentation
238
+ #
239
+ class GetPolicyRequest < Struct.new(
240
+ :profiling_group_name)
241
+ include Aws::Structure
242
+ end
243
+
244
+ # The structure representing the getPolicyResponse.
245
+ #
246
+ # @!attribute [rw] policy
247
+ # The resource-based policy attached to the `ProfilingGroup`.
248
+ # @return [String]
249
+ #
250
+ # @!attribute [rw] revision_id
251
+ # A unique identifier for the current revision of the policy.
252
+ # @return [String]
253
+ #
254
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/GetPolicyResponse AWS API Documentation
255
+ #
256
+ class GetPolicyResponse < Struct.new(
257
+ :policy,
258
+ :revision_id)
259
+ include Aws::Structure
260
+ end
261
+
224
262
  # The structure representing the getProfileRequest.
225
263
  #
226
264
  # @note When making an API call, you may pass GetProfileRequest
@@ -605,6 +643,117 @@ module Aws::CodeGuruProfiler
605
643
  include Aws::Structure
606
644
  end
607
645
 
646
+ # The structure representing the putPermissionRequest.
647
+ #
648
+ # @note When making an API call, you may pass PutPermissionRequest
649
+ # data as a hash:
650
+ #
651
+ # {
652
+ # action_group: "agentPermissions", # required, accepts agentPermissions
653
+ # principals: ["Principal"], # required
654
+ # profiling_group_name: "ProfilingGroupName", # required
655
+ # revision_id: "RevisionId",
656
+ # }
657
+ #
658
+ # @!attribute [rw] action_group
659
+ # The list of actions that the users and roles can perform on the
660
+ # profiling group.
661
+ # @return [String]
662
+ #
663
+ # @!attribute [rw] principals
664
+ # The list of role and user ARNs or the accountId that needs access
665
+ # (wildcards are not allowed).
666
+ # @return [Array<String>]
667
+ #
668
+ # @!attribute [rw] profiling_group_name
669
+ # The name of the profiling group.
670
+ # @return [String]
671
+ #
672
+ # @!attribute [rw] revision_id
673
+ # A unique identifier for the current revision of the policy. This is
674
+ # required, if a policy exists for the profiling group. This is not
675
+ # required when creating the policy for the first time.
676
+ # @return [String]
677
+ #
678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PutPermissionRequest AWS API Documentation
679
+ #
680
+ class PutPermissionRequest < Struct.new(
681
+ :action_group,
682
+ :principals,
683
+ :profiling_group_name,
684
+ :revision_id)
685
+ include Aws::Structure
686
+ end
687
+
688
+ # The structure representing the putPermissionResponse.
689
+ #
690
+ # @!attribute [rw] policy
691
+ # The resource-based policy.
692
+ # @return [String]
693
+ #
694
+ # @!attribute [rw] revision_id
695
+ # A unique identifier for the current revision of the policy.
696
+ # @return [String]
697
+ #
698
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/PutPermissionResponse AWS API Documentation
699
+ #
700
+ class PutPermissionResponse < Struct.new(
701
+ :policy,
702
+ :revision_id)
703
+ include Aws::Structure
704
+ end
705
+
706
+ # The structure representing the removePermissionRequest.
707
+ #
708
+ # @note When making an API call, you may pass RemovePermissionRequest
709
+ # data as a hash:
710
+ #
711
+ # {
712
+ # action_group: "agentPermissions", # required, accepts agentPermissions
713
+ # profiling_group_name: "ProfilingGroupName", # required
714
+ # revision_id: "RevisionId", # required
715
+ # }
716
+ #
717
+ # @!attribute [rw] action_group
718
+ # The list of actions that the users and roles can perform on the
719
+ # profiling group.
720
+ # @return [String]
721
+ #
722
+ # @!attribute [rw] profiling_group_name
723
+ # The name of the profiling group.
724
+ # @return [String]
725
+ #
726
+ # @!attribute [rw] revision_id
727
+ # A unique identifier for the current revision of the policy.
728
+ # @return [String]
729
+ #
730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemovePermissionRequest AWS API Documentation
731
+ #
732
+ class RemovePermissionRequest < Struct.new(
733
+ :action_group,
734
+ :profiling_group_name,
735
+ :revision_id)
736
+ include Aws::Structure
737
+ end
738
+
739
+ # The structure representing the removePermissionResponse.
740
+ #
741
+ # @!attribute [rw] policy
742
+ # The resource-based policy.
743
+ # @return [String]
744
+ #
745
+ # @!attribute [rw] revision_id
746
+ # A unique identifier for the current revision of the policy.
747
+ # @return [String]
748
+ #
749
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codeguruprofiler-2019-07-18/RemovePermissionResponse AWS API Documentation
750
+ #
751
+ class RemovePermissionResponse < Struct.new(
752
+ :policy,
753
+ :revision_id)
754
+ include Aws::Structure
755
+ end
756
+
608
757
  # The resource specified in the request does not exist.
609
758
  #
610
759
  # @!attribute [rw] message
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-codeguruprofiler
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-02 00:00:00.000000000 Z
11
+ date: 2020-06-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.71.0
22
+ version: 3.99.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.71.0
32
+ version: 3.99.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -81,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  version: '0'
82
82
  requirements: []
83
83
  rubyforge_project:
84
- rubygems_version: 2.5.2.3
84
+ rubygems_version: 2.7.6.2
85
85
  signing_key:
86
86
  specification_version: 4
87
87
  summary: AWS SDK for Ruby - Amazon CodeGuru Profiler