Package @pulumi/hcloud

This page documents the language specification for the hcloud package. If you're looking for help working with the inputs, outputs, or functions of hcloud 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-hcloud repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-hcloud repo.

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

Modules

Resources

Functions

Others

Resources

Resource Certificate

class Certificate extends CustomResource

Provides a Hetzner Clould Certificate to represent a TLS certificate in the Hetzner Cloud.

constructor

new Certificate(name: string, args: CertificateArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing Certificate 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 Certificate

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

property certificate

public certificate: pulumi.Output<string>;

property created

public created: pulumi.Output<string>;

property domainNames

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

property fingerprint

public fingerprint: pulumi.Output<string>;

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 labels

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

property name

public name: pulumi.Output<string>;

property notValidAfter

public notValidAfter: pulumi.Output<string>;

property notValidBefore

public notValidBefore: pulumi.Output<string>;

property privateKey

public privateKey: 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.

Resource FloatingIp

class FloatingIp extends CustomResource

Provides a Hetzner Cloud Floating IP to represent a publicly-accessible static IP address that can be mapped to one of your servers.

Example Usage

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

const node1 = new hcloud.Server("node1", {
    image: "debian-9",
    serverType: "cx11",
});
const master = new hcloud.FloatingIp("master", {
    serverId: node1.id.apply(id => Number.parseFloat(id)),
    type: "ipv4",
});

constructor

new FloatingIp(name: string, args: FloatingIpArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing FloatingIp 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 FloatingIp

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

property description

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

property homeLocation

public homeLocation: pulumi.Output<string>;

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 ipAddress

public ipAddress: pulumi.Output<string>;

property ipNetwork

public ipNetwork: pulumi.Output<string>;

property labels

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

property name

public name: pulumi.Output<string>;

property serverId

public serverId: pulumi.Output<number>;

property type

public type: 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.

Resource FloatingIpAssignment

class FloatingIpAssignment extends CustomResource

Provides a Hetzner Cloud Floating IP Assignment to assign a Floating IP to a Hetzner Cloud Server. Deleting a Floating IP Assignment will unassign the Floating IP from the Server.

Example Usage

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

const node1 = new hcloud.Server("node1", {
    datacenter: "fsn1-dc8",
    image: "debian-9",
    serverType: "cx11",
});
const master = new hcloud.FloatingIp("master", {
    homeLocation: "nbg1",
    type: "ipv4",
});
const main = new hcloud.FloatingIpAssignment("main", {
    floatingIpId: master.id.apply(id => Number.parseFloat(id)),
    serverId: node1.id.apply(id => Number.parseFloat(id)),
});

constructor

new FloatingIpAssignment(name: string, args: FloatingIpAssignmentArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing FloatingIpAssignment 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 FloatingIpAssignment

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

property floatingIpId

public floatingIpId: pulumi.Output<number>;

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 serverId

public serverId: pulumi.Output<number>;

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

Provides a Hetzner Cloud Load Balancer to represent a Load Balancer in the Hetzner Cloud.

Example Usage

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

const myserver = new hcloud.Server("myserver", {
    image: "ubuntu-18.04",
    serverType: "cx11",
});
const loadBalancer = new hcloud.LoadBalancer("load_balancer", {
    loadBalancerType: "lb11",
    location: "nbg1",
    targets: [{
        serverId: myserver.id.apply(id => Number.parseFloat(id)),
        type: "server",
    }],
});

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 algorithm

public algorithm: pulumi.Output<LoadBalancerAlgorithm>;

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>;

property ipv6

public ipv6: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: any}>;

property loadBalancerType

public loadBalancerType: pulumi.Output<string>;

property location

public location: pulumi.Output<string>;

property name

public name: pulumi.Output<string>;

property networkId

public networkId: pulumi.Output<number>;

property networkIp

public networkIp: pulumi.Output<string>;

property networkZone

public networkZone: pulumi.Output<string>;

property targets

public targets: pulumi.Output<LoadBalancerTarget[]>;

property urn

urn: Output<URN>;

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

Resource LoadBalancerNetwork

class LoadBalancerNetwork extends CustomResource

Provides a Hetzner Cloud Load Balancer Network to represent a private network on a Load Balancer in the Hetzner Cloud.

Example Usage

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

const lb1 = new hcloud.LoadBalancer("lb1", {
    loadBalancerType: "lb11",
    networkZone: "eu-central",
});
const mynet = new hcloud.Network("mynet", {
    ipRange: "10.0.0.0/8",
});
const foonet = new hcloud.NetworkSubnet("foonet", {
    ipRange: "10.0.1.0/24",
    networkId: mynet.id.apply(id => Number.parseFloat(id)),
    networkZone: "eu-central",
    type: "cloud",
});
const srvnetwork = new hcloud.LoadBalancerNetwork("srvnetwork", {
    ip: "10.0.1.5",
    loadBalancerId: lb1.id.apply(id => Number.parseFloat(id)),
    networkId: mynet.id.apply(id => Number.parseFloat(id)),
});

constructor

new LoadBalancerNetwork(name: string, args: LoadBalancerNetworkArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing LoadBalancerNetwork 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 LoadBalancerNetwork

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

property enablePublicInterface

public enablePublicInterface: pulumi.Output<boolean | 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 ip

public ip: pulumi.Output<string>;

property loadBalancerId

public loadBalancerId: pulumi.Output<number>;

property networkId

public networkId: pulumi.Output<number>;

property urn

urn: Output<URN>;

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

Resource LoadBalancerService

class LoadBalancerService extends CustomResource

Define services for Hetzner Cloud Load Balancers.

Example Usage

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

const loadBalancer = new hcloud.LoadBalancer("loadBalancer", {
    loadBalancerType: "lb11",
    location: "nbg1",
});
const loadBalancerService = new hcloud.LoadBalancerService("loadBalancerService", {
    loadBalancerId: hcloud_load_balancer.test_load_balancer.id,
    protocol: "http",
});

constructor

new LoadBalancerService(name: string, args: LoadBalancerServiceArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing LoadBalancerService 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 LoadBalancerService

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

property destinationPort

public destinationPort: pulumi.Output<number>;

property healthCheck

public healthCheck: pulumi.Output<LoadBalancerServiceHealthCheck>;

property http

public http: pulumi.Output<LoadBalancerServiceHttp | 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 listenPort

public listenPort: pulumi.Output<number>;

property loadBalancerId

public loadBalancerId: pulumi.Output<string>;

property protocol

public protocol: pulumi.Output<string>;

property proxyprotocol

public proxyprotocol: pulumi.Output<boolean>;

property urn

urn: Output<URN>;

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

Resource LoadBalancerTarget

class LoadBalancerTarget extends CustomResource

Adds a target to a Hetzner Cloud Load Balancer.

Example Usage

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

const myServer = new hcloud.Server("my_server", {
    image: "ubuntu-18.04",
    serverType: "cx11",
});
const loadBalancer = new hcloud.LoadBalancer("load_balancer", {
    loadBalancerType: "lb11",
    location: "nbg1",
});
const loadBalancerTarget = new hcloud.LoadBalancerTarget("load_balancer_target", {
    loadBalancerId: hcloud_load_balancer_load_balcancer.id,
    serverId: myServer.id.apply(id => Number.parseFloat(id)),
    type: "server",
});

constructor

new LoadBalancerTarget(name: string, args: LoadBalancerTargetArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing LoadBalancerTarget 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 LoadBalancerTarget

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

public loadBalancerId: pulumi.Output<number>;

property serverId

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

property type

public type: 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.

property usePrivateIp

public usePrivateIp: pulumi.Output<boolean>;

Resource Network

class Network extends CustomResource

Provides a Hetzner Cloud Network to represent a Network in the Hetzner Cloud.

Example Usage

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

const privNet = new hcloud.Network("privNet", {
    ipRange: "10.0.1.0/24",
});

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 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 ipRange

public ipRange: pulumi.Output<string>;

property labels

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

property name

public name: 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.

Resource NetworkRoute

class NetworkRoute extends CustomResource

Provides a Hetzner Cloud Network Route to represent a Network route in the Hetzner Cloud.

Example Usage

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

const mynet = new hcloud.Network("mynet", {
    ipRange: "10.0.0.0/8",
});
const privNet = new hcloud.NetworkRoute("privNet", {
    destination: "10.100.1.0/24",
    gateway: "10.0.1.1",
    networkId: mynet.id.apply(id => Number.parseFloat(id)),
});

constructor

new NetworkRoute(name: string, args: NetworkRouteArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing NetworkRoute 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 NetworkRoute

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

property destination

public destination: pulumi.Output<string>;

property gateway

public gateway: pulumi.Output<string>;

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 networkId

public networkId: pulumi.Output<number>;

property urn

urn: Output<URN>;

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

Resource NetworkSubnet

class NetworkSubnet extends CustomResource

Provides a Hetzner Cloud Network Subnet to represent a Subnet in the Hetzner Cloud.

Example Usage

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

const mynet = new hcloud.Network("mynet", {
    ipRange: "10.0.0.0/8",
});
const foonet = new hcloud.NetworkSubnet("foonet", {
    ipRange: "10.0.1.0/24",
    networkId: mynet.id.apply(id => Number.parseFloat(id)),
    networkZone: "eu-central",
    type: "cloud",
});

constructor

new NetworkSubnet(name: string, args: NetworkSubnetArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing NetworkSubnet 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 NetworkSubnet

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

property gateway

public gateway: pulumi.Output<string>;

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 ipRange

public ipRange: pulumi.Output<string>;

property networkId

public networkId: pulumi.Output<number>;

property networkZone

public networkZone: pulumi.Output<string>;

property type

public type: 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.

Resource Provider

class Provider extends ProviderResource

The provider type for the hcloud 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 Rdns

class Rdns extends CustomResource

Provides a Hetzner Cloud Reverse DNS Entry to create, modify and reset reverse dns entries for Hetzner Cloud Floating IPs or servers.

Example Usage

For servers:

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

const node1 = new hcloud.Server("node1", {
    image: "debian-9",
    serverType: "cx11",
});
const master = new hcloud.Rdns("master", {
    dnsPtr: "example.com",
    ipAddress: node1.ipv4Address,
    serverId: node1.id.apply(id => Number.parseFloat(id)),
});

For Floating IPs:

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

const floating1 = new hcloud.FloatingIp("floating1", {
    homeLocation: "nbg1",
    type: "ipv4",
});
const floatingMaster = new hcloud.Rdns("floating_master", {
    dnsPtr: "example.com",
    floatingIpId: floating1.id.apply(id => Number.parseFloat(id)),
    ipAddress: floating1.ipAddress,
});

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

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 dnsPtr

public dnsPtr: pulumi.Output<string>;

property floatingIpId

public floatingIpId: pulumi.Output<number | 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 ipAddress

public ipAddress: pulumi.Output<string>;

property serverId

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

property urn

urn: Output<URN>;

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

Resource Server

class Server extends CustomResource

constructor

new Server(name: string, args: ServerArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing Server 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 Server

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

property backupWindow

DEPRECATED You should remove this property from your terraform configuration.
public backupWindow: pulumi.Output<string>;

property backups

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

property datacenter

public datacenter: pulumi.Output<string>;

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>;

property ipv4Address

public ipv4Address: pulumi.Output<string>;

property ipv6Address

public ipv6Address: pulumi.Output<string>;

property ipv6Network

public ipv6Network: pulumi.Output<string>;

property iso

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

property keepDisk

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

property labels

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

property location

public location: pulumi.Output<string>;

property name

public name: pulumi.Output<string>;

property rescue

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

property serverType

public serverType: pulumi.Output<string>;

property sshKeys

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

property status

public status: 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.

property userData

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

Resource ServerNetwork

class ServerNetwork extends CustomResource

Provides a Hetzner Cloud Server Network to represent a private network on a server in the Hetzner Cloud.

Example Usage

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

const node1 = new hcloud.Server("node1", {
    image: "debian-9",
    serverType: "cx11",
});
const mynet = new hcloud.Network("mynet", {
    ipRange: "10.0.0.0/8",
});
const foonet = new hcloud.NetworkSubnet("foonet", {
    ipRange: "10.0.1.0/24",
    networkId: mynet.id.apply(id => Number.parseFloat(id)),
    networkZone: "eu-central",
    type: "cloud",
});
const srvnetwork = new hcloud.ServerNetwork("srvnetwork", {
    ip: "10.0.1.5",
    networkId: mynet.id.apply(id => Number.parseFloat(id)),
    serverId: node1.id.apply(id => Number.parseFloat(id)),
});

constructor

new ServerNetwork(name: string, args: ServerNetworkArgs, opts?: pulumi.CustomResourceOptions)

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

Get an existing ServerNetwork 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 ServerNetwork

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

property aliasIps

public aliasIps: pulumi.Output<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 ip

public ip: pulumi.Output<string>;

property macAddress

public macAddress: pulumi.Output<string>;

property networkId

public networkId: pulumi.Output<number>;

property serverId

public serverId: pulumi.Output<number>;

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 Hetzner Cloud SSH key resource to manage SSH keys for server access.

Example Usage

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

// Create a new SSH key
const defaultSshKey = new hcloud.SshKey("default", {
    publicKey: fs.readFileSync("~/.ssh/id_rsa.pub", "utf-8"),
});

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>;

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 labels

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

property name

public name: pulumi.Output<string>;

property publicKey

public publicKey: 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.

Resource Volume

class Volume extends CustomResource

Provides a Hetzner Cloud volume resource to manage volumes.

Example Usage

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

const node1 = new hcloud.Server("node1", {
    image: "debian-9",
    serverType: "cx11",
});
const master = new hcloud.Volume("master", {
    automount: true,
    serverId: node1.id.apply(id => Number.parseFloat(id)),
    size: 50,
});

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 automount

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

property format

public format: pulumi.Output<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 labels

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

property linuxDevice

public linuxDevice: pulumi.Output<string>;

property location

public location: pulumi.Output<string>;

property name

public name: pulumi.Output<string>;

property serverId

public serverId: pulumi.Output<number>;

property size

public size: pulumi.Output<number>;

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

Provides a Hetzner Cloud Volume attachment to attach a Volume to a Hetzner Cloud Server. Deleting a Volume Attachment will detach the Volume from the Server.

Example Usage

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

const node1 = new hcloud.Server("node1", {
    datacenter: "nbg1-dc3",
    image: "debian-9",
    serverType: "cx11",
});
const master = new hcloud.Volume("master", {
    location: "nbg1",
    size: 10,
});
const main = new hcloud.VolumeAttachment("main", {
    automount: true,
    serverId: node1.id.apply(id => Number.parseFloat(id)),
    volumeId: master.id.apply(id => Number.parseFloat(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 automount

public automount: pulumi.Output<boolean>;

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 serverId

public serverId: pulumi.Output<number>;

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<number>;

Functions

Function getCertificate

getCertificate(args?: GetCertificateArgs, opts?: pulumi.InvokeOptions): Promise<GetCertificateResult>

Provides details about a specific Hetzner Cloud Certificate.

Function getDatacenter

getDatacenter(args?: GetDatacenterArgs, opts?: pulumi.InvokeOptions): Promise<GetDatacenterResult>

Provides details about a specific Hetzner Cloud Datacenter. Use this resource to get detailed information about specific datacenter.

Example Usage

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

const ds1 = pulumi.output(hcloud.getDatacenter({
    name: "fsn1-dc8",
}, { async: true }));
const ds2 = pulumi.output(hcloud.getDatacenter({
    id: 4,
}, { async: true }));

Function getDatacenters

getDatacenters(args?: GetDatacentersArgs, opts?: pulumi.InvokeOptions): Promise<GetDatacentersResult>

Provides a list of available Hetzner Cloud Datacenters. This resource may be useful to create highly available infrastructure, distributed across several datacenters.

Example Usage

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

const ds = pulumi.output(hcloud.getDatacenters({ async: true }));
const workers: hcloud.Server[] = [];
for (let i = 0; i < 3; i++) {
    workers.push(new hcloud.Server(`workers-${i}`, {
        datacenter: ds.apply(ds => ds.names[i]),
        image: "debian-9",
        serverType: "cx31",
    }));
}

Function getFloatingIp

getFloatingIp(args?: GetFloatingIpArgs, opts?: pulumi.InvokeOptions): Promise<GetFloatingIpResult>

Provides details about a Hetzner Cloud Floating IP.

This resource can be useful when you need to determine a Floating IP ID based on the IP address.

Example Usage

Data Source: hcloud.FloatingIp

Provides details about a Hetzner Cloud Floating IP. This resource can be useful when you need to determine a Floating IP ID based on the IP address.

Additional Examples
import * as pulumi from "@pulumi/pulumi";
import * as hcloud from "@pulumi/hcloud";

const ip1 = pulumi.output(hcloud.getFloatingIp({
    ipAddress: "1.2.3.4",
}, { async: true }));
const image2 = pulumi.output(hcloud.getFloatingIp({
    withSelector: "key=value",
}, { async: true }));
const main: hcloud.FloatingIpAssignment[] = [];
for (let i = 0; i < var_counter; i++) {
    main.push(new hcloud.FloatingIpAssignment(`main-${i}`, {
        floatingIpId: ip1.id!,
        serverId: hcloud_server_main.id,
    }));
}

Function getImage

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

Function getLoadBalancer

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

Provides details about a specific Hetzner Cloud Server.

Example Usage

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

const lb1 = pulumi.output(hcloud.getLoadBalancer({
    name: "my-load-balancer",
}, { async: true }));
const lb2 = pulumi.output(hcloud.getLoadBalancer({
    id: 123,
}, { async: true }));
const lb3 = pulumi.output(hcloud.getLoadBalancer({
    withSelector: "key=value",
}, { async: true }));

Function getLocation

getLocation(args?: GetLocationArgs, opts?: pulumi.InvokeOptions): Promise<GetLocationResult>

Provides details about a specific Hetzner Cloud Location. Use this resource to get detailed information about specific location.

Example Usage

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

const l1 = pulumi.output(hcloud.getLocation({
    name: "fsn1",
}, { async: true }));
const l2 = pulumi.output(hcloud.getLocation({
    id: 1,
}, { async: true }));

Function getLocations

getLocations(args?: GetLocationsArgs, opts?: pulumi.InvokeOptions): Promise<GetLocationsResult>

Provides a list of available Hetzner Cloud Locations. This resource may be useful to create highly available infrastructure, distributed across several locations.

Example Usage

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

const ds = pulumi.output(hcloud.getLocations({ async: true }));
const workers: hcloud.Server[] = [];
for (let i = 0; i < 3; i++) {
    workers.push(new hcloud.Server(`workers-${i}`, {
        image: "debian-9",
        location: ds.apply(ds => ds.names[i]),
        serverType: "cx31",
    }));
}

Function getNetwork

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

Function getServer

getServer(args?: GetServerArgs, opts?: pulumi.InvokeOptions): Promise<GetServerResult>

Function getSshKey

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

Function getSshKeys

getSshKeys(args?: GetSshKeysArgs, opts?: pulumi.InvokeOptions): Promise<GetSshKeysResult>

Function getVolume

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

Others

interface CertificateArgs

interface CertificateArgs

The set of arguments for constructing a Certificate resource.

property certificate

certificate: pulumi.Input<string>;

property labels

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

property name

name?: pulumi.Input<string>;

property privateKey

privateKey: pulumi.Input<string>;

interface CertificateState

interface CertificateState

Input properties used for looking up and filtering Certificate resources.

property certificate

certificate?: pulumi.Input<string>;

property created

created?: pulumi.Input<string>;

property domainNames

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

property fingerprint

fingerprint?: pulumi.Input<string>;

property labels

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

property name

name?: pulumi.Input<string>;

property notValidAfter

notValidAfter?: pulumi.Input<string>;

property notValidBefore

notValidBefore?: pulumi.Input<string>;

property privateKey

privateKey?: pulumi.Input<string>;

interface FloatingIpArgs

interface FloatingIpArgs

The set of arguments for constructing a FloatingIp resource.

property description

description?: pulumi.Input<string>;

property homeLocation

homeLocation?: pulumi.Input<string>;

property labels

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

property name

name?: pulumi.Input<string>;

property serverId

serverId?: pulumi.Input<number>;

property type

type: pulumi.Input<string>;

interface FloatingIpAssignmentArgs

interface FloatingIpAssignmentArgs

The set of arguments for constructing a FloatingIpAssignment resource.

property floatingIpId

floatingIpId: pulumi.Input<number>;

property serverId

serverId: pulumi.Input<number>;

interface FloatingIpAssignmentState

interface FloatingIpAssignmentState

Input properties used for looking up and filtering FloatingIpAssignment resources.

property floatingIpId

floatingIpId?: pulumi.Input<number>;

property serverId

serverId?: pulumi.Input<number>;

interface FloatingIpState

interface FloatingIpState

Input properties used for looking up and filtering FloatingIp resources.

property description

description?: pulumi.Input<string>;

property homeLocation

homeLocation?: pulumi.Input<string>;

property ipAddress

ipAddress?: pulumi.Input<string>;

property ipNetwork

ipNetwork?: pulumi.Input<string>;

property labels

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

property name

name?: pulumi.Input<string>;

property serverId

serverId?: pulumi.Input<number>;

property type

type?: pulumi.Input<string>;

interface GetCertificateArgs

interface GetCertificateArgs

A collection of arguments for invoking getCertificate.

property id

id?: undefined | number;

property name

name?: undefined | string;

property withSelector

withSelector?: undefined | string;

interface GetCertificateResult

interface GetCertificateResult

A collection of values returned by getCertificate.

property certificate

certificate: string;

property created

created: string;

property domainNames

domainNames: string[];

property fingerprint

fingerprint: string;

property id

id?: undefined | number;

property labels

labels: {[key: string]: any};

property name

name?: undefined | string;

property notValidAfter

notValidAfter: string;

property notValidBefore

notValidBefore: string;

property withSelector

withSelector?: undefined | string;

interface GetDatacenterArgs

interface GetDatacenterArgs

A collection of arguments for invoking getDatacenter.

property id

id?: undefined | number;

property name

name?: undefined | string;

interface GetDatacenterResult

interface GetDatacenterResult

A collection of values returned by getDatacenter.

property availableServerTypeIds

availableServerTypeIds: number[];

property description

description: string;

property id

id: number;

property location

location: {[key: string]: any};

property name

name: string;

property supportedServerTypeIds

supportedServerTypeIds: number[];

interface GetDatacentersArgs

interface GetDatacentersArgs

A collection of arguments for invoking getDatacenters.

property datacenterIds

datacenterIds?: string[];

interface GetDatacentersResult

interface GetDatacentersResult

A collection of values returned by getDatacenters.

property datacenterIds

datacenterIds?: string[];

property descriptions

descriptions: string[];

property id

id: string;

The provider-assigned unique ID for this managed resource.

property names

names: string[];

function getEnv

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

function getEnvBoolean

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

function getEnvNumber

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

interface GetFloatingIpArgs

interface GetFloatingIpArgs

A collection of arguments for invoking getFloatingIp.

property id

id?: undefined | number;

property ipAddress

ipAddress?: undefined | string;

property name

name?: undefined | string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property withSelector

withSelector?: undefined | string;

interface GetFloatingIpResult

interface GetFloatingIpResult

A collection of values returned by getFloatingIp.

property description

description: string;

property homeLocation

homeLocation: string;

property id

id?: undefined | number;

property ipAddress

ipAddress: string;

property ipNetwork

ipNetwork: string;

property labels

labels: {[key: string]: any};

property name

name?: undefined | string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property serverId

serverId: number;

property type

type: string;

property withSelector

withSelector?: undefined | string;

interface GetImageArgs

interface GetImageArgs

A collection of arguments for invoking getImage.

property id

id?: undefined | number;

property mostRecent

mostRecent?: undefined | false | true;

property name

name?: undefined | string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property withSelector

withSelector?: undefined | string;

property withStatuses

withStatuses?: string[];

interface GetImageResult

interface GetImageResult

A collection of values returned by getImage.

property created

created: string;

property deprecated

deprecated: string;

property description

description: string;

property id

id?: undefined | number;

property labels

labels: {[key: string]: any};

property mostRecent

mostRecent?: undefined | false | true;

property name

name: string;

property osFlavor

osFlavor: string;

property osVersion

osVersion: string;

property rapidDeploy

rapidDeploy: boolean;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property type

type: string;

property withSelector

withSelector?: undefined | string;

property withStatuses

withStatuses?: string[];

interface GetLoadBalancerArgs

interface GetLoadBalancerArgs

A collection of arguments for invoking getLoadBalancer.

property id

id?: undefined | number;

property name

name?: undefined | string;

property withSelector

withSelector?: undefined | string;

interface GetLoadBalancerResult

interface GetLoadBalancerResult

A collection of values returned by getLoadBalancer.

property algorithm

algorithm: GetLoadBalancerAlgorithm;

property id

id?: undefined | number;

property ipv4

ipv4: string;

property ipv6

ipv6: string;

property labels

labels: {[key: string]: any};

property loadBalancerType

loadBalancerType: string;

property location

location: string;

property name

name?: undefined | string;

property networkZone

networkZone: string;

property services

services: GetLoadBalancerService[];

property targets

targets: GetLoadBalancerTarget[];

property withSelector

withSelector?: undefined | string;

interface GetLocationArgs

interface GetLocationArgs

A collection of arguments for invoking getLocation.

property id

id?: undefined | number;

property name

name?: undefined | string;

interface GetLocationResult

interface GetLocationResult

A collection of values returned by getLocation.

property city

city: string;

property country

country: string;

property description

description: string;

property id

id: number;

property latitude

latitude: number;

property longitude

longitude: number;

property name

name: string;

interface GetLocationsArgs

interface GetLocationsArgs

A collection of arguments for invoking getLocations.

property locationIds

locationIds?: string[];

interface GetLocationsResult

interface GetLocationsResult

A collection of values returned by getLocations.

property descriptions

descriptions: string[];

property id

id: string;

The provider-assigned unique ID for this managed resource.

property locationIds

locationIds?: string[];

property names

names: string[];

interface GetNetworkArgs

interface GetNetworkArgs

A collection of arguments for invoking getNetwork.

property id

id?: undefined | number;

property ipRange

ipRange?: undefined | string;

property labels

labels?: undefined | {[key: string]: any};

property name

name?: undefined | string;

property withSelector

withSelector?: undefined | string;

interface GetNetworkResult

interface GetNetworkResult

A collection of values returned by getNetwork.

property id

id?: undefined | number;

property ipRange

ipRange?: undefined | string;

property labels

labels?: undefined | {[key: string]: any};

property name

name?: undefined | string;

property withSelector

withSelector?: undefined | string;

interface GetServerArgs

interface GetServerArgs

A collection of arguments for invoking getServer.

property id

id?: undefined | number;

property name

name?: undefined | string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property withSelector

withSelector?: undefined | string;

property withStatuses

withStatuses?: string[];

interface GetServerResult

interface GetServerResult

A collection of values returned by getServer.

property backupWindow

backupWindow: string;

property backups

backups: boolean;

property datacenter

datacenter: string;

property id

id: number;

property image

image: string;

property ipv4Address

ipv4Address: string;

property ipv6Address

ipv6Address: string;

property ipv6Network

ipv6Network: string;

property iso

iso: string;

property labels

labels: {[key: string]: any};

property location

location: string;

property name

name: string;

property rescue

rescue: string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property serverType

serverType: string;

property status

status: string;

property withSelector

withSelector?: undefined | string;

property withStatuses

withStatuses?: string[];

interface GetSshKeyArgs

interface GetSshKeyArgs

A collection of arguments for invoking getSshKey.

property fingerprint

fingerprint?: undefined | string;

property id

id?: undefined | number;

property name

name?: undefined | string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property withSelector

withSelector?: undefined | string;

interface GetSshKeyResult

interface GetSshKeyResult

A collection of values returned by getSshKey.

property fingerprint

fingerprint: string;

property id

id?: undefined | number;

property labels

labels: {[key: string]: any};

property name

name: string;

property publicKey

publicKey: string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property withSelector

withSelector?: undefined | string;

interface GetSshKeysArgs

interface GetSshKeysArgs

A collection of arguments for invoking getSshKeys.

property withSelector

withSelector?: undefined | string;

interface GetSshKeysResult

interface GetSshKeysResult

A collection of values returned by getSshKeys.

property id

id: string;

The provider-assigned unique ID for this managed resource.

property sshKeys

sshKeys: GetSshKeysSshKey[];

property withSelector

withSelector?: undefined | string;

function getVersion

getVersion(): string

interface GetVolumeArgs

interface GetVolumeArgs

A collection of arguments for invoking getVolume.

property id

id?: undefined | number;

property location

location?: undefined | string;

property name

name?: undefined | string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property server

server?: undefined | string;

property withSelector

withSelector?: undefined | string;

property withStatuses

withStatuses?: string[];

interface GetVolumeResult

interface GetVolumeResult

A collection of values returned by getVolume.

property id

id?: undefined | number;

property labels

labels: {[key: string]: any};

property linuxDevice

linuxDevice: string;

property location

location?: undefined | string;

property name

name: string;

property selector

DEPRECATED Please use the with_selector property instead.
selector?: undefined | string;

property server

server?: undefined | string;

property size

size: number;

property withSelector

withSelector?: undefined | string;

property withStatuses

withStatuses?: string[];

interface LoadBalancerArgs

interface LoadBalancerArgs

The set of arguments for constructing a LoadBalancer resource.

property algorithm

algorithm?: pulumi.Input<LoadBalancerAlgorithm>;

property labels

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

property loadBalancerType

loadBalancerType: pulumi.Input<string>;

property location

location?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

property networkZone

networkZone?: pulumi.Input<string>;

property targets

targets?: pulumi.Input<pulumi.Input<LoadBalancerTarget>[]>;

interface LoadBalancerNetworkArgs

interface LoadBalancerNetworkArgs

The set of arguments for constructing a LoadBalancerNetwork resource.

property enablePublicInterface

enablePublicInterface?: pulumi.Input<boolean>;

property ip

ip?: pulumi.Input<string>;

property loadBalancerId

loadBalancerId: pulumi.Input<number>;

property networkId

networkId: pulumi.Input<number>;

interface LoadBalancerNetworkState

interface LoadBalancerNetworkState

Input properties used for looking up and filtering LoadBalancerNetwork resources.

property enablePublicInterface

enablePublicInterface?: pulumi.Input<boolean>;

property ip

ip?: pulumi.Input<string>;

property loadBalancerId

loadBalancerId?: pulumi.Input<number>;

property networkId

networkId?: pulumi.Input<number>;

interface LoadBalancerServiceArgs

interface LoadBalancerServiceArgs

The set of arguments for constructing a LoadBalancerService resource.

property destinationPort

destinationPort?: pulumi.Input<number>;

property healthCheck

healthCheck?: pulumi.Input<LoadBalancerServiceHealthCheck>;

property http

http?: pulumi.Input<LoadBalancerServiceHttp>;

property listenPort

listenPort?: pulumi.Input<number>;

property loadBalancerId

loadBalancerId: pulumi.Input<string>;

property protocol

protocol: pulumi.Input<string>;

property proxyprotocol

proxyprotocol?: pulumi.Input<boolean>;

interface LoadBalancerServiceState

interface LoadBalancerServiceState

Input properties used for looking up and filtering LoadBalancerService resources.

property destinationPort

destinationPort?: pulumi.Input<number>;

property healthCheck

healthCheck?: pulumi.Input<LoadBalancerServiceHealthCheck>;

property http

http?: pulumi.Input<LoadBalancerServiceHttp>;

property listenPort

listenPort?: pulumi.Input<number>;

property loadBalancerId

loadBalancerId?: pulumi.Input<string>;

property protocol

protocol?: pulumi.Input<string>;

property proxyprotocol

proxyprotocol?: pulumi.Input<boolean>;

interface LoadBalancerState

interface LoadBalancerState

Input properties used for looking up and filtering LoadBalancer resources.

property algorithm

algorithm?: pulumi.Input<LoadBalancerAlgorithm>;

property ipv4

ipv4?: pulumi.Input<string>;

property ipv6

ipv6?: pulumi.Input<string>;

property labels

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

property loadBalancerType

loadBalancerType?: pulumi.Input<string>;

property location

location?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

property networkId

networkId?: pulumi.Input<number>;

property networkIp

networkIp?: pulumi.Input<string>;

property networkZone

networkZone?: pulumi.Input<string>;

property targets

targets?: pulumi.Input<pulumi.Input<LoadBalancerTarget>[]>;

interface LoadBalancerTargetArgs

interface LoadBalancerTargetArgs

The set of arguments for constructing a LoadBalancerTarget resource.

property loadBalancerId

loadBalancerId: pulumi.Input<number>;

property serverId

serverId?: pulumi.Input<number>;

property type

type: pulumi.Input<string>;

property usePrivateIp

usePrivateIp?: pulumi.Input<boolean>;

interface LoadBalancerTargetState

interface LoadBalancerTargetState

Input properties used for looking up and filtering LoadBalancerTarget resources.

property loadBalancerId

loadBalancerId?: pulumi.Input<number>;

property serverId

serverId?: pulumi.Input<number>;

property type

type?: pulumi.Input<string>;

property usePrivateIp

usePrivateIp?: pulumi.Input<boolean>;

interface NetworkArgs

interface NetworkArgs

The set of arguments for constructing a Network resource.

property ipRange

ipRange: pulumi.Input<string>;

property labels

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

property name

name?: pulumi.Input<string>;

interface NetworkRouteArgs

interface NetworkRouteArgs

The set of arguments for constructing a NetworkRoute resource.

property destination

destination: pulumi.Input<string>;

property gateway

gateway: pulumi.Input<string>;

property networkId

networkId: pulumi.Input<number>;

interface NetworkRouteState

interface NetworkRouteState

Input properties used for looking up and filtering NetworkRoute resources.

property destination

destination?: pulumi.Input<string>;

property gateway

gateway?: pulumi.Input<string>;

property networkId

networkId?: pulumi.Input<number>;

interface NetworkState

interface NetworkState

Input properties used for looking up and filtering Network resources.

property ipRange

ipRange?: pulumi.Input<string>;

property labels

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

property name

name?: pulumi.Input<string>;

interface NetworkSubnetArgs

interface NetworkSubnetArgs

The set of arguments for constructing a NetworkSubnet resource.

property ipRange

ipRange: pulumi.Input<string>;

property networkId

networkId: pulumi.Input<number>;

property networkZone

networkZone: pulumi.Input<string>;

property type

type: pulumi.Input<string>;

interface NetworkSubnetState

interface NetworkSubnetState

Input properties used for looking up and filtering NetworkSubnet resources.

property gateway

gateway?: pulumi.Input<string>;

property ipRange

ipRange?: pulumi.Input<string>;

property networkId

networkId?: pulumi.Input<number>;

property networkZone

networkZone?: pulumi.Input<string>;

property type

type?: pulumi.Input<string>;

interface ProviderArgs

interface ProviderArgs

The set of arguments for constructing a Provider resource.

property endpoint

endpoint?: pulumi.Input<string>;

property token

token: pulumi.Input<string>;

The API token to access the Hetzner cloud.

interface RdnsArgs

interface RdnsArgs

The set of arguments for constructing a Rdns resource.

property dnsPtr

dnsPtr: pulumi.Input<string>;

property floatingIpId

floatingIpId?: pulumi.Input<number>;

property ipAddress

ipAddress: pulumi.Input<string>;

property serverId

serverId?: pulumi.Input<number>;

interface RdnsState

interface RdnsState

Input properties used for looking up and filtering Rdns resources.

property dnsPtr

dnsPtr?: pulumi.Input<string>;

property floatingIpId

floatingIpId?: pulumi.Input<number>;

property ipAddress

ipAddress?: pulumi.Input<string>;

property serverId

serverId?: pulumi.Input<number>;

interface ServerArgs

interface ServerArgs

The set of arguments for constructing a Server resource.

property backups

backups?: pulumi.Input<boolean>;

property datacenter

datacenter?: pulumi.Input<string>;

property image

image: pulumi.Input<string>;

property iso

iso?: pulumi.Input<string>;

property keepDisk

keepDisk?: pulumi.Input<boolean>;

property labels

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

property location

location?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

property rescue

rescue?: pulumi.Input<string>;

property serverType

serverType: pulumi.Input<string>;

property sshKeys

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

property userData

userData?: pulumi.Input<string>;

interface ServerNetworkArgs

interface ServerNetworkArgs

The set of arguments for constructing a ServerNetwork resource.

property aliasIps

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

property ip

ip?: pulumi.Input<string>;

property networkId

networkId: pulumi.Input<number>;

property serverId

serverId: pulumi.Input<number>;

interface ServerNetworkState

interface ServerNetworkState

Input properties used for looking up and filtering ServerNetwork resources.

property aliasIps

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

property ip

ip?: pulumi.Input<string>;

property macAddress

macAddress?: pulumi.Input<string>;

property networkId

networkId?: pulumi.Input<number>;

property serverId

serverId?: pulumi.Input<number>;

interface ServerState

interface ServerState

Input properties used for looking up and filtering Server resources.

property backupWindow

DEPRECATED You should remove this property from your terraform configuration.
backupWindow?: pulumi.Input<string>;

property backups

backups?: pulumi.Input<boolean>;

property datacenter

datacenter?: pulumi.Input<string>;

property image

image?: pulumi.Input<string>;

property ipv4Address

ipv4Address?: pulumi.Input<string>;

property ipv6Address

ipv6Address?: pulumi.Input<string>;

property ipv6Network

ipv6Network?: pulumi.Input<string>;

property iso

iso?: pulumi.Input<string>;

property keepDisk

keepDisk?: pulumi.Input<boolean>;

property labels

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

property location

location?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

property rescue

rescue?: pulumi.Input<string>;

property serverType

serverType?: pulumi.Input<string>;

property sshKeys

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

property status

status?: pulumi.Input<string>;

property userData

userData?: pulumi.Input<string>;

interface SshKeyArgs

interface SshKeyArgs

The set of arguments for constructing a SshKey resource.

property labels

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

property name

name?: pulumi.Input<string>;

property publicKey

publicKey: pulumi.Input<string>;

interface SshKeyState

interface SshKeyState

Input properties used for looking up and filtering SshKey resources.

property fingerprint

fingerprint?: pulumi.Input<string>;

property labels

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

property name

name?: pulumi.Input<string>;

property publicKey

publicKey?: pulumi.Input<string>;

interface VolumeArgs

interface VolumeArgs

The set of arguments for constructing a Volume resource.

property automount

automount?: pulumi.Input<boolean>;

property format

format?: pulumi.Input<string>;

property labels

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

property location

location?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

property serverId

serverId?: pulumi.Input<number>;

property size

size: pulumi.Input<number>;

interface VolumeAttachmentArgs

interface VolumeAttachmentArgs

The set of arguments for constructing a VolumeAttachment resource.

property automount

automount?: pulumi.Input<boolean>;

property serverId

serverId: pulumi.Input<number>;

property volumeId

volumeId: pulumi.Input<number>;

interface VolumeAttachmentState

interface VolumeAttachmentState

Input properties used for looking up and filtering VolumeAttachment resources.

property automount

automount?: pulumi.Input<boolean>;

property serverId

serverId?: pulumi.Input<number>;

property volumeId

volumeId?: pulumi.Input<number>;

interface VolumeState

interface VolumeState

Input properties used for looking up and filtering Volume resources.

property automount

automount?: pulumi.Input<boolean>;

property format

format?: pulumi.Input<string>;

property labels

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

property linuxDevice

linuxDevice?: pulumi.Input<string>;

property location

location?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

property serverId

serverId?: pulumi.Input<number>;

property size

size?: pulumi.Input<number>;