This repository has been archived by the owner on Jul 1, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 145
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
37 changed files
with
652 additions
and
643 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
--- | ||
title: Get started | ||
title_tag: Get Started with Pulumi ESC (Environments, Secrets, and Configuration) | ||
h1: Get Started with Pulumi ESC (Environments, Secrets, and Configuration) | ||
meta_desc: Learn how to manage secrets and hierarchical configuration with Pulumi. | ||
menu: | ||
pulumiesc: | ||
identifier: esc-get-started | ||
weight: 1 | ||
aliases: | ||
- /docs/pulumi-cloud/esc/get-started/ | ||
--- | ||
|
||
In a typical application or infrastructure development workflow, there's often a need to maintain multiple environments such as development, staging, and production. Each of these environments might have its own set of configuration values: API endpoints, database connection strings, third-party secrets, and more. | ||
|
||
Hardcoding these values or keeping them inside source code is a security risk and makes managing configurations complex. [Pulumi ESC (Environments, Secrets and Configuration)](/docs/esc/) offers a centralized store to manage configuration data, plain-text data, and secrets. | ||
|
||
In this tutorial, we’ll demonstrate how to use Pulumi ESC as well as the power of this service in managing configuration and secrets. | ||
|
||
{{< get-started-stepper >}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,93 @@ | ||
--- | ||
title_tag: Before You Begin | Pulumi ESC | ||
title: Before you begin | ||
h1: "Pulumi ESC: Before you begin" | ||
meta_desc: This page provides an overview on how to get started with Pulumi ESC. | ||
weight: 2 | ||
menu: | ||
pulumiesc: | ||
parent: esc-get-started | ||
identifier: esc-get-started-begin | ||
--- | ||
|
||
Before you get started using Pulumi ESC, let's run through a few quick steps to ensure your environment is set up correctly. | ||
|
||
### Create a Pulumi account | ||
|
||
Pulumi ESC is a service of Pulumi Cloud, meaning you will need to create a Pulumi account to be able to use it. To do so, navigate to the [Pulumi Cloud console](https://app.pulumi.com) and create a new account. Once created, you can [optionally create an access token](/docs/pulumi-cloud/access-management/access-tokens/). Doing so will provide you an alternative way to sign into the Pulumi Cloud via the CLI. The token can also be used to automate your usage of the Pulumi Cloud using the REST API. | ||
|
||
### Install the Pulumi ESC CLI | ||
|
||
{{< notes type="info" >}} | ||
Pulumi ESC can be used with or without Pulumi IaC. This means that if you already have the [Pulumi IaC CLI](/docs/cli/) installed, you do not need to install the Pulumi ESC CLI, and you may substitute `pulumi env` anywhere you see the `esc env` command in the rest of this tutorial. | ||
{{< /notes >}} | ||
|
||
Use the below option to install the Pulumi ESC CLI based on your operating system. | ||
|
||
{{< chooser os "macos,windows,linux" >}} | ||
|
||
{{% choosable os macos %}} | ||
|
||
```bash | ||
$ brew update && brew install pulumi/tap/esc | ||
``` | ||
|
||
{{% /choosable %}} | ||
|
||
{{% choosable os linux %}} | ||
|
||
```bash | ||
$ curl -fsSL https://get.pulumi.com/esc/install.sh | sh | ||
``` | ||
|
||
{{% /choosable %}} | ||
|
||
{{% choosable os windows %}} | ||
|
||
<div class="mb-6 border-solid border-b-2 border-gray-200"> | ||
<div class="w-full"> | ||
<h3 class="no-anchor pt-4"><i class="fas fa-download pr-2"></i>Windows Binary Download</h3> | ||
<p> | ||
<a class="btn btn-secondary mx-2" href="https://get.pulumi.com/esc/releases/esc-v{{< latest-version-esc >}}-windows-x64.zip">amd64</a> | ||
</p> | ||
</div> | ||
</div> | ||
|
||
{{% /choosable %}} | ||
|
||
{{% /chooser %}} | ||
|
||
You can explore more installation options by visiting the [ESC installation docs](/docs/install/esc/). | ||
|
||
### Login to the ESC CLI | ||
|
||
Run the following command to log into the CLI: | ||
|
||
```bash | ||
esc login | ||
``` | ||
|
||
You will be prompted to log in to the Pulumi Cloud using either the browser or by optionally providing an access token. | ||
|
||
```bash | ||
$ esc login | ||
Manage your Pulumi ESC environments by logging in. | ||
Run `esc --help` for alternative login options. | ||
Enter your access token from https://app.pulumi.com/account/tokens | ||
or hit <ENTER> to log in using your browser : | ||
Logged in to https://api.pulumi.com/ as your-pulumi-org (https://app.pulumi.com/your-pulumi-org) | ||
``` | ||
|
||
### [Optional] Configure OpenID Connect (OIDC) | ||
|
||
Pulumi supports [OpenID Connect (OIDC) integration](/docs/pulumi-cloud/oidc/) across various services including Pulumi ESC. OIDC enables secure interactions between Pulumi and cloud providers by leveraging signed, short-lived tokens issued by the Pulumi Cloud. Use one of the following guides below to configure OIDC between Pulumi ESC and your chosen cloud provider: | ||
|
||
- [OIDC Configuration for AWS](/docs/pulumi-cloud/oidc/aws/) | ||
- [OIDC Configuration for Azure](/docs/pulumi-cloud/oidc/azure/) | ||
- [OIDC Configuration for Google Cloud](/docs/pulumi-cloud/oidc/gcp/) | ||
|
||
This is an optional step that is not required to get started with Pulumi ESC. There are some steps in this series that will require OIDC configuration to complete, but that will be indicated on the relevant pages. | ||
|
||
In the next section, you will start your journey with Pulumi ESC by creating a new environment. | ||
|
||
{{< get-started-stepper >}} |
59 changes: 59 additions & 0 deletions
59
themes/default/content/docs/esc/get-started/create-environment.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
--- | ||
title_tag: Create a New Environment | Pulumi ESC | ||
title: Create environment | ||
h1: "Pulumi ESC: Create A New Environment" | ||
meta_desc: This page provides an overview on how to create a new Pulumi ESC environment. | ||
weight: 3 | ||
menu: | ||
pulumiesc: | ||
parent: esc-get-started | ||
identifier: esc-get-started-create-environment | ||
|
||
--- | ||
|
||
## Overview | ||
|
||
In Pulumi ESC, an environment is a collection of configuration intended to capture the configuration values needed to work with a particular environment. | ||
|
||
An environment can be created one of two ways: | ||
|
||
- via the Pulumi Cloud console | ||
- via the CLI | ||
|
||
This tutorial will walk you through how to create a new environment. | ||
|
||
## Create an environment | ||
|
||
### Create via the console | ||
|
||
To create an environment via the console, navigate to [Pulumi Cloud](https://app.pulumi.com) and select the **Environments** link in the left-hand menu. | ||
|
||
You will be directed to the Environments landing page. To create a new environment, click the **Create Environment** button. Enter a name for your environment (e.g., `my-dev-environment` for a development environment) and then click **Create Environment**. You will then be directed to the environment definition page. | ||
|
||
{{< video title="Creating a new environment in the Pulumi ESC console" src="/docs/esc/get-started/esc-create-new-env.mp4" autoplay="true" loop="true" >}} | ||
|
||
### Create via the CLI | ||
|
||
To create an environment via the CLI, use the `esc env init` command as shown below, where `<org-name>` is optional and defaults to your Pulumi Cloud username. | ||
|
||
```bash | ||
esc env init [<org-name>/]<environment-name> | ||
``` | ||
|
||
Note that environment names must be unique within an organization and may only contain alphanumeric characters, hyphens, underscores, and periods. | ||
|
||
```bash | ||
$ esc env init my-dev-environment | ||
Environment created. | ||
``` | ||
|
||
You can validate that your environment was created by running the `esc env ls` command which will list all of the environments that you have access to. | ||
|
||
```bash | ||
$ esc env ls | ||
myorg/test | ||
``` | ||
|
||
In the next section, you will learn how to store configuration values and secrets in your environment. | ||
|
||
{{< get-started-stepper >}} |
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+2.09 MB
themes/default/content/docs/esc/get-started/esc-create-global-config.mp4
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added
BIN
+2.32 MB
themes/default/content/docs/esc/get-started/esc-import-global-config.mp4
Binary file not shown.
Binary file added
BIN
+1.2 MB
themes/default/content/docs/esc/get-started/esc-open-env-view-values.mp4
Binary file not shown.
Binary file not shown.
Oops, something went wrong.