aws-sdk-batch 1.60.0 → 1.61.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.
@@ -239,7 +239,7 @@ module Aws::Batch
239
239
  #
240
240
  # @!attribute [rw] type
241
241
  # The type of the compute environment: `MANAGED` or `UNMANAGED`. For
242
- # more information, see [Compute Environments][1] in the *Batch User
242
+ # more information, see [Compute environments][1] in the *Batch User
243
243
  # Guide*.
244
244
  #
245
245
  #
@@ -276,7 +276,7 @@ module Aws::Batch
276
276
  #
277
277
  # @!attribute [rw] compute_resources
278
278
  # The compute resources defined for the compute environment. For more
279
- # information, see [Compute Environments][1] in the *Batch User
279
+ # information, see [Compute environments][1] in the *Batch User
280
280
  # Guide*.
281
281
  #
282
282
  #
@@ -295,6 +295,16 @@ module Aws::Batch
295
295
  # [1]: https://docs.aws.amazon.com/batch/latest/userguide/service_IAM_role.html
296
296
  # @return [String]
297
297
  #
298
+ # @!attribute [rw] update_policy
299
+ # Specifies the infrastructure update policy for the compute
300
+ # environment. For more information about infrastructure updates, see
301
+ # [Updating compute environments][1] in the *Batch User Guide*.
302
+ #
303
+ #
304
+ #
305
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
306
+ # @return [Types::UpdatePolicy]
307
+ #
298
308
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ComputeEnvironmentDetail AWS API Documentation
299
309
  #
300
310
  class ComputeEnvironmentDetail < Struct.new(
@@ -308,7 +318,8 @@ module Aws::Batch
308
318
  :status,
309
319
  :status_reason,
310
320
  :compute_resources,
311
- :service_role)
321
+ :service_role,
322
+ :update_policy)
312
323
  SENSITIVE = []
313
324
  include Aws::Structure
314
325
  end
@@ -358,7 +369,7 @@ module Aws::Batch
358
369
  end
359
370
 
360
371
  # An object representing an Batch compute resource. For more
361
- # information, see [Compute Environments][1] in the *Batch User Guide*.
372
+ # information, see [Compute environments][1] in the *Batch User Guide*.
362
373
  #
363
374
  #
364
375
  #
@@ -400,12 +411,12 @@ module Aws::Batch
400
411
  #
401
412
  # @!attribute [rw] type
402
413
  # The type of compute environment: `EC2`, `SPOT`, `FARGATE`, or
403
- # `FARGATE_SPOT`. For more information, see [Compute Environments][1]
414
+ # `FARGATE_SPOT`. For more information, see [Compute environments][1]
404
415
  # in the *Batch User Guide*.
405
416
  #
406
417
  # If you choose `SPOT`, you must also specify an Amazon EC2 Spot Fleet
407
418
  # role with the `spotIamFleetRole` parameter. For more information,
408
- # see [Amazon EC2 Spot Fleet role][2] in the *Batch User Guide*.
419
+ # see [Amazon EC2 spot fleet role][2] in the *Batch User Guide*.
409
420
  #
410
421
  #
411
422
  #
@@ -418,7 +429,7 @@ module Aws::Batch
418
429
  # enough instances of the best fitting instance type can be allocated.
419
430
  # This might be because of availability of the instance type in the
420
431
  # Region or [Amazon EC2 service limits][1]. For more information, see
421
- # [Allocation Strategies][2] in the *Batch User Guide*.
432
+ # [Allocation strategies][2] in the *Batch User Guide*.
422
433
  #
423
434
  # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
424
435
  # resources, and shouldn't be specified.
@@ -436,7 +447,10 @@ module Aws::Batch
436
447
  # jobs aren't run until the currently running jobs have completed.
437
448
  # This allocation strategy keeps costs lower but can limit scaling.
438
449
  # If you are using Spot Fleets with `BEST_FIT` then the Spot Fleet
439
- # IAM Role must be specified.
450
+ # IAM Role must be specified. Compute resources that use a
451
+ # `BEST_FIT` allocation strategy don't support infrastructure
452
+ # updates and can't update some parameters. For more information,
453
+ # see [Updating compute environments][3] in the *Batch User Guide*.
440
454
  #
441
455
  # BEST\_FIT\_PROGRESSIVE
442
456
  #
@@ -463,6 +477,7 @@ module Aws::Batch
463
477
  #
464
478
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html
465
479
  # [2]: https://docs.aws.amazon.com/batch/latest/userguide/allocation-strategies.html
480
+ # [3]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
466
481
  # @return [String]
467
482
  #
468
483
  # @!attribute [rw] minv_cpus
@@ -558,7 +573,7 @@ module Aws::Batch
558
573
  # The VPC subnets where the compute resources are launched. These
559
574
  # subnets must be within the same VPC. Fargate compute resources can
560
575
  # contain up to 16 subnets. For more information, see [VPCs and
561
- # Subnets][1] in the *Amazon VPC User Guide*.
576
+ # subnets][1] in the *Amazon VPC User Guide*.
562
577
  #
563
578
  #
564
579
  #
@@ -593,7 +608,7 @@ module Aws::Batch
593
608
  # Resource Name (ARN) of an instance profile. For example, `
594
609
  # ecsInstanceRole ` or
595
610
  # `arn:aws:iam::<aws_account_id>:instance-profile/ecsInstanceRole `.
596
- # For more information, see [Amazon ECS Instance Role][1] in the
611
+ # For more information, see [Amazon ECS instance role][1] in the
597
612
  # *Batch User Guide*.
598
613
  #
599
614
  # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
@@ -631,7 +646,7 @@ module Aws::Batch
631
646
  # placement group and associate it with your compute resources. This
632
647
  # keeps your multi-node parallel job on a logical grouping of
633
648
  # instances within a single Availability Zone with high network flow
634
- # potential. For more information, see [Placement Groups][1] in the
649
+ # potential. For more information, see [Placement groups][1] in the
635
650
  # *Amazon EC2 User Guide for Linux Instances*.
636
651
  #
637
652
  # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
@@ -665,7 +680,7 @@ module Aws::Batch
665
680
  # applied to a `SPOT` compute environment. This role is required if
666
681
  # the allocation strategy set to `BEST_FIT` or if the allocation
667
682
  # strategy isn't specified. For more information, see [Amazon EC2
668
- # Spot Fleet Role][1] in the *Batch User Guide*.
683
+ # spot fleet role][1] in the *Batch User Guide*.
669
684
  #
