Package pulumi_packet

Pulumi Packet

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-packet repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-packet repo.
class pulumi_packet.AwaitableGetOperatingSystemResult(distro=None, name=None, provisionable_on=None, slug=None, version=None, id=None)
class pulumi_packet.AwaitableGetPrecreatedIpBlockResult(address=None, address_family=None, cidr=None, cidr_notation=None, facility=None, gateway=None, global_=None, manageable=None, management=None, netmask=None, network=None, project_id=None, public=None, quantity=None, id=None)
class pulumi_packet.AwaitableGetSpotMarketPriceResult(facility=None, plan=None, price=None, id=None)
class pulumi_packet.BgpSession(resource_name, opts=None, address_family=None, default_route=None, device_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage BGP sessions in Packet Host. Refer to Packet BGP documentation for more details.

You need to have BGP config enabled in your project.

BGP session must be linked to a device running BIRD or other BGP routing daemon which will control route advertisements via the session to Packet’s upstream routers.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • address_family (pulumi.Input[str]) – ipv4 or ipv6
  • default_route (pulumi.Input[bool]) – Boolean flag to set the default route policy. False by default.
  • device_id (pulumi.Input[str]) – ID of device
address_family = None

ipv4 or ipv6

default_route = None

Boolean flag to set the default route policy. False by default.

device_id = None

ID of device

static get(resource_name, id, opts=None, address_family=None, default_route=None, device_id=None, status=None)

Get an existing BgpSession resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] address_family: ipv4 or ipv6 :param pulumi.Input[bool] default_route: Boolean flag to set the default route policy. False by default. :param pulumi.Input[str] device_id: ID of device

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.Connect(resource_name, opts=None, facility=None, name=None, port_speed=None, project_id=None, provider_id=None, provider_payload=None, vxlan=None, __props__=None, __name__=None, __opts__=None)

Provides a resource for Packet Connect, a link between Packet VLANs and VLANs in other cloud providers.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • facility (pulumi.Input[str]) – Facility where to create the VLAN
  • name (pulumi.Input[str]) – Name for the Connect resource
  • port_speed (pulumi.Input[float]) – Port speed in Mbps
  • project_id (pulumi.Input[str]) – ID of parent project
  • provider_id (pulumi.Input[str]) – ID of Connect Provider. Provider IDs are
Parameters:
  • provider_payload (pulumi.Input[str]) – Authorization key for the Connect provider
  • vxlan (pulumi.Input[float]) – VXLAN Network identifier of the linked Packet VLAN
facility = None

Facility where to create the VLAN

name = None

Name for the Connect resource

port_speed = None

Port speed in Mbps

project_id = None

ID of parent project

provider_id = None

ID of Connect Provider. Provider IDs are

  • Azure ExpressRoute - “ed5de8e0-77a9-4d3b-9de0-65281d3aa831”
provider_payload = None

Authorization key for the Connect provider

status = None

Status of the Connect resource, one of PROVISIONING, PROVISIONED, DEPROVISIONING, DEPROVISIONED

vxlan = None

VXLAN Network identifier of the linked Packet VLAN

static get(resource_name, id, opts=None, facility=None, name=None, port_speed=None, project_id=None, provider_id=None, provider_payload=None, status=None, vxlan=None)

Get an existing Connect resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] facility: Facility where to create the VLAN :param pulumi.Input[str] name: Name for the Connect resource :param pulumi.Input[float] port_speed: Port speed in Mbps :param pulumi.Input[str] project_id: ID of parent project :param pulumi.Input[str] provider_id: ID of Connect Provider. Provider IDs are

Parameters:
  • provider_payload (pulumi.Input[str]) – Authorization key for the Connect provider
  • status (pulumi.Input[str]) – Status of the Connect resource, one of PROVISIONING, PROVISIONED, DEPROVISIONING, DEPROVISIONED
  • vxlan (pulumi.Input[float]) – VXLAN Network identifier of the linked Packet VLAN
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.Device(resource_name, opts=None, always_pxe=None, billing_cycle=None, description=None, facilities=None, hardware_reservation_id=None, hostname=None, ip_address_types=None, ipxe_script_url=None, network_type=None, operating_system=None, plan=None, project_id=None, project_ssh_key_ids=None, public_ipv4_subnet_size=None, storage=None, tags=None, user_data=None, wait_for_reservation_deprovision=None, __props__=None, __name__=None, __opts__=None)

Provides a Packet device resource. This can be used to create, modify, and delete devices.

Note: All arguments including the root_password and user_data will be stored in
the raw state as plain-text.

