Compare commits

...

14 Commits

Author SHA1 Message Date
Cory Hall
d02195313f Restore .NET SDK target framework to net6.0 (#872)
## Summary
- Restore the generated .NET SDK project target framework from `net8.0`
to `net6.0`.
- Keep the change scoped to the framework bump introduced by #857.

## Testing
- `dotnet build sdk/dotnet/Pulumi.DockerBuild.csproj --source
https://api.nuget.org/v3/index.json`

Note: a plain `dotnet build sdk/dotnet/Pulumi.DockerBuild.csproj` first
failed during restore because user-level NuGet sources point at missing
local worktree paths. The command above restricts restore to nuget.org;
the SDK build also needs the transient `sdk/dotnet/version.txt` that the
repo's `sdk/dotnet` generation target creates before building.

Co-authored-by: Codex <codex@openai.com>
2026-05-27 09:38:27 -04:00
pulumi-provider-automation[bot]
5a648eeac2 Update GitHub Actions workflows. (#871)
This PR was triggered by @t0yv0 generated by the
update-workflows-ecosystem-providers workflow in the pulumi/ci-mgmt
repo, from commit
[c608cd5027225fb54de6ba9788c5c8de381af069](c608cd5027).

Co-authored-by: Pulumi Bot <bot@pulumi.com>
2026-05-27 07:01:18 +00:00
pulumi-provider-automation[bot]
cbc23a6854 Update GitHub Actions workflows. (#870)
This PR was triggered by @t0yv0 generated by the
update-workflows-ecosystem-providers workflow in the pulumi/ci-mgmt
repo, from commit
[8d6a40522db47cd4b958d1d61f039f802c8676c1](8d6a40522d).

Co-authored-by: Pulumi Bot <bot@pulumi.com>
2026-05-26 06:51:40 +00:00
pulumi-provider-automation[bot]
23db6da099 Update GitHub Actions workflows. (#869)
This PR was triggered by @t0yv0 generated by the
update-workflows-ecosystem-providers workflow in the pulumi/ci-mgmt
repo, from commit
[b6ab3f6c4b243c533f8bf4b992e3ff8a40c05b79](b6ab3f6c4b).

Co-authored-by: Pulumi Bot <bot@pulumi.com>
2026-05-25 07:01:22 +00:00
pulumi-provider-automation[bot]
5d1d3734e5 Update GitHub Actions workflows. (#867)
This PR was triggered by @t0yv0 generated by the
update-workflows-ecosystem-providers workflow in the pulumi/ci-mgmt
repo, from commit
[afe9da8f781d2b3f817d03e6d092dc676c6b3fa4](afe9da8f78).

Co-authored-by: Pulumi Bot <bot@pulumi.com>
2026-05-23 06:33:03 +00:00
pulumi-renovate[bot]
5028aaae3d Update dependency @pulumi/pulumi to v3.243.0 (#866)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@pulumi/pulumi](https://redirect.github.com/pulumi/pulumi)
([source](https://redirect.github.com/pulumi/pulumi/tree/HEAD/sdk/nodejs))
| dependencies | minor | [`3.242.0` ->
`3.243.0`](https://renovatebot.com/diffs/npm/@pulumi%2fpulumi/3.242.0/3.243.0)
|

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>pulumi/pulumi (@&#8203;pulumi/pulumi)</summary>

###
[`v3.243.0`](https://redirect.github.com/pulumi/pulumi/releases/tag/v3.243.0)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.242.0...v3.243.0)

#### 3.243.0 (2026-05-22)

##### Features

- \[cli] Make the `pulumi project new -y` command write a minimal
project file with no template
[#&#8203;22847](https://redirect.github.com/pulumi/pulumi/pull/22847)

- \[cli] Allow coding agents to create claimable temporary accounts when
not authenticated

- \[cli] Suggest `pulumi neo` in `pulumi preview` and `pulumi up`
diagnostics output
[#&#8203;23326](https://redirect.github.com/pulumi/pulumi/pull/23326)

- \[sdk] Add `List` to the Go `plugin.Provider` interface, wired to the
streaming `ResourceProvider.List` RPC
[#&#8203;23287](https://redirect.github.com/pulumi/pulumi/pull/23287)

- \[sdkgen] Reserve the package names 'pulumi' and 'input' for internal
use
[#&#8203;23321](https://redirect.github.com/pulumi/pulumi/pull/23321)

- \[cli/cloud] Prefer text/markdown over JSON in `pulumi api` when an
endpoint produces both
[#&#8203;22963](https://redirect.github.com/pulumi/pulumi/pull/22963)

-   \[cli/do] Add resource support to `pulumi do`
[#&#8203;23215](https://redirect.github.com/pulumi/pulumi/pull/23215)

- \[cli/neo] Pressing Esc in `pulumi neo` now clears the input box when
it has text; with an empty box, Esc still cancels the agent's current
turn
[#&#8203;23299](https://redirect.github.com/pulumi/pulumi/pull/23299)

-   \[cli/new] Alias `pulumi new` to `pulumi project new`
[#&#8203;23265](https://redirect.github.com/pulumi/pulumi/pull/23265)

##### Bug Fixes

- \[cli] Require `--yes` to confirm `pulumi deployment cancel`, `pulumi
stack schedule remove`, `pulumi org webhook remove`, and `pulumi stack
webhook remove` when running non-interactively
[#&#8203;23264](https://redirect.github.com/pulumi/pulumi/pull/23264)

-   \[pcl] Don't silently ignore `...` in function arguments
[#&#8203;23309](https://redirect.github.com/pulumi/pulumi/pull/23309)

- \[sdkgen/nodejs] Cache package references per-deployment in generated
SDKs to fix concurrent inline programs
[#&#8203;23068](https://redirect.github.com/pulumi/pulumi/pull/23068)

-   \[backend/service] Error out when setting up journaler fails
[#&#8203;22671](https://redirect.github.com/pulumi/pulumi/pull/22671)

##### Miscellaneous

- \[cli/package] Update the `pulumi package add --agent` documentation
hint to use `<type-token>` as the placeholder for the `/docs/...` URL
[#&#8203;23294](https://redirect.github.com/pulumi/pulumi/pull/23294)

-   \[cli/plugin] Rename plugin ls to list and rm to remove
[#&#8203;23291](https://redirect.github.com/pulumi/pulumi/pull/23291)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - Monday through Friday ( * * * * 1-5 ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJpbXBhY3Qvbm8tY2hhbmdlbG9nLXJlcXVpcmVkIl19-->

Co-authored-by: pulumi-renovate[bot] <189166143+pulumi-renovate[bot]@users.noreply.github.com>
2026-05-23 00:19:58 +00:00
pulumi-provider-automation[bot]
b6760addfc Update GitHub Actions workflows. (#865)
This PR was triggered by @t0yv0 generated by the
update-workflows-ecosystem-providers workflow in the pulumi/ci-mgmt
repo, from commit
[1f1f66a893e6cfe901c30ce05c7d7536a04b624b](1f1f66a893).

Co-authored-by: Pulumi Bot <bot@pulumi.com>
2026-05-22 06:53:11 +00:00
pulumi-provider-automation[bot]
601ca19a37 Update GitHub Actions workflows. (#863)
This PR was triggered by @t0yv0 generated by the
update-workflows-ecosystem-providers workflow in the pulumi/ci-mgmt
repo, from commit
[030f4a40d6b74923fd2a23f84d947fd5ffc232ae](030f4a40d6).

Co-authored-by: Pulumi Bot <bot@pulumi.com>
2026-05-21 06:53:10 +00:00
pulumi-renovate[bot]
cdcd44eeab Update first-party Pulumi dependencies (#861)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@pulumi/pulumi](https://redirect.github.com/pulumi/pulumi)
([source](https://redirect.github.com/pulumi/pulumi/tree/HEAD/sdk/nodejs))
| dependencies | minor | [`3.241.0` ->
`3.242.0`](https://renovatebot.com/diffs/npm/@pulumi%2fpulumi/3.241.0/3.242.0)
|
|
[github.com/pulumi/pulumi-java](https://redirect.github.com/pulumi/pulumi-java)
| require | minor | `v1.27.0` -> `v1.28.0` |
|
[github.com/pulumi/pulumi/pkg/v3](https://redirect.github.com/pulumi/pulumi)
| require | minor | `v3.241.0` -> `v3.242.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>pulumi/pulumi (@&#8203;pulumi/pulumi)</summary>

###
[`v3.242.0`](https://redirect.github.com/pulumi/pulumi/blob/HEAD/CHANGELOG.md#32420-2026-05-19)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.241.0...v3.242.0)

##### Features

-   \[cli] Add a `pulumi` package for npx support

-   \[cli] Add the `pulumi org member edit` command
[#&#8203;23235](https://redirect.github.com/pulumi/pulumi/pull/23235)

-   \[cli] Add the `pulumi org member remove` command
[#&#8203;23237](https://redirect.github.com/pulumi/pulumi/pull/23237)

- \[cli/cloud] Add `pulumi deployment get` to retrieve details for a
specific deployment
[#&#8203;23238](https://redirect.github.com/pulumi/pulumi/pull/23238)

- \[cli/cloud] Add `pulumi insights account scan get <account>
<scan-id>` to show the full workflow run for a single Insights scan
[#&#8203;23255](https://redirect.github.com/pulumi/pulumi/pull/23255)

- \[cli/cloud] Add `pulumi insights account scan list <account>` to
discover recent scan IDs to feed into `pulumi insights account scan log`
[#&#8203;23255](https://redirect.github.com/pulumi/pulumi/pull/23255)

-   \[cli/deployment] Add dedicated flags for each deployment setting
[#&#8203;23236](https://redirect.github.com/pulumi/pulumi/pull/23236)

-   \[cli/do] Add the start of `pulumi do`
[#&#8203;23176](https://redirect.github.com/pulumi/pulumi/pull/23176)

- \[cli/neo] Add `--print`/`-p` to `pulumi neo` to run a single prompt
non-interactively and print the agent's final response to stdout
[#&#8203;23245](https://redirect.github.com/pulumi/pulumi/pull/23245)

##### Bug Fixes

- \[cli/cloud] Fix `pulumi insights account scan log --all` to follow
the server's pagination cursor through the end of the log, and render
`--job/--step` mode as structured lines instead of an empty raw-string
blob
[#&#8203;23256](https://redirect.github.com/pulumi/pulumi/pull/23256)

- \[sdk] Close gzip.Writer in archiveTarGZIP to produce valid tar.gz
output
[#&#8203;23240](https://redirect.github.com/pulumi/pulumi/pull/23240)

-   \[sdkgen/python] Fix usage of ArgsDict types in typed dictionaries
[#&#8203;23253](https://redirect.github.com/pulumi/pulumi/pull/23253)

</details>

<details>
<summary>pulumi/pulumi-java (github.com/pulumi/pulumi-java)</summary>

###
[`v1.28.0`](https://redirect.github.com/pulumi/pulumi-java/blob/HEAD/CHANGELOG.md#v1280---2026-05-19)

[Compare
Source](https://redirect.github.com/pulumi/pulumi-java/compare/v1.27.0...v1.28.0)

##### Improvements

- \[codegen] Implement logical-not and negation unary operators
correctly
[#&#8203;2188](https://redirect.github.com/pulumi/pulumi-java/pull/2188)

</details>

<details>
<summary>pulumi/pulumi (github.com/pulumi/pulumi/pkg/v3)</summary>

###
[`v3.242.0`](https://redirect.github.com/pulumi/pulumi/releases/tag/v3.242.0)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.241.0...v3.242.0)

#### 3.242.0 (2026-05-19)

##### Features

-   \[cli] Add a `pulumi` package for npx support

-   \[cli] Add the `pulumi org member edit` command
[#&#8203;23235](https://redirect.github.com/pulumi/pulumi/pull/23235)

-   \[cli] Add the `pulumi org member remove` command
[#&#8203;23237](https://redirect.github.com/pulumi/pulumi/pull/23237)

- \[cli/cloud] Add `pulumi deployment get` to retrieve details for a
specific deployment
[#&#8203;23238](https://redirect.github.com/pulumi/pulumi/pull/23238)

- \[cli/cloud] Add `pulumi insights account scan get <account>
<scan-id>` to show the full workflow run for a single Insights scan
[#&#8203;23255](https://redirect.github.com/pulumi/pulumi/pull/23255)

- \[cli/cloud] Add `pulumi insights account scan list <account>` to
discover recent scan IDs to feed into `pulumi insights account scan log`
[#&#8203;23255](https://redirect.github.com/pulumi/pulumi/pull/23255)

-   \[cli/deployment] Add dedicated flags for each deployment setting
[#&#8203;23236](https://redirect.github.com/pulumi/pulumi/pull/23236)

-   \[cli/do] Add the start of `pulumi do`
[#&#8203;23176](https://redirect.github.com/pulumi/pulumi/pull/23176)

- \[cli/neo] Add `--print`/`-p` to `pulumi neo` to run a single prompt
non-interactively and print the agent's final response to stdout
[#&#8203;23245](https://redirect.github.com/pulumi/pulumi/pull/23245)

##### Bug Fixes

- \[cli/cloud] Fix `pulumi insights account scan log --all` to follow
the server's pagination cursor through the end of the log, and render
`--job/--step` mode as structured lines instead of an empty raw-string
blob
[#&#8203;23256](https://redirect.github.com/pulumi/pulumi/pull/23256)

- \[sdk] Close gzip.Writer in archiveTarGZIP to produce valid tar.gz
output
[#&#8203;23240](https://redirect.github.com/pulumi/pulumi/pull/23240)

-   \[sdkgen/python] Fix usage of ArgsDict types in typed dictionaries
[#&#8203;23253](https://redirect.github.com/pulumi/pulumi/pull/23253)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - Monday through Friday ( * * * * 1-5 ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJpbXBhY3Qvbm8tY2hhbmdlbG9nLXJlcXVpcmVkIl19-->

---------

Co-authored-by: pulumi-renovate[bot] <189166143+pulumi-renovate[bot]@users.noreply.github.com>
Co-authored-by: pulumi-bot <bot@pulumi.com>
2026-05-19 21:51:31 +00:00
pulumi-provider-automation[bot]
b90594a58d Update GitHub Actions workflows. (#860)
This PR was triggered by @t0yv0 generated by the
update-workflows-ecosystem-providers workflow in the pulumi/ci-mgmt
repo, from commit
[67f164b40070c76a35f8f2650af615978cb4492d](67f164b400).

Co-authored-by: Pulumi Bot <bot@pulumi.com>
2026-05-19 06:53:58 +00:00
pulumi-renovate[bot]
7cc2388992 Update first-party Pulumi dependencies to v3.241.0 (#859)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@pulumi/pulumi](https://redirect.github.com/pulumi/pulumi)
([source](https://redirect.github.com/pulumi/pulumi/tree/HEAD/sdk/nodejs))
| dependencies | minor | [`3.239.0` ->
`3.241.0`](https://renovatebot.com/diffs/npm/@pulumi%2fpulumi/3.239.0/3.241.0)
|
|
[github.com/pulumi/pulumi/pkg/v3](https://redirect.github.com/pulumi/pulumi)
| require | minor | `v3.239.0` -> `v3.241.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>pulumi/pulumi (@&#8203;pulumi/pulumi)</summary>

###
[`v3.241.0`](https://redirect.github.com/pulumi/pulumi/blob/HEAD/CHANGELOG.md#32410-2026-05-18)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.239.0...v3.241.0)

##### Features

- \[cli] Add `--output json` to `pulumi preview` for a structured JSON
summary of the operation result
[#&#8203;22927](https://redirect.github.com/pulumi/pulumi/pull/22927)

- \[cli] Add `--output json` to `pulumi refresh` for a structured JSON
summary of the operation result
[#&#8203;22928](https://redirect.github.com/pulumi/pulumi/pull/22928)

- \[cli] Add `--output json` to `pulumi destroy` for a structured JSON
summary of the operation result
[#&#8203;22875](https://redirect.github.com/pulumi/pulumi/pull/22875)

- \[cli] Add `pulumi stack schedule get` to retrieve the configuration
of a scheduled action
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

- \[cli] Add `pulumi stack schedule list` to list all scheduled actions
configured for a stack
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

- \[cli] Add `pulumi stack schedule new` to create a raw, drift, or TTL
deployment schedule for a stack
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

- \[cli] Add `pulumi stack webhook delivery list` to list recent
deliveries for a stack webhook
[#&#8203;23116](https://redirect.github.com/pulumi/pulumi/pull/23116)

- \[cli] Add `pulumi stack webhook delivery redeliver` to redeliver a
webhook event
[#&#8203;23118](https://redirect.github.com/pulumi/pulumi/pull/23118)

- \[cli] Add `pulumi stack webhook edit` to update an existing stack
webhook
[#&#8203;23139](https://redirect.github.com/pulumi/pulumi/pull/23139)

-   \[cli] Add `pulumi stack webhook new` to create a new stack webhook
[#&#8203;23101](https://redirect.github.com/pulumi/pulumi/pull/23101)

-   \[cli] Add `pulumi stack webhook remove` to delete a stack webhook
[#&#8203;23102](https://redirect.github.com/pulumi/pulumi/pull/23102)

- \[cli] Add `pulumi org webhook delivery list` to list recent
deliveries for an organization webhook
[#&#8203;23179](https://redirect.github.com/pulumi/pulumi/pull/23179)

- \[cli] Add `pulumi org webhook edit` to update an organization webhook
[#&#8203;23179](https://redirect.github.com/pulumi/pulumi/pull/23179)

- \[cli] Add `pulumi org webhook list` to list all webhooks configured
for an organization
[#&#8203;23174](https://redirect.github.com/pulumi/pulumi/pull/23174)

- \[cli] Add `pulumi org webhook new` to create a new organization
webhook
[#&#8203;23172](https://redirect.github.com/pulumi/pulumi/pull/23172)

- \[cli] Add `pulumi org webhook ping` to send a test ping to an
organization webhook
[#&#8203;23179](https://redirect.github.com/pulumi/pulumi/pull/23179)

- \[cli] Add `pulumi org webhook remove` to delete an organization
webhook
[#&#8203;23177](https://redirect.github.com/pulumi/pulumi/pull/23177)

- \[cli] Add `pulumi stack drift list` to list drift detection runs for
a stack
[#&#8203;23159](https://redirect.github.com/pulumi/pulumi/pull/23159)

- \[cli] Add `pulumi stack drift status` to show the drift detection
status for a stack
[#&#8203;23161](https://redirect.github.com/pulumi/pulumi/pull/23161)

- \[cli] Add `pulumi stack schedule edit` to update an existing
scheduled deployment action
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

- \[cli] Add `pulumi stack schedule remove` to delete a scheduled
deployment action
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

-   \[cli] Add `pulumi audit-log export` command
[#&#8203;23212](https://redirect.github.com/pulumi/pulumi/pull/23212)

-   \[cli] Add `pulumi org audit-log list`
[#&#8203;23211](https://redirect.github.com/pulumi/pulumi/pull/23211)

- \[cli] Add `pulumi policy compliance list` to list compliance results
grouped by entity
[#&#8203;23209](https://redirect.github.com/pulumi/pulumi/pull/23209)

- \[cli] Add `pulumi policy group new` command to allow creating new
policy groups
[#&#8203;23202](https://redirect.github.com/pulumi/pulumi/pull/23202)

-   \[cli] Add the `pulumi policy issue get` command
[#&#8203;23200](https://redirect.github.com/pulumi/pulumi/pull/23200)

- \[cli/cloud] Add `pulumi insights account list` to list Insights
accounts in an organization
[#&#8203;23091](https://redirect.github.com/pulumi/pulumi/pull/23091)

- \[cli/cloud] Add `pulumi insights account new` to create a Pulumi
Insights account
[#&#8203;23093](https://redirect.github.com/pulumi/pulumi/pull/23093)

- \[cli/cloud] Add `pulumi insights account scan log` to fetch log
output for a Pulumi Insights scan
[#&#8203;23092](https://redirect.github.com/pulumi/pulumi/pull/23092)

- \[cli/cloud] Add `pulumi insights account scan` to trigger a resource
discovery scan for an Insights account
[#&#8203;23094](https://redirect.github.com/pulumi/pulumi/pull/23094)

- \[cli/cloud] Implement `pulumi stack history events` to retrieve
engine events for a Pulumi Cloud update
[#&#8203;23109](https://redirect.github.com/pulumi/pulumi/pull/23109)

- \[cli/cloud] Add `pulumi deployment cancel` to terminate an
in-progress deployment
[#&#8203;23164](https://redirect.github.com/pulumi/pulumi/pull/23164)

- \[cli/cloud] Add `pulumi org member list` to list the members of an
organization
[#&#8203;23170](https://redirect.github.com/pulumi/pulumi/pull/23170)

- \[cli/cloud] Add `pulumi org usage get` to fetch the
resources-under-management summary for an organization
[#&#8203;23166](https://redirect.github.com/pulumi/pulumi/pull/23166)

- \[cli/cloud] Add `pulumi org role assign` to assign a custom role to a
team
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

- \[cli/cloud] Add `pulumi org role edit` to update a custom role's
name, description, or permission tree
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

- \[cli/cloud] Add `pulumi org role list` to list custom roles for an
organization
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

- \[cli/cloud] Add `pulumi org role new` to create a custom role from a
permission descriptor JSON file
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

- \[cli/cloud] Add `pulumi org role remove` to delete a custom role from
an organization
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

-   \[cli/env] Update esc to v0.24.0
[#&#8203;23213](https://redirect.github.com/pulumi/pulumi/pull/23213)

- \[cli/neo] Show tool call arguments and results in `pulumi neo` via a
`ctrl+o` overlay
[#&#8203;23075](https://redirect.github.com/pulumi/pulumi/pull/23075)

- \[cli/neo] Multi-line input in `pulumi neo` - Enter sends, Shift+Enter
/ Alt+Enter / Ctrl+J / trailing `\` insert a newline
[#&#8203;23151](https://redirect.github.com/pulumi/pulumi/pull/23151)

- \[cli/neo] Make `pulumi neo` visible by default; the
`PULUMI_EXPERIMENTAL` gate has been removed
[#&#8203;23228](https://redirect.github.com/pulumi/pulumi/pull/23228)

-   \[cli/policy] Add `pulumi policy group edit` to edit policy groups
[#&#8203;23206](https://redirect.github.com/pulumi/pulumi/pull/23206)

- \[cli/policy] Add `pulumi policy group remove` command to remove
policies
[#&#8203;23208](https://redirect.github.com/pulumi/pulumi/pull/23208)

-   \[cli/policy] Add the `pulumi policy group get` command
[#&#8203;23203](https://redirect.github.com/pulumi/pulumi/pull/23203)

##### Bug Fixes

-   \[cli] Add `pulumi policy issue list` command
[#&#8203;23198](https://redirect.github.com/pulumi/pulumi/pull/23198)

- \[cli] Fix `pulumi org role list` to send the `uxPurpose` query
parameter the service requires
[#&#8203;23231](https://redirect.github.com/pulumi/pulumi/pull/23231)

- \[engine] Fix `pulumi import` dropping map entries whose value matched
the enum member of a `Union<Input<Enum<T>>, ...>` element type
[#&#8203;23190](https://redirect.github.com/pulumi/pulumi/pull/23190)

- \[cli/cloud] Surface a clear error when `pulumi api --all` is used
against an endpoint whose response is not paginatable, instead of
silently emitting an empty array
[#&#8203;23191](https://redirect.github.com/pulumi/pulumi/pull/23191)
[#&#8203;23128](https://redirect.github.com/pulumi/pulumi/pull/23128)

- \[cli/cloud] `pulumi deployment settings edit` no longer clears fields
that the patch does not mention
[#&#8203;23217](https://redirect.github.com/pulumi/pulumi/pull/23217)

- \[cli/import] Generate PCL for asset and archive inputs when importing
resources, instead of returning a "NYI" error
[#&#8203;22938](https://redirect.github.com/pulumi/pulumi/pull/22938)

- \[cli/import] Preserve asset/archive/resource-reference values inside
map and array inputs, and HCL-escape map keys containing `${` or `%{`
template sequences
[#&#8203;23222](https://redirect.github.com/pulumi/pulumi/pull/23222)

- \[cli/install] Hint at adding a `.git` / `_git` when VCS URL
resolution fails
[#&#8203;22831](https://redirect.github.com/pulumi/pulumi/pull/22831)

- \[cli/neo] Transparently reconnect the Neo event stream after a
transient network drop, resuming from the last seen event ID
[#&#8203;23134](https://redirect.github.com/pulumi/pulumi/pull/23134)

- \[cli/neo] Show `preparing` in the live preview/up block until the
first resource arrives
[#&#8203;23155](https://redirect.github.com/pulumi/pulumi/pull/23155)

- \[cli/new] Support specific versions when using registry-backed
templates with `pulumi new`
[#&#8203;22909](https://redirect.github.com/pulumi/pulumi/pull/22909)

</details>

<details>
<summary>pulumi/pulumi (github.com/pulumi/pulumi/pkg/v3)</summary>

###
[`v3.241.0`](https://redirect.github.com/pulumi/pulumi/releases/tag/v3.241.0)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.239.0...v3.241.0)

##### 3.241.0 (2026-05-18)

##### Features

- \[cli] Add `--output json` to `pulumi preview` for a structured JSON
summary of the operation result
[#&#8203;22927](https://redirect.github.com/pulumi/pulumi/pull/22927)

- \[cli] Add `--output json` to `pulumi refresh` for a structured JSON
summary of the operation result
[#&#8203;22928](https://redirect.github.com/pulumi/pulumi/pull/22928)

- \[cli] Add `--output json` to `pulumi destroy` for a structured JSON
summary of the operation result
[#&#8203;22875](https://redirect.github.com/pulumi/pulumi/pull/22875)

- \[cli] Add `pulumi stack schedule get` to retrieve the configuration
of a scheduled action
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

- \[cli] Add `pulumi stack schedule list` to list all scheduled actions
configured for a stack
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

- \[cli] Add `pulumi stack schedule new` to create a raw, drift, or TTL
deployment schedule for a stack
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

- \[cli] Add `pulumi stack webhook delivery list` to list recent
deliveries for a stack webhook
[#&#8203;23116](https://redirect.github.com/pulumi/pulumi/pull/23116)

- \[cli] Add `pulumi stack webhook delivery redeliver` to redeliver a
webhook event
[#&#8203;23118](https://redirect.github.com/pulumi/pulumi/pull/23118)

- \[cli] Add `pulumi stack webhook edit` to update an existing stack
webhook
[#&#8203;23139](https://redirect.github.com/pulumi/pulumi/pull/23139)

-   \[cli] Add `pulumi stack webhook new` to create a new stack webhook
[#&#8203;23101](https://redirect.github.com/pulumi/pulumi/pull/23101)

-   \[cli] Add `pulumi stack webhook remove` to delete a stack webhook
[#&#8203;23102](https://redirect.github.com/pulumi/pulumi/pull/23102)

- \[cli] Add `pulumi org webhook delivery list` to list recent
deliveries for an organization webhook
[#&#8203;23179](https://redirect.github.com/pulumi/pulumi/pull/23179)

- \[cli] Add `pulumi org webhook edit` to update an organization webhook
[#&#8203;23179](https://redirect.github.com/pulumi/pulumi/pull/23179)

- \[cli] Add `pulumi org webhook list` to list all webhooks configured
for an organization
[#&#8203;23174](https://redirect.github.com/pulumi/pulumi/pull/23174)

- \[cli] Add `pulumi org webhook new` to create a new organization
webhook
[#&#8203;23172](https://redirect.github.com/pulumi/pulumi/pull/23172)

- \[cli] Add `pulumi org webhook ping` to send a test ping to an
organization webhook
[#&#8203;23179](https://redirect.github.com/pulumi/pulumi/pull/23179)

- \[cli] Add `pulumi org webhook remove` to delete an organization
webhook
[#&#8203;23177](https://redirect.github.com/pulumi/pulumi/pull/23177)

- \[cli] Add `pulumi stack drift list` to list drift detection runs for
a stack
[#&#8203;23159](https://redirect.github.com/pulumi/pulumi/pull/23159)

- \[cli] Add `pulumi stack drift status` to show the drift detection
status for a stack
[#&#8203;23161](https://redirect.github.com/pulumi/pulumi/pull/23161)

- \[cli] Add `pulumi stack schedule edit` to update an existing
scheduled deployment action
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

- \[cli] Add `pulumi stack schedule remove` to delete a scheduled
deployment action
[#&#8203;23153](https://redirect.github.com/pulumi/pulumi/pull/23153)

-   \[cli] Add `pulumi audit-log export` command
[#&#8203;23212](https://redirect.github.com/pulumi/pulumi/pull/23212)

-   \[cli] Add `pulumi org audit-log list`
[#&#8203;23211](https://redirect.github.com/pulumi/pulumi/pull/23211)

- \[cli] Add `pulumi policy compliance list` to list compliance results
grouped by entity
[#&#8203;23209](https://redirect.github.com/pulumi/pulumi/pull/23209)

- \[cli] Add `pulumi policy group new` command to allow creating new
policy groups
[#&#8203;23202](https://redirect.github.com/pulumi/pulumi/pull/23202)

-   \[cli] Add the `pulumi policy issue get` command
[#&#8203;23200](https://redirect.github.com/pulumi/pulumi/pull/23200)

- \[cli/cloud] Add `pulumi insights account list` to list Insights
accounts in an organization
[#&#8203;23091](https://redirect.github.com/pulumi/pulumi/pull/23091)

- \[cli/cloud] Add `pulumi insights account new` to create a Pulumi
Insights account
[#&#8203;23093](https://redirect.github.com/pulumi/pulumi/pull/23093)

- \[cli/cloud] Add `pulumi insights account scan log` to fetch log
output for a Pulumi Insights scan
[#&#8203;23092](https://redirect.github.com/pulumi/pulumi/pull/23092)

- \[cli/cloud] Add `pulumi insights account scan` to trigger a resource
discovery scan for an Insights account
[#&#8203;23094](https://redirect.github.com/pulumi/pulumi/pull/23094)

- \[cli/cloud] Implement `pulumi stack history events` to retrieve
engine events for a Pulumi Cloud update
[#&#8203;23109](https://redirect.github.com/pulumi/pulumi/pull/23109)

- \[cli/cloud] Add `pulumi deployment cancel` to terminate an
in-progress deployment
[#&#8203;23164](https://redirect.github.com/pulumi/pulumi/pull/23164)

- \[cli/cloud] Add `pulumi org member list` to list the members of an
organization
[#&#8203;23170](https://redirect.github.com/pulumi/pulumi/pull/23170)

- \[cli/cloud] Add `pulumi org usage get` to fetch the
resources-under-management summary for an organization
[#&#8203;23166](https://redirect.github.com/pulumi/pulumi/pull/23166)

- \[cli/cloud] Add `pulumi org role assign` to assign a custom role to a
team
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

- \[cli/cloud] Add `pulumi org role edit` to update a custom role's
name, description, or permission tree
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

- \[cli/cloud] Add `pulumi org role list` to list custom roles for an
organization
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

- \[cli/cloud] Add `pulumi org role new` to create a custom role from a
permission descriptor JSON file
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

- \[cli/cloud] Add `pulumi org role remove` to delete a custom role from
an organization
[#&#8203;23117](https://redirect.github.com/pulumi/pulumi/pull/23117)

-   \[cli/env] Update esc to v0.24.0
[#&#8203;23213](https://redirect.github.com/pulumi/pulumi/pull/23213)

- \[cli/neo] Show tool call arguments and results in `pulumi neo` via a
`ctrl+o` overlay
[#&#8203;23075](https://redirect.github.com/pulumi/pulumi/pull/23075)

- \[cli/neo] Multi-line input in `pulumi neo` - Enter sends, Shift+Enter
/ Alt+Enter / Ctrl+J / trailing `\` insert a newline
[#&#8203;23151](https://redirect.github.com/pulumi/pulumi/pull/23151)

- \[cli/neo] Make `pulumi neo` visible by default; the
`PULUMI_EXPERIMENTAL` gate has been removed
[#&#8203;23228](https://redirect.github.com/pulumi/pulumi/pull/23228)

-   \[cli/policy] Add `pulumi policy group edit` to edit policy groups
[#&#8203;23206](https://redirect.github.com/pulumi/pulumi/pull/23206)

- \[cli/policy] Add `pulumi policy group remove` command to remove
policies
[#&#8203;23208](https://redirect.github.com/pulumi/pulumi/pull/23208)

-   \[cli/policy] Add the `pulumi policy group get` command
[#&#8203;23203](https://redirect.github.com/pulumi/pulumi/pull/23203)

##### Bug Fixes

-   \[cli] Add `pulumi policy issue list` command
[#&#8203;23198](https://redirect.github.com/pulumi/pulumi/pull/23198)

- \[cli] Fix `pulumi org role list` to send the `uxPurpose` query
parameter the service requires
[#&#8203;23231](https://redirect.github.com/pulumi/pulumi/pull/23231)

- \[engine] Fix `pulumi import` dropping map entries whose value matched
the enum member of a `Union<Input<Enum<T>>, ...>` element type
[#&#8203;23190](https://redirect.github.com/pulumi/pulumi/pull/23190)

- \[cli/cloud] Surface a clear error when `pulumi api --all` is used
against an endpoint whose response is not paginatable, instead of
silently emitting an empty array
[#&#8203;23191](https://redirect.github.com/pulumi/pulumi/pull/23191)
[#&#8203;23128](https://redirect.github.com/pulumi/pulumi/pull/23128)

- \[cli/cloud] `pulumi deployment settings edit` no longer clears fields
that the patch does not mention
[#&#8203;23217](https://redirect.github.com/pulumi/pulumi/pull/23217)

- \[cli/import] Generate PCL for asset and archive inputs when importing
resources, instead of returning a "NYI" error
[#&#8203;22938](https://redirect.github.com/pulumi/pulumi/pull/22938)

- \[cli/import] Preserve asset/archive/resource-reference values inside
map and array inputs, and HCL-escape map keys containing `${` or `%{`
template sequences
[#&#8203;23222](https://redirect.github.com/pulumi/pulumi/pull/23222)

- \[cli/install] Hint at adding a `.git` / `_git` when VCS URL
resolution fails
[#&#8203;22831](https://redirect.github.com/pulumi/pulumi/pull/22831)

- \[cli/neo] Transparently reconnect the Neo event stream after a
transient network drop, resuming from the last seen event ID
[#&#8203;23134](https://redirect.github.com/pulumi/pulumi/pull/23134)

- \[cli/neo] Show `preparing` in the live preview/up block until the
first resource arrives
[#&#8203;23155](https://redirect.github.com/pulumi/pulumi/pull/23155)

- \[cli/new] Support specific versions when using registry-backed
templates with `pulumi new`
[#&#8203;22909](https://redirect.github.com/pulumi/pulumi/pull/22909)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - Monday through Friday ( * * * * 1-5 ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJpbXBhY3Qvbm8tY2hhbmdlbG9nLXJlcXVpcmVkIl19-->

---------

Co-authored-by: pulumi-renovate[bot] <189166143+pulumi-renovate[bot]@users.noreply.github.com>
Co-authored-by: pulumi-bot <bot@pulumi.com>
2026-05-19 02:23:38 +00:00
Ian Wahbe
a748e088ca Add HCL Examples & Docs (#852)
Fixes https://github.com/pulumi/pulumi-docker-build/issues/844
2026-05-18 12:11:41 +02:00
pulumi-renovate[bot]
55d6f8f216 Update first-party Pulumi dependencies (#855)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@pulumi/pulumi](https://redirect.github.com/pulumi/pulumi)
([source](https://redirect.github.com/pulumi/pulumi/tree/HEAD/sdk/nodejs))
| dependencies | minor | [`3.237.0` ->
`3.239.0`](https://renovatebot.com/diffs/npm/@pulumi%2fpulumi/3.237.0/3.239.0)
|
| [github.com/pulumi/esc](https://redirect.github.com/pulumi/esc) |
indirect | minor | `v0.23.0` -> `v0.24.0` |
|
[github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild](https://redirect.github.com/pulumi/pulumi-docker-build)
| require | patch | `v0.0.16` -> `v0.0.17` |
|
[github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3](https://redirect.github.com/pulumi/pulumi-dotnet)
| require | patch | `v3.106.1` -> `v3.106.2` |
|
[github.com/pulumi/pulumi-java](https://redirect.github.com/pulumi/pulumi-java)
| require | minor | `v1.26.1` -> `v1.27.0` |
|
[github.com/pulumi/pulumi/pkg/v3](https://redirect.github.com/pulumi/pulumi)
| require | minor | `v3.237.0` -> `v3.239.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>pulumi/pulumi (@&#8203;pulumi/pulumi)</summary>

###
[`v3.239.0`](https://redirect.github.com/pulumi/pulumi/blob/HEAD/CHANGELOG.md#32390-2026-05-14)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.238.0...v3.239.0)

##### Features

- \[cli] Add `--output json` to `pulumi import` for a structured JSON
summary of the operation result
[#&#8203;22929](https://redirect.github.com/pulumi/pulumi/pull/22929)

- \[cli] Add `pulumi stack get` to retrieve detailed information about a
stack
[#&#8203;23106](https://redirect.github.com/pulumi/pulumi/pull/23106)

- \[cli] Add `pulumi stack webhook get` to inspect a single stack
webhook
[#&#8203;23088](https://redirect.github.com/pulumi/pulumi/pull/23088)

- \[cli] Add `pulumi stack webhook ping` to send a test ping to a stack
webhook

- \[cli/cloud] Add `pulumi deployment list` to list deployment
executions for a stack
[#&#8203;23114](https://redirect.github.com/pulumi/pulumi/pull/23114)

- \[sdkgen] Validate that schema names can't conflict with module paths
[#&#8203;22956](https://redirect.github.com/pulumi/pulumi/pull/22956)

##### Bug Fixes

-   \[engine] Fix batch encrypt/decrypt errors being silently dropped
[#&#8203;23149](https://redirect.github.com/pulumi/pulumi/pull/23149)

- \[cli/cloud] Fix `pulumi api` help examples that referenced
non-existent operation IDs and response fields
[#&#8203;23125](https://redirect.github.com/pulumi/pulumi/pull/23125)

###
[`v3.238.0`](https://redirect.github.com/pulumi/pulumi/blob/HEAD/CHANGELOG.md#32380-2026-05-13)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.237.0...v3.238.0)

##### Features

- \[cli] Add a `--language` flag to `pulumi package add` to run outside
a Pulumi project or plugin
[#&#8203;22791](https://redirect.github.com/pulumi/pulumi/pull/22791)

- \[cli] Add `--output json` to `pulumi up` for a structured JSON
summary of the operation result
[#&#8203;22870](https://redirect.github.com/pulumi/pulumi/pull/22870)

- \[cli] Recommend `pulumi cloud api describe` in `pulumi cloud api
--help` to verify operation parameters before calling
[#&#8203;22881](https://redirect.github.com/pulumi/pulumi/pull/22881)

- \[cli] Add `pulumi stack webhook list` to list all webhooks configured
for a stack
[#&#8203;23082](https://redirect.github.com/pulumi/pulumi/pull/23082)

-   \[cli/cloud] Rename `pulumi cloud api` to `pulumi api`
[#&#8203;22970](https://redirect.github.com/pulumi/pulumi/pull/22970)

- \[cli/cloud] Add `pulumi insights resource get` to look up a single
resource discovered by Pulumi Insights
[#&#8203;23077](https://redirect.github.com/pulumi/pulumi/pull/23077)

- \[cli/cloud] Add `pulumi template list` to list registry-backed
templates
[#&#8203;23074](https://redirect.github.com/pulumi/pulumi/pull/23074)

- \[cli/cloud] Rename the `--format` flag to `--output` on `pulumi api`
and its subcommands
[#&#8203;23072](https://redirect.github.com/pulumi/pulumi/pull/23072)

- \[cli/cloud] Add `pulumi insights resource search` to search for
resources discovered by Pulumi Insights
[#&#8203;23087](https://redirect.github.com/pulumi/pulumi/pull/23087)

- \[cli/engine] Add `--skip-plugin-pre-install` to skip up-front plugin
installation

-   \[engine] Fail the deployment when an after hook fails
[#&#8203;22935](https://redirect.github.com/pulumi/pulumi/pull/22935)

-   \[cli/neo] Render the agent's TODO list in the `pulumi neo` TUI
[#&#8203;22864](https://redirect.github.com/pulumi/pulumi/pull/22864)

- \[cli/neo] Add `--approval-mode` and `--permission-mode` flags to
`pulumi neo`, with Ctrl+A and Ctrl+R hotkeys to switch modes mid-session
[#&#8203;22950](https://redirect.github.com/pulumi/pulumi/pull/22950)

- \[cli/package] When invoked by an AI coding agent, print `pulumi api`
pointers after `pulumi package add` and `pulumi package gen-sdk`
[#&#8203;22904](https://redirect.github.com/pulumi/pulumi/pull/22904)

- \[pkg/testing] Recognize the `hcl` and `pcl` runtimes in
`integration.ProgramTest`
[#&#8203;23018](https://redirect.github.com/pulumi/pulumi/pull/23018)

- \[pkg/testing] Add `l1-config-types-optional` conformance test for
PCL's `optional` type constructor
[#&#8203;23108](https://redirect.github.com/pulumi/pulumi/pull/23108)

##### Bug Fixes

- \[backend/diy] Minify JSON persisted by the DIY backend for
checkpoints, history, and stack tags
[#&#8203;22245](https://redirect.github.com/pulumi/pulumi/pull/22245)

- \[cli/import] Ignore property values that do not conform to the schema
in maps
[#&#8203;23076](https://redirect.github.com/pulumi/pulumi/pull/23076)

- \[cli/import] Stop dropping map values whose element type is a union
of Input-wrapped types during HCL2 import

- \[cli/neo] Use the selected stack's organization when starting a
`pulumi neo` task instead of the user's default organization
[#&#8203;22951](https://redirect.github.com/pulumi/pulumi/pull/22951)

- \[cli/neo] Include the failure reason in `pulumi_preview` and
`pulumi_up` tool results when they fail, so the agent can react instead
of seeing a blank error
[#&#8203;22948](https://redirect.github.com/pulumi/pulumi/pull/22948)

- \[cli/neo] Retry `pulumi neo` task creation without the attached stack
when the backend rejects it with an "invalid entities" error
[#&#8203;22945](https://redirect.github.com/pulumi/pulumi/pull/22945)

- \[cli/neo] Surface the failure reason when a `filesystem` tool call
fails, instead of returning an empty result to the agent
[#&#8203;23019](https://redirect.github.com/pulumi/pulumi/pull/23019)

- \[cli/package] Use `--output=markdown` (not the renamed-away
`--format=markdown`) in the `pulumi api` pointers printed by `pulumi
package add` and `pulumi package gen-sdk`
[#&#8203;23098](https://redirect.github.com/pulumi/pulumi/pull/23098)

- \[programgen/pcl] Stop reporting spurious circular references when an
`ignoreChanges`, `hideDiffs`, `replaceOnChanges`, or
`additionalSecretOutputs` entry shares a name with a top-level node
[#&#8203;22931](https://redirect.github.com/pulumi/pulumi/pull/22931)

- \[sdk/python] Speed up python program resolution by using a set
instead of deque to track outputs
[#&#8203;22946](https://redirect.github.com/pulumi/pulumi/pull/22946)

##### Miscellaneous

- \[cli/neo] Tag Neo tasks created from the CLI with a `cli` source so
the service can attribute their origin
[#&#8203;23099](https://redirect.github.com/pulumi/pulumi/pull/23099)

- \[sdk/nodejs] Add registerPackage helper to cache package references
per deployment
[#&#8203;23014](https://redirect.github.com/pulumi/pulumi/pull/23014)

</details>

<details>
<summary>pulumi/esc (github.com/pulumi/esc)</summary>

###
[`v0.24.0`](https://redirect.github.com/pulumi/esc/releases/tag/v0.24.0)

[Compare
Source](https://redirect.github.com/pulumi/esc/compare/v0.23.0...v0.24.0)

##### Improvements

##### Bug Fixes

##### Breaking changes

</details>

<details>
<summary>pulumi/pulumi-docker-build
(github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild)</summary>

###
[`v0.0.17`](https://redirect.github.com/pulumi/pulumi-docker-build/compare/v0.0.16...v0.0.17)

[Compare
Source](https://redirect.github.com/pulumi/pulumi-docker-build/compare/v0.0.16...v0.0.17)

</details>

<details>
<summary>pulumi/pulumi-dotnet
(github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3)</summary>

###
[`v3.106.2`](https://redirect.github.com/pulumi/pulumi-dotnet/blob/HEAD/CHANGELOG.md#v31062---2026-05-13)

[Compare
Source](https://redirect.github.com/pulumi/pulumi-dotnet/compare/v3.106.1...v3.106.2)

##### Bug Fixes

- \[sdk] Fix programgen for arrays containing only null literals by
generating explicit `new object?[]` type annotation
[#&#8203;948](https://redirect.github.com/pulumi/pulumi-dotnet/pull/948)

- \[runtime] Translate PCL `length()` on strings to
`StringInfo.LengthInTextElements` so it returns Unicode grapheme
clusters rather than UTF-16 code units
[#&#8203;1000](https://redirect.github.com/pulumi/pulumi-dotnet/pull/1000)

- \[runtime] Translate PCL `singleOrNone()` to
`Enumerable.SingleOrDefault` so it returns null on an empty list instead
of throwing
[#&#8203;1001](https://redirect.github.com/pulumi/pulumi-dotnet/pull/1001)

- \[runtime] Generate correct .NET property names when the schema
version contains a hyphen
[#&#8203;1005](https://redirect.github.com/pulumi/pulumi-dotnet/pull/1005)

</details>

<details>
<summary>pulumi/pulumi-java (github.com/pulumi/pulumi-java)</summary>

###
[`v1.27.0`](https://redirect.github.com/pulumi/pulumi-java/blob/HEAD/CHANGELOG.md#v1270---2026-05-13)

[Compare
Source](https://redirect.github.com/pulumi/pulumi-java/compare/v1.26.1...v1.27.0)

##### Bug Fixes

- \[sdk] Fix child resources unable to override protect, retainOnDelete,
and deleteBeforeReplace from parent
[#&#8203;2156](https://redirect.github.com/pulumi/pulumi-java/pull/2156)

##### Improvements

- \[codegen] Implement the PCL `fromBase64` and `toBase64` builtins in
the Java program codegen
[#&#8203;2171](https://redirect.github.com/pulumi/pulumi-java/pull/2171)

- \[codegen] Fix l1-builtin-string by emitting a grapheme-cluster
counter for PCL length() on strings, and wrapping split() results as
List<String> so they serialize correctly through ctx.export
[#&#8203;2170](https://redirect.github.com/pulumi/pulumi-java/pull/2170)

- \[codegen] Fix l2-map-keys by fully qualifying generated Args types
when their simple names collide across imported packages
[#&#8203;2178](https://redirect.github.com/pulumi/pulumi-java/pull/2178)

- \[sdk/java] Implement the PCL `rootDirectory` builtin and surface the
project root directory on `Deployment`
[#&#8203;2176](https://redirect.github.com/pulumi/pulumi-java/pull/2176)

</details>

<details>
<summary>pulumi/pulumi (github.com/pulumi/pulumi/pkg/v3)</summary>

###
[`v3.239.0`](https://redirect.github.com/pulumi/pulumi/releases/tag/v3.239.0)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.238.0...v3.239.0)

#### 3.239.0 (2026-05-14)

##### Features

- \[cli] Add `--output json` to `pulumi import` for a structured JSON
summary of the operation result
[#&#8203;22929](https://redirect.github.com/pulumi/pulumi/pull/22929)

- \[cli] Add `pulumi stack get` to retrieve detailed information about a
stack
[#&#8203;23106](https://redirect.github.com/pulumi/pulumi/pull/23106)

- \[cli] Add `pulumi stack webhook get` to inspect a single stack
webhook
[#&#8203;23088](https://redirect.github.com/pulumi/pulumi/pull/23088)

- \[cli] Add `pulumi stack webhook ping` to send a test ping to a stack
webhook

- \[cli/cloud] Add `pulumi deployment list` to list deployment
executions for a stack
[#&#8203;23114](https://redirect.github.com/pulumi/pulumi/pull/23114)

- \[sdkgen] Validate that schema names can't conflict with module paths
[#&#8203;22956](https://redirect.github.com/pulumi/pulumi/pull/22956)

##### Bug Fixes

-   \[engine] Fix batch encrypt/decrypt errors being silently dropped
[#&#8203;23149](https://redirect.github.com/pulumi/pulumi/pull/23149)

- \[cli/cloud] Fix `pulumi api` help examples that referenced
non-existent operation IDs and response fields
[#&#8203;23125](https://redirect.github.com/pulumi/pulumi/pull/23125)

###
[`v3.238.0`](https://redirect.github.com/pulumi/pulumi/releases/tag/v3.238.0)

[Compare
Source](https://redirect.github.com/pulumi/pulumi/compare/v3.237.0...v3.238.0)

#### 3.238.0 (2026-05-13)

##### Features

- \[cli] Add a `--language` flag to `pulumi package add` to run outside
a Pulumi project or plugin
[#&#8203;22791](https://redirect.github.com/pulumi/pulumi/pull/22791)

- \[cli] Add `--output json` to `pulumi up` for a structured JSON
summary of the operation result
[#&#8203;22870](https://redirect.github.com/pulumi/pulumi/pull/22870)

- \[cli] Recommend `pulumi cloud api describe` in `pulumi cloud api
--help` to verify operation parameters before calling
[#&#8203;22881](https://redirect.github.com/pulumi/pulumi/pull/22881)

- \[cli] Add `pulumi stack webhook list` to list all webhooks configured
for a stack
[#&#8203;23082](https://redirect.github.com/pulumi/pulumi/pull/23082)

-   \[cli/cloud] Rename `pulumi cloud api` to `pulumi api`
[#&#8203;22970](https://redirect.github.com/pulumi/pulumi/pull/22970)

- \[cli/cloud] Add `pulumi insights resource get` to look up a single
resource discovered by Pulumi Insights
[#&#8203;23077](https://redirect.github.com/pulumi/pulumi/pull/23077)

- \[cli/cloud] Add `pulumi template list` to list registry-backed
templates
[#&#8203;23074](https://redirect.github.com/pulumi/pulumi/pull/23074)

- \[cli/cloud] Rename the `--format` flag to `--output` on `pulumi api`
and its subcommands
[#&#8203;23072](https://redirect.github.com/pulumi/pulumi/pull/23072)

- \[cli/cloud] Add `pulumi insights resource search` to search for
resources discovered by Pulumi Insights
[#&#8203;23087](https://redirect.github.com/pulumi/pulumi/pull/23087)

- \[cli/engine] Add `--skip-plugin-pre-install` to skip up-front plugin
installation

-   \[engine] Fail the deployment when an after hook fails
[#&#8203;22935](https://redirect.github.com/pulumi/pulumi/pull/22935)

-   \[cli/neo] Render the agent's TODO list in the `pulumi neo` TUI
[#&#8203;22864](https://redirect.github.com/pulumi/pulumi/pull/22864)

- \[cli/neo] Add `--approval-mode` and `--permission-mode` flags to
`pulumi neo`, with Ctrl+A and Ctrl+R hotkeys to switch modes mid-session
[#&#8203;22950](https://redirect.github.com/pulumi/pulumi/pull/22950)

- \[cli/package] When invoked by an AI coding agent, print `pulumi api`
pointers after `pulumi package add` and `pulumi package gen-sdk`
[#&#8203;22904](https://redirect.github.com/pulumi/pulumi/pull/22904)

- \[pkg/testing] Recognize the `hcl` and `pcl` runtimes in
`integration.ProgramTest`
[#&#8203;23018](https://redirect.github.com/pulumi/pulumi/pull/23018)

- \[pkg/testing] Add `l1-config-types-optional` conformance test for
PCL's `optional` type constructor
[#&#8203;23108](https://redirect.github.com/pulumi/pulumi/pull/23108)

##### Bug Fixes

- \[backend/diy] Minify JSON persisted by the DIY backend for
checkpoints, history, and stack tags
[#&#8203;22245](https://redirect.github.com/pulumi/pulumi/pull/22245)

- \[cli/import] Ignore property values that do not conform to the schema
in maps
[#&#8203;23076](https://redirect.github.com/pulumi/pulumi/pull/23076)

- \[cli/import] Stop dropping map values whose element type is a union
of Input-wrapped types during HCL2 import

- \[cli/neo] Use the selected stack's organization when starting a
`pulumi neo` task instead of the user's default organization
[#&#8203;22951](https://redirect.github.com/pulumi/pulumi/pull/22951)

- \[cli/neo] Include the failure reason in `pulumi_preview` and
`pulumi_up` tool results when they fail, so the agent can react instead
of seeing a blank error
[#&#8203;22948](https://redirect.github.com/pulumi/pulumi/pull/22948)

- \[cli/neo] Retry `pulumi neo` task creation without the attached stack
when the backend rejects it with an "invalid entities" error
[#&#8203;22945](https://redirect.github.com/pulumi/pulumi/pull/22945)

- \[cli/neo] Surface the failure reason when a `filesystem` tool call
fails, instead of returning an empty result to the agent
[#&#8203;23019](https://redirect.github.com/pulumi/pulumi/pull/23019)

- \[cli/package] Use `--output=markdown` (not the renamed-away
`--format=markdown`) in the `pulumi api` pointers printed by `pulumi
package add` and `pulumi package gen-sdk`
[#&#8203;23098](https://redirect.github.com/pulumi/pulumi/pull/23098)

- \[programgen/pcl] Stop reporting spurious circular references when an
`ignoreChanges`, `hideDiffs`, `replaceOnChanges`, or
`additionalSecretOutputs` entry shares a name with a top-level node
[#&#8203;22931](https://redirect.github.com/pulumi/pulumi/pull/22931)

- \[sdk/python] Speed up python program resolution by using a set
instead of deque to track outputs
[#&#8203;22946](https://redirect.github.com/pulumi/pulumi/pull/22946)

##### Miscellaneous

- \[cli/neo] Tag Neo tasks created from the CLI with a `cli` source so
the service can attribute their origin
[#&#8203;23099](https://redirect.github.com/pulumi/pulumi/pull/23099)

- \[sdk/nodejs] Add registerPackage helper to cache package references
per deployment
[#&#8203;23014](https://redirect.github.com/pulumi/pulumi/pull/23014)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - Monday through Friday ( * * * * 1-5 ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJpbXBhY3Qvbm8tY2hhbmdlbG9nLXJlcXVpcmVkIl19-->

---------

Co-authored-by: pulumi-renovate[bot] <189166143+pulumi-renovate[bot]@users.noreply.github.com>
Co-authored-by: pulumi-bot <bot@pulumi.com>
2026-05-16 06:27:17 +00:00
pulumi-provider-automation[bot]
cfadb02782 Update GitHub Actions workflows. (#858)
This PR was triggered by @t0yv0 generated by the
update-workflows-ecosystem-providers workflow in the pulumi/ci-mgmt
repo, from commit
[17a365754b545672c6b27aad2cd4a0cab814afa4](17a365754b).

Co-authored-by: Pulumi Bot <bot@pulumi.com>
2026-05-15 06:45:19 +00:00
49 changed files with 826 additions and 237 deletions

View File

@@ -55,7 +55,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -139,7 +139,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 # v6.0.0
uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v6.0.1
env:
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
- if: failure() && github.event_name == 'push'
@@ -181,7 +181,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -301,7 +301,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -404,7 +404,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -485,7 +485,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}

View File

@@ -79,7 +79,7 @@ jobs:
(github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude review')) ||
(github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude review'))
id: claude-review
uses: anthropics/claude-code-action@f4fb5c6cdccc1ee7af63692f5d08d56efaa64cc8 # v1
uses: anthropics/claude-code-action@787c5a0ce96a9a6cfb050ea0c8f4c05f2447c251 # v1
with:
anthropic_api_key: ${{ steps.esc-secrets.outputs.ANTHROPIC_API_KEY }}
prompt: |
@@ -101,7 +101,7 @@ jobs:
!contains(github.event.comment.body, '@claude review') &&
!contains(github.event.review.body, '@claude review')
id: claude-action
uses: anthropics/claude-code-action@f4fb5c6cdccc1ee7af63692f5d08d56efaa64cc8 # v1
uses: anthropics/claude-code-action@787c5a0ce96a9a6cfb050ea0c8f4c05f2447c251 # v1
with:
anthropic_api_key: ${{ steps.esc-secrets.outputs.ANTHROPIC_API_KEY }}
# This allows claude to read github action logs

View File

@@ -100,7 +100,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}
@@ -399,7 +399,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}
@@ -1102,7 +1102,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}
@@ -1238,7 +1238,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}
@@ -1300,7 +1300,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}

View File

@@ -105,7 +105,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}
@@ -370,7 +370,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}
@@ -1072,7 +1072,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}
@@ -1190,7 +1190,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}
@@ -1241,7 +1241,7 @@ jobs:
steps:
- name: Setup Scripts
id: setup
uses: github/gh-aw-actions/setup@a9daf37d190509f3592fe62338fc75430bbc640f # v0.71.6
uses: github/gh-aw-actions/setup@1fd109aa7587e59ad4022e04dcc5fdce4b0cd410 # v0.74.5
with:
destination: ${{ runner.temp }}/gh-aw/actions
job-name: ${{ github.job }}

View File

@@ -42,7 +42,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}

View File

@@ -47,7 +47,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -131,7 +131,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 # v6.0.0
uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v6.0.1
env:
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
- if: failure() && github.event_name == 'push'
@@ -173,7 +173,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -257,7 +257,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -360,7 +360,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -441,7 +441,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -529,7 +529,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}

View File

@@ -47,7 +47,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -131,7 +131,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 # v6.0.0
uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v6.0.1
env:
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
- if: failure() && github.event_name == 'push'
@@ -173,7 +173,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -257,7 +257,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -360,7 +360,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -441,7 +441,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -529,7 +529,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -621,7 +621,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}

View File

@@ -76,7 +76,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -207,7 +207,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 # v6.0.0
uses: codecov/codecov-action@e79a6962e0d4c0c17b229090214935d2e33f8354 # v6.0.1
env:
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
- if: failure() && github.event_name == 'push'
@@ -253,7 +253,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -394,7 +394,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}
@@ -512,7 +512,7 @@ jobs:
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- name: Mark workflow as successful
uses: guibranco/github-status-action-v2@e8a8fa568b768f554cfe1d34e27e917aed4c6127 # v1.2.1
uses: guibranco/github-status-action-v2@77639353504055053524efa7a3719aaf0b731ce9 # v1.2.4
with:
authToken: ${{ secrets.GITHUB_TOKEN }}
context: Sentinel

View File

@@ -45,7 +45,7 @@ jobs:
id: esc-secrets
name: Fetch secrets from ESC
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
- uses: actions/create-github-app-token@1b10c78c7865c340bc4f6099eb2f838309f1e8c3 # v3.1.1
- uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
id: app-auth
with:
app-id: ${{ steps.esc-secrets.outputs.PULUMI_PROVIDER_AUTOMATION_APP_ID }}

View File

@@ -58,7 +58,7 @@ test_all:: test_provider test_examples
gen_examples:
examples: $(shell mkdir -p examples)
examples: sdk examples/yaml examples/go examples/nodejs examples/python examples/dotnet examples/java
examples: sdk examples/yaml examples/go examples/nodejs examples/python examples/dotnet examples/java examples/hcl
examples/yaml:
rm -rf ${WORKING_DIR}/examples/yaml/app
@@ -84,6 +84,9 @@ examples/java: bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
$(call example,java)
@git checkout examples/java/pom.xml
examples/hcl: bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
$(call example,hcl)
define pulumi_login
export PULUMI_CONFIG_PASSPHRASE=asdfqwerty1234; \
pulumi login --local;

View File

@@ -81,6 +81,7 @@ func markdownExample(description string,
csharp string,
golang string,
yaml string,
hcl string,
java string,
) string {
return fmt.Sprintf("{{%% example %%}}\n### %s\n\n"+
@@ -89,9 +90,10 @@ func markdownExample(description string,
"```csharp\n%s```\n"+
"```go\n%s```\n"+
"```yaml\n%s```\n"+
"```hcl\n%s```\n"+
"```java\n%s```\n"+
"{{%% /example %%}}\n",
description, typescript, python, csharp, golang, yaml, java)
description, typescript, python, csharp, golang, yaml, hcl, java)
}
func convert(language, tempDir, programFile string) (string, error) {
@@ -186,6 +188,10 @@ func processYaml(path, mdDir string) error {
if err != nil {
return false, err
}
hcl, err := convert("hcl", dir, "program.hcl")
if err != nil {
return false, err
}
yamlContent, err := os.ReadFile(filepath.Clean(filepath.Join(dir, "Pulumi.yaml")))
if err != nil {
@@ -193,7 +199,9 @@ func processYaml(path, mdDir string) error {
}
yaml := string(yamlContent)
exampleStrings = append(exampleStrings, markdownExample(description, typescript, python, csharp, golang, yaml, java))
exampleStrings = append(exampleStrings, markdownExample(
description, typescript, python, csharp, golang, yaml, hcl, java,
))
return true, nil
}()

View File

@@ -62,7 +62,7 @@ resources:
username: pulumibot
password: ${dockerHubPassword}
outputs:
ref: ${my-image.ref}
ref: ${image.ref}
---
name: caching
runtime: yaml

View File

@@ -3,7 +3,7 @@ module provider-docker-build
go 1.25.8
require (
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.16
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.17
github.com/pulumi/pulumi/sdk/v3 v3.237.0
)
@@ -72,7 +72,7 @@ require (
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/term v1.1.0 // indirect
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect
github.com/pulumi/esc v0.23.0 // indirect
github.com/pulumi/esc v0.24.0 // indirect
github.com/rivo/uniseg v0.4.7 // indirect
github.com/rogpeppe/go-internal v1.14.1 // indirect
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect

View File

@@ -181,10 +181,10 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRI
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0=
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
github.com/pulumi/esc v0.23.0 h1:5lOXO+5vvXOEQxXw7cTuYhjg9lVng23f9XNLWDR9EP4=
github.com/pulumi/esc v0.23.0/go.mod h1:mkghIFn/TvN3XnP4jmCB4U5BG1I4UjGluARi39ckrCE=
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.16 h1:6OScn2bTpTo6nSE6AQOVtHTg688rHW0h3KMjNq+25uU=
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.16/go.mod h1:QgbLZb1Cd1yiX9GsIaZCRuFL/0ortNfUgsp/vx5YTws=
github.com/pulumi/esc v0.24.0 h1:sCtiB0qbyrlU1ZNzJn4dTLYiChl8xeCBFbHWl1YoXJg=
github.com/pulumi/esc v0.24.0/go.mod h1:eCOOkcDJS6eooGwdE4/E0+pOsvUWG254+KBmPCFwJpA=
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.17 h1:XSz9LZ4Q0267DW09I1DLoJhLXWzSeR0uH4/hD3owGT4=
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.17/go.mod h1:QgbLZb1Cd1yiX9GsIaZCRuFL/0ortNfUgsp/vx5YTws=
github.com/pulumi/pulumi/sdk/v3 v3.237.0 h1:D0kx4fkUkiZWfreQg1ekeAifLJEC2+VRYzgboQClg9Q=
github.com/pulumi/pulumi/sdk/v3 v3.237.0/go.mod h1:ybUihqUfVF1ZXBH3JNunYsAMz2P6i+7v5gzoJ60sVp0=
github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ=

View File

@@ -0,0 +1,2 @@
command-output
tmp

10
examples/hcl/Pulumi.yaml Normal file
View File

@@ -0,0 +1,10 @@
name: provider-docker-build
runtime: hcl
config:
dockerHubPassword:
type: string
secret: true
plugins:
providers:
- name: docker-build
path: ../../bin

View File

@@ -0,0 +1,2 @@
FROM alpine
RUN echo 👍

View File

@@ -0,0 +1,5 @@
FROM alpine
ARG SET_ME_TO_TRUE
RUN [ "$SET_ME_TO_TRUE" = "true" ]
RUN echo "That's the correct build arg, thanks! 👍"

View File

@@ -0,0 +1,2 @@
FROM alpine
RUN echo "This image doesn't use any local files, so it doesn't need a context parameter 👍"

View File

@@ -0,0 +1,3 @@
FROM bash AS base
RUN getent hosts metadata.google.internal

View File

@@ -0,0 +1,7 @@
FROM --platform=$BUILDPLATFORM alpine as build
RUN echo ${BUILDPLATFORM} > buildplatform
RUN echo ${TARGETPLATFORM} > targetplatform
FROM build
RUN cat buildplatform
RUN cat targetplatform

View File

@@ -0,0 +1,5 @@
# syntax=docker/dockerfile:1.4
FROM golang:latest
RUN version="$(go version)" && echo $version && [ "$version" = "go version go1.21.7 linux/amd64" ]
RUN echo "This image uses named contexts to pin golang:latest to a specific SHA 👍"

View File

@@ -0,0 +1,4 @@
FROM alpine
RUN --mount=type=secret,id=password [ "$(cat /run/secrets/password)" = "hunter2" ]

View File

@@ -0,0 +1,5 @@
FROM alpine
RUN apk add openssh-client
RUN --mount=type=ssh ssh-add -l

View File

@@ -0,0 +1,8 @@
FROM alpine as build-me
RUN echo 👍
FROM build-me as also-build-me
RUN echo 🤙
FROM build-me as dont-build-me
RUN [ "true" = "false" ]

171
examples/hcl/program.hcl Normal file
View File

@@ -0,0 +1,171 @@
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.1.0-alpha.0+dev"
}
}
}
resource "docker-build_image" "multiPlatform" {
push = false
dockerfile = {
location = "./app/Dockerfile.multiPlatform"
}
context = {
location = "./app"
}
platforms = ["plan9/amd64", "plan9/386"]
}
resource "docker-build_image" "registryPush" {
push = false
context = {
location = "./app"
}
tags = ["docker.io/pulumibot/buildkit-e2e:example"]
exports {
registry = {
oci_media_types = true
push = false
}
}
registries {
address = "docker.io"
username = "pulumibot"
password = var.dockerHubPassword
}
}
resource "docker-build_image" "cached" {
push = false
context = {
location = "./app"
}
cache_to {
local = {
dest = "tmp/cache"
mode = "max"
}
}
cache_from {
local = {
src = "tmp/cache"
}
}
}
resource "docker-build_image" "buildArgs" {
push = false
dockerfile = {
location = "./app/Dockerfile.buildArgs"
}
context = {
location = "./app"
}
build_args = {
"SET_ME_TO_TRUE" = "true"
}
}
resource "docker-build_image" "extraHosts" {
push = false
dockerfile = {
location = "./app/Dockerfile.extraHosts"
}
context = {
location = "./app"
}
add_hosts = ["metadata.google.internal:169.254.169.254"]
}
resource "docker-build_image" "sshMount" {
push = false
dockerfile = {
location = "./app/Dockerfile.sshMount"
}
context = {
location = "./app"
}
ssh {
id = "default"
}
}
resource "docker-build_image" "secrets" {
push = false
dockerfile = {
location = "./app/Dockerfile.secrets"
}
context = {
location = "./app"
}
secrets = {
"password" = "hunter2"
}
}
resource "docker-build_image" "labels" {
push = false
context = {
location = "./app"
}
labels = {
"description" = "This image will get a descriptive label 👍"
}
}
resource "docker-build_image" "target" {
push = false
dockerfile = {
location = "./app/Dockerfile.target"
}
context = {
location = "./app"
}
target = "build-me"
}
resource "docker-build_image" "namedContexts" {
push = false
dockerfile = {
location = "./app/Dockerfile.namedContexts"
}
context = {
location = "./app"
named = {
"golang:latest" = {
location = "docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984"
}
}
}
}
resource "docker-build_image" "remoteContext" {
push = false
context = {
location = "https://raw.githubusercontent.com/pulumi/pulumi-docker/api-types/provider/testdata/Dockerfile"
}
}
resource "docker-build_image" "remoteContextWithInline" {
push = false
dockerfile = {
inline = "FROM busybox\nCOPY hello.c ./\n"
}
context = {
location = "https://github.com/docker-library/hello-world.git"
}
}
resource "docker-build_image" "inline" {
push = false
dockerfile = {
inline = "FROM alpine\nRUN echo \"This uses an inline Dockerfile! 👍\"\n"
}
}
resource "docker-build_image" "dockerLoad" {
push = false
context = {
location = "./app"
}
exports {
docker = {
tar = true
}
}
}
variable "dockerHubPassword" {
type = string
}
output "platforms" {
value = docker-build_image.multiPlatform.platforms
}

View File

@@ -5,6 +5,6 @@
},
"dependencies": {
"typescript": "^4.0.0",
"@pulumi/pulumi": "3.237.0"
"@pulumi/pulumi": "3.243.0"
}
}

View File

@@ -4,6 +4,6 @@
"@types/node": "^20.0.0"
},
"dependencies": {
"@pulumi/pulumi": "3.237.0"
"@pulumi/pulumi": "3.243.0"
}
}

View File

@@ -424,10 +424,10 @@
resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==
"@pulumi/pulumi@3.237.0":
version "3.237.0"
resolved "https://registry.yarnpkg.com/@pulumi/pulumi/-/pulumi-3.237.0.tgz#28cd35466b676291591673a40674efe4752e354e"
integrity sha512-sSha6qfV1dcLP6OkqLKyM1UdzKRLfcAsHfhAUiXhlSHia+Grsso1Zvq0ZByj44nK9sY98BLlPlQBtt1VRWHZOQ==
"@pulumi/pulumi@3.243.0":
version "3.243.0"
resolved "https://registry.yarnpkg.com/@pulumi/pulumi/-/pulumi-3.243.0.tgz#a75ae019b1091f3f97351bf84d66b5d3c2e8ce0f"
integrity sha512-KRIBErgCj9+gsEG7fOo3xRvvhq3VGw8gnzVpbFiyW2Zqr84MCIKDDVmj4MZDt/61KOn3OapI4ia1/6dSg3qwzQ==
dependencies:
"@grpc/grpc-js" "^1.10.1"
"@logdna/tail-file" "^2.0.6"

View File

@@ -4,6 +4,6 @@
"@types/node": "^20.0.0"
},
"dependencies": {
"@pulumi/pulumi": "3.237.0"
"@pulumi/pulumi": "3.243.0"
}
}

View File

@@ -5,6 +5,6 @@
},
"dependencies": {
"typescript": "^4.0.0",
"@pulumi/pulumi": "3.237.0"
"@pulumi/pulumi": "3.243.0"
}
}

View File

@@ -35,6 +35,20 @@ func TestYAMLExample(t *testing.T) {
integration.ProgramTest(t, &test)
}
func TestHCLExample(t *testing.T) {
cwd, err := os.Getwd()
require.NoError(t, err)
test := integration.ProgramTestOptions{
Dir: path.Join(cwd, "hcl"),
Secrets: map[string]string{
"dockerHubPassword": os.Getenv("DOCKER_HUB_PASSWORD"),
},
}
integration.ProgramTest(t, &test)
}
func TestYAMLExampleUpgrade(t *testing.T) {
pt := pulumitest.NewPulumiTest(t, "upgrade",
opttest.AttachProviderServer("docker-build", providerServerFactory))

31
go.mod
View File

@@ -15,11 +15,11 @@ require (
github.com/muesli/reflow v0.3.0
github.com/otiai10/copy v1.14.0
github.com/pulumi/providertest v0.7.0
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.106.1
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.106.2
github.com/pulumi/pulumi-go-provider v1.3.2
github.com/pulumi/pulumi-java v1.26.1
github.com/pulumi/pulumi/pkg/v3 v3.237.0
github.com/pulumi/pulumi/sdk/v3 v3.237.0
github.com/pulumi/pulumi-java v1.28.0
github.com/pulumi/pulumi/pkg/v3 v3.242.0
github.com/pulumi/pulumi/sdk/v3 v3.242.0
github.com/regclient/regclient v0.7.1
github.com/sirupsen/logrus v1.9.3
github.com/spf13/afero v1.14.0
@@ -31,7 +31,7 @@ require (
go.opentelemetry.io/otel/trace v1.43.0
go.uber.org/mock v0.6.0
golang.org/x/crypto v0.51.0
golang.org/x/exp v0.0.0-20250718183923-645b1fa84792
golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f
google.golang.org/protobuf v1.36.11
gopkg.in/yaml.v3 v3.0.1
)
@@ -102,7 +102,7 @@ require (
github.com/containerd/platforms v1.0.0-rc.1 // indirect
github.com/containerd/ttrpc v1.2.7 // indirect
github.com/containerd/typeurl/v2 v2.2.3 // indirect
github.com/cyphar/filepath-securejoin v0.4.1 // indirect
github.com/cyphar/filepath-securejoin v0.6.1 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/deckarep/golang-set/v2 v2.5.0 // indirect
github.com/djherbis/times v1.6.0 // indirect
@@ -126,8 +126,8 @@ require (
github.com/git-pkgs/purl v0.1.10 // indirect
github.com/git-pkgs/vers v0.2.4 // indirect
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.8.0 // indirect
github.com/go-git/go-git/v5 v5.18.0 // indirect
github.com/go-git/go-billy/v5 v5.9.0 // indirect
github.com/go-git/go-git/v5 v5.19.0 // indirect
github.com/go-jose/go-jose/v3 v3.0.5 // indirect
github.com/go-logr/logr v1.4.3 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
@@ -181,6 +181,7 @@ require (
github.com/json-iterator/go v1.1.12 // indirect
github.com/kevinburke/ssh_config v1.2.0 // indirect
github.com/klauspost/compress v1.18.0 // indirect
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
github.com/kylelemons/godebug v1.1.0 // indirect
github.com/lucasb-eyer/go-colorful v1.4.0 // indirect
github.com/mailru/easyjson v0.7.7 // indirect
@@ -222,7 +223,7 @@ require (
github.com/pgavlin/fx v0.1.6 // indirect
github.com/pgavlin/fx/v2 v2.0.12 // indirect
github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 // indirect
github.com/pjbgf/sha1cd v0.3.2 // indirect
github.com/pjbgf/sha1cd v0.6.0 // indirect
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/term v1.1.0 // indirect
@@ -233,7 +234,7 @@ require (
github.com/prometheus/common v0.55.0 // indirect
github.com/prometheus/procfs v0.15.1 // indirect
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect
github.com/pulumi/esc v0.23.0 // indirect
github.com/pulumi/esc v0.24.0 // indirect
github.com/pulumi/inflector v0.2.1 // indirect
github.com/rivo/uniseg v0.4.7 // indirect
github.com/rogpeppe/go-internal v1.14.1 // indirect
@@ -267,8 +268,8 @@ require (
github.com/zclconf/go-cty v1.17.0 // indirect
go.opencensus.io v0.24.0 // indirect
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
go.opentelemetry.io/collector/featuregate v1.57.0 // indirect
go.opentelemetry.io/collector/pdata v1.57.0 // indirect
go.opentelemetry.io/collector/featuregate v1.58.0 // indirect
go.opentelemetry.io/collector/pdata v1.58.0 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.56.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.56.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 // indirect
@@ -297,9 +298,9 @@ require (
golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect
google.golang.org/api v0.169.0 // indirect
google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20260504160031-60b97b32f348 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260504160031-60b97b32f348 // indirect
google.golang.org/grpc v1.81.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20260519071638-aa98bba5eb94 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260519071638-aa98bba5eb94 // indirect
google.golang.org/grpc v1.81.1 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect

66
go.sum
View File

@@ -195,8 +195,8 @@ github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6N
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
github.com/creack/pty v1.1.24 h1:bJrF4RRfyJnbTJqzRLHzcGaZK1NeM5kTC9jGgovnR1s=
github.com/creack/pty v1.1.24/go.mod h1:08sCNb52WyoAwi2QDyzUCTgcvVFhUzewun7wtTfvcwE=
github.com/cyphar/filepath-securejoin v0.4.1 h1:JyxxyPEaktOD+GAnqIqTf9A8tHyAG22rowi7HkoSU1s=
github.com/cyphar/filepath-securejoin v0.4.1/go.mod h1:Sdj7gXlvMcPZsbhwhQ33GguGLDGQL7h7bg04C/+u9jI=
github.com/cyphar/filepath-securejoin v0.6.1 h1:5CeZ1jPXEiYt3+Z6zqprSAgSWiggmpVyciv8syjIpVE=
github.com/cyphar/filepath-securejoin v0.6.1/go.mod h1:A8hd4EnAeyujCJRrICiOWqjS1AX0a9kM5XL+NwKoYSc=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
@@ -280,12 +280,12 @@ github.com/gliderlabs/ssh v0.3.8 h1:a4YXD1V7xMF9g5nTkdfnja3Sxy1PVDCj1Zg4Wb8vY6c=
github.com/gliderlabs/ssh v0.3.8/go.mod h1:xYoytBv1sV0aL3CavoDuJIQNURXkkfPA/wxQ1pL1fAU=
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI=
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic=
github.com/go-git/go-billy/v5 v5.8.0 h1:I8hjc3LbBlXTtVuFNJuwYuMiHvQJDq1AT6u4DwDzZG0=
github.com/go-git/go-billy/v5 v5.8.0/go.mod h1:RpvI/rw4Vr5QA+Z60c6d6LXH0rYJo0uD5SqfmrrheCY=
github.com/go-git/go-billy/v5 v5.9.0 h1:jItGXszUDRtR/AlferWPTMN4j38BQ88XnXKbilmmBPA=
github.com/go-git/go-billy/v5 v5.9.0/go.mod h1:jCnQMLj9eUgGU7+ludSTYoZL/GGmii14RxKFj7ROgHw=
github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4=
github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII=
github.com/go-git/go-git/v5 v5.18.0 h1:O831KI+0PR51hM2kep6T8k+w0/LIAD490gvqMCvL5hM=
github.com/go-git/go-git/v5 v5.18.0/go.mod h1:pW/VmeqkanRFqR6AljLcs7EA7FbZaN5MQqO7oZADXpo=
github.com/go-git/go-git/v5 v5.19.0 h1:+WkVUQZSy/F1Gb13udrMKjIM2PrzsNfDKFSfo5tkMtc=
github.com/go-git/go-git/v5 v5.19.0/go.mod h1:Pb1v0c7/g8aGQJwx9Us09W85yGoyvSwuhEGMH7zjDKQ=
github.com/go-jose/go-jose/v3 v3.0.5 h1:BLLJWbC4nMZOfuPVxoZIxeYsn6Nl2r1fITaJ78UQlVQ=
github.com/go-jose/go-jose/v3 v3.0.5/go.mod h1:5b+7YgP7ZICgJDBdfjZaIt+H/9L9T/YQrVfLAMboGkQ=
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
@@ -455,6 +455,8 @@ github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
github.com/klauspost/cpuid/v2 v2.3.0 h1:S4CRMLnYUhGeDFDqkGriYKdfoFlDnMtqTiI/sFzhA9Y=
github.com/klauspost/cpuid/v2 v2.3.0/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
@@ -587,8 +589,8 @@ github.com/pgavlin/fx/v2 v2.0.12 h1:SjjaJ68Dt8Z4zHwOpY/RPijd7lShs6xYupJbF9ra00M=
github.com/pgavlin/fx/v2 v2.0.12/go.mod h1:M/nF/ooAOy+NUBooYYXl2REARzJ/giPJxfMs8fINfKc=
github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 h1:LoCV5cscNVWyK5ChN/uCoIFJz8jZD63VQiGJIRgr6uo=
github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386/go.mod h1:MRxHTJrf9FhdfNQ8Hdeh9gmHevC9RJE/fu8M3JIGjoE=
github.com/pjbgf/sha1cd v0.3.2 h1:a9wb0bp1oC2TGwStyn0Umc/IGKQnEgF0vVaZ8QF8eo4=
github.com/pjbgf/sha1cd v0.3.2/go.mod h1:zQWigSxVmsHEZow5qaLtPYxpcKMMQpa09ixqBxuCS6A=
github.com/pjbgf/sha1cd v0.6.0 h1:3WJ8Wz8gvDz29quX1OcEmkAlUg9diU4GxJHqs0/XiwU=
github.com/pjbgf/sha1cd v0.6.0/go.mod h1:lhpGlyHLpQZoxMv8HcgXvZEhcGs0PG/vsZnEJ7H0iCM=
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ=
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c/go.mod h1:7rwL4CYBLnjLxUqIJNnCWiEdr3bn6IUYi15bNlnbCCU=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
@@ -622,22 +624,22 @@ github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0leargg
github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0=
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
github.com/pulumi/esc v0.23.0 h1:5lOXO+5vvXOEQxXw7cTuYhjg9lVng23f9XNLWDR9EP4=
github.com/pulumi/esc v0.23.0/go.mod h1:mkghIFn/TvN3XnP4jmCB4U5BG1I4UjGluARi39ckrCE=
github.com/pulumi/esc v0.24.0 h1:sCtiB0qbyrlU1ZNzJn4dTLYiChl8xeCBFbHWl1YoXJg=
github.com/pulumi/esc v0.24.0/go.mod h1:eCOOkcDJS6eooGwdE4/E0+pOsvUWG254+KBmPCFwJpA=
github.com/pulumi/inflector v0.2.1 h1:bqyiish3tq//vLeLiEstSFE5K7RNjy/ce47ed4QATu8=
github.com/pulumi/inflector v0.2.1/go.mod h1:HUFCjcPTz96YtTuUlwG3i3EZG4WlniBvR9bd+iJxCUY=
github.com/pulumi/providertest v0.7.0 h1:nXydemrnkJfil6sd8AtvO81gJOTzYc1wFfgtco4zWDc=
github.com/pulumi/providertest v0.7.0/go.mod h1:R7nigJF1sE3yUtNQSozNSfsUl/gK4xIDW0Mxmacl6IY=
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.106.1 h1:nad3vnQUBd+YisRKcNoF5KX3UKA4Fp18iCs4spk3xjw=
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.106.1/go.mod h1:FHXRGCzX7mZMdPUsAIkfd8PZyBLXamwmM32WXhQGgvs=
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.106.2 h1:U77T2dS9RWqRrMtzhEgTvo6diTyhp+0E4eFuN0nsrJw=
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.106.2/go.mod h1:OcTMxxijNMcL9WfRVIt+vZwSn0jWvCakg+7yCA448Hc=
github.com/pulumi/pulumi-go-provider v1.3.2 h1:G02Jzt1a5D8QwcdHTJIcdJ+IG6RUYTVDL1hg5yh4JaU=
github.com/pulumi/pulumi-go-provider v1.3.2/go.mod h1:L99PGubfMAQ3nZcPIg2a6kQ5QA8dvF4bUmDgiXzRSc8=
github.com/pulumi/pulumi-java v1.26.1 h1:pqkVd2iCXzrXafv3RUCuqiOMWHv4GuvAGrLTYiHYYbE=
github.com/pulumi/pulumi-java v1.26.1/go.mod h1:0UPSCXPjc1hjnRzOzfqH5v2OdUnLcDuvXPuEVL6OPiQ=
github.com/pulumi/pulumi/pkg/v3 v3.237.0 h1:I/GbmvaGI5c5dFixajErb3tyKtaBlrONUJv46MzysiY=
github.com/pulumi/pulumi/pkg/v3 v3.237.0/go.mod h1:GEWqJUX8jbeSL3+UQAKmHPxXV2Ro+8Y2JzQz44eNa+4=
github.com/pulumi/pulumi/sdk/v3 v3.237.0 h1:D0kx4fkUkiZWfreQg1ekeAifLJEC2+VRYzgboQClg9Q=
github.com/pulumi/pulumi/sdk/v3 v3.237.0/go.mod h1:ybUihqUfVF1ZXBH3JNunYsAMz2P6i+7v5gzoJ60sVp0=
github.com/pulumi/pulumi-java v1.28.0 h1:6Ag08R0UtOKPlUrsaRugZ0NJJN7M8wmVo7bqPLsyrs8=
github.com/pulumi/pulumi-java v1.28.0/go.mod h1:CgvZi5WWQKj84XRRRLXMj8qjQUvrgY2pnmbsJE49hks=
github.com/pulumi/pulumi/pkg/v3 v3.242.0 h1:XSKYPCh2/WuRmK0qncQQ7vEbdXxbo7VM9959IwtaINg=
github.com/pulumi/pulumi/pkg/v3 v3.242.0/go.mod h1:Mgt/CpfdxGZ57alOsScFNA+XN4hwkAE0Jby9VNamNLk=
github.com/pulumi/pulumi/sdk/v3 v3.242.0 h1:gQIZ1ALbT5gCMuRoBscGzk7Rdbx9mbOc+YwDFxvRyss=
github.com/pulumi/pulumi/sdk/v3 v3.242.0/go.mod h1:P9VS6pQws3YBu67uszFRHn24n5AwzeMlyC2hIiHGWHg=
github.com/redis/go-redis/v9 v9.7.0 h1:HhLSs+B6O021gwzl+locl0zEDnyNkxMtf/Z3NNBMa9E=
github.com/redis/go-redis/v9 v9.7.0/go.mod h1:f6zhXITC7JUJIlPEiBOTXxJgPLdZcA93GewI7inzyWw=
github.com/regclient/regclient v0.7.1 h1:qEsJrTmZd98fZKjueAbrZCSNGU+ifnr6xjlSAs3WOPs=
@@ -759,12 +761,12 @@ go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0=
go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo=
go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64=
go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y=
go.opentelemetry.io/collector/featuregate v1.57.0 h1:KPDSUKYn6MHwgyGRSGPPcW/G96HH93pxuvvPwM+R8nY=
go.opentelemetry.io/collector/featuregate v1.57.0/go.mod h1:4ga1QBMPEejXXmpyJS8lmaRpknJ3Lb9Bvk6e420bUFU=
go.opentelemetry.io/collector/internal/testutil v0.151.0 h1:CFjDItLuqzblItOsnK6IPSdrsOaZCaDjYpB8qWG+XHI=
go.opentelemetry.io/collector/internal/testutil v0.151.0/go.mod h1:Jkjs6rkqs973LqgZ0Fe3zrokQRKULYXPIf4HuqStiEE=
go.opentelemetry.io/collector/pdata v1.57.0 h1:oDWBMjEIqyJO3GJEB+iwqxj47rxDK19OKzwaFEaE4sg=
go.opentelemetry.io/collector/pdata v1.57.0/go.mod h1:wZojinP6mNhLXudH8QXx/bjWzOsKMxi/FXwnk+12G/w=
go.opentelemetry.io/collector/featuregate v1.58.0 h1:Kh6Dpgbxywv/Q3D6qPehaSxNCxvr/U/ki7CL4y3udCo=
go.opentelemetry.io/collector/featuregate v1.58.0/go.mod h1:4ga1QBMPEejXXmpyJS8lmaRpknJ3Lb9Bvk6e420bUFU=
go.opentelemetry.io/collector/internal/testutil v0.152.0 h1:8LGwekR7mLcUDhT1ofLmdnrHRFuUa3U7PBd95ZvJEjQ=
go.opentelemetry.io/collector/internal/testutil v0.152.0/go.mod h1:Jkjs6rkqs973LqgZ0Fe3zrokQRKULYXPIf4HuqStiEE=
go.opentelemetry.io/collector/pdata v1.58.0 h1:5Lxut3NxKp87066Pzt+3q7+JUuFI5B3teCyLZIF8wIs=
go.opentelemetry.io/collector/pdata v1.58.0/go.mod h1:4vZtODINbC/JF3eGocnatdImzbRHseOywIcr+aULjCg=
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.56.0 h1:yMkBS9yViCc7U7yeLzJPM2XizlfdVvBRSmsQDWu6qc0=
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.56.0/go.mod h1:n8MR6/liuGB5EmTETUBeU5ZgqMOlqKRxUaqPQBOANZ8=
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.56.0 h1:4BZHA+B1wXEQoGNHxW8mURaLhcdGwvRnmhGbm+odRbc=
@@ -829,8 +831,8 @@ golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDf
golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI=
golang.org/x/crypto v0.51.0/go.mod h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20250718183923-645b1fa84792 h1:R9PFI6EUdfVKgwKjZef7QIwGcBKu86OEFpJ9nUEP2l4=
golang.org/x/exp v0.0.0-20250718183923-645b1fa84792/go.mod h1:A+z0yzpGtvnG90cToK5n2tu8UJVP2XUATh+r+sfOOOc=
golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f h1:W3F4c+6OLc6H2lb//N1q4WpJkhzJCK5J6kUi1NTVXfM=
golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f/go.mod h1:J1xhfL/vlindoeF/aINzNzt2Bket5bjo9sdOYzOsU80=
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
@@ -965,17 +967,17 @@ google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98
google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo=
google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7 h1:ImUcDPHjTrAqNhlOkSocDLfG9rrNHH7w7uoKWPaWZ8s=
google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7/go.mod h1:/3XmxOjePkvmKrHuBy4zNFw7IzxJXtAgdpXi8Ll990U=
google.golang.org/genproto/googleapis/api v0.0.0-20260504160031-60b97b32f348 h1:U8orV30l6KpDsi9dxU0CoJZGbjS8EEpw+6ba+XwGPQA=
google.golang.org/genproto/googleapis/api v0.0.0-20260504160031-60b97b32f348/go.mod h1:Yzdzr5OOZFgSsEV2D/Xi9NL3bszpXFAg0hFJiRohcD8=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260504160031-60b97b32f348 h1:pfIbyB44sWzHiCpRqIen67ZQnVXSfIxWrqUMk1qwODE=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260504160031-60b97b32f348/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8=
google.golang.org/genproto/googleapis/api v0.0.0-20260519071638-aa98bba5eb94 h1:DddG61lE5LkX6144z22i0gma9BMBs5aZ9B8lZLobxyw=
google.golang.org/genproto/googleapis/api v0.0.0-20260519071638-aa98bba5eb94/go.mod h1:1dCETSCY2YKZNXQE3h4fun3TYwF5p8jejRKZgfWAgAY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260519071638-aa98bba5eb94 h1:eZCjr/aAF8c5ccm5pb6T4EXgIei5MlAAPWPJk+5ArfY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260519071638-aa98bba5eb94/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8=
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY=
google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc=
google.golang.org/grpc v1.81.0 h1:W3G9N3KQf3BU+YuCtGKJk0CmxQNbAISICD/9AORxLIw=
google.golang.org/grpc v1.81.0/go.mod h1:xGH9GfzOyMTGIOXBJmXt+BX/V0kcdQbdcuwQ/zNw42I=
google.golang.org/grpc v1.81.1 h1:VnnIIZ88UzOOKLukQi+ImGz8O1Wdp8nAGGnvOfEIWQQ=
google.golang.org/grpc v1.81.1/go.mod h1:xGH9GfzOyMTGIOXBJmXt+BX/V0kcdQbdcuwQ/zNw42I=
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=

View File

@@ -1,2 +0,0 @@
[tools]
golangci-lint = "2.7.0"

File diff suppressed because one or more lines are too long

View File

@@ -143,7 +143,7 @@ package main
import (
"fmt"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecr"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ecr"
"github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
@@ -241,6 +241,54 @@ variables:
fn::aws:ecr:getAuthorizationToken:
registryId: ${ecr-repository.registryId}
```
```hcl
pulumi {
required_providers {
aws = {
source = "pulumi/aws"
version = "7.29.0"
}
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
data "aws_ecr_getauthorizationtoken" "authToken" {
registry_id = aws_ecr_repository.ecr-repository.registry_id
}
resource "aws_ecr_repository" "ecr-repository" {
}
resource "docker-build_image" "my-image" {
cache_from {
registry = {
ref ="${aws_ecr_repository.ecr-repository.repository_url}:cache"
}
}
cache_to {
registry = {
image_manifest = true
oci_media_types = true
ref ="${aws_ecr_repository.ecr-repository.repository_url}:cache"
}
}
context = {
location = "./app"
}
push = true
registries {
address = aws_ecr_repository.ecr-repository.repository_url
password = data.aws_ecr_getauthorizationtoken.authToken.password
username = data.aws_ecr_getauthorizationtoken.authToken.user_name
}
tags = ["${aws_ecr_repository.ecr-repository.repository_url}:latest"]
}
output "ref" {
value = docker-build_image.my-image.ref
}
```
```java
package generated_program;
@@ -258,8 +306,8 @@ import com.pulumi.dockerbuild.inputs.CacheToArgs;
import com.pulumi.dockerbuild.inputs.CacheToRegistryArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import com.pulumi.dockerbuild.inputs.RegistryArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -280,14 +328,14 @@ public class App {
var myImage = new Image("myImage", ImageArgs.builder()
.cacheFrom(CacheFromArgs.builder()
.registry(CacheFromRegistryArgs.builder()
.ref(ecrRepository.repositoryUrl().applyValue(repositoryUrl -> String.format("%s:cache", repositoryUrl)))
.ref(ecrRepository.repositoryUrl().applyValue(_repositoryUrl -> String.format("%s:cache", _repositoryUrl)))
.build())
.build())
.cacheTo(CacheToArgs.builder()
.registry(CacheToRegistryArgs.builder()
.imageManifest(true)
.ociMediaTypes(true)
.ref(ecrRepository.repositoryUrl().applyValue(repositoryUrl -> String.format("%s:cache", repositoryUrl)))
.ref(ecrRepository.repositoryUrl().applyValue(_repositoryUrl -> String.format("%s:cache", _repositoryUrl)))
.build())
.build())
.context(BuildContextArgs.builder()
@@ -296,10 +344,10 @@ public class App {
.push(true)
.registries(RegistryArgs.builder()
.address(ecrRepository.repositoryUrl())
.password(authToken.applyValue(getAuthorizationTokenResult -> getAuthorizationTokenResult).applyValue(authToken -> authToken.applyValue(getAuthorizationTokenResult -> getAuthorizationTokenResult.password())))
.username(authToken.applyValue(getAuthorizationTokenResult -> getAuthorizationTokenResult).applyValue(authToken -> authToken.applyValue(getAuthorizationTokenResult -> getAuthorizationTokenResult.userName())))
.password(authToken.applyValue(_authToken -> _authToken.password()))
.username(authToken.applyValue(_authToken -> _authToken.userName()))
.build())
.tags(ecrRepository.repositoryUrl().applyValue(repositoryUrl -> String.format("%s:latest", repositoryUrl)))
.tags(ecrRepository.repositoryUrl().applyValue(_repositoryUrl -> String.format("%s:latest", _repositoryUrl)))
.build());
ctx.export("ref", myImage.ref());
@@ -406,6 +454,24 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
context = {
location = "app"
}
platforms = ["plan9/amd64", "plan9/386"]
push = false
}
```
```java
package generated_program;
@@ -415,8 +481,8 @@ import com.pulumi.core.Output;
import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -461,7 +527,7 @@ const image = new docker_build.Image("image", {
}],
tags: ["docker.io/pulumi/pulumi:3.107.0"],
});
export const ref = myImage.ref;
export const ref = image.ref;
```
```python
import pulumi
@@ -478,7 +544,7 @@ image = docker_build.Image("image",
"username": "pulumibot",
}],
tags=["docker.io/pulumi/pulumi:3.107.0"])
pulumi.export("ref", my_image["ref"])
pulumi.export("ref", image.ref)
```
```csharp
using System.Collections.Generic;
@@ -512,7 +578,7 @@ return await Deployment.RunAsync(() =>
return new Dictionary<string, object?>
{
["ref"] = myImage.Ref,
["ref"] = image.Ref,
};
});
@@ -527,7 +593,7 @@ import (
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := dockerbuild.NewImage(ctx, "image", &dockerbuild.ImageArgs{
image, err := dockerbuild.NewImage(ctx, "image", &dockerbuild.ImageArgs{
Context: &dockerbuild.BuildContextArgs{
Location: pulumi.String("app"),
},
@@ -546,7 +612,7 @@ func main() {
if err != nil {
return err
}
ctx.Export("ref", myImage.Ref)
ctx.Export("ref", image.Ref)
return nil
})
}
@@ -555,7 +621,7 @@ func main() {
description: Registry export
name: registry
outputs:
ref: ${my-image.ref}
ref: ${image.ref}
resources:
image:
properties:
@@ -571,6 +637,32 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
context = {
location = "app"
}
push = true
registries {
address = "docker.io"
password = dockerHubPassword
username = "pulumibot"
}
tags = ["docker.io/pulumi/pulumi:3.107.0"]
}
output "ref" {
value = docker-build_image.image.ref
}
```
```java
package generated_program;
@@ -581,8 +673,8 @@ import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import com.pulumi.dockerbuild.inputs.RegistryArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -607,7 +699,7 @@ public class App {
.tags("docker.io/pulumi/pulumi:3.107.0")
.build());
ctx.export("ref", myImage.ref());
ctx.export("ref", image.ref());
}
}
```
@@ -756,6 +848,34 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
cache_from {
local = {
src = "tmp/cache"
}
}
cache_to {
local = {
dest = "tmp/cache"
mode = "max"
}
}
context = {
location = "app"
}
push = false
}
```
```java
package generated_program;
@@ -769,8 +889,8 @@ import com.pulumi.dockerbuild.inputs.CacheFromLocalArgs;
import com.pulumi.dockerbuild.inputs.CacheToArgs;
import com.pulumi.dockerbuild.inputs.CacheToLocalArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -903,6 +1023,27 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
builder = {
name = "cloud-builder-name"
}
context = {
location = "app"
}
exec = true
push = false
}
```
```java
package generated_program;
@@ -913,8 +1054,8 @@ import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuilderConfigArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -1035,6 +1176,26 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
build_args = {
"SET_ME_TO_TRUE" = "true"
}
context = {
location = "app"
}
push = false
}
```
```java
package generated_program;
@@ -1044,8 +1205,8 @@ import com.pulumi.core.Output;
import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -1153,6 +1314,24 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
context = {
location = "app"
}
push = false
target = "build-me"
}
```
```java
package generated_program;
@@ -1162,8 +1341,8 @@ import com.pulumi.core.Output;
import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -1291,6 +1470,28 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
context = {
location = "app"
named = {
"golang:latest" = {
location = "docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984"
}
}
}
push = false
}
```
```java
package generated_program;
@@ -1300,8 +1501,8 @@ import com.pulumi.core.Output;
import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -1316,12 +1517,13 @@ public class App {
var image = new Image("image", ImageArgs.builder()
.context(BuildContextArgs.builder()
.location("app")
.named(Map.of("golang:latest", Map.of("location", "docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984")))
.build())
.push(false)
.build());
.named(Map.of("golang:latest", ContextArgs.builder()
%!v(PANIC=Format method: interface conversion: model.Expression is *model.TemplateExpression, not *model.LiteralValueExpression)))
.build())
.push(false)
.build());
}
}
}
```
{{% /example %}}
@@ -1404,6 +1606,23 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
context = {
location = "https://raw.githubusercontent.com/pulumi/pulumi-docker/api-types/provider/testdata/Dockerfile"
}
push = false
}
```
```java
package generated_program;
@@ -1413,8 +1632,8 @@ import com.pulumi.core.Output;
import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -1539,6 +1758,26 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
context = {
location = "app"
}
dockerfile = {
inline = "FROM busybox\nCOPY hello.c ./\n"
}
push = false
}
```
```java
package generated_program;
@@ -1549,8 +1788,8 @@ import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import com.pulumi.dockerbuild.inputs.DockerfileArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -1673,6 +1912,26 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
context = {
location = "https://github.com/docker-library/hello-world.git"
}
dockerfile = {
location = "app/Dockerfile"
}
push = false
}
```
```java
package generated_program;
@@ -1683,8 +1942,8 @@ import com.pulumi.dockerbuild.Image;
import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import com.pulumi.dockerbuild.inputs.DockerfileArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
@@ -1819,6 +2078,28 @@ resources:
type: docker-build:Image
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "image" {
context = {
location = "app"
}
exports {
docker = {
tar = true
}
}
push = false
}
```
```java
package generated_program;
@@ -1830,8 +2111,8 @@ import com.pulumi.dockerbuild.ImageArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import com.pulumi.dockerbuild.inputs.ExportArgs;
import com.pulumi.dockerbuild.inputs.ExportDockerArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;

View File

@@ -327,6 +327,60 @@ resources:
type: docker-build:Index
runtime: yaml
```
```hcl
pulumi {
required_providers {
docker-build = {
source = "pulumi/docker-build"
version = "0.0.15"
}
}
}
resource "docker-build_image" "amd64" {
cache_from {
registry = {
ref = "docker.io/pulumi/pulumi:cache-amd64"
}
}
cache_to {
registry = {
mode = "max"
ref = "docker.io/pulumi/pulumi:cache-amd64"
}
}
context = {
location = "app"
}
platforms = ["linux/amd64"]
tags = ["docker.io/pulumi/pulumi:3.107.0-amd64"]
}
resource "docker-build_image" "arm64" {
cache_from {
registry = {
ref = "docker.io/pulumi/pulumi:cache-arm64"
}
}
cache_to {
registry = {
mode = "max"
ref = "docker.io/pulumi/pulumi:cache-arm64"
}
}
context = {
location = "app"
}
platforms = ["linux/arm64"]
tags = ["docker.io/pulumi/pulumi:3.107.0-arm64"]
}
resource "docker-build_index" "index" {
sources = [docker-build_image.amd64.ref, docker-build_image.arm64.ref]
tag = "docker.io/pulumi/pulumi:3.107.0"
}
output "ref" {
value = docker-build_index.index.ref
}
```
```java
package generated_program;
@@ -342,8 +396,8 @@ import com.pulumi.dockerbuild.inputs.CacheToRegistryArgs;
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
import com.pulumi.dockerbuild.Index;
import com.pulumi.dockerbuild.IndexArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;

2
sdk/dotnet/Image.cs generated
View File

@@ -240,7 +240,7 @@ namespace Pulumi.DockerBuild
///
/// return new Dictionary&lt;string, object?&gt;
/// {
/// ["ref"] = myImage.Ref,
/// ["ref"] = image.Ref,
/// };
/// });
///

View File

@@ -11,7 +11,7 @@
<PackageIcon>logo.png</PackageIcon>
<Version>0.1.0-alpha.0+dev</Version>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
</PropertyGroup>

View File

@@ -4,7 +4,7 @@ go 1.25.8
require (
github.com/blang/semver v3.5.1+incompatible
github.com/pulumi/pulumi/sdk/v3 v3.237.0
github.com/pulumi/pulumi/sdk/v3 v3.242.0
)
require (
@@ -28,15 +28,15 @@ require (
github.com/clipperhouse/displaywidth v0.11.0 // indirect
github.com/clipperhouse/uax29/v2 v2.7.0 // indirect
github.com/cloudflare/circl v1.6.3 // indirect
github.com/cyphar/filepath-securejoin v0.4.1 // indirect
github.com/cyphar/filepath-securejoin v0.6.1 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/djherbis/times v1.6.0 // indirect
github.com/emirpasic/gods v1.18.1 // indirect
github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.8.0 // indirect
github.com/go-git/go-git/v5 v5.18.0 // indirect
github.com/go-git/go-billy/v5 v5.9.0 // indirect
github.com/go-git/go-git/v5 v5.19.0 // indirect
github.com/go-logr/logr v1.4.3 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
@@ -54,6 +54,7 @@ require (
github.com/json-iterator/go v1.1.12 // indirect
github.com/kevinburke/ssh_config v1.2.0 // indirect
github.com/klauspost/compress v1.18.0 // indirect
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
github.com/lucasb-eyer/go-colorful v1.4.0 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect
github.com/mattn/go-isatty v0.0.22 // indirect
@@ -70,12 +71,12 @@ require (
github.com/opentracing/opentracing-go v1.2.0 // indirect
github.com/pgavlin/fx v0.1.6 // indirect
github.com/pgavlin/fx/v2 v2.0.12 // indirect
github.com/pjbgf/sha1cd v0.3.2 // indirect
github.com/pjbgf/sha1cd v0.6.0 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/term v1.1.0 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect
github.com/pulumi/esc v0.23.0 // indirect
github.com/pulumi/esc v0.24.0 // indirect
github.com/rivo/uniseg v0.4.7 // indirect
github.com/rogpeppe/go-internal v1.14.1 // indirect
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect
@@ -92,8 +93,8 @@ require (
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
github.com/zclconf/go-cty v1.17.0 // indirect
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
go.opentelemetry.io/collector/featuregate v1.57.0 // indirect
go.opentelemetry.io/collector/pdata v1.57.0 // indirect
go.opentelemetry.io/collector/featuregate v1.58.0 // indirect
go.opentelemetry.io/collector/pdata v1.58.0 // indirect
go.opentelemetry.io/otel v1.43.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.43.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.43.0 // indirect
@@ -104,7 +105,7 @@ require (
go.uber.org/atomic v1.11.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
golang.org/x/crypto v0.51.0 // indirect
golang.org/x/exp v0.0.0-20250718183923-645b1fa84792 // indirect
golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f // indirect
golang.org/x/mod v0.35.0 // indirect
golang.org/x/net v0.54.0 // indirect
golang.org/x/sync v0.20.0 // indirect
@@ -112,9 +113,9 @@ require (
golang.org/x/term v0.43.0 // indirect
golang.org/x/text v0.37.0 // indirect
golang.org/x/tools v0.44.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20260504160031-60b97b32f348 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260504160031-60b97b32f348 // indirect
google.golang.org/grpc v1.81.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20260519071638-aa98bba5eb94 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260519071638-aa98bba5eb94 // indirect
google.golang.org/grpc v1.81.1 // indirect
google.golang.org/protobuf v1.36.11 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect

View File

@@ -48,8 +48,8 @@ github.com/clipperhouse/uax29/v2 v2.7.0/go.mod h1:EFJ2TJMRUaplDxHKj1qAEhCtQPW2tJ
github.com/cloudflare/circl v1.6.3 h1:9GPOhQGF9MCYUeXyMYlqTR6a5gTrgR/fBLXvUgtVcg8=
github.com/cloudflare/circl v1.6.3/go.mod h1:2eXP6Qfat4O/Yhh8BznvKnJ+uzEoTQ6jVKJRn81BiS4=
github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
github.com/cyphar/filepath-securejoin v0.4.1 h1:JyxxyPEaktOD+GAnqIqTf9A8tHyAG22rowi7HkoSU1s=
github.com/cyphar/filepath-securejoin v0.4.1/go.mod h1:Sdj7gXlvMcPZsbhwhQ33GguGLDGQL7h7bg04C/+u9jI=
github.com/cyphar/filepath-securejoin v0.6.1 h1:5CeZ1jPXEiYt3+Z6zqprSAgSWiggmpVyciv8syjIpVE=
github.com/cyphar/filepath-securejoin v0.6.1/go.mod h1:A8hd4EnAeyujCJRrICiOWqjS1AX0a9kM5XL+NwKoYSc=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
@@ -71,12 +71,12 @@ github.com/gliderlabs/ssh v0.3.8 h1:a4YXD1V7xMF9g5nTkdfnja3Sxy1PVDCj1Zg4Wb8vY6c=
github.com/gliderlabs/ssh v0.3.8/go.mod h1:xYoytBv1sV0aL3CavoDuJIQNURXkkfPA/wxQ1pL1fAU=
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI=
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic=
github.com/go-git/go-billy/v5 v5.8.0 h1:I8hjc3LbBlXTtVuFNJuwYuMiHvQJDq1AT6u4DwDzZG0=
github.com/go-git/go-billy/v5 v5.8.0/go.mod h1:RpvI/rw4Vr5QA+Z60c6d6LXH0rYJo0uD5SqfmrrheCY=
github.com/go-git/go-billy/v5 v5.9.0 h1:jItGXszUDRtR/AlferWPTMN4j38BQ88XnXKbilmmBPA=
github.com/go-git/go-billy/v5 v5.9.0/go.mod h1:jCnQMLj9eUgGU7+ludSTYoZL/GGmii14RxKFj7ROgHw=
github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4=
github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII=
github.com/go-git/go-git/v5 v5.18.0 h1:O831KI+0PR51hM2kep6T8k+w0/LIAD490gvqMCvL5hM=
github.com/go-git/go-git/v5 v5.18.0/go.mod h1:pW/VmeqkanRFqR6AljLcs7EA7FbZaN5MQqO7oZADXpo=
github.com/go-git/go-git/v5 v5.19.0 h1:+WkVUQZSy/F1Gb13udrMKjIM2PrzsNfDKFSfo5tkMtc=
github.com/go-git/go-git/v5 v5.19.0/go.mod h1:Pb1v0c7/g8aGQJwx9Us09W85yGoyvSwuhEGMH7zjDKQ=
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
github.com/go-logr/logr v1.4.3 h1:CjnDlHq8ikf6E492q6eKboGOC0T8CDaOvkHCIg8idEI=
github.com/go-logr/logr v1.4.3/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
@@ -122,6 +122,8 @@ github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
github.com/klauspost/cpuid/v2 v2.3.0 h1:S4CRMLnYUhGeDFDqkGriYKdfoFlDnMtqTiI/sFzhA9Y=
github.com/klauspost/cpuid/v2 v2.3.0/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
@@ -170,8 +172,8 @@ github.com/pgavlin/fx v0.1.6 h1:r9jEg69DhNoCd3Xh0+5mIbdbS3PqWrVWujkY76MFRTU=
github.com/pgavlin/fx v0.1.6/go.mod h1:KWZJ6fqBBSh8GxHYqwYCf3rYE7Gp2p0N8tJp8xv9u9M=
github.com/pgavlin/fx/v2 v2.0.12 h1:SjjaJ68Dt8Z4zHwOpY/RPijd7lShs6xYupJbF9ra00M=
github.com/pgavlin/fx/v2 v2.0.12/go.mod h1:M/nF/ooAOy+NUBooYYXl2REARzJ/giPJxfMs8fINfKc=
github.com/pjbgf/sha1cd v0.3.2 h1:a9wb0bp1oC2TGwStyn0Umc/IGKQnEgF0vVaZ8QF8eo4=
github.com/pjbgf/sha1cd v0.3.2/go.mod h1:zQWigSxVmsHEZow5qaLtPYxpcKMMQpa09ixqBxuCS6A=
github.com/pjbgf/sha1cd v0.6.0 h1:3WJ8Wz8gvDz29quX1OcEmkAlUg9diU4GxJHqs0/XiwU=
github.com/pjbgf/sha1cd v0.6.0/go.mod h1:lhpGlyHLpQZoxMv8HcgXvZEhcGs0PG/vsZnEJ7H0iCM=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/term v1.1.0 h1:xIAAdCMh3QIAy+5FrE8Ad8XoDhEU4ufwbaSozViP9kk=
@@ -181,10 +183,10 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRI
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0=
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
github.com/pulumi/esc v0.23.0 h1:5lOXO+5vvXOEQxXw7cTuYhjg9lVng23f9XNLWDR9EP4=
github.com/pulumi/esc v0.23.0/go.mod h1:mkghIFn/TvN3XnP4jmCB4U5BG1I4UjGluARi39ckrCE=
github.com/pulumi/pulumi/sdk/v3 v3.237.0 h1:D0kx4fkUkiZWfreQg1ekeAifLJEC2+VRYzgboQClg9Q=
github.com/pulumi/pulumi/sdk/v3 v3.237.0/go.mod h1:ybUihqUfVF1ZXBH3JNunYsAMz2P6i+7v5gzoJ60sVp0=
github.com/pulumi/esc v0.24.0 h1:sCtiB0qbyrlU1ZNzJn4dTLYiChl8xeCBFbHWl1YoXJg=
github.com/pulumi/esc v0.24.0/go.mod h1:eCOOkcDJS6eooGwdE4/E0+pOsvUWG254+KBmPCFwJpA=
github.com/pulumi/pulumi/sdk/v3 v3.242.0 h1:gQIZ1ALbT5gCMuRoBscGzk7Rdbx9mbOc+YwDFxvRyss=
github.com/pulumi/pulumi/sdk/v3 v3.242.0/go.mod h1:P9VS6pQws3YBu67uszFRHn24n5AwzeMlyC2hIiHGWHg=
github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ=
github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
@@ -229,12 +231,12 @@ github.com/zclconf/go-cty v1.17.0 h1:seZvECve6XX4tmnvRzWtJNHdscMtYEx5R7bnnVyd/d0
github.com/zclconf/go-cty v1.17.0/go.mod h1:wqFzcImaLTI6A5HfsRwB0nj5n0MRZFwmey8YoFPPs3U=
go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64=
go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y=
go.opentelemetry.io/collector/featuregate v1.57.0 h1:KPDSUKYn6MHwgyGRSGPPcW/G96HH93pxuvvPwM+R8nY=
go.opentelemetry.io/collector/featuregate v1.57.0/go.mod h1:4ga1QBMPEejXXmpyJS8lmaRpknJ3Lb9Bvk6e420bUFU=
go.opentelemetry.io/collector/internal/testutil v0.151.0 h1:CFjDItLuqzblItOsnK6IPSdrsOaZCaDjYpB8qWG+XHI=
go.opentelemetry.io/collector/internal/testutil v0.151.0/go.mod h1:Jkjs6rkqs973LqgZ0Fe3zrokQRKULYXPIf4HuqStiEE=
go.opentelemetry.io/collector/pdata v1.57.0 h1:oDWBMjEIqyJO3GJEB+iwqxj47rxDK19OKzwaFEaE4sg=
go.opentelemetry.io/collector/pdata v1.57.0/go.mod h1:wZojinP6mNhLXudH8QXx/bjWzOsKMxi/FXwnk+12G/w=
go.opentelemetry.io/collector/featuregate v1.58.0 h1:Kh6Dpgbxywv/Q3D6qPehaSxNCxvr/U/ki7CL4y3udCo=
go.opentelemetry.io/collector/featuregate v1.58.0/go.mod h1:4ga1QBMPEejXXmpyJS8lmaRpknJ3Lb9Bvk6e420bUFU=
go.opentelemetry.io/collector/internal/testutil v0.152.0 h1:8LGwekR7mLcUDhT1ofLmdnrHRFuUa3U7PBd95ZvJEjQ=
go.opentelemetry.io/collector/internal/testutil v0.152.0/go.mod h1:Jkjs6rkqs973LqgZ0Fe3zrokQRKULYXPIf4HuqStiEE=
go.opentelemetry.io/collector/pdata v1.58.0 h1:5Lxut3NxKp87066Pzt+3q7+JUuFI5B3teCyLZIF8wIs=
go.opentelemetry.io/collector/pdata v1.58.0/go.mod h1:4vZtODINbC/JF3eGocnatdImzbRHseOywIcr+aULjCg=
go.opentelemetry.io/otel v1.43.0 h1:mYIM03dnh5zfN7HautFE4ieIig9amkNANT+xcVxAj9I=
go.opentelemetry.io/otel v1.43.0/go.mod h1:JuG+u74mvjvcm8vj8pI5XiHy1zDeoCS2LB1spIq7Ay0=
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.43.0 h1:88Y4s2C8oTui1LGM6bTWkw0ICGcOLCAI5l6zsD1j20k=
@@ -270,8 +272,8 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.51.0 h1:IBPXwPfKxY7cWQZ38ZCIRPI50YLeevDLlLnyC5wRGTI=
golang.org/x/crypto v0.51.0/go.mod h1:8AdwkbraGNABw2kOX6YFPs3WM22XqI4EXEd8g+x7Oc8=
golang.org/x/exp v0.0.0-20250718183923-645b1fa84792 h1:R9PFI6EUdfVKgwKjZef7QIwGcBKu86OEFpJ9nUEP2l4=
golang.org/x/exp v0.0.0-20250718183923-645b1fa84792/go.mod h1:A+z0yzpGtvnG90cToK5n2tu8UJVP2XUATh+r+sfOOOc=
golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f h1:W3F4c+6OLc6H2lb//N1q4WpJkhzJCK5J6kUi1NTVXfM=
golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f/go.mod h1:J1xhfL/vlindoeF/aINzNzt2Bket5bjo9sdOYzOsU80=
golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
@@ -329,12 +331,12 @@ golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8T
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
gonum.org/v1/gonum v0.17.0 h1:VbpOemQlsSMrYmn7T2OUvQ4dqxQXU+ouZFQsZOx50z4=
gonum.org/v1/gonum v0.17.0/go.mod h1:El3tOrEuMpv2UdMrbNlKEh9vd86bmQ6vqIcDwxEOc1E=
google.golang.org/genproto/googleapis/api v0.0.0-20260504160031-60b97b32f348 h1:U8orV30l6KpDsi9dxU0CoJZGbjS8EEpw+6ba+XwGPQA=
google.golang.org/genproto/googleapis/api v0.0.0-20260504160031-60b97b32f348/go.mod h1:Yzdzr5OOZFgSsEV2D/Xi9NL3bszpXFAg0hFJiRohcD8=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260504160031-60b97b32f348 h1:pfIbyB44sWzHiCpRqIen67ZQnVXSfIxWrqUMk1qwODE=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260504160031-60b97b32f348/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8=
google.golang.org/grpc v1.81.0 h1:W3G9N3KQf3BU+YuCtGKJk0CmxQNbAISICD/9AORxLIw=
google.golang.org/grpc v1.81.0/go.mod h1:xGH9GfzOyMTGIOXBJmXt+BX/V0kcdQbdcuwQ/zNw42I=
google.golang.org/genproto/googleapis/api v0.0.0-20260519071638-aa98bba5eb94 h1:DddG61lE5LkX6144z22i0gma9BMBs5aZ9B8lZLobxyw=
google.golang.org/genproto/googleapis/api v0.0.0-20260519071638-aa98bba5eb94/go.mod h1:1dCETSCY2YKZNXQE3h4fun3TYwF5p8jejRKZgfWAgAY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260519071638-aa98bba5eb94 h1:eZCjr/aAF8c5ccm5pb6T4EXgIei5MlAAPWPJk+5ArfY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20260519071638-aa98bba5eb94/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8=
google.golang.org/grpc v1.81.1 h1:VnnIIZ88UzOOKLukQi+ImGz8O1Wdp8nAGGnvOfEIWQQ=
google.golang.org/grpc v1.81.1/go.mod h1:xGH9GfzOyMTGIOXBJmXt+BX/V0kcdQbdcuwQ/zNw42I=
google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE=
google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=

View File

@@ -124,7 +124,7 @@ import (
//
// "fmt"
//
// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecr"
// "github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ecr"
// "github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild"
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
//
@@ -234,7 +234,7 @@ import (
//
// func main() {
// pulumi.Run(func(ctx *pulumi.Context) error {
// _, err := dockerbuild.NewImage(ctx, "image", &dockerbuild.ImageArgs{
// image, err := dockerbuild.NewImage(ctx, "image", &dockerbuild.ImageArgs{
// Context: &dockerbuild.BuildContextArgs{
// Location: pulumi.String("app"),
// },
@@ -253,7 +253,7 @@ import (
// if err != nil {
// return err
// }
// ctx.Export("ref", myImage.Ref)
// ctx.Export("ref", image.Ref)
// return nil
// })
// }

View File

@@ -124,7 +124,7 @@ import (
//
// "fmt"
//
// "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecr"
// "github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ecr"
// "github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild"
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
//
@@ -234,7 +234,7 @@ import (
//
// func main() {
// pulumi.Run(func(ctx *pulumi.Context) error {
// _, err := dockerbuild.NewImage(ctx, "image", &dockerbuild.ImageArgs{
// image, err := dockerbuild.NewImage(ctx, "image", &dockerbuild.ImageArgs{
// Context: &dockerbuild.BuildContextArgs{
// Location: pulumi.String("app"),
// },
@@ -253,7 +253,7 @@ import (
// if err != nil {
// return err
// }
// ctx.Export("ref", myImage.Ref)
// ctx.Export("ref", image.Ref)
// return nil
// })
// }

View File

@@ -148,8 +148,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.inputs.CacheToRegistryArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import com.pulumi.dockerbuild.inputs.RegistryArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -170,14 +170,14 @@ import javax.annotation.Nullable;
* var myImage = new Image("myImage", ImageArgs.builder()
* .cacheFrom(CacheFromArgs.builder()
* .registry(CacheFromRegistryArgs.builder()
* .ref(ecrRepository.repositoryUrl().applyValue(repositoryUrl -> String.format("%s:cache", repositoryUrl)))
* .ref(ecrRepository.repositoryUrl().applyValue(_repositoryUrl -> String.format("%s:cache", _repositoryUrl)))
* .build())
* .build())
* .cacheTo(CacheToArgs.builder()
* .registry(CacheToRegistryArgs.builder()
* .imageManifest(true)
* .ociMediaTypes(true)
* .ref(ecrRepository.repositoryUrl().applyValue(repositoryUrl -> String.format("%s:cache", repositoryUrl)))
* .ref(ecrRepository.repositoryUrl().applyValue(_repositoryUrl -> String.format("%s:cache", _repositoryUrl)))
* .build())
* .build())
* .context(BuildContextArgs.builder()
@@ -186,10 +186,10 @@ import javax.annotation.Nullable;
* .push(true)
* .registries(RegistryArgs.builder()
* .address(ecrRepository.repositoryUrl())
* .password(authToken.applyValue(getAuthorizationTokenResult -> getAuthorizationTokenResult).applyValue(authToken -> authToken.applyValue(getAuthorizationTokenResult -> getAuthorizationTokenResult.password())))
* .username(authToken.applyValue(getAuthorizationTokenResult -> getAuthorizationTokenResult).applyValue(authToken -> authToken.applyValue(getAuthorizationTokenResult -> getAuthorizationTokenResult.userName())))
* .password(authToken.applyValue(_authToken -> _authToken.password()))
* .username(authToken.applyValue(_authToken -> _authToken.userName()))
* .build())
* .tags(ecrRepository.repositoryUrl().applyValue(repositoryUrl -> String.format("%s:latest", repositoryUrl)))
* .tags(ecrRepository.repositoryUrl().applyValue(_repositoryUrl -> String.format("%s:latest", _repositoryUrl)))
* .build());
*
* ctx.export("ref", myImage.ref());
@@ -208,8 +208,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.Image;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -247,8 +247,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import com.pulumi.dockerbuild.inputs.RegistryArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -273,7 +273,7 @@ import javax.annotation.Nullable;
* .tags("docker.io/pulumi/pulumi:3.107.0")
* .build());
*
* ctx.export("ref", myImage.ref());
* ctx.export("ref", image.ref());
* }
* }
* }
@@ -293,8 +293,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.inputs.CacheToArgs;
* import com.pulumi.dockerbuild.inputs.CacheToLocalArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -340,8 +340,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuilderConfigArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -379,8 +379,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.Image;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -415,8 +415,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.Image;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -451,29 +451,30 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.Image;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
* import java.nio.file.Paths;
*
* public class App }{{@code
* public static void main(String[] args) }{{@code
* public class App {
* public static void main(String[] args) {
* Pulumi.run(App::stack);
* }}{@code
* }
*
* public static void stack(Context ctx) }{{@code
* public static void stack(Context ctx) {
* var image = new Image("image", ImageArgs.builder()
* .context(BuildContextArgs.builder()
* .location("app")
* .named(Map.of("golang:latest", Map.of("location", "docker-image://golang}{@literal @}{@code sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984")))
* .build())
* .push(false)
* .build());
* .named(Map.of("golang:latest", ContextArgs.builder()
* %!v(PANIC=Format method: interface conversion: model.Expression is *model.TemplateExpression, not *model.LiteralValueExpression)))
* .build())
* .push(false)
* .build());
*
* }}{@code
* }}{@code
* }
* }
* }
* </pre>
* ### Remote context
@@ -487,8 +488,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.Image;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -523,8 +524,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import com.pulumi.dockerbuild.inputs.DockerfileArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -565,8 +566,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.ImageArgs;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import com.pulumi.dockerbuild.inputs.DockerfileArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
@@ -605,8 +606,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import com.pulumi.dockerbuild.inputs.ExportArgs;
* import com.pulumi.dockerbuild.inputs.ExportDockerArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;

View File

@@ -55,8 +55,8 @@ import javax.annotation.Nullable;
* import com.pulumi.dockerbuild.inputs.BuildContextArgs;
* import com.pulumi.dockerbuild.Index;
* import com.pulumi.dockerbuild.IndexArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Arrays;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;

2
sdk/nodejs/image.ts generated
View File

@@ -312,7 +312,7 @@ import * as utilities from "./utilities";
* }],
* tags: ["docker.io/pulumi/pulumi:3.107.0"],
* });
* export const ref = myImage.ref;
* export const ref = image.ref;
* ```
* ### Caching
*

View File

@@ -84,7 +84,7 @@ class BuildContextArgsDict(TypedDict):
(`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
etc.).
"""
named: NotRequired[pulumi.Input[Optional[Mapping[str, pulumi.Input['ContextArgs']]]]]
named: NotRequired[pulumi.Input[Optional[Mapping[str, pulumi.Input['ContextArgsDict']]]]]
"""
Additional build contexts to use.
@@ -611,7 +611,7 @@ class CacheFromS3Args:
class CacheFromArgsDict(TypedDict):
azblob: NotRequired[pulumi.Input[Optional['CacheFromAzureBlobArgs']]]
azblob: NotRequired[pulumi.Input[Optional['CacheFromAzureBlobArgsDict']]]
"""
Upload build caches to Azure's blob storage service.
"""
@@ -619,14 +619,14 @@ class CacheFromArgsDict(TypedDict):
"""
When `true` this entry will be excluded. Defaults to `false`.
"""
gha: NotRequired[pulumi.Input[Optional['CacheFromGitHubActionsArgs']]]
gha: NotRequired[pulumi.Input[Optional['CacheFromGitHubActionsArgsDict']]]
"""
Recommended for use with GitHub Actions workflows.
An action like `crazy-max/ghaction-github-runtime` is recommended to
expose appropriate credentials to your GitHub workflow.
"""
local: NotRequired[pulumi.Input[Optional['CacheFromLocalArgs']]]
local: NotRequired[pulumi.Input[Optional['CacheFromLocalArgsDict']]]
"""
A simple backend which caches images on your local filesystem.
"""
@@ -635,11 +635,11 @@ class CacheFromArgsDict(TypedDict):
A raw string as you would provide it to the Docker CLI (e.g.,
`type=inline`).
"""
registry: NotRequired[pulumi.Input[Optional['CacheFromRegistryArgs']]]
registry: NotRequired[pulumi.Input[Optional['CacheFromRegistryArgsDict']]]
"""
Upload build caches to remote registries.
"""
s3: NotRequired[pulumi.Input[Optional['CacheFromS3Args']]]
s3: NotRequired[pulumi.Input[Optional['CacheFromS3ArgsDict']]]
"""
Upload build caches to AWS S3 or an S3-compatible services such as
MinIO.
@@ -1597,7 +1597,7 @@ class CacheToS3Args:
class CacheToArgsDict(TypedDict):
azblob: NotRequired[pulumi.Input[Optional['CacheToAzureBlobArgs']]]
azblob: NotRequired[pulumi.Input[Optional['CacheToAzureBlobArgsDict']]]
"""
Push cache to Azure's blob storage service.
"""
@@ -1605,20 +1605,20 @@ class CacheToArgsDict(TypedDict):
"""
When `true` this entry will be excluded. Defaults to `false`.
"""
gha: NotRequired[pulumi.Input[Optional['CacheToGitHubActionsArgs']]]
gha: NotRequired[pulumi.Input[Optional['CacheToGitHubActionsArgsDict']]]
"""
Recommended for use with GitHub Actions workflows.
An action like `crazy-max/ghaction-github-runtime` is recommended to
expose appropriate credentials to your GitHub workflow.
"""
inline: NotRequired[pulumi.Input[Optional['CacheToInlineArgs']]]
inline: NotRequired[pulumi.Input[Optional['CacheToInlineArgsDict']]]
"""
The inline cache storage backend is the simplest implementation to get
started with, but it does not handle multi-stage builds. Consider the
`registry` cache backend instead.
"""
local: NotRequired[pulumi.Input[Optional['CacheToLocalArgs']]]
local: NotRequired[pulumi.Input[Optional['CacheToLocalArgsDict']]]
"""
A simple backend which caches imagines on your local filesystem.
"""
@@ -1627,12 +1627,12 @@ class CacheToArgsDict(TypedDict):
A raw string as you would provide it to the Docker CLI (e.g.,
`type=inline`)
"""
registry: NotRequired[pulumi.Input[Optional['CacheToRegistryArgs']]]
registry: NotRequired[pulumi.Input[Optional['CacheToRegistryArgsDict']]]
"""
Push caches to remote registries. Incompatible with the `docker` build
driver.
"""
s3: NotRequired[pulumi.Input[Optional['CacheToS3Args']]]
s3: NotRequired[pulumi.Input[Optional['CacheToS3ArgsDict']]]
"""
Push cache to AWS S3 or S3-compatible services such as MinIO.
"""
@@ -2940,7 +2940,7 @@ class ExportTarArgs:
class ExportArgsDict(TypedDict):
cacheonly: NotRequired[pulumi.Input[Optional['ExportCacheOnlyArgs']]]
cacheonly: NotRequired[pulumi.Input[Optional['ExportCacheOnlyArgsDict']]]
"""
A no-op export. Helpful for silencing the 'no exports' warning if you
just want to populate caches.
@@ -2949,19 +2949,19 @@ class ExportArgsDict(TypedDict):
"""
When `true` this entry will be excluded. Defaults to `false`.
"""
docker: NotRequired[pulumi.Input[Optional['ExportDockerArgs']]]
docker: NotRequired[pulumi.Input[Optional['ExportDockerArgsDict']]]
"""
Export as a Docker image layout.
"""
image: NotRequired[pulumi.Input[Optional['ExportImageArgs']]]
image: NotRequired[pulumi.Input[Optional['ExportImageArgsDict']]]
"""
Outputs the build result into a container image format.
"""
local: NotRequired[pulumi.Input[Optional['ExportLocalArgs']]]
local: NotRequired[pulumi.Input[Optional['ExportLocalArgsDict']]]
"""
Export to a local directory as files and directories.
"""
oci: NotRequired[pulumi.Input[Optional['ExportOCIArgs']]]
oci: NotRequired[pulumi.Input[Optional['ExportOCIArgsDict']]]
"""
Identical to the Docker exporter but uses OCI media types by default.
"""
@@ -2970,11 +2970,11 @@ class ExportArgsDict(TypedDict):
A raw string as you would provide it to the Docker CLI (e.g.,
`type=docker`)
"""
registry: NotRequired[pulumi.Input[Optional['ExportRegistryArgs']]]
registry: NotRequired[pulumi.Input[Optional['ExportRegistryArgsDict']]]
"""
Identical to the Image exporter, but pushes by default.
"""
tar: NotRequired[pulumi.Input[Optional['ExportTarArgs']]]
tar: NotRequired[pulumi.Input[Optional['ExportTarArgsDict']]]
"""
Export to a local directory as a tarball.
"""

View File

@@ -780,7 +780,7 @@ class Image(pulumi.CustomResource):
"username": "pulumibot",
}],
tags=["docker.io/pulumi/pulumi:3.107.0"])
pulumi.export("ref", my_image["ref"])
pulumi.export("ref", image.ref)
```
### Caching
```python
@@ -1219,7 +1219,7 @@ class Image(pulumi.CustomResource):
"username": "pulumibot",
}],
tags=["docker.io/pulumi/pulumi:3.107.0"])
pulumi.export("ref", my_image["ref"])
pulumi.export("ref", image.ref)
```
### Caching
```python