The Automation API is now available. No CLI. No human-in-the-loop. Just your code. Learn More

Package @pulumi/civo

This page documents the language specification for the civo package. If you're looking for help working with the inputs, outputs, or functions of civo resources in a Pulumi program, please see the resource documentation for examples and API reference.

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

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

Modules

Resources

Functions

Others

Resources

Resource DnsDomainName

class DnsDomainName extends CustomResource

Provides a Civo dns domain name resource.

Example Usage

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

// Create a new domain name
const main = new civo.DnsDomainName("main", {});

constructor

new DnsDomainName(name: string, args?: DnsDomainNameArgs, opts?: pulumi.CustomResourceOptions)

Create a DnsDomainName 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?: DnsDomainNameState, opts?: pulumi.CustomResourceOptions): DnsDomainName

Get an existing DnsDomainName 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): obj is DnsDomainName

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

property accountId

public accountId: pulumi.Output<string>;

The id account of the domain

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 the domain

property urn

urn: Output<URN>;

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

Resource DnsDomainRecord

class DnsDomainRecord extends CustomResource

Provides a Civo dns domain record resource.

Example Usage

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

// Create a new domain record
const www = new civo.DnsDomainRecord("www", {
    domainId: civo_dns_domain_name.main.id,
    type: "A",
    value: civo_instance.foo.public_ip,
    ttl: 600,
}, {
    dependsOn: [
        civo_dns_domain_name.main,
        civo_instance.foo,
    ],
});

constructor

new DnsDomainRecord(name: string, args: DnsDomainRecordArgs, opts?: pulumi.CustomResourceOptions)

Create a DnsDomainRecord 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?: DnsDomainRecordState, opts?: pulumi.CustomResourceOptions): DnsDomainRecord

Get an existing DnsDomainRecord 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): obj is DnsDomainRecord

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

property accountId

public accountId: pulumi.Output<string>;

The id account of the domain

property createdAt

public createdAt: pulumi.Output<string>;

The date when it was created in UTC format

property domainId

public domainId: pulumi.Output<string>;

The id of the domain

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 portion before the domain name (e.g. www) or an @ for the apex/root domain (you cannot use an A record with an amex/root domain)

property priority

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

Useful for MX records only, the priority mail should be attempted it (defaults to 10)

property ttl

public ttl: pulumi.Output<number>;

How long caching DNS servers should cache this record for, in seconds (the minimum is 600 and the default if unspecified is 600)

property type

public type: pulumi.Output<string>;

The choice of record type from A, CNAME, MX, SRV or TXT

property updatedAt

public updatedAt: pulumi.Output<string>;

The date when it was updated in UTC format

property urn

urn: Output<URN>;

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

property value

public value: pulumi.Output<string>;

The IP address (A or MX), hostname (CNAME or MX) or text value (TXT) to serve for this record

Resource Firewall

class Firewall extends CustomResource

Provides a Civo Cloud Firewall resource. This can be used to create, modify, and delete Firewalls.

Example Usage

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

const www = new civo.Firewall("www", {});

constructor

new Firewall(name: string, args?: FirewallArgs, opts?: pulumi.CustomResourceOptions)

Create a Firewall 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?: FirewallState, opts?: pulumi.CustomResourceOptions): Firewall

Get an existing Firewall 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): obj is Firewall

Returns true if the given object is an instance of Firewall. 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 name

public name: pulumi.Output<string>;

The Firewall name

property region

public region: pulumi.Output<string>;

The region where the firewall was create.

property urn

urn: Output<URN>;

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

Resource FirewallRule

class FirewallRule extends CustomResource

Provides a Civo Cloud Firewall Rule resource. This can be used to create, modify, and delete Firewalls Rules. This resource don’t have an update option because the backend don’t have the support for that, so in this case we use ForceNew for all object in the resource.

constructor

new FirewallRule(name: string, args: FirewallRuleArgs, opts?: pulumi.CustomResourceOptions)

Create a FirewallRule 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?: FirewallRuleState, opts?: pulumi.CustomResourceOptions): FirewallRule

Get an existing FirewallRule 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): obj is FirewallRule

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

property cidrs

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

the IP address of the other end (i.e. not your instance) to affect, or a valid network CIDR (defaults to being globally applied, i.e. 0.0.0.0/0).

property direction

public direction: pulumi.Output<string>;

will this rule affect ingress traffic

property endPort

public endPort: pulumi.Output<string>;

The end port where traffic to be allowed.

property firewallId

public firewallId: pulumi.Output<string>;

The Firewall id

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 string that will be the displayed name/reference for this rule (optional)

property protocol

public protocol: pulumi.Output<string>;

This may be one of “tcp”, “udp”, or “icmp”.

property startPort

public startPort: pulumi.Output<string>;

The start port where traffic to be allowed.

property urn

urn: Output<URN>;

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

Resource Instance

class Instance extends CustomResource

Provides a Civo Instance resource. This can be used to create, modify, and delete Instances.

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): obj is Instance

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 cpuCores

public cpuCores: pulumi.Output<number>;

Total cpu of the inatance.

property createdAt

public createdAt: pulumi.Output<string>;

The date of creation of the instance

property diskGb

public diskGb: pulumi.Output<number>;

The size of the disk.

property firewallId

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

The ID of the firewall to use, from the current list. If left blank or not sent, the default firewall will be used (open to all).

property hostname

public hostname: pulumi.Output<string>;

The Instance hostname.

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 initialPassword

public initialPassword: pulumi.Output<string>;

Instance initial password

property initialUser

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

The name of the initial user created on the server (optional; this will default to the template’s defaultUsername and fallback to civo).

property networkId

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

This must be the ID of the network from the network listing (optional; default network used when not specified).

property notes

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

Add some notes to the instance.

property privateIp

public privateIp: pulumi.Output<string>;

The private ip.

property pseudoIp

public pseudoIp: pulumi.Output<string>;

Is the ip that is used to route the public ip from the internet to the instance using NAT

property publicIp

public publicIp: pulumi.Output<string>;

The public ip.

property publicIpRequired

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

This should be either false, true or move_ip_from:intances_id.

property ramMb

public ramMb: pulumi.Output<number>;

Total ram of the instance.

property reverseDns

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

A fully qualified domain name that should be used as the instance’s IP’s reverse DNS (optional, uses the hostname if unspecified).

property script

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

the contents of a script that will be uploaded to /usr/local/bin/civo-user-init-script on your instance, read/write/executable only by root and then will be executed at the end of the cloud initialization

property size

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

The name of the size, from the current list, e.g. g2.small (required).

property sshkeyId

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

The ID of an already uploaded SSH public key to use for login to the default user (optional; if one isn’t provided a random password will be set and returned in the initialPassword field).

property status

public status: pulumi.Output<string>;

The status of the instance

property tags

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

An optional list of tags, represented as a key, value pair.

property template

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

The ID for the template to use to build the instance.

property urn

urn: Output<URN>;

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

Resource KubernetesCluster

class KubernetesCluster extends CustomResource

constructor

new KubernetesCluster(name: string, args?: KubernetesClusterArgs, opts?: pulumi.CustomResourceOptions)

