aws-sdk-devicefarm 1.51.0 → 1.53.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e0a4c7c6c2851e8bd76b54c3a57f594c85876873fd1bf2a322a5419307c551ba
4
- data.tar.gz: 5b5a52c4b23d792e0280fd820cb950f9b1919c6b71823cced4cfdc84d77cb324
3
+ metadata.gz: 8d943f17ce18edcb5d08c5976945b0b9b15e9dce1c271ed54d771531d2dd9076
4
+ data.tar.gz: 301401aa39cf240de27e2222a53394b15f760f6607f14c8b7ca82d3395f536e5
5
5
  SHA512:
6
- metadata.gz: 44061f2f8327cb4ad3b4c2bcde22175bbf8028cf4f4c4e4f4f1ef25825b65c610f3586fc085b25e30cf60411ef7ed135816ce86d4cbb862f7634f230c7f1da70
7
- data.tar.gz: b90ccd28de9db5e74b63d24c1a9d676291330bece63e08506d770ba49d2487cfc35e0815d9a1fb303ee60b05a55117625e8da2cf39ad84a809a4652e88eb01ce
6
+ metadata.gz: 97240968143a0920c538b123cc0b35940a206383ef48319ca12dc556e0d35412e4e11967d4db4f0ed6e6cfe265353b22c7cc6803407bae32c679a4c91ddf7903
7
+ data.tar.gz: d2c2bd01e4a07dc4183ade03190181506f87a44d36f01d5a16c6e615fbbe85776ccbf56c1f4fde2620a7c70768c3afce993b8ccf71707ba627efbc2aa514da4b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.53.0 (2022-10-25)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.52.0 (2022-09-22)
10
+ ------------------
11
+
12
+ * Feature - This release adds the support for VPC-ENI based connectivity for private devices on AWS Device Farm.
13
+
4
14
  1.51.0 (2022-02-24)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.51.0
