Skip to main content

UI for visualizing self-hosted Pulumi state.

Project description

A UI to visualize Pulumi stacks in a self-hosted state backend.

Apache 2.0 License Pulumi Docs Commit activity


Overview

TL;DR The goal of this project is to make free self-hosting Pulumi at scale more viable for teams that do not need all of Pulumi Cloud's features.

The philosophical scope of this project includes tools, guides, or any resources that can help teams get the most advanced, production-level experience possible when self-hosting Pulumi--and to make this simple.

alt text

Quick start

Launch the UI

Launch the UI using your Pulumi state backend.

These examples assume your state is located in ~/.pulumi which is the default location used when you run pulumi login --local.

With pip

pip install pulumi-ui
pulumi-ui up --state-uri file://~

With uvx

uvx pulumi-ui up --state-uri file://~

With pipx

pipx run pulumi-ui up --state-uri file://~

With uv

uv add pulumi-ui
pulumi-ui up --state-uri file://~

Use a remote state backend

AWS S3 Bucket

pulumi-ui can pick up credentials from the environment, e.g. AWS profiles, IAM roles, etc.

Assuming you normally run pulumi login s3://my-pulumi-state-bucket to connect to your state backend, then run:

AWS_PROFILE=xxx pulumi-ui up --state-uri s3://my-pulumi-state-bucket

Google Cloud Storage

Assuming you normally run pulumi login gs://my-pulumi-state-bucket to connect to your state backend, then run:

GOOGLE_APPLICATION_CREDENTIALS=xxx pulumi-ui up --state-uri gs://my-pulumi-state-bucket

Azure Blob Storage

Assuming you normally run pulumi login az://my-pulumi-state-account/my-pulumi-state-container to connect to your state backend, then run:

AZURE_STORAGE_CONNECTION_STRING=xxx pulumi-ui up --state-uri az://my-pulumi-state-account/my-pulumi-state-container

Why does this project exist?

Pulumi is a great IaC tool.

It's open source. It uses real code unlike Terraform and CloudFormation. It can deploy resources across multiple clouds, unlike AWS CDK.

However, coming from "free" IaC tools like CloudFormation and AWS CDK, Pulumi Cloud's pricing of $1.10/resource/mo for teams larger than 10 people can be a tough pill to swallow.

We support the company behind Pulumi. Pulumi leads the way in IaC innovation, and it takes money to do that.

We hope for this project to increase the size and passion of the Pulumi community, bringing them more contributors and customers.

If engineers can use this tool to find initial success self-hosting Pulumi, they will be better equipped to get approval from their procurement departments to buy Pulumi Cloud. Sometimes that initial win requires more than 10 collaborators, more than 200 resources, more than a few-week "POC period", etc.

Contributing

We would LOVE to have you contribute!

Guides, docs, examples, tests, features, hype, IaC to help folks deploy this themselves. All of it.

See CONTRIBUTING.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

pulumi_ui-0.2.1-py3-none-any.whl (1.8 MB view details)

Uploaded Python 3

File details

Details for the file pulumi_ui-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: pulumi_ui-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for pulumi_ui-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 86c7542b5d030c962967e60e57c7ed8d2e10942b1ffaa42caa6fe9b9c0a95f0e
MD5 97adede44ee1297d4763682e80cea1c8
BLAKE2b-256 cef7a4b3f22fed3af4ede050324aa0f2c72a7496891fb33081c4dda23646a98d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page