Create a KubernetesCluster 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?: KubernetesClusterState, opts?: pulumi.CustomResourceOptions): KubernetesCluster

Get an existing KubernetesCluster 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): obj is KubernetesCluster

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

property apiEndpoint

public apiEndpoint: pulumi.Output<string>;

The base URL of the API server on the Kubernetes master node.

property applications

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

A comma separated list of applications to install. Spaces within application names are fine, but shouldn’t be either side of the comma. If you want to remove a default installed application, prefix it with a ‘-’, e.g. -traefik

property builtAt

public builtAt: pulumi.Output<string>;

The date where the Kubernetes cluster was build.

property createdAt

public createdAt: pulumi.Output<string>;

The date where the Kubernetes cluster was create.

property dnsEntry

public dnsEntry: pulumi.Output<string>;

The unique dns entry for the cluster in this case point to the master.

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 installedApplications

public installedApplications: pulumi.Output<KubernetesClusterInstalledApplication[]>;

A unique ID that can be used to identify and reference a Kubernetes cluster.

property instances

public instances: pulumi.Output<KubernetesClusterInstance[]>;

In addition to the arguments provided, these additional attributes about the cluster’s default node instance are exported.

property kubeconfig

public kubeconfig: pulumi.Output<string>;

A representation of the Kubernetes cluster’s kubeconfig in yaml format.

property kubernetesVersion

public kubernetesVersion: pulumi.Output<string>;

The version of k3s to install (The default is currently the latest available).

property masterIp

public masterIp: pulumi.Output<string>;

The Ip of the Kubernetes master node.

property name

public name: pulumi.Output<string>;

A name for the Kubernetes cluster.

property numTargetNodes

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

The number of instances to create (The default at the time of writing is 3).

property ready

public ready: pulumi.Output<boolean>;

property status

public status: pulumi.Output<string>;

The status of Kubernetes cluster. * ready -If the Kubernetes cluster is ready.

property tags

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

A space separated list of tags, to be used freely as required.

property targetNodesSize

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

The size of each node (The default is currently g2.small)

property urn

urn: Output<URN>;

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

Resource LoadBalancer

class LoadBalancer extends CustomResource

constructor

new LoadBalancer(name: string, args: LoadBalancerArgs, opts?: pulumi.CustomResourceOptions)

Create a LoadBalancer 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?: LoadBalancerState, opts?: pulumi.CustomResourceOptions): LoadBalancer

Get an existing LoadBalancer 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): obj is LoadBalancer

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

property backends

public backends: pulumi.Output<LoadBalancerBackend[]>;

a list of backend instances, each containing an instance_id, protocol (http or https) and port

property failTimeout

public failTimeout: pulumi.Output<number>;

how long to wait in seconds before determining a backend has failed, defaults to 30

property healthCheckPath

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

what URL should be used on the backends to determine if it’s OK (2xx/3xx status), defaults to /

property hostname

public hostname: pulumi.Output<string>;

the hostname to receive traffic for, e.g. www.example.com (optional: sets hostname to loadbalancer-uuid.civo.com if blank)

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 ignoreInvalidBackendTls

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

should self-signed/invalid certificates be ignored from the backend servers, defaults to true

property maxConns

public maxConns: pulumi.Output<number>;

how many concurrent connections can each backend handle, defaults to 10

property maxRequestSize

public maxRequestSize: pulumi.Output<number>;

the size in megabytes of the maximum request content that will be accepted, defaults to 20

property policy

public policy: pulumi.Output<string>;

one of: least_conn (sends new requests to the least busy server), random (sends new requests to a random backend), round_robin (sends new requests to the next backend in order), ip_hash (sends requests from a given IP address to the same backend), default is random

property port

public port: pulumi.Output<number>;

you can listen on any port, the default is 80 to match the default protocol of http,if not you must specify it here (commonly 80 for HTTP or 443 for HTTPS)

property protocol

public protocol: pulumi.Output<string>;

either http or https. If you specify https then you must also provide the next two fields, the default is http

property tlsCertificate

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

if your protocol is https then you should send the TLS certificate in Base64-encoded PEM format

property tlsKey

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

if your protocol is https then you should send the TLS private key in Base64-encoded PEM format

property urn

urn: Output<URN>;

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

Resource Network

class Network extends CustomResource

Provides a Civo Network resource. This can be used to create, modify, and delete Networks.

Example Usage

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

const customNet = new civo.Network("custom_net", {
    label: "test_network",
});

constructor

new Network(name: string, args: NetworkArgs, opts?: pulumi.CustomResourceOptions)

Create a Network 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?: NetworkState, opts?: pulumi.CustomResourceOptions): Network

Get an existing Network 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): obj is Network

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

property cidr

public cidr: pulumi.Output<string>;

The block ip assigned to the network.

property default

public default: pulumi.Output<boolean>;

If is the default network.

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 Network label

property name

public name: pulumi.Output<string>;

The name of the network.

property region

public region: pulumi.Output<string>;

The region where the network was create.

property urn

urn: Output<URN>;

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

Resource Provider

class Provider extends ProviderResource

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

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): obj is Provider

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.

method register

static register(provider: ProviderResource | undefined): Promise<string | undefined>

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.

Resource Snapshot

class Snapshot extends CustomResource

Provides a resource which can be used to create a snapshot from an existing Civo Instance.

Example Usage

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

const myinstance_backup = new civo.Snapshot("myinstance-backup", {instanceId: civo_instance.myinstance.id});

constructor

new Snapshot(name: string, args: SnapshotArgs, opts?: pulumi.CustomResourceOptions)

Create a Snapshot 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?: SnapshotState, opts?: pulumi.CustomResourceOptions): Snapshot

Get an existing Snapshot 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): obj is Snapshot

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

property completedAt

public completedAt: pulumi.Output<string>;

The date where the snapshot was completed.

property cronTiming

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

If a valid cron string is passed, the snapshot will be saved as an automated snapshot continuing to automatically update based on the schedule of the cron sequence provided The default is nil meaning the snapshot will be saved as a one-off snapshot.

property hostname

public hostname: pulumi.Output<string>;

The hostname of the 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 instanceId

public instanceId: pulumi.Output<string>;

The ID of the Instance from which the snapshot will be taken.

property name

public name: pulumi.Output<string>;

A name for the instance snapshot.

property nextExecution

public nextExecution: pulumi.Output<string>;

if cron was define this date will be the next execution date.

property region

public region: pulumi.Output<string>;

The region where the snapshot was take.

property requestedAt

public requestedAt: pulumi.Output<string>;

The date where the snapshot was requested.

property safe

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

If true the instance will be shut down during the snapshot to ensure all files are in a consistent state (e.g. database tables aren’t in the middle of being optimised and hence risking corruption). The default is false so you experience no interruption of service, but a small risk of corruption.

property sizeGb

public sizeGb: pulumi.Output<number>;

The size of the snapshot in GB.

property state

public state: pulumi.Output<string>;

The status of the snapshot.

property templateId

public templateId: pulumi.Output<string>;

The template id.

property urn

urn: Output<URN>;

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

Resource SshKey

class SshKey extends CustomResource

Provides a Civo SSH key resource to allow you to manage SSH keys for Instance access. Keys created with this resource can be referenced in your instance configuration via their ID.

