aws-sdk-cloud9 1.18.0 → 1.23.0

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: 86b89322911703c1b6f421e5b945fa3ed1526f0c
4
- data.tar.gz: 19df07e60cfc61b3392ce3b758484e75cae2906e
2
+ SHA256:
3
+ metadata.gz: 96823834ca17a1769d982a56148518127a0856224dc26bac5d4eefc60797cc55
4
+ data.tar.gz: 55bd5d8d2bfba49579f85118b393bd2a853901ea2f4e42337dfb9f54332bf04b
5
5
  SHA512:
6
- metadata.gz: 94a6bd550bf71489365913a27501dc1d454f4962222b122bb74fe329f74b203695f0b17ef9b913b0d9395b5acc0df789aee9e054bbce67323806f52dde7250cc
7
- data.tar.gz: 6bc1e03c744a1f989ec08d37b2b28e731a57e86d7714fe51444cc73997bf187de59eb6e8a333fa44436369e74b74b95ec2b81f936591121b0a3b3e9932229f15
6
+ metadata.gz: '08519a02e5277c2363d13c9b0410726f3548725dd7fbcf58ab205c8efe57277ca2ef2a7ef1e6a5b2732c124cfc2d37bc6b87c0230e2d3bbe93727f5aefac15fa'
7
+ data.tar.gz: 58f4d8cf444a553a830cad7c8f0f13dcdcc4b02442cfd8d9e87b0fc7159e82875463a12bc1d045de196dbd231edc97905876bfecde226d552b3ab1874229ee49
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-cloud9/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # cloud_9 = Aws::Cloud9::Client.new
28
+ # resp = cloud_9.create_environment_ec2(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from AWS Cloud9 all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from AWS Cloud9 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::Cloud9::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all AWS Cloud9 API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-cloud9/customizations'
42
45
  # @service
43
46
  module Aws::Cloud9
44
47
 
45
- GEM_VERSION = '1.18.0'
48
+ GEM_VERSION = '1.23.0'
46
49
 
47
50
  end
@@ -30,6 +30,18 @@ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
30
30
  Aws::Plugins::GlobalConfiguration.add_identifier(:cloud9)
31
31
 
32
32
  module Aws::Cloud9
33
+ # An API client for Cloud9. To construct a client, you need to configure a `:region` and `:credentials`.
34
+ #
35
+ # client = Aws::Cloud9::Client.new(
36
+ # region: region_name,
37
+ # credentials: credentials,
38
+ # # ...
39
+ # )
40
+ #
41
+ # For details on configuring region and credentials see
42
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
43
+ #
44
+ # See {#initialize} for a full list of supported configuration options.
33
45
  class Client < Seahorse::Client::Base
34
46
 
35
47
  include Aws::ClientStubs
@@ -93,7 +105,7 @@ module Aws::Cloud9
93
105
  # @option options [required, String] :region
94
106
  # The AWS region to connect to. The configured `:region` is
95
107
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
108
+ # a default `:region` is searched for in the following locations:
97
109
  #
98
110
  # * `Aws.config[:region]`
99
111
  # * `ENV['AWS_REGION']`
@@ -108,6 +120,12 @@ module Aws::Cloud9
108
120
  # When set to `true`, a thread polling for endpoints will be running in
109
121
  # the background every 60 secs (default). Defaults to `false`.
110
122
  #
123
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
124
+ # Used only in `adaptive` retry mode. When true, the request will sleep
125
+ # until there is sufficent client side capacity to retry the request.
126
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
127
+ # not retry instead of sleeping.
128
+ #
111
129
  # @option options [Boolean] :client_side_monitoring (false)
112
130
  # When `true`, client-side metrics will be collected for all API requests from
113
131
  # this client.
@@ -132,6 +150,10 @@ module Aws::Cloud9
132
150
  # When `true`, an attempt is made to coerce request parameters into
133
151
  # the required types.
134
152
  #
153
+ # @option options [Boolean] :correct_clock_skew (true)
154
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
155
+ # a clock skew correction and retry requests with skewed client clocks.
156
+ #
135
157
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
158
  # Set to true to disable SDK automatically adding host prefix
137
159
  # to default service endpoint when available.
@@ -139,7 +161,7 @@ module Aws::Cloud9
139
161
  # @option options [String] :endpoint
140
162
  # The client endpoint is normally constructed from the `:region`
141
163
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
164
+ # to test endpoints. This should be a valid HTTP(S) URI.
143
165
  #
144
166
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
167
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +176,7 @@ module Aws::Cloud9
154
176
  # requests fetching endpoints information. Defaults to 60 sec.
