Skip to main content

A Pulumi package for creating and managing upstash cloud resources.

Project description

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.

Project details


Download files

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

Source Distribution

upstash_pulumi-0.5.0.tar.gz (33.0 kB view details)

Uploaded Source

File details

Details for the file upstash_pulumi-0.5.0.tar.gz.

File metadata

  • Download URL: upstash_pulumi-0.5.0.tar.gz
  • Upload date:
  • Size: 33.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for upstash_pulumi-0.5.0.tar.gz
Algorithm Hash digest
SHA256 1da92afc211b377977af7ce6d91e443125981d114443d1f06aba1f5bf8295652
MD5 b719b3574228f2ea103b419eb0d0f591
BLAKE2b-256 5bb688c0590b6a2f0eaaa2c4f5642e58f57bcd700a4f027c641f135bfe48a075

See more details on using hashes here.

Supported by

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