OVH Component

OvhPublisher creates one OVH Public Cloud instance per publisher name.

Inputs

Required: serviceName, region, imageId, flavorId, and
tenantUrl plus apiToken unless registrations is provided.

Optional platform inputs: sshKeyName and networkId.

Image and bootstrap behavior

Use an Ubuntu 22.04 image ID from the OVH Public Cloud project. The
component uses bootstrap mode and passes cloud-init to the instance
userData field.

Outputs

publisherNames and secret publishers, keyed by publisher name.

Pulumi CLI

1
2
3
4
5
6
7
pulumi config set ovh:endpoint ovh-eu
pulumi config set ovh:applicationKey --secret
pulumi config set ovh:applicationSecret --secret
pulumi config set ovh:consumerKey --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
const publisher = new OvhPublisher("publisher", {
namePrefix: "pub-ovh",
replicas: 2,
tenantUrl: netskope.require("tenantUrl"),
apiToken: netskope.requireSecret("apiToken"),
serviceName: config.require("serviceName"),
region: "GRA11",
imageId: config.require("imageId"),
flavorId: config.require("flavorId"),
sshKeyName: config.get("sshKeyName"),
});

Python

1
2
3
4
5
6
7
8
9
10
11
12
publisher = OvhPublisher(
"publisher",
name_prefix="pub-ovh",
replicas=2,
tenant_url=netskope.require("tenantUrl"),
api_token=netskope.require_secret("apiToken"),
service_name=config.require("serviceName"),
region="GRA11",
image_id=config.require("imageId"),
flavor_id=config.require("flavorId"),
ssh_key_name=config.get("sshKeyName"),
)

C#

1
2
3
4
5
6
7
8
9
10
11
12
var publisher = new OvhPublisher("publisher", new OvhPublisherArgs
{
NamePrefix = "pub-ovh",
Replicas = 2,
TenantUrl = netskope.Require("tenantUrl"),
ApiToken = netskope.RequireSecret("apiToken"),
ServiceName = config.Require("serviceName"),
Region = "GRA11",
ImageId = config.Require("imageId"),
FlavorId = config.Require("flavorId"),
SshKeyName = config.Get("sshKeyName"),
});

Go

1
2
3
4
5
6
7
8
9
10
publisher, err := netskopepublisher.NewOvhPublisher(ctx, "publisher", &netskopepublisher.OvhPublisherArgs{
NamePrefix: pulumi.String("pub-ovh"),
Replicas: pulumi.Int(2),
TenantUrl: pulumi.String(netskope.Require("tenantUrl")),
ApiToken: netskope.RequireSecret("apiToken"),
ServiceName: pulumi.String(cfg.Require("serviceName")),
Region: pulumi.String("GRA11"),
ImageId: pulumi.String(cfg.Require("imageId")),
FlavorId: pulumi.String(cfg.Require("flavorId")),
})

Java

1
2
3
4
5
6
7
8
9
10
var publisher = new OvhPublisher("publisher", OvhPublisherArgs.builder()
.namePrefix("pub-ovh")
.replicas(2)
.tenantUrl(netskope.require("tenantUrl"))
.apiToken(netskope.requireSecret("apiToken"))
.serviceName(config.require("serviceName"))
.region("GRA11")
.imageId(config.require("imageId"))
.flavorId(config.require("flavorId"))
.build());

Rust

1
2
3
4
5
6
7
8
9
10
11
12
13
14
let publisher = netskope::ovh_publisher::create(
ctx,
"publisher",
netskope::ovh_publisher::OvhPublisherArgs::builder()
.name_prefix("pub-ovh")
.replicas(2)
.tenant_url("https://tenant.goskope.com")
.api_token("secret-token")
.service_name("project-id")
.region("GRA11")
.image_id("ubuntu-image-id")
.flavor_id("flavor-id")
.build_struct(),
);