155
177
  #
156
178
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
179
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
180
  #
159
181
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
182
  # The log formatter.
@@ -166,15 +188,29 @@ module Aws::Cloud9
166
188
  # The Logger instance to send log messages to. If this option
167
189
  # is not set, logging will be disabled.
168
190
  #
191
+ # @option options [Integer] :max_attempts (3)
192
+ # An integer representing the maximum number attempts that will be made for
193
+ # a single request, including the initial attempt. For example,
194
+ # setting this value to 5 will result in a request being retried up to
195
+ # 4 times. Used in `standard` and `adaptive` retry modes.
196
+ #
169
197
  # @option options [String] :profile ("default")
170
198
  # Used when loading credentials from the shared credentials file
171
199
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
200
  #
201
+ # @option options [Proc] :retry_backoff
202
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
203
+ # This option is only used in the `legacy` retry mode.
204
+ #
173
205
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
206
+ # The base delay in seconds used by the default backoff function. This option
207
+ # is only used in the `legacy` retry mode.
175
208
  #
176
209
  # @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.
210
+ # A delay randomiser function used by the default backoff function.
211
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
212
+ # otherwise a Proc that takes and returns a number. This option is only used
213
+ # in the `legacy` retry mode.
178
214
  #
179
215
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
216
  #
@@ -182,11 +218,30 @@ module Aws::Cloud9
182
218
  # The maximum number of times to retry failed requests. Only
183
219
  # ~ 500 level server errors and certain ~ 400 level client errors
184
220
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
221
+ # checksum errors, networking errors, timeout errors, auth errors,
222
+ # endpoint discovery, and errors from expired credentials.
223
+ # This option is only used in the `legacy` retry mode.
187
224
  #
188
225
  # @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.
226
+ # The maximum number of seconds to delay between retries (0 for no limit)
227
+ # used by the default backoff function. This option is only used in the
228
+ # `legacy` retry mode.
229
+ #
230
+ # @option options [String] :retry_mode ("legacy")
231
+ # Specifies which retry algorithm to use. Values are:
232
+ #
233
+ # * `legacy` - The pre-existing retry behavior. This is default value if
234
+ # no retry mode is provided.
235
+ #
236
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
237
+ # This includes support for retry quotas, which limit the number of
238
+ # unsuccessful retries a client can make.
239
+ #
240
+ # * `adaptive` - An experimental retry mode that includes all the
241
+ # functionality of `standard` mode along with automatic client side
242
+ # throttling. This is a provisional mode that may change behavior
243
+ # in the future.
244
+ #
190
245
  #
191
246
  # @option options [String] :secret_access_key
192
247
  #
@@ -219,16 +274,15 @@ module Aws::Cloud9
219
274
  # requests through. Formatted like 'http://proxy.com:123'.
220
275
  #
221
276
  # @option options [Float] :http_open_timeout (15) The number of
222
- # seconds to wait when opening a HTTP session before rasing a
277
+ # seconds to wait when opening a HTTP session before raising a
223
278
  # `Timeout::Error`.
224
279
  #
225
280
  # @option options [Integer] :http_read_timeout (60) The default
226
281
  # number of seconds to wait for response data. This value can
227
- # safely be set
228
- # per-request on the session yeidled by {#session_for}.
282
+ # safely be set per-request on the session.
229
283
  #
230
284
  # @option options [Float] :http_idle_timeout (5) The number of
231
- # seconds a connection is allowed to sit idble before it is
285
+ # seconds a connection is allowed to sit idle before it is
232
286
  # considered stale. Stale connections are closed and removed
233
287
  # from the pool before making a request.
234
288
  #
@@ -237,7 +291,7 @@ module Aws::Cloud9
237
291
  # request body. This option has no effect unless the request has
238
292
  # "Expect" header set to "100-continue". Defaults to `nil` which
239
293
  # disables this behaviour. This value can safely be set per
240
- # request on the session yeidled by {#session_for}.
294
+ # request on the session.
241
295
  #
242
296
  # @option options [Boolean] :http_wire_trace (false) When `true`,
243
297
  # HTTP debug output will be sent to the `:logger`.
@@ -304,6 +358,10 @@ module Aws::Cloud9
304
358
  # be the ARN of any AWS IAM principal. If this value is not specified,
305
359
  # the ARN defaults to this environment's creator.
306
360
  #
361
+ # @option params [Array<Types::Tag>] :tags
362
+ # An array of key-value pairs that will be associated with the new AWS
363
+ # Cloud9 development environment.
364
+ #
307
365
  # @return [Types::CreateEnvironmentEC2Result] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
308
366
  #