Example Usage

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

const my_user = new civo.SshKey("my-user", {publicKey: fs.readFileSync("~/.ssh/id_rsa.pub")});

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): obj is SshKey

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 fingerprint

public fingerprint: pulumi.Output<string>;

The fingerprint of the SSH key

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 the SSH key for identification

property publicKey

public publicKey: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

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

Resource Template

class Template extends CustomResource

Provides a Civo Template resource. This can be used to create, modify, and delete Templates.

constructor

new Template(name: string, args: TemplateArgs, opts?: pulumi.CustomResourceOptions)

Create a Template 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?: TemplateState, opts?: pulumi.CustomResourceOptions): Template

Get an existing Template 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): obj is Template

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

property cloudConfig

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

Commonly referred to as ‘user-data’, this is a customisation script that is run after the instance is first booted. We recommend using cloud-config as it’s a great distribution-agnostic way of configuring cloud servers. If you put $INITIAL_USER in your script, this will automatically be replaced by the initial user chosen when creating the instance, $INITIAL_PASSWORD will be replaced with the random password generated by the system, $HOSTNAME is the fully qualified domain name of the instance and $SSH_KEY will be the content of the SSH public key. (this is technically optional, but you won’t really be able to use instances without it - see our learn guide on templates for more information).

property code

public code: pulumi.Output<string>;

This is a unqiue, alphanumerical, short, human readable code for the template.

property defaultUsername

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

The default username to suggest that the user creates

property description

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

A multi-line description of the template, in Markdown format

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 imageId

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

This is the Image ID of any default template or the ID of another template either owned by you or global (optional; but must be specified if no volumeId is specified).

property name

public name: pulumi.Output<string>;

This is a short human readable name for the template

property shortDescription

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

A one line description of the template

property urn

urn: Output<URN>;

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

property volumeId

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

This is the ID of a bootable volume, either owned by you or global (optional; but must be specified if no imageId is specified)

Resource Volume

class Volume extends CustomResource

Provides a Civo volume which can be attached to a Instance in order to provide expanded storage.

Example Usage

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

const db = new civo.Volume("db", {
    bootable: false,
    sizeGb: 60,
});

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): obj is Volume

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 bootable

public bootable: pulumi.Output<boolean>;

Mark the volume as bootable.

property createdAt

public createdAt: pulumi.Output<string>;

The date of the creation of the volume.

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 mountPoint

public mountPoint: pulumi.Output<string>;

The mount point of the volume.

property name

public name: pulumi.Output<string>;

A name that you wish to use to refer to this volume .

property sizeGb

public sizeGb: pulumi.Output<number>;

A minimum of 1 and a maximum of your available disk space from your quota specifies the size of the volume in gigabytes .

property urn

urn: Output<URN>;

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

Resource VolumeAttachment

class VolumeAttachment extends CustomResource

Manages attaching a Volume to a Instance.

Example Usage

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

const db = new civo.Volume("db", {
    sizeGb: 60,
    bootable: false,
});
const foobar = new civo.VolumeAttachment("foobar", {
    instanceId: civo_instance["my-test-instance"].id,
    volumeId: db.id,
});

constructor

new VolumeAttachment(name: string, args: VolumeAttachmentArgs, opts?: pulumi.CustomResourceOptions)

Create a VolumeAttachment 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?: VolumeAttachmentState, opts?: pulumi.CustomResourceOptions): VolumeAttachment

Get an existing VolumeAttachment 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): obj is VolumeAttachment

Returns true if the given object is an instance of VolumeAttachment. 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 instanceId

public instanceId: pulumi.Output<string>;

ID of the instance to attach the volume to.

property urn

urn: Output<URN>;

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

property volumeId

public volumeId: pulumi.Output<string>;

ID of the Volume to be attached to the instance.

Functions

Function getDnsDomainName

getDnsDomainName(args?: GetDnsDomainNameArgs, opts?: pulumi.InvokeOptions): Promise<GetDnsDomainNameResult>

Function getDnsDomainRecord

getDnsDomainRecord(args: GetDnsDomainRecordArgs, opts?: pulumi.InvokeOptions): Promise<GetDnsDomainRecordResult>

Function getInstance

getInstance(args?: GetInstanceArgs, opts?: pulumi.InvokeOptions): Promise<GetInstanceResult>

Function getInstances

getInstances(args?: GetInstancesArgs, opts?: pulumi.InvokeOptions): Promise<GetInstancesResult>

Function getInstancesSize

getInstancesSize(args?: GetInstancesSizeArgs, opts?: pulumi.InvokeOptions): Promise<GetInstancesSizeResult>

Function getKubernetesCluster

getKubernetesCluster(args?: GetKubernetesClusterArgs, opts?: pulumi.InvokeOptions): Promise<GetKubernetesClusterResult>

Provides a Civo Kubernetes cluster data source.

Note: This data source returns a single kubernetes cluster. When specifying a name, an error is triggered if more than one kubernetes Cluster is found.

Example Usage

Get the Kubernetes Cluster by name:

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

const my-cluster = civo.getKubernetesCluster({
    name: "my-super-cluster",
});
export const kubernetesClusterOutput = my_cluster.then(my_cluster => my_cluster.masterIp);

Get the Kubernetes Cluster by id:

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

const my_cluster = pulumi.output(civo.getKubernetesCluster({
    name: "40ac97ee-b82b-4231-9b60-079c7e2e5d79",
}, { async: true }));

Function getKubernetesVersion

getKubernetesVersion(args?: GetKubernetesVersionArgs, opts?: pulumi.InvokeOptions): Promise<GetKubernetesVersionResult>

Provides access to the available Civo Kubernetes Service versions, with the ability to filter the results.

Example Usage

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

const stable = pulumi.output(civo.getKubernetesVersion({
    filters: [{
        key: "type",
        values: ["stable"],
    }],
}, { async: true }));
Pin a Kubernetes cluster to a specific minor version
import * as pulumi from "@pulumi/pulumi";
import * as civo from "@pulumi/civo";

const minorVersion = pulumi.output(civo.getKubernetesVersion({
    filters: [{
        key: "version",
        values: ["0.9.1"],
    }],
}, { async: true }));

Function getLoadBalancer

getLoadBalancer(args?: GetLoadBalancerArgs, opts?: pulumi.InvokeOptions): Promise<GetLoadBalancerResult>

Function getNetwork