670
685
  # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
671
686
  # resources, and shouldn't be specified.
@@ -677,7 +692,7 @@ module Aws::Batch
677
692
  # managed policy. The previously recommended
678
693
  # **AmazonEC2SpotFleetRole** managed policy doesn't have the required
679
694
  # permissions to tag Spot Instances. For more information, see [Spot
680
- # Instances not tagged on creation][2] in the *Batch User Guide*.
695
+ # instances not tagged on creation][2] in the *Batch User Guide*.
681
696
  #
682
697
  #
683
698
  #
@@ -691,7 +706,7 @@ module Aws::Batch
691
706
  # CreateComputeEnvironment API operation override the same parameters
692
707
  # in the launch template. You must specify either the launch template
693
708
  # ID or launch template name in the request, but not both. For more
694
- # information, see [Launch Template Support][1] in the *Batch User
709
+ # information, see [Launch template support][1] in the *Batch User
695
710
  # Guide*.
696
711
  #
697
712
  # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
@@ -742,12 +757,12 @@ module Aws::Batch
742
757
  end
743
758
 
744
759
  # An object representing the attributes of a compute environment that
745
- # can be updated. For more information, see [Compute Environments][1] in
746
- # the *Batch User Guide*.
760
+ # can be updated. For more information, see [Updating compute
761
+ # environments][1] in the *Batch User Guide*.
747
762
  #
748
763
  #
749
764
  #
750
- # [1]: https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html
765
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
751
766
  #
752
767
  # @note When making an API call, you may pass ComputeResourceUpdate
753
768
  # data as a hash:
@@ -758,11 +773,34 @@ module Aws::Batch
758
773
  # desiredv_cpus: 1,
759
774
  # subnets: ["String"],
760
775
  # security_group_ids: ["String"],
776
+ # allocation_strategy: "BEST_FIT_PROGRESSIVE", # accepts BEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED
777
+ # instance_types: ["String"],
778
+ # ec2_key_pair: "String",
779
+ # instance_role: "String",
780
+ # tags: {
781
+ # "String" => "String",
782
+ # },
783
+ # placement_group: "String",
784
+ # bid_percentage: 1,
785
+ # launch_template: {
786
+ # launch_template_id: "String",
787
+ # launch_template_name: "String",
788
+ # version: "String",
789
+ # },
790
+ # ec2_configuration: [
791
+ # {
792
+ # image_type: "ImageType", # required
793
+ # image_id_override: "ImageIdOverride",
794
+ # },
795
+ # ],
796
+ # update_to_latest_image_version: false,
797
+ # type: "EC2", # accepts EC2, SPOT, FARGATE, FARGATE_SPOT
798
+ # image_id: "String",
761
799
  # }
762
800
  #
763
801
  # @!attribute [rw] minv_cpus
764
802
  # The minimum number of Amazon EC2 vCPUs that an environment should
765
- # maintain.
803
+ # maintain (even if the compute environment is `DISABLED`).
766
804
  #
767
805
  # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
768
806
  # resources, and shouldn't be specified.
@@ -786,6 +824,8 @@ module Aws::Batch
786
824
  #
787
825
  # @!attribute [rw] desiredv_cpus
788
826
  # The desired number of Amazon EC2 vCPUS in the compute environment.
827
+ # Batch modifies this value between the minimum and maximum values
828
+ # based on job queue demand.
789
829
  #
790
830
  # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
791
831
  # resources, and shouldn't be specified.
@@ -795,26 +835,376 @@ module Aws::Batch
795
835
  #
796
836
  # @!attribute [rw] subnets
797
837
  # The VPC subnets where the compute resources are launched. Fargate
798
- # compute resources can contain up to 16 subnets. Providing an empty
799
- # list will be handled as if this parameter wasn't specified and no
800
- # change is made. This can't be specified for EC2 compute resources.
801
- # For more information, see [VPCs and Subnets][1] in the *Amazon VPC
802
- # User Guide*.
838
+ # compute resources can contain up to 16 subnets. For Fargate compute
839
+ # resources, providing an empty list will be handled as if this
840
+ # parameter wasn't specified and no change is made. For EC2 compute
841
+ # resources, providing an empty list removes the VPC subnets from the
842
+ # compute resource. For more information, see [VPCs and subnets][1] in
843
+ # the *Amazon VPC User Guide*.
844
+ #
845
+ # When updating a compute environment, changing the VPC subnets
846
+ # requires an infrastructure update of the compute environment. For
847
+ # more information, see [Updating compute environments][2] in the
848
+ # *Batch User Guide*.
803
849
  #
804
850
  #
805
851
  #
806
852
  # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html
853
+ # [2]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
807
854
  # @return [Array<String>]
808
855
  #
809
856
  # @!attribute [rw] security_group_ids
810
857
  # The Amazon EC2 security groups associated with instances launched in
811
858
  # the compute environment. This parameter is required for Fargate
812
- # compute resources, where it can contain up to 5 security groups.
813
- # This can't be specified for EC2 compute resources. Providing an
814
- # empty list is handled as if this parameter wasn't specified and no
815
- # change is made.
859
+ # compute resources, where it can contain up to 5 security groups. For
860
+ # Fargate compute resources, providing an empty list is handled as if
861
+ # this parameter wasn't specified and no change is made. For EC2
862
+ # compute resources, providing an empty list removes the security
863
+ # groups from the compute resource.
864
+ #
865
+ # When updating a compute environment, changing the EC2 security
866
+ # groups requires an infrastructure update of the compute environment.
867
+ # For more information, see [Updating compute environments][1] in the
868
+ # *Batch User Guide*.
869
+ #
870
+ #
871
+ #
872
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
873
+ # @return [Array<String>]
874
+ #
875
+ # @!attribute [rw] allocation_strategy
876
+ # The allocation strategy to use for the compute resource if not
877
+ # enough instances of the best fitting instance type can be allocated.
878
+ # This might be because of availability of the instance type in the
879
+ # Region or [Amazon EC2 service limits][1]. For more information, see
880
+ # [Allocation strategies][2] in the *Batch User Guide*.
881
+ #
882
+ # When updating a compute environment, changing the allocation
883
+ # strategy requires an infrastructure update of the compute
884
+ # environment. For more information, see [Updating compute
885
+ # environments][3] in the *Batch User Guide*. `BEST_FIT` isn't
886
+ # supported when updating a compute environment.
887
+ #
888
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
889
+ # resources, and shouldn't be specified.
890
+ #
891
+ # </note>
892
+ #
893
+ # BEST\_FIT\_PROGRESSIVE
894
+ #
895
+ # : Batch will select additional instance types that are large enough
896
+ # to meet the requirements of the jobs in the queue, with a
897
+ # preference for instance types with a lower cost per unit vCPU. If
898
+ # additional instances of the previously selected instance types
899
+ # aren't available, Batch will select new instance types.
900
+ #
901
+ # SPOT\_CAPACITY\_OPTIMIZED
902
+ #
903
+ # : Batch will select one or more instance types that are large enough
904
+ # to meet the requirements of the jobs in the queue, with a
905
+ # preference for instance types that are less likely to be
906
+ # interrupted. This allocation strategy is only available for Spot
907
+ # Instance compute resources.
908
+ #
909
+ # With both `BEST_FIT_PROGRESSIVE` and `SPOT_CAPACITY_OPTIMIZED`
910
+ # strategies, Batch might need to go above `maxvCpus` to meet your
911
+ # capacity requirements. In this event, Batch never exceeds `maxvCpus`
912
+ # by more than a single instance.
913
+ #
914
+ #
915
+ #
916
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html
917
+ # [2]: https://docs.aws.amazon.com/batch/latest/userguide/allocation-strategies.html
918
+ # [3]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
919
+ # @return [String]
920
+ #
921
+ # @!attribute [rw] instance_types
922
+ # The instances types that can be launched. You can specify instance
923
+ # families to launch any instance type within those families (for
924
+ # example, `c5` or `p3`), or you can specify specific sizes within a
925
+ # family (such as `c5.8xlarge`). You can also choose `optimal` to
926
+ # select instance types (from the C4, M4, and R4 instance families)
927
+ # that match the demand of your job queues.
928
+ #
929
+ # When updating a compute environment, changing this setting requires
930
+ # an infrastructure update of the compute environment. For more
931
+ # information, see [Updating compute environments][1] in the *Batch
932
+ # User Guide*.
933
+ #
934
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
935
+ # resources, and shouldn't be specified.
936
+ #
937
+ # </note>
938
+ #
939
+ # <note markdown="1"> When you create a compute environment, the instance types that you
940
+ # select for the compute environment must share the same architecture.
941
+ # For example, you can't mix x86 and ARM instances in the same
942
+ # compute environment.
943
+ #
944
+ # </note>
945
+ #
946
+ # <note markdown="1"> Currently, `optimal` uses instance types from the C4, M4, and R4
947
+ # instance families. In Regions that don't have instance types from
948
+ # those instance families, instance types from the C5, M5. and R5
949
+ # instance families are used.
950
+ #
951
+ # </note>
952
+ #
953
+ #
954
+ #
955
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
816
956
  # @return [Array<String>]
817
957
  #