309
367
  # * {Types::CreateEnvironmentEC2Result#environment_id #environment_id} => String
@@ -335,6 +393,12 @@ module Aws::Cloud9
335
393
  # subnet_id: "SubnetId",
336
394
  # automatic_stop_time_minutes: 1,
337
395
  # owner_arn: "UserArn",
396
+ # tags: [
397
+ # {
398
+ # key: "TagKey", # required
399
+ # value: "TagValue", # required
400
+ # },
401
+ # ],
338
402
  # })
339
403
  #
340
404
  # @example Response structure
@@ -532,6 +596,8 @@ module Aws::Cloud9
532
596
  # * {Types::DescribeEnvironmentMembershipsResult#memberships #memberships} => Array&lt;Types::EnvironmentMember&gt;
533
597
  # * {Types::DescribeEnvironmentMembershipsResult#next_token #next_token} => String
534
598
  #
599
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
600
+ #
535
601
  #
536
602
  # @example Example: DescribeEnvironmentMemberships1
537
603
  #
@@ -711,13 +777,20 @@ module Aws::Cloud9
711
777
  # arn: "arn:aws:cloud9:us-east-2:123456789012:environment:8d9967e2f0624182b74e7690ad69ebEX",
712
778
  # description: "This is my demonstration environment.",
713
779
  # id: "8d9967e2f0624182b74e7690ad69ebEX",
780
+ # lifecycle: {
781
+ # status: "CREATED",
782
+ # },
714
783
  # owner_arn: "arn:aws:iam::123456789012:user/MyDemoUser",
715
784
  # },
716
785
  # {
717
786
  # name: "another-demo-environment",
718
787
  # type: "ssh",
719
788
  # arn: "arn:aws:cloud9:us-east-2:123456789012:environment:349c86d4579e4e7298d500ff57a6b2EX",
789
+ # description: "",
720
790
  # id: "349c86d4579e4e7298d500ff57a6b2EX",
791
+ # lifecycle: {
792
+ # status: "CREATED",
793
+ # },
721
794
  # owner_arn: "arn:aws:sts::123456789012:assumed-role/AnotherDemoUser/AnotherDemoUser",
722
795
  # },
723
796
  # ],
@@ -738,7 +811,7 @@ module Aws::Cloud9
738
811
  # resp.environments[0].type #=> String, one of "ssh", "ec2"
739
812
  # resp.environments[0].arn #=> String
740
813
  # resp.environments[0].owner_arn #=> String
741
- # resp.environments[0].lifecycle.status #=> String, one of "CREATED", "DELETING", "DELETE_FAILED"
814
+ # resp.environments[0].lifecycle.status #=> String, one of "CREATING", "CREATED", "CREATE_FAILED", "DELETING", "DELETE_FAILED"
742
815
  # resp.environments[0].lifecycle.reason #=> String
743
816
  # resp.environments[0].lifecycle.failure_resource #=> String
744
817
  #
@@ -770,6 +843,8 @@ module Aws::Cloud9
770
843
  # * {Types::ListEnvironmentsResult#next_token #next_token} => String
771
844
  # * {Types::ListEnvironmentsResult#environment_ids #environment_ids} => Array&lt;String&gt;
772
845
  #
846
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
847
+ #
773
848
  #
774
849
  # @example Example: ListEnvironments
775
850
  #
@@ -806,6 +881,102 @@ module Aws::Cloud9
806
881
  req.send_request(options)
807
882
  end
808
883
 
