Hcloud Component HcloudPublisher creates one Hetzner Cloud server per publisher name.
Inputs Required: tenantUrl and apiToken, unless registrations is provided.
Optional platform inputs: serverType, image, location, datacenter,sshKeys, firewallIds, networkId, and assignPublicIp.
Image and bootstrap behavior The default image is ubuntu-22.04. Hcloud uses bootstrap mode and runs Netskope’s generic installer through cloud-init.
Outputs publisherNames and secret publishers, keyed by publisher name.
Pulumi CLI 1 2 3 4 pulumi config set hcloud:token --secret pulumi config set netskope:tenantUrl https://tenant.goskope.com pulumi config set netskope:apiToken --secret pulumi up
TypeScript 1 2 3 4 5 6 7 8 9 10 11 12 13 import * as pulumi from "@pulumi/pulumi" ;import { HcloudPublisher } from "@johninnl/pulumi-netskope-publisher" ;const netskope = new pulumi.Config ("netskope" );const publisher = new HcloudPublisher ("publisher" , { namePrefix : "pub-fsn" , replicas : 2 , tenantUrl : netskope.require ("tenantUrl" ), apiToken : netskope.requireSecret ("apiToken" ), location : "fsn1" , serverType : "cx22" , }); export const publishers = publisher.publishers ;
Python 1 2 3 4 5 6 7 8 9 10 11 12 13 14 import pulumifrom pulumi_netskope_publisher import HcloudPublishernetskope = pulumi.Config("netskope" ) publisher = HcloudPublisher( "publisher" , name_prefix="pub-fsn" , replicas=2 , tenant_url=netskope.require("tenantUrl" ), api_token=netskope.require_secret("apiToken" ), location="fsn1" , server_type="cx22" , ) pulumi.export("publishers" , publisher.publishers)
C# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 using Pulumi;using JohninNL.Pulumi.NetskopePublisher;return await Deployment.RunAsync(() =>{ var netskope = new Config("netskope" ); var publisher = new HcloudPublisher("publisher" , new HcloudPublisherArgs { NamePrefix = "pub-fsn" , Replicas = 2 , TenantUrl = netskope.Require("tenantUrl" ), ApiToken = netskope.RequireSecret("apiToken" ), Location = "fsn1" , ServerType = "cx22" , }); });
Go 1 2 3 4 5 6 7 8 publisher, err := netskopepublisher.NewHcloudPublisher(ctx, "publisher" , &netskopepublisher.HcloudPublisherArgs{ NamePrefix: pulumi.String("pub-fsn" ), Replicas: pulumi.Int(2 ), TenantUrl: pulumi.String(netskope.Require("tenantUrl" )), ApiToken: netskope.RequireSecret("apiToken" ), Location: pulumi.String("fsn1" ), ServerType: pulumi.String("cx22" ), })
Java 1 2 3 4 5 6 7 8 var publisher = new HcloudPublisher ("publisher" , HcloudPublisherArgs.builder() .namePrefix("pub-fsn" ) .replicas(2 ) .tenantUrl(netskope.require("tenantUrl" )) .apiToken(netskope.requireSecret("apiToken" )) .location("fsn1" ) .serverType("cx22" ) .build());
Rust 1 2 3 4 5 6 7 8 9 10 11 12 let publisher = netskope::hcloud_publisher::create ( ctx, "publisher" , netskope::hcloud_publisher::HcloudPublisherArgs::builder () .name_prefix ("pub-fsn" ) .replicas (2 ) .tenant_url ("https://tenant.goskope.com" ) .api_token ("secret-token" ) .location ("fsn1" ) .server_type ("cx22" ) .build_struct (), );