Package @pulumi/linode

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-linode repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-linode repo.

var linode = require("@pulumi/linode");
import * as linode from "@pulumi/linode";

Index ▾

domain.ts domainRecord.ts getAccount.ts getDomain.ts getImage.ts getInstanceType.ts getNetworkingIp.ts getProfile.ts getRegion.ts getSshKey.ts getUser.ts image.ts instance.ts nodeBalancer.ts nodeBalancerConfig.ts nodeBalancerNode.ts provider.ts rdns.ts sshKey.ts stackScript.ts token.ts utilities.ts volume.ts

Modules ▾

class Domain

extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/domain.html.markdown.

constructor

new Domain(name: string, args: DomainArgs, opts?: pulumi.CustomResourceOptions)

Create a Domain resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DomainState, opts?: pulumi.CustomResourceOptions): Domain

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Domain. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property axfrIps

public axfrIps: pulumi.Output<string[] | undefined>;

The list of IPs that may perform a zone transfer for this Domain. This is potentially dangerous, and should be set to an empty list unless you intend to use it.

property description

public description: pulumi.Output<string | undefined>;

A description for this Domain. This is for display purposes only.

property domain

public domain: pulumi.Output<string>;

The domain this Domain represents. These must be unique in our system; you cannot have two Domains representing the same domain.

property expireSec

public expireSec: pulumi.Output<number | undefined>;

The amount of time in seconds that may pass before this Domain is no longer authoritative. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property group

public group: pulumi.Output<string | undefined>;

The group this Domain belongs to. This is for display purposes only.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property masterIps

public masterIps: pulumi.Output<string[] | undefined>;

The IP addresses representing the master DNS for this Domain.

property refreshSec

public refreshSec: pulumi.Output<number | undefined>;

The amount of time in seconds before this Domain should be refreshed. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property retrySec

public retrySec: pulumi.Output<number | undefined>;

The interval, in seconds, at which a failed refresh should be retried. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property soaEmail

public soaEmail: pulumi.Output<string | undefined>;

Start of Authority email address. This is required for master Domains.

property status

public status: pulumi.Output<string>;

Used to control whether this Domain is currently being rendered (defaults to “active”).

property tags

public tags: pulumi.Output<string[] | undefined>;

A list of tags applied to this object. Tags are for organizational purposes only.

property ttlSec

public ttlSec: pulumi.Output<number | undefined>;

‘Time to Live’ - the amount of time in seconds that this Domain’s records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property type

public type: pulumi.Output<string>;

If this Domain represents the authoritative source of information for the domain it describes, or if it is a read-only copy of a master (also called a slave).

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class DomainRecord

extends CustomResource

Provides a Linode Domain Record resource. This can be used to create, modify, and delete Linodes Domain Records. For more information, see DNS Manager and the Linode APIv4 docs.

Example Usage

The following example shows how one might use this resource to configure a Domain Record attached to a Linode Domain.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const foobarDomain = new linode.Domain("foobar", {
    domain: "foobar.example",
    soaEmail: "example@foobar.example",
    type: "master",
});
const foobarDomainRecord = new linode.DomainRecord("foobar", {
    domainId: foobarDomain.id,
    name: "www",
    recordType: "CNAME",
    target: "foobar.example",
});

Attributes

This resource exports no additional attributes.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/domain_record.html.markdown.

constructor

new DomainRecord(name: string, args: DomainRecordArgs, opts?: pulumi.CustomResourceOptions)

Create a DomainRecord resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DomainRecordState, opts?: pulumi.CustomResourceOptions): DomainRecord

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of DomainRecord. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property domainId

public domainId: pulumi.Output<number>;

The ID of the Domain to access. Changing domainId forces the creation of a new Linode Domain Record..

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of this Record. This field’s actual usage depends on the type of record this represents. For A and AAAA records, this is the subdomain being associated with an IP address.

property port

public port: pulumi.Output<number | undefined>;

The port this Record points to.

property priority

public priority: pulumi.Output<number | undefined>;

The priority of the target host. Lower values are preferred.

property protocol

public protocol: pulumi.Output<string | undefined>;

The protocol this Record’s service communicates with. Only valid for SRV records.

property recordType

public recordType: pulumi.Output<string>;

The type of Record this is in the DNS system. For example, A records associate a domain name with an IPv4 address, and AAAA records associate a domain name with an IPv6 address. Changing recordType forces the creation of a new Linode Domain Record..

property service

public service: pulumi.Output<string | undefined>;

The service this Record identified. Only valid for SRV records.

property tag

public tag: pulumi.Output<string | undefined>;

The tag portion of a CAA record. It is invalid to set this on other record types.

property target

public target: pulumi.Output<string>;

The target for this Record. This field’s actual usage depends on the type of record this represents. For A and AAAA records, this is the address the named Domain should resolve to.


property ttlSec

public ttlSec: pulumi.Output<number | undefined>;

‘Time to Live’ - the amount of time in seconds that this Domain’s records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property weight

public weight: pulumi.Output<number | undefined>;

The relative weight of this Record. Higher values are preferred.

class Image

extends CustomResource

Provides a Linode Image resource. This can be used to create, modify, and delete Linodes Images. Linode Images are snapshots of a Linode Instance Disk which can then be used to provision more Linode Instances. Images can be used across regions.

For more information, see Linode’s documentation on Images and the Linode APIv4 docs.

Example Usage

The following example shows how one might use this resource to create an Image from a Linode Instance Disk and then deploy a new Linode Instance in another region using that Image.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const foo = new linode.Instance("foo", {
    region: "us-central",
    type: "g6-nanode-1",
});
const bar = new linode.Image("bar", {
    description: "Image taken from foo",
    diskId: foo.disks[0].id,
    label: "foo-sda-image",
    linodeId: foo.id,
});
const barBased = new linode.Instance("barBased", {
    image: bar.id,
    region: "eu-west",
    type: foo.type,
});

Attributes

This resource exports the following attributes:

  • id - The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.

  • created - When this Image was created.

  • createdBy - The name of the User who created this Image.

  • deprecated - Whether or not this Image is deprecated. Will only be True for deprecated public Images.

  • isPublic - True if the Image is public.

  • size - The minimum size this Image needs to deploy. Size is in MB.

  • type - How the Image was created. ‘Manual’ Images can be created at any time. ‘Automatic’ images are created automatically from a deleted Linode.

  • expiry - Only Images created automatically (from a deleted Linode; type=automatic) will expire.

  • vendor - The upstream distribution vendor. Nil for private Images.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/image.html.markdown.

constructor

new Image(name: string, args: ImageArgs, opts?: pulumi.CustomResourceOptions)

Create a Image resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageState, opts?: pulumi.CustomResourceOptions): Image

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Image. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property created

public created: pulumi.Output<string>;

When this Image was created.

property createdBy

public createdBy: pulumi.Output<string>;

The name of the User who created this Image.

property deprecated

public deprecated: pulumi.Output<boolean>;

Whether or not this Image is deprecated. Will only be True for deprecated public Images.

property description

public description: pulumi.Output<string | undefined>;

A detailed description of this Image.

property diskId

public diskId: pulumi.Output<number>;

The ID of the Linode Disk that this Image will be created from.

property expiry

public expiry: pulumi.Output<string>;

Only Images created automatically (from a deleted Linode; type=automatic) will expire.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property isPublic

public isPublic: pulumi.Output<boolean>;

True if the Image is public.

property label

public label: pulumi.Output<string>;

A short description of the Image. Labels cannot contain special characters.

property linodeId

public linodeId: pulumi.Output<number>;

The ID of the Linode that this Image will be created from.

property size

public size: pulumi.Output<number>;

The minimum size this Image needs to deploy. Size is in MB.

property type

public type: pulumi.Output<string>;

How the Image was created. ‘Manual’ Images can be created at any time. ‘Automatic’ images are created automatically from a deleted Linode.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vendor

public vendor: pulumi.Output<string>;

The upstream distribution vendor. Nil for private Images.

class Instance

extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/instance.html.markdown.

constructor

new Instance(name: string, args: InstanceArgs, opts?: pulumi.CustomResourceOptions)

Create a Instance resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceState, opts?: pulumi.CustomResourceOptions): Instance

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Instance. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property alerts

public alerts: pulumi.Output<{
    cpu: number;
    io: number;
    networkIn: number;
    networkOut: number;
    transferQuota: number;
}>;

property authorizedKeys

public authorizedKeys: pulumi.Output<string[] | undefined>;

A list of SSH public keys to deploy for the root user on the newly created Linode. Only accepted if image is provided. This value can not be imported. Changing authorizedKeys forces the creation of a new Linode Instance.

property authorizedUsers

public authorizedUsers: pulumi.Output<string[] | undefined>;

A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the root user’s ~/.ssh/authorized_keys file automatically. This value can not be imported. Changing authorizedUsers forces the creation of a new Linode Instance.

property backupId

public backupId: pulumi.Output<number | undefined>;

A Backup ID from another Linode’s available backups. Your User must have readWrite access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode’s available backups. This field and the image field are mutually exclusive. This value can not be imported. Changing backupId forces the creation of a new Linode Instance.

property backups

public backups: pulumi.Output<{
    enabled: boolean;
    schedule: {
        day: string;
        window: string;
    };
}>;

Information about this Linode’s backups status.

property backupsEnabled

public backupsEnabled: pulumi.Output<boolean>;

If this field is set to true, the created Linode will automatically be enrolled in the Linode Backup service. This will incur an additional charge. The cost for the Backup service is dependent on the Type of Linode deployed.

