Skip to main content

A Pulumi package for creating and managing Twingate cloud resources.

Project description

Twingate Resource Provider

The Twingate Resource Provider lets you manage Twingate resources.

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 @twingate/pulumi-twingate

or yarn:

yarn add @twingate/pulumi-twingate

Python

To use from Python, install using pip:

pip install pulumi-twingate

Go

To use from Go, use go get to grab the latest version of the library:

go get github.com/pulumi/pulumi-twingate/sdk/go/...

.NET

To use from .NET, install using dotnet add package:

dotnet add package Twingate.Twingate

Configuration

The following configuration points are available for the twingate provider:

  • twingate:apiToken - The access key for API operations. You can retrieve this from the Twingate Admin Console (documentation). Alternatively, this can be specified using the TWINGATE_API_TOKEN environment variable.
  • twingate:network - Your Twingate network ID for API operations. You can find it in the Admin Console URL, for example: autoco.twingate.com, where autoco is your network ID. Alternatively, this can be specified using the TWINGATE_NETWORK environment variable.
  • twingate:url - The default is 'twingate.com'. This is optional and shouldn't be changed under normal circumstances.

Reference

For detailed reference documentation, please visit the Pulumi registry.

Development

Building the Provider Locally

To build and test the provider from source:

Prerequisites

  • Go 1.24+: Required to build the provider
  • Node.js 22+: Required for the Node.js/TypeScript SDK
  • Pulumi CLI: Install from pulumi.com

Build Steps

  1. Build the provider and SDKs:

    # For full development build (all SDKs)
    make development
    
    # For just the provider and Node.js SDK
    make provider build_nodejs
    
  2. Install the local provider plugin:

    After building, you must install the locally built provider as a Pulumi plugin:

    pulumi plugin install resource twingate v4.1.0-alpha.1772811417+dirty \
      --file bin/pulumi-resource-twingate
    

    Note: The version string will match what's in your build (includes +dirty if you have uncommitted changes).

Common Errors

Error: "404 HTTP error fetching plugin"

If you see this error when running pulumi up or pulumi preview:

error: Could not automatically download and install resource plugin 'pulumi-resource-twingate'
at version v4.1.0-alpha.1772811417+dirty: 404 HTTP error fetching plugin from
https://api.github.com/repos/Twingate/pulumi-twingate/releases/tags/...

Solution: This happens because you're using a local development build. Install the plugin manually:

pulumi plugin install resource twingate v4.1.0-alpha.1772811417+dirty \
  --file bin/pulumi-resource-twingate

Replace the version string with whatever version your build generated (check the error message for the exact version).

Verify installation:

pulumi plugin ls | grep twingate

You should see your local version listed.

Testing GitHub Actions Workflows Locally

You can test GitHub Actions workflows locally using act.

Install act

On macOS with Homebrew:

brew install act

On Linux:

curl https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash

For other platforms, see the act installation guide.

Run workflows locally

To test a specific workflow job, use:

# List all available jobs
act --list

# Test the lint workflow
act pull_request -j lint

Note: The first time you run act, it will ask you to choose a Docker image size. Select "Medium" for most workflows.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

pulumi_twingate-4.1.0.tar.gz (70.9 kB view details)

Uploaded Source

File details

Details for the file pulumi_twingate-4.1.0.tar.gz.

File metadata

  • Download URL: pulumi_twingate-4.1.0.tar.gz
  • Upload date:
  • Size: 70.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pulumi_twingate-4.1.0.tar.gz
Algorithm Hash digest
SHA256 52de4efe48d7e8d069de8af095425ccee149f40cecbafca20669517c192df791
MD5 9642826c013a5384e2e5d58875098aa3
BLAKE2b-256 49459db2e1a120a771aa1de8af50cb2e8b4837e4328d659e21134e595f0d2344

See more details on using hashes here.

Provenance

The following attestation bundles were made for pulumi_twingate-4.1.0.tar.gz:

Publisher: release.yml on Twingate/pulumi-twingate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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