aws-sdk-workspaces 1.48.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.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.53.0
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-workspaces/customizations'
48
48
  # @!group service
49
49
  module Aws::WorkSpaces
50
50
 
51
- GEM_VERSION = '1.48.0'
51
+ GEM_VERSION = '1.53.0'
52
52
 
53
53
  end
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -448,6 +448,14 @@ module Aws::WorkSpaces
448
448
  # Region. For more information about copying images, see [ Copy a Custom
449
449
  # WorkSpaces Image][1].
450
450
  #
451
+ # <note markdown="1"> In the China (Ningxia) Region, you can copy images only within the
452
+ # same Region.
453
+ #
454
+ # In the AWS GovCloud (US-West) Region, to copy images to and from other
455
+ # AWS Regions, contact AWS Support.
456
+ #
457
+ # </note>
458
+ #
451
459
  # Before copying a shared image, be sure to verify that it has been
452
460
  # shared from the correct AWS account. To determine if an image has been
453
461
  # shared and to see the AWS account ID that owns an image, use the
@@ -654,6 +662,90 @@ module Aws::WorkSpaces
654
662
  req.send_request(options)
655
663
  end
656
664
 
665
+ # Creates the specified WorkSpace bundle. For more information about
666
+ # creating WorkSpace bundles, see [ Create a Custom WorkSpaces Image and
667
+ # Bundle][1].
668
+ #
669
+ #
670
+ #
671
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/create-custom-bundle.html
672
+ #
673
+ # @option params [required, String] :bundle_name
674
+ # The name of the bundle.
675
+ #
676
+ # @option params [required, String] :bundle_description
677
+ # The description of the bundle.
678
+ #
679
+ # @option params [required, String] :image_id
680
+ # The identifier of the image that is used to create the bundle.
681
+ #
682
+ # @option params [required, Types::ComputeType] :compute_type
683
+ # Describes the compute type of the bundle.
684
+ #
685
+ # @option params [required, Types::UserStorage] :user_storage
686
+ # Describes the user volume for a WorkSpace bundle.
687
+ #
688
+ # @option params [Types::RootStorage] :root_storage
689
+ # Describes the root volume for a WorkSpace bundle.
690
+ #
691
+ # @option params [Array<Types::Tag>] :tags
692
+ # The tags associated with the bundle.
693
+ #
694
+ # <note markdown="1"> To add tags at the same time when you're creating the bundle, you
695
+ # must create an IAM policy that grants your IAM user permissions to use
696
+ # `workspaces:CreateTags`.
697
+ #
698
+ # </note>
699
+ #
700
+ # @return [Types::CreateWorkspaceBundleResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
701
+ #
702
+ # * {Types::CreateWorkspaceBundleResult#workspace_bundle #workspace_bundle} => Types::WorkspaceBundle
703
+ #
704
+ # @example Request syntax with placeholder values
705
+ #
706
+ # resp = client.create_workspace_bundle({
707
+ # bundle_name: "WorkspaceBundleName", # required
708
+ # bundle_description: "WorkspaceBundleDescription", # required
709
+ # image_id: "WorkspaceImageId", # required
710
+ # compute_type: { # required
711
+ # name: "VALUE", # accepts VALUE, STANDARD, PERFORMANCE, POWER, GRAPHICS, POWERPRO, GRAPHICSPRO
712
+ # },
713
+ # user_storage: { # required
714
+ # capacity: "NonEmptyString",
715
+ # },
716
+ # root_storage: {
717
+ # capacity: "NonEmptyString",
718
+ # },
719
+ # tags: [
720
+ # {
721
+ # key: "TagKey", # required
722
+ # value: "TagValue",
723
+ # },
724
+ # ],
725
+ # })
726
+ #
727
+ # @example Response structure
728
+ #
729
+ # resp.workspace_bundle.bundle_id #=> String
730
+ # resp.workspace_bundle.name #=> String
731
+ # resp.workspace_bundle.owner #=> String
732
+ # resp.workspace_bundle.description #=> String
733
+ # resp.workspace_bundle.image_id #=> String
734
+ # resp.workspace_bundle.root_storage.capacity #=> String
735
+ # resp.workspace_bundle.user_storage.capacity #=> String
736
+ # resp.workspace_bundle.compute_type.name #=> String, one of "VALUE", "STANDARD", "PERFORMANCE", "POWER", "GRAPHICS", "POWERPRO", "GRAPHICSPRO"
737
+ # resp.workspace_bundle.last_updated_time #=> Time
738
+ # resp.workspace_bundle.creation_time #=> Time
739
+ #
740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/CreateWorkspaceBundle AWS API Documentation
741
+ #
742
+ # @overload create_workspace_bundle(params = {})
743
+ # @param [Hash] params ({})
744
+ def create_workspace_bundle(params = {}, options = {})
745
+ req = build_request(:create_workspace_bundle, params)
746
+ req.send_request(options)
747
+ end
748
+
657
749
  # Creates one or more WorkSpaces.
