Open-Source Wikis

/

Pulumi

/

Packages

pulumi/pulumi

Packages

The language SDKs that user programs link against. Each SDK exposes the gRPC ResourceMonitor interface in idiomatic form for its language: a class to extend (Resource, ComponentResource), a future-like value (Output<T>), and the runtime infrastructure to talk to the engine.

Sub-pages

Active contributors

Active contributors: Ian Wahbe, Thomas Gummerer, Julien, Fraser Ashyggton, Justin Van Patten

Common shape

Every SDK in this repo follows the same architecture:

graph TD
    UserProg[User program] -->|imports| SDK[Language SDK]
    SDK --> Resource[Resource type]
    SDK --> Output[Output<T>]
    SDK --> Runtime[Runtime: gRPC client to ResourceMonitor]
    Runtime -.->|gRPC| Engine[pulumi engine]

Every SDK exposes the same conceptual surface — Output<T>, Input<T>, Resource, ComponentResource, Config, StackReference, getStack, getProject, getOrganization — but with idiomatic spellings.

Cross-language conformance

scripts/run-conformance.sh runs a shared test suite against every language. The harness drives small Pulumi programs in each language and asserts identical behavior — same outputs, same diffs, same step ordering for equivalent inputs. New SDK features must pass the conformance suite before being declared "supported".

SDKs that don't live here

Language Repo
.NET (C#/F#/VB.NET) pulumi/pulumi-dotnet
Java pulumi/pulumi-java
YAML pulumi/pulumi-yaml

These follow the same shape but are versioned independently.

Versioning

The SDK version is in sdk/.version (currently 3.234.0). It is bumped together with the engine version: a pulumi/pulumi release ships a CLI, a set of language hosts, and a set of SDKs that all agree on the protobuf schema.

See also

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

Packages – Pulumi wiki | Factory