958
+ # @!attribute [rw] ec2_key_pair
959
+ # The Amazon EC2 key pair that's used for instances launched in the
960
+ # compute environment. You can use this key pair to log in to your
961
+ # instances with SSH. To remove the Amazon EC2 key pair, set this
962
+ # value to an empty string.
963
+ #
964
+ # When updating a compute environment, changing the EC2 key pair
965
+ # requires an infrastructure update of the compute environment. For
966
+ # more information, see [Updating compute environments][1] in the
967
+ # *Batch User Guide*.
968
+ #
969
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
970
+ # resources, and shouldn't be specified.
971
+ #
972
+ # </note>
973
+ #
974
+ #
975
+ #
976
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
977
+ # @return [String]
978
+ #
979
+ # @!attribute [rw] instance_role
980
+ # The Amazon ECS instance profile applied to Amazon EC2 instances in a
981
+ # compute environment. You can specify the short name or full Amazon
982
+ # Resource Name (ARN) of an instance profile. For example, `
983
+ # ecsInstanceRole ` or
984
+ # `arn:aws:iam::<aws_account_id>:instance-profile/ecsInstanceRole `.
985
+ # For more information, see [Amazon ECS instance role][1] in the
986
+ # *Batch User Guide*.
987
+ #
988
+ # When updating a compute environment, changing this setting requires
989
+ # an infrastructure update of the compute environment. For more
990
+ # information, see [Updating compute environments][2] in the *Batch
991
+ # User Guide*.
992
+ #
993
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
994
+ # resources, and shouldn't be specified.
995
+ #
996
+ # </note>
997
+ #
998
+ #
999
+ #
1000
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/instance_IAM_role.html
1001
+ # [2]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1002
+ # @return [String]
1003
+ #
1004
+ # @!attribute [rw] tags
1005
+ # Key-value pair tags to be applied to EC2 resources that are launched
1006
+ # in the compute environment. For Batch, these take the form of
1007
+ # "String1": "String2", where String1 is the tag key and String2
1008
+ # is the tag value−for example, `\{ "Name": "Batch Instance -
1009
+ # C4OnDemand" \}`. This is helpful for recognizing your Batch
1010
+ # instances in the Amazon EC2 console. These tags aren't seen when
1011
+ # using the Batch `ListTagsForResource` API operation.
1012
+ #
1013
+ # When updating a compute environment, changing this setting requires
1014
+ # an infrastructure update of the compute environment. For more
1015
+ # information, see [Updating compute environments][1] in the *Batch
1016
+ # User Guide*.
1017
+ #
1018
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
1019
+ # resources, and shouldn't be specified.
1020
+ #
1021
+ # </note>
1022
+ #
1023
+ #
1024
+ #
1025
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1026
+ # @return [Hash<String,String>]
1027
+ #
1028
+ # @!attribute [rw] placement_group
1029
+ # The Amazon EC2 placement group to associate with your compute
1030
+ # resources. If you intend to submit multi-node parallel jobs to your
1031
+ # compute environment, you should consider creating a cluster
1032
+ # placement group and associate it with your compute resources. This
1033
+ # keeps your multi-node parallel job on a logical grouping of
1034
+ # instances within a single Availability Zone with high network flow
1035
+ # potential. For more information, see [Placement groups][1] in the
1036
+ # *Amazon EC2 User Guide for Linux Instances*.
1037
+ #
1038
+ # When updating a compute environment, changing the placement group
1039
+ # requires an infrastructure update of the compute environment. For
1040
+ # more information, see [Updating compute environments][2] in the
1041
+ # *Batch User Guide*.
1042
+ #
1043
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
1044
+ # resources, and shouldn't be specified.
1045
+ #
1046
+ # </note>
1047
+ #
1048
+ #
1049
+ #
1050
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html
1051
+ # [2]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1052
+ # @return [String]
1053
+ #
1054
+ # @!attribute [rw] bid_percentage
1055
+ # The maximum percentage that a Spot Instance price can be when
1056
+ # compared with the On-Demand price for that instance type before
1057
+ # instances are launched. For example, if your maximum percentage is
1058
+ # 20%, then the Spot price must be less than 20% of the current
1059
+ # On-Demand price for that Amazon EC2 instance. You always pay the
1060
+ # lowest (market) price and never more than your maximum percentage.
1061
+ #
1062
+ # When updating a compute environment, changing the bid percentage
1063
+ # requires an infrastructure update of the compute environment. For
1064
+ # more information, see [Updating compute environments][1] in the
1065
+ # *Batch User Guide*.
1066
+ #
1067
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
1068
+ # resources, and shouldn't be specified.
1069
+ #
1070
+ # </note>
1071
+ #
1072
+ #
1073
+ #
1074
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1075
+ # @return [Integer]
1076
+ #
1077
+ # @!attribute [rw] launch_template
1078
+ # The updated launch template to use for your compute resources. You
1079
+ # must specify either the launch template ID or launch template name
1080
+ # in the request, but not both. For more information, see [Launch
1081
+ # template support][1] in the *Batch User Guide*. To remove the custom
1082
+ # launch template and use the default launch template, set
1083
+ # `launchTemplateId` or `launchTemplateName` member of the launch
1084
+ # template specification to an empty string. Removing the launch
1085
+ # template from a compute environment will not remove the AMI
1086
+ # specified in the launch template. In order to update the AMI
1087
+ # specified in a launch template, the `updateToLatestImageVersion`
1088
+ # parameter must be set to `true`.
1089
+ #
1090
+ # When updating a compute environment, changing the launch template
1091
+ # requires an infrastructure update of the compute environment. For
1092
+ # more information, see [Updating compute environments][2] in the
1093
+ # *Batch User Guide*.
1094
+ #
1095
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
1096
+ # resources, and shouldn't be specified.
1097
+ #
1098
+ # </note>
1099
+ #
1100
+ #
1101
+ #
1102
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html
1103
+ # [2]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1104
+ # @return [Types::LaunchTemplateSpecification]
1105
+ #
1106
+ # @!attribute [rw] ec2_configuration
1107
+ # Provides information used to select Amazon Machine Images (AMIs) for
1108
+ # EC2 instances in the compute environment. If `Ec2Configuration`
1109
+ # isn't specified, the default is `ECS_AL2`.
1110
+ #
1111
+ # When updating a compute environment, changing this setting requires
1112
+ # an infrastructure update of the compute environment. For more
1113
+ # information, see [Updating compute environments][1] in the *Batch
1114
+ # User Guide*. To remove the EC2 configuration and any custom AMI ID
1115
+ # specified in `imageIdOverride`, set this value to an empty string.
1116
+ #
1117
+ # One or two values can be provided.
1118
+ #
1119
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
1120
+ # resources, and shouldn't be specified.
1121
+ #
1122
+ # </note>
1123
+ #
1124
+ #
1125
+ #
1126
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1127
+ # @return [Array<Types::Ec2Configuration>]
1128
+ #
1129
+ # @!attribute [rw] update_to_latest_image_version
1130
+ # Specifies whether the AMI ID is updated to the latest one that's
1131
+ # supported by Batch when the compute environment has an
1132
+ # infrastructure update. The default value is `false`.
1133
+ #
1134
+ # <note markdown="1"> If an AMI ID is specified in the `imageId` or `imageIdOverride`
1135
+ # parameters or by the launch template specified in the
1136
+ # `launchTemplate` parameter, this parameter is ignored. For more
1137
+ # information on updating AMI IDs during an infrastructure update, see
1138
+ # [Updating the AMI ID][1] in the *Batch User Guide*.
1139
+ #
1140
+ # </note>
1141
+ #
1142
+ # When updating a compute environment, changing this setting requires
1143
+ # an infrastructure update of the compute environment. For more
1144
+ # information, see [Updating compute environments][2] in the *Batch
1145
+ # User Guide*.
1146
+ #
1147
+ #
1148
+ #
1149
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html#updating-compute-environments-ami
1150
+ # [2]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1151
+ # @return [Boolean]
1152
+ #
1153
+ # @!attribute [rw] type
1154
+ # The type of compute environment: `EC2`, `SPOT`, `FARGATE`, or
1155
+ # `FARGATE_SPOT`. For more information, see [Compute environments][1]
1156
+ # in the *Batch User Guide*.
1157
+ #
1158
+ # If you choose `SPOT`, you must also specify an Amazon EC2 Spot Fleet
1159
+ # role with the `spotIamFleetRole` parameter. For more information,
1160
+ # see [Amazon EC2 spot fleet role][2] in the *Batch User Guide*.
1161
+ #
1162
+ # When updating a compute environment, changing the type of a compute
1163
+ # environment requires an infrastructure update of the compute
1164
+ # environment. For more information, see [Updating compute
1165
+ # environments][3] in the *Batch User Guide*.
1166
+ #
1167
+ #
1168
+ #
1169
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html
1170
+ # [2]: https://docs.aws.amazon.com/batch/latest/userguide/spot_fleet_IAM_role.html
1171
+ # [3]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1172
+ # @return [String]
1173
+ #
1174
+ # @!attribute [rw] image_id
1175
+ # The Amazon Machine Image (AMI) ID used for instances launched in the
1176
+ # compute environment. This parameter is overridden by the
1177
+ # `imageIdOverride` member of the `Ec2Configuration` structure. To
1178
+ # remove the custom AMI ID and use the default AMI ID, set this value
1179
+ # to an empty string.
1180
+ #
1181
+ # When updating a compute environment, changing the AMI ID requires an
1182
+ # infrastructure update of the compute environment. For more
1183
+ # information, see [Updating compute environments][1] in the *Batch
1184
+ # User Guide*.
1185
+ #
1186
+ # <note markdown="1"> This parameter isn't applicable to jobs that are running on Fargate
1187
+ # resources, and shouldn't be specified.
1188
+ #
1189
+ # </note>
1190
+ #
1191
+ # <note markdown="1"> The AMI that you choose for a compute environment must match the
1192
+ # architecture of the instance types that you intend to use for that
1193
+ # compute environment. For example, if your compute environment uses
1194
+ # A1 instance types, the compute resource AMI that you choose must
1195
+ # support ARM instances. Amazon ECS vends both x86 and ARM versions of
1196
+ # the Amazon ECS-optimized Amazon Linux 2 AMI. For more information,
1197
+ # see [Amazon ECS-optimized Amazon Linux 2 AMI][2] in the *Amazon
1198
+ # Elastic Container Service Developer Guide*.
1199
+ #
1200
+ # </note>
1201
+ #
1202
+ #
1203
+ #
1204
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
1205
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#ecs-optimized-ami-linux-variants.html
1206
+ # @return [String]
1207
+ #
818
1208
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/ComputeResourceUpdate AWS API Documentation
819
1209
  #