658
750
  #
659
751
  # This operation is asynchronous and returns before the WorkSpaces are
@@ -842,6 +934,34 @@ module Aws::WorkSpaces
842
934
  req.send_request(options)
843
935
  end
844
936
 
937
+ # Deletes the specified WorkSpace bundle. For more information about
938
+ # deleting WorkSpace bundles, see [ Delete a Custom WorkSpaces Bundle or
939
+ # Image][1].
940
+ #
941
+ #
942
+ #
943
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/delete_bundle.html
944
+ #
945
+ # @option params [String] :bundle_id
946
+ # The identifier of the bundle.
947
+ #
948
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
949
+ #
950
+ # @example Request syntax with placeholder values
951
+ #
952
+ # resp = client.delete_workspace_bundle({
953
+ # bundle_id: "BundleId",
954
+ # })
955
+ #
956
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DeleteWorkspaceBundle AWS API Documentation
957
+ #
958
+ # @overload delete_workspace_bundle(params = {})
959
+ # @param [Hash] params ({})
960
+ def delete_workspace_bundle(params = {}, options = {})
961
+ req = build_request(:delete_workspace_bundle, params)
962
+ req.send_request(options)
963
+ end
964
+
845
965
  # Deletes the specified image from your account. To delete an image, you
846
966
  # must first delete any bundles that are associated with the image and
847
967
  # unshare the image if it is shared with other accounts.
@@ -871,6 +991,25 @@ module Aws::WorkSpaces
871
991
  # WorkSpaces are registered to this directory, you must remove them
872
992
  # before you can deregister the directory.
873
993
  #
994
+ # <note markdown="1"> Simple AD and AD Connector are made available to you free of charge to
995
+ # use with WorkSpaces. If there are no WorkSpaces being used with your
996
+ # Simple AD or AD Connector directory for 30 consecutive days, this
997
+ # directory will be automatically deregistered for use with Amazon
998
+ # WorkSpaces, and you will be charged for this directory as per the [AWS
999
+ # Directory Services pricing terms][1].
1000
+ #
1001
+ # To delete empty directories, see [ Delete the Directory for Your
1002
+ # WorkSpaces][2]. If you delete your Simple AD or AD Connector
1003
+ # directory, you can always create a new one when you want to start
1004
+ # using WorkSpaces again.
1005
+ #
1006
+ # </note>
1007
+ #
1008
+ #
1009
+ #
1010
+ # [1]: http://aws.amazon.com/directoryservice/pricing/
1011
+ # [2]: https://docs.aws.amazon.com/workspaces/latest/adminguide/delete-workspaces-directory.html
1012
+ #
874
1013
  # @option params [required, String] :directory_id
875
1014
  # The identifier of the directory. If any WorkSpaces are registered to
876
1015
  # this directory, you must remove them before you deregister the