Read more about sensitive data in state.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • always_pxe (pulumi.Input[bool]) – If true, a device with OS custom_ipxe will continue to boot via iPXE on reboots.
  • billing_cycle (pulumi.Input[str]) – monthly or hourly
  • description (pulumi.Input[str]) – Description string for the device
  • facilities (pulumi.Input[list]) – List of facility codes with deployment preferences. Packet API will go through the list and will deploy your device to first facility with free capacity. List items must be facility codes or any (a wildcard). To find the facility code, visit Facilities API docs, set your API auth token in the top of the page and see JSON from the API response.
  • hardware_reservation_id (pulumi.Input[str]) – The id of hardware reservation where you want this device deployed, or next-available if you want to pick your next available reservation automatically.
  • hostname (pulumi.Input[str]) – The device name
  • ip_address_types (pulumi.Input[list]) – A set containing one or more of [private_ipv4, public_ipv4, public_ipv6]. It specifies which IP address types a new device should obtain. If omitted, a created device will obtain all 3 addresses. If you only want private IPv4 address for the new device, pass [private_ipv4].
  • ipxe_script_url (pulumi.Input[str]) – URL pointing to a hosted iPXE script. More information is in the Custom iPXE doc.
  • operating_system (pulumi.Input[str]) – The operating system slug. To find the slug, or visit Operating Systems API docs, set your API auth token in the top of the page and see JSON from the API response.
  • plan (pulumi.Input[str]) – The device plan slug. To find the plan slug, visit Device plans API docs, set your auth token in the top of the page and see JSON from the API response.
  • project_id (pulumi.Input[str]) – The id of the project in which to create the device
  • project_ssh_key_ids (pulumi.Input[list]) – Array of IDs of the project SSH keys which should be added to the device. If you omit this, SSH keys of all the members of the parent project will be added to the device. If you specify this array, only the listed project SSH keys will be added. Project SSH keys can be created with the [.ProjectSshKey][packet_project_ssh_key.html] resource.
  • public_ipv4_subnet_size (pulumi.Input[float]) – Size of allocated subnet, more information is in the Custom Subnet Size doc.
  • storage (pulumi.Input[str]) – JSON for custom partitioning. Only usable on reserved hardware. More information in in the Custom Partitioning and RAID doc.
  • tags (pulumi.Input[list]) – Tags attached to the device
  • user_data (pulumi.Input[str]) – A string of the desired User Data for the device.
  • wait_for_reservation_deprovision (pulumi.Input[bool]) – Only used for devices in reserved hardware. If set, the deletion of this device will block until the hardware reservation is marked provisionable (about 4 minutes in August 2019).
access_private_ipv4 = None

The ipv4 private IP assigned to the device

access_public_ipv4 = None

The ipv4 maintenance IP assigned to the device

access_public_ipv6 = None

The ipv6 maintenance IP assigned to the device

always_pxe = None

If true, a device with OS custom_ipxe will continue to boot via iPXE on reboots.

billing_cycle = None

monthly or hourly

created = None

The timestamp for when the device was created

deployed_facility = None

The facility where the device is deployed.

description = None

Description string for the device

facilities = None

List of facility codes with deployment preferences. Packet API will go through the list and will deploy your device to first facility with free capacity. List items must be facility codes or any (a wildcard). To find the facility code, visit Facilities API docs, set your API auth token in the top of the page and see JSON from the API response.

hardware_reservation_id = None

The id of hardware reservation where you want this device deployed, or next-available if you want to pick your next available reservation automatically.

hostname = None

The device name

ip_address_types = None

A set containing one or more of [private_ipv4, public_ipv4, public_ipv6]. It specifies which IP address types a new device should obtain. If omitted, a created device will obtain all 3 addresses. If you only want private IPv4 address for the new device, pass [private_ipv4].

ipxe_script_url = None

URL pointing to a hosted iPXE script. More information is in the Custom iPXE doc.

locked = None

Whether the device is locked

networks = None

The device’s private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks:

  • Public IPv4 at packet_device.name.network.0
  • IPv6 at packet_device.name.network.1
  • Private IPv4 at packet_device.name.network.2 Elastic addresses then stack by type - an assigned public IPv4 will go after the management public IPv4 (to index 1), and will then shift the indices of the IPv6 and private IPv4. Assigned private IPv4 will go after the management private IPv4 (to the end of the network list). The fields of the network attributes are:
operating_system = None

The operating system slug. To find the slug, or visit Operating Systems API docs, set your API auth token in the top of the page and see JSON from the API response.

plan = None

The device plan slug. To find the plan slug, visit Device plans API docs, set your auth token in the top of the page and see JSON from the API response.

ports = None

Ports assigned to the device

project_id = None

The id of the project in which to create the device