property bootConfigLabel

public bootConfigLabel: pulumi.Output<string>;

The Label of the Instance Config that should be used to boot the Linode instance. If there is only one config, the label of that config will be used as the bootConfigLabel. This value can not be imported.

property configs

public configs: pulumi.Output<{
    comments: undefined | string;
    devices: {
        sda: {
            diskId: number;
            diskLabel: undefined | string;
            volumeId: undefined | number;
        };
        sdb: {
            diskId: number;
            diskLabel: undefined | string;
            volumeId: undefined | number;
        };
        sdc: {
            diskId: number;
            diskLabel: undefined | string;
            volumeId: undefined | number;
        };
        sdd: {
            diskId: number;
            diskLabel: undefined | string;
            volumeId: undefined | number;
        };
        sde: {
            diskId: number;
            diskLabel: undefined | string;
            volumeId: undefined | number;
        };
        sdf: {
            diskId: number;
            diskLabel: undefined | string;
            volumeId: undefined | number;
        };
        sdg: {
            diskId: number;
            diskLabel: undefined | string;
            volumeId: undefined | number;
        };
        sdh: {
            diskId: number;
            diskLabel: undefined | string;
            volumeId: undefined | number;
        };
    };
    helpers: {
        devtmpfsAutomount: undefined | false | true;
        distro: undefined | false | true;
        modulesDep: undefined | false | true;
        network: undefined | false | true;
        updatedbDisabled: undefined | false | true;
    };
    kernel: undefined | string;
    label: string;
    memoryLimit: undefined | number;
    rootDevice: string;
    runLevel: undefined | string;
    virtMode: undefined | string;
}[] | undefined>;

Configuration profiles define the VM settings and boot behavior of the Linode Instance.

property disks

public disks: pulumi.Output<{
    authorizedKeys: string[];
    authorizedUsers: string[];
    filesystem: string;
    id: number;
    image: string;
    label: string;
    readOnly: boolean;
    rootPass: undefined | string;
    size: number;
    stackscriptData: {[key: string]: any};
    stackscriptId: number;
}[] | undefined>;

property group

public group: pulumi.Output<string | undefined>;

The display group of the Linode instance.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property image

public image: pulumi.Output<string | undefined>;

An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use. Examples are linode/debian9, linode/fedora28, linode/ubuntu16.04lts, linode/arch, and private/12345. Changing image forces the creation of a new Linode Instance.

property ipAddress

public ipAddress: pulumi.Output<string>;

This Linode’s Public IPv4 Address. If there are multiple public IPv4 addresses on this Instance, an arbitrary address will be used for this field.

property ipv4s

public ipv4s: pulumi.Output<string[]>;

This Linode’s IPv4 Addresses. Each Linode is assigned a single public IPv4 address upon creation, and may get a single private IPv4 address if needed. You may need to open a support ticket to get additional IPv4 addresses.

property ipv6

public ipv6: pulumi.Output<string>;

This Linode’s IPv6 SLAAC addresses. This address is specific to a Linode, and may not be shared.

property label

public label: pulumi.Output<string>;

The Config’s label for display purposes. Also used by bootConfigLabel.

property privateIp

public privateIp: pulumi.Output<boolean | undefined>;

If true, the created Linode will have private networking enabled, allowing use of the 192.168.128.0/17 network within the Linode’s region. It can be enabled on an existing Linode but it can’t be disabled.

property privateIpAddress

public privateIpAddress: pulumi.Output<string>;

This Linode’s Private IPv4 Address. The regional private IP address range is 192.168.128/17 address shared by all Linode Instances in a region.

property region

public region: pulumi.Output<string>;

This is the location where the Linode is deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode Instance..

property rootPass

public rootPass: pulumi.Output<string | undefined>;

The password that will be initialially assigned to the ‘root’ user account.

property specs

public specs: pulumi.Output<{
    disk: number;
    memory: number;
    transfer: number;
    vcpus: number;
}>;

property stackscriptData

public stackscriptData: pulumi.Output<{[key: string]: string} | undefined>;

An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if ‘stackscript_id’ is given. The required values depend on the StackScript being deployed. This value can not be imported. Changing stackscriptData forces the creation of a new Linode Instance.

property stackscriptId

public stackscriptId: pulumi.Output<number | undefined>;

The StackScript to deploy to the newly created Linode. If provided, ‘image’ must also be provided, and must be an Image that is compatible with this StackScript. This value can not be imported. Changing stackscriptId forces the creation of a new Linode Instance.

property status

public status: pulumi.Output<string>;

The status of the instance, indicating the current readiness state.

property swapSize

public swapSize: pulumi.Output<number>;

When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.

property tags

public tags: pulumi.Output<string[] | undefined>;

A list of tags applied to this object. Tags are for organizational purposes only.

property type

public type: pulumi.Output<string | undefined>;

The Linode type defines the pricing, CPU, disk, and RAM specs of the instance. Examples are "g6-nanode-1", "g6-standard-2", "g6-highmem-16", "g6-dedicated-16", etc.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property watchdogEnabled

public watchdogEnabled: pulumi.Output<boolean | undefined>;

The watchdog, named Lassie, is a Shutdown Watchdog that monitors your Linode and will reboot it if it powers off unexpectedly. It works by issuing a boot job when your Linode powers off without a shutdown job being responsible. To prevent a loop, Lassie will give up if there have been more than 5 boot jobs issued within 15 minutes.

class NodeBalancer

extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/nodebalancer.html.markdown.

constructor

new NodeBalancer(name: string, args: NodeBalancerArgs, opts?: pulumi.CustomResourceOptions)

Create a NodeBalancer resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NodeBalancerState, opts?: pulumi.CustomResourceOptions): NodeBalancer

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NodeBalancer. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property clientConnThrottle

public clientConnThrottle: pulumi.Output<number | undefined>;

Throttle connections per second (0-20). Set to 0 (default) to disable throttling.

property created

public created: pulumi.Output<string>;

property hostname

public hostname: pulumi.Output<string>;

This NodeBalancer’s hostname, ending with .nodebalancer.linode.com

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipv4

public ipv4: pulumi.Output<string>;

The Public IPv4 Address of this NodeBalancer

property ipv6

public ipv6: pulumi.Output<string>;

The Public IPv6 Address of this NodeBalancer

property label

public label: pulumi.Output<string | undefined>;

The label of the Linode NodeBalancer

property region

public region: pulumi.Output<string>;

The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode NodeBalancer..

property tags

public tags: pulumi.Output<string[] | undefined>;

A list of tags applied to this object. Tags are for organizational purposes only.

property transfer

public transfer: pulumi.Output<{
    in: number;
    out: number;
    total: number;
}>;

property updated

public updated: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NodeBalancerConfig

extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/nodebalancer_config.html.markdown.

constructor

new NodeBalancerConfig(name: string, args: NodeBalancerConfigArgs, opts?: pulumi.CustomResourceOptions)

Create a NodeBalancerConfig resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NodeBalancerConfigState, opts?: pulumi.CustomResourceOptions): NodeBalancerConfig

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NodeBalancerConfig. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property algorithm

public algorithm: pulumi.Output<string>;

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

property check

public check: pulumi.Output<string>;

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and httpBody rely on the backend serving HTTP, and that the response returned matches what is expected.

property checkAttempts

public checkAttempts: pulumi.Output<number>;

How many times to attempt a check before considering a backend to be down. (1-30)

property checkBody

public checkBody: pulumi.Output<string>;

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

property checkInterval

public checkInterval: pulumi.Output<number>;

How often, in seconds, to check that backends are up and serving requests.

property checkPassive

public checkPassive: pulumi.Output<boolean>;

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

property checkPath

public checkPath: pulumi.Output<string>;

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

property checkTimeout

public checkTimeout: pulumi.Output<number>;

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

property cipherSuite

public cipherSuite: pulumi.Output<string>;

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property nodeStatus

public nodeStatus: pulumi.Output<{
    statusDown: number;
    statusUp: number;
}>;

property nodebalancerId

public nodebalancerId: pulumi.Output<number>;

The ID of the NodeBalancer to access.

property port

public port: pulumi.Output<number | undefined>;

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

property protocol

public protocol: pulumi.Output<string | undefined>;

The protocol this port is configured to serve. If this is set to https you must include an sslCert and an ssl_key. (Defaults to “http”)

property sslCert

public sslCert: pulumi.Output<string | undefined>;

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the sslCommonname and sslFingerprint to identify the certificate.

property sslCommonname

public sslCommonname: pulumi.Output<string>;

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

property sslFingerprint

public sslFingerprint: pulumi.Output<string>;

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

property sslKey

public sslKey: pulumi.Output<string | undefined>;

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the sslCommonname and sslFingerprint to identify the certificate.

property stickiness

public stickiness: pulumi.Output<string>;

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NodeBalancerNode

extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/nodebalancer_node.html.markdown.

constructor

new NodeBalancerNode(name: string, args: NodeBalancerNodeArgs, opts?: pulumi.CustomResourceOptions)

Create a NodeBalancerNode resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NodeBalancerNodeState, opts?: pulumi.CustomResourceOptions): NodeBalancerNode

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NodeBalancerNode. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property address

public address: pulumi.Output<string>;

The private IP Address where this backend can be reached. This must be a private IP address.

property configId

public configId: pulumi.Output<number>;

The ID of the NodeBalancerConfig to access.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property label

public label: pulumi.Output<string>;

The label of the Linode NodeBalancer Node. This is for display purposes only.

property mode

public mode: pulumi.Output<string>;

The mode this NodeBalancer should use when sending traffic to this backend. If set to accept this backend is accepting traffic. If set to reject this backend will not receive traffic. If set to drain this backend will not receive new traffic, but connections already pinned to it will continue to be routed to it

property nodebalancerId

public nodebalancerId: pulumi.Output<number>;

The ID of the NodeBalancer to access.

property status

public status: pulumi.Output<string>;

The current status of this node, based on the configured checks of its NodeBalancer Config. (unknown, UP, DOWN)

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property weight

public weight: pulumi.Output<number>;

Used when picking a backend to serve a request and is not pinned to a single backend yet. Nodes with a higher weight will receive more traffic. (1-255).

class Provider

extends ProviderResource

The provider type for the linode 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.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/index.html.markdown.

constructor

new Provider(name: string, args?: ProviderArgs, opts?: pulumi.ResourceOptions)

Create a Provider resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Provider. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class Rdns

extends CustomResource

Provides a Linode RDNS resource. This can be used to create and modify RDNS records.

Linode RDNS names must have a matching address value in an A or AAAA record. This A or AAAA name must be resolvable at the time the RDNS resource is being associated.

For more information, see the Linode APIv4 docs and the Configure your Linode for Reverse DNS guide.

Example Usage

The following example shows how one might use this resource to configure an RDNS address for an IP address.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const fooInstance = new linode.Instance("foo", {
    image: "linode/alpine3.9",
    region: "ca-east",
    type: "g6-dedicated-2",
});
const fooRdns = new linode.Rdns("foo", {
    address: fooInstance.ipAddress,
    rdns: pulumi.interpolate`${fooInstance.ipAddress}.nip.io`,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/rdns.html.markdown.

constructor

new Rdns(name: string, args: RdnsArgs, opts?: pulumi.CustomResourceOptions)

Create a Rdns resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RdnsState, opts?: pulumi.CustomResourceOptions): Rdns

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Rdns. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property address

public address: pulumi.Output<string>;

The Public IPv4 or IPv6 address that will receive the PTR record. A matching A or AAAA record must exist.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property rdns

public rdns: pulumi.Output<string>;

The name of the RDNS address.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class SshKey

extends CustomResource

Provides a Linode SSH Key resource. This can be used to create, modify, and delete Linodes SSH Keys. Managed SSH Keys allow instances to be created with a list of Linode usernames, whose SSH keys will be automatically applied to the root account’s ~/.ssh/authorized_keys file. For more information, see the Linode APIv4 docs.

Example Usage

The following example shows how one might use this resource to configure a SSH Key for access to a Linode Instance.

import * as pulumi from "@pulumi/pulumi";
import * as fs from "fs";
import * as linode from "@pulumi/linode";

const fooSshKey = new linode.SshKey("foo", {
    label: "foo",
    sshKey: fs.readFileSync("~/.ssh/id_rsa.pub", "utf-8").replace(/(\n|\r\n)*$/, ""),
});
const fooInstance = new linode.Instance("foo", {
    authorizedKeys: [fooSshKey.sshKey],
    image: "linode/ubuntu18.04",
    label: "foo",
    region: "us-east",
    rootPass: "...",
    type: "g6-nanode-1",
});

Attributes

This resource exports the following attributes:

  • created - The date this SSH Key was created.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/sshkey.html.markdown.

constructor

new SshKey(name: string, args: SshKeyArgs, opts?: pulumi.CustomResourceOptions)

Create a SshKey resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SshKeyState, opts?: pulumi.CustomResourceOptions): SshKey

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SshKey. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property created

public created: pulumi.Output<string>;

The date this key was added.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property label

public label: pulumi.Output<string>;

A label for the SSH Key.

property sshKey

public sshKey: pulumi.Output<string>;

The public SSH Key, which is used to authenticate to the root user of the Linodes you deploy.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class StackScript

extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/stackscript.html.markdown.

constructor

new StackScript(name: string, args: StackScriptArgs, opts?: pulumi.CustomResourceOptions)

Create a StackScript resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: StackScriptState, opts?: pulumi.CustomResourceOptions): StackScript

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of StackScript. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property created

public created: pulumi.Output<string>;

The date this StackScript was created.

property deploymentsActive

public deploymentsActive: pulumi.Output<number>;

Count of currently active, deployed Linodes created from this StackScript.

property deploymentsTotal

public deploymentsTotal: pulumi.Output<number>;

The total number of times this StackScript has been deployed.

property description

public description: pulumi.Output<string>;

A description for the StackScript.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property images

public images: pulumi.Output<string[]>;

An array of Image IDs representing the Images that this StackScript is compatible for deploying with.

property isPublic

public isPublic: pulumi.Output<boolean | undefined>;

This determines whether other users can use your StackScript. Once a StackScript is made public, it cannot be made private. Changing isPublic forces the creation of a new StackScript

property label

public label: pulumi.Output<string>;

The StackScript’s label is for display purposes only.

property revNote

public revNote: pulumi.Output<string | undefined>;

This field allows you to add notes for the set of revisions made to this StackScript.

property script

public script: pulumi.Output<string>;

The script to execute when provisioning a new Linode with this StackScript.

property updated

public updated: pulumi.Output<string>;

The date this StackScript was updated.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userDefinedFields

public userDefinedFields: pulumi.Output<{
    default: string;
    example: string;
    label: string;
    manyOf: string;
    name: string;
    oneOf: string;
}[]>;

This is a list of fields defined with a special syntax inside this StackScript that allow for supplying customized parameters during deployment.

property userGravatarId

public userGravatarId: pulumi.Output<string>;

The Gravatar ID for the User who created the StackScript.

property username

public username: pulumi.Output<string>;

The User who created the StackScript.

class Token

extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/token.html.markdown.

constructor

new Token(name: string, args: TokenArgs, opts?: pulumi.CustomResourceOptions)

Create a Token resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TokenState, opts?: pulumi.CustomResourceOptions): Token

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Token. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property created

public created: pulumi.Output<string>;

The date and time this token was created.

property expiry

public expiry: pulumi.Output<string | undefined>;

When this token will expire. Personal Access Tokens cannot be renewed, so after this time the token will be completely unusable and a new token will need to be generated. Tokens may be created with ‘null’ as their expiry and will never expire unless revoked.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property label

public label: pulumi.Output<string | undefined>;

A label for the Token.

property scopes

public scopes: pulumi.Output<string>;

The scopes this token was created with. These define what parts of the Account the token can be used to access. Many command-line tools, such as the Linode CLI, require tokens with access to *. Tokens with more restrictive scopes are generally more secure.

property token

public token: pulumi.Output<string>;

The token used to access the API.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class Volume

extends CustomResource

Provides a Linode Volume resource. This can be used to create, modify, and delete Linodes Block Storage Volumes. Block Storage Volumes are removable storage disks that persist outside the life-cycle of Linode Instances. These volumes can be attached to and detached from Linode instances throughout a region.

For more information, see How to Use Block Storage with Your Linode and the Linode APIv4 docs.

Example Usage

The following example shows how one might use this resource to configure a Block Storage Volume attached to a Linode Instance.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const foobaz = new linode.Instance("foobaz", {
    region: "us-west",
    rootPass: "3X4mp13",
    tags: ["foobaz"],
    type: "g6-nanode-1",
});
const foobar = new linode.Volume("foobar", {
    label: "foo-volume",
    linodeId: foobaz.id,
    region: foobaz.region,
});

Volumes can also be attached using the Linode Instance config device map.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const foo = new linode.Instance("foo", {
    configs: [{
        devices: {
            sda: {
                volumeId: 123,
            },
        },
        kernel: "linode/latest-64bit",
        label: "boot-existing-volume",
    }],
    region: "us-east",
    type: "g6-nanode-1",
});

Attributes

This resource exports the following attributes:

  • status - The label of the Linode Volume.

  • filesystemPath - The full filesystem path for the Volume based on the Volume’s label. The path is “/dev/disk/by-id/scsi-0LinodeVolume” + the Volume label

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/r/volume.html.markdown.

constructor

new Volume(name: string, args: VolumeArgs, opts?: pulumi.CustomResourceOptions)

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

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VolumeState, opts?: pulumi.CustomResourceOptions): Volume

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

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Volume. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property filesystemPath

public filesystemPath: pulumi.Output<string>;

The full filesystem path for the Volume based on the Volume’s label. Path is /dev/disk/by-id/scsi-0LinodeVolume + Volume label.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property label

public label: pulumi.Output<string>;

The label of the Linode Volume

property linodeId

public linodeId: pulumi.Output<number>;

The ID of a Linode Instance where the the Volume should be attached.

property region

public region: pulumi.Output<string>;

The region where this volume will be deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode Volume..

property size

public size: pulumi.Output<number>;

Size of the Volume in GB.

property status

public status: pulumi.Output<string>;

The status of the volume, indicating the current readiness state.

property tags

public tags: pulumi.Output<string[] | undefined>;

A list of tags applied to this object. Tags are for organizational purposes only.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

function getAccount

getAccount(opts?: pulumi.InvokeOptions): Promise<GetAccountResult> & GetAccountResult

Provides information about a Linode account.

This data source should not be used in conjuction with the LINODE_DEBUG option. See the debugging notes for more details.

Example Usage

The following example shows how one might use this data source to access account details.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const account = pulumi.output(linode.getAccount({}));

Attributes

The Linode Account resource exports the following attributes:

  • email - The email address for this Account, for account management communications, and may be used for other communications as configured.

  • firstName - The first name of the person associated with this Account.

  • lastName - The last name of the person associated with this Account.

  • company - The company name associated with this Account.

  • address1 - First line of this Account’s billing address.

  • address2 - Second line of this Account’s billing address.

  • phone - The phone number associated with this Account.

  • city - The city for this Account’s billing address.

  • state - If billing address is in the United States, this is the State portion of the Account’s billing address. If the address is outside the US, this is the Province associated with the Account’s billing address.

  • country - The two-letter country code of this Account’s billing address.

  • zip - The zip code of this Account’s billing address.

  • balance - This Account’s balance, in US dollars.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/account.html.markdown.

function getDomain

getDomain(args?: GetDomainArgs, opts?: pulumi.InvokeOptions): Promise<GetDomainResult> & GetDomainResult

Provides information about a Linode domain.

Example Usage

The following example shows how one might use this data source to access information about a Linode domain.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const bar = pulumi.output(linode.getDomain({
    domain: "bar.example.com",
}));
const foo = pulumi.output(linode.getDomain({
    id: "1234567",
}));

Attributes

The Linode Domain resource exports the following attributes:

  • id - The unique ID of this Domain.

  • domain - The domain this Domain represents. These must be unique in our system; you cannot have two Domains representing the same domain

  • type - If this Domain represents the authoritative source of information for the domain it describes, or if it is a read-only copy of a master (also called a slave)

  • group - The group this Domain belongs to.

  • status - Used to control whether this Domain is currently being rendered.

  • description - A description for this Domain.

  • masterIps - The IP addresses representing the master DNS for this Domain.

  • axfrIps - The list of IPs that may perform a zone transfer for this Domain.

  • ttlSec - ‘Time to Live’-the amount of time in seconds that this Domain’s records may be cached by resolvers or other domain servers.

  • retrySec - The interval, in seconds, at which a failed refresh should be retried. *

  • expireSec - The amount of time in seconds that may pass before this Domain is no longer authoritative.

  • refreshSec - The amount of time in seconds before this Domain should be refreshed.

  • soaEmail - Start of Authority email address.

  • tags - An array of tags applied to this object.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/domain.html.markdown.

function getEnv

getEnv(vars: string[]): string | undefined

function getEnvBoolean

getEnvBoolean(vars: string[]): boolean | undefined

function getEnvNumber

getEnvNumber(vars: string[]): number | undefined

function getImage

getImage(args: GetImageArgs, opts?: pulumi.InvokeOptions): Promise<GetImageResult> & GetImageResult

Provides information about a Linode image

Example Usage

The following example shows how one might use this data source to access information about a Linode image.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const k8Master = pulumi.output(linode.getImage({
    id: "linode/debian8",
}));

Attributes

The Linode Image resource exports the following attributes:

  • label - A short description of the Image.

  • created - When this Image was created.

  • createdBy - The name of the User who created this Image, or “linode” for official Images.

  • deprecated - Whether or not this Image is deprecated. Will only be true for deprecated public Images.

  • description - A detailed description of this Image.

  • isPublic - True if the Image is public.

  • size - The minimum size this Image needs to deploy. Size is in MB. example: 2500

  • type - How the Image was created. Manual Images can be created at any time. image”Automatic” Images are created automatically from a deleted Linode.

  • vendor - The upstream distribution vendor. None for private Images.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/image.html.markdown.

function getInstanceType

getInstanceType(args: GetInstanceTypeArgs, opts?: pulumi.InvokeOptions): Promise<GetInstanceTypeResult> & GetInstanceTypeResult

Provides information about a Linode instance type

Example Usage

The following example shows how one might use this data source to access information about a Linode Instance type.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const defaultInstanceType = pulumi.output(linode.getInstanceType({
    id: "g6-standard-2",
}));

Attributes

The Linode Instance Type resource exports the following attributes:

  • id - The ID representing the Linode Type

  • label - The Linode Type’s label is for display purposes only

  • class - The class of the Linode Type

  • disk - The Disk size, in MB, of the Linode Type

  • price.0.hourly - Cost (in US dollars) per hour.

  • price.0.monthly - Cost (in US dollars) per month.

  • addons.0.backups.0.price.0.hourly - The cost (in US dollars) per hour to add Backups service.

  • addons.0.backups.0.price.0.monthly - The cost (in US dollars) per month to add Backups service.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/instance_type.html.markdown.

function getNetworkingIp

