Notably Polite Mariner

    @upstash/pulumi
    TypeScript icon, indicating that this package has built-in type declarations

    0.1.1 • Public • Published

    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/upstash-pulumi-provider/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/upstash-pulumi-provider/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.

    Install

    npm i @upstash/pulumi

    DownloadsWeekly Downloads

    14

    Version

    0.1.1

    License

    Apache-2.0

    Unpacked Size

    162 kB

    Total Files

    68

    Last publish

    Collaborators

    • chronark
    • buggyhunter
    • upstashnpm
    • ademilter-upstash
    • mdogan