project_ssh_key_ids = None

Array of IDs of the project SSH keys which should be added to the device. If you omit this, SSH keys of all the members of the parent project will be added to the device. If you specify this array, only the listed project SSH keys will be added. Project SSH keys can be created with the [.ProjectSshKey][packet_project_ssh_key.html] resource.

public_ipv4_subnet_size = None

Size of allocated subnet, more information is in the Custom Subnet Size doc.

root_password = None

Root password to the server (disabled after 24 hours)

ssh_key_ids = None

List of IDs of SSH keys deployed in the device, can be both user and project SSH keys

state = None

The status of the device

storage = None

JSON for custom partitioning. Only usable on reserved hardware. More information in in the Custom Partitioning and RAID doc.

tags = None

Tags attached to the device

updated = None

The timestamp for the last time the device was updated

user_data = None

A string of the desired User Data for the device.

wait_for_reservation_deprovision = None

Only used for devices in reserved hardware. If set, the deletion of this device will block until the hardware reservation is marked provisionable (about 4 minutes in August 2019).

static get(resource_name, id, opts=None, access_private_ipv4=None, access_public_ipv4=None, access_public_ipv6=None, always_pxe=None, billing_cycle=None, created=None, deployed_facility=None, description=None, facilities=None, hardware_reservation_id=None, hostname=None, ip_address_types=None, ipxe_script_url=None, locked=None, networks=None, network_type=None, operating_system=None, plan=None, ports=None, project_id=None, project_ssh_key_ids=None, public_ipv4_subnet_size=None, root_password=None, ssh_key_ids=None, state=None, storage=None, tags=None, updated=None, user_data=None, wait_for_reservation_deprovision=None)

Get an existing Device resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] access_private_ipv4: The ipv4 private IP assigned to the device :param pulumi.Input[str] access_public_ipv4: The ipv4 maintenance IP assigned to the device :param pulumi.Input[str] access_public_ipv6: The ipv6 maintenance IP assigned to the device :param pulumi.Input[bool] always_pxe: If true, a device with OS custom_ipxe will

continue to boot via iPXE on reboots.
Parameters:
  • billing_cycle (pulumi.Input[str]) – monthly or hourly
  • created (pulumi.Input[str]) – The timestamp for when the device was created
  • deployed_facility (pulumi.Input[str]) – The facility where the device is deployed.
  • description (pulumi.Input[str]) – Description string for the device
  • facilities (pulumi.Input[list]) –

    List of facility codes with deployment preferences. Packet API will go through the list and will deploy your device to first facility with free capacity. List items must be facility codes or any (a wildcard). To find the facility code, visit Facilities API docs, set your API auth token in the top of the page and see JSON from the API response.

  • hardware_reservation_id (pulumi.Input[str]) – The id of hardware reservation where you want this device deployed, or next-available if you want to pick your next available reservation automatically.
  • hostname (pulumi.Input[str]) – The device name
  • ip_address_types (pulumi.Input[list]) – A set containing one or more of [private_ipv4, public_ipv4, public_ipv6]. It specifies which IP address types a new device should obtain. If omitted, a created device will obtain all 3 addresses. If you only want private IPv4 address for the new device, pass [private_ipv4].
  • ipxe_script_url (pulumi.Input[str]) –

    URL pointing to a hosted iPXE script. More information is in the Custom iPXE doc.

  • locked (pulumi.Input[bool]) – Whether the device is locked
  • networks (pulumi.Input[list]) – The device’s private and public IP (v4 and v6) network details. When a device is run without any special network configuration, it will have 3 networks:
Parameters:
  • operating_system (pulumi.Input[str]) –

    The operating system slug. To find the slug, or visit Operating Systems API docs, set your API auth token in the top of the page and see JSON from the API response.

  • plan (pulumi.Input[str]) –

    The device plan slug. To find the plan slug, visit Device plans API docs, set your auth token in the top of the page and see JSON from the API response.

  • ports (pulumi.Input[list]) – Ports assigned to the device
  • project_id (pulumi.Input[str]) – The id of the project in which to create the device
  • project_ssh_key_ids (pulumi.Input[list]) – Array of IDs of the project SSH keys which should be added to the device. If you omit this, SSH keys of all the members of the parent project will be added to the device. If you specify this array, only the listed project SSH keys will be added. Project SSH keys can be created with the [.ProjectSshKey][packet_project_ssh_key.html] resource.
  • public_ipv4_subnet_size (pulumi.Input[float]) –

    Size of allocated subnet, more information is in the Custom Subnet Size doc.

  • root_password (pulumi.Input[str]) – Root password to the server (disabled after 24 hours)
  • ssh_key_ids (pulumi.Input[list]) – List of IDs of SSH keys deployed in the device, can be both user and project SSH keys
  • state (pulumi.Input[str]) – The status of the device
  • storage (pulumi.Input[str]) –

    JSON for custom partitioning. Only usable on reserved hardware. More information in in the Custom Partitioning and RAID doc.

  • tags (pulumi.Input[list]) – Tags attached to the device
  • updated (pulumi.Input[str]) – The timestamp for the last time the device was updated
  • user_data (pulumi.Input[str]) – A string of the desired User Data for the device.
  • wait_for_reservation_deprovision (pulumi.Input[bool]) – Only used for devices in reserved hardware. If set, the deletion of this device will block until the hardware reservation is marked provisionable (about 4 minutes in August 2019).
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.GetOperatingSystemResult(distro=None, name=None, provisionable_on=None, slug=None, version=None, id=None)