820
1210
  class ComputeResourceUpdate < Struct.new(
@@ -822,7 +1212,19 @@ module Aws::Batch
822
1212
  :maxv_cpus,
823
1213
  :desiredv_cpus,
824
1214
  :subnets,
825
- :security_group_ids)
1215
+ :security_group_ids,
1216
+ :allocation_strategy,
1217
+ :instance_types,
1218
+ :ec2_key_pair,
1219
+ :instance_role,
1220
+ :tags,
1221
+ :placement_group,
1222
+ :bid_percentage,
1223
+ :launch_template,
1224
+ :ec2_configuration,
1225
+ :update_to_latest_image_version,
1226
+ :type,
1227
+ :image_id)
826
1228
  SENSITIVE = []
827
1229
  include Aws::Structure
828
1230
  end
@@ -1040,8 +1442,8 @@ module Aws::Batch
1040
1442
  # register the logging drivers available on that instance with the
1041
1443
  # `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
1042
1444
  # containers placed on that instance can use these log configuration
1043
- # options. For more information, see [Amazon ECS Container Agent
1044
- # Configuration][5] in the *Amazon Elastic Container Service Developer
1445
+ # options. For more information, see [Amazon ECS container agent
1446
+ # configuration][5] in the *Amazon Elastic Container Service Developer
1045
1447
  # Guide*.
1046
1448
  #
1047
1449
  # </note>
@@ -1414,7 +1816,7 @@ module Aws::Batch
1414
1816
  # @!attribute [rw] job_role_arn
1415
1817
  # The Amazon Resource Name (ARN) of the IAM role that the container
1416
1818
  # can assume for Amazon Web Services permissions. For more
1417
- # information, see [IAM Roles for Tasks][1] in the *Amazon Elastic
1819
+ # information, see [IAM roles for tasks][1] in the *Amazon Elastic
1418
1820
  # Container Service Developer Guide*.
1419
1821
  #
1420
1822
  #
@@ -1581,8 +1983,8 @@ module Aws::Batch
1581
1983
  # register the logging drivers available on that instance with the
1582
1984
  # `ECS_AVAILABLE_LOGGING_DRIVERS` environment variable before
1583
1985
  # containers placed on that instance can use these log configuration
1584
- # options. For more information, see [Amazon ECS Container Agent
1585
- # Configuration][5] in the *Amazon Elastic Container Service Developer
1986
+ # options. For more information, see [Amazon ECS container agent
1987
+ # configuration][5] in the *Amazon Elastic Container Service Developer
1586
1988
  # Guide*.
1587
1989
  #
1588
1990
  # </note>
@@ -1913,13 +2315,13 @@ module Aws::Batch
1913
2315
  # @!attribute [rw] compute_environment_order
1914
2316
  # The set of compute environments mapped to a job queue and their
1915
2317
  # order relative to each other. The job scheduler uses this parameter
1916
- # to determine which compute environment should run a specific job.
1917
- # Compute environments must be in the `VALID` state before you can
1918
- # associate them with a job queue. You can associate up to three
1919
- # compute environments with a job queue. All of the compute
1920
- # environments must be either EC2 (`EC2` or `SPOT`) or Fargate
1921
- # (`FARGATE` or `FARGATE_SPOT`); EC2 and Fargate compute environments
1922
- # can't be mixed.
2318
+ # to determine which compute environment runs a specific job. Compute
2319
+ # environments must be in the `VALID` state before you can associate
2320
+ # them with a job queue. You can associate up to three compute
2321
+ # environments with a job queue. All of the compute environments must
2322
+ # be either EC2 (`EC2` or `SPOT`) or Fargate (`FARGATE` or
2323
+ # `FARGATE_SPOT`); EC2 and Fargate compute environments can't be
2324
+ # mixed.
1923
2325
  #
1924
2326
  # <note markdown="1"> All compute environments that are associated with a job queue must
1925
2327
  # share the same architecture. Batch doesn't support mixing compute
@@ -1969,6 +2371,8 @@ module Aws::Batch
1969
2371
  include Aws::Structure
1970
2372
  end
1971
2373
 
2374
+ # Contains the parameters for `CreateSchedulingPolicy`.
2375
+ #
1972
2376
  # @note When making an API call, you may pass CreateSchedulingPolicyRequest
1973
2377
  # data as a hash:
1974
2378
  #
@@ -2097,6 +2501,8 @@ module Aws::Batch
2097
2501
  #
2098
2502
  class DeleteJobQueueResponse < Aws::EmptyStructure; end
2099
2503
 
2504
+ # Contains the parameters for `DeleteSchedulingPolicy`.
2505
+ #
2100
2506
  # @note When making an API call, you may pass DeleteSchedulingPolicyRequest
2101
2507
  # data as a hash:
2102
2508
  #
@@ -2414,6 +2820,8 @@ module Aws::Batch
2414
2820
  include Aws::Structure
2415
2821
  end
2416
2822
 
2823
+ # Contains the parameters for `DescribeSchedulingPolicies`.
2824
+ #
2417
2825
  # @note When making an API call, you may pass DescribeSchedulingPoliciesRequest
2418
2826
  # data as a hash:
2419
2827
  #
@@ -2505,7 +2913,7 @@ module Aws::Batch
2505
2913
  # will enforce the path set on the EFS access point. If an access
2506
2914
  # point is used, transit encryption must be enabled in the
2507
2915
  # `EFSVolumeConfiguration`. For more information, see [Working with
2508
- # Amazon EFS Access Points][1] in the *Amazon Elastic File System User
2916
+ # Amazon EFS access points][1] in the *Amazon Elastic File System User
2509
2917
  # Guide*.
2510
2918
  #
2511
2919
  #
@@ -2518,7 +2926,7 @@ module Aws::Batch
2518
2926
  # definition when mounting the Amazon EFS file system. If enabled,
