1. Packages
  2. AWS
  3. API Docs
  4. ec2
  5. VpcIpamPoolCidr
AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi

aws.ec2.VpcIpamPoolCidr

Explore with Pulumi AI

aws logo
AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi

    Provisions a CIDR from an IPAM address pool.

    NOTE: Provisioning Public IPv4 or Public IPv6 require steps outside the scope of this resource. The resource accepts message and signature as part of the cidr_authorization_context attribute but those must be generated ahead of time. Public IPv6 CIDRs that are provisioned into a Pool with publicly_advertisable = true and all public IPv4 CIDRs also require creating a Route Origin Authorization (ROA) object in your Regional Internet Registry (RIR).

    NOTE: In order to deprovision CIDRs all Allocations must be released. Allocations created by a VPC take up to 30 minutes to be released. However, for IPAM to properly manage the removal of allocation records created by VPCs and other resources, you must grant it permissions in either a single account or organizationally. If you are unable to deprovision a cidr after waiting over 30 minutes, you may be missing the Service Linked Role.

    Example Usage

    Basic usage:

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const current = aws.getRegion({});
    const example = new aws.ec2.VpcIpam("example", {operatingRegions: [{
        regionName: current.then(current => current.name),
    }]});
    const exampleVpcIpamPool = new aws.ec2.VpcIpamPool("example", {
        addressFamily: "ipv4",
        ipamScopeId: example.privateDefaultScopeId,
        locale: current.then(current => current.name),
    });
    const exampleVpcIpamPoolCidr = new aws.ec2.VpcIpamPoolCidr("example", {
        ipamPoolId: exampleVpcIpamPool.id,
        cidr: "172.20.0.0/16",
    });
    
    import pulumi
    import pulumi_aws as aws
    
    current = aws.get_region()
    example = aws.ec2.VpcIpam("example", operating_regions=[{
        "region_name": current.name,
    }])
    example_vpc_ipam_pool = aws.ec2.VpcIpamPool("example",
        address_family="ipv4",
        ipam_scope_id=example.private_default_scope_id,
        locale=current.name)
    example_vpc_ipam_pool_cidr = aws.ec2.VpcIpamPoolCidr("example",
        ipam_pool_id=example_vpc_ipam_pool.id,
        cidr="172.20.0.0/16")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		current, err := aws.GetRegion(ctx, &aws.GetRegionArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		example, err := ec2.NewVpcIpam(ctx, "example", &ec2.VpcIpamArgs{
    			OperatingRegions: ec2.VpcIpamOperatingRegionArray{
    				&ec2.VpcIpamOperatingRegionArgs{
    					RegionName: pulumi.String(current.Name),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		exampleVpcIpamPool, err := ec2.NewVpcIpamPool(ctx, "example", &ec2.VpcIpamPoolArgs{
    			AddressFamily: pulumi.String("ipv4"),
    			IpamScopeId:   example.PrivateDefaultScopeId,
    			Locale:        pulumi.String(current.Name),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = ec2.NewVpcIpamPoolCidr(ctx, "example", &ec2.VpcIpamPoolCidrArgs{
    			IpamPoolId: exampleVpcIpamPool.ID(),
    			Cidr:       pulumi.String("172.20.0.0/16"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var current = Aws.GetRegion.Invoke();
    
        var example = new Aws.Ec2.VpcIpam("example", new()
        {
            OperatingRegions = new[]
            {
                new Aws.Ec2.Inputs.VpcIpamOperatingRegionArgs
                {
                    RegionName = current.Apply(getRegionResult => getRegionResult.Name),
                },
            },
        });
    
        var exampleVpcIpamPool = new Aws.Ec2.VpcIpamPool("example", new()
        {
            AddressFamily = "ipv4",
            IpamScopeId = example.PrivateDefaultScopeId,
            Locale = current.Apply(getRegionResult => getRegionResult.Name),
        });
    
        var exampleVpcIpamPoolCidr = new Aws.Ec2.VpcIpamPoolCidr("example", new()
        {
            IpamPoolId = exampleVpcIpamPool.Id,
            Cidr = "172.20.0.0/16",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.AwsFunctions;
    import com.pulumi.aws.inputs.GetRegionArgs;
    import com.pulumi.aws.ec2.VpcIpam;
    import com.pulumi.aws.ec2.VpcIpamArgs;
    import com.pulumi.aws.ec2.inputs.VpcIpamOperatingRegionArgs;
    import com.pulumi.aws.ec2.VpcIpamPool;
    import com.pulumi.aws.ec2.VpcIpamPoolArgs;
    import com.pulumi.aws.ec2.VpcIpamPoolCidr;
    import com.pulumi.aws.ec2.VpcIpamPoolCidrArgs;
    import java.util.List;
    import java.util.ArrayList;
    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) {
            final var current = AwsFunctions.getRegion();
    
            var example = new VpcIpam("example", VpcIpamArgs.builder()
                .operatingRegions(VpcIpamOperatingRegionArgs.builder()
                    .regionName(current.applyValue(getRegionResult -> getRegionResult.name()))
                    .build())
                .build());
    
            var exampleVpcIpamPool = new VpcIpamPool("exampleVpcIpamPool", VpcIpamPoolArgs.builder()
                .addressFamily("ipv4")
                .ipamScopeId(example.privateDefaultScopeId())
                .locale(current.applyValue(getRegionResult -> getRegionResult.name()))
                .build());
    
            var exampleVpcIpamPoolCidr = new VpcIpamPoolCidr("exampleVpcIpamPoolCidr", VpcIpamPoolCidrArgs.builder()
                .ipamPoolId(exampleVpcIpamPool.id())
                .cidr("172.20.0.0/16")
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:ec2:VpcIpam
        properties:
          operatingRegions:
            - regionName: ${current.name}
      exampleVpcIpamPool:
        type: aws:ec2:VpcIpamPool
        name: example
        properties:
          addressFamily: ipv4
          ipamScopeId: ${example.privateDefaultScopeId}
          locale: ${current.name}
      exampleVpcIpamPoolCidr:
        type: aws:ec2:VpcIpamPoolCidr
        name: example
        properties:
          ipamPoolId: ${exampleVpcIpamPool.id}
          cidr: 172.20.0.0/16
    variables:
      current:
        fn::invoke:
          Function: aws:getRegion
          Arguments: {}
    

    Provision Public IPv6 Pool CIDRs:

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const current = aws.getRegion({});
    const example = new aws.ec2.VpcIpam("example", {operatingRegions: [{
        regionName: current.then(current => current.name),
    }]});
    const ipv6TestPublic = new aws.ec2.VpcIpamPool("ipv6_test_public", {
        addressFamily: "ipv6",
        ipamScopeId: example.publicDefaultScopeId,
        locale: "us-east-1",
        description: "public ipv6",
        publiclyAdvertisable: false,
        publicIpSource: "amazon",
        awsService: "ec2",
    });
    const ipv6TestPublicVpcIpamPoolCidr = new aws.ec2.VpcIpamPoolCidr("ipv6_test_public", {
        ipamPoolId: ipv6TestPublic.id,
        netmaskLength: 52,
    });
    
    import pulumi
    import pulumi_aws as aws
    
    current = aws.get_region()
    example = aws.ec2.VpcIpam("example", operating_regions=[{
        "region_name": current.name,
    }])
    ipv6_test_public = aws.ec2.VpcIpamPool("ipv6_test_public",
        address_family="ipv6",
        ipam_scope_id=example.public_default_scope_id,
        locale="us-east-1",
        description="public ipv6",
        publicly_advertisable=False,
        public_ip_source="amazon",
        aws_service="ec2")
    ipv6_test_public_vpc_ipam_pool_cidr = aws.ec2.VpcIpamPoolCidr("ipv6_test_public",
        ipam_pool_id=ipv6_test_public.id,
        netmask_length=52)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		current, err := aws.GetRegion(ctx, &aws.GetRegionArgs{}, nil)
    		if err != nil {
    			return err
    		}
    		example, err := ec2.NewVpcIpam(ctx, "example", &ec2.VpcIpamArgs{
    			OperatingRegions: ec2.VpcIpamOperatingRegionArray{
    				&ec2.VpcIpamOperatingRegionArgs{
    					RegionName: pulumi.String(current.Name),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		ipv6TestPublic, err := ec2.NewVpcIpamPool(ctx, "ipv6_test_public", &ec2.VpcIpamPoolArgs{
    			AddressFamily:        pulumi.String("ipv6"),
    			IpamScopeId:          example.PublicDefaultScopeId,
    			Locale:               pulumi.String("us-east-1"),
    			Description:          pulumi.String("public ipv6"),
    			PubliclyAdvertisable: pulumi.Bool(false),
    			PublicIpSource:       pulumi.String("amazon"),
    			AwsService:           pulumi.String("ec2"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = ec2.NewVpcIpamPoolCidr(ctx, "ipv6_test_public", &ec2.VpcIpamPoolCidrArgs{
    			IpamPoolId:    ipv6TestPublic.ID(),
    			NetmaskLength: pulumi.Int(52),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var current = Aws.GetRegion.Invoke();
    
        var example = new Aws.Ec2.VpcIpam("example", new()
        {
            OperatingRegions = new[]
            {
                new Aws.Ec2.Inputs.VpcIpamOperatingRegionArgs
                {
                    RegionName = current.Apply(getRegionResult => getRegionResult.Name),
                },
            },
        });
    
        var ipv6TestPublic = new Aws.Ec2.VpcIpamPool("ipv6_test_public", new()
        {
            AddressFamily = "ipv6",
            IpamScopeId = example.PublicDefaultScopeId,
            Locale = "us-east-1",
            Description = "public ipv6",
            PubliclyAdvertisable = false,
            PublicIpSource = "amazon",
            AwsService = "ec2",
        });
    
        var ipv6TestPublicVpcIpamPoolCidr = new Aws.Ec2.VpcIpamPoolCidr("ipv6_test_public", new()
        {
            IpamPoolId = ipv6TestPublic.Id,
            NetmaskLength = 52,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.AwsFunctions;
    import com.pulumi.aws.inputs.GetRegionArgs;
    import com.pulumi.aws.ec2.VpcIpam;
    import com.pulumi.aws.ec2.VpcIpamArgs;
    import com.pulumi.aws.ec2.inputs.VpcIpamOperatingRegionArgs;
    import com.pulumi.aws.ec2.VpcIpamPool;
    import com.pulumi.aws.ec2.VpcIpamPoolArgs;
    import com.pulumi.aws.ec2.VpcIpamPoolCidr;
    import com.pulumi.aws.ec2.VpcIpamPoolCidrArgs;
    import java.util.List;
    import java.util.ArrayList;
    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) {
            final var current = AwsFunctions.getRegion();
    
            var example = new VpcIpam("example", VpcIpamArgs.builder()
                .operatingRegions(VpcIpamOperatingRegionArgs.builder()
                    .regionName(current.applyValue(getRegionResult -> getRegionResult.name()))
                    .build())
                .build());
    
            var ipv6TestPublic = new VpcIpamPool("ipv6TestPublic", VpcIpamPoolArgs.builder()
                .addressFamily("ipv6")
                .ipamScopeId(example.publicDefaultScopeId())
                .locale("us-east-1")
                .description("public ipv6")
                .publiclyAdvertisable(false)
                .publicIpSource("amazon")
                .awsService("ec2")
                .build());
    
            var ipv6TestPublicVpcIpamPoolCidr = new VpcIpamPoolCidr("ipv6TestPublicVpcIpamPoolCidr", VpcIpamPoolCidrArgs.builder()
                .ipamPoolId(ipv6TestPublic.id())
                .netmaskLength(52)
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:ec2:VpcIpam
        properties:
          operatingRegions:
            - regionName: ${current.name}
      ipv6TestPublic:
        type: aws:ec2:VpcIpamPool
        name: ipv6_test_public
        properties:
          addressFamily: ipv6
          ipamScopeId: ${example.publicDefaultScopeId}
          locale: us-east-1
          description: public ipv6
          publiclyAdvertisable: false
          publicIpSource: amazon
          awsService: ec2
      ipv6TestPublicVpcIpamPoolCidr:
        type: aws:ec2:VpcIpamPoolCidr
        name: ipv6_test_public
        properties:
          ipamPoolId: ${ipv6TestPublic.id}
          netmaskLength: 52
    variables:
      current:
        fn::invoke:
          Function: aws:getRegion
          Arguments: {}
    

    Create VpcIpamPoolCidr Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new VpcIpamPoolCidr(name: string, args: VpcIpamPoolCidrArgs, opts?: CustomResourceOptions);
    @overload
    def VpcIpamPoolCidr(resource_name: str,
                        args: VpcIpamPoolCidrArgs,
                        opts: Optional[ResourceOptions] = None)
    
    @overload
    def VpcIpamPoolCidr(resource_name: str,
                        opts: Optional[ResourceOptions] = None,
                        ipam_pool_id: Optional[str] = None,
                        cidr: Optional[str] = None,
                        cidr_authorization_context: Optional[VpcIpamPoolCidrCidrAuthorizationContextArgs] = None,
                        netmask_length: Optional[int] = None)
    func NewVpcIpamPoolCidr(ctx *Context, name string, args VpcIpamPoolCidrArgs, opts ...ResourceOption) (*VpcIpamPoolCidr, error)
    public VpcIpamPoolCidr(string name, VpcIpamPoolCidrArgs args, CustomResourceOptions? opts = null)
    public VpcIpamPoolCidr(String name, VpcIpamPoolCidrArgs args)
    public VpcIpamPoolCidr(String name, VpcIpamPoolCidrArgs args, CustomResourceOptions options)
    
    type: aws:ec2:VpcIpamPoolCidr
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args VpcIpamPoolCidrArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args VpcIpamPoolCidrArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args VpcIpamPoolCidrArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VpcIpamPoolCidrArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VpcIpamPoolCidrArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var vpcIpamPoolCidrResource = new Aws.Ec2.VpcIpamPoolCidr("vpcIpamPoolCidrResource", new()
    {
        IpamPoolId = "string",
        Cidr = "string",
        CidrAuthorizationContext = new Aws.Ec2.Inputs.VpcIpamPoolCidrCidrAuthorizationContextArgs
        {
            Message = "string",
            Signature = "string",
        },
        NetmaskLength = 0,
    });
    
    example, err := ec2.NewVpcIpamPoolCidr(ctx, "vpcIpamPoolCidrResource", &ec2.VpcIpamPoolCidrArgs{
    	IpamPoolId: pulumi.String("string"),
    	Cidr:       pulumi.String("string"),
    	CidrAuthorizationContext: &ec2.VpcIpamPoolCidrCidrAuthorizationContextArgs{
    		Message:   pulumi.String("string"),
    		Signature: pulumi.String("string"),
    	},
    	NetmaskLength: pulumi.Int(0),
    })
    
    var vpcIpamPoolCidrResource = new VpcIpamPoolCidr("vpcIpamPoolCidrResource", VpcIpamPoolCidrArgs.builder()
        .ipamPoolId("string")
        .cidr("string")
        .cidrAuthorizationContext(VpcIpamPoolCidrCidrAuthorizationContextArgs.builder()
            .message("string")
            .signature("string")
            .build())
        .netmaskLength(0)
        .build());
    
    vpc_ipam_pool_cidr_resource = aws.ec2.VpcIpamPoolCidr("vpcIpamPoolCidrResource",
        ipam_pool_id="string",
        cidr="string",
        cidr_authorization_context={
            "message": "string",
            "signature": "string",
        },
        netmask_length=0)
    
    const vpcIpamPoolCidrResource = new aws.ec2.VpcIpamPoolCidr("vpcIpamPoolCidrResource", {
        ipamPoolId: "string",
        cidr: "string",
        cidrAuthorizationContext: {
            message: "string",
            signature: "string",
        },
        netmaskLength: 0,
    });
    
    type: aws:ec2:VpcIpamPoolCidr
    properties:
        cidr: string
        cidrAuthorizationContext:
            message: string
            signature: string
        ipamPoolId: string
        netmaskLength: 0
    

    VpcIpamPoolCidr Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The VpcIpamPoolCidr resource accepts the following input properties:

    IpamPoolId string
    The ID of the pool to which you want to assign a CIDR.
    Cidr string
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    CidrAuthorizationContext VpcIpamPoolCidrCidrAuthorizationContext
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    NetmaskLength int
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    IpamPoolId string
    The ID of the pool to which you want to assign a CIDR.
    Cidr string
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    CidrAuthorizationContext VpcIpamPoolCidrCidrAuthorizationContextArgs
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    NetmaskLength int
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    ipamPoolId String
    The ID of the pool to which you want to assign a CIDR.
    cidr String
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    cidrAuthorizationContext VpcIpamPoolCidrCidrAuthorizationContext
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    netmaskLength Integer
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    ipamPoolId string
    The ID of the pool to which you want to assign a CIDR.
    cidr string
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    cidrAuthorizationContext VpcIpamPoolCidrCidrAuthorizationContext
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    netmaskLength number
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    ipam_pool_id str
    The ID of the pool to which you want to assign a CIDR.
    cidr str
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    cidr_authorization_context VpcIpamPoolCidrCidrAuthorizationContextArgs
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    netmask_length int
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    ipamPoolId String
    The ID of the pool to which you want to assign a CIDR.
    cidr String
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    cidrAuthorizationContext Property Map
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    netmaskLength Number
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VpcIpamPoolCidr resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    IpamPoolCidrId string
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    Id string
    The provider-assigned unique ID for this managed resource.
    IpamPoolCidrId string
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    id String
    The provider-assigned unique ID for this managed resource.
    ipamPoolCidrId String
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    id string
    The provider-assigned unique ID for this managed resource.
    ipamPoolCidrId string
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    id str
    The provider-assigned unique ID for this managed resource.
    ipam_pool_cidr_id str
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    id String
    The provider-assigned unique ID for this managed resource.
    ipamPoolCidrId String
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.

    Look up Existing VpcIpamPoolCidr Resource

    Get an existing VpcIpamPoolCidr resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: VpcIpamPoolCidrState, opts?: CustomResourceOptions): VpcIpamPoolCidr
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            cidr: Optional[str] = None,
            cidr_authorization_context: Optional[VpcIpamPoolCidrCidrAuthorizationContextArgs] = None,
            ipam_pool_cidr_id: Optional[str] = None,
            ipam_pool_id: Optional[str] = None,
            netmask_length: Optional[int] = None) -> VpcIpamPoolCidr
    func GetVpcIpamPoolCidr(ctx *Context, name string, id IDInput, state *VpcIpamPoolCidrState, opts ...ResourceOption) (*VpcIpamPoolCidr, error)
    public static VpcIpamPoolCidr Get(string name, Input<string> id, VpcIpamPoolCidrState? state, CustomResourceOptions? opts = null)
    public static VpcIpamPoolCidr get(String name, Output<String> id, VpcIpamPoolCidrState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Cidr string
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    CidrAuthorizationContext VpcIpamPoolCidrCidrAuthorizationContext
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    IpamPoolCidrId string
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    IpamPoolId string
    The ID of the pool to which you want to assign a CIDR.
    NetmaskLength int
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    Cidr string
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    CidrAuthorizationContext VpcIpamPoolCidrCidrAuthorizationContextArgs
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    IpamPoolCidrId string
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    IpamPoolId string
    The ID of the pool to which you want to assign a CIDR.
    NetmaskLength int
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    cidr String
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    cidrAuthorizationContext VpcIpamPoolCidrCidrAuthorizationContext
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    ipamPoolCidrId String
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    ipamPoolId String
    The ID of the pool to which you want to assign a CIDR.
    netmaskLength Integer
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    cidr string
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    cidrAuthorizationContext VpcIpamPoolCidrCidrAuthorizationContext
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    ipamPoolCidrId string
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    ipamPoolId string
    The ID of the pool to which you want to assign a CIDR.
    netmaskLength number
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    cidr str
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    cidr_authorization_context VpcIpamPoolCidrCidrAuthorizationContextArgs
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    ipam_pool_cidr_id str
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    ipam_pool_id str
    The ID of the pool to which you want to assign a CIDR.
    netmask_length int
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.
    cidr String
    The CIDR you want to assign to the pool. Conflicts with netmask_length.
    cidrAuthorizationContext Property Map
    A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP. This is not stored in the state file. See cidr_authorization_context for more information.
    ipamPoolCidrId String
    The unique ID generated by AWS for the pool cidr. Typically this is the resource id but this attribute was added to the API calls after the fact and is therefore not used as the resource id.
    ipamPoolId String
    The ID of the pool to which you want to assign a CIDR.
    netmaskLength Number
    If provided, the cidr provisioned into the specified pool will be the next available cidr given this declared netmask length. Conflicts with cidr.

    Supporting Types

    VpcIpamPoolCidrCidrAuthorizationContext, VpcIpamPoolCidrCidrAuthorizationContextArgs

    Message string
    The plain-text authorization message for the prefix and account.
    Signature string
    The signed authorization message for the prefix and account.
    Message string
    The plain-text authorization message for the prefix and account.
    Signature string
    The signed authorization message for the prefix and account.
    message String
    The plain-text authorization message for the prefix and account.
    signature String
    The signed authorization message for the prefix and account.
    message string
    The plain-text authorization message for the prefix and account.
    signature string
    The signed authorization message for the prefix and account.
    message str
    The plain-text authorization message for the prefix and account.
    signature str
    The signed authorization message for the prefix and account.
    message String
    The plain-text authorization message for the prefix and account.
    signature String
    The signed authorization message for the prefix and account.

    Import

    Using pulumi import, import IPAMs using the <cidr>_<ipam-pool-id>. For example:

    NOTE: Do not use the IPAM Pool Cidr ID as this was introduced after the resource already existed.

    $ pulumi import aws:ec2/vpcIpamPoolCidr:VpcIpamPoolCidr example 172.20.0.0/24_ipam-pool-0e634f5a1517cccdc
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    AWS v6.60.0 published on Tuesday, Nov 19, 2024 by Pulumi