884
+ # Gets a list of the tags associated with an AWS Cloud9 development
885
+ # environment.
886
+ #
887
+ # @option params [required, String] :resource_arn
888
+ # The Amazon Resource Name (ARN) of the AWS Cloud9 development
889
+ # environment to get the tags for.
890
+ #
891
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
892
+ #
893
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
894
+ #
895
+ # @example Request syntax with placeholder values
896
+ #
897
+ # resp = client.list_tags_for_resource({
898
+ # resource_arn: "EnvironmentArn", # required
899
+ # })
900
+ #
901
+ # @example Response structure
902
+ #
903
+ # resp.tags #=> Array
904
+ # resp.tags[0].key #=> String
905
+ # resp.tags[0].value #=> String
906
+ #
907
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/ListTagsForResource AWS API Documentation
908
+ #
909
+ # @overload list_tags_for_resource(params = {})
910
+ # @param [Hash] params ({})
911
+ def list_tags_for_resource(params = {}, options = {})
912
+ req = build_request(:list_tags_for_resource, params)
913
+ req.send_request(options)
914
+ end
915
+
916
+ # Adds tags to an AWS Cloud9 development environment.
917
+ #
918
+ # Tags that you add to an AWS Cloud9 environment by using this method
919
+ # will NOT be automatically propagated to underlying resources.
920
+ #
921
+ # @option params [required, String] :resource_arn
922
+ # The Amazon Resource Name (ARN) of the AWS Cloud9 development
923
+ # environment to add tags to.
924
+ #
925
+ # @option params [required, Array<Types::Tag>] :tags
926
+ # The list of tags to add to the given AWS Cloud9 development
927
+ # environment.
928
+ #
929
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
930
+ #
931
+ # @example Request syntax with placeholder values
932
+ #
933
+ # resp = client.tag_resource({
934
+ # resource_arn: "EnvironmentArn", # required
935
+ # tags: [ # required
936
+ # {
937
+ # key: "TagKey", # required
938
+ # value: "TagValue", # required
939
+ # },
940
+ # ],
941
+ # })
942
+ #
943
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/TagResource AWS API Documentation
944
+ #
945
+ # @overload tag_resource(params = {})
946
+ # @param [Hash] params ({})
947
+ def tag_resource(params = {}, options = {})
948
+ req = build_request(:tag_resource, params)
949
+ req.send_request(options)
950
+ end
951
+
952
+ # Removes tags from an AWS Cloud9 development environment.
953
+ #
954
+ # @option params [required, String] :resource_arn
955
+ # The Amazon Resource Name (ARN) of the AWS Cloud9 development
956
+ # environment to remove tags from.
957
+ #
958
+ # @option params [required, Array<String>] :tag_keys
959
+ # The tag names of the tags to remove from the given AWS Cloud9
960
+ # development environment.
961
+ #
962
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
963
+ #
964
+ # @example Request syntax with placeholder values
965
+ #
966
+ # resp = client.untag_resource({
967
+ # resource_arn: "EnvironmentArn", # required
968
+ # tag_keys: ["TagKey"], # required
969
+ # })
970
+ #
971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/UntagResource AWS API Documentation
972
+ #
973
+ # @overload untag_resource(params = {})
974
+ # @param [Hash] params ({})
975
+ def untag_resource(params = {}, options = {})
976
+ req = build_request(:untag_resource, params)
977
+ req.send_request(options)
978
+ end
979
+
809
980
  # Changes the settings of an existing AWS Cloud9 development
810
981
  # environment.
811
982
  #
@@ -930,7 +1101,7 @@ module Aws::Cloud9
930
1101
  params: params,
931
1102
  config: config)
932
1103
  context[:gem_name] = 'aws-sdk-cloud9'
933
- context[:gem_version] = '1.18.0'
1104
+ context[:gem_version] = '1.23.0'
934
1105
  Seahorse::Client::Request.new(handlers, context)
935
1106
  end
936
1107
 
@@ -31,6 +31,7 @@ module Aws::Cloud9
31
31
  DescribeEnvironmentsRequest = Shapes::StructureShape.new(name: 'DescribeEnvironmentsRequest')
32
32
  DescribeEnvironmentsResult = Shapes::StructureShape.new(name: 'DescribeEnvironmentsResult')
33
33
  Environment = Shapes::StructureShape.new(name: 'Environment')
34
+ EnvironmentArn = Shapes::StringShape.new(name: 'EnvironmentArn')
34
35
  EnvironmentDescription = Shapes::StringShape.new(name: 'EnvironmentDescription')
35
36
  EnvironmentId = Shapes::StringShape.new(name: 'EnvironmentId')
36
37
  EnvironmentIdList = Shapes::ListShape.new(name: 'EnvironmentIdList')
@@ -48,6 +49,8 @@ module Aws::Cloud9
48
49
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
49
50
  ListEnvironmentsRequest = Shapes::StructureShape.new(name: 'ListEnvironmentsRequest')
50
51
  ListEnvironmentsResult = Shapes::StructureShape.new(name: 'ListEnvironmentsResult')
52
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
53
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
51
54
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
52
55
  MemberPermissions = Shapes::StringShape.new(name: 'MemberPermissions')
53
56
  NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
@@ -55,16 +58,29 @@ module Aws::Cloud9
55
58
  PermissionsList = Shapes::ListShape.new(name: 'PermissionsList')
56
59
  String = Shapes::StringShape.new(name: 'String')
57
60
  SubnetId = Shapes::StringShape.new(name: 'SubnetId')
61
+ Tag = Shapes::StructureShape.new(name: 'Tag')
62
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
63
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
64
+ TagList = Shapes::ListShape.new(name: 'TagList')
65
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
66
+ TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
67
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
58
68
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
59
69
  TooManyRequestsException = Shapes::StructureShape.new(name: 'TooManyRequestsException')
