Class DefaultSubnet


  • public class DefaultSubnet
    extends com.pulumi.resources.CustomResource
    Provides a resource to manage a [default subnet](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html#default-vpc-basics) in the current region. **This is an advanced resource** and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource. The `aws.ec2.DefaultSubnet` resource behaves differently from normal resources in that if a default subnet exists in the specified Availability Zone, this provider does not _create_ this resource, but instead "adopts" it into management. If no default subnet exists, this provider creates a new default subnet. By default, `pulumi destroy` does not delete the default subnet but does remove the resource from the state. Set the `forceDestroy` argument to `true` to delete the default subnet. ## Example Usage
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.ec2.DefaultSubnet;
     import com.pulumi.aws.ec2.DefaultSubnetArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     import java.util.Map;
     import java.io.File;
     import java.nio.file.Files;
     import java.nio.file.Paths;
     
     public class App {
         public static void main(String[] args) {
             Pulumi.run(App::stack);
         }
     
         public static void stack(Context ctx) {
             var defaultAz1 = new DefaultSubnet("defaultAz1", DefaultSubnetArgs.builder()
                 .availabilityZone("us-west-2a")
                 .tags(Map.of("Name", "Default subnet for us-west-2a"))
                 .build());
     
         }
     }
     
     
    ## Import Using `pulumi import`, import subnets using the subnet `id`. For example: ```sh $ pulumi import aws:ec2/defaultSubnet:DefaultSubnet public_subnet subnet-9d4a7b6c ```
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.pulumi.core.Output<java.lang.String> arn()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> assignIpv6AddressOnCreation()  
      com.pulumi.core.Output<java.lang.String> availabilityZone()  
      com.pulumi.core.Output<java.lang.String> availabilityZoneId()  
      com.pulumi.core.Output<java.lang.String> cidrBlock()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> customerOwnedIpv4Pool()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> enableDns64()  
      com.pulumi.core.Output<java.lang.Integer> enableLniAtDeviceIndex()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> enableResourceNameDnsAaaaRecordOnLaunch()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> enableResourceNameDnsARecordOnLaunch()  
      com.pulumi.core.Output<java.lang.Boolean> existingDefaultSubnet()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> forceDestroy()  
      static DefaultSubnet get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, DefaultSubnetState state, com.pulumi.resources.CustomResourceOptions options)
      Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
      com.pulumi.core.Output<java.lang.String> ipv6CidrBlock()  
      com.pulumi.core.Output<java.lang.String> ipv6CidrBlockAssociationId()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> ipv6Native()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> mapCustomerOwnedIpOnLaunch()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> mapPublicIpOnLaunch()  
      com.pulumi.core.Output<java.lang.String> outpostArn()  
      com.pulumi.core.Output<java.lang.String> ownerId()  
      com.pulumi.core.Output<java.lang.String> privateDnsHostnameTypeOnLaunch()  
      com.pulumi.core.Output<java.lang.String> region()  
      com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()  
      com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()  
      com.pulumi.core.Output<java.lang.String> vpcId()  
      • Methods inherited from class com.pulumi.resources.CustomResource

        getId, id, idFuture
      • Methods inherited from class com.pulumi.resources.Resource

        getChildResources, getResourceName, getResourceType, getUrn, pulumiChildResources, pulumiResourceName, pulumiResourceType, urn
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DefaultSubnet

        public DefaultSubnet​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • DefaultSubnet

        public DefaultSubnet​(java.lang.String name,
                             DefaultSubnetArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • DefaultSubnet

        public DefaultSubnet​(java.lang.String name,
                             DefaultSubnetArgs args,
                             @Nullable
                             com.pulumi.resources.CustomResourceOptions options)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
        options - A bag of options that control this resource's behavior.
    • Method Detail

      • arn

        public com.pulumi.core.Output<java.lang.String> arn()
      • assignIpv6AddressOnCreation

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> assignIpv6AddressOnCreation()
      • availabilityZone

        public com.pulumi.core.Output<java.lang.String> availabilityZone()
        Returns:
        is required * The `availabilityZoneId`, `cidrBlock` and `vpcId` arguments become computed attributes * The default value for `mapPublicIpOnLaunch` is `true` This resource supports the following additional arguments:
      • availabilityZoneId

        public com.pulumi.core.Output<java.lang.String> availabilityZoneId()
        Returns:
        The AZ ID of the subnet
      • cidrBlock

        public com.pulumi.core.Output<java.lang.String> cidrBlock()
        Returns:
        The IPv4 CIDR block assigned to the subnet
      • customerOwnedIpv4Pool

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> customerOwnedIpv4Pool()
      • enableDns64

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> enableDns64()
      • enableLniAtDeviceIndex

        public com.pulumi.core.Output<java.lang.Integer> enableLniAtDeviceIndex()
      • enableResourceNameDnsARecordOnLaunch

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> enableResourceNameDnsARecordOnLaunch()
      • enableResourceNameDnsAaaaRecordOnLaunch

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> enableResourceNameDnsAaaaRecordOnLaunch()
      • existingDefaultSubnet

        public com.pulumi.core.Output<java.lang.Boolean> existingDefaultSubnet()
      • forceDestroy

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> forceDestroy()
        Returns:
        Whether destroying the resource deletes the default subnet. Default: `false`
      • ipv6CidrBlock

        public com.pulumi.core.Output<java.lang.String> ipv6CidrBlock()
      • ipv6CidrBlockAssociationId

        public com.pulumi.core.Output<java.lang.String> ipv6CidrBlockAssociationId()
      • ipv6Native

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> ipv6Native()
      • mapCustomerOwnedIpOnLaunch

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> mapCustomerOwnedIpOnLaunch()
      • mapPublicIpOnLaunch

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> mapPublicIpOnLaunch()
      • outpostArn

        public com.pulumi.core.Output<java.lang.String> outpostArn()
      • ownerId

        public com.pulumi.core.Output<java.lang.String> ownerId()
      • privateDnsHostnameTypeOnLaunch

        public com.pulumi.core.Output<java.lang.String> privateDnsHostnameTypeOnLaunch()
      • region

        public com.pulumi.core.Output<java.lang.String> region()
        Returns:
        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](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#aws-configuration-reference).
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
      • tagsAll

        public com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()
      • vpcId

        public com.pulumi.core.Output<java.lang.String> vpcId()
        Returns:
        The ID of the VPC the subnet is in
      • get

        public static DefaultSubnet get​(java.lang.String name,
                                        com.pulumi.core.Output<java.lang.String> id,
                                        @Nullable
                                        DefaultSubnetState state,
                                        @Nullable
                                        com.pulumi.resources.CustomResourceOptions options)
        Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
        Parameters:
        name - The _unique_ name of the resulting resource.
        id - The _unique_ provider ID of the resource to lookup.
        state -
        options - Optional settings to control the behavior of the CustomResource.