Before You Begin

Before you get started using Pulumi, let’s run through a few quick steps to ensure your environment is set up correctly.

Install Pulumi

Install Pulumi on macOS through Homebrew:

$ brew install pulumi/tap/pulumi

Install Pulumi on Linux by running the installation script:

$ curl -fsSL https://get.pulumi.com | sh

Install Pulumi on Windows using elevated permissions through the Chocolatey package manager:

> choco install pulumi

For alternative installation instructions (e.g. script-based installation, binaries, etc.) or troubleshooting, see Download and Install.

Next, install the required language runtime, if you have not already.

Install Language Runtime

Choose Your Language

Install Node.js.

Install Python version 3.7 or later. To reduce potential issues with setting up your Python environment on Windows or macOS, you should install Python through the official Python installer.

Install Go.

Install .NET SDK.

Install Java 11 or later and Apache Maven 3.6.1 or later.

Good news! You don't have to install anything else to write Pulumi programs in YAML.

Finally, configure Pulumi with Google Cloud.

Configure Pulumi to access your Google Cloud account

Pulumi requires cloud credentials to manage and provision resources. You must use an IAM user or service account that has Programmatic access with rights to deploy and manage your Google Cloud resources.

In this guide, you will need an IAM user account with permissions that can create and populate a Cloud Storage bucket, such as those in the predefined Storage Admin (roles/storage.admin) or the Storage Legacy Bucket Owner (roles/storage.legacyBucketOwner) roles.

When developing locally, we recommend that you install the Google Cloud SDK and then authorize access with a user account. Next, Pulumi requires default application credentials to interact with your Google Cloud resources, so run auth application-default login command to obtain those credentials:

$ gcloud auth application-default login
Copy

To configure Pulumi to interact with your Google Cloud project, set it with the pulumi config command using the project’s ID:

$ pulumi config set gcp:project your-gcp-project-id
Copy

You may also set your GCP Project via environment variable (listed in order of precedence):

  • GOOGLE_PROJECT
  • GOOGLE_CLOUD_PROJECT
  • GCLOUD_PROJECT
  • CLOUDSDK_CORE_PROJECT
$ export GOOGLE_PROJECT=your-gcp-project-id
Copy

For additional information on setting and using Google Cloud credentials, see Google Cloud Setup.

Next, you’ll create a new Pulumi project.