Skip to main content

pulumi-verda

pulumi-verda provider

Pulumi Python SDK for Verda (formerly DataCrunch), generated from the Verda Terraform provider via pulumi package add terraform-provider. Currently pinned to provider version 1.1.4.

No Go toolchain required — the Verda Terraform binary is downloaded automatically by the pulumi-terraform-provider runtime plugin on first use.

Prerequisites

  • Python 3.9+
  • Pulumi CLI ≥ 3.165.0
  • An active Python virtual environment

Installation

1. Activate your venv

source .venv/bin/activate        # from repo root

2. Install the Pulumi runtime plugin (one-time per machine)

pulumi plugin install resource terraform-provider 1.2.1

3. Install the Python SDK

pip install pulumi-verda

For local development from a checkout of this repo:

pip install -e pulumi-verda/sdk

Verify

python -c "import pulumi_verda as v; print(v.Instance)"

Usage

Credentials can be passed to the provider explicitly, or picked up from the VERDA_CLIENT_ID / VERDA_CLIENT_SECRET environment variables.

import pulumi
import pulumi_verda as verda

provider = verda.Provider(
    "verda",
    client_id="<client-id>",
    client_secret="<client-secret>",
)

key = verda.SshKey(
    "key",
    name="my-key",
    public_key=open("id_ed25519.pub").read(),
    opts=pulumi.ResourceOptions(provider=provider),
)

instance = verda.Instance(
    "gpu",
    hostname="my-gpu",
    description="training box",
    instance_type="1B200.30V",
    image="ubuntu-24.04-cuda-12.8-open-docker",
    location="FIN-01",
    ssh_key_ids=[key.id],
    opts=pulumi.ResourceOptions(provider=provider),
)

Key resource classes:

Class Description
verda.Provider Provider configuration (auth)
verda.Instance GPU/CPU instance
verda.Volume Block storage volume
verda.VolumeAttachment Attach a volume to an instance
verda.SshKey SSH public key
verda.StartupScript Startup script run on instance creation
verda.Container Serverless container deployment
verda.ServerlessJob Serverless job deployment
verda.ContainerRegistryCredentials Private registry credentials for containers

Regenerating the SDK

To regenerate after an upstream Terraform provider release:

# Pin to a specific version and regenerate
make sdk VERSION=1.1.5

# Or just regenerate from the current pinned version
make sdk

Automated updates

The pulumi-verda provider workflow:

  • Checks the Terraform registry for a newer version every Monday at 06:00 UTC, and opens a PR that bumps Makefile and regenerates sdk/ if one is found.
  • Can also be triggered manually via Actions → pulumi-verda provider → Run workflow, with an optional version input to bump to a specific release.
  • Validates that the generated SDK imports cleanly on every push to main that touches pulumi-verda/**.

Publishing to PyPI

Publishing works the same way as pulumi-nebius:

  1. Merging a version-bump PR to main triggers the tag-release job, which tags pulumi-verda-v<version> and cuts a GitHub Release if that tag doesn't exist yet.
  2. The release fires pulumi-verda-pypi-publish.yml, which builds sdk/ and uploads it to PyPI via OIDC trusted publishing.

One-time setup: on PyPI (and optionally TestPyPI), add a Trusted Publisher for the pulumi-verda project pointing at this repo, workflow pulumi-verda-pypi-publish.yml, environment pypi (or testpypi).

Manual / local

make dist                                   # build sdist + wheel into sdk/dist/
PYPI_API_TOKEN=pypi-... make publish-test   # upload to TestPyPI
PYPI_API_TOKEN=pypi-... make publish        # upload to PyPI

scripts/patch_pyproject.py re-applies PyPI metadata (license, authors, URLs, README) to the generated sdk/pyproject.toml after every make sdk.

Directory layout

pulumi-verda/
├── Makefile          # sdk / install / bump / dist / publish targets
├── README.md         # this file
├── scripts/          # build, publish, pyproject patching
└── sdk/              # generated Python package (committed)
    ├── pyproject.toml
    └── pulumi_verda/
        ├── pulumi-plugin.json   # tells Pulumi which runtime plugin to use
        ├── instance.py
        ├── volume.py
        ├── ssh_key.py
        └── ...

License

MIT

Metadata

Release files for pulumi-verda 1.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pulumi-verda 1.1.4
File Size Uploaded Provenance
pulumi_verda-1.1.4.tar.gz 39.0 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pulumi-verda 1.1.4
File Interpreter ABI Platform
pulumi_verda-1.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 86.5 kB

Release files / pulumi_verda-1.1.4.tar.gz

Download URL pulumi_verda-1.1.4.tar.gz
Size 39.0 kB
Tags Source
SHA-256 checksum
How to use checksums
05969586cd837a19482e3cc52b85d470ee62ad96ac68320080b05199bfd639d8
BLAKE2b-256 checksum
How to use checksums
7265ebd81a68da9f87a0078ed2108ec4e4a4acc42343b5b2663414bef40c663e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Release files / pulumi_verda-1.1.4-py3-none-any.whl

Download URL pulumi_verda-1.1.4-py3-none-any.whl
Size 47.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0c0326c061e905e547b17027a428d87482569b054e6d5817fe2cd1bbb963acef
BLAKE2b-256 checksum
How to use checksums
c807461b85cbae303bc234238e1b3e2486ee095296e45ac909927bafd7ccf52b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Security for pulumi-verda 1.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for pulumi_verda-1.1.4.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.1.4 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page