@upstash/pulumi
v0.5.0
Published
A Pulumi package for creating and managing upstash cloud resources.
Downloads
5,313
Readme
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/pulumior yarn:
yarn add @upstash/pulumiPython
To use from Python, install using pip:
pip install upstash_pulumiGo
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 forupstash. 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.
