Skip to main content

No project description provided

Project description

Google Cloud Platform Scaffolding

This repo is a Pulumi Package used to deploy create a Google Cloud Project, connect it to a billing account and be able to enable any APIs for the project

It's written in Go, but thanks to Pulumi's multi language SDK generating capability, it create usable SDKs for all of Pulumi's supported languages

:warning: This package is a work in progress: Please do not use this in a production environment!

Building and Installing

Building from source

But if you need to build it yourself, just download this repository, install Task:

go get github.com/go-task/task/v3/cmd/task

And run the following command to build and install the plugin in the correct folder (resolved automatically based on the current Operating System):

task install

Install Plugin Binary

Before you begin, you'll need to install the latest version of the Pulumi Plugin using pulumi plugin install:

pulumi plugin install resource globalgcpcloudrun v0.0.1 --server https://cobraz.jfrog.io/artifactory/pulumi-packages/pulumi-gcp-scaffold

This installs the plugin into ~/.pulumi/plugins.

Install your chosen SDK

Next, you need to install your desired language SDK using your languages package manager.

Python

pip3 install cobraz-pulumi-gcp-scaffold

NodeJS

npm install @cobraz/pulumi-gcp-scaffold

DotNet

Coming Soon

Go

go get -t github.com/cobraz/pulumi-gcp-scaffold/sdk/go/gcp

Usage

Once you've installed all the dependencies, you can use the library like any other Pulumi SDK. See the examples directory for examples of how you might use it.

To create a Google Cloud Project and enable some APIs then you would use the following example:

import * as pulumi from "@pulumi/pulumi";
import * as scaffold from "@cobraz/pulumi-gcp-scaffold";

const proj = new scaffold.Project("my-project", {
    projectID: "my-project-name",
    orgID: "<my gcp org id>",
    billingAccountID: "<my billing account id>",
    activatedApis: [
        "compute.googleapis.com",
        "container.googleapis.com",
        "cloudbilling.googleapis.com"
    ]
})

export const projectName = proj.projectName;
export const projectID = proj.projectID;

Limitations

This package currently requires the user to be aware of the orgID and billingAccountID. There are plans to make this easier.

Project details


Download files

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

Source Distribution

File details

Details for the file cobraz_pulumi_gcp_scaffold-0.0.1a1623358064.tar.gz.

File metadata

  • Download URL: cobraz_pulumi_gcp_scaffold-0.0.1a1623358064.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for cobraz_pulumi_gcp_scaffold-0.0.1a1623358064.tar.gz
Algorithm Hash digest
SHA256 974587cf49343723a8dc29cc1e2833cea35b1c59773fefd8d9cd20e5a4747aec
MD5 0a1fedc4908c5363f906c7a93af54c16
BLAKE2b-256 c12e478165d5d0cc0613a3c55255bad3a698680155067316fddc6cb4ebbcfef5

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page