Viewing docs for Hetzner Cloud v1.32.1
published on Tuesday, Feb 17, 2026 by Pulumi
published on Tuesday, Feb 17, 2026 by Pulumi
Viewing docs for Hetzner Cloud v1.32.1
published on Tuesday, Feb 17, 2026 by Pulumi
published on Tuesday, Feb 17, 2026 by Pulumi
Provides a list of Hetzner Cloud SSH Keys.
This resource is useful if you want to use a non-terraform managed SSH Key.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as hcloud from "@pulumi/hcloud";
const all = hcloud.getSshKeys({});
const byLabel = hcloud.getSshKeys({
withSelector: "foo=bar",
});
const main = new hcloud.Server("main", {sshKeys: all.then(all => all.sshKeys.map(__item => __item.name))});
import pulumi
import pulumi_hcloud as hcloud
all = hcloud.get_ssh_keys()
by_label = hcloud.get_ssh_keys(with_selector="foo=bar")
main = hcloud.Server("main", ssh_keys=[__item.name for __item in all.ssh_keys])
package main
import (
"github.com/pulumi/pulumi-hcloud/sdk/go/hcloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
all, err := hcloud.GetSshKeys(ctx, &hcloud.GetSshKeysArgs{}, nil)
if err != nil {
return err
}
_, err = hcloud.GetSshKeys(ctx, &hcloud.GetSshKeysArgs{
WithSelector: pulumi.StringRef("foo=bar"),
}, nil)
if err != nil {
return err
}
var splat0 []*string
for _, val0 := range all.SshKeys {
splat0 = append(splat0, val0.Name)
}
_, err = hcloud.NewServer(ctx, "main", &hcloud.ServerArgs{
SshKeys: splat0,
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using HCloud = Pulumi.HCloud;
return await Deployment.RunAsync(() =>
{
var all = HCloud.GetSshKeys.Invoke();
var byLabel = HCloud.GetSshKeys.Invoke(new()
{
WithSelector = "foo=bar",
});
var main = new HCloud.Server("main", new()
{
SshKeys = all.Apply(getSshKeysResult => getSshKeysResult.SshKeys).Select(__item => __item.Name).ToList(),
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.hcloud.HcloudFunctions;
import com.pulumi.hcloud.inputs.GetSshKeysArgs;
import com.pulumi.hcloud.Server;
import com.pulumi.hcloud.ServerArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var all = HcloudFunctions.getSshKeys(GetSshKeysArgs.builder()
.build());
final var byLabel = HcloudFunctions.getSshKeys(GetSshKeysArgs.builder()
.withSelector("foo=bar")
.build());
var main = new Server("main", ServerArgs.builder()
.sshKeys(all.sshKeys().stream().map(element -> element.name()).collect(toList()))
.build());
}
}
Example coming soon!
Using getSshKeys
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getSshKeys(args: GetSshKeysArgs, opts?: InvokeOptions): Promise<GetSshKeysResult>
function getSshKeysOutput(args: GetSshKeysOutputArgs, opts?: InvokeOptions): Output<GetSshKeysResult>def get_ssh_keys(id: Optional[str] = None,
with_selector: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetSshKeysResult
def get_ssh_keys_output(id: Optional[pulumi.Input[str]] = None,
with_selector: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetSshKeysResult]func GetSshKeys(ctx *Context, args *GetSshKeysArgs, opts ...InvokeOption) (*GetSshKeysResult, error)
func GetSshKeysOutput(ctx *Context, args *GetSshKeysOutputArgs, opts ...InvokeOption) GetSshKeysResultOutput> Note: This function is named GetSshKeys in the Go SDK.
public static class GetSshKeys
{
public static Task<GetSshKeysResult> InvokeAsync(GetSshKeysArgs args, InvokeOptions? opts = null)
public static Output<GetSshKeysResult> Invoke(GetSshKeysInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetSshKeysResult> getSshKeys(GetSshKeysArgs args, InvokeOptions options)
public static Output<GetSshKeysResult> getSshKeys(GetSshKeysArgs args, InvokeOptions options)
fn::invoke:
function: hcloud:index/getSshKeys:getSshKeys
arguments:
# arguments dictionaryThe following arguments are supported:
- Id string
- The ID of this resource.
- With
Selector string - Filter results using a Label Selector
- Id string
- The ID of this resource.
- With
Selector string - Filter results using a Label Selector
- id String
- The ID of this resource.
- with
Selector String - Filter results using a Label Selector
- id string
- The ID of this resource.
- with
Selector string - Filter results using a Label Selector
- id str
- The ID of this resource.
- with_
selector str - Filter results using a Label Selector
- id String
- The ID of this resource.
- with
Selector String - Filter results using a Label Selector
getSshKeys Result
The following output properties are available:
- Ssh
Keys List<Pulumi.HCloud. Outputs. Get Ssh Keys Ssh Key> - Id string
- The ID of this resource.
- With
Selector string - Filter results using a Label Selector
- Ssh
Keys []GetSsh Keys Ssh Key - Id string
- The ID of this resource.
- With
Selector string - Filter results using a Label Selector
- ssh
Keys List<GetSsh Keys Ssh Key> - id String
- The ID of this resource.
- with
Selector String - Filter results using a Label Selector
- ssh
Keys GetSsh Keys Ssh Key[] - id string
- The ID of this resource.
- with
Selector string - Filter results using a Label Selector
- ssh_
keys Sequence[GetSsh Keys Ssh Key] - id str
- The ID of this resource.
- with_
selector str - Filter results using a Label Selector
- ssh
Keys List<Property Map> - id String
- The ID of this resource.
- with
Selector String - Filter results using a Label Selector
Supporting Types
GetSshKeysSshKey
- fingerprint str
- Fingerprint of the SSH Key.
- id int
- ID of the SSH Key.
- labels Mapping[str, str]
- User-defined labels (key-value pairs) for the resource.
- name str
- Name of the SSH Key.
- public_
key str - Public key of the SSH Key pair.
Package Details
- Repository
- Hetzner Cloud pulumi/pulumi-hcloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
hcloudTerraform Provider.
Viewing docs for Hetzner Cloud v1.32.1
published on Tuesday, Feb 17, 2026 by Pulumi
published on Tuesday, Feb 17, 2026 by Pulumi