getNetwork(args?: GetNetworkArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkResult>

Function getSnapshot

getSnapshot(args?: GetSnapshotArgs, opts?: pulumi.InvokeOptions): Promise<GetSnapshotResult>

Snapshots are saved instances of a block storage volume. Use this data source to retrieve the ID of a Civo snapshot for use in other resources.

Example Usage

Get the snapshot:

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

const mysql_vm = pulumi.output(civo.getSnapshot({
    name: "mysql-vm",
}, { async: true }));

Function getSshKey

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

Function getTemplate

getTemplate(args?: GetTemplateArgs, opts?: pulumi.InvokeOptions): Promise<GetTemplateResult>

Function getVolume

getVolume(args?: GetVolumeArgs, opts?: pulumi.InvokeOptions): Promise<GetVolumeResult>

Others

interface DnsDomainNameArgs

interface DnsDomainNameArgs

The set of arguments for constructing a DnsDomainName resource.

property name

name?: pulumi.Input<string>;

The name of the domain

interface DnsDomainNameState

interface DnsDomainNameState

Input properties used for looking up and filtering DnsDomainName resources.

property accountId

accountId?: pulumi.Input<string>;

The id account of the domain

property name

name?: pulumi.Input<string>;

The name of the domain

interface DnsDomainRecordArgs

interface DnsDomainRecordArgs

The set of arguments for constructing a DnsDomainRecord resource.

property domainId

domainId: pulumi.Input<string>;

The id of the domain

property name

name?: pulumi.Input<string>;

The portion before the domain name (e.g. www) or an @ for the apex/root domain (you cannot use an A record with an amex/root domain)

property priority

priority?: pulumi.Input<number>;

Useful for MX records only, the priority mail should be attempted it (defaults to 10)

property ttl

ttl: pulumi.Input<number>;

How long caching DNS servers should cache this record for, in seconds (the minimum is 600 and the default if unspecified is 600)

property type

type: pulumi.Input<string>;

The choice of record type from A, CNAME, MX, SRV or TXT

property value

value: pulumi.Input<string>;

The IP address (A or MX), hostname (CNAME or MX) or text value (TXT) to serve for this record

interface DnsDomainRecordState

interface DnsDomainRecordState

Input properties used for looking up and filtering DnsDomainRecord resources.

property accountId

accountId?: pulumi.Input<string>;

The id account of the domain

property createdAt

createdAt?: pulumi.Input<string>;

The date when it was created in UTC format

property domainId

domainId?: pulumi.Input<string>;

The id of the domain

property name

name?: pulumi.Input<string>;

The portion before the domain name (e.g. www) or an @ for the apex/root domain (you cannot use an A record with an amex/root domain)

property priority

priority?: pulumi.Input<number>;

Useful for MX records only, the priority mail should be attempted it (defaults to 10)

property ttl

ttl?: pulumi.Input<number>;

How long caching DNS servers should cache this record for, in seconds (the minimum is 600 and the default if unspecified is 600)

property type

type?: pulumi.Input<string>;

The choice of record type from A, CNAME, MX, SRV or TXT

property updatedAt

updatedAt?: pulumi.Input<string>;

The date when it was updated in UTC format

property value

value?: pulumi.Input<string>;

The IP address (A or MX), hostname (CNAME or MX) or text value (TXT) to serve for this record

interface FirewallArgs

interface FirewallArgs

The set of arguments for constructing a Firewall resource.

property name

name?: pulumi.Input<string>;

The Firewall name

interface FirewallRuleArgs

interface FirewallRuleArgs

The set of arguments for constructing a FirewallRule resource.

property cidrs

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

the IP address of the other end (i.e. not your instance) to affect, or a valid network CIDR (defaults to being globally applied, i.e. 0.0.0.0/0).

property direction

direction: pulumi.Input<string>;

will this rule affect ingress traffic

property endPort

endPort: pulumi.Input<string>;

The end port where traffic to be allowed.

property firewallId

firewallId: pulumi.Input<string>;

The Firewall id

property label

label?: pulumi.Input<string>;

a string that will be the displayed name/reference for this rule (optional)

property protocol

protocol: pulumi.Input<string>;

This may be one of “tcp”, “udp”, or “icmp”.

property startPort

startPort: pulumi.Input<string>;

The start port where traffic to be allowed.

interface FirewallRuleState

interface FirewallRuleState

Input properties used for looking up and filtering FirewallRule resources.

property cidrs

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

the IP address of the other end (i.e. not your instance) to affect, or a valid network CIDR (defaults to being globally applied, i.e. 0.0.0.0/0).

property direction

direction?: pulumi.Input<string>;

will this rule affect ingress traffic

property endPort

endPort?: pulumi.Input<string>;

The end port where traffic to be allowed.

property firewallId

firewallId?: pulumi.Input<string>;

The Firewall id

property label

label?: pulumi.Input<string>;

a string that will be the displayed name/reference for this rule (optional)

property protocol

protocol?: pulumi.Input<string>;

This may be one of “tcp”, “udp”, or “icmp”.

property startPort

startPort?: pulumi.Input<string>;

The start port where traffic to be allowed.

interface FirewallState

interface FirewallState

Input properties used for looking up and filtering Firewall resources.

property name

name?: pulumi.Input<string>;

The Firewall name

property region

region?: pulumi.Input<string>;

The region where the firewall was create.

interface GetDnsDomainNameArgs

interface GetDnsDomainNameArgs

A collection of arguments for invoking getDnsDomainName.

property id

id?: undefined | string;

The id of the domain.

property name

name?: undefined | string;

The name of the domain.

interface GetDnsDomainNameResult

interface GetDnsDomainNameResult

A collection of values returned by getDnsDomainName.

property id

id?: undefined | string;

A unique ID that can be used to identify and reference a domain.

property name

name?: undefined | string;

The name of the domain.

interface GetDnsDomainRecordArgs

interface GetDnsDomainRecordArgs

A collection of arguments for invoking getDnsDomainRecord.

property domainId

domainId: string;

The domain id of the record.

property name

name: string;

The name of the record.

interface GetDnsDomainRecordResult

interface GetDnsDomainRecordResult

A collection of values returned by getDnsDomainRecord.

property accountId

accountId: string;

The id account of the domain.

property createdAt

createdAt: string;

The date when it was created in UTC format

property domainId

domainId: string;

The id of the domain

property id

id: string;

The provider-assigned unique ID for this managed resource.

property name

name: string;

The portion before the domain name (e.g. www) or an @ for the apex/root domain (you cannot use an A record with an amex/root domain)

property priority

priority: number;

The priority of the record.

property ttl

ttl: number;

How long caching DNS servers should cache this record.

property type

type: string;

The choice of record type from A, CNAME, MX, SRV or TXT

property updatedAt

updatedAt: string;

The date when it was updated in UTC format

property value

value: string;

The IP address (A or MX), hostname (CNAME or MX) or text value (TXT) to serve for this record

function getEnv

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

function getEnvBoolean

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

function getEnvNumber

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

interface GetInstanceArgs

interface GetInstanceArgs

A collection of arguments for invoking getInstance.

property hostname

hostname?: undefined | string;

The hostname of the Instance.

property id

id?: undefined | string;

The ID of the Instance

interface GetInstanceResult

interface GetInstanceResult

A collection of values returned by getInstance.

property cpuCores

cpuCores: number;

Total cpu of the inatance.

property createdAt

createdAt: string;

The date of creation of the instance

property diskGb

diskGb: number;

The size of the disk.

property firewallId

firewallId: string;

The ID of the firewall used.

property hostname

hostname?: undefined | string;

The Instance hostname.

property id

id?: undefined | string;

The ID of the Instance.

property initialPassword

initialPassword: string;

Instance initial password

property initialUser

initialUser: string;

The name of the initial user created on the server.

property networkId

networkId: string;

This will be the ID of the network.

property notes

notes: string;

The notes of the instance.

property privateIp

privateIp: string;

The private ip.

property pseudoIp

pseudoIp: string;

Is the ip that is used to route the public ip from the internet to the instance using NAT

property publicIp

publicIp: string;

The public ip.

property ramMb

ramMb: number;

Total ram of the instance.

property reverseDns

reverseDns: string;

A fully qualified domain name.

property script

script: string;

the contents of a script uploaded

property size

size: string;

The name of the size.

property sshkeyId

sshkeyId: string;

The ID SSH.

property status

status: string;

The status of the instance

property tags

tags: string[];

An optional list of tags

property template

template: string;

The ID for the template to used to build the instance.

interface GetInstancesArgs

interface GetInstancesArgs

A collection of arguments for invoking getInstances.

property filters

filters?: GetInstancesFilter[];

Filter the results. The filter block is documented below.

property sorts

sorts?: GetInstancesSort[];

Sort the results. The sort block is documented below.

interface GetInstancesResult

interface GetInstancesResult

A collection of values returned by getInstances.

property filters

filters?: GetInstancesFilter[];

property id

id: string;

The provider-assigned unique ID for this managed resource.

property instances

instances: GetInstancesInstance[];

A list of Instances satisfying any filter and sort criteria. Each instance has the following attributes:

property sorts

sorts?: GetInstancesSort[];

interface GetInstancesSizeArgs

interface GetInstancesSizeArgs

A collection of arguments for invoking getInstancesSize.

property filters

filters?: GetInstancesSizeFilter[];

property sorts

sorts?: GetInstancesSizeSort[];

interface GetInstancesSizeResult

interface GetInstancesSizeResult

A collection of values returned by getInstancesSize.

property filters

filters?: GetInstancesSizeFilter[];

property id

id: string;

The provider-assigned unique ID for this managed resource.

property sizes

sizes: GetInstancesSizeSize[];

property sorts

sorts?: GetInstancesSizeSort[];

interface GetKubernetesClusterArgs

interface GetKubernetesClusterArgs

A collection of arguments for invoking getKubernetesCluster.

property id

id?: undefined | string;

The ID of the kubernetes Cluster

property name

name?: undefined | string;

The name of the kubernetes Cluster.

interface GetKubernetesClusterResult

interface GetKubernetesClusterResult

A collection of values returned by getKubernetesCluster.

property apiEndpoint

apiEndpoint: string;

The base URL of the API server on the Kubernetes master node.

property applications

applications: string;

A list of application installed.

property builtAt

builtAt: string;

The date where the Kubernetes cluster was build.

property createdAt

createdAt: string;

The date where the Kubernetes cluster was create.

property dnsEntry

dnsEntry: string;

The unique dns entry for the cluster in this case point to the master.

property id

id?: undefined | string;

A unique ID that can be used to identify and reference a Kubernetes cluster.

property installedApplications

installedApplications: GetKubernetesClusterInstalledApplication[];

A unique ID that can be used to identify and reference a Kubernetes cluster.

property instances

instances: GetKubernetesClusterInstance[];

In addition to the arguments provided, these additional attributes about the cluster’s default node instance are exported.

property kubeconfig

kubeconfig: string;

A representation of the Kubernetes cluster’s kubeconfig in yaml format.

property kubernetesVersion

kubernetesVersion: string;

The version of Kubernetes.

property masterIp

masterIp: string;

The Ip of the Kubernetes master node.

property name

name?: undefined | string;

The name of your cluster,.

property numTargetNodes

numTargetNodes: number;

The size of the Kubernetes cluster.

property ready

ready: boolean;

property status

status: string;

The status of Kubernetes cluster. * ready -If the Kubernetes cluster is ready.

property tags

tags: string;

The tag of the instances

property targetNodesSize

targetNodesSize: string;

The size of each node.

interface GetKubernetesVersionArgs

interface GetKubernetesVersionArgs

A collection of arguments for invoking getKubernetesVersion.

property filters

filters?: GetKubernetesVersionFilter[];

Filter the results. The filter block is documented below.

property sorts

sorts?: GetKubernetesVersionSort[];

Sort the results. The sort block is documented below.

interface GetKubernetesVersionResult

interface GetKubernetesVersionResult

A collection of values returned by getKubernetesVersion.

property filters

filters?: GetKubernetesVersionFilter[];

property id

id: string;

The provider-assigned unique ID for this managed resource.

property sorts

sorts?: GetKubernetesVersionSort[];

property versions

versions: GetKubernetesVersionVersion[];

interface GetLoadBalancerArgs

interface GetLoadBalancerArgs

A collection of arguments for invoking getLoadBalancer.

property hostname

hostname?: undefined | string;

The hostname of the Load Balancer.

property id

id?: undefined | string;

The ID of the Load Balancer.

interface GetLoadBalancerResult

interface GetLoadBalancerResult

A collection of values returned by getLoadBalancer.

property backends

backends: GetLoadBalancerBackend[];

A list of backend instances

property failTimeout

failTimeout: number;

The wait time until the backend is marked as a failure

property healthCheckPath

healthCheckPath: string;

The path to check the health of the backend

property hostname

hostname?: undefined | string;

The hostname of the Load Balancer

property id

id?: undefined | string;

The ID of the Load Balancer

property ignoreInvalidBackendTls

ignoreInvalidBackendTls: boolean;

Should self-signed/invalid certificates be ignored from the backend servers

property maxConns

maxConns: number;

How many concurrent connections can each backend handle

property maxRequestSize

maxRequestSize: number;

The max request size set in the configuration

property policy

policy: string;

The policy set in the Load Balancer

property port

port: number;

The port set in the configuration.

property protocol

protocol: string;

The protocol used in the configuration.

property tlsCertificate

tlsCertificate: string;

If is set will be returned

property tlsKey

tlsKey: string;

If is set will be returned

interface GetNetworkArgs

interface GetNetworkArgs

A collection of arguments for invoking getNetwork.

property id

id?: undefined | string;

The unique identifier of an existing Network.

property label

label?: undefined | string;

The name of an existing Network.

interface GetNetworkResult

interface GetNetworkResult

A collection of values returned by getNetwork.

property cidr

cidr: string;

The block ip assigned to the network.

property default

default: boolean;

If is the default network.

property id

id?: undefined | string;

A unique ID that can be used to identify and reference a Network.

property label

label?: undefined | string;

The label used in the configuration.

property name

name: string;

The name of the network.

property region

region: string;

The region where the network was create.

interface GetSnapshotArgs

interface GetSnapshotArgs

A collection of arguments for invoking getSnapshot.

property id

id?: undefined | string;

The ID of the snapshot.

property name

name?: undefined | string;

The name of the snapshot.

interface GetSnapshotResult

interface GetSnapshotResult

A collection of values returned by getSnapshot.

property completedAt

completedAt: string;

The date where the snapshot was completed.

property cronTiming

cronTiming: string;

A string with the cron format.

property hostname

hostname: string;

The hostname of the instance.

property id

id?: undefined | string;

property instanceId

instanceId: string;

The ID of the Instance from which the snapshot was be taken.

property name

name?: undefined | string;

The name of the snapshot.

property nextExecution

nextExecution: string;

if cron was define this date will be the next execution date.

property region

region: string;

The region where the snapshot was take.

property requestedAt

requestedAt: string;

The date where the snapshot was requested.

property safe

safe: boolean;

If is true the instance will be shut down during the snapshot if id false them not.

property sizeGb

sizeGb: number;

The size of the snapshot in GB.

property state

state: string;

The status of the snapshot.

property templateId

templateId: string;

The template id.

interface GetSshKeyArgs

interface GetSshKeyArgs

A collection of arguments for invoking getSshKey.

property id

id?: undefined | string;

The ID of the ssh key.

property name

name?: undefined | string;

The name of the ssh key.

interface GetSshKeyResult

interface GetSshKeyResult

A collection of values returned by getSshKey.

property fingerprint

fingerprint: string;

property id

id?: undefined | string;

property name

name?: undefined | string;

interface GetTemplateArgs

interface GetTemplateArgs

A collection of arguments for invoking getTemplate.

property filters

filters?: GetTemplateFilter[];

Filter the results. The filter block is documented below.

property sorts

sorts?: GetTemplateSort[];

Sort the results. The sort block is documented below.

interface GetTemplateResult

interface GetTemplateResult

A collection of values returned by getTemplate.

property filters

filters?: GetTemplateFilter[];

property id

id: string;

The provider-assigned unique ID for this managed resource.

property sorts

sorts?: GetTemplateSort[];

property templates

templates: GetTemplateTemplate[];

function getVersion

getVersion(): string

interface GetVolumeArgs

interface GetVolumeArgs

A collection of arguments for invoking getVolume.

property id

id?: undefined | string;

The unique identifier for the volume.

property name

name?: undefined | string;

The name of the volume.

interface GetVolumeResult

interface GetVolumeResult

A collection of values returned by getVolume.

property bootable

bootable: boolean;

if is bootable or not.

property createdAt

createdAt: string;

The date of the creation of the volume.

property id

id?: undefined | string;

The unique identifier for the volume.

property mountPoint

mountPoint: string;

The mount point of the volume.

property name

name?: undefined | string;

Name of the volume.

property sizeGb

sizeGb: number;

The size of the volume.

interface InstanceArgs

interface InstanceArgs

The set of arguments for constructing a Instance resource.

property firewallId

firewallId?: pulumi.Input<string>;

The ID of the firewall to use, from the current list. If left blank or not sent, the default firewall will be used (open to all).

property hostname

hostname: pulumi.Input<string>;

The Instance hostname.

property initialUser

initialUser?: pulumi.Input<string>;

The name of the initial user created on the server (optional; this will default to the template’s defaultUsername and fallback to civo).

property networkId

networkId?: pulumi.Input<string>;

This must be the ID of the network from the network listing (optional; default network used when not specified).

property notes

notes?: pulumi.Input<string>;

Add some notes to the instance.

property publicIpRequired

publicIpRequired?: pulumi.Input<string>;

This should be either false, true or move_ip_from:intances_id.

property reverseDns

reverseDns?: pulumi.Input<string>;

A fully qualified domain name that should be used as the instance’s IP’s reverse DNS (optional, uses the hostname if unspecified).

property script

script?: pulumi.Input<string>;

the contents of a script that will be uploaded to /usr/local/bin/civo-user-init-script on your instance, read/write/executable only by root and then will be executed at the end of the cloud initialization

property size

size?: pulumi.Input<string>;

The name of the size, from the current list, e.g. g2.small (required).

property sshkeyId

sshkeyId?: pulumi.Input<string>;

The ID of an already uploaded SSH public key to use for login to the default user (optional; if one isn’t provided a random password will be set and returned in the initialPassword field).

property tags

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

An optional list of tags, represented as a key, value pair.

property template

template?: pulumi.Input<string>;

The ID for the template to use to build the instance.

interface InstanceState

interface InstanceState

Input properties used for looking up and filtering Instance resources.

property cpuCores

cpuCores?: pulumi.Input<number>;

Total cpu of the inatance.

property createdAt

createdAt?: pulumi.Input<string>;

The date of creation of the instance

property diskGb

diskGb?: pulumi.Input<number>;

The size of the disk.

property firewallId

firewallId?: pulumi.Input<string>;

The ID of the firewall to use, from the current list. If left blank or not sent, the default firewall will be used (open to all).

property hostname

hostname?: pulumi.Input<string>;

The Instance hostname.

property initialPassword

initialPassword?: pulumi.Input<string>;

Instance initial password

property initialUser

initialUser?: pulumi.Input<string>;

The name of the initial user created on the server (optional; this will default to the template’s defaultUsername and fallback to civo).

property networkId

networkId?: pulumi.Input<string>;

This must be the ID of the network from the network listing (optional; default network used when not specified).

property notes

notes?: pulumi.Input<string>;

Add some notes to the instance.

property privateIp

privateIp?: pulumi.Input<string>;

The private ip.

property pseudoIp

pseudoIp?: pulumi.Input<string>;

Is the ip that is used to route the public ip from the internet to the instance using NAT

property publicIp

publicIp?: pulumi.Input<string>;

The public ip.

property publicIpRequired

publicIpRequired?: pulumi.Input<string>;

This should be either false, true or move_ip_from:intances_id.

property ramMb

ramMb?: pulumi.Input<number>;

Total ram of the instance.

property reverseDns

reverseDns?: pulumi.Input<string>;

A fully qualified domain name that should be used as the instance’s IP’s reverse DNS (optional, uses the hostname if unspecified).

property script

script?: pulumi.Input<string>;

the contents of a script that will be uploaded to /usr/local/bin/civo-user-init-script on your instance, read/write/executable only by root and then will be executed at the end of the cloud initialization

property size

size?: pulumi.Input<string>;

The name of the size, from the current list, e.g. g2.small (required).

property sshkeyId

sshkeyId?: pulumi.Input<string>;

The ID of an already uploaded SSH public key to use for login to the default user (optional; if one isn’t provided a random password will be set and returned in the initialPassword field).

property status

status?: pulumi.Input<string>;

The status of the instance

property tags

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

An optional list of tags, represented as a key, value pair.

property template

template?: pulumi.Input<string>;

The ID for the template to use to build the instance.

interface KubernetesClusterArgs

interface KubernetesClusterArgs

The set of arguments for constructing a KubernetesCluster resource.

property applications

applications?: pulumi.Input<string>;

A comma separated list of applications to install. Spaces within application names are fine, but shouldn’t be either side of the comma. If you want to remove a default installed application, prefix it with a ‘-’, e.g. -traefik

property kubernetesVersion

kubernetesVersion?: pulumi.Input<string>;

The version of k3s to install (The default is currently the latest available).

property name

name?: pulumi.Input<string>;

A name for the Kubernetes cluster.

property numTargetNodes

numTargetNodes?: pulumi.Input<number>;

The number of instances to create (The default at the time of writing is 3).

property tags

tags?: pulumi.Input<string>;

A space separated list of tags, to be used freely as required.

property targetNodesSize

targetNodesSize?: pulumi.Input<string>;

The size of each node (The default is currently g2.small)

interface KubernetesClusterState

interface KubernetesClusterState

Input properties used for looking up and filtering KubernetesCluster resources.

property apiEndpoint

apiEndpoint?: pulumi.Input<string>;

The base URL of the API server on the Kubernetes master node.

property applications

applications?: pulumi.Input<string>;

A comma separated list of applications to install. Spaces within application names are fine, but shouldn’t be either side of the comma. If you want to remove a default installed application, prefix it with a ‘-’, e.g. -traefik

property builtAt

builtAt?: pulumi.Input<string>;

The date where the Kubernetes cluster was build.

property createdAt

createdAt?: pulumi.Input<string>;

The date where the Kubernetes cluster was create.

property dnsEntry

dnsEntry?: pulumi.Input<string>;

The unique dns entry for the cluster in this case point to the master.

property installedApplications

installedApplications?: pulumi.Input<pulumi.Input<KubernetesClusterInstalledApplication>[]>;

A unique ID that can be used to identify and reference a Kubernetes cluster.

property instances

instances?: pulumi.Input<pulumi.Input<KubernetesClusterInstance>[]>;

In addition to the arguments provided, these additional attributes about the cluster’s default node instance are exported.

property kubeconfig

kubeconfig?: pulumi.Input<string>;

A representation of the Kubernetes cluster’s kubeconfig in yaml format.

property kubernetesVersion

kubernetesVersion?: pulumi.Input<string>;

The version of k3s to install (The default is currently the latest available).

property masterIp

masterIp?: pulumi.Input<string>;

The Ip of the Kubernetes master node.

property name

name?: pulumi.Input<string>;

A name for the Kubernetes cluster.

property numTargetNodes

numTargetNodes?: pulumi.Input<number>;

The number of instances to create (The default at the time of writing is 3).

property ready

ready?: pulumi.Input<boolean>;

property status

status?: pulumi.Input<string>;

The status of Kubernetes cluster. * ready -If the Kubernetes cluster is ready.

property tags

tags?: pulumi.Input<string>;

A space separated list of tags, to be used freely as required.

property targetNodesSize

targetNodesSize?: pulumi.Input<string>;

The size of each node (The default is currently g2.small)

interface LoadBalancerArgs

interface LoadBalancerArgs

The set of arguments for constructing a LoadBalancer resource.

property backends

backends: pulumi.Input<pulumi.Input<LoadBalancerBackend>[]>;

a list of backend instances, each containing an instance_id, protocol (http or https) and port

property failTimeout

failTimeout: pulumi.Input<number>;

how long to wait in seconds before determining a backend has failed, defaults to 30

property healthCheckPath

healthCheckPath?: pulumi.Input<string>;

what URL should be used on the backends to determine if it’s OK (2xx/3xx status), defaults to /

property hostname

hostname: pulumi.Input<string>;

the hostname to receive traffic for, e.g. www.example.com (optional: sets hostname to loadbalancer-uuid.civo.com if blank)

property ignoreInvalidBackendTls

ignoreInvalidBackendTls?: pulumi.Input<boolean>;

should self-signed/invalid certificates be ignored from the backend servers, defaults to true

property maxConns

maxConns: pulumi.Input<number>;

how many concurrent connections can each backend handle, defaults to 10

property maxRequestSize

maxRequestSize: pulumi.Input<number>;

the size in megabytes of the maximum request content that will be accepted, defaults to 20

property policy

policy: pulumi.Input<string>;

one of: least_conn (sends new requests to the least busy server), random (sends new requests to a random backend), round_robin (sends new requests to the next backend in order), ip_hash (sends requests from a given IP address to the same backend), default is random

property port

port: pulumi.Input<number>;

you can listen on any port, the default is 80 to match the default protocol of http,if not you must specify it here (commonly 80 for HTTP or 443 for HTTPS)

property protocol

protocol: pulumi.Input<string>;

either http or https. If you specify https then you must also provide the next two fields, the default is http

property tlsCertificate

tlsCertificate?: pulumi.Input<string>;

if your protocol is https then you should send the TLS certificate in Base64-encoded PEM format

property tlsKey

tlsKey?: pulumi.Input<string>;

if your protocol is https then you should send the TLS private key in Base64-encoded PEM format

interface LoadBalancerState

interface LoadBalancerState

Input properties used for looking up and filtering LoadBalancer resources.

property backends

backends?: pulumi.Input<pulumi.Input<LoadBalancerBackend>[]>;

a list of backend instances, each containing an instance_id, protocol (http or https) and port

property failTimeout

failTimeout?: pulumi.Input<number>;

how long to wait in seconds before determining a backend has failed, defaults to 30

property healthCheckPath

healthCheckPath?: pulumi.Input<string>;

what URL should be used on the backends to determine if it’s OK (2xx/3xx status), defaults to /

property hostname

hostname?: pulumi.Input<string>;

the hostname to receive traffic for, e.g. www.example.com (optional: sets hostname to loadbalancer-uuid.civo.com if blank)

property ignoreInvalidBackendTls

ignoreInvalidBackendTls?: pulumi.Input<boolean>;

should self-signed/invalid certificates be ignored from the backend servers, defaults to true

property maxConns

maxConns?: pulumi.Input<number>;

how many concurrent connections can each backend handle, defaults to 10

property maxRequestSize

maxRequestSize?: pulumi.Input<number>;

the size in megabytes of the maximum request content that will be accepted, defaults to 20

property policy

policy?: pulumi.Input<string>;

one of: least_conn (sends new requests to the least busy server), random (sends new requests to a random backend), round_robin (sends new requests to the next backend in order), ip_hash (sends requests from a given IP address to the same backend), default is random

property port

port?: pulumi.Input<number>;

you can listen on any port, the default is 80 to match the default protocol of http,if not you must specify it here (commonly 80 for HTTP or 443 for HTTPS)

property protocol

protocol?: pulumi.Input<string>;

either http or https. If you specify https then you must also provide the next two fields, the default is http

property tlsCertificate

tlsCertificate?: pulumi.Input<string>;

if your protocol is https then you should send the TLS certificate in Base64-encoded PEM format

property tlsKey

tlsKey?: pulumi.Input<string>;

if your protocol is https then you should send the TLS private key in Base64-encoded PEM format

interface NetworkArgs

interface NetworkArgs

The set of arguments for constructing a Network resource.

property label

label: pulumi.Input<string>;

The Network label

interface NetworkState

interface NetworkState

Input properties used for looking up and filtering Network resources.

property cidr

cidr?: pulumi.Input<string>;

The block ip assigned to the network.

property default

default?: pulumi.Input<boolean>;

If is the default network.

property label

label?: pulumi.Input<string>;

The Network label

property name

name?: pulumi.Input<string>;

The name of the network.

property region

region?: pulumi.Input<string>;

The region where the network was create.

interface ProviderArgs

interface ProviderArgs

The set of arguments for constructing a Provider resource.

property token

token?: pulumi.Input<string>;

interface SnapshotArgs

interface SnapshotArgs

The set of arguments for constructing a Snapshot resource.

property cronTiming

cronTiming?: pulumi.Input<string>;

If a valid cron string is passed, the snapshot will be saved as an automated snapshot continuing to automatically update based on the schedule of the cron sequence provided The default is nil meaning the snapshot will be saved as a one-off snapshot.

property instanceId

instanceId: pulumi.Input<string>;

The ID of the Instance from which the snapshot will be taken.

property name

name?: pulumi.Input<string>;

A name for the instance snapshot.

property safe

safe?: pulumi.Input<boolean>;

If true the instance will be shut down during the snapshot to ensure all files are in a consistent state (e.g. database tables aren’t in the middle of being optimised and hence risking corruption). The default is false so you experience no interruption of service, but a small risk of corruption.

interface SnapshotState

interface SnapshotState

Input properties used for looking up and filtering Snapshot resources.

property completedAt

completedAt?: pulumi.Input<string>;

The date where the snapshot was completed.

property cronTiming

cronTiming?: pulumi.Input<string>;

If a valid cron string is passed, the snapshot will be saved as an automated snapshot continuing to automatically update based on the schedule of the cron sequence provided The default is nil meaning the snapshot will be saved as a one-off snapshot.

property hostname

hostname?: pulumi.Input<string>;

The hostname of the instance.

property instanceId

instanceId?: pulumi.Input<string>;

The ID of the Instance from which the snapshot will be taken.

property name

name?: pulumi.Input<string>;

A name for the instance snapshot.

property nextExecution

nextExecution?: pulumi.Input<string>;

if cron was define this date will be the next execution date.

property region

region?: pulumi.Input<string>;

The region where the snapshot was take.

property requestedAt

requestedAt?: pulumi.Input<string>;

The date where the snapshot was requested.

property safe

safe?: pulumi.Input<boolean>;

If true the instance will be shut down during the snapshot to ensure all files are in a consistent state (e.g. database tables aren’t in the middle of being optimised and hence risking corruption). The default is false so you experience no interruption of service, but a small risk of corruption.

property sizeGb

sizeGb?: pulumi.Input<number>;

The size of the snapshot in GB.

property state

state?: pulumi.Input<string>;

The status of the snapshot.

property templateId

templateId?: pulumi.Input<string>;

The template id.

interface SshKeyArgs

interface SshKeyArgs

The set of arguments for constructing a SshKey resource.

property name

name?: pulumi.Input<string>;

The name of the SSH key for identification

property publicKey

publicKey: pulumi.Input<string>;

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

interface SshKeyState

interface SshKeyState

Input properties used for looking up and filtering SshKey resources.

property fingerprint

fingerprint?: pulumi.Input<string>;

The fingerprint of the SSH key

property name

name?: pulumi.Input<string>;

The name of the SSH key for identification

property publicKey

publicKey?: pulumi.Input<string>;

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

interface TemplateArgs

interface TemplateArgs

The set of arguments for constructing a Template resource.

property cloudConfig

cloudConfig?: pulumi.Input<string>;

Commonly referred to as ‘user-data’, this is a customisation script that is run after the instance is first booted. We recommend using cloud-config as it’s a great distribution-agnostic way of configuring cloud servers. If you put $INITIAL_USER in your script, this will automatically be replaced by the initial user chosen when creating the instance, $INITIAL_PASSWORD will be replaced with the random password generated by the system, $HOSTNAME is the fully qualified domain name of the instance and $SSH_KEY will be the content of the SSH public key. (this is technically optional, but you won’t really be able to use instances without it - see our learn guide on templates for more information).

property code

code: pulumi.Input<string>;

This is a unqiue, alphanumerical, short, human readable code for the template.

property defaultUsername

defaultUsername?: pulumi.Input<string>;

The default username to suggest that the user creates

property description

description?: pulumi.Input<string>;

A multi-line description of the template, in Markdown format

property imageId

imageId?: pulumi.Input<string>;

This is the Image ID of any default template or the ID of another template either owned by you or global (optional; but must be specified if no volumeId is specified).

property name

name?: pulumi.Input<string>;

This is a short human readable name for the template

property shortDescription

shortDescription?: pulumi.Input<string>;

A one line description of the template

property volumeId

volumeId?: pulumi.Input<string>;

This is the ID of a bootable volume, either owned by you or global (optional; but must be specified if no imageId is specified)

interface TemplateState

interface TemplateState

Input properties used for looking up and filtering Template resources.

property cloudConfig

cloudConfig?: pulumi.Input<string>;

Commonly referred to as ‘user-data’, this is a customisation script that is run after the instance is first booted. We recommend using cloud-config as it’s a great distribution-agnostic way of configuring cloud servers. If you put $INITIAL_USER in your script, this will automatically be replaced by the initial user chosen when creating the instance, $INITIAL_PASSWORD will be replaced with the random password generated by the system, $HOSTNAME is the fully qualified domain name of the instance and $SSH_KEY will be the content of the SSH public key. (this is technically optional, but you won’t really be able to use instances without it - see our learn guide on templates for more information).

property code

code?: pulumi.Input<string>;

This is a unqiue, alphanumerical, short, human readable code for the template.

property defaultUsername

defaultUsername?: pulumi.Input<string>;

The default username to suggest that the user creates

property description

description?: pulumi.Input<string>;

A multi-line description of the template, in Markdown format

property imageId

imageId?: pulumi.Input<string>;

This is the Image ID of any default template or the ID of another template either owned by you or global (optional; but must be specified if no volumeId is specified).

property name

name?: pulumi.Input<string>;

This is a short human readable name for the template

property shortDescription

shortDescription?: pulumi.Input<string>;

A one line description of the template

property volumeId

volumeId?: pulumi.Input<string>;

This is the ID of a bootable volume, either owned by you or global (optional; but must be specified if no imageId is specified)

interface VolumeArgs

interface VolumeArgs

The set of arguments for constructing a Volume resource.

property bootable

bootable: pulumi.Input<boolean>;

Mark the volume as bootable.

property name

name?: pulumi.Input<string>;

A name that you wish to use to refer to this volume .

property sizeGb

sizeGb: pulumi.Input<number>;

A minimum of 1 and a maximum of your available disk space from your quota specifies the size of the volume in gigabytes .

interface VolumeAttachmentArgs

interface VolumeAttachmentArgs

The set of arguments for constructing a VolumeAttachment resource.

property instanceId

instanceId: pulumi.Input<string>;

ID of the instance to attach the volume to.

property volumeId

volumeId: pulumi.Input<string>;

ID of the Volume to be attached to the instance.

interface VolumeAttachmentState

interface VolumeAttachmentState

Input properties used for looking up and filtering VolumeAttachment resources.

property instanceId

instanceId?: pulumi.Input<string>;

ID of the instance to attach the volume to.

property volumeId

volumeId?: pulumi.Input<string>;

ID of the Volume to be attached to the instance.

interface VolumeState

interface VolumeState

Input properties used for looking up and filtering Volume resources.

property bootable

bootable?: pulumi.Input<boolean>;

Mark the volume as bootable.

property createdAt

createdAt?: pulumi.Input<string>;

The date of the creation of the volume.

property mountPoint

mountPoint?: pulumi.Input<string>;

The mount point of the volume.

property name

name?: pulumi.Input<string>;

A name that you wish to use to refer to this volume .

property sizeGb

sizeGb?: pulumi.Input<number>;

A minimum of 1 and a maximum of your available disk space from your quota specifies the size of the volume in gigabytes .