@@ -1183,8 +1322,8 @@ module Aws::WorkSpaces
1183
1322
  # The owner of the bundles. You cannot combine this parameter with any
1184
1323
  # other filter.
1185
1324
  #
1186
- # Specify `AMAZON` to describe the bundles provided by AWS or null to
1187
- # describe the bundles that belong to your account.
1325
+ # To describe the bundles provided by AWS, specify `AMAZON`. To describe
1326
+ # the bundles that belong to your account, don't specify a value.
1188
1327
  #
1189
1328
  # @option params [String] :next_token
1190
1329
  # The token for the next set of results. (You received this token from a
@@ -1217,6 +1356,7 @@ module Aws::WorkSpaces
1217
1356
  # resp.bundles[0].user_storage.capacity #=> String
1218
1357
  # resp.bundles[0].compute_type.name #=> String, one of "VALUE", "STANDARD", "PERFORMANCE", "POWER", "GRAPHICS", "POWERPRO", "GRAPHICSPRO"
1219
1358
  # resp.bundles[0].last_updated_time #=> Time
1359
+ # resp.bundles[0].creation_time #=> Time
1220
1360
  # resp.next_token #=> String
1221
1361
  #
1222
1362
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/DescribeWorkspaceBundles AWS API Documentation
@@ -1288,6 +1428,7 @@ module Aws::WorkSpaces
1288
1428
  # resp.directories[0].workspace_access_properties.device_type_android #=> String, one of "ALLOW", "DENY"
1289
1429
  # resp.directories[0].workspace_access_properties.device_type_chrome_os #=> String, one of "ALLOW", "DENY"
1290
1430
  # resp.directories[0].workspace_access_properties.device_type_zero_client #=> String, one of "ALLOW", "DENY"
1431
+ # resp.directories[0].workspace_access_properties.device_type_linux #=> String, one of "ALLOW", "DENY"
1291
1432
  # resp.directories[0].tenancy #=> String, one of "DEDICATED", "SHARED"
1292
1433
  # resp.directories[0].selfservice_permissions.restart_workspace #=> String, one of "ENABLED", "DISABLED"
1293
1434
  # resp.directories[0].selfservice_permissions.increase_volume_size #=> String, one of "ENABLED", "DISABLED"
@@ -1639,9 +1780,15 @@ module Aws::WorkSpaces
1639
1780
  # The identifier of the EC2 image.
1640
1781
  #
1641
1782
  # @option params [required, String] :ingestion_process
1642
- # The ingestion process to be used when importing the image. For
1643
- # non-GPU-enabled bundles (bundles other than Graphics or GraphicsPro),
1644
- # specify `BYOL_REGULAR`.
1783
+ # The ingestion process to be used when importing the image, depending
1784
+ # on which protocol you want to use for your BYOL Workspace image,
1785
+ # either PCoIP or WorkSpaces Streaming Protocol (WSP). To use WSP,
1786
+ # specify a value that ends in `_WSP`. To use PCoIP, specify a value
1787
+ # that does not end in `_WSP`.
1788
+ #
1789
+ # For non-GPU-enabled bundles (bundles other than Graphics or
1790
+ # GraphicsPro), specify `BYOL_REGULAR` or `BYOL_REGULAR_WSP`, depending
1791
+ # on the protocol.
1645
1792
  #
1646
1793
  # @option params [required, String] :image_name
1647
1794
  # The name of the WorkSpace image.
@@ -1675,7 +1822,7 @@ module Aws::WorkSpaces
1675
1822
  #
1676
1823
  # resp = client.import_workspace_image({
1677
1824
  # ec2_image_id: "Ec2ImageId", # required
1678
- # ingestion_process: "BYOL_REGULAR", # required, accepts BYOL_REGULAR, BYOL_GRAPHICS, BYOL_GRAPHICSPRO
1825
+ # ingestion_process: "BYOL_REGULAR", # required, accepts BYOL_REGULAR, BYOL_GRAPHICS, BYOL_GRAPHICSPRO, BYOL_REGULAR_WSP
1679
1826
  # image_name: "WorkspaceImageName", # required