1
+ 1.53.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:devicefarm)
@@ -79,8 +79,9 @@ module Aws::DeviceFarm
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+ add_plugin(Aws::DeviceFarm::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::DeviceFarm
297
298
  # ** Please note ** When response stubbing is enabled, no HTTP
298
299
  # requests are made, and retries are disabled.
299
300
  #
301
+ # @option options [Aws::TokenProvider] :token_provider
302
+ # A Bearer Token Provider. This can be an instance of any one of the
303
+ # following classes:
304
+ #
305
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
306
+ # tokens.
307
+ #
308
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
309
+ # access token generated from `aws login`.
310
+ #
311
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
312
+ # will be used to search for tokens configured for your profile in shared configuration files.
313
+ #
300
314
  # @option options [Boolean] :use_dualstack_endpoint
301
315
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
316
  # will be used if available.
@@ -310,6 +324,9 @@ module Aws::DeviceFarm
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::DeviceFarm::EndpointProvider] :endpoint_provider
328
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::DeviceFarm::EndpointParameters`
329
+ #
313
330
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
331
  # requests through. Formatted like 'http://proxy.com:123'.
315
332
  #
@@ -604,6 +621,9 @@ module Aws::DeviceFarm
604
621
  # runs in this project use the specified execution timeout value unless
605
622
  # overridden when scheduling a run.
606
623
  #
624
+ # @option params [Types::VpcConfig] :vpc_config
625
+ # The VPC security groups and subnets that are attached to a project.
626
+ #
607
627
  # @return [Types::CreateProjectResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
608
628
  #
609
629
  # * {Types::CreateProjectResult#project #project} => Types::Project
@@ -631,6 +651,11 @@ module Aws::DeviceFarm
631
651
  # resp = client.create_project({
632
652
  # name: "Name", # required
633
653
  # default_job_timeout_minutes: 1,
654
+ # vpc_config: {
655
+ # security_group_ids: ["SecurityGroupId"], # required
656
+ # subnet_ids: ["SubnetId"], # required
657
+ # vpc_id: "NonEmptyString", # required
658
+ # },
634
659
  # })
635
660
  #
636
661
  # @example Response structure
@@ -639,6 +664,11 @@ module Aws::DeviceFarm
639
664
  # resp.project.name #=> String
640
665
  # resp.project.default_job_timeout_minutes #=> Integer
641
666
  # resp.project.created #=> Time
667
+ # resp.project.vpc_config.security_group_ids #=> Array
668
+ # resp.project.vpc_config.security_group_ids[0] #=> String
669
+ # resp.project.vpc_config.subnet_ids #=> Array
670
+ # resp.project.vpc_config.subnet_ids[0] #=> String
671
+ # resp.project.vpc_config.vpc_id #=> String
642
672
  #
643
673
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/CreateProject AWS API Documentation
644
674
  #
@@ -735,7 +765,7 @@ module Aws::DeviceFarm
735
765
  #
736
766
  #
737
767
  #
738
- # [1]: https://aws.amazon.com/device-farm/faq/
768
+ # [1]: http://aws.amazon.com/device-farm/faqs/
739
769
  #
740
770
  # @return [Types::CreateRemoteAccessSessionResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
741
771
  #
@@ -842,6 +872,11 @@ module Aws::DeviceFarm
842
872
  # resp.remote_access_session.device_udid #=> String
843
873
  # resp.remote_access_session.interaction_mode #=> String, one of "INTERACTIVE", "NO_VIDEO", "VIDEO_ONLY"
844
874
  # resp.remote_access_session.skip_app_resign #=> Boolean
875
+ # resp.remote_access_session.vpc_config.security_group_ids #=> Array
876
+ # resp.remote_access_session.vpc_config.security_group_ids[0] #=> String
877
+ # resp.remote_access_session.vpc_config.subnet_ids #=> Array
878
+ # resp.remote_access_session.vpc_config.subnet_ids[0] #=> String
879
+ # resp.remote_access_session.vpc_config.vpc_id #=> String
845
880
  #
846
881
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/CreateRemoteAccessSession AWS API Documentation
847
882
  #
@@ -2185,6 +2220,11 @@ module Aws::DeviceFarm
2185
2220
  # resp.project.name #=> String
2186
2221
  # resp.project.default_job_timeout_minutes #=> Integer
2187
2222
  # resp.project.created #=> Time
2223
+ # resp.project.vpc_config.security_group_ids #=> Array
2224
+ # resp.project.vpc_config.security_group_ids[0] #=> String
2225
+ # resp.project.vpc_config.subnet_ids #=> Array
2226
+ # resp.project.vpc_config.subnet_ids[0] #=> String
2227
+ # resp.project.vpc_config.vpc_id #=> String
2188
2228
  #
2189
2229
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/GetProject AWS API Documentation
2190
2230
  #
@@ -2287,6 +2327,11 @@ module Aws::DeviceFarm
2287
2327
  # resp.remote_access_session.device_udid #=> String
2288
2328
  # resp.remote_access_session.interaction_mode #=> String, one of "INTERACTIVE", "NO_VIDEO", "VIDEO_ONLY"
2289
2329
  # resp.remote_access_session.skip_app_resign #=> Boolean
2330
+ # resp.remote_access_session.vpc_config.security_group_ids #=> Array
2331
+ # resp.remote_access_session.vpc_config.security_group_ids[0] #=> String
2332
+ # resp.remote_access_session.vpc_config.subnet_ids #=> Array
2333
+ # resp.remote_access_session.vpc_config.subnet_ids[0] #=> String
2334
+ # resp.remote_access_session.vpc_config.vpc_id #=> String
2290
2335
  #
2291
2336
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/GetRemoteAccessSession AWS API Documentation
2292
2337
  #
@@ -2418,6 +2463,11 @@ module Aws::DeviceFarm
2418
2463
  # resp.run.device_selection_result.filters[0].values[0] #=> String
2419
2464
  # resp.run.device_selection_result.matched_devices_count #=> Integer
2420
2465
  # resp.run.device_selection_result.max_devices #=> Integer
2466
+ # resp.run.vpc_config.security_group_ids #=> Array
2467
+ # resp.run.vpc_config.security_group_ids[0] #=> String
2468
+ # resp.run.vpc_config.subnet_ids #=> Array
2469
+ # resp.run.vpc_config.subnet_ids[0] #=> String
2470
+ # resp.run.vpc_config.vpc_id #=> String
2421
2471
  #
2422
2472
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/GetRun AWS API Documentation
2423
2473
  #
@@ -3735,6 +3785,11 @@ module Aws::DeviceFarm
3735
3785
  # resp.projects[0].name #=> String
3736
3786
  # resp.projects[0].default_job_timeout_minutes #=> Integer
3737
3787
  # resp.projects[0].created #=> Time
3788
+ # resp.projects[0].vpc_config.security_group_ids #=> Array
3789
+ # resp.projects[0].vpc_config.security_group_ids[0] #=> String
3790
+ # resp.projects[0].vpc_config.subnet_ids #=> Array
3791
+ # resp.projects[0].vpc_config.subnet_ids[0] #=> String
3792
+ # resp.projects[0].vpc_config.vpc_id #=> String
3738
3793
  # resp.next_token #=> String
3739
3794
  #
3740
3795
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/ListProjects AWS API Documentation
@@ -3847,6 +3902,11 @@ module Aws::DeviceFarm
3847
3902
  # resp.remote_access_sessions[0].device_udid #=> String
3848
3903
  # resp.remote_access_sessions[0].interaction_mode #=> String, one of "INTERACTIVE", "NO_VIDEO", "VIDEO_ONLY"
3849
3904
  # resp.remote_access_sessions[0].skip_app_resign #=> Boolean
3905
+ # resp.remote_access_sessions[0].vpc_config.security_group_ids #=> Array
3906
+ # resp.remote_access_sessions[0].vpc_config.security_group_ids[0] #=> String
3907
+ # resp.remote_access_sessions[0].vpc_config.subnet_ids #=> Array
3908
+ # resp.remote_access_sessions[0].vpc_config.subnet_ids[0] #=> String
3909
+ # resp.remote_access_sessions[0].vpc_config.vpc_id #=> String
3850
3910
  # resp.next_token #=> String
3851
3911
  #
3852
3912
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/ListRemoteAccessSessions AWS API Documentation
@@ -3993,6 +4053,11 @@ module Aws::DeviceFarm
3993
4053
  # resp.runs[0].device_selection_result.filters[0].values[0] #=> String
3994
4054
  # resp.runs[0].device_selection_result.matched_devices_count #=> Integer
3995
4055
  # resp.runs[0].device_selection_result.max_devices #=> Integer
4056
+ # resp.runs[0].vpc_config.security_group_ids #=> Array
4057
+ # resp.runs[0].vpc_config.security_group_ids[0] #=> String
4058
+ # resp.runs[0].vpc_config.subnet_ids #=> Array
4059
+ # resp.runs[0].vpc_config.subnet_ids[0] #=> String
4060
+ # resp.runs[0].vpc_config.vpc_id #=> String
3996
4061
  # resp.next_token #=> String
3997
4062
  #
3998
4063
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/ListRuns AWS API Documentation
@@ -5088,6 +5153,11 @@ module Aws::DeviceFarm
5088
5153
  # resp.run.device_selection_result.filters[0].values[0] #=> String
5089
5154
  # resp.run.device_selection_result.matched_devices_count #=> Integer
5090
5155
  # resp.run.device_selection_result.max_devices #=> Integer
5156
+ # resp.run.vpc_config.security_group_ids #=> Array
5157
+ # resp.run.vpc_config.security_group_ids[0] #=> String
5158
+ # resp.run.vpc_config.subnet_ids #=> Array
5159
+ # resp.run.vpc_config.subnet_ids[0] #=> String
5160
+ # resp.run.vpc_config.vpc_id #=> String
5091
5161
  #
5092
5162
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/ScheduleRun AWS API Documentation
5093
5163
  #
@@ -5266,6 +5336,11 @@ module Aws::DeviceFarm
5266
5336
  # resp.remote_access_session.device_udid #=> String
5267
5337
  # resp.remote_access_session.interaction_mode #=> String, one of "INTERACTIVE", "NO_VIDEO", "VIDEO_ONLY"
5268
5338
  # resp.remote_access_session.skip_app_resign #=> Boolean
5339
+ # resp.remote_access_session.vpc_config.security_group_ids #=> Array
5340
+ # resp.remote_access_session.vpc_config.security_group_ids[0] #=> String
5341
+ # resp.remote_access_session.vpc_config.subnet_ids #=> Array
5342
+ # resp.remote_access_session.vpc_config.subnet_ids[0] #=> String
5343
+ # resp.remote_access_session.vpc_config.vpc_id #=> String
5269
5344
  #
5270
5345
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/StopRemoteAccessSession AWS API Documentation
5271
5346
  #
@@ -5379,6 +5454,11 @@ module Aws::DeviceFarm
5379
5454
  # resp.run.device_selection_result.filters[0].values[0] #=> String
5380
5455
  # resp.run.device_selection_result.matched_devices_count #=> Integer
5381
5456
  # resp.run.device_selection_result.max_devices #=> Integer
5457
+ # resp.run.vpc_config.security_group_ids #=> Array
5458
+ # resp.run.vpc_config.security_group_ids[0] #=> String
5459
+ # resp.run.vpc_config.subnet_ids #=> Array
5460
+ # resp.run.vpc_config.subnet_ids[0] #=> String
5461
+ # resp.run.vpc_config.vpc_id #=> String
5382
5462
  #
5383
5463
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/StopRun AWS API Documentation
5384
5464
  #
@@ -5788,6 +5868,9 @@ module Aws::DeviceFarm
5788
5868
  # The number of minutes a test run in the project executes before it
5789
5869
  # times out.
5790
5870
  #
5871
+ # @option params [Types::VpcConfig] :vpc_config
5872
+ # The VPC security groups and subnets that are attached to a project.
5873
+ #
5791
5874
  # @return [Types::UpdateProjectResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5792
5875
  #
5793
5876
  # * {Types::UpdateProjectResult#project #project} => Types::Project
@@ -5817,6 +5900,11 @@ module Aws::DeviceFarm
5817
5900
  # arn: "AmazonResourceName", # required
5818
5901
  # name: "Name",
5819
5902
  # default_job_timeout_minutes: 1,
5903
+ # vpc_config: {
5904
+ # security_group_ids: ["SecurityGroupId"], # required
5905
+ # subnet_ids: ["SubnetId"], # required
5906
+ # vpc_id: "NonEmptyString", # required
5907
+ # },
5820
5908
  # })
5821
5909
  #
5822
5910
  # @example Response structure
@@ -5825,6 +5913,11 @@ module Aws::DeviceFarm
5825
5913
  # resp.project.name #=> String
5826
5914
  # resp.project.default_job_timeout_minutes #=> Integer
5827
5915
  # resp.project.created #=> Time
5916
+ # resp.project.vpc_config.security_group_ids #=> Array
5917
+ # resp.project.vpc_config.security_group_ids[0] #=> String
5918
+ # resp.project.vpc_config.subnet_ids #=> Array
5919
+ # resp.project.vpc_config.subnet_ids[0] #=> String
5920
+ # resp.project.vpc_config.vpc_id #=> String
5828
5921
  #
5829
5922
  # @see http://docs.aws.amazon.com/goto/WebAPI/devicefarm-2015-06-23/UpdateProject AWS API Documentation
5830
5923
  #
@@ -6006,7 +6099,7 @@ module Aws::DeviceFarm
6006
6099
  params: params,
6007
6100
  config: config)
6008
6101
  context[:gem_name] = 'aws-sdk-devicefarm'
6009
- context[:gem_version] = '1.51.0'
6102
+ context[:gem_version] = '1.53.0'
6010
6103
  Seahorse::Client::Request.new(handlers, context)
6011
6104
  end
6012
6105
 
@@ -265,6 +265,7 @@ module Aws::DeviceFarm
265
265
  ScheduleRunRequest = Shapes::StructureShape.new(name: 'ScheduleRunRequest')
266
266
  ScheduleRunResult = Shapes::StructureShape.new(name: 'ScheduleRunResult')
267
267
  ScheduleRunTest = Shapes::StructureShape.new(name: 'ScheduleRunTest')
268
+ SecurityGroupId = Shapes::StringShape.new(name: 'SecurityGroupId')
268
269
  SecurityGroupIds = Shapes::ListShape.new(name: 'SecurityGroupIds')
269
270
  SensitiveString = Shapes::StringShape.new(name: 'SensitiveString')
270
271
  SensitiveURL = Shapes::StringShape.new(name: 'SensitiveURL')
@@ -279,6 +280,7 @@ module Aws::DeviceFarm
279
280
  StopRunRequest = Shapes::StructureShape.new(name: 'StopRunRequest')
280
281
  StopRunResult = Shapes::StructureShape.new(name: 'StopRunResult')
281
282
  String = Shapes::StringShape.new(name: 'String')
283
+ SubnetId = Shapes::StringShape.new(name: 'SubnetId')
282
284
  SubnetIds = Shapes::ListShape.new(name: 'SubnetIds')
283
285
  Suite = Shapes::StructureShape.new(name: 'Suite')
284
286
  Suites = Shapes::ListShape.new(name: 'Suites')
@@ -344,6 +346,9 @@ module Aws::DeviceFarm
344
346
  VPCEConfigurations = Shapes::ListShape.new(name: 'VPCEConfigurations')
345
347
  VPCEServiceName = Shapes::StringShape.new(name: 'VPCEServiceName')
346
348
  VideoCapture = Shapes::BooleanShape.new(name: 'VideoCapture')
349
+ VpcConfig = Shapes::StructureShape.new(name: 'VpcConfig')
350
+ VpcSecurityGroupIds = Shapes::ListShape.new(name: 'VpcSecurityGroupIds')
351
+ VpcSubnetIds = Shapes::ListShape.new(name: 'VpcSubnetIds')
347
352
 
348
353
  AccountSettings.add_member(:aws_account_number, Shapes::ShapeRef.new(shape: AWSAccountNumber, location_name: "awsAccountNumber"))
349
354
  AccountSettings.add_member(:unmetered_devices, Shapes::ShapeRef.new(shape: PurchasedDevicesMap, location_name: "unmeteredDevices"))
@@ -427,6 +432,7 @@ module Aws::DeviceFarm
427
432
 
428
433
  CreateProjectRequest.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "name"))
429
434
  CreateProjectRequest.add_member(:default_job_timeout_minutes, Shapes::ShapeRef.new(shape: JobTimeoutMinutes, location_name: "defaultJobTimeoutMinutes"))
435
+ CreateProjectRequest.add_member(:vpc_config, Shapes::ShapeRef.new(shape: VpcConfig, location_name: "vpcConfig"))
430
436
  CreateProjectRequest.struct_class = Types::CreateProjectRequest
431
437
 
432
438
  CreateProjectResult.add_member(:project, Shapes::ShapeRef.new(shape: Project, location_name: "project"))
@@ -1083,6 +1089,7 @@ module Aws::DeviceFarm
1083
1089
  Project.add_member(:name, Shapes::ShapeRef.new(shape: Name, location_name: "name"))
1084
1090
  Project.add_member(:default_job_timeout_minutes, Shapes::ShapeRef.new(shape: JobTimeoutMinutes, location_name: "defaultJobTimeoutMinutes"))
1085
1091
  Project.add_member(:created, Shapes::ShapeRef.new(shape: DateTime, location_name: "created"))
1092
+ Project.add_member(:vpc_config, Shapes::ShapeRef.new(shape: VpcConfig, location_name: "vpcConfig"))
1086
1093
  Project.struct_class = Types::Project
1087
1094
 
1088
1095
  Projects.member = Shapes::ShapeRef.new(shape: Project)
@@ -1131,6 +1138,7 @@ module Aws::DeviceFarm
1131
1138
  RemoteAccessSession.add_member(:device_udid, Shapes::ShapeRef.new(shape: String, location_name: "deviceUdid"))
1132
1139
  RemoteAccessSession.add_member(:interaction_mode, Shapes::ShapeRef.new(shape: InteractionMode, location_name: "interactionMode"))
1133
1140
  RemoteAccessSession.add_member(:skip_app_resign, Shapes::ShapeRef.new(shape: SkipAppResign, location_name: "skipAppResign"))
1141
+ RemoteAccessSession.add_member(:vpc_config, Shapes::ShapeRef.new(shape: VpcConfig, location_name: "vpcConfig"))
1134
1142
  RemoteAccessSession.struct_class = Types::RemoteAccessSession
1135
1143
 
1136
1144
  RemoteAccessSessions.member = Shapes::ShapeRef.new(shape: RemoteAccessSession)
@@ -1184,6 +1192,7 @@ module Aws::DeviceFarm
1184
1192
  Run.add_member(:skip_app_resign, Shapes::ShapeRef.new(shape: SkipAppResign, location_name: "skipAppResign"))
1185
1193
  Run.add_member(:test_spec_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "testSpecArn"))
1186
1194
  Run.add_member(:device_selection_result, Shapes::ShapeRef.new(shape: DeviceSelectionResult, location_name: "deviceSelectionResult"))
1195
+ Run.add_member(:vpc_config, Shapes::ShapeRef.new(shape: VpcConfig, location_name: "vpcConfig"))
1187
1196
  Run.struct_class = Types::Run
1188
1197
 
1189
1198
  Runs.member = Shapes::ShapeRef.new(shape: Run)
@@ -1419,6 +1428,7 @@ module Aws::DeviceFarm
1419
1428
  UpdateProjectRequest.add_member(:arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "arn"))
1420
1429
  UpdateProjectRequest.add_member(:name, Shapes::ShapeRef.new(shape: Name, location_name: "name"))
1421
1430
  UpdateProjectRequest.add_member(:default_job_timeout_minutes, Shapes::ShapeRef.new(shape: JobTimeoutMinutes, location_name: "defaultJobTimeoutMinutes"))
1431
+ UpdateProjectRequest.add_member(:vpc_config, Shapes::ShapeRef.new(shape: VpcConfig, location_name: "vpcConfig"))
1422
1432
  UpdateProjectRequest.struct_class = Types::UpdateProjectRequest
1423
1433
 
1424
1434
  UpdateProjectResult.add_member(:project, Shapes::ShapeRef.new(shape: Project, location_name: "project"))
@@ -1475,6 +1485,15 @@ module Aws::DeviceFarm
1475
1485
 
1476
1486
  VPCEConfigurations.member = Shapes::ShapeRef.new(shape: VPCEConfiguration)
1477
1487
 
1488
+ VpcConfig.add_member(:security_group_ids, Shapes::ShapeRef.new(shape: VpcSecurityGroupIds, required: true, location_name: "securityGroupIds"))
1489
+ VpcConfig.add_member(:subnet_ids, Shapes::ShapeRef.new(shape: VpcSubnetIds, required: true, location_name: "subnetIds"))
1490
+ VpcConfig.add_member(:vpc_id, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "vpcId"))
1491
+ VpcConfig.struct_class = Types::VpcConfig
1492
+
1493
+ VpcSecurityGroupIds.member = Shapes::ShapeRef.new(shape: SecurityGroupId)
1494
+
1495
+ VpcSubnetIds.member = Shapes::ShapeRef.new(shape: SubnetId)
1496
+
1478
1497
 
1479
1498
  # @api private
1480
1499
  API = Seahorse::Model::Api.new.tap do |api|
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::DeviceFarm
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ self[:use_dual_stack] = options[:use_dual_stack]
54
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
+ if self[:use_dual_stack].nil?
56
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
+ end
58
+ self[:use_fips] = options[:use_fips]
59
+ self[:use_fips] = false if self[:use_fips].nil?
60
+ if self[:use_fips].nil?
61
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
+ end
63
+ self[:endpoint] = options[:endpoint]
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,112 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::DeviceFarm
11
+ class EndpointProvider
12
+ def initialize(rule_set = nil)
13
+ @@rule_set ||= begin
14
+ endpoint_rules = Aws::Json.load(Base64.decode64(RULES))
15
+ Aws::Endpoints::RuleSet.new(
16
+ version: endpoint_rules['version'],
17
+ service_id: endpoint_rules['serviceId'],
18
+ parameters: endpoint_rules['parameters'],
19
+ rules: endpoint_rules['rules']
20
+ )
21
+ end
22
+ @provider = Aws::Endpoints::RulesProvider.new(rule_set || @@rule_set)
23
+ end
24
+
25
+ def resolve_endpoint(parameters)
26
+ @provider.resolve_endpoint(parameters)
27
+ end
28
+
29
+ # @api private
30
+ RULES = <<-JSON
31
+ eyJ2ZXJzaW9uIjoiMS4wIiwicGFyYW1ldGVycyI6eyJSZWdpb24iOnsiYnVp
32
+ bHRJbiI6IkFXUzo6UmVnaW9uIiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1bWVu
33
+ dGF0aW9uIjoiVGhlIEFXUyByZWdpb24gdXNlZCB0byBkaXNwYXRjaCB0aGUg
34
+ cmVxdWVzdC4iLCJ0eXBlIjoiU3RyaW5nIn0sIlVzZUR1YWxTdGFjayI6eyJi
35
+ dWlsdEluIjoiQVdTOjpVc2VEdWFsU3RhY2siLCJyZXF1aXJlZCI6dHJ1ZSwi
36
+ ZGVmYXVsdCI6ZmFsc2UsImRvY3VtZW50YXRpb24iOiJXaGVuIHRydWUsIHVz
37
+ ZSB0aGUgZHVhbC1zdGFjayBlbmRwb2ludC4gSWYgdGhlIGNvbmZpZ3VyZWQg
38
+ ZW5kcG9pbnQgZG9lcyBub3Qgc3VwcG9ydCBkdWFsLXN0YWNrLCBkaXNwYXRj
39
+ aGluZyB0aGUgcmVxdWVzdCBNQVkgcmV0dXJuIGFuIGVycm9yLiIsInR5cGUi
40
+ OiJCb29sZWFuIn0sIlVzZUZJUFMiOnsiYnVpbHRJbiI6IkFXUzo6VXNlRklQ
41
+ UyIsInJlcXVpcmVkIjp0cnVlLCJkZWZhdWx0IjpmYWxzZSwiZG9jdW1lbnRh
42
+ dGlvbiI6IldoZW4gdHJ1ZSwgc2VuZCB0aGlzIHJlcXVlc3QgdG8gdGhlIEZJ
43
+ UFMtY29tcGxpYW50IHJlZ2lvbmFsIGVuZHBvaW50LiBJZiB0aGUgY29uZmln
44
+ dXJlZCBlbmRwb2ludCBkb2VzIG5vdCBoYXZlIGEgRklQUyBjb21wbGlhbnQg
45
+ ZW5kcG9pbnQsIGRpc3BhdGNoaW5nIHRoZSByZXF1ZXN0IHdpbGwgcmV0dXJu
46
+ IGFuIGVycm9yLiIsInR5cGUiOiJCb29sZWFuIn0sIkVuZHBvaW50Ijp7ImJ1
47
+ aWx0SW4iOiJTREs6OkVuZHBvaW50IiwicmVxdWlyZWQiOmZhbHNlLCJkb2N1
48
+ bWVudGF0aW9uIjoiT3ZlcnJpZGUgdGhlIGVuZHBvaW50IHVzZWQgdG8gc2Vu
49
+ ZCB0aGlzIHJlcXVlc3QiLCJ0eXBlIjoiU3RyaW5nIn19LCJydWxlcyI6W3si
50
+ Y29uZGl0aW9ucyI6W3siZm4iOiJhd3MucGFydGl0aW9uIiwiYXJndiI6W3si
51
+ cmVmIjoiUmVnaW9uIn1dLCJhc3NpZ24iOiJQYXJ0aXRpb25SZXN1bHQifV0s
52
+ InR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
53
+ aXNTZXQiLCJhcmd2IjpbeyJyZWYiOiJFbmRwb2ludCJ9XX0seyJmbiI6InBh
54
+ cnNlVVJMIiwiYXJndiI6W3sicmVmIjoiRW5kcG9pbnQifV0sImFzc2lnbiI6
55
+ InVybCJ9XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0aW9ucyI6
56
+ W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQ
57
+ UyJ9LHRydWVdfV0sImVycm9yIjoiSW52YWxpZCBDb25maWd1cmF0aW9uOiBG
58
+ SVBTIGFuZCBjdXN0b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0
59
+ eXBlIjoiZXJyb3IifSx7ImNvbmRpdGlvbnMiOltdLCJ0eXBlIjoidHJlZSIs
60
+ InJ1bGVzIjpbeyJjb25kaXRpb25zIjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMi
61
+ LCJhcmd2IjpbeyJyZWYiOiJVc2VEdWFsU3RhY2sifSx0cnVlXX1dLCJlcnJv
62
+ ciI6IkludmFsaWQgQ29uZmlndXJhdGlvbjogRHVhbHN0YWNrIGFuZCBjdXN0
63
+ b20gZW5kcG9pbnQgYXJlIG5vdCBzdXBwb3J0ZWQiLCJ0eXBlIjoiZXJyb3Ii
64
+ fSx7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2ludCI6eyJ1cmwiOnsicmVmIjoi
65
+ RW5kcG9pbnQifSwicHJvcGVydGllcyI6e30sImhlYWRlcnMiOnt9fSwidHlw
66
+ ZSI6ImVuZHBvaW50In1dfV19LHsiY29uZGl0aW9ucyI6W3siZm4iOiJib29s
67
+ ZWFuRXF1YWxzIiwiYXJndiI6W3sicmVmIjoiVXNlRklQUyJ9LHRydWVdfSx7
68
+ ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxT
69
+ dGFjayJ9LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRp
70
+ dGlvbnMiOlt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsi
71
+ Zm4iOiJnZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0
72
+ In0sInN1cHBvcnRzRklQUyJdfV19LHsiZm4iOiJib29sZWFuRXF1YWxzIiwi
73
+ YXJndiI6W3RydWUseyJmbiI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQ
74
+ YXJ0aXRpb25SZXN1bHQifSwic3VwcG9ydHNEdWFsU3RhY2siXX1dfV0sInR5
75
+ cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMiOltdLCJlbmRwb2lu
76
+ dCI6eyJ1cmwiOiJodHRwczovL2RldmljZWZhcm0tZmlwcy57UmVnaW9ufS57
77
+ UGFydGl0aW9uUmVzdWx0I2R1YWxTdGFja0Ruc1N1ZmZpeH0iLCJwcm9wZXJ0
78
+ aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQifV19LHsi
79
+ Y29uZGl0aW9ucyI6W10sImVycm9yIjoiRklQUyBhbmQgRHVhbFN0YWNrIGFy
80
+ ZSBlbmFibGVkLCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9y
81
+ dCBvbmUgb3IgYm90aCIsInR5cGUiOiJlcnJvciJ9XX0seyJjb25kaXRpb25z
82
+ IjpbeyJmbiI6ImJvb2xlYW5FcXVhbHMiLCJhcmd2IjpbeyJyZWYiOiJVc2VG
83
+ SVBTIn0sdHJ1ZV19XSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29uZGl0
84
+ aW9ucyI6W3siZm4iOiJib29sZWFuRXF1YWxzIiwiYXJndiI6W3RydWUseyJm
85
+ biI6ImdldEF0dHIiLCJhcmd2IjpbeyJyZWYiOiJQYXJ0aXRpb25SZXN1bHQi
86
+ fSwic3VwcG9ydHNGSVBTIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpb
87
+ eyJjb25kaXRpb25zIjpbXSwidHlwZSI6InRyZWUiLCJydWxlcyI6W3siY29u
88
+ ZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vZGV2aWNl
89
+ ZmFybS1maXBzLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZG5zU3VmZml4
90
+ fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5cGUiOiJlbmRw
91
+ b2ludCJ9XX1dfSx7ImNvbmRpdGlvbnMiOltdLCJlcnJvciI6IkZJUFMgaXMg
92
+ ZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBub3Qgc3VwcG9ydCBG
93
+ SVBTIiwidHlwZSI6ImVycm9yIn1dfSx7ImNvbmRpdGlvbnMiOlt7ImZuIjoi
94
+ Ym9vbGVhbkVxdWFscyIsImFyZ3YiOlt7InJlZiI6IlVzZUR1YWxTdGFjayJ9
95
+ LHRydWVdfV0sInR5cGUiOiJ0cmVlIiwicnVsZXMiOlt7ImNvbmRpdGlvbnMi
96
+ Olt7ImZuIjoiYm9vbGVhbkVxdWFscyIsImFyZ3YiOlt0cnVlLHsiZm4iOiJn
97
+ ZXRBdHRyIiwiYXJndiI6W3sicmVmIjoiUGFydGl0aW9uUmVzdWx0In0sInN1
98
+ cHBvcnRzRHVhbFN0YWNrIl19XX1dLCJ0eXBlIjoidHJlZSIsInJ1bGVzIjpb
99
+ eyJjb25kaXRpb25zIjpbXSwiZW5kcG9pbnQiOnsidXJsIjoiaHR0cHM6Ly9k
100
+ ZXZpY2VmYXJtLntSZWdpb259LntQYXJ0aXRpb25SZXN1bHQjZHVhbFN0YWNr
101
+ RG5zU3VmZml4fSIsInByb3BlcnRpZXMiOnt9LCJoZWFkZXJzIjp7fX0sInR5
102
+ cGUiOiJlbmRwb2ludCJ9XX0seyJjb25kaXRpb25zIjpbXSwiZXJyb3IiOiJE
103
+ dWFsU3RhY2sgaXMgZW5hYmxlZCBidXQgdGhpcyBwYXJ0aXRpb24gZG9lcyBu
104
+ b3Qgc3VwcG9ydCBEdWFsU3RhY2siLCJ0eXBlIjoiZXJyb3IifV19LHsiY29u
105
+ ZGl0aW9ucyI6W10sImVuZHBvaW50Ijp7InVybCI6Imh0dHBzOi8vZGV2aWNl
106
+ ZmFybS57UmVnaW9ufS57UGFydGl0aW9uUmVzdWx0I2Ruc1N1ZmZpeH0iLCJw
107
+ cm9wZXJ0aWVzIjp7fSwiaGVhZGVycyI6e319LCJ0eXBlIjoiZW5kcG9pbnQi
108
+ fV19XX0=
109
+
110
+ JSON
111
+ end
112
+ end