A collection of values returned by getOperatingSystem.

slug = None

Operating system slug (same as id)

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_packet.GetPrecreatedIpBlockResult(address=None, address_family=None, cidr=None, cidr_notation=None, facility=None, gateway=None, global_=None, manageable=None, management=None, netmask=None, network=None, project_id=None, public=None, quantity=None, id=None)

A collection of values returned by getPrecreatedIpBlock.

cidr_notation = None

CIDR notation of the looked up block.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_packet.GetSpotMarketPriceResult(facility=None, plan=None, price=None, id=None)

A collection of values returned by getSpotMarketPrice.

price = None

Current spot market price for given plan in given facility.

id = None

id is the provider-assigned unique ID for this managed resource.

class pulumi_packet.IpAttachment(resource_name, opts=None, cidr_notation=None, device_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to attach elastic IP subnets to devices.

To attach an IP subnet from a reserved block to a provisioned device, you must derive a subnet CIDR belonging to one of your reserved blocks in the same project and facility as the target device.

For example, you have reserved IPv4 address block 147.229.10.152/30, you can choose to assign either the whole block as one subnet to a device; or 2 subnets with CIDRs 147.229.10.152/31’ and 147.229.10.154/31; or 4 subnets with mask prefix length 32. More about the elastic IP subnets is here.

Device and reserved block must be in the same facility.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • cidr_notation (pulumi.Input[str]) – CIDR notation of subnet from block reserved in the same project and facility as the device
  • device_id (pulumi.Input[str]) – ID of device to which to assign the subnet
address_family = None

Address family as integer (4 or 6)

cidr = None

length of CIDR prefix of the subnet as integer

cidr_notation = None

CIDR notation of subnet from block reserved in the same project and facility as the device

device_id = None

ID of device to which to assign the subnet

gateway = None

IP address of gateway for the subnet

netmask = None

Subnet mask in decimal notation, e.g. “255.255.255.0”

network = None

Subnet network address

public = None

boolean flag whether subnet is reachable from the Internet

static get(resource_name, id, opts=None, address=None, address_family=None, cidr=None, cidr_notation=None, device_id=None, gateway=None, global_=None, manageable=None, management=None, netmask=None, network=None, public=None)

Get an existing IpAttachment resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[float] address_family: Address family as integer (4 or 6) :param pulumi.Input[float] cidr: length of CIDR prefix of the subnet as integer :param pulumi.Input[str] cidr_notation: CIDR notation of subnet from block reserved in the same

project and facility as the device
Parameters:
  • device_id (pulumi.Input[str]) – ID of device to which to assign the subnet
  • gateway (pulumi.Input[str]) – IP address of gateway for the subnet
  • netmask (pulumi.Input[str]) – Subnet mask in decimal notation, e.g. “255.255.255.0”
  • network (pulumi.Input[str]) – Subnet network address
  • public (pulumi.Input[bool]) – boolean flag whether subnet is reachable from the Internet
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.Organization(resource_name, opts=None, description=None, logo=None, name=None, twitter=None, website=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage organization resource in Packet.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – Description string.
  • logo (pulumi.Input[str]) – Logo URL.
  • name (pulumi.Input[str]) – The name of the Organization.
  • twitter (pulumi.Input[str]) – Twitter handle.
  • website (pulumi.Input[str]) – Website link.
description = None

Description string.

Logo URL.

name = None

The name of the Organization.

twitter = None

Twitter handle.

website = None

Website link.

static get(resource_name, id, opts=None, created=None, description=None, logo=None, name=None, twitter=None, updated=None, website=None)

Get an existing Organization resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Description string. :param pulumi.Input[str] logo: Logo URL. :param pulumi.Input[str] name: The name of the Organization. :param pulumi.Input[str] twitter: Twitter handle. :param pulumi.Input[str] website: Website link.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.PortVlanAttachment(resource_name, opts=None, device_id=None, force_bond=None, native=None, port_name=None, vlan_vnid=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to attach device ports to VLANs.

Device and VLAN must be in the same facility.

If you need this resource to add the port back to bond on removal, set force_bond = true.

To learn more about Layer 2 networking in Packet, refer to

  • id - UUID of device port used in the assignment
  • vlan_id - UUID of VLAN API resource
  • port_id - UUID of device port
Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • device_id (pulumi.Input[str]) – ID of device to be assigned to the VLAN
  • force_bond (pulumi.Input[bool]) – Add port back to the bond when this resource is removed. Default is false.
  • native (pulumi.Input[bool]) – Mark this VLAN a native VLAN on the port. This can be used only if this assignment assigns second or further VLAN to the port. To ensure that this attachment is not first on a port, you can use depends_on pointing to another packet_port_vlan_attachment, just like in the layer2-individual example above.
  • port_name (pulumi.Input[str]) – Name of network port to be assigned to the VLAN
  • vlan_vnid (pulumi.Input[float]) – VXLAN Network Identifier, integer
device_id = None

ID of device to be assigned to the VLAN

force_bond = None

Add port back to the bond when this resource is removed. Default is false.

native = None

Mark this VLAN a native VLAN on the port. This can be used only if this assignment assigns second or further VLAN to the port. To ensure that this attachment is not first on a port, you can use depends_on pointing to another packet_port_vlan_attachment, just like in the layer2-individual example above.

port_name = None

Name of network port to be assigned to the VLAN

vlan_vnid = None

VXLAN Network Identifier, integer

static get(resource_name, id, opts=None, device_id=None, force_bond=None, native=None, port_id=None, port_name=None, vlan_id=None, vlan_vnid=None)

Get an existing PortVlanAttachment resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] device_id: ID of device to be assigned to the VLAN :param pulumi.Input[bool] force_bond: Add port back to the bond when this resource is removed. Default is false. :param pulumi.Input[bool] native: Mark this VLAN a native VLAN on the port. This can be used only if this assignment assigns second or further VLAN to the port. To ensure that this attachment is not first on a port, you can use depends_on pointing to another packet_port_vlan_attachment, just like in the layer2-individual example above. :param pulumi.Input[str] port_name: Name of network port to be assigned to the VLAN :param pulumi.Input[float] vlan_vnid: VXLAN Network Identifier, integer

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.Project(resource_name, opts=None, backend_transfer=None, bgp_config=None, name=None, organization_id=None, payment_method_id=None, __props__=None, __name__=None, __opts__=None)

Provides a Packet project resource to allow you manage devices in your projects.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • backend_transfer (pulumi.Input[bool]) – Enable or disable Backend Transfer, default is false
  • bgp_config (pulumi.Input[dict]) – Optional BGP settings. Refer to Packet guide for BGP.
  • name (pulumi.Input[str]) – The name of the project
  • organization_id (pulumi.Input[str]) – The UUID of organization under which you want to create the project. If you leave it out, the project will be create under your the default organization of your account.
  • payment_method_id (pulumi.Input[str]) – The UUID of payment method for this project. The payment method and the project need to belong to the same organization (passed with organization_id, or default).
backend_transfer = None

Enable or disable Backend Transfer, default is false

bgp_config = None

Optional BGP settings. Refer to Packet guide for BGP.

created = None

The timestamp for when the project was created

name = None

The name of the project

organization_id = None

The UUID of organization under which you want to create the project. If you leave it out, the project will be create under your the default organization of your account.

payment_method_id = None

The UUID of payment method for this project. The payment method and the project need to belong to the same organization (passed with organization_id, or default).

updated = None

The timestamp for the last time the project was updated

static get(resource_name, id, opts=None, backend_transfer=None, bgp_config=None, created=None, name=None, organization_id=None, payment_method_id=None, updated=None)

Get an existing Project resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[bool] backend_transfer: Enable or disable Backend Transfer, default is false :param pulumi.Input[dict] bgp_config: Optional BGP settings. Refer to Packet guide for BGP. :param pulumi.Input[str] created: The timestamp for when the project was created :param pulumi.Input[str] name: The name of the project :param pulumi.Input[str] organization_id: The UUID of organization under which you want to create the project. If you leave it out, the project will be create under your the default organization of your account. :param pulumi.Input[str] payment_method_id: The UUID of payment method for this project. The payment method and the project need to belong to the same organization (passed with organization_id, or default). :param pulumi.Input[str] updated: The timestamp for the last time the project was updated

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.ProjectSshKey(resource_name, opts=None, name=None, project_id=None, public_key=None, __props__=None, __name__=None, __opts__=None)

Provides a Packet project SSH key resource to manage project-specific SSH keys. On contrary to user SSH keys, project SSH keys are used to exclusively populate authorized_keys in new devices.

If you supply a list of project SSH keys when creating a new device, only the listed keys are used; user SSH keys are ignored.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • name (pulumi.Input[str]) – The name of the SSH key for identification
  • project_id (pulumi.Input[str]) – The ID of parent project
  • public_key (pulumi.Input[str]) – The public key. If this is a file, it can be read using the file interpolation function
created = None

The timestamp for when the SSH key was created

fingerprint = None

The fingerprint of the SSH key

name = None

The name of the SSH key for identification

project_id = None

The ID of parent project

public_key = None

The public key. If this is a file, it can be read using the file interpolation function

updated = None

The timestamp for the last time the SSH key was updated

static get(resource_name, id, opts=None, created=None, fingerprint=None, name=None, project_id=None, public_key=None, updated=None)

Get an existing ProjectSshKey resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] created: The timestamp for when the SSH key was created :param pulumi.Input[str] fingerprint: The fingerprint of the SSH key :param pulumi.Input[str] name: The name of the SSH key for identification :param pulumi.Input[str] project_id: The ID of parent project :param pulumi.Input[str] public_key: The public key. If this is a file, it can be read using the file interpolation function :param pulumi.Input[str] updated: The timestamp for the last time the SSH key was updated

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.Provider(resource_name, opts=None, auth_token=None, __props__=None, __name__=None, __opts__=None)

The provider type for the packet package. By default, resources use package-wide configuration settings, however an explicit Provider instance may be created and passed during resource construction to achieve fine-grained programmatic control over provider settings. See the documentation for more information.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
static get(resource_name, id, opts=None)

Get an existing Provider resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.ReservedIpBlock(resource_name, opts=None, facility=None, project_id=None, quantity=None, type=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to create and manage blocks of reserved IP addresses in a project.

When a user provisions first device in a facility, Packet API automatically allocates IPv6/56 and private IPv4/25 blocks. The new device then gets IPv6 and private IPv4 addresses from those block. It also gets a public IPv4/31 address. Every new device in the project and facility will automatically get IPv6 and private IPv4 addresses from these pre-allocated blocks. The IPv6 and private IPv4 blocks can’t be created, only imported. With this resource, it’s possible to create either public IPv4 blocks or global IPv4 blocks.

Public blocks are allocated in a facility. Addresses from public blocks can only be assigned to devices in the facility. Public blocks can have mask from /24 (256 addresses) to /32 (1 address). If you create public block with this resource, you must fill the facility argmument.

Addresses from global blocks can be assigned in any facility. Global blocks can have mask from /30 (4 addresses), to /32 (1 address). If you create global block with this resource, you must specify type = “global_ipv4” and you must omit the facility argument.

Once IP block is allocated or imported, an address from it can be assigned to device with the .IpAttachment resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • facility (pulumi.Input[str]) – Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4
  • project_id (pulumi.Input[str]) – The packet project ID where to allocate the address block
  • quantity (pulumi.Input[float]) – The number of allocated /32 addresses, a power of 2
  • type (pulumi.Input[str]) – Either “global_ipv4” or “public_ipv4”, defaults to “public_ipv4” for backward compatibility
address_family = None

Address family as integer (4 or 6)

cidr = None

length of CIDR prefix of the block as integer

cidr_notation = None

Address and mask in CIDR notation, e.g. “147.229.15.30/31”

facility = None

Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==global_ipv4

global_ = None

boolean flag whether addresses from a block are global (i.e. can be assigned in any facility)

netmask = None

Mask in decimal notation, e.g. “255.255.255.0”

network = None

Network IP address portion of the block specification

project_id = None

The packet project ID where to allocate the address block

public = None

boolean flag whether addresses from a block are public

quantity = None

The number of allocated /32 addresses, a power of 2

type = None

Either “global_ipv4” or “public_ipv4”, defaults to “public_ipv4” for backward compatibility

static get(resource_name, id, opts=None, address=None, address_family=None, cidr=None, cidr_notation=None, facility=None, gateway=None, global_=None, manageable=None, management=None, netmask=None, network=None, project_id=None, public=None, quantity=None, type=None)

Get an existing ReservedIpBlock resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[float] address_family: Address family as integer (4 or 6) :param pulumi.Input[float] cidr: length of CIDR prefix of the block as integer :param pulumi.Input[str] cidr_notation: Address and mask in CIDR notation, e.g. “147.229.15.30/31” :param pulumi.Input[str] facility: Facility where to allocate the public IP address block, makes sense only for type==public_ipv4, must be empty for type==globalipv4 :param pulumi.Input[bool] global: boolean flag whether addresses from a block are global (i.e. can be assigned in any facility) :param pulumi.Input[str] netmask: Mask in decimal notation, e.g. “255.255.255.0” :param pulumi.Input[str] network: Network IP address portion of the block specification :param pulumi.Input[str] project_id: The packet project ID where to allocate the address block :param pulumi.Input[bool] public: boolean flag whether addresses from a block are public :param pulumi.Input[float] quantity: The number of allocated /32 addresses, a power of 2 :param pulumi.Input[str] type: Either “global_ipv4” or “public_ipv4”, defaults to “public_ipv4” for backward compatibility

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.SpotMarketRequest(resource_name, opts=None, devices_max=None, devices_min=None, facilities=None, instance_parameters=None, max_bid_price=None, project_id=None, wait_for_devices=None, __props__=None, __name__=None, __opts__=None)

Provides a Packet Spot Market Request resource to allow you to manage spot market requests on your account. https://support.packet.com/kb/articles/spot-market

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • devices_max (pulumi.Input[float]) – Maximum number devices to be created
  • devices_min (pulumi.Input[float]) – Miniumum number devices to be created
  • facilities (pulumi.Input[list]) – Facility IDs where devices should be created
  • instance_parameters (pulumi.Input[dict]) – Device parameters. See device resource for details
  • max_bid_price (pulumi.Input[float]) – Maximum price user is willing to pay per hour per device
  • project_id (pulumi.Input[str]) – Project ID
  • wait_for_devices (pulumi.Input[bool]) – On resource creation - wait until all desired devices are active, on resource destruction - wait until devices are removed
devices_max = None

Maximum number devices to be created

devices_min = None

Miniumum number devices to be created

facilities = None

Facility IDs where devices should be created

instance_parameters = None

Device parameters. See device resource for details

max_bid_price = None

Maximum price user is willing to pay per hour per device

project_id = None

Project ID

wait_for_devices = None

On resource creation - wait until all desired devices are active, on resource destruction - wait until devices are removed

static get(resource_name, id, opts=None, devices_max=None, devices_min=None, facilities=None, instance_parameters=None, max_bid_price=None, project_id=None, wait_for_devices=None)

Get an existing SpotMarketRequest resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[float] devices_max: Maximum number devices to be created :param pulumi.Input[float] devices_min: Miniumum number devices to be created :param pulumi.Input[list] facilities: Facility IDs where devices should be created :param pulumi.Input[dict] instance_parameters: Device parameters. See device resource for details :param pulumi.Input[float] max_bid_price: Maximum price user is willing to pay per hour per device :param pulumi.Input[str] project_id: Project ID :param pulumi.Input[bool] wait_for_devices: On resource creation - wait until all desired devices are active, on resource destruction - wait until devices are removed

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.SshKey(resource_name, opts=None, name=None, public_key=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to manage User SSH keys on your Packet user account. If you create a new device in a project, all the keys of the project’s collaborators will be injected to the device.

The link between User SSH key and device is implicit. If you want to make sure that a key will be copied to a device, you must ensure that the device resource depends_on the key resource.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • name (pulumi.Input[str]) – The name of the SSH key for identification
  • public_key (pulumi.Input[str]) – The public key. If this is a file, it can be read using the file interpolation function
created = None

The timestamp for when the SSH key was created

fingerprint = None

The fingerprint of the SSH key

name = None

The name of the SSH key for identification

public_key = None

The public key. If this is a file, it can be read using the file interpolation function

updated = None

The timestamp for the last time the SSH key was updated

static get(resource_name, id, opts=None, created=None, fingerprint=None, name=None, public_key=None, updated=None)

Get an existing SshKey resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] created: The timestamp for when the SSH key was created :param pulumi.Input[str] fingerprint: The fingerprint of the SSH key :param pulumi.Input[str] name: The name of the SSH key for identification :param pulumi.Input[str] public_key: The public key. If this is a file, it

can be read using the file interpolation function
Parameters:updated (pulumi.Input[str]) – The timestamp for the last time the SSH key was updated
translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.Vlan(resource_name, opts=None, description=None, facility=None, project_id=None, __props__=None, __name__=None, __opts__=None)

Provides a resource to allow users to manage Virtual Networks in their projects.

To learn more about Layer 2 networking in Packet, refer to

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • description (pulumi.Input[str]) – Description string
  • facility (pulumi.Input[str]) – Facility where to create the VLAN
  • project_id (pulumi.Input[str]) – ID of parent project
description = None

Description string

facility = None

Facility where to create the VLAN

project_id = None

ID of parent project

vxlan = None

VXLAN segment ID

static get(resource_name, id, opts=None, description=None, facility=None, project_id=None, vxlan=None)

Get an existing Vlan resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: Description string :param pulumi.Input[str] facility: Facility where to create the VLAN :param pulumi.Input[str] project_id: ID of parent project :param pulumi.Input[float] vxlan: VXLAN segment ID

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.Volume(resource_name, opts=None, billing_cycle=None, description=None, facility=None, locked=None, plan=None, project_id=None, size=None, snapshot_policies=None, __props__=None, __name__=None, __opts__=None)

Create a Volume resource with the given unique name, props, and options.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • billing_cycle (pulumi.Input[str]) – The billing cycle, defaults to “hourly”
  • description (pulumi.Input[str]) – Optional description for the volume
  • facility (pulumi.Input[str]) – The facility to create the volume in
  • locked (pulumi.Input[bool]) – Lock or unlock the volume
  • plan (pulumi.Input[str]) – The service plan slug of the volume
  • project_id (pulumi.Input[str]) – The packet project ID to deploy the volume in
  • size (pulumi.Input[float]) – The size in GB to make the volume
  • snapshot_policies (pulumi.Input[list]) – Optional list of snapshot policies
attachments = None

A list of attachments, each with it’s own href attribute

billing_cycle = None

The billing cycle, defaults to “hourly”

created = None

The timestamp for when the volume was created

description = None

Optional description for the volume

facility = None

The facility to create the volume in

locked = None

Lock or unlock the volume

name = None

The name of the volume

plan = None

The service plan slug of the volume

project_id = None

The packet project ID to deploy the volume in

size = None

The size in GB to make the volume

snapshot_policies = None

Optional list of snapshot policies

state = None

The state of the volume

updated = None

The timestamp for the last time the volume was updated

static get(resource_name, id, opts=None, attachments=None, billing_cycle=None, created=None, description=None, facility=None, locked=None, name=None, plan=None, project_id=None, size=None, snapshot_policies=None, state=None, updated=None)

Get an existing Volume resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[list] attachments: A list of attachments, each with it’s own href attribute :param pulumi.Input[str] billing_cycle: The billing cycle, defaults to “hourly” :param pulumi.Input[str] created: The timestamp for when the volume was created :param pulumi.Input[str] description: Optional description for the volume :param pulumi.Input[str] facility: The facility to create the volume in :param pulumi.Input[bool] locked: Lock or unlock the volume :param pulumi.Input[str] name: The name of the volume :param pulumi.Input[str] plan: The service plan slug of the volume :param pulumi.Input[str] project_id: The packet project ID to deploy the volume in :param pulumi.Input[float] size: The size in GB to make the volume :param pulumi.Input[list] snapshot_policies: Optional list of snapshot policies :param pulumi.Input[str] state: The state of the volume :param pulumi.Input[str] updated: The timestamp for the last time the volume was updated

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
class pulumi_packet.VolumeAttachment(resource_name, opts=None, device_id=None, volume_id=None, __props__=None, __name__=None, __opts__=None)

Create a VolumeAttachment resource with the given unique name, props, and options.

Parameters:
  • resource_name (str) – The name of the resource.
  • opts (pulumi.ResourceOptions) – Options for the resource.
  • device_id (pulumi.Input[str]) – The ID of the device to which the volume should be attached
  • volume_id (pulumi.Input[str]) – The ID of the volume to attach
device_id = None

The ID of the device to which the volume should be attached

volume_id = None

The ID of the volume to attach

static get(resource_name, id, opts=None, device_id=None, volume_id=None)

Get an existing VolumeAttachment resource’s state with the given name, id, and optional extra properties used to qualify the lookup. :param str resource_name: The unique name of the resulting resource. :param str id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] device_id: The ID of the device to which the volume should be attached :param pulumi.Input[str] volume_id: The ID of the volume to attach

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters:prop (str) – A property name.
Returns:A potentially transformed property name.
Return type:str
pulumi_packet.get_operating_system(distro=None, name=None, provisionable_on=None, version=None, opts=None)

Use this data source to get Packet Operating System image.

pulumi_packet.get_precreated_ip_block(address_family=None, facility=None, global_=None, project_id=None, public=None, opts=None)

Use this data source to get CIDR expression for precreated IPv6 and IPv4 blocks in Packet. You can then use the cidrsubnet TF builtin function to derive subnets.

pulumi_packet.get_spot_market_price(facility=None, plan=None, opts=None)

Use this data source to get Packet Spot Market Price.