2519
2927
  # transit encryption must be enabled in the `EFSVolumeConfiguration`.
2520
2928
  # If this parameter is omitted, the default value of `DISABLED` is
2521
- # used. For more information, see [Using Amazon EFS Access Points][1]
2929
+ # used. For more information, see [Using Amazon EFS access points][1]
2522
2930
  # in the *Batch User Guide*. EFS IAM authorization requires that
2523
2931
  # `TransitEncryption` be `ENABLED` and that a `JobRoleArn` is
2524
2932
  # specified.
@@ -2593,7 +3001,7 @@ module Aws::Batch
2593
3001
  # host and the Amazon EFS server. If you don't specify a transit
2594
3002
  # encryption port, it uses the port selection strategy that the Amazon
2595
3003
  # EFS mount helper uses. The value must be between 0 and 65,535. For
2596
- # more information, see [EFS Mount Helper][1] in the *Amazon Elastic
3004
+ # more information, see [EFS mount helper][1] in the *Amazon Elastic
2597
3005
  # File System User Guide*.
2598
3006
  #
2599
3007
  #
@@ -2642,7 +3050,11 @@ module Aws::Batch
2642
3050
  # @!attribute [rw] image_type
2643
3051
  # The image type to match with the instance type to select an AMI. If
2644
3052
  # the `imageIdOverride` parameter isn't specified, then a recent
2645
- # [Amazon ECS-optimized Amazon Linux 2 AMI][1] (`ECS_AL2`) is used.
3053
+ # [Amazon ECS-optimized Amazon Linux 2 AMI][1] (`ECS_AL2`) is used. If
3054
+ # a new image type is specified in an update, but neither an `imageId`
3055
+ # nor a `imageIdOverride` parameter is specified, then the latest
3056
+ # Amazon ECS optimized AMI for that image type that's supported by
3057
+ # Batch is used.
2646
3058
  #
2647
3059
  # ECS\_AL2
2648
3060
  #
@@ -2671,6 +3083,21 @@ module Aws::Batch
2671
3083
  # The AMI ID used for instances launched in the compute environment
2672
3084
  # that match the image type. This setting overrides the `imageId` set
2673
3085
  # in the `computeResource` object.
3086
+ #
3087
+ # <note markdown="1"> The AMI that you choose for a compute environment must match the
3088
+ # architecture of the instance types that you intend to use for that
3089
+ # compute environment. For example, if your compute environment uses
3090
+ # A1 instance types, the compute resource AMI that you choose must
3091
+ # support ARM instances. Amazon ECS vends both x86 and ARM versions of
3092
+ # the Amazon ECS-optimized Amazon Linux 2 AMI. For more information,
3093
+ # see [Amazon ECS-optimized Amazon Linux 2 AMI][1] in the *Amazon
3094
+ # Elastic Container Service Developer Guide*.
3095
+ #
3096
+ # </note>
3097
+ #
3098
+ #
3099
+ #
3100
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#ecs-optimized-ami-linux-variants.html
2674
3101
  # @return [String]
2675
3102
  #
2676
3103
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/Ec2Configuration AWS API Documentation
@@ -2916,8 +3343,8 @@ module Aws::Batch
2916
3343
  # set in the job definition. Parameters are specified as a key-value
2917
3344
  # pair mapping. Parameters in a `SubmitJob` request override any
2918
3345
  # corresponding parameter defaults from the job definition. For more
2919
- # information about specifying parameters, see [Job Definition
2920
- # Parameters][1] in the *Batch User Guide*.
3346
+ # information about specifying parameters, see [Job definition
3347
+ # parameters][1] in the *Batch User Guide*.
2921
3348
  #
2922
3349
  #
2923
3350
  #
@@ -3039,8 +3466,8 @@ module Aws::Batch
3039
3466
  # @!attribute [rw] status
3040
3467
  # The current status for the job.
3041
3468
  #
3042
- # <note markdown="1"> If your jobs don't progress to `STARTING`, see [Jobs Stuck in
3043
- # RUNNABLE Status][1] in the troubleshooting section of the *Batch
3469
+ # <note markdown="1"> If your jobs don't progress to `STARTING`, see [Jobs stuck in
3470
+ # RUNNABLE status][1] in the troubleshooting section of the *Batch
3044
3471
  # User Guide*.
3045
3472
  #
3046
3473
  # </note>
@@ -3100,7 +3527,8 @@ module Aws::Batch
3100
3527
  # @return [Array<Types::JobDependency>]
3101
3528
  #
3102
3529
  # @!attribute [rw] job_definition
3103
- # The job definition that's used by this job.
3530
+ # The Amazon Resource Name (ARN) of the job definition that's used by
3531
+ # this job.
3104
3532
  # @return [String]
3105
3533
  #
3106
3534
  # @!attribute [rw] parameters
@@ -3466,15 +3894,24 @@ module Aws::Batch
3466
3894
  # is used. If the value is `$Default`, the default version of the
3467
3895
  # launch template is used.
3468
3896
  #
3469
- # After the compute environment is created, the launch template
3470
- # version that's used isn't changed, even if the `$Default` or
3471
- # `$Latest` version for the launch template is updated. To use a new
3472
- # launch template version, create a new compute environment, add the
3473
- # new compute environment to the existing job queue, remove the old
3474
- # compute environment from the job queue, and delete the old compute
3475
- # environment.
3897
+ # If the AMI ID that's used in a compute environment is from the
3898
+ # launch template, the AMI isn't changed when the compute environment
3899
+ # is updated. It's only changed if the `updateToLatestImageVersion`
3900
+ # parameter for the compute environment is set to `true`. During an
3901
+ # infrastructure update, if either `$Latest` or `$Default` is
3902
+ # specified, Batch re-evaluates the launch template version, and it
3903
+ # might use a different version of the launch template. This is the
3904
+ # case even if the launch template isn't specified in the update.
3905
+ # When updating a compute environment, changing the launch template
3906
+ # requires an infrastructure update of the compute environment. For
3907
+ # more information, see [Updating compute environments][1] in the
3908
+ # *Batch User Guide*.
3476
3909
  #
3477
3910
  # Default: `$Default`.
3911
+ #
3912
+ #
3913
+ #
3914
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
3478
3915
  # @return [String]
3479
3916
  #
3480
3917
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/LaunchTemplateSpecification AWS API Documentation
@@ -3619,7 +4056,7 @@ module Aws::Batch
3619
4056
  #
