Open-Source Wikis

/

Pulumi

/

Pulumi

pulumi/pulumi

Pulumi

Pulumi is an open-source infrastructure-as-code (IaC) platform that lets you describe cloud resources in general-purpose programming languages — TypeScript/JavaScript, Python, Go, .NET (C#/F#/VB.NET), Java, and YAML — instead of bespoke DSLs. This repository (pulumi/pulumi) holds the pulumi command-line interface, the deployment engine that drives every preview, update, refresh, and destroy, the gRPC protocol that wires everything together, and the core SDKs that user programs link against.

What lives in this repo

The Pulumi platform is split across many repositories — provider implementations (e.g. pulumi-aws, pulumi-azure-native), templates, policy packs, and language-specific tooling all live in their own repos. pulumi/pulumi is the core of the system:

  • The pulumi CLI (pkg/cmd/pulumi)
  • The deployment engine (pkg/engine, pkg/resource/deploy)
  • State storage backends (pkg/backend/diy, pkg/backend/httpstate)
  • gRPC protocol definitions (proto/pulumi/*.proto)
  • Core language SDKs (sdk/go, sdk/nodejs, sdk/python, sdk/pcl)
  • Language hosts that bridge the engine to user programs (sdk/<lang>/cmd/pulumi-language-<lang>)
  • Code generation for SDKs and program conversion (pkg/codegen)
  • Pulumi Cloud Language (PCL) — the intermediate representation used by pulumi convert (sdk/pcl)

If a feature isn't tied to a specific cloud, it most likely lives here.

Audience

This wiki is written for engineers who want to work on Pulumi (the platform), not engineers who want to use Pulumi to deploy infrastructure. For end-user documentation see pulumi.com/docs.

Status snapshot

  • Current SDK version: 3.234.0 (see sdk/.version)
  • Released versions: 1,400+ git tags, weekly cadence
  • Languages of the platform itself: Go (engine, CLI, codegen), TypeScript (Node SDK), Python (Python SDK), some C/JS for protobuf glue
  • Public surface: the pulumi CLI, the gRPC protocol in proto/, and the language SDKs

Conventions used in this wiki

  • Source-file references use full repo-relative paths in backticks (e.g. pkg/cmd/pulumi/pulumi.go) so they render as clickable links.
  • Mermaid diagrams illustrate architectural relationships, request flows, and state machines.
  • Each domain page lists active contributors derived from git log on the default branch (master), excluding [bot] accounts. These are people you can ping if you have questions.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Pulumi – Pulumi wiki | Factory