1680
1827
  # image_description: "WorkspaceImageDescription", # required
1681
1828
  # tags: [
@@ -1930,6 +2077,7 @@ module Aws::WorkSpaces
1930
2077
  # device_type_android: "ALLOW", # accepts ALLOW, DENY
1931
2078
  # device_type_chrome_os: "ALLOW", # accepts ALLOW, DENY
1932
2079
  # device_type_zero_client: "ALLOW", # accepts ALLOW, DENY
2080
+ # device_type_linux: "ALLOW", # accepts ALLOW, DENY
1933
2081
  # },
1934
2082
  # })
1935
2083
  #
@@ -2367,9 +2515,25 @@ module Aws::WorkSpaces
2367
2515
  # using [ DescribeWorkSpaces][1]. If the WorkSpace ID isn't returned,
2368
2516
  # then the WorkSpace has been successfully terminated.
2369
2517
  #
2518
+ # <note markdown="1"> Simple AD and AD Connector are made available to you free of charge to
2519
+ # use with WorkSpaces. If there are no WorkSpaces being used with your
2520
+ # Simple AD or AD Connector directory for 30 consecutive days, this
2521
+ # directory will be automatically deregistered for use with Amazon
2522
+ # WorkSpaces, and you will be charged for this directory as per the [AWS
2523
+ # Directory Services pricing terms][2].
2524
+ #
2525
+ # To delete empty directories, see [ Delete the Directory for Your
2526
+ # WorkSpaces][3]. If you delete your Simple AD or AD Connector
2527
+ # directory, you can always create a new one when you want to start
2528
+ # using WorkSpaces again.
2529
+ #
2530
+ # </note>
2531
+ #
2370
2532
  #
2371
2533
  #
2372
2534
  # [1]: https://docs.aws.amazon.com/workspaces/latest/api/API_DescribeWorkspaces.html
2535
+ # [2]: http://aws.amazon.com/directoryservice/pricing/
2536
+ # [3]: https://docs.aws.amazon.com/workspaces/latest/adminguide/delete-workspaces-directory.html
2373
2537
  #
2374
2538
  # @option params [required, Array<Types::TerminateRequest>] :terminate_workspace_requests
2375
2539
  # The WorkSpaces to terminate. You can specify up to 25 WorkSpaces.
@@ -2491,12 +2655,62 @@ module Aws::WorkSpaces
2491
2655
  req.send_request(options)
2492
2656
  end
2493
2657
 