3620
4057
  # <note markdown="1"> The Amazon ECS optimized AMIs don't have swap enabled by default.
3621
4058
  # You must enable swap on the instance to use this feature. For more
3622
- # information, see [Instance Store Swap Volumes][2] in the *Amazon
4059
+ # information, see [Instance store swap volumes][2] in the *Amazon
3623
4060
  # EC2 User Guide for Linux Instances* or [How do I allocate memory
3624
4061
  # to work as swap space in an Amazon EC2 instance by using a swap
3625
4062
  # file?][3]
@@ -3811,6 +4248,8 @@ module Aws::Batch
3811
4248
  include Aws::Structure
3812
4249
  end
3813
4250
 
4251
+ # Contains the parameters for `ListSchedulingPolicies`.
4252
+ #
3814
4253
  # @note When making an API call, you may pass ListSchedulingPoliciesRequest
3815
4254
  # data as a hash:
3816
4255
  #
@@ -3876,6 +4315,8 @@ module Aws::Batch
3876
4315
  include Aws::Structure
3877
4316
  end
3878
4317
 
4318
+ # Contains the parameters for `ListTagsForResource`.
4319
+ #
3879
4320
  # @note When making an API call, you may pass ListTagsForResourceRequest
3880
4321
  # data as a hash:
3881
4322
  #
@@ -3946,7 +4387,7 @@ module Aws::Batch
3946
4387
  # awslogs
3947
4388
  #
3948
4389
  # : Specifies the Amazon CloudWatch Logs logging driver. For more
3949
- # information, see [Using the awslogs Log Driver][1] in the *Batch
4390
+ # information, see [Using the awslogs log driver][1] in the *Batch
3950
4391
  # User Guide* and [Amazon CloudWatch Logs logging driver][2] in the
3951
4392
  # Docker documentation.
3952
4393
  #
@@ -4025,7 +4466,7 @@ module Aws::Batch
4025
4466
  #
4026
4467
  # @!attribute [rw] secret_options
4027
4468
  # The secrets to pass to the log configuration. For more information,
4028
- # see [Specifying Sensitive Data][1] in the *Batch User Guide*.
4469
+ # see [Specifying sensitive data][1] in the *Batch User Guide*.
4029
4470
  #
4030
4471
  #
4031
4472
  #
@@ -5023,7 +5464,7 @@ module Aws::Batch
5023
5464
  #
5024
5465
  # <note markdown="1"> If you're trying to maximize your resource utilization by
5025
5466
  # providing your jobs as much memory as possible for a particular
5026
- # instance type, see [Memory Management][4] in the *Batch User
5467
+ # instance type, see [Memory management][4] in the *Batch User
5027
5468
  # Guide*.
5028
5469
  #
5029
5470
  # </note>
@@ -5194,7 +5635,7 @@ module Aws::Batch
5194
5635
  # The tags that you apply to the scheduling policy to categorize and
5195
5636
  # organize your resources. Each tag consists of a key and an optional
5196
5637
  # value. For more information, see [Tagging Amazon Web Services
5197
- # Resources][1] in *Amazon Web Services General Reference*.
5638
+ # resources][1] in *Amazon Web Services General Reference*.
5198
5639
  #
5199
5640
  #
5200
5641
  #
@@ -5491,10 +5932,10 @@ module Aws::Batch
5491
5932
  # @!attribute [rw] container_overrides
5492
5933
  # A list of container overrides in the JSON format that specify the
5493
5934
  # name of a container in the specified job definition and the
5494
- # overrides it should receive. You can override the default command
5495
- # for a container, which is specified in the job definition or the
5496
- # Docker image, with a `command` override. You can also override
5497
- # existing environment variables on a container or add new environment
5935
+ # overrides it receives. You can override the default command for a
5936
+ # container, which is specified in the job definition or the Docker
5937
+ # image, with a `command` override. You can also override existing
5938
+ # environment variables on a container or add new environment
5498
5939
  # variables to it with an `environment` override.
5499
5940
  # @return [Types::ContainerOverrides]
5500
5941
  #
@@ -5595,6 +6036,8 @@ module Aws::Batch
5595
6036
  include Aws::Structure
5596
6037
  end
5597
6038
 
6039
+ # Contains the parameters for `TagResource`.
6040
+ #
5598
6041
  # @note When making an API call, you may pass TagResourceRequest
5599
6042
  # data as a hash:
5600
6043
  #
@@ -5759,6 +6202,8 @@ module Aws::Batch
5759
6202
  include Aws::Structure
5760
6203
  end
5761
6204
 
6205
+ # Contains the parameters for `UntagResource`.
6206
+ #
5762
6207
  # @note When making an API call, you may pass UntagResourceRequest
5763
6208
  # data as a hash:
5764
6209
  #
@@ -5807,8 +6252,35 @@ module Aws::Batch
5807
6252
  # desiredv_cpus: 1,
5808
6253
  # subnets: ["String"],
5809
6254
  # security_group_ids: ["String"],
6255
+ # allocation_strategy: "BEST_FIT_PROGRESSIVE", # accepts BEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED
6256
+ # instance_types: ["String"],
6257
+ # ec2_key_pair: "String",
6258
+ # instance_role: "String",
6259
+ # tags: {
6260
+ # "String" => "String",
6261
+ # },
6262
+ # placement_group: "String",
6263
+ # bid_percentage: 1,
6264
+ # launch_template: {
6265
+ # launch_template_id: "String",
6266
+ # launch_template_name: "String",
6267
+ # version: "String",
6268
+ # },
6269
+ # ec2_configuration: [
6270
+ # {
6271
+ # image_type: "ImageType", # required
6272
+ # image_id_override: "ImageIdOverride",
6273
+ # },
6274
+ # ],
6275
+ # update_to_latest_image_version: false,
6276
+ # type: "EC2", # accepts EC2, SPOT, FARGATE, FARGATE_SPOT
6277
+ # image_id: "String",
5810
6278
  # },
5811
6279
  # service_role: "String",
6280
+ # update_policy: {
6281
+ # terminate_jobs_on_update: false,
6282
+ # job_execution_timeout_minutes: 1,
6283
+ # },
5812
6284
  # }
5813
6285
  #
5814
6286
  # @!attribute [rw] compute_environment
@@ -5836,11 +6308,11 @@ module Aws::Batch
5836
6308
  #
5837
6309
  # @!attribute [rw] unmanagedv_cpus
5838
6310
  # The maximum number of vCPUs expected to be used for an unmanaged
