JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 799
  • Score
    100M100P100Q104458F
  • License Apache-2.0

A Pulumi package for creating and managing upstash cloud resources.

Package Exports

  • @upstash/pulumi
  • @upstash/pulumi/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@upstash/pulumi) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Upstash Resource Provider

The Upstash Pulumi Provider lets you manage Upstash Redis and Kafka 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: "eu-west-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

created_cluster = upstash.KafkaCluster(
    resource_name="myCluster",
    cluster_name="pulumi-python-cluster",
    multizone=False,
    region="eu-west-1"
)

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.