1. Packages
  2. Packet
  3. API Docs
  4. getIpBlockRanges
Packet v3.2.2 published on Thursday, Nov 12, 2020 by Pulumi

packet.getIpBlockRanges

Explore with Pulumi AI

packet logo
Packet v3.2.2 published on Thursday, Nov 12, 2020 by Pulumi

    Use this datasource to get CIDR expressions for allocated IP blocks of all the types in a project, optionally filtered by facility.

    There are four types of IP blocks in Packet: global IPv4, public IPv4, private IPv4 and IPv6. Both global and public IPv4 are routable from the Internet. Public IPv4 block is allocated in a facility, and addresses from it can only be assigned to devices in that facility. Addresses from Global IPv4 block can be assigned to a device in any facility.

    The datasource has 4 list attributes: global_ipv4, public_ipv4, private_ipv4 and ipv6, each listing CIDR notation (<network>/<mask>) of respective blocks from the project.

    Example Usage

    using Pulumi;
    using Packet = Pulumi.Packet;
    
    class MyStack : Stack
    {
        public MyStack()
        {
            var projectId = "<UUID_of_your_project>";
            var test = Output.Create(Packet.GetIpBlockRanges.InvokeAsync(new Packet.GetIpBlockRangesArgs
            {
                ProjectId = projectId,
            }));
            this.Out = test;
        }
    
        [Output("out")]
        public Output<string> Out { get; set; }
    }
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-packet/sdk/v3/go/packet"
    	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		projectId := "<UUID_of_your_project>"
    		test, err := packet.GetIpBlockRanges(ctx, &packet.GetIpBlockRangesArgs{
    			ProjectId: projectId,
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("out", test)
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    import pulumi_packet as packet
    
    project_id = "<UUID_of_your_project>"
    test = packet.get_ip_block_ranges(project_id=project_id)
    pulumi.export("out", test)
    
    import * as pulumi from "@pulumi/pulumi";
    import * as packet from "@pulumi/packet";
    
    const projectId = "<UUID_of_your_project>";
    const test = packet.getIpBlockRanges({
        projectId: projectId,
    });
    export const out = test;
    

    Coming soon!

    Using getIpBlockRanges

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getIpBlockRanges(args: GetIpBlockRangesArgs, opts?: InvokeOptions): Promise<GetIpBlockRangesResult>
    function getIpBlockRangesOutput(args: GetIpBlockRangesOutputArgs, opts?: InvokeOptions): Output<GetIpBlockRangesResult>
    def get_ip_block_ranges(facility: Optional[str] = None,
                            project_id: Optional[str] = None,
                            opts: Optional[InvokeOptions] = None) -> GetIpBlockRangesResult
    def get_ip_block_ranges_output(facility: Optional[pulumi.Input[str]] = None,
                            project_id: Optional[pulumi.Input[str]] = None,
                            opts: Optional[InvokeOptions] = None) -> Output[GetIpBlockRangesResult]
    func GetIpBlockRanges(ctx *Context, args *GetIpBlockRangesArgs, opts ...InvokeOption) (*GetIpBlockRangesResult, error)
    func GetIpBlockRangesOutput(ctx *Context, args *GetIpBlockRangesOutputArgs, opts ...InvokeOption) GetIpBlockRangesResultOutput

    > Note: This function is named GetIpBlockRanges in the Go SDK.

    public static class GetIpBlockRanges 
    {
        public static Task<GetIpBlockRangesResult> InvokeAsync(GetIpBlockRangesArgs args, InvokeOptions? opts = null)
        public static Output<GetIpBlockRangesResult> Invoke(GetIpBlockRangesInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetIpBlockRangesResult> getIpBlockRanges(GetIpBlockRangesArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: packet:index/getIpBlockRanges:getIpBlockRanges
      arguments:
        # arguments dictionary

    The following arguments are supported:

    ProjectId string
    ID of the project from which to list the blocks.
    Facility string
    Facility code filtering the IP blocks. Global IPv4 blcoks will be listed anyway. If you omit this, all the block from the project will be listed.
    ProjectId string
    ID of the project from which to list the blocks.
    Facility string
    Facility code filtering the IP blocks. Global IPv4 blcoks will be listed anyway. If you omit this, all the block from the project will be listed.
    projectId String
    ID of the project from which to list the blocks.
    facility String
    Facility code filtering the IP blocks. Global IPv4 blcoks will be listed anyway. If you omit this, all the block from the project will be listed.
    projectId string
    ID of the project from which to list the blocks.
    facility string
    Facility code filtering the IP blocks. Global IPv4 blcoks will be listed anyway. If you omit this, all the block from the project will be listed.
    project_id str
    ID of the project from which to list the blocks.
    facility str
    Facility code filtering the IP blocks. Global IPv4 blcoks will be listed anyway. If you omit this, all the block from the project will be listed.
    projectId String
    ID of the project from which to list the blocks.
    facility String
    Facility code filtering the IP blocks. Global IPv4 blcoks will be listed anyway. If you omit this, all the block from the project will be listed.

    getIpBlockRanges Result

    The following output properties are available:

    GlobalIpv4s List<string>
    list of CIDR expressions for Global IPv4 blocks in the project
    Id string
    The provider-assigned unique ID for this managed resource.
    Ipv6s List<string>
    list of CIDR expressions for IPv6 blocks in the project
    PrivateIpv4s List<string>
    list of CIDR expressions for Private IPv4 blocks in the project
    ProjectId string
    PublicIpv4s List<string>
    list of CIDR expressions for Public IPv4 blocks in the project
    Facility string
    GlobalIpv4s []string
    list of CIDR expressions for Global IPv4 blocks in the project
    Id string
    The provider-assigned unique ID for this managed resource.
    Ipv6s []string
    list of CIDR expressions for IPv6 blocks in the project
    PrivateIpv4s []string
    list of CIDR expressions for Private IPv4 blocks in the project
    ProjectId string
    PublicIpv4s []string
    list of CIDR expressions for Public IPv4 blocks in the project
    Facility string
    globalIpv4s List<String>
    list of CIDR expressions for Global IPv4 blocks in the project
    id String
    The provider-assigned unique ID for this managed resource.
    ipv6s List<String>
    list of CIDR expressions for IPv6 blocks in the project
    privateIpv4s List<String>
    list of CIDR expressions for Private IPv4 blocks in the project
    projectId String
    publicIpv4s List<String>
    list of CIDR expressions for Public IPv4 blocks in the project
    facility String
    globalIpv4s string[]
    list of CIDR expressions for Global IPv4 blocks in the project
    id string
    The provider-assigned unique ID for this managed resource.
    ipv6s string[]
    list of CIDR expressions for IPv6 blocks in the project
    privateIpv4s string[]
    list of CIDR expressions for Private IPv4 blocks in the project
    projectId string
    publicIpv4s string[]
    list of CIDR expressions for Public IPv4 blocks in the project
    facility string
    global_ipv4s Sequence[str]
    list of CIDR expressions for Global IPv4 blocks in the project
    id str
    The provider-assigned unique ID for this managed resource.
    ipv6s Sequence[str]
    list of CIDR expressions for IPv6 blocks in the project
    private_ipv4s Sequence[str]
    list of CIDR expressions for Private IPv4 blocks in the project
    project_id str
    public_ipv4s Sequence[str]
    list of CIDR expressions for Public IPv4 blocks in the project
    facility str
    globalIpv4s List<String>
    list of CIDR expressions for Global IPv4 blocks in the project
    id String
    The provider-assigned unique ID for this managed resource.
    ipv6s List<String>
    list of CIDR expressions for IPv6 blocks in the project
    privateIpv4s List<String>
    list of CIDR expressions for Private IPv4 blocks in the project
    projectId String
    publicIpv4s List<String>
    list of CIDR expressions for Public IPv4 blocks in the project
    facility String

    Package Details

    Repository
    Packet pulumi/pulumi-packet
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the packet Terraform Provider.
    packet logo
    Packet v3.2.2 published on Thursday, Nov 12, 2020 by Pulumi