Class SpotFleetRequestState.Builder

  • Enclosing class:
    SpotFleetRequestState

    public static final class SpotFleetRequestState.Builder
    extends java.lang.Object
    • Method Detail

      • allocationStrategy

        public SpotFleetRequestState.Builder allocationStrategy​(@Nullable
                                                                com.pulumi.core.Output<java.lang.String> allocationStrategy)
        Parameters:
        allocationStrategy - Indicates how to allocate the target capacity across the Spot pools specified by the Spot fleet request. Valid values: `lowestPrice`, `diversified`, `capacityOptimized`, `capacityOptimizedPrioritized`, and `priceCapacityOptimized`. The default is `lowestPrice`.
        Returns:
        builder
      • allocationStrategy

        public SpotFleetRequestState.Builder allocationStrategy​(java.lang.String allocationStrategy)
        Parameters:
        allocationStrategy - Indicates how to allocate the target capacity across the Spot pools specified by the Spot fleet request. Valid values: `lowestPrice`, `diversified`, `capacityOptimized`, `capacityOptimizedPrioritized`, and `priceCapacityOptimized`. The default is `lowestPrice`.
        Returns:
        builder
      • context

        public SpotFleetRequestState.Builder context​(@Nullable
                                                     com.pulumi.core.Output<java.lang.String> context)
        Parameters:
        context - Reserved.
        Returns:
        builder
      • excessCapacityTerminationPolicy

        public SpotFleetRequestState.Builder excessCapacityTerminationPolicy​(@Nullable
                                                                             com.pulumi.core.Output<java.lang.String> excessCapacityTerminationPolicy)
        Parameters:
        excessCapacityTerminationPolicy - Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.
        Returns:
        builder
      • excessCapacityTerminationPolicy

        public SpotFleetRequestState.Builder excessCapacityTerminationPolicy​(java.lang.String excessCapacityTerminationPolicy)
        Parameters:
        excessCapacityTerminationPolicy - Indicates whether running Spot instances should be terminated if the target capacity of the Spot fleet request is decreased below the current size of the Spot fleet.
        Returns:
        builder
      • fleetType

        public SpotFleetRequestState.Builder fleetType​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> fleetType)
        Parameters:
        fleetType - The type of fleet request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. Default is `maintain`.
        Returns:
        builder
      • fleetType

        public SpotFleetRequestState.Builder fleetType​(java.lang.String fleetType)
        Parameters:
        fleetType - The type of fleet request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. Default is `maintain`.
        Returns:
        builder
      • iamFleetRole

        public SpotFleetRequestState.Builder iamFleetRole​(@Nullable
                                                          com.pulumi.core.Output<java.lang.String> iamFleetRole)
        Parameters:
        iamFleetRole - Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.
        Returns:
        builder
      • iamFleetRole

        public SpotFleetRequestState.Builder iamFleetRole​(java.lang.String iamFleetRole)
        Parameters:
        iamFleetRole - Grants the Spot fleet permission to terminate Spot instances on your behalf when you cancel its Spot fleet request using CancelSpotFleetRequests or when the Spot fleet request expires, if you set terminateInstancesWithExpiration.
        Returns:
        builder
      • instanceInterruptionBehaviour

        public SpotFleetRequestState.Builder instanceInterruptionBehaviour​(@Nullable
                                                                           com.pulumi.core.Output<java.lang.String> instanceInterruptionBehaviour)
        Parameters:
        instanceInterruptionBehaviour - Indicates whether a Spot instance stops or terminates when it is interrupted. Default is `terminate`.
        Returns:
        builder
      • instanceInterruptionBehaviour

        public SpotFleetRequestState.Builder instanceInterruptionBehaviour​(java.lang.String instanceInterruptionBehaviour)
        Parameters:
        instanceInterruptionBehaviour - Indicates whether a Spot instance stops or terminates when it is interrupted. Default is `terminate`.
        Returns:
        builder
      • instancePoolsToUseCount

        public SpotFleetRequestState.Builder instancePoolsToUseCount​(@Nullable
                                                                     com.pulumi.core.Output<java.lang.Integer> instancePoolsToUseCount)
        Parameters:
        instancePoolsToUseCount - The number of Spot pools across which to allocate your target Spot capacity. Valid only when `allocationStrategy` is set to `lowestPrice`. Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.
        Returns:
        builder
      • instancePoolsToUseCount

        public SpotFleetRequestState.Builder instancePoolsToUseCount​(java.lang.Integer instancePoolsToUseCount)
        Parameters:
        instancePoolsToUseCount - The number of Spot pools across which to allocate your target Spot capacity. Valid only when `allocationStrategy` is set to `lowestPrice`. Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.
        Returns:
        builder
      • launchSpecifications

        public SpotFleetRequestState.Builder launchSpecifications​(@Nullable
                                                                  com.pulumi.core.Output<java.util.List<SpotFleetRequestLaunchSpecificationArgs>> launchSpecifications)
        Parameters:
        launchSpecifications - Used to define the launch configuration of the spot-fleet request. Can be specified multiple times to define different bids across different markets and instance types. Conflicts with `launchTemplateConfig`. At least one of `launchSpecification` or `launchTemplateConfig` is required. **Note**: This takes in similar but not identical inputs as `aws.ec2.Instance`. There are limitations on what you can specify. See the list of officially supported inputs in the [reference documentation](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetLaunchSpecification.html). Any normal `aws.ec2.Instance` parameter that corresponds to those inputs may be used and it have a additional parameter `iamInstanceProfileArn` takes `aws.iam.InstanceProfile` attribute `arn` as input.
        Returns:
        builder
      • launchSpecifications

        public SpotFleetRequestState.Builder launchSpecifications​(java.util.List<SpotFleetRequestLaunchSpecificationArgs> launchSpecifications)
        Parameters:
        launchSpecifications - Used to define the launch configuration of the spot-fleet request. Can be specified multiple times to define different bids across different markets and instance types. Conflicts with `launchTemplateConfig`. At least one of `launchSpecification` or `launchTemplateConfig` is required. **Note**: This takes in similar but not identical inputs as `aws.ec2.Instance`. There are limitations on what you can specify. See the list of officially supported inputs in the [reference documentation](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetLaunchSpecification.html). Any normal `aws.ec2.Instance` parameter that corresponds to those inputs may be used and it have a additional parameter `iamInstanceProfileArn` takes `aws.iam.InstanceProfile` attribute `arn` as input.
        Returns:
        builder
      • launchSpecifications

        public SpotFleetRequestState.Builder launchSpecifications​(SpotFleetRequestLaunchSpecificationArgs... launchSpecifications)
        Parameters:
        launchSpecifications - Used to define the launch configuration of the spot-fleet request. Can be specified multiple times to define different bids across different markets and instance types. Conflicts with `launchTemplateConfig`. At least one of `launchSpecification` or `launchTemplateConfig` is required. **Note**: This takes in similar but not identical inputs as `aws.ec2.Instance`. There are limitations on what you can specify. See the list of officially supported inputs in the [reference documentation](http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetLaunchSpecification.html). Any normal `aws.ec2.Instance` parameter that corresponds to those inputs may be used and it have a additional parameter `iamInstanceProfileArn` takes `aws.iam.InstanceProfile` attribute `arn` as input.
        Returns:
        builder
      • launchTemplateConfigs

        public SpotFleetRequestState.Builder launchTemplateConfigs​(@Nullable
                                                                   com.pulumi.core.Output<java.util.List<SpotFleetRequestLaunchTemplateConfigArgs>> launchTemplateConfigs)
        Parameters:
        launchTemplateConfigs - Launch template configuration block. See Launch Template Configs below for more details. Conflicts with `launchSpecification`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
        Returns:
        builder
      • launchTemplateConfigs

        public SpotFleetRequestState.Builder launchTemplateConfigs​(java.util.List<SpotFleetRequestLaunchTemplateConfigArgs> launchTemplateConfigs)
        Parameters:
        launchTemplateConfigs - Launch template configuration block. See Launch Template Configs below for more details. Conflicts with `launchSpecification`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
        Returns:
        builder
      • launchTemplateConfigs

        public SpotFleetRequestState.Builder launchTemplateConfigs​(SpotFleetRequestLaunchTemplateConfigArgs... launchTemplateConfigs)
        Parameters:
        launchTemplateConfigs - Launch template configuration block. See Launch Template Configs below for more details. Conflicts with `launchSpecification`. At least one of `launchSpecification` or `launchTemplateConfig` is required.
        Returns:
        builder
      • loadBalancers

        public SpotFleetRequestState.Builder loadBalancers​(@Nullable
                                                           com.pulumi.core.Output<java.util.List<java.lang.String>> loadBalancers)
        Parameters:
        loadBalancers - A list of elastic load balancer names to add to the Spot fleet.
        Returns:
        builder
      • loadBalancers

        public SpotFleetRequestState.Builder loadBalancers​(java.util.List<java.lang.String> loadBalancers)
        Parameters:
        loadBalancers - A list of elastic load balancer names to add to the Spot fleet.
        Returns:
        builder
      • loadBalancers

        public SpotFleetRequestState.Builder loadBalancers​(java.lang.String... loadBalancers)
        Parameters:
        loadBalancers - A list of elastic load balancer names to add to the Spot fleet.
        Returns:
        builder
      • onDemandAllocationStrategy

        public SpotFleetRequestState.Builder onDemandAllocationStrategy​(@Nullable
                                                                        com.pulumi.core.Output<java.lang.String> onDemandAllocationStrategy)
        Parameters:
        onDemandAllocationStrategy - The order of the launch template overrides to use in fulfilling On-Demand capacity. the possible values are: `lowestPrice` and `prioritized`. the default is `lowestPrice`.
        Returns:
        builder
      • onDemandAllocationStrategy

        public SpotFleetRequestState.Builder onDemandAllocationStrategy​(java.lang.String onDemandAllocationStrategy)
        Parameters:
        onDemandAllocationStrategy - The order of the launch template overrides to use in fulfilling On-Demand capacity. the possible values are: `lowestPrice` and `prioritized`. the default is `lowestPrice`.
        Returns:
        builder
      • onDemandMaxTotalPrice

        public SpotFleetRequestState.Builder onDemandMaxTotalPrice​(@Nullable
                                                                   com.pulumi.core.Output<java.lang.String> onDemandMaxTotalPrice)
        Parameters:
        onDemandMaxTotalPrice - The maximum amount per hour for On-Demand Instances that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
        Returns:
        builder
      • onDemandMaxTotalPrice

        public SpotFleetRequestState.Builder onDemandMaxTotalPrice​(java.lang.String onDemandMaxTotalPrice)
        Parameters:
        onDemandMaxTotalPrice - The maximum amount per hour for On-Demand Instances that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
        Returns:
        builder
      • onDemandTargetCapacity

        public SpotFleetRequestState.Builder onDemandTargetCapacity​(@Nullable
                                                                    com.pulumi.core.Output<java.lang.Integer> onDemandTargetCapacity)
        Parameters:
        onDemandTargetCapacity - The number of On-Demand units to request. If the request type is `maintain`, you can specify a target capacity of 0 and add capacity later.
        Returns:
        builder
      • onDemandTargetCapacity

        public SpotFleetRequestState.Builder onDemandTargetCapacity​(java.lang.Integer onDemandTargetCapacity)
        Parameters:
        onDemandTargetCapacity - The number of On-Demand units to request. If the request type is `maintain`, you can specify a target capacity of 0 and add capacity later.
        Returns:
        builder
      • region

        public SpotFleetRequestState.Builder region​(@Nullable
                                                    com.pulumi.core.Output<java.lang.String> region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • region

        public SpotFleetRequestState.Builder region​(java.lang.String region)
        Parameters:
        region - Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
        Returns:
        builder
      • replaceUnhealthyInstances

        public SpotFleetRequestState.Builder replaceUnhealthyInstances​(@Nullable
                                                                       com.pulumi.core.Output<java.lang.Boolean> replaceUnhealthyInstances)
        Parameters:
        replaceUnhealthyInstances - Indicates whether Spot fleet should replace unhealthy instances. Default `false`.
        Returns:
        builder
      • replaceUnhealthyInstances

        public SpotFleetRequestState.Builder replaceUnhealthyInstances​(java.lang.Boolean replaceUnhealthyInstances)
        Parameters:
        replaceUnhealthyInstances - Indicates whether Spot fleet should replace unhealthy instances. Default `false`.
        Returns:
        builder
      • spotMaintenanceStrategies

        public SpotFleetRequestState.Builder spotMaintenanceStrategies​(@Nullable
                                                                       com.pulumi.core.Output<SpotFleetRequestSpotMaintenanceStrategiesArgs> spotMaintenanceStrategies)
        Parameters:
        spotMaintenanceStrategies - Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.
        Returns:
        builder
      • spotMaintenanceStrategies

        public SpotFleetRequestState.Builder spotMaintenanceStrategies​(SpotFleetRequestSpotMaintenanceStrategiesArgs spotMaintenanceStrategies)
        Parameters:
        spotMaintenanceStrategies - Nested argument containing maintenance strategies for managing your Spot Instances that are at an elevated risk of being interrupted. Defined below.
        Returns:
        builder
      • spotPrice

        public SpotFleetRequestState.Builder spotPrice​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> spotPrice)
        Parameters:
        spotPrice - The maximum bid price per unit hour.
        Returns:
        builder
      • spotPrice

        public SpotFleetRequestState.Builder spotPrice​(java.lang.String spotPrice)
        Parameters:
        spotPrice - The maximum bid price per unit hour.
        Returns:
        builder
      • spotRequestState

        public SpotFleetRequestState.Builder spotRequestState​(@Nullable
                                                              com.pulumi.core.Output<java.lang.String> spotRequestState)
        Parameters:
        spotRequestState - The state of the Spot fleet request.
        Returns:
        builder
      • spotRequestState

        public SpotFleetRequestState.Builder spotRequestState​(java.lang.String spotRequestState)
        Parameters:
        spotRequestState - The state of the Spot fleet request.
        Returns:
        builder
      • tags

        public SpotFleetRequestState.Builder tags​(@Nullable
                                                  com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tags)
        Parameters:
        tags - A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tags

        public SpotFleetRequestState.Builder tags​(java.util.Map<java.lang.String,​java.lang.String> tags)
        Parameters:
        tags - A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
        Returns:
        builder
      • tagsAll

        public SpotFleetRequestState.Builder tagsAll​(@Nullable
                                                     com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll)
        Parameters:
        tagsAll - A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • tagsAll

        public SpotFleetRequestState.Builder tagsAll​(java.util.Map<java.lang.String,​java.lang.String> tagsAll)
        Parameters:
        tagsAll - A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • targetCapacity

        public SpotFleetRequestState.Builder targetCapacity​(@Nullable
                                                            com.pulumi.core.Output<java.lang.Integer> targetCapacity)
        Parameters:
        targetCapacity - The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.
        Returns:
        builder
      • targetCapacity

        public SpotFleetRequestState.Builder targetCapacity​(java.lang.Integer targetCapacity)
        Parameters:
        targetCapacity - The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O.
        Returns:
        builder
      • targetCapacityUnitType

        public SpotFleetRequestState.Builder targetCapacityUnitType​(@Nullable
                                                                    com.pulumi.core.Output<java.lang.String> targetCapacityUnitType)
        Parameters:
        targetCapacityUnitType - The unit for the target capacity. This can only be done with `instanceRequirements` defined
        Returns:
        builder
      • targetCapacityUnitType

        public SpotFleetRequestState.Builder targetCapacityUnitType​(java.lang.String targetCapacityUnitType)
        Parameters:
        targetCapacityUnitType - The unit for the target capacity. This can only be done with `instanceRequirements` defined
        Returns:
        builder
      • targetGroupArns

        public SpotFleetRequestState.Builder targetGroupArns​(@Nullable
                                                             com.pulumi.core.Output<java.util.List<java.lang.String>> targetGroupArns)
        Parameters:
        targetGroupArns - A list of `aws.alb.TargetGroup` ARNs, for use with Application Load Balancing.
        Returns:
        builder
      • targetGroupArns

        public SpotFleetRequestState.Builder targetGroupArns​(java.util.List<java.lang.String> targetGroupArns)
        Parameters:
        targetGroupArns - A list of `aws.alb.TargetGroup` ARNs, for use with Application Load Balancing.
        Returns:
        builder
      • targetGroupArns

        public SpotFleetRequestState.Builder targetGroupArns​(java.lang.String... targetGroupArns)
        Parameters:
        targetGroupArns - A list of `aws.alb.TargetGroup` ARNs, for use with Application Load Balancing.
        Returns:
        builder
      • terminateInstancesOnDelete

        public SpotFleetRequestState.Builder terminateInstancesOnDelete​(@Nullable
                                                                        com.pulumi.core.Output<java.lang.String> terminateInstancesOnDelete)
        Parameters:
        terminateInstancesOnDelete - Indicates whether running Spot instances should be terminated when the resource is deleted (and the Spot fleet request cancelled). If no value is specified, the value of the `terminateInstancesWithExpiration` argument is used.
        Returns:
        builder
      • terminateInstancesOnDelete

        public SpotFleetRequestState.Builder terminateInstancesOnDelete​(java.lang.String terminateInstancesOnDelete)
        Parameters:
        terminateInstancesOnDelete - Indicates whether running Spot instances should be terminated when the resource is deleted (and the Spot fleet request cancelled). If no value is specified, the value of the `terminateInstancesWithExpiration` argument is used.
        Returns:
        builder
      • terminateInstancesWithExpiration

        public SpotFleetRequestState.Builder terminateInstancesWithExpiration​(@Nullable
                                                                              com.pulumi.core.Output<java.lang.Boolean> terminateInstancesWithExpiration)
        Parameters:
        terminateInstancesWithExpiration - Indicates whether running Spot instances should be terminated when the Spot fleet request expires.
        Returns:
        builder
      • terminateInstancesWithExpiration

        public SpotFleetRequestState.Builder terminateInstancesWithExpiration​(java.lang.Boolean terminateInstancesWithExpiration)
        Parameters:
        terminateInstancesWithExpiration - Indicates whether running Spot instances should be terminated when the Spot fleet request expires.
        Returns:
        builder
      • validFrom

        public SpotFleetRequestState.Builder validFrom​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> validFrom)
        Parameters:
        validFrom - The start date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
        Returns:
        builder
      • validFrom

        public SpotFleetRequestState.Builder validFrom​(java.lang.String validFrom)
        Parameters:
        validFrom - The start date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
        Returns:
        builder
      • validUntil

        public SpotFleetRequestState.Builder validUntil​(@Nullable
                                                        com.pulumi.core.Output<java.lang.String> validUntil)
        Parameters:
        validUntil - The end date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.
        Returns:
        builder
      • validUntil

        public SpotFleetRequestState.Builder validUntil​(java.lang.String validUntil)
        Parameters:
        validUntil - The end date and time of the request, in UTC [RFC3339](https://tools.ietf.org/html/rfc3339#section-5.8) format(for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot instance requests are placed or enabled to fulfill the request.
        Returns:
        builder
      • waitForFulfillment

        public SpotFleetRequestState.Builder waitForFulfillment​(@Nullable
                                                                com.pulumi.core.Output<java.lang.Boolean> waitForFulfillment)
        Parameters:
        waitForFulfillment - If set, this provider will wait for the Spot Request to be fulfilled, and will throw an error if the timeout of 10m is reached.
        Returns:
        builder
      • waitForFulfillment

        public SpotFleetRequestState.Builder waitForFulfillment​(java.lang.Boolean waitForFulfillment)
        Parameters:
        waitForFulfillment - If set, this provider will wait for the Spot Request to be fulfilled, and will throw an error if the timeout of 10m is reached.
        Returns:
        builder