2494
- # Shares or unshares an image with one account by specifying whether
2495
- # that account has permission to copy the image. If the copy image
2496
- # permission is granted, the image is shared with that account. If the
2497
- # copy image permission is revoked, the image is unshared with the
2498
- # account. For more information about sharing images, see [ Share or
2499
- # Unshare a Custom WorkSpaces Image][1].
2658
+ # Updates a WorkSpace bundle with a new image. For more information
2659
+ # about updating WorkSpace bundles, see [ Update a Custom WorkSpaces
2660
+ # Bundle][1].
2661
+ #
2662
+ # Existing WorkSpaces aren't automatically updated when you update the
2663
+ # bundle that they're based on. To update existing WorkSpaces that are
2664
+ # based on a bundle that you've updated, you must either rebuild the
2665
+ # WorkSpaces or delete and recreate them.
2666
+ #
2667
+ #
2668
+ #
2669
+ # [1]: https://docs.aws.amazon.com/workspaces/latest/adminguide/update-custom-bundle.html
2670
+ #
2671
+ # @option params [String] :bundle_id
2672
+ # The identifier of the bundle.
2673
+ #
2674
+ # @option params [String] :image_id
2675
+ # The identifier of the image.
2676
+ #
2677
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2678
+ #
2679
+ # @example Request syntax with placeholder values
2680
+ #
2681
+ # resp = client.update_workspace_bundle({
2682
+ # bundle_id: "BundleId",
2683
+ # image_id: "WorkspaceImageId",
2684
+ # })
2685
+ #
2686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-2015-04-08/UpdateWorkspaceBundle AWS API Documentation
2687
+ #
2688
+ # @overload update_workspace_bundle(params = {})
2689
+ # @param [Hash] params ({})
2690
+ def update_workspace_bundle(params = {}, options = {})
2691
+ req = build_request(:update_workspace_bundle, params)
2692
+ req.send_request(options)
2693
+ end
2694
+
2695
+ # Shares or unshares an image with one account in the same AWS Region by
2696
+ # specifying whether that account has permission to copy the image. If
2697
+ # the copy image permission is granted, the image is shared with that
2698
+ # account. If the copy image permission is revoked, the image is
2699
+ # unshared with the account.
2700
+ #
2701
+ # After an image has been shared, the recipient account can copy the
2702
+ # image to other AWS Regions as needed.
2703
+ #
2704
+ # <note markdown="1"> In the China (Ningxia) Region, you can copy images only within the
2705
+ # same Region.
2706
+ #
2707
+ # In the AWS GovCloud (US-West) Region, to copy images to and from other
2708
+ # AWS Regions, contact AWS Support.
2709
+ #
2710
+ # </note>
2711
+ #
2712
+ # For more information about sharing images, see [ Share or Unshare a
2713
+ # Custom WorkSpaces Image][1].
2500
2714
  #
2501
2715
  # <note markdown="1"> * To delete an image that has been shared, you must unshare the image
2502
2716
  # before you delete it.
@@ -2557,7 +2771,7 @@ module Aws::WorkSpaces
2557
2771
  params: params,
2558
2772
  config: config)
2559
2773
  context[:gem_name] = 'aws-sdk-workspaces'
2560
- context[:gem_version] = '1.48.0'
2774
+ context[:gem_version] = '1.53.0'
2561
2775
  Seahorse::Client::Request.new(handlers, context)
2562
2776
  end
2563
2777
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -60,6 +60,8 @@ module Aws::WorkSpaces
60
60
  CreateIpGroupResult = Shapes::StructureShape.new(name: 'CreateIpGroupResult')
61
61
  CreateTagsRequest = Shapes::StructureShape.new(name: 'CreateTagsRequest')
62
62
  CreateTagsResult = Shapes::StructureShape.new(name: 'CreateTagsResult')
63
+ CreateWorkspaceBundleRequest = Shapes::StructureShape.new(name: 'CreateWorkspaceBundleRequest')
64
+ CreateWorkspaceBundleResult = Shapes::StructureShape.new(name: 'CreateWorkspaceBundleResult')
63
65
  CreateWorkspacesRequest = Shapes::StructureShape.new(name: 'CreateWorkspacesRequest')
64
66
  CreateWorkspacesResult = Shapes::StructureShape.new(name: 'CreateWorkspacesResult')
65
67
  DedicatedTenancyCidrRangeList = Shapes::ListShape.new(name: 'DedicatedTenancyCidrRangeList')
@@ -75,6 +77,8 @@ module Aws::WorkSpaces
75
77
  DeleteIpGroupResult = Shapes::StructureShape.new(name: 'DeleteIpGroupResult')
76
78
  DeleteTagsRequest = Shapes::StructureShape.new(name: 'DeleteTagsRequest')
77
79
  DeleteTagsResult = Shapes::StructureShape.new(name: 'DeleteTagsResult')
80
+ DeleteWorkspaceBundleRequest = Shapes::StructureShape.new(name: 'DeleteWorkspaceBundleRequest')
81
+ DeleteWorkspaceBundleResult = Shapes::StructureShape.new(name: 'DeleteWorkspaceBundleResult')
78
82
  DeleteWorkspaceImageRequest = Shapes::StructureShape.new(name: 'DeleteWorkspaceImageRequest')