70
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
71
+ UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
60
72
  UpdateEnvironmentMembershipRequest = Shapes::StructureShape.new(name: 'UpdateEnvironmentMembershipRequest')
61
73
  UpdateEnvironmentMembershipResult = Shapes::StructureShape.new(name: 'UpdateEnvironmentMembershipResult')
62
74
  UpdateEnvironmentRequest = Shapes::StructureShape.new(name: 'UpdateEnvironmentRequest')
63
75
  UpdateEnvironmentResult = Shapes::StructureShape.new(name: 'UpdateEnvironmentResult')
64
76
  UserArn = Shapes::StringShape.new(name: 'UserArn')
65
77
 
78
+ BadRequestException.struct_class = Types::BadRequestException
79
+
66
80
  BoundedEnvironmentIdList.member = Shapes::ShapeRef.new(shape: EnvironmentId)
67
81
 
82
+ ConflictException.struct_class = Types::ConflictException
83
+
68
84
  CreateEnvironmentEC2Request.add_member(:name, Shapes::ShapeRef.new(shape: EnvironmentName, required: true, location_name: "name"))
69
85
  CreateEnvironmentEC2Request.add_member(:description, Shapes::ShapeRef.new(shape: EnvironmentDescription, location_name: "description"))
70
86
  CreateEnvironmentEC2Request.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "clientRequestToken"))
@@ -72,6 +88,7 @@ module Aws::Cloud9
72
88
  CreateEnvironmentEC2Request.add_member(:subnet_id, Shapes::ShapeRef.new(shape: SubnetId, location_name: "subnetId"))
73
89
  CreateEnvironmentEC2Request.add_member(:automatic_stop_time_minutes, Shapes::ShapeRef.new(shape: AutomaticStopTimeMinutes, location_name: "automaticStopTimeMinutes"))
74
90
  CreateEnvironmentEC2Request.add_member(:owner_arn, Shapes::ShapeRef.new(shape: UserArn, location_name: "ownerArn"))
91
+ CreateEnvironmentEC2Request.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
75
92
  CreateEnvironmentEC2Request.struct_class = Types::CreateEnvironmentEC2Request
76
93
 
77
94
  CreateEnvironmentEC2Result.add_member(:environment_id, Shapes::ShapeRef.new(shape: EnvironmentId, location_name: "environmentId"))
@@ -147,6 +164,12 @@ module Aws::Cloud9
147
164
 
148
165
  EnvironmentMembersList.member = Shapes::ShapeRef.new(shape: EnvironmentMember)
149
166
 
167
+ ForbiddenException.struct_class = Types::ForbiddenException
168
+
169
+ InternalServerErrorException.struct_class = Types::InternalServerErrorException
170
+
171
+ LimitExceededException.struct_class = Types::LimitExceededException
172
+
150
173
  ListEnvironmentsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
151
174
  ListEnvironmentsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
152
175
  ListEnvironmentsRequest.struct_class = Types::ListEnvironmentsRequest
@@ -155,8 +178,38 @@ module Aws::Cloud9
155
178
  ListEnvironmentsResult.add_member(:environment_ids, Shapes::ShapeRef.new(shape: EnvironmentIdList, location_name: "environmentIds"))
156
179
  ListEnvironmentsResult.struct_class = Types::ListEnvironmentsResult
157
180
 
181
+ ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: EnvironmentArn, required: true, location_name: "ResourceARN"))
182
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
183
+
184
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
185
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
186
+
187
+ NotFoundException.struct_class = Types::NotFoundException
188
+
158
189
  PermissionsList.member = Shapes::ShapeRef.new(shape: Permissions)
159
190
 
191
+ Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
192
+ Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "Value"))
193
+ Tag.struct_class = Types::Tag
194
+
195
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
196
+
197
+ TagList.member = Shapes::ShapeRef.new(shape: Tag)
198
+
199
+ TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: EnvironmentArn, required: true, location_name: "ResourceARN"))
200
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "Tags"))
201
+ TagResourceRequest.struct_class = Types::TagResourceRequest
202
+
203
+ TagResourceResponse.struct_class = Types::TagResourceResponse
204
+
205
+ TooManyRequestsException.struct_class = Types::TooManyRequestsException
206
+
207
+ UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: EnvironmentArn, required: true, location_name: "ResourceARN"))
208
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "TagKeys"))
209
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
210
+
211
+ UntagResourceResponse.struct_class = Types::UntagResourceResponse
212
+
160
213
  UpdateEnvironmentMembershipRequest.add_member(:environment_id, Shapes::ShapeRef.new(shape: EnvironmentId, required: true, location_name: "environmentId"))
