aws-sdk-devicefarm 1.51.0 → 1.53.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
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