Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG_PENDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@
[#281](https://github.com/pulumi/esc/issues/281)
- Add native support for OIDC token exchange when logging into Pulumi Cloud. Run `esc login --help` for more
information. [#607](https://github.com/pulumi/esc/pull/607)
- Add `esc setup aws` command to configure AWS OIDC integration for Pulumi ESC. This command creates the
necessary AWS resources (OIDC provider, IAM role, policy attachment) and optionally creates an ESC
environment with the OIDC configuration.

### Bug Fixes

Expand Down
6 changes: 5 additions & 1 deletion cmd/esc/cli/env.go
Original file line number Diff line number Diff line change
Expand Up @@ -110,10 +110,14 @@ func (r *environmentRef) String() string {
}

func (cmd *envCommand) parseRef(refStr string) environmentRef {
return parseEnvRef(refStr, cmd.esc.account.DefaultOrg)
}

func parseEnvRef(refStr, defaultOrg string) environmentRef {
var orgName, projectName, envNameAndVersion string

hasAmbiguousPath := false
orgName = cmd.esc.account.DefaultOrg
orgName = defaultOrg
projectName = client.DefaultProject
isUsingLegacyID := false

Expand Down
1 change: 1 addition & 0 deletions cmd/esc/cli/esc.go
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,7 @@ func New(opts *Options) *cobra.Command {
cmd.AddCommand(newLogoutCmd(esc))
cmd.AddCommand(newVersionCmd(esc))
cmd.AddCommand(newGenDocsCmd(cmd))
cmd.AddCommand(newSetupCmd(esc))

return cmd
}
Expand Down
33 changes: 33 additions & 0 deletions cmd/esc/cli/setup.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
// Copyright 2026, Pulumi Corporation.

package cli

import (
"github.com/spf13/cobra"
)

type setupCommand struct {
esc *escCommand
}

func newSetupCmd(esc *escCommand) *cobra.Command {
cmd := &cobra.Command{
Use: "setup",
Short: "Setup cloud integrations for Pulumi ESC",
Long: "Setup cloud integrations for Pulumi ESC\n" +
"\n" +
"This command group provides utilities to configure cloud providers for use with " +
"Pulumi ESC OIDC authentication.\n" +
"\n" +
"Available cloud providers:\n" +
" aws Setup AWS OIDC integration\n",

Args: cobra.NoArgs,
}

setup := &setupCommand{esc: esc}

cmd.AddCommand(newSetupAWSCmd(setup))

return cmd
}
Loading
Loading