Want to learn about running containers in Lambda? Join our free hands-on workshop. Register Now

Venafi

The Venafi provider for Pulumi can be used to provision cloud resources available in Venafi. The Venafi provider must be configured with credentials to deploy and update resources in Venafi.

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

Setup

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

Example

const venafi = require("@pulumi/venafi")

const webserver = new venafi.Certificate("webserver", {
    algorithm: "RSA",
    commonName: "web.venafi.example",
    customFields: {
        "Cost Center": "AB1234",
        Environment: "UAT|Staging",
    },
    keyPassword: "Password123!",
    rsaBits: 2048,
    sanDns: [
        "web01.venafi.example",
        "web02.venafi.example",
    ],
});
import * as venafi from "@pulumi/venafi";

const webserver = new venafi.Certificate("webserver", {
    algorithm: "RSA",
    commonName: "web.venafi.example",
    customFields: {
        "Cost Center": "AB1234",
        Environment: "UAT|Staging",
    },
    keyPassword: "Password123!",
    rsaBits: 2048,
    sanDns: [
        "web01.venafi.example",
        "web02.venafi.example",
    ],
});
import pulumi_venafi as venafi

webserver = venafi.Certificate("webserver",
    algorithm="RSA",
    common_name="web.venafi.example",
    key_password="Password123!",
    rsa_bits=2048,
    san_dns=[
        "web01.venafi.example",
        "web02.venafi.example",
    ])
import (
    "github.com/pulumi/pulumi-venafi/sdk/go/venafi"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        cert, err := venafi.NewCertificate(ctx, "webserver", &venafi.CertificateArgs{
            Algorithm:   pulumi.String("RSA"),
            CommonName:  pulumi.String("web.venafi.example"),
            KeyPassword: pulumi.String("Password123!"),
            RsaBits:     pulumi.Int(2048),
            SanDns: pulumi.StringArray{
                pulumi.String("web01.venafi.example"),
                pulumi.String("web02.venafi.example"),
            },
        })
        if err != nil {
            return err
        }

        return nil
    })
}
using System.Collections.Generic;
using System.Threading.Tasks;
using Pulumi;
using Venafi = Pulumi.Venafi;

class Program
{
    static Task Main() =>
        Deployment.Run(() => {
            var webserver = new Venafi.Certificate("webserver", new Venafi.CertificateArgs
            {
                Algorithm = "RSA",
                CommonName = "web.venafi.example",
                KeyPassword = "Password123!",
                RsaBits = 2048,
                SanDns =
                {
                    "web01.venafi.example",
                    "web02.venafi.example",
                },
            });
        });
}

Libraries

The following packages are available in packager managers:

The Venafi provider is open source and available in the pulumi/pulumi-venafi repo.