161
214
  UpdateEnvironmentMembershipRequest.add_member(:user_arn, Shapes::ShapeRef.new(shape: UserArn, required: true, location_name: "userArn"))
162
215
  UpdateEnvironmentMembershipRequest.add_member(:permissions, Shapes::ShapeRef.new(shape: MemberPermissions, required: true, location_name: "permissions"))
@@ -322,6 +375,39 @@ module Aws::Cloud9
322
375
  )
323
376
  end)
324
377
 
378
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
379
+ o.name = "ListTagsForResource"
380
+ o.http_method = "POST"
381
+ o.http_request_uri = "/"
382
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
383
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
384
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
385
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
386
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
387
+ end)
388
+
389
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
390
+ o.name = "TagResource"
391
+ o.http_method = "POST"
392
+ o.http_request_uri = "/"
393
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
394
+ o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
395
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
396
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
397
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
398
+ end)
399
+
400
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
401
+ o.name = "UntagResource"
402
+ o.http_method = "POST"
403
+ o.http_request_uri = "/"
404
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
405
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
406
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
407
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
408
+ o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
409
+ end)
410
+
325
411
  api.add_operation(:update_environment, Seahorse::Model::Operation.new.tap do |o|
326
412
  o.name = "UpdateEnvironment"
327
413
  o.http_method = "POST"
@@ -6,9 +6,108 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::Cloud9
9
+
10
+ # When Cloud9 returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::Cloud9::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all Cloud9 errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::Cloud9::Errors::ServiceError
18
+ # # rescues all Cloud9 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
+ # * {BadRequestException}
29
+ # * {ConflictException}
30
+ # * {ForbiddenException}
31
+ # * {InternalServerErrorException}
32
+ # * {LimitExceededException}
33
+ # * {NotFoundException}
34
+ # * {TooManyRequestsException}
35
+ #
36
+ # Additionally, error classes are dynamically generated for service errors based on the error code
37
+ # if they are not defined above.
9
38
  module Errors
10
39
 
11
40
  extend Aws::Errors::DynamicErrors
12
41
 
42
+ class BadRequestException < ServiceError
43
+
44
+ # @param [Seahorse::Client::RequestContext] context
45
+ # @param [String] message
46
+ # @param [Aws::Cloud9::Types::BadRequestException] data
47
+ def initialize(context, message, data = Aws::EmptyStructure.new)
48
+ super(context, message, data)
49
+ end
50
+ end
51
+
52
+ class ConflictException < ServiceError
53
+
54
+ # @param [Seahorse::Client::RequestContext] context
55
+ # @param [String] message
56
+ # @param [Aws::Cloud9::Types::ConflictException] data
57
+ def initialize(context, message, data = Aws::EmptyStructure.new)
58
+ super(context, message, data)
59
+ end
60
+ end
61
+
62
+ class ForbiddenException < ServiceError
63
+
64
+ # @param [Seahorse::Client::RequestContext] context
65
+ # @param [String] message
66
+ # @param [Aws::Cloud9::Types::ForbiddenException] data
67
+ def initialize(context, message, data = Aws::EmptyStructure.new)
68
+ super(context, message, data)
69
+ end
70
+ end
71
+
72
+ class InternalServerErrorException < ServiceError
73
+
74
+ # @param [Seahorse::Client::RequestContext] context
75
+ # @param [String] message
76
+ # @param [Aws::Cloud9::Types::InternalServerErrorException] data
77
+ def initialize(context, message, data = Aws::EmptyStructure.new)
78
+ super(context, message, data)
79
+ end
80
+ end
81
+
82
+ class LimitExceededException < ServiceError
83
+
84
+ # @param [Seahorse::Client::RequestContext] context
85
+ # @param [String] message
86
+ # @param [Aws::Cloud9::Types::LimitExceededException] data
87
+ def initialize(context, message, data = Aws::EmptyStructure.new)
88
+ super(context, message, data)
89
+ end
90
+ end
91
+
92
+ class NotFoundException < ServiceError
93
+
94
+ # @param [Seahorse::Client::RequestContext] context
95
+ # @param [String] message
96
+ # @param [Aws::Cloud9::Types::NotFoundException] data
97
+ def initialize(context, message, data = Aws::EmptyStructure.new)
98
+ super(context, message, data)
99
+ end
100
+ end
101
+
102
+ class TooManyRequestsException < ServiceError
103
+
104
+ # @param [Seahorse::Client::RequestContext] context
105
+ # @param [String] message
106
+ # @param [Aws::Cloud9::Types::TooManyRequestsException] data
107
+ def initialize(context, message, data = Aws::EmptyStructure.new)
108
+ super(context, message, data)
109
+ end
110
+ end
111
+
13
112
  end
14
113
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::Cloud9
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -8,6 +8,18 @@
8
8
  module Aws::Cloud9
9
9
  module Types
10
10
 
11
+ # The target request is invalid.
12
+ #
13
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/BadRequestException AWS API Documentation
14
+ #
15
+ class BadRequestException < Aws::EmptyStructure; end
16
+
17
+ # A conflict occurred.
18
+ #
19
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/ConflictException AWS API Documentation
20
+ #
21
+ class ConflictException < Aws::EmptyStructure; end
22
+
11
23
  # @note When making an API call, you may pass CreateEnvironmentEC2Request
12
24
  # data as a hash:
13
25
  #
@@ -19,6 +31,12 @@ module Aws::Cloud9
19
31
  # subnet_id: "SubnetId",
20
32
  # automatic_stop_time_minutes: 1,
21
33
  # owner_arn: "UserArn",
34
+ # tags: [
35
+ # {
36
+ # key: "TagKey", # required
37
+ # value: "TagValue", # required
38
+ # },
39
+ # ],
22
40
  # }
23
41
  #
24
42
  # @!attribute [rw] name
@@ -64,6 +82,11 @@ module Aws::Cloud9
64
82
  # specified, the ARN defaults to this environment's creator.
65
83
  # @return [String]
66
84
  #
85
+ # @!attribute [rw] tags
86
+ # An array of key-value pairs that will be associated with the new AWS
87
+ # Cloud9 development environment.
88
+ # @return [Array<Types::Tag>]
89
+ #
67
90
  # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/CreateEnvironmentEC2Request AWS API Documentation
68
91
  #
69
92
  class CreateEnvironmentEC2Request < Struct.new(
@@ -73,7 +96,8 @@ module Aws::Cloud9
73
96
  :instance_type,
74
97
  :subnet_id,
75
98
  :automatic_stop_time_minutes,
76
- :owner_arn)
99
+ :owner_arn,
100
+ :tags)
77
101
  include Aws::Structure