79
83
  DeleteWorkspaceImageResult = Shapes::StructureShape.new(name: 'DeleteWorkspaceImageResult')
80
84
  DeregisterWorkspaceDirectoryRequest = Shapes::StructureShape.new(name: 'DeregisterWorkspaceDirectoryRequest')
@@ -236,6 +240,8 @@ module Aws::WorkSpaces
236
240
  UpdateConnectionAliasPermissionResult = Shapes::StructureShape.new(name: 'UpdateConnectionAliasPermissionResult')
237
241
  UpdateRulesOfIpGroupRequest = Shapes::StructureShape.new(name: 'UpdateRulesOfIpGroupRequest')
238
242
  UpdateRulesOfIpGroupResult = Shapes::StructureShape.new(name: 'UpdateRulesOfIpGroupResult')
243
+ UpdateWorkspaceBundleRequest = Shapes::StructureShape.new(name: 'UpdateWorkspaceBundleRequest')
244
+ UpdateWorkspaceBundleResult = Shapes::StructureShape.new(name: 'UpdateWorkspaceBundleResult')
239
245
  UpdateWorkspaceImagePermissionRequest = Shapes::StructureShape.new(name: 'UpdateWorkspaceImagePermissionRequest')
240
246
  UpdateWorkspaceImagePermissionResult = Shapes::StructureShape.new(name: 'UpdateWorkspaceImagePermissionResult')
241
247
  UserName = Shapes::StringShape.new(name: 'UserName')
@@ -245,6 +251,8 @@ module Aws::WorkSpaces
245
251
  Workspace = Shapes::StructureShape.new(name: 'Workspace')
246
252
  WorkspaceAccessProperties = Shapes::StructureShape.new(name: 'WorkspaceAccessProperties')
247
253
  WorkspaceBundle = Shapes::StructureShape.new(name: 'WorkspaceBundle')
254
+ WorkspaceBundleDescription = Shapes::StringShape.new(name: 'WorkspaceBundleDescription')
255
+ WorkspaceBundleName = Shapes::StringShape.new(name: 'WorkspaceBundleName')
248
256
  WorkspaceConnectionStatus = Shapes::StructureShape.new(name: 'WorkspaceConnectionStatus')
249
257
  WorkspaceConnectionStatusList = Shapes::ListShape.new(name: 'WorkspaceConnectionStatusList')
250
258
  WorkspaceCreationProperties = Shapes::StructureShape.new(name: 'WorkspaceCreationProperties')
@@ -380,6 +388,18 @@ module Aws::WorkSpaces
380
388
 
381
389
  CreateTagsResult.struct_class = Types::CreateTagsResult
382
390
 
391
+ CreateWorkspaceBundleRequest.add_member(:bundle_name, Shapes::ShapeRef.new(shape: WorkspaceBundleName, required: true, location_name: "BundleName"))
392
+ CreateWorkspaceBundleRequest.add_member(:bundle_description, Shapes::ShapeRef.new(shape: WorkspaceBundleDescription, required: true, location_name: "BundleDescription"))
393
+ CreateWorkspaceBundleRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, required: true, location_name: "ImageId"))
394
+ CreateWorkspaceBundleRequest.add_member(:compute_type, Shapes::ShapeRef.new(shape: ComputeType, required: true, location_name: "ComputeType"))
395
+ CreateWorkspaceBundleRequest.add_member(:user_storage, Shapes::ShapeRef.new(shape: UserStorage, required: true, location_name: "UserStorage"))
396
+ CreateWorkspaceBundleRequest.add_member(:root_storage, Shapes::ShapeRef.new(shape: RootStorage, location_name: "RootStorage"))
397
+ CreateWorkspaceBundleRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
398
+ CreateWorkspaceBundleRequest.struct_class = Types::CreateWorkspaceBundleRequest
399
+
400
+ CreateWorkspaceBundleResult.add_member(:workspace_bundle, Shapes::ShapeRef.new(shape: WorkspaceBundle, location_name: "WorkspaceBundle"))
401
+ CreateWorkspaceBundleResult.struct_class = Types::CreateWorkspaceBundleResult
402
+
383
403
  CreateWorkspacesRequest.add_member(:workspaces, Shapes::ShapeRef.new(shape: WorkspaceRequestList, required: true, location_name: "Workspaces"))
