Come join Pulumi for the industry's first Cloud Engineering Summit! October 7–8. Save Your Spot

HashiCorp Consul

The HashiCorp Consul provider for Pulumi can be used to provision any of the resources available in Consul.

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


The Consul provider supports several options for interacting with HashiCorp Consul. See the Consul setup page for details.


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

const node = new consul.Node("compute", {
  address: ""
import * as consul from "@pulumi/consul";

const node = new consul.Node("compute", {
  address: ""
import pulumi_consul as consul

node = consul.Node("compute",
import (
  consul ""

node, _ := consul.NewNode(ctx, "compute", &consul.NodeArgs{
  Address: pulumi.String(""),
using System.Collections.Generic;
using System.Threading.Tasks;
using Pulumi;
using Pulumi.Consul;

class Program
    static Task Main() =>
        Deployment.Run(() => {
            var node = new Consul.Node("compute", new Consul.NodeArgs
                Address = "",


The following packages are available in packager managers:

The HashiCorp Consul provider is open source and available in the pulumi/pulumi-consul repo.