78
102
  end
79
103
 
@@ -398,11 +422,15 @@ module Aws::Cloud9
398
422
  # @!attribute [rw] status
399
423
  # The current creation or deletion lifecycle state of the environment.
400
424
  #
425
+ # * `CREATING`\: The environment is in the process of being created.
426
+ #
401
427
  # * `CREATED`\: The environment was successfully created.
402
428
  #
403
- # * `DELETE_FAILED`\: The environment failed to delete.
429
+ # * `CREATE_FAILED`\: The environment failed to be created.
404
430
  #
405
431
  # * `DELETING`\: The environment is in the process of being deleted.
432
+ #
433
+ # * `DELETE_FAILED`\: The environment failed to delete.
406
434
  # @return [String]
407
435
  #
408
436
  # @!attribute [rw] reason
@@ -467,6 +495,24 @@ module Aws::Cloud9
467
495
  include Aws::Structure
468
496
  end
469
497
 
498
+ # An access permissions issue occurred.
499
+ #
500
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/ForbiddenException AWS API Documentation
501
+ #
502
+ class ForbiddenException < Aws::EmptyStructure; end
503
+
504
+ # An internal server error occurred.
505
+ #
506
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/InternalServerErrorException AWS API Documentation
507
+ #
508
+ class InternalServerErrorException < Aws::EmptyStructure; end
509
+
510
+ # A service limit was exceeded.
511
+ #
512
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/LimitExceededException AWS API Documentation
513
+ #
514
+ class LimitExceededException < Aws::EmptyStructure; end
515
+
470
516
  # @note When making an API call, you may pass ListEnvironmentsRequest
471
517
  # data as a hash:
472
518
  #
@@ -516,6 +562,145 @@ module Aws::Cloud9
516
562
  include Aws::Structure
517
563
  end
518
564
 
