Skip to main content

Upstash Resource Provider

The Upstash Pulumi Provider lets you manage Upstash Redis & QStash & Vector resources programatically.

Installing

This package is available for several languages/platforms:

Node.js (JavaScript/TypeScript)

To use from JavaScript or TypeScript in Node.js, install using either npm:

npm install @upstash/pulumi

or yarn:

yarn add @upstash/pulumi

Python

To use from Python, install using pip:

pip install upstash_pulumi

Go

To use from Go, use go get to grab the latest version of the library:

go get github.com/upstash/pulumi-upstash/sdk/go/...

Configuration

The following configuration points are available for the upstash provider:

  • upstash:apiKey (environment: UPSTASH_API_KEY) - the API key for upstash. Can be obtained from the console.
  • upstash:email (environment: UPSTASH_EMAIL) - owner email of the resources

Some Examples

TypeScript:

import * as pulumi from "@pulumi/pulumi";
import * as upstash from "@upstash/pulumi";

// multiple redis databases in a single for loop

for (let i = 0; i < 5; i++) {
    new upstash.RedisDatabase("mydb" + i, {
        databaseName: "pulumi-ts-db" + i,
        region: "global",
		primaryRegion: "us-east-1",
        tls: true
    })
}

Go:

package main

import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/upstash/pulumi-upstash/sdk/go/upstash"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {

		createdTeam, err := upstash.NewTeam(ctx, "exampleTeam", &upstash.TeamArgs{
			TeamName: pulumi.String("pulumi go team"),
			CopyCc:   pulumi.Bool(false),
			TeamMembers: pulumi.StringMap{
				"<owner-email>": pulumi.String("owner"),
				"<some-other-user-email>":   pulumi.String("dev"),
			},

		})
		if err != nil {
			return err
		}
		return nil
	})
}

Python:

import pulumi
import upstash_pulumi as upstash

example_db = upstash.RedisDatabase("exampleDB",
    database_name="Pulumi DB",
    region="global",
	primary_region="us-east-1"
    tls=True
)

Reference

For reference, please look into /examples directory for resource management using different languages. You can also visit developer api docs to see parameters and their behaviors.

Metadata

Release files for upstash-pulumi 0.5.0

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

Source distribution (sdist)

Source distribution for upstash-pulumi 0.5.0
File Size Uploaded Provenance Actions
upstash_pulumi-0.5.0.tar.gz 33.0 kB Without provenance Details for upstash_pulumi-0.5.0.tar.gz

Release files / upstash_pulumi-0.5.0.tar.gz

Download URL upstash_pulumi-0.5.0.tar.gz
Size 33.0 kB
Tags Source
SHA-256 checksum
How to use checksums
1da92afc211b377977af7ce6d91e443125981d114443d1f06aba1f5bf8295652
BLAKE2b-256 checksum
How to use checksums
5bb688c0590b6a2f0eaaa2c4f5642e58f57bcd700a4f027c641f135bfe48a075
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Security for upstash-pulumi 0.5.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

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.

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