5839
- # compute environment. This parameter should not be specified for a
5840
- # managed compute environment. This parameter is only used for fair
5841
- # share scheduling to reserve vCPU capacity for new share identifiers.
5842
- # If this parameter is not provided for a fair share job queue, no
5843
- # vCPU capacity will be reserved.
6311
+ # compute environment. Do not specify this parameter for a managed
6312
+ # compute environment. This parameter is only used for fair share
6313
+ # scheduling to reserve vCPU capacity for new share identifiers. If
6314
+ # this parameter is not provided for a fair share job queue, no vCPU
6315
+ # capacity will be reserved.
5844
6316
  # @return [Integer]
5845
6317
  #
5846
6318
  # @!attribute [rw] compute_resources
@@ -5862,11 +6334,15 @@ module Aws::Batch
5862
6334
  # If the compute environment has a service-linked role, it can't be
5863
6335
  # changed to use a regular IAM role. Likewise, if the compute
5864
6336
  # environment has a regular IAM role, it can't be changed to use a
5865
- # service-linked role.
6337
+ # service-linked role. To update the parameters for the compute
6338
+ # environment that require an infrastructure update to change, the
6339
+ # **AWSServiceRoleForBatch** service-linked role must be used. For
6340
+ # more information, see [Updating compute environments][2] in the
6341
+ # *Batch User Guide*.
5866
6342
  #
5867
6343
  # If your specified role has a path other than `/`, then you must
5868
- # either specify the full role ARN (this is recommended) or prefix the
5869
- # role name with the path.
6344
+ # either specify the full role ARN (recommended) or prefix the role
6345
+ # name with the path.
5870
6346
  #
5871
6347
  # <note markdown="1"> Depending on how you created your Batch service role, its ARN might
5872
6348
  # contain the `service-role` path prefix. When you only specify the
@@ -5880,8 +6356,19 @@ module Aws::Batch
5880
6356
  #
5881
6357
  #
5882
6358
  # [1]: https://docs.aws.amazon.com/batch/latest/userguide/service_IAM_role.html
6359
+ # [2]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
5883
6360
  # @return [String]
5884
6361
  #
6362
+ # @!attribute [rw] update_policy
6363
+ # Specifies the updated infrastructure update policy for the compute
6364
+ # environment. For more information about infrastructure updates, see
6365
+ # [Updating compute environments][1] in the *Batch User Guide*.
6366
+ #
6367
+ #
6368
+ #
6369
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html
6370
+ # @return [Types::UpdatePolicy]
6371
+ #
5885
6372
  # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdateComputeEnvironmentRequest AWS API Documentation
5886
6373
  #
5887
6374
  class UpdateComputeEnvironmentRequest < Struct.new(
@@ -5889,7 +6376,8 @@ module Aws::Batch
5889
6376
  :state,
5890
6377
  :unmanagedv_cpus,
5891
6378
  :compute_resources,
5892
- :service_role)
6379
+ :service_role,
6380
+ :update_policy)
5893
6381
  SENSITIVE = []
5894
6382
  include Aws::Structure
5895
6383
  end
@@ -5955,7 +6443,7 @@ module Aws::Batch
5955
6443
  # The priority of the job queue. Job queues with a higher priority (or
5956
6444
  # a higher integer value for the `priority` parameter) are evaluated
5957
6445
  # first when associated with the same compute environment. Priority is
5958
- # determined in descending order, for example, a job queue with a
6446
+ # determined in descending order. For example, a job queue with a
5959
6447
  # priority value of `10` is given scheduling preference over a job
5960
6448
  # queue with a priority value of `1`. All of the compute environments
5961
6449
  # must be either EC2 (`EC2` or `SPOT`) or Fargate (`FARGATE` or
@@ -5967,9 +6455,9 @@ module Aws::Batch
5967
6455
  # Details the set of compute environments mapped to a job queue and
5968
6456
  # their order relative to each other. This is one of the parameters
5969
6457
  # used by the job scheduler to determine which compute environment
5970
- # should run a given job. Compute environments must be in the `VALID`
5971
- # state before you can associate them with a job queue. All of the
5972
- # compute environments must be either EC2 (`EC2` or `SPOT`) or Fargate
6458
+ # runs a given job. Compute environments must be in the `VALID` state
6459
+ # before you can associate them with a job queue. All of the compute
6460
+ # environments must be either EC2 (`EC2` or `SPOT`) or Fargate
5973
6461
  # (`FARGATE` or `FARGATE_SPOT`). EC2 and Fargate compute environments
5974
6462
  # can't be mixed.
5975
6463
  #
@@ -6009,6 +6497,44 @@ module Aws::Batch
6009
6497
  include Aws::Structure
6010
6498
  end
6011
6499
 
6500
+ # Specifies the infrastructure update policy for the compute
6501
+ # environment. For more information about infrastructure updates, see
6502
+ # [Infrastructure updates][1] in the *Batch User Guide*.
6503
+ #
6504
+ #
6505
+ #
6506
+ # [1]: https://docs.aws.amazon.com/batch/latest/userguide/infrastructure-updates.html
6507
+ #
6508
+ # @note When making an API call, you may pass UpdatePolicy
6509
+ # data as a hash:
6510
+ #
6511
+ # {
6512
+ # terminate_jobs_on_update: false,
6513
+ # job_execution_timeout_minutes: 1,
6514
+ # }
6515
+ #
6516
+ # @!attribute [rw] terminate_jobs_on_update
6517
+ # Specifies whether jobs are automatically terminated when the
6518
+ # computer environment infrastructure is updated. The default value is
6519
+ # `false`.
6520
+ # @return [Boolean]
6521
+ #
6522
+ # @!attribute [rw] job_execution_timeout_minutes
6523
+ # Specifies the job timeout, in minutes, when the compute environment
6524
+ # infrastructure is updated. The default value is 30.
6525
+ # @return [Integer]
6526
+ #
6527
+ # @see http://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10/UpdatePolicy AWS API Documentation
6528
+ #
6529
+ class UpdatePolicy < Struct.new(
6530
+ :terminate_jobs_on_update,
6531
+ :job_execution_timeout_minutes)
6532
+ SENSITIVE = []
6533
+ include Aws::Structure
6534
+ end
6535
+
6536
+ # Contains the parameters for `UpdateSchedulingPolicy`.
6537
+ #
6012
6538
  # @note When making an API call, you may pass UpdateSchedulingPolicyRequest
6013
6539
  # data as a hash:
6014
6540
  #