565
+ # @note When making an API call, you may pass ListTagsForResourceRequest
566
+ # data as a hash:
567
+ #
568
+ # {
569
+ # resource_arn: "EnvironmentArn", # required
570
+ # }
571
+ #
572
+ # @!attribute [rw] resource_arn
573
+ # The Amazon Resource Name (ARN) of the AWS Cloud9 development
574
+ # environment to get the tags for.
575
+ # @return [String]
576
+ #
577
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/ListTagsForResourceRequest AWS API Documentation
578
+ #
579
+ class ListTagsForResourceRequest < Struct.new(
580
+ :resource_arn)
581
+ include Aws::Structure
582
+ end
583
+
584
+ # @!attribute [rw] tags
585
+ # The list of tags associated with the AWS Cloud9 development
586
+ # environment.
587
+ # @return [Array<Types::Tag>]
588
+ #
589
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/ListTagsForResourceResponse AWS API Documentation
590
+ #
591
+ class ListTagsForResourceResponse < Struct.new(
592
+ :tags)
593
+ include Aws::Structure
594
+ end
595
+
596
+ # The target resource cannot be found.
597
+ #
598
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/NotFoundException AWS API Documentation
599
+ #
600
+ class NotFoundException < Aws::EmptyStructure; end
601
+
602
+ # Metadata that is associated with AWS resources. In particular, a
603
+ # name-value pair that can be associated with an AWS Cloud9 development
604
+ # environment. There are two types of tags: *user tags* and *system
605
+ # tags*. A user tag is created by the user. A system tag is
606
+ # automatically created by AWS services. A system tag is prefixed with
607
+ # "aws:" and cannot be modified by the user.
608
+ #
609
+ # @note When making an API call, you may pass Tag
610
+ # data as a hash:
611
+ #
612
+ # {
613
+ # key: "TagKey", # required
614
+ # value: "TagValue", # required
615
+ # }
616
+ #
617
+ # @!attribute [rw] key
618
+ # The **name** part of a tag.
619
+ # @return [String]
620
+ #
621
+ # @!attribute [rw] value
622
+ # The **value** part of a tag.
623
+ # @return [String]
624
+ #
625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/Tag AWS API Documentation
626
+ #
627
+ class Tag < Struct.new(
628
+ :key,
629
+ :value)
630
+ include Aws::Structure
631
+ end
632
+
633
+ # @note When making an API call, you may pass TagResourceRequest
634
+ # data as a hash:
635
+ #
636
+ # {
637
+ # resource_arn: "EnvironmentArn", # required
638
+ # tags: [ # required
639
+ # {
640
+ # key: "TagKey", # required
641
+ # value: "TagValue", # required
642
+ # },
643
+ # ],
644
+ # }
645
+ #
646
+ # @!attribute [rw] resource_arn
647
+ # The Amazon Resource Name (ARN) of the AWS Cloud9 development
648
+ # environment to add tags to.
649
+ # @return [String]
650
+ #
651
+ # @!attribute [rw] tags
652
+ # The list of tags to add to the given AWS Cloud9 development
653
+ # environment.
654
+ # @return [Array<Types::Tag>]
655
+ #
656
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/TagResourceRequest AWS API Documentation
657
+ #
658
+ class TagResourceRequest < Struct.new(
659
+ :resource_arn,
660
+ :tags)
661
+ include Aws::Structure
662
+ end
663
+
664
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/TagResourceResponse AWS API Documentation
665
+ #
666
+ class TagResourceResponse < Aws::EmptyStructure; end
667
+
668
+ # Too many service requests were made over the given time period.
669
+ #
670
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/TooManyRequestsException AWS API Documentation
671
+ #
672
+ class TooManyRequestsException < Aws::EmptyStructure; end
673
+
674
+ # @note When making an API call, you may pass UntagResourceRequest
675
+ # data as a hash:
676
+ #
677
+ # {
678
+ # resource_arn: "EnvironmentArn", # required
679
+ # tag_keys: ["TagKey"], # required
680
+ # }
681
+ #
682
+ # @!attribute [rw] resource_arn
683
+ # The Amazon Resource Name (ARN) of the AWS Cloud9 development
684
+ # environment to remove tags from.
685
+ # @return [String]
686
+ #
687
+ # @!attribute [rw] tag_keys
688
+ # The tag names of the tags to remove from the given AWS Cloud9
689
+ # development environment.
690
+ # @return [Array<String>]
691
+ #
692
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/UntagResourceRequest AWS API Documentation
693
+ #
694
+ class UntagResourceRequest < Struct.new(
695
+ :resource_arn,
696
+ :tag_keys)
697
+ include Aws::Structure
698
+ end
699
+
700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cloud9-2017-09-23/UntagResourceResponse AWS API Documentation
701
+ #
702
+ class UntagResourceResponse < Aws::EmptyStructure; end
703
+
519
704
  # @note When making an API call, you may pass UpdateEnvironmentMembershipRequest
520
705
  # data as a hash:
521
706
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cloud9
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.18.0
4
+ version: 1.23.0
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: 2019-10-23 00:00:00.000000000 Z
11
+ date: 2020-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -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 - AWS Cloud9