
com.pulumi.aws.autoscaling.outputs.GetGroupResult Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.autoscaling.outputs;
import com.pulumi.aws.autoscaling.outputs.GetGroupInstanceMaintenancePolicy;
import com.pulumi.aws.autoscaling.outputs.GetGroupLaunchTemplate;
import com.pulumi.aws.autoscaling.outputs.GetGroupMixedInstancesPolicy;
import com.pulumi.aws.autoscaling.outputs.GetGroupTag;
import com.pulumi.aws.autoscaling.outputs.GetGroupTrafficSource;
import com.pulumi.aws.autoscaling.outputs.GetGroupWarmPool;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
@CustomType
public final class GetGroupResult {
/**
* @return ARN of the Auto Scaling group.
*
*/
private String arn;
/**
* @return One or more Availability Zones for the group.
*
*/
private List availabilityZones;
private Integer defaultCooldown;
/**
* @return Desired size of the group.
*
*/
private Integer desiredCapacity;
/**
* @return The unit of measurement for the value returned for `desired_capacity`.
*
*/
private String desiredCapacityType;
/**
* @return List of metrics enabled for collection.
*
*/
private List enabledMetrics;
/**
* @return The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status of an EC2 instance that has come into service.
*
*/
private Integer healthCheckGracePeriod;
/**
* @return Service to use for the health checks. The valid values are EC2 and ELB.
*
*/
private String healthCheckType;
/**
* @return The provider-assigned unique ID for this managed resource.
*
*/
private String id;
/**
* @return Instance maintenance policy for the group.
*
*/
private List instanceMaintenancePolicies;
/**
* @return The name of the associated launch configuration.
*
*/
private String launchConfiguration;
/**
* @return List of launch templates along with the overrides.
*
*/
private List launchTemplates;
/**
* @return One or more load balancers associated with the group.
*
*/
private List loadBalancers;
/**
* @return Maximum amount of time, in seconds, that an instance can be in service.
*
*/
private Integer maxInstanceLifetime;
/**
* @return Maximum size of the group.
*
*/
private Integer maxSize;
/**
* @return Minimum number of instances to maintain in the warm pool.
*
*/
private Integer minSize;
/**
* @return List of mixed instances policy objects for the group.
*
*/
private List mixedInstancesPolicies;
/**
* @return Name of the Auto Scaling Group.
*
*/
private String name;
private Boolean newInstancesProtectedFromScaleIn;
/**
* @return Name of the placement group into which to launch your instances, if any. For more information, see Placement Groups (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the Amazon Elastic Compute Cloud User Guide.
*
*/
private String placementGroup;
/**
* @return Predicted capacity of the group.
*
*/
private Integer predictedCapacity;
/**
* @return ARN of the service-linked role that the Auto Scaling group uses to call other AWS services on your behalf.
*
*/
private String serviceLinkedRoleArn;
/**
* @return Current state of the group when DeleteAutoScalingGroup is in progress.
*
*/
private String status;
/**
* @return List of processes suspended processes for the Auto Scaling Group.
*
*/
private List suspendedProcesses;
/**
* @return List of tags for the group.
*
*/
private List tags;
/**
* @return ARNs of the target groups for your load balancer.
*
*/
private List targetGroupArns;
/**
* @return The termination policies for the group.
*
*/
private List terminationPolicies;
/**
* @return Traffic sources.
*
*/
private List trafficSources;
/**
* @return VPC ID for the group.
*
*/
private String vpcZoneIdentifier;
/**
* @return Current size of the warm pool.
*
*/
private Integer warmPoolSize;
/**
* @return List of warm pool configuration objects.
*
*/
private List warmPools;
private GetGroupResult() {}
/**
* @return ARN of the Auto Scaling group.
*
*/
public String arn() {
return this.arn;
}
/**
* @return One or more Availability Zones for the group.
*
*/
public List availabilityZones() {
return this.availabilityZones;
}
public Integer defaultCooldown() {
return this.defaultCooldown;
}
/**
* @return Desired size of the group.
*
*/
public Integer desiredCapacity() {
return this.desiredCapacity;
}
/**
* @return The unit of measurement for the value returned for `desired_capacity`.
*
*/
public String desiredCapacityType() {
return this.desiredCapacityType;
}
/**
* @return List of metrics enabled for collection.
*
*/
public List enabledMetrics() {
return this.enabledMetrics;
}
/**
* @return The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status of an EC2 instance that has come into service.
*
*/
public Integer healthCheckGracePeriod() {
return this.healthCheckGracePeriod;
}
/**
* @return Service to use for the health checks. The valid values are EC2 and ELB.
*
*/
public String healthCheckType() {
return this.healthCheckType;
}
/**
* @return The provider-assigned unique ID for this managed resource.
*
*/
public String id() {
return this.id;
}
/**
* @return Instance maintenance policy for the group.
*
*/
public List instanceMaintenancePolicies() {
return this.instanceMaintenancePolicies;
}
/**
* @return The name of the associated launch configuration.
*
*/
public String launchConfiguration() {
return this.launchConfiguration;
}
/**
* @return List of launch templates along with the overrides.
*
*/
public List launchTemplates() {
return this.launchTemplates;
}
/**
* @return One or more load balancers associated with the group.
*
*/
public List loadBalancers() {
return this.loadBalancers;
}
/**
* @return Maximum amount of time, in seconds, that an instance can be in service.
*
*/
public Integer maxInstanceLifetime() {
return this.maxInstanceLifetime;
}
/**
* @return Maximum size of the group.
*
*/
public Integer maxSize() {
return this.maxSize;
}
/**
* @return Minimum number of instances to maintain in the warm pool.
*
*/
public Integer minSize() {
return this.minSize;
}
/**
* @return List of mixed instances policy objects for the group.
*
*/
public List mixedInstancesPolicies() {
return this.mixedInstancesPolicies;
}
/**
* @return Name of the Auto Scaling Group.
*
*/
public String name() {
return this.name;
}
public Boolean newInstancesProtectedFromScaleIn() {
return this.newInstancesProtectedFromScaleIn;
}
/**
* @return Name of the placement group into which to launch your instances, if any. For more information, see Placement Groups (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the Amazon Elastic Compute Cloud User Guide.
*
*/
public String placementGroup() {
return this.placementGroup;
}
/**
* @return Predicted capacity of the group.
*
*/
public Integer predictedCapacity() {
return this.predictedCapacity;
}
/**
* @return ARN of the service-linked role that the Auto Scaling group uses to call other AWS services on your behalf.
*
*/
public String serviceLinkedRoleArn() {
return this.serviceLinkedRoleArn;
}
/**
* @return Current state of the group when DeleteAutoScalingGroup is in progress.
*
*/
public String status() {
return this.status;
}
/**
* @return List of processes suspended processes for the Auto Scaling Group.
*
*/
public List suspendedProcesses() {
return this.suspendedProcesses;
}
/**
* @return List of tags for the group.
*
*/
public List tags() {
return this.tags;
}
/**
* @return ARNs of the target groups for your load balancer.
*
*/
public List targetGroupArns() {
return this.targetGroupArns;
}
/**
* @return The termination policies for the group.
*
*/
public List terminationPolicies() {
return this.terminationPolicies;
}
/**
* @return Traffic sources.
*
*/
public List trafficSources() {
return this.trafficSources;
}
/**
* @return VPC ID for the group.
*
*/
public String vpcZoneIdentifier() {
return this.vpcZoneIdentifier;
}
/**
* @return Current size of the warm pool.
*
*/
public Integer warmPoolSize() {
return this.warmPoolSize;
}
/**
* @return List of warm pool configuration objects.
*
*/
public List warmPools() {
return this.warmPools;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GetGroupResult defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private String arn;
private List availabilityZones;
private Integer defaultCooldown;
private Integer desiredCapacity;
private String desiredCapacityType;
private List enabledMetrics;
private Integer healthCheckGracePeriod;
private String healthCheckType;
private String id;
private List instanceMaintenancePolicies;
private String launchConfiguration;
private List launchTemplates;
private List loadBalancers;
private Integer maxInstanceLifetime;
private Integer maxSize;
private Integer minSize;
private List mixedInstancesPolicies;
private String name;
private Boolean newInstancesProtectedFromScaleIn;
private String placementGroup;
private Integer predictedCapacity;
private String serviceLinkedRoleArn;
private String status;
private List suspendedProcesses;
private List tags;
private List targetGroupArns;
private List terminationPolicies;
private List trafficSources;
private String vpcZoneIdentifier;
private Integer warmPoolSize;
private List warmPools;
public Builder() {}
public Builder(GetGroupResult defaults) {
Objects.requireNonNull(defaults);
this.arn = defaults.arn;
this.availabilityZones = defaults.availabilityZones;
this.defaultCooldown = defaults.defaultCooldown;
this.desiredCapacity = defaults.desiredCapacity;
this.desiredCapacityType = defaults.desiredCapacityType;
this.enabledMetrics = defaults.enabledMetrics;
this.healthCheckGracePeriod = defaults.healthCheckGracePeriod;
this.healthCheckType = defaults.healthCheckType;
this.id = defaults.id;
this.instanceMaintenancePolicies = defaults.instanceMaintenancePolicies;
this.launchConfiguration = defaults.launchConfiguration;
this.launchTemplates = defaults.launchTemplates;
this.loadBalancers = defaults.loadBalancers;
this.maxInstanceLifetime = defaults.maxInstanceLifetime;
this.maxSize = defaults.maxSize;
this.minSize = defaults.minSize;
this.mixedInstancesPolicies = defaults.mixedInstancesPolicies;
this.name = defaults.name;
this.newInstancesProtectedFromScaleIn = defaults.newInstancesProtectedFromScaleIn;
this.placementGroup = defaults.placementGroup;
this.predictedCapacity = defaults.predictedCapacity;
this.serviceLinkedRoleArn = defaults.serviceLinkedRoleArn;
this.status = defaults.status;
this.suspendedProcesses = defaults.suspendedProcesses;
this.tags = defaults.tags;
this.targetGroupArns = defaults.targetGroupArns;
this.terminationPolicies = defaults.terminationPolicies;
this.trafficSources = defaults.trafficSources;
this.vpcZoneIdentifier = defaults.vpcZoneIdentifier;
this.warmPoolSize = defaults.warmPoolSize;
this.warmPools = defaults.warmPools;
}
@CustomType.Setter
public Builder arn(String arn) {
if (arn == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "arn");
}
this.arn = arn;
return this;
}
@CustomType.Setter
public Builder availabilityZones(List availabilityZones) {
if (availabilityZones == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "availabilityZones");
}
this.availabilityZones = availabilityZones;
return this;
}
public Builder availabilityZones(String... availabilityZones) {
return availabilityZones(List.of(availabilityZones));
}
@CustomType.Setter
public Builder defaultCooldown(Integer defaultCooldown) {
if (defaultCooldown == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "defaultCooldown");
}
this.defaultCooldown = defaultCooldown;
return this;
}
@CustomType.Setter
public Builder desiredCapacity(Integer desiredCapacity) {
if (desiredCapacity == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "desiredCapacity");
}
this.desiredCapacity = desiredCapacity;
return this;
}
@CustomType.Setter
public Builder desiredCapacityType(String desiredCapacityType) {
if (desiredCapacityType == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "desiredCapacityType");
}
this.desiredCapacityType = desiredCapacityType;
return this;
}
@CustomType.Setter
public Builder enabledMetrics(List enabledMetrics) {
if (enabledMetrics == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "enabledMetrics");
}
this.enabledMetrics = enabledMetrics;
return this;
}
public Builder enabledMetrics(String... enabledMetrics) {
return enabledMetrics(List.of(enabledMetrics));
}
@CustomType.Setter
public Builder healthCheckGracePeriod(Integer healthCheckGracePeriod) {
if (healthCheckGracePeriod == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "healthCheckGracePeriod");
}
this.healthCheckGracePeriod = healthCheckGracePeriod;
return this;
}
@CustomType.Setter
public Builder healthCheckType(String healthCheckType) {
if (healthCheckType == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "healthCheckType");
}
this.healthCheckType = healthCheckType;
return this;
}
@CustomType.Setter
public Builder id(String id) {
if (id == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "id");
}
this.id = id;
return this;
}
@CustomType.Setter
public Builder instanceMaintenancePolicies(List instanceMaintenancePolicies) {
if (instanceMaintenancePolicies == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "instanceMaintenancePolicies");
}
this.instanceMaintenancePolicies = instanceMaintenancePolicies;
return this;
}
public Builder instanceMaintenancePolicies(GetGroupInstanceMaintenancePolicy... instanceMaintenancePolicies) {
return instanceMaintenancePolicies(List.of(instanceMaintenancePolicies));
}
@CustomType.Setter
public Builder launchConfiguration(String launchConfiguration) {
if (launchConfiguration == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "launchConfiguration");
}
this.launchConfiguration = launchConfiguration;
return this;
}
@CustomType.Setter
public Builder launchTemplates(List launchTemplates) {
if (launchTemplates == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "launchTemplates");
}
this.launchTemplates = launchTemplates;
return this;
}
public Builder launchTemplates(GetGroupLaunchTemplate... launchTemplates) {
return launchTemplates(List.of(launchTemplates));
}
@CustomType.Setter
public Builder loadBalancers(List loadBalancers) {
if (loadBalancers == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "loadBalancers");
}
this.loadBalancers = loadBalancers;
return this;
}
public Builder loadBalancers(String... loadBalancers) {
return loadBalancers(List.of(loadBalancers));
}
@CustomType.Setter
public Builder maxInstanceLifetime(Integer maxInstanceLifetime) {
if (maxInstanceLifetime == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "maxInstanceLifetime");
}
this.maxInstanceLifetime = maxInstanceLifetime;
return this;
}
@CustomType.Setter
public Builder maxSize(Integer maxSize) {
if (maxSize == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "maxSize");
}
this.maxSize = maxSize;
return this;
}
@CustomType.Setter
public Builder minSize(Integer minSize) {
if (minSize == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "minSize");
}
this.minSize = minSize;
return this;
}
@CustomType.Setter
public Builder mixedInstancesPolicies(List mixedInstancesPolicies) {
if (mixedInstancesPolicies == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "mixedInstancesPolicies");
}
this.mixedInstancesPolicies = mixedInstancesPolicies;
return this;
}
public Builder mixedInstancesPolicies(GetGroupMixedInstancesPolicy... mixedInstancesPolicies) {
return mixedInstancesPolicies(List.of(mixedInstancesPolicies));
}
@CustomType.Setter
public Builder name(String name) {
if (name == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder newInstancesProtectedFromScaleIn(Boolean newInstancesProtectedFromScaleIn) {
if (newInstancesProtectedFromScaleIn == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "newInstancesProtectedFromScaleIn");
}
this.newInstancesProtectedFromScaleIn = newInstancesProtectedFromScaleIn;
return this;
}
@CustomType.Setter
public Builder placementGroup(String placementGroup) {
if (placementGroup == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "placementGroup");
}
this.placementGroup = placementGroup;
return this;
}
@CustomType.Setter
public Builder predictedCapacity(Integer predictedCapacity) {
if (predictedCapacity == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "predictedCapacity");
}
this.predictedCapacity = predictedCapacity;
return this;
}
@CustomType.Setter
public Builder serviceLinkedRoleArn(String serviceLinkedRoleArn) {
if (serviceLinkedRoleArn == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "serviceLinkedRoleArn");
}
this.serviceLinkedRoleArn = serviceLinkedRoleArn;
return this;
}
@CustomType.Setter
public Builder status(String status) {
if (status == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "status");
}
this.status = status;
return this;
}
@CustomType.Setter
public Builder suspendedProcesses(List suspendedProcesses) {
if (suspendedProcesses == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "suspendedProcesses");
}
this.suspendedProcesses = suspendedProcesses;
return this;
}
public Builder suspendedProcesses(String... suspendedProcesses) {
return suspendedProcesses(List.of(suspendedProcesses));
}
@CustomType.Setter
public Builder tags(List tags) {
if (tags == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "tags");
}
this.tags = tags;
return this;
}
public Builder tags(GetGroupTag... tags) {
return tags(List.of(tags));
}
@CustomType.Setter
public Builder targetGroupArns(List targetGroupArns) {
if (targetGroupArns == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "targetGroupArns");
}
this.targetGroupArns = targetGroupArns;
return this;
}
public Builder targetGroupArns(String... targetGroupArns) {
return targetGroupArns(List.of(targetGroupArns));
}
@CustomType.Setter
public Builder terminationPolicies(List terminationPolicies) {
if (terminationPolicies == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "terminationPolicies");
}
this.terminationPolicies = terminationPolicies;
return this;
}
public Builder terminationPolicies(String... terminationPolicies) {
return terminationPolicies(List.of(terminationPolicies));
}
@CustomType.Setter
public Builder trafficSources(List trafficSources) {
if (trafficSources == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "trafficSources");
}
this.trafficSources = trafficSources;
return this;
}
public Builder trafficSources(GetGroupTrafficSource... trafficSources) {
return trafficSources(List.of(trafficSources));
}
@CustomType.Setter
public Builder vpcZoneIdentifier(String vpcZoneIdentifier) {
if (vpcZoneIdentifier == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "vpcZoneIdentifier");
}
this.vpcZoneIdentifier = vpcZoneIdentifier;
return this;
}
@CustomType.Setter
public Builder warmPoolSize(Integer warmPoolSize) {
if (warmPoolSize == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "warmPoolSize");
}
this.warmPoolSize = warmPoolSize;
return this;
}
@CustomType.Setter
public Builder warmPools(List warmPools) {
if (warmPools == null) {
throw new MissingRequiredPropertyException("GetGroupResult", "warmPools");
}
this.warmPools = warmPools;
return this;
}
public Builder warmPools(GetGroupWarmPool... warmPools) {
return warmPools(List.of(warmPools));
}
public GetGroupResult build() {
final var _resultValue = new GetGroupResult();
_resultValue.arn = arn;
_resultValue.availabilityZones = availabilityZones;
_resultValue.defaultCooldown = defaultCooldown;
_resultValue.desiredCapacity = desiredCapacity;
_resultValue.desiredCapacityType = desiredCapacityType;
_resultValue.enabledMetrics = enabledMetrics;
_resultValue.healthCheckGracePeriod = healthCheckGracePeriod;
_resultValue.healthCheckType = healthCheckType;
_resultValue.id = id;
_resultValue.instanceMaintenancePolicies = instanceMaintenancePolicies;
_resultValue.launchConfiguration = launchConfiguration;
_resultValue.launchTemplates = launchTemplates;
_resultValue.loadBalancers = loadBalancers;
_resultValue.maxInstanceLifetime = maxInstanceLifetime;
_resultValue.maxSize = maxSize;
_resultValue.minSize = minSize;
_resultValue.mixedInstancesPolicies = mixedInstancesPolicies;
_resultValue.name = name;
_resultValue.newInstancesProtectedFromScaleIn = newInstancesProtectedFromScaleIn;
_resultValue.placementGroup = placementGroup;
_resultValue.predictedCapacity = predictedCapacity;
_resultValue.serviceLinkedRoleArn = serviceLinkedRoleArn;
_resultValue.status = status;
_resultValue.suspendedProcesses = suspendedProcesses;
_resultValue.tags = tags;
_resultValue.targetGroupArns = targetGroupArns;
_resultValue.terminationPolicies = terminationPolicies;
_resultValue.trafficSources = trafficSources;
_resultValue.vpcZoneIdentifier = vpcZoneIdentifier;
_resultValue.warmPoolSize = warmPoolSize;
_resultValue.warmPools = warmPools;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy