Pulumi

Overview

The Upstash Pulumi Provider lets you manage Upstash Redis resources programmatically.

You can find the Github Repository here.

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 loopfor (let i = 0; i < 5; i++) {  new upstash.RedisDatabase("mydb" + i, {    databaseName: "pulumi-ts-db" + i,    region: "eu-west-1",    tls: true,  });}

Go:

package mainimport (	"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	})}
Loading search…