OpenStack Component
Java examples use the published
com.pulumi:netskope-publisher
SDK. Rust examples use the published
pulumi-netskope-publisher
crate plus Pulumi Gestalt.
OpenstackPublisher creates one OpenStack compute instance per
publisher name.
Inputs
Required: imageName, flavorName, networkName, and tenantUrl plus
bearerToken unless registrations is provided.
Optional platform inputs: keyPair, securityGroups,
availabilityZone, assignFloatingIp, and floatingIpPool.
Image and bootstrap behavior
Use an Ubuntu 22.04 image name. The component uses bootstrap mode and
passes decoded cloud-init to the compute instance userData field.
Outputs
publisherNames and secret publishers, keyed by publisher name.
Pulumi YAML
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| name: netskope-publisher-openstack runtime: yaml config: tenantUrl: type: String bearerToken: type: String secret: true resources: publisher: type: netskope-publisher:index:OpenstackPublisher properties: namePrefix: pub replicas: 2 tenantUrl: ${tenantUrl} bearerToken: ${bearerToken} imageName: Ubuntu 22.04 flavorName: m1.medium networkName: private bootstrap: true outputs: publisherNames: ${publisher.publisherNames} publishers: ${publisher.publishers}
|
TypeScript
1 2 3 4 5 6 7 8 9 10
| const publisher = new OpenstackPublisher("publisher", { namePrefix: "pub-os", replicas: 2, tenantUrl: netskope.require("tenantUrl"), bearerToken: netskope.requireSecret("bearerToken"), imageName: "Ubuntu 22.04", flavorName: "m1.medium", networkName: "private", securityGroups: ["default"], });
|
Python
1 2 3 4 5 6 7 8 9 10 11
| publisher = OpenstackPublisher( "publisher", name_prefix="pub-os", replicas=2, tenant_url=netskope.require("tenantUrl"), bearer_token=netskope.require_secret("bearerToken"), image_name="Ubuntu 22.04", flavor_name="m1.medium", network_name="private", security_groups=["default"], )
|
C#
1 2 3 4 5 6 7 8 9 10 11
| var publisher = new OpenstackPublisher("publisher", new OpenstackPublisherArgs { NamePrefix = "pub-os", Replicas = 2, TenantUrl = netskope.Require("tenantUrl"), BearerToken = netskope.RequireSecret("bearerToken"), ImageName = "Ubuntu 22.04", FlavorName = "m1.medium", NetworkName = "private", SecurityGroups = { "default" }, });
|
Go
1 2 3 4 5 6 7 8 9 10
| publisher, err := netskopepublisher.NewOpenstackPublisher(ctx, "publisher", &netskopepublisher.OpenstackPublisherArgs{ NamePrefix: pulumi.String("pub-os"), Replicas: pulumi.Int(2), TenantUrl: pulumi.String(netskope.Require("tenantUrl")), BearerToken: netskope.RequireSecret("bearerToken"), ImageName: pulumi.String("Ubuntu 22.04"), FlavorName: pulumi.String("m1.medium"), NetworkName: pulumi.String("private"), SecurityGroups: pulumi.StringArray{pulumi.String("default")}, })
|
Java
1 2 3 4 5 6 7 8 9 10
| var publisher = new OpenstackPublisher("publisher", OpenstackPublisherArgs.builder() .namePrefix("pub-os") .replicas(2) .tenantUrl(netskope.require("tenantUrl")) .bearerToken(netskope.requireSecret("bearerToken")) .imageName("Ubuntu 22.04") .flavorName("m1.medium") .networkName("private") .securityGroups("default") .build());
|
Rust
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| let publisher = netskope::openstack_publisher::create( ctx, "publisher", netskope::openstack_publisher::OpenstackPublisherArgs::builder() .name_prefix("pub-os") .replicas(2) .tenant_url("https://tenant.goskope.com") .bearer_token("secret-token") .image_name("Ubuntu 22.04") .flavor_name("m1.medium") .network_name("private") .security_groups(vec!["default".to_string()]) .build_struct(), );
|