OpenStack

The OpenStack provider for Pulumi can be used to provision any of the private and public cloud resources available in OpenStack. The OpenStack provider must be configured with credentials to deploy and update resources in an OpenStack cloud.

See the full API documentation for complete details of the available OpenStack provider APIs.

OpenStack Provider Setup

The OpenStack provider supports several options for providing access to OpenStack credentials. See the OpenStack setup page for details.

Example

const os = require("@pulumi/openstack")

const instance = new os.compute.Instance("test", {
	flavorName: "s1-2",
	imageName: "Ubuntu 16.04",
});
import * as os from "@pulumi/openstack";

const instance = new os.compute.Instance("test", {
	flavorName: "s1-2",
	imageName: "Ubuntu 16.04",
});
from pulumi_openstack import compute

instance = compute.Instance("test",
  flavor_name='s1-2',
  image_name='Ubuntu 16.04'
)
import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	compute "github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/compute"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		instance, err := compute.NewInstance(ctx, "test", &compute.InstanceArgs{
			FlavorName: pulumi.String("s1-2"),
			ImageName:  pulumi.String("Ubuntu 16.04"),
		})
		if err != nil {
			return err
		}

		return nil
	})
}
using System.Threading.Tasks;
using Pulumi;
using Pulumi.OpenStack;

class Program
{
    static Task Main() =>
        Deployment.Run(() => {
            var instance = new OpenStack.Compute.Instance("test", new OpenStack.Compute.InstanceArgs
            {
                FlavorName = "s1-2",
                ImageName = "Ubuntu 16.04",
            });
        });
}

Libraries

The following packages are available in package managers:

As with all Pulumi software solutions, the OpenStack provider is open source and available in the pulumi/pulumi-openstack repo. You can see all Pulumi infrastructure and cloud providers [here] (/docs/intro/cloud-providers/).