384
404
  CreateWorkspacesRequest.struct_class = Types::CreateWorkspacesRequest
385
405
 
@@ -413,6 +433,11 @@ module Aws::WorkSpaces
413
433
 
414
434
  DeleteTagsResult.struct_class = Types::DeleteTagsResult
415
435
 
436
+ DeleteWorkspaceBundleRequest.add_member(:bundle_id, Shapes::ShapeRef.new(shape: BundleId, location_name: "BundleId"))
437
+ DeleteWorkspaceBundleRequest.struct_class = Types::DeleteWorkspaceBundleRequest
438
+
439
+ DeleteWorkspaceBundleResult.struct_class = Types::DeleteWorkspaceBundleResult
440
+
416
441
  DeleteWorkspaceImageRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, required: true, location_name: "ImageId"))
417
442
  DeleteWorkspaceImageRequest.struct_class = Types::DeleteWorkspaceImageRequest
418
443
 
@@ -828,6 +853,12 @@ module Aws::WorkSpaces
828
853
 
829
854
  UpdateRulesOfIpGroupResult.struct_class = Types::UpdateRulesOfIpGroupResult
830
855
 
856
+ UpdateWorkspaceBundleRequest.add_member(:bundle_id, Shapes::ShapeRef.new(shape: BundleId, location_name: "BundleId"))
857
+ UpdateWorkspaceBundleRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, location_name: "ImageId"))
858
+ UpdateWorkspaceBundleRequest.struct_class = Types::UpdateWorkspaceBundleRequest
859
+
860
+ UpdateWorkspaceBundleResult.struct_class = Types::UpdateWorkspaceBundleResult
861
+
831
862
  UpdateWorkspaceImagePermissionRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: WorkspaceImageId, required: true, location_name: "ImageId"))
832
863
  UpdateWorkspaceImagePermissionRequest.add_member(:allow_copy_image, Shapes::ShapeRef.new(shape: BooleanObject, required: true, location_name: "AllowCopyImage"))
833
864
  UpdateWorkspaceImagePermissionRequest.add_member(:shared_account_id, Shapes::ShapeRef.new(shape: AwsAccount, required: true, location_name: "SharedAccountId"))
@@ -862,6 +893,7 @@ module Aws::WorkSpaces
862
893
  WorkspaceAccessProperties.add_member(:device_type_android, Shapes::ShapeRef.new(shape: AccessPropertyValue, location_name: "DeviceTypeAndroid"))
863
894
  WorkspaceAccessProperties.add_member(:device_type_chrome_os, Shapes::ShapeRef.new(shape: AccessPropertyValue, location_name: "DeviceTypeChromeOs"))
864
895
  WorkspaceAccessProperties.add_member(:device_type_zero_client, Shapes::ShapeRef.new(shape: AccessPropertyValue, location_name: "DeviceTypeZeroClient"))
896
+ WorkspaceAccessProperties.add_member(:device_type_linux, Shapes::ShapeRef.new(shape: AccessPropertyValue, location_name: "DeviceTypeLinux"))
865
897
  WorkspaceAccessProperties.struct_class = Types::WorkspaceAccessProperties
866
898
 
867
899
  WorkspaceBundle.add_member(:bundle_id, Shapes::ShapeRef.new(shape: BundleId, location_name: "BundleId"))
