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.
If you're having trouble setting up Node.js up on your machine, see Installing Node.js via Package Manager for alternative installation options.
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.
pip
is required to install dependencies. If you installed Python from source, with an installer from
python.org, or via Homebrew you should
already have pip
. If Python is installed using your OS package manager, you may have to install pip
separately, see
Installing pip/setuptools/wheel with Linux Package Managers. For example, on Debian/Ubuntu you must run sudo apt install python3-venv python3-pip
.
If you're having trouble setting up Python on your machine, see Python 3 Installation & Setup Guide for detailed installation instructions on various operating systems and distributions.
Install Go.
Pulumi requires a supported version of Go— this typically refers to the two most recent minor releases. If
you're using Linux, your distribution may not provide an up to date version of the Go compiler. To check what version of Go you have installed, use:
go version
.
Install .NET SDK.
Pulumi will need the dotnet
executable in order to build and run your Pulumi .NET application. Ensure that the dotnet
executable can be found
on your path after installation.
Install Java 11 or later and Apache Maven 3.6.1 or later.
Pulumi will need the java
, javac
, and mvn
executables in order to build and run your Pulumi Java application. Ensure that these
executables can be found on your path after installation.
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
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
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
For additional information on setting and using Google Cloud credentials, see Google Cloud Setup.
Next, you’ll create a new Pulumi project.