getNetworkingIp(args: GetNetworkingIpArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkingIpResult> & GetNetworkingIpResult

Provides information about a Linode Networking IP Address

Example Usage

The following example shows how one might use this data source to access information about a Linode Networking IP Address.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const ns1LinodeCom = pulumi.output(linode.NetworkIp({
    address: "162.159.27.72",
}));

Attributes

The Linode Network IP Address resource exports the following attributes:

  • address - The IP address.

  • gateway - The default gateway for this address.

  • subnetMask - The mask that separates host bits from network bits for this address.

  • prefix - The number of bits set in the subnet mask.

  • type - The type of address this is (ipv4, ipv6, ipv6/pool, ipv6/range).

  • public - Whether this is a public or private IP address.

  • rdns - The reverse DNS assigned to this address. For public IPv4 addresses, this will be set to a default value provided by Linode if not explicitly set.

  • linodeId - The ID of the Linode this address currently belongs to.

  • region - The Region this IP address resides in.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/networking_ip.html.markdown.

function getProfile

getProfile(opts?: pulumi.InvokeOptions): Promise<GetProfileResult> & GetProfileResult

Provides information about a Linode profile.

Example Usage

The following example shows how one might use this data source to access profile details.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const profile = pulumi.output(linode.getProfile({}));

Attributes

The Linode Profile resource exports the following attributes:

  • email - The profile email address. This address will be used for communication with Linode as necessary.

  • timezone - The profile’s preferred timezone. This is not used by the API, and is for the benefit of clients only. All times the API returns are in UTC.

  • emailNotifications - If true, email notifications will be sent about account activity. If false, when false business-critical communications may still be sent through email.

  • username - The username for logging in to Linode services.

  • ipWhitelistEnabled - If true, logins for the user will only be allowed from whitelisted IPs. This setting is currently deprecated, and cannot be enabled.

  • lishAuthMethod - The methods of authentication allowed when connecting via Lish. ‘keys_only’ is the most secure with the intent to use Lish, and ‘disabled’ is recommended for users that will not use Lish at all.

  • authorizedKeys - The list of SSH Keys authorized to use Lish for this user. This value is ignored if lishAuthMethod is ‘disabled’.

  • twoFactorAuth - If true, logins from untrusted computers will require Two Factor Authentication.

  • restricted - If true, the user has restrictions on what can be accessed on the Account.

  • referrals - Credit Card information associated with this Account.

  • referrals.0.total - The number of users who have signed up with the referral code.

  • referrals.0.credit - The amount of account credit in US Dollars issued to the account through the referral program.

  • referrals.0.completed - The number of completed signups with the referral code.

  • referrals.0.pending - The number of pending signups for the referral code. To receive credit the signups must be completed.

  • referrals.0.code - The Profile referral code. If new accounts use this when signing up for Linode, referring account will receive credit.

  • referrals.0.url - The referral URL.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/profile.html.markdown.

function getRegion

getRegion(args: GetRegionArgs, opts?: pulumi.InvokeOptions): Promise<GetRegionResult> & GetRegionResult

linode..getRegion provides details about a specific Linode region.

Example Usage

The following example shows how the resource might be used to obtain additional information about a Linode region.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const region = pulumi.output(linode.getRegion({
    id: "us-east",
}));

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/region.html.markdown.

function getSshKey

getSshKey(args: GetSshKeyArgs, opts?: pulumi.InvokeOptions): Promise<GetSshKeyResult> & GetSshKeyResult

linode..SshKey provides access to a specifically labeled SSH Key in the Profile of the User identified by the access token.

Example Usage

The following example shows how the resource might be used to obtain the name of the SSH Key configured on the Linode user profile.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const foo = pulumi.output(linode.getSshKey({
    label: "foo",
}));

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/sshkey.html.markdown.

function getUser

getUser(args: GetUserArgs, opts?: pulumi.InvokeOptions): Promise<GetUserResult> & GetUserResult

Provides information about a Linode user

Example Usage

The following example shows how one might use this data source to access information about a Linode user.

import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const foo = pulumi.output(linode.getUser({
    username: "foo",
}));

Attributes

The Linode User resource exports the following attributes:

  • sshKeys - A list of SSH Key labels added by this User. These are the keys that will be deployed if this User is included in the authorizedUsers field of a create Linode, rebuild Linode, or create Disk request.

  • email - The email address for this User, for account management communications, and may be used for other communications as configured.

  • restricted - If true, this User must be granted access to perform actions or access entities on this Account.

This content is derived from https://github.com/terraform-providers/terraform-provider-linode/blob/master/website/docs/d/user.html.markdown.

function getVersion

getVersion(): string

interface DomainArgs

The set of arguments for constructing a Domain resource.

property axfrIps

axfrIps?: pulumi.Input<pulumi.Input<string>[]>;

The list of IPs that may perform a zone transfer for this Domain. This is potentially dangerous, and should be set to an empty list unless you intend to use it.

property description

description?: pulumi.Input<string>;

A description for this Domain. This is for display purposes only.

property domain

domain: pulumi.Input<string>;

The domain this Domain represents. These must be unique in our system; you cannot have two Domains representing the same domain.

property expireSec

expireSec?: pulumi.Input<number>;

The amount of time in seconds that may pass before this Domain is no longer authoritative. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property group

group?: pulumi.Input<string>;

The group this Domain belongs to. This is for display purposes only.

property masterIps

masterIps?: pulumi.Input<pulumi.Input<string>[]>;

The IP addresses representing the master DNS for this Domain.

property refreshSec

refreshSec?: pulumi.Input<number>;

The amount of time in seconds before this Domain should be refreshed. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property retrySec

retrySec?: pulumi.Input<number>;

The interval, in seconds, at which a failed refresh should be retried. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property soaEmail

soaEmail?: pulumi.Input<string>;

Start of Authority email address. This is required for master Domains.

property status

status?: pulumi.Input<string>;

Used to control whether this Domain is currently being rendered (defaults to “active”).

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

A list of tags applied to this object. Tags are for organizational purposes only.

property ttlSec

ttlSec?: pulumi.Input<number>;

‘Time to Live’ - the amount of time in seconds that this Domain’s records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property type

type: pulumi.Input<string>;

If this Domain represents the authoritative source of information for the domain it describes, or if it is a read-only copy of a master (also called a slave).

interface DomainRecordArgs

The set of arguments for constructing a DomainRecord resource.

property domainId

domainId: pulumi.Input<number>;

The ID of the Domain to access. Changing domainId forces the creation of a new Linode Domain Record..

property name

name: pulumi.Input<string>;

The name of this Record. This field’s actual usage depends on the type of record this represents. For A and AAAA records, this is the subdomain being associated with an IP address.

property port

port?: pulumi.Input<number>;

The port this Record points to.

property priority

priority?: pulumi.Input<number>;

The priority of the target host. Lower values are preferred.

property protocol

protocol?: pulumi.Input<string>;

The protocol this Record’s service communicates with. Only valid for SRV records.

property recordType

recordType: pulumi.Input<string>;

The type of Record this is in the DNS system. For example, A records associate a domain name with an IPv4 address, and AAAA records associate a domain name with an IPv6 address. Changing recordType forces the creation of a new Linode Domain Record..

property service

service?: pulumi.Input<string>;

The service this Record identified. Only valid for SRV records.

property tag

tag?: pulumi.Input<string>;

The tag portion of a CAA record. It is invalid to set this on other record types.

property target

target: pulumi.Input<string>;

The target for this Record. This field’s actual usage depends on the type of record this represents. For A and AAAA records, this is the address the named Domain should resolve to.


property ttlSec

ttlSec?: pulumi.Input<number>;

‘Time to Live’ - the amount of time in seconds that this Domain’s records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property weight

weight?: pulumi.Input<number>;

The relative weight of this Record. Higher values are preferred.

interface DomainRecordState

Input properties used for looking up and filtering DomainRecord resources.

property domainId

domainId?: pulumi.Input<number>;

The ID of the Domain to access. Changing domainId forces the creation of a new Linode Domain Record..

property name

name?: pulumi.Input<string>;

The name of this Record. This field’s actual usage depends on the type of record this represents. For A and AAAA records, this is the subdomain being associated with an IP address.

property port

port?: pulumi.Input<number>;

The port this Record points to.

property priority

priority?: pulumi.Input<number>;

The priority of the target host. Lower values are preferred.

property protocol

protocol?: pulumi.Input<string>;

The protocol this Record’s service communicates with. Only valid for SRV records.

property recordType

recordType?: pulumi.Input<string>;

The type of Record this is in the DNS system. For example, A records associate a domain name with an IPv4 address, and AAAA records associate a domain name with an IPv6 address. Changing recordType forces the creation of a new Linode Domain Record..

property service

service?: pulumi.Input<string>;

The service this Record identified. Only valid for SRV records.

property tag

tag?: pulumi.Input<string>;

The tag portion of a CAA record. It is invalid to set this on other record types.

property target

target?: pulumi.Input<string>;

The target for this Record. This field’s actual usage depends on the type of record this represents. For A and AAAA records, this is the address the named Domain should resolve to.


property ttlSec

ttlSec?: pulumi.Input<number>;

‘Time to Live’ - the amount of time in seconds that this Domain’s records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property weight

weight?: pulumi.Input<number>;

The relative weight of this Record. Higher values are preferred.

interface DomainState

Input properties used for looking up and filtering Domain resources.

property axfrIps

axfrIps?: pulumi.Input<pulumi.Input<string>[]>;

The list of IPs that may perform a zone transfer for this Domain. This is potentially dangerous, and should be set to an empty list unless you intend to use it.

property description

description?: pulumi.Input<string>;

A description for this Domain. This is for display purposes only.

property domain

domain?: pulumi.Input<string>;

The domain this Domain represents. These must be unique in our system; you cannot have two Domains representing the same domain.

property expireSec

expireSec?: pulumi.Input<number>;

The amount of time in seconds that may pass before this Domain is no longer authoritative. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property group

group?: pulumi.Input<string>;

The group this Domain belongs to. This is for display purposes only.

property masterIps

masterIps?: pulumi.Input<pulumi.Input<string>[]>;

The IP addresses representing the master DNS for this Domain.

property refreshSec

refreshSec?: pulumi.Input<number>;

The amount of time in seconds before this Domain should be refreshed. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property retrySec

retrySec?: pulumi.Input<number>;

The interval, in seconds, at which a failed refresh should be retried. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property soaEmail

soaEmail?: pulumi.Input<string>;

Start of Authority email address. This is required for master Domains.

property status

status?: pulumi.Input<string>;

Used to control whether this Domain is currently being rendered (defaults to “active”).

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

A list of tags applied to this object. Tags are for organizational purposes only.

property ttlSec

ttlSec?: pulumi.Input<number>;

‘Time to Live’ - the amount of time in seconds that this Domain’s records may be cached by resolvers or other domain servers. Valid values are 300, 3600, 7200, 14400, 28800, 57600, 86400, 172800, 345600, 604800, 1209600, and 2419200 - any other value will be rounded to the nearest valid value.

property type

type?: pulumi.Input<string>;

If this Domain represents the authoritative source of information for the domain it describes, or if it is a read-only copy of a master (also called a slave).

interface GetAccountResult

A collection of values returned by getAccount.

property address1

address1: string;

property address2

address2: string;

property balance

balance: number;

property city

city: string;

property company

company: string;

property country

country: string;

property email

email: string;

property firstName

firstName: string;

property id

id: string;

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

property lastName

lastName: string;

property phone

phone: string;

property state

state: string;

property zip

zip: string;

interface GetDomainArgs

A collection of arguments for invoking getDomain.

property domain

domain?: undefined | string;

The unique domain name of the Domain record to query.

property id

id?: undefined | string;

The unique numeric ID of the Domain record to query.

interface GetDomainResult

A collection of values returned by getDomain.

property axfrIps

axfrIps: string[];

property description

description: string;

property domain

domain?: undefined | string;

property expireSec

expireSec: number;

property group

group: string;

property id

id?: undefined | string;

property masterIps

masterIps: string[];

property refreshSec

refreshSec: number;

property retrySec

retrySec: number;

property soaEmail

soaEmail: string;

property status

status: string;

property tags

tags: string[];

property ttlSec

ttlSec: number;

property type

type: string;

interface GetImageArgs

A collection of arguments for invoking getImage.

property id

id: string;

The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.

interface GetImageResult

A collection of values returned by getImage.

property created

created: string;

property createdBy

createdBy: string;

property deprecated

deprecated: boolean;

property description

description: string;

property expiry

expiry: string;

property id

id: string;

property isPublic

isPublic: boolean;

property label

label: string;

property size

size: number;

property type

type: string;

property vendor

vendor: string;

interface GetInstanceTypeArgs

A collection of arguments for invoking getInstanceType.

property id

id: string;

Label used to identify instance type

property label

label?: undefined | string;

interface GetInstanceTypeResult

A collection of values returned by getInstanceType.

property addons

addons: {
    backups: {
        price: {
            hourly: number;
            monthly: number;
        };
    };
};

property class

class: string;

property disk

disk: number;

property id

id: string;

property label

label: string;

property memory

memory: number;

property networkOut

networkOut: number;

property price

price: {
    hourly: number;
    monthly: number;
};

property transfer

transfer: number;

property vcpus

vcpus: number;

interface GetNetworkingIpArgs

A collection of arguments for invoking getNetworkingIp.

property address

address: string;

The IP Address to access. The address must be associated with the account and a resource that the user has access to view.

interface GetNetworkingIpResult

A collection of values returned by getNetworkingIp.

property address

address: string;

property gateway

gateway: string;

property id

id: string;

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

property linodeId

linodeId: number;

property prefix

prefix: number;

property public

public: boolean;

property rdns

rdns: string;

property region

region: string;

property subnetMask

subnetMask: string;

property type

type: string;

interface GetProfileResult

A collection of values returned by getProfile.

property authorizedKeys

authorizedKeys: string[];

property email

email: string;

property emailNotifications

emailNotifications: boolean;

property id

id: string;

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

property ipWhitelistEnabled

ipWhitelistEnabled: boolean;

property lishAuthMethod

lishAuthMethod: string;

property referrals

referrals: {
    code: string;
    completed: number;
    credit: number;
    pending: number;
    total: number;
    url: string;
};

property restricted

restricted: boolean;

property timezone

timezone: string;

property twoFactorAuth

twoFactorAuth: boolean;

property username

username: string;

interface GetRegionArgs

A collection of arguments for invoking getRegion.

property country

country?: undefined | string;

property id

id: string;

interface GetRegionResult

A collection of values returned by getRegion.

property country

country: string;

property id

id: string;

interface GetSshKeyArgs

A collection of arguments for invoking getSshKey.

property label

label: string;

interface GetSshKeyResult

A collection of values returned by getSshKey.

property created

created: string;

property id

id: string;

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

property label

label: string;

property sshKey

sshKey: string;

interface GetUserArgs

A collection of arguments for invoking getUser.

property username

username: string;

The unique username of this User.

interface GetUserResult

A collection of values returned by getUser.

property email

email: string;

property id

id: string;

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

property restricted

restricted: boolean;

property sshKeys

sshKeys: string[];

property username

username: string;

interface ImageArgs

The set of arguments for constructing a Image resource.

property description

description?: pulumi.Input<string>;

A detailed description of this Image.

property diskId

diskId: pulumi.Input<number>;

The ID of the Linode Disk that this Image will be created from.

property label

label: pulumi.Input<string>;

A short description of the Image. Labels cannot contain special characters.

property linodeId

linodeId: pulumi.Input<number>;

The ID of the Linode that this Image will be created from.

interface ImageState

Input properties used for looking up and filtering Image resources.

property created

created?: pulumi.Input<string>;

When this Image was created.

property createdBy

createdBy?: pulumi.Input<string>;

The name of the User who created this Image.

property deprecated

deprecated?: pulumi.Input<boolean>;

Whether or not this Image is deprecated. Will only be True for deprecated public Images.

property description

description?: pulumi.Input<string>;

A detailed description of this Image.

property diskId

diskId?: pulumi.Input<number>;

The ID of the Linode Disk that this Image will be created from.

property expiry

expiry?: pulumi.Input<string>;

Only Images created automatically (from a deleted Linode; type=automatic) will expire.

property isPublic

isPublic?: pulumi.Input<boolean>;

True if the Image is public.

property label

label?: pulumi.Input<string>;

A short description of the Image. Labels cannot contain special characters.

property linodeId

linodeId?: pulumi.Input<number>;

The ID of the Linode that this Image will be created from.

property size

size?: pulumi.Input<number>;

The minimum size this Image needs to deploy. Size is in MB.

property type

type?: pulumi.Input<string>;

How the Image was created. ‘Manual’ Images can be created at any time. ‘Automatic’ images are created automatically from a deleted Linode.

property vendor

vendor?: pulumi.Input<string>;

The upstream distribution vendor. Nil for private Images.

interface InstanceArgs

The set of arguments for constructing a Instance resource.

property alerts

alerts?: pulumi.Input<{
    cpu: pulumi.Input<number>;
    io: pulumi.Input<number>;
    networkIn: pulumi.Input<number>;
    networkOut: pulumi.Input<number>;
    transferQuota: pulumi.Input<number>;
}>;

property authorizedKeys

authorizedKeys?: pulumi.Input<pulumi.Input<string>[]>;

A list of SSH public keys to deploy for the root user on the newly created Linode. Only accepted if image is provided. This value can not be imported. Changing authorizedKeys forces the creation of a new Linode Instance.

property authorizedUsers

authorizedUsers?: pulumi.Input<pulumi.Input<string>[]>;

A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the root user’s ~/.ssh/authorized_keys file automatically. This value can not be imported. Changing authorizedUsers forces the creation of a new Linode Instance.

property backupId

backupId?: pulumi.Input<number>;

A Backup ID from another Linode’s available backups. Your User must have readWrite access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode’s available backups. This field and the image field are mutually exclusive. This value can not be imported. Changing backupId forces the creation of a new Linode Instance.

property backupsEnabled

backupsEnabled?: pulumi.Input<boolean>;

If this field is set to true, the created Linode will automatically be enrolled in the Linode Backup service. This will incur an additional charge. The cost for the Backup service is dependent on the Type of Linode deployed.

property bootConfigLabel

bootConfigLabel?: pulumi.Input<string>;

The Label of the Instance Config that should be used to boot the Linode instance. If there is only one config, the label of that config will be used as the bootConfigLabel. This value can not be imported.

property configs

configs?: pulumi.Input<pulumi.Input<{
    comments: pulumi.Input<string>;
    devices: pulumi.Input<{
        sda: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdb: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdc: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdd: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sde: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdf: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdg: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdh: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
    }>;
    helpers: pulumi.Input<{
        devtmpfsAutomount: pulumi.Input<boolean>;
        distro: pulumi.Input<boolean>;
        modulesDep: pulumi.Input<boolean>;
        network: pulumi.Input<boolean>;
        updatedbDisabled: pulumi.Input<boolean>;
    }>;
    kernel: pulumi.Input<string>;
    label: pulumi.Input<string>;
    memoryLimit: pulumi.Input<number>;
    rootDevice: pulumi.Input<string>;
    runLevel: pulumi.Input<string>;
    virtMode: pulumi.Input<string>;
}>[]>;

Configuration profiles define the VM settings and boot behavior of the Linode Instance.

property disks

disks?: pulumi.Input<pulumi.Input<{
    authorizedKeys: pulumi.Input<pulumi.Input<string>[]>;
    authorizedUsers: pulumi.Input<pulumi.Input<string>[]>;
    filesystem: pulumi.Input<string>;
    id: pulumi.Input<number>;
    image: pulumi.Input<string>;
    label: pulumi.Input<string>;
    readOnly: pulumi.Input<boolean>;
    rootPass: pulumi.Input<string>;
    size: pulumi.Input<number>;
    stackscriptData: pulumi.Input<{[key: string]: any}>;
    stackscriptId: pulumi.Input<number>;
}>[]>;

property group

group?: pulumi.Input<string>;

The display group of the Linode instance.

property image

image?: pulumi.Input<string>;

An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use. Examples are linode/debian9, linode/fedora28, linode/ubuntu16.04lts, linode/arch, and private/12345. Changing image forces the creation of a new Linode Instance.

property label

label?: pulumi.Input<string>;

The Config’s label for display purposes. Also used by bootConfigLabel.

property privateIp

privateIp?: pulumi.Input<boolean>;

If true, the created Linode will have private networking enabled, allowing use of the 192.168.128.0/17 network within the Linode’s region. It can be enabled on an existing Linode but it can’t be disabled.

property region

region: pulumi.Input<string>;

This is the location where the Linode is deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode Instance..

property rootPass

rootPass?: pulumi.Input<string>;

The password that will be initialially assigned to the ‘root’ user account.

property stackscriptData

stackscriptData?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if ‘stackscript_id’ is given. The required values depend on the StackScript being deployed. This value can not be imported. Changing stackscriptData forces the creation of a new Linode Instance.

property stackscriptId

stackscriptId?: pulumi.Input<number>;

The StackScript to deploy to the newly created Linode. If provided, ‘image’ must also be provided, and must be an Image that is compatible with this StackScript. This value can not be imported. Changing stackscriptId forces the creation of a new Linode Instance.

property swapSize

swapSize?: pulumi.Input<number>;

When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

A list of tags applied to this object. Tags are for organizational purposes only.

property type

type?: pulumi.Input<string>;

The Linode type defines the pricing, CPU, disk, and RAM specs of the instance. Examples are "g6-nanode-1", "g6-standard-2", "g6-highmem-16", "g6-dedicated-16", etc.

property watchdogEnabled

watchdogEnabled?: pulumi.Input<boolean>;

The watchdog, named Lassie, is a Shutdown Watchdog that monitors your Linode and will reboot it if it powers off unexpectedly. It works by issuing a boot job when your Linode powers off without a shutdown job being responsible. To prevent a loop, Lassie will give up if there have been more than 5 boot jobs issued within 15 minutes.

interface InstanceState

Input properties used for looking up and filtering Instance resources.

property alerts

alerts?: pulumi.Input<{
    cpu: pulumi.Input<number>;
    io: pulumi.Input<number>;
    networkIn: pulumi.Input<number>;
    networkOut: pulumi.Input<number>;
    transferQuota: pulumi.Input<number>;
}>;

property authorizedKeys

authorizedKeys?: pulumi.Input<pulumi.Input<string>[]>;

A list of SSH public keys to deploy for the root user on the newly created Linode. Only accepted if image is provided. This value can not be imported. Changing authorizedKeys forces the creation of a new Linode Instance.

property authorizedUsers

authorizedUsers?: pulumi.Input<pulumi.Input<string>[]>;

A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the root user’s ~/.ssh/authorized_keys file automatically. This value can not be imported. Changing authorizedUsers forces the creation of a new Linode Instance.

property backupId

backupId?: pulumi.Input<number>;

A Backup ID from another Linode’s available backups. Your User must have readWrite access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode’s available backups. This field and the image field are mutually exclusive. This value can not be imported. Changing backupId forces the creation of a new Linode Instance.

property backups

backups?: pulumi.Input<{
    enabled: pulumi.Input<boolean>;
    schedule: pulumi.Input<{
        day: pulumi.Input<string>;
        window: pulumi.Input<string>;
    }>;
}>;

Information about this Linode’s backups status.

property backupsEnabled

backupsEnabled?: pulumi.Input<boolean>;

If this field is set to true, the created Linode will automatically be enrolled in the Linode Backup service. This will incur an additional charge. The cost for the Backup service is dependent on the Type of Linode deployed.

property bootConfigLabel

bootConfigLabel?: pulumi.Input<string>;

The Label of the Instance Config that should be used to boot the Linode instance. If there is only one config, the label of that config will be used as the bootConfigLabel. This value can not be imported.

property configs

configs?: pulumi.Input<pulumi.Input<{
    comments: pulumi.Input<string>;
    devices: pulumi.Input<{
        sda: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdb: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdc: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdd: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sde: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdf: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdg: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
        sdh: pulumi.Input<{
            diskId: pulumi.Input<number>;
            diskLabel: pulumi.Input<string>;
            volumeId: pulumi.Input<number>;
        }>;
    }>;
    helpers: pulumi.Input<{
        devtmpfsAutomount: pulumi.Input<boolean>;
        distro: pulumi.Input<boolean>;
        modulesDep: pulumi.Input<boolean>;
        network: pulumi.Input<boolean>;
        updatedbDisabled: pulumi.Input<boolean>;
    }>;
    kernel: pulumi.Input<string>;
    label: pulumi.Input<string>;
    memoryLimit: pulumi.Input<number>;
    rootDevice: pulumi.Input<string>;
    runLevel: pulumi.Input<string>;
    virtMode: pulumi.Input<string>;
}>[]>;

Configuration profiles define the VM settings and boot behavior of the Linode Instance.

property disks

disks?: pulumi.Input<pulumi.Input<{
    authorizedKeys: pulumi.Input<pulumi.Input<string>[]>;
    authorizedUsers: pulumi.Input<pulumi.Input<string>[]>;
    filesystem: pulumi.Input<string>;
    id: pulumi.Input<number>;
    image: pulumi.Input<string>;
    label: pulumi.Input<string>;
    readOnly: pulumi.Input<boolean>;
    rootPass: pulumi.Input<string>;
    size: pulumi.Input<number>;
    stackscriptData: pulumi.Input<{[key: string]: any}>;
    stackscriptId: pulumi.Input<number>;
}>[]>;

property group

group?: pulumi.Input<string>;

The display group of the Linode instance.

property image

image?: pulumi.Input<string>;

An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use. Examples are linode/debian9, linode/fedora28, linode/ubuntu16.04lts, linode/arch, and private/12345. Changing image forces the creation of a new Linode Instance.

property ipAddress

ipAddress?: pulumi.Input<string>;

This Linode’s Public IPv4 Address. If there are multiple public IPv4 addresses on this Instance, an arbitrary address will be used for this field.

property ipv4s

ipv4s?: pulumi.Input<pulumi.Input<string>[]>;

This Linode’s IPv4 Addresses. Each Linode is assigned a single public IPv4 address upon creation, and may get a single private IPv4 address if needed. You may need to open a support ticket to get additional IPv4 addresses.

property ipv6

ipv6?: pulumi.Input<string>;

This Linode’s IPv6 SLAAC addresses. This address is specific to a Linode, and may not be shared.

property label

label?: pulumi.Input<string>;

The Config’s label for display purposes. Also used by bootConfigLabel.

property privateIp

privateIp?: pulumi.Input<boolean>;

If true, the created Linode will have private networking enabled, allowing use of the 192.168.128.0/17 network within the Linode’s region. It can be enabled on an existing Linode but it can’t be disabled.

property privateIpAddress

privateIpAddress?: pulumi.Input<string>;

This Linode’s Private IPv4 Address. The regional private IP address range is 192.168.128/17 address shared by all Linode Instances in a region.

property region

region?: pulumi.Input<string>;

This is the location where the Linode is deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode Instance..

property rootPass

rootPass?: pulumi.Input<string>;

The password that will be initialially assigned to the ‘root’ user account.

property specs

specs?: pulumi.Input<{
    disk: pulumi.Input<number>;
    memory: pulumi.Input<number>;
    transfer: pulumi.Input<number>;
    vcpus: pulumi.Input<number>;
}>;

property stackscriptData

stackscriptData?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if ‘stackscript_id’ is given. The required values depend on the StackScript being deployed. This value can not be imported. Changing stackscriptData forces the creation of a new Linode Instance.

property stackscriptId

stackscriptId?: pulumi.Input<number>;

The StackScript to deploy to the newly created Linode. If provided, ‘image’ must also be provided, and must be an Image that is compatible with this StackScript. This value can not be imported. Changing stackscriptId forces the creation of a new Linode Instance.

property status

status?: pulumi.Input<string>;

The status of the instance, indicating the current readiness state.

property swapSize

swapSize?: pulumi.Input<number>;

When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

A list of tags applied to this object. Tags are for organizational purposes only.

property type

type?: pulumi.Input<string>;

The Linode type defines the pricing, CPU, disk, and RAM specs of the instance. Examples are "g6-nanode-1", "g6-standard-2", "g6-highmem-16", "g6-dedicated-16", etc.

property watchdogEnabled

watchdogEnabled?: pulumi.Input<boolean>;

The watchdog, named Lassie, is a Shutdown Watchdog that monitors your Linode and will reboot it if it powers off unexpectedly. It works by issuing a boot job when your Linode powers off without a shutdown job being responsible. To prevent a loop, Lassie will give up if there have been more than 5 boot jobs issued within 15 minutes.

interface NodeBalancerArgs

The set of arguments for constructing a NodeBalancer resource.

property clientConnThrottle

clientConnThrottle?: pulumi.Input<number>;

Throttle connections per second (0-20). Set to 0 (default) to disable throttling.

property label

label?: pulumi.Input<string>;

The label of the Linode NodeBalancer

property region

region: pulumi.Input<string>;

The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode NodeBalancer..

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

A list of tags applied to this object. Tags are for organizational purposes only.

interface NodeBalancerConfigArgs

The set of arguments for constructing a NodeBalancerConfig resource.

property algorithm

algorithm?: pulumi.Input<string>;

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

property check

check?: pulumi.Input<string>;

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and httpBody rely on the backend serving HTTP, and that the response returned matches what is expected.

property checkAttempts

checkAttempts?: pulumi.Input<number>;

How many times to attempt a check before considering a backend to be down. (1-30)

property checkBody

checkBody?: pulumi.Input<string>;

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

property checkInterval

checkInterval?: pulumi.Input<number>;

How often, in seconds, to check that backends are up and serving requests.

property checkPassive

checkPassive?: pulumi.Input<boolean>;

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

property checkPath

checkPath?: pulumi.Input<string>;

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

property checkTimeout

checkTimeout?: pulumi.Input<number>;

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

property cipherSuite

cipherSuite?: pulumi.Input<string>;

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

property nodebalancerId

nodebalancerId: pulumi.Input<number>;

The ID of the NodeBalancer to access.

property port

port?: pulumi.Input<number>;

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

property protocol

protocol?: pulumi.Input<string>;

The protocol this port is configured to serve. If this is set to https you must include an sslCert and an ssl_key. (Defaults to “http”)

property sslCert

sslCert?: pulumi.Input<string>;

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the sslCommonname and sslFingerprint to identify the certificate.

property sslKey

sslKey?: pulumi.Input<string>;

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the sslCommonname and sslFingerprint to identify the certificate.

property stickiness

stickiness?: pulumi.Input<string>;

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

interface NodeBalancerConfigState

Input properties used for looking up and filtering NodeBalancerConfig resources.

property algorithm

algorithm?: pulumi.Input<string>;

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

property check

check?: pulumi.Input<string>;

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and httpBody rely on the backend serving HTTP, and that the response returned matches what is expected.

property checkAttempts

checkAttempts?: pulumi.Input<number>;

How many times to attempt a check before considering a backend to be down. (1-30)

property checkBody

checkBody?: pulumi.Input<string>;

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

property checkInterval

checkInterval?: pulumi.Input<number>;

How often, in seconds, to check that backends are up and serving requests.

property checkPassive

checkPassive?: pulumi.Input<boolean>;

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

property checkPath

checkPath?: pulumi.Input<string>;

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

property checkTimeout

checkTimeout?: pulumi.Input<number>;

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

property cipherSuite

cipherSuite?: pulumi.Input<string>;

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

property nodeStatus

nodeStatus?: pulumi.Input<{
    statusDown: pulumi.Input<number>;
    statusUp: pulumi.Input<number>;
}>;

property nodebalancerId

nodebalancerId?: pulumi.Input<number>;

The ID of the NodeBalancer to access.

property port

port?: pulumi.Input<number>;

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

property protocol

protocol?: pulumi.Input<string>;

The protocol this port is configured to serve. If this is set to https you must include an sslCert and an ssl_key. (Defaults to “http”)

property sslCert

sslCert?: pulumi.Input<string>;

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the sslCommonname and sslFingerprint to identify the certificate.

property sslCommonname

sslCommonname?: pulumi.Input<string>;

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

property sslFingerprint

sslFingerprint?: pulumi.Input<string>;

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

property sslKey

sslKey?: pulumi.Input<string>;

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the sslCommonname and sslFingerprint to identify the certificate.

property stickiness

stickiness?: pulumi.Input<string>;

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

interface NodeBalancerNodeArgs

The set of arguments for constructing a NodeBalancerNode resource.

property address

address: pulumi.Input<string>;

The private IP Address where this backend can be reached. This must be a private IP address.

property configId

configId: pulumi.Input<number>;

The ID of the NodeBalancerConfig to access.

property label

label: pulumi.Input<string>;

The label of the Linode NodeBalancer Node. This is for display purposes only.

property mode

mode?: pulumi.Input<string>;

The mode this NodeBalancer should use when sending traffic to this backend. If set to accept this backend is accepting traffic. If set to reject this backend will not receive traffic. If set to drain this backend will not receive new traffic, but connections already pinned to it will continue to be routed to it

property nodebalancerId

nodebalancerId: pulumi.Input<number>;

The ID of the NodeBalancer to access.

property weight

weight?: pulumi.Input<number>;

Used when picking a backend to serve a request and is not pinned to a single backend yet. Nodes with a higher weight will receive more traffic. (1-255).

interface NodeBalancerNodeState

Input properties used for looking up and filtering NodeBalancerNode resources.

property address

address?: pulumi.Input<string>;

The private IP Address where this backend can be reached. This must be a private IP address.

property configId

configId?: pulumi.Input<number>;

The ID of the NodeBalancerConfig to access.

property label

label?: pulumi.Input<string>;

The label of the Linode NodeBalancer Node. This is for display purposes only.

property mode

mode?: pulumi.Input<string>;

The mode this NodeBalancer should use when sending traffic to this backend. If set to accept this backend is accepting traffic. If set to reject this backend will not receive traffic. If set to drain this backend will not receive new traffic, but connections already pinned to it will continue to be routed to it

property nodebalancerId

nodebalancerId?: pulumi.Input<number>;

The ID of the NodeBalancer to access.

property status

status?: pulumi.Input<string>;

The current status of this node, based on the configured checks of its NodeBalancer Config. (unknown, UP, DOWN)

property weight

weight?: pulumi.Input<number>;

Used when picking a backend to serve a request and is not pinned to a single backend yet. Nodes with a higher weight will receive more traffic. (1-255).

interface NodeBalancerState

Input properties used for looking up and filtering NodeBalancer resources.

property clientConnThrottle

clientConnThrottle?: pulumi.Input<number>;

Throttle connections per second (0-20). Set to 0 (default) to disable throttling.

property created

created?: pulumi.Input<string>;

property hostname

hostname?: pulumi.Input<string>;

This NodeBalancer’s hostname, ending with .nodebalancer.linode.com

property ipv4

ipv4?: pulumi.Input<string>;

The Public IPv4 Address of this NodeBalancer

property ipv6

ipv6?: pulumi.Input<string>;

The Public IPv6 Address of this NodeBalancer

property label

label?: pulumi.Input<string>;

The label of the Linode NodeBalancer

property region

region?: pulumi.Input<string>;

The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode NodeBalancer..

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

A list of tags applied to this object. Tags are for organizational purposes only.

property transfer

transfer?: pulumi.Input<{
    in: pulumi.Input<number>;
    out: pulumi.Input<number>;
    total: pulumi.Input<number>;
}>;

property updated

updated?: pulumi.Input<string>;

interface ProviderArgs

The set of arguments for constructing a Provider resource.

property token

token?: pulumi.Input<string>;

The token that allows you access to your Linode account

property uaPrefix

uaPrefix?: pulumi.Input<string>;

An HTTP User-Agent Prefix to prepend in API requests.

property url

url?: pulumi.Input<string>;

The HTTP(S) API address of the Linode API to use.

interface RdnsArgs

The set of arguments for constructing a Rdns resource.

property address

address: pulumi.Input<string>;

The Public IPv4 or IPv6 address that will receive the PTR record. A matching A or AAAA record must exist.

property rdns

rdns: pulumi.Input<string>;

The name of the RDNS address.

interface RdnsState

Input properties used for looking up and filtering Rdns resources.

property address

address?: pulumi.Input<string>;

The Public IPv4 or IPv6 address that will receive the PTR record. A matching A or AAAA record must exist.

property rdns

rdns?: pulumi.Input<string>;

The name of the RDNS address.

interface SshKeyArgs

The set of arguments for constructing a SshKey resource.

property label

label: pulumi.Input<string>;

A label for the SSH Key.

property sshKey

sshKey: pulumi.Input<string>;

The public SSH Key, which is used to authenticate to the root user of the Linodes you deploy.

interface SshKeyState

Input properties used for looking up and filtering SshKey resources.

property created

created?: pulumi.Input<string>;

The date this key was added.

property label

label?: pulumi.Input<string>;

A label for the SSH Key.

property sshKey

sshKey?: pulumi.Input<string>;

The public SSH Key, which is used to authenticate to the root user of the Linodes you deploy.

interface StackScriptArgs

The set of arguments for constructing a StackScript resource.

property description

description: pulumi.Input<string>;

A description for the StackScript.

property images

images: pulumi.Input<pulumi.Input<string>[]>;

An array of Image IDs representing the Images that this StackScript is compatible for deploying with.

property isPublic

isPublic?: pulumi.Input<boolean>;

This determines whether other users can use your StackScript. Once a StackScript is made public, it cannot be made private. Changing isPublic forces the creation of a new StackScript

property label

label: pulumi.Input<string>;

The StackScript’s label is for display purposes only.

property revNote

revNote?: pulumi.Input<string>;

This field allows you to add notes for the set of revisions made to this StackScript.

property script

script: pulumi.Input<string>;

The script to execute when provisioning a new Linode with this StackScript.

property userDefinedFields

userDefinedFields?: pulumi.Input<pulumi.Input<{
    default: pulumi.Input<string>;
    example: pulumi.Input<string>;
    label: pulumi.Input<string>;
    manyOf: pulumi.Input<string>;
    name: pulumi.Input<string>;
    oneOf: pulumi.Input<string>;
}>[]>;

This is a list of fields defined with a special syntax inside this StackScript that allow for supplying customized parameters during deployment.

interface StackScriptState

Input properties used for looking up and filtering StackScript resources.

property created

created?: pulumi.Input<string>;

The date this StackScript was created.

property deploymentsActive

deploymentsActive?: pulumi.Input<number>;

Count of currently active, deployed Linodes created from this StackScript.

property deploymentsTotal

deploymentsTotal?: pulumi.Input<number>;

The total number of times this StackScript has been deployed.

property description

description?: pulumi.Input<string>;

A description for the StackScript.

property images

images?: pulumi.Input<pulumi.Input<string>[]>;

An array of Image IDs representing the Images that this StackScript is compatible for deploying with.

property isPublic

isPublic?: pulumi.Input<boolean>;

This determines whether other users can use your StackScript. Once a StackScript is made public, it cannot be made private. Changing isPublic forces the creation of a new StackScript

property label

label?: pulumi.Input<string>;

The StackScript’s label is for display purposes only.

property revNote

revNote?: pulumi.Input<string>;

This field allows you to add notes for the set of revisions made to this StackScript.

property script

script?: pulumi.Input<string>;

The script to execute when provisioning a new Linode with this StackScript.

property updated

updated?: pulumi.Input<string>;

The date this StackScript was updated.

property userDefinedFields

userDefinedFields?: pulumi.Input<pulumi.Input<{
    default: pulumi.Input<string>;
    example: pulumi.Input<string>;
    label: pulumi.Input<string>;
    manyOf: pulumi.Input<string>;
    name: pulumi.Input<string>;
    oneOf: pulumi.Input<string>;
}>[]>;

This is a list of fields defined with a special syntax inside this StackScript that allow for supplying customized parameters during deployment.

property userGravatarId

userGravatarId?: pulumi.Input<string>;

The Gravatar ID for the User who created the StackScript.

property username

username?: pulumi.Input<string>;

The User who created the StackScript.

interface TokenArgs

The set of arguments for constructing a Token resource.

property expiry

expiry?: pulumi.Input<string>;

When this token will expire. Personal Access Tokens cannot be renewed, so after this time the token will be completely unusable and a new token will need to be generated. Tokens may be created with ‘null’ as their expiry and will never expire unless revoked.

property label

label?: pulumi.Input<string>;

A label for the Token.

property scopes

scopes: pulumi.Input<string>;

The scopes this token was created with. These define what parts of the Account the token can be used to access. Many command-line tools, such as the Linode CLI, require tokens with access to *. Tokens with more restrictive scopes are generally more secure.

interface TokenState

Input properties used for looking up and filtering Token resources.

property created

created?: pulumi.Input<string>;

The date and time this token was created.

property expiry

expiry?: pulumi.Input<string>;

When this token will expire. Personal Access Tokens cannot be renewed, so after this time the token will be completely unusable and a new token will need to be generated. Tokens may be created with ‘null’ as their expiry and will never expire unless revoked.

property label

label?: pulumi.Input<string>;

A label for the Token.

property scopes

scopes?: pulumi.Input<string>;

The scopes this token was created with. These define what parts of the Account the token can be used to access. Many command-line tools, such as the Linode CLI, require tokens with access to *. Tokens with more restrictive scopes are generally more secure.

property token

token?: pulumi.Input<string>;

The token used to access the API.

interface VolumeArgs

The set of arguments for constructing a Volume resource.

property label

label: pulumi.Input<string>;

The label of the Linode Volume

property linodeId

linodeId?: pulumi.Input<number>;

The ID of a Linode Instance where the the Volume should be attached.

property region

region: pulumi.Input<string>;

The region where this volume will be deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode Volume..

property size

size?: pulumi.Input<number>;

Size of the Volume in GB.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

A list of tags applied to this object. Tags are for organizational purposes only.

interface VolumeState

Input properties used for looking up and filtering Volume resources.

property filesystemPath

filesystemPath?: pulumi.Input<string>;

The full filesystem path for the Volume based on the Volume’s label. Path is /dev/disk/by-id/scsi-0LinodeVolume + Volume label.

property label

label?: pulumi.Input<string>;

The label of the Linode Volume

property linodeId

linodeId?: pulumi.Input<number>;

The ID of a Linode Instance where the the Volume should be attached.

property region

region?: pulumi.Input<string>;

The region where this volume will be deployed. Examples are "us-east", "us-west", "ap-south", etc. Changing region forces the creation of a new Linode Volume..

property size

size?: pulumi.Input<number>;

Size of the Volume in GB.

property status

status?: pulumi.Input<string>;

The status of the volume, indicating the current readiness state.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

A list of tags applied to this object. Tags are for organizational purposes only.