@@ -873,6 +905,7 @@ module Aws::WorkSpaces
873
905
  WorkspaceBundle.add_member(:user_storage, Shapes::ShapeRef.new(shape: UserStorage, location_name: "UserStorage"))
874
906
  WorkspaceBundle.add_member(:compute_type, Shapes::ShapeRef.new(shape: ComputeType, location_name: "ComputeType"))
875
907
  WorkspaceBundle.add_member(:last_updated_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastUpdatedTime"))
908
+ WorkspaceBundle.add_member(:creation_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreationTime"))
876
909
  WorkspaceBundle.struct_class = Types::WorkspaceBundle
877
910
 
878
911
  WorkspaceConnectionStatus.add_member(:workspace_id, Shapes::ShapeRef.new(shape: WorkspaceId, location_name: "WorkspaceId"))
@@ -1071,6 +1104,20 @@ module Aws::WorkSpaces
1071
1104
  o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceededException)
1072
1105
  end)
1073
1106
 
1107
+ api.add_operation(:create_workspace_bundle, Seahorse::Model::Operation.new.tap do |o|
1108
+ o.name = "CreateWorkspaceBundle"
1109
+ o.http_method = "POST"
1110
+ o.http_request_uri = "/"
1111
+ o.input = Shapes::ShapeRef.new(shape: CreateWorkspaceBundleRequest)
1112
+ o.output = Shapes::ShapeRef.new(shape: CreateWorkspaceBundleResult)
1113
+ o.errors << Shapes::ShapeRef.new(shape: ResourceUnavailableException)
1114
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAlreadyExistsException)
1115
+ o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceededException)
1116
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1117
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1118
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1119
+ end)
1120
+
1074
1121
  api.add_operation(:create_workspaces, Seahorse::Model::Operation.new.tap do |o|
1075
1122
  o.name = "CreateWorkspaces"
1076
1123
  o.http_method = "POST"
@@ -1117,6 +1164,18 @@ module Aws::WorkSpaces
1117
1164
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1118
1165
  end)
1119
1166
 
1167
+ api.add_operation(:delete_workspace_bundle, Seahorse::Model::Operation.new.tap do |o|
1168
+ o.name = "DeleteWorkspaceBundle"
1169
+ o.http_method = "POST"
1170
+ o.http_request_uri = "/"
1171
+ o.input = Shapes::ShapeRef.new(shape: DeleteWorkspaceBundleRequest)
1172
+ o.output = Shapes::ShapeRef.new(shape: DeleteWorkspaceBundleResult)
1173
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1174
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1175
+ o.errors << Shapes::ShapeRef.new(shape: ResourceAssociatedException)
1176
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1177
+ end)
1178
+
1120
1179
  api.add_operation(:delete_workspace_image, Seahorse::Model::Operation.new.tap do |o|
1121
1180
  o.name = "DeleteWorkspaceImage"
1122
1181
  o.http_method = "POST"
@@ -1549,6 +1608,18 @@ module Aws::WorkSpaces
1549
1608
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1550
1609
  end)
1551
1610
 
1611
+ api.add_operation(:update_workspace_bundle, Seahorse::Model::Operation.new.tap do |o|
1612
+ o.name = "UpdateWorkspaceBundle"
1613
+ o.http_method = "POST"
1614
+ o.http_request_uri = "/"
1615
+ o.input = Shapes::ShapeRef.new(shape: UpdateWorkspaceBundleRequest)
1616
+ o.output = Shapes::ShapeRef.new(shape: UpdateWorkspaceBundleResult)
1617
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1618
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterValuesException)
1619
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1620
+ o.errors << Shapes::ShapeRef.new(shape: ResourceUnavailableException)
1621
+ end)
1622
+
1552
1623
  api.add_operation(:update_workspace_image_permission, Seahorse::Model::Operation.new.tap do |o|
1553
1624
  o.name = "UpdateWorkspaceImagePermission"
1554
1625
  o.http_method = "POST"