Compare commits
1 Commits
update-pul
...
update-git
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d49f602dc4 |
@@ -4,26 +4,23 @@ major-version: 0
|
||||
providerDefaultBranch: main
|
||||
providerVersion: github.com/pulumi/pulumi-docker-build/provider.Version
|
||||
aws: true
|
||||
modulePath: .
|
||||
gcp: true
|
||||
sdkModuleDir: sdk/go/dockerbuild
|
||||
parallel: 3
|
||||
esc:
|
||||
enabled: true
|
||||
envOverride:
|
||||
AWS_REGION: us-west-2
|
||||
PULUMI_API: "https://api.pulumi-staging.io"
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
GOOGLE_PROJECT: pulumi-ci-gcp-provider
|
||||
GOOGLE_PROJECT_NUMBER: 895284651812
|
||||
GOOGLE_REGION: us-central1
|
||||
GOOGLE_ZONE: us-central1-a
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
AWS_REGION: us-west-2
|
||||
PULUMI_API: "https://api.pulumi-staging.io"
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
GOOGLE_PROJECT: pulumi-ci-gcp-provider
|
||||
GOOGLE_PROJECT_NUMBER: 895284651812
|
||||
GOOGLE_REGION: us-central1
|
||||
GOOGLE_ZONE: us-central1-a
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
|
||||
@@ -1,87 +0,0 @@
|
||||
[[tools.dotnet]]
|
||||
version = "8.0.414"
|
||||
backend = "asdf:dotnet"
|
||||
|
||||
[[tools."github:pulumi/pulumictl"]]
|
||||
version = "0.0.50"
|
||||
backend = "github:pulumi/pulumictl"
|
||||
|
||||
[tools."github:pulumi/pulumictl".platforms.linux-x64]
|
||||
checksum = "blake3:c128dd74993f779c613296fe7cd21c20cbd323f24e59cb76e007620660b60348"
|
||||
name = "pulumictl-v0.0.50-linux-amd64.tar.gz"
|
||||
size = 27744219
|
||||
url = "https://github.com/pulumi/pulumictl/releases/download/v0.0.50/pulumictl-v0.0.50-linux-amd64.tar.gz"
|
||||
url_api = ""
|
||||
|
||||
[[tools."github:pulumi/schema-tools"]]
|
||||
version = "0.6.0"
|
||||
backend = "github:pulumi/schema-tools"
|
||||
|
||||
[tools."github:pulumi/schema-tools".platforms.linux-x64]
|
||||
checksum = "blake3:82dfe616fee18b4258f6e3d2dc3c4e9f14afd43a0a4cc33eff2d2a04088d6ca3"
|
||||
name = "schema-tools-v0.6.0-linux-amd64.tar.gz"
|
||||
size = 14282746
|
||||
url = "https://github.com/pulumi/schema-tools/releases/download/v0.6.0/schema-tools-v0.6.0-linux-amd64.tar.gz"
|
||||
url_api = ""
|
||||
|
||||
[[tools.go]]
|
||||
version = "1.24.1"
|
||||
backend = "core:go"
|
||||
|
||||
[tools.go.platforms.linux-x64]
|
||||
checksum = "sha256:cb2396bae64183cdccf81a9a6df0aea3bce9511fc21469fb89a0c00470088073"
|
||||
size = 78503123
|
||||
url = "https://dl.google.com/go/go1.24.1.linux-amd64.tar.gz"
|
||||
|
||||
[[tools.golangci-lint]]
|
||||
version = "1.64.8"
|
||||
backend = "aqua:golangci/golangci-lint"
|
||||
|
||||
[tools.golangci-lint.platforms.linux-x64]
|
||||
checksum = "sha256:b6270687afb143d019f387c791cd2a6f1cb383be9b3124d241ca11bd3ce2e54e"
|
||||
size = 12364828
|
||||
url = "https://github.com/golangci/golangci-lint/releases/download/v1.64.8/golangci-lint-1.64.8-linux-amd64.tar.gz"
|
||||
|
||||
[[tools.gradle]]
|
||||
version = "7.6.6"
|
||||
backend = "aqua:gradle/gradle"
|
||||
|
||||
[tools.gradle.platforms.linux-x64]
|
||||
checksum = "blake3:5cad8fc455b720b68a0bd2907d435e2919581708243f84f27845fe8812a09323"
|
||||
size = 128439774
|
||||
url = "https://github.com/gradle/gradle-distributions/releases/download/v7.6.6/gradle-7.6.6-bin.zip"
|
||||
|
||||
[[tools.java]]
|
||||
version = "corretto-11.0.28.6.1"
|
||||
backend = "core:java"
|
||||
|
||||
[tools.java.platforms.linux-x64]
|
||||
checksum = "sha256:70734c46e0bbeb7f45b721756ba0b2f1f1e1ef85a11e10d5a488f06b257dadd9"
|
||||
size = 195648709
|
||||
url = "https://corretto.aws/downloads/resources/11.0.28.6.1/amazon-corretto-11.0.28.6.1-linux-x64.tar.gz"
|
||||
|
||||
[[tools.node]]
|
||||
version = "20.19.5"
|
||||
backend = "core:node"
|
||||
|
||||
[tools.node.platforms.linux-x64]
|
||||
checksum = "sha256:4eba5fbe1fb10753bc06e42f001a91c5cec16798b7764a3e9257adc59af47fe1"
|
||||
size = 47041607
|
||||
url = "https://nodejs.org/dist/v20.19.5/node-v20.19.5-linux-x64.tar.gz"
|
||||
|
||||
[[tools."npm:yarn"]]
|
||||
version = "1.22.22"
|
||||
backend = "npm:yarn"
|
||||
|
||||
[[tools.pulumi]]
|
||||
version = "3.192.0"
|
||||
backend = "aqua:pulumi/pulumi"
|
||||
|
||||
[tools.pulumi.platforms.linux-x64]
|
||||
checksum = "sha512:6351213bee02ade5b76407d9b43cdb243fa461ca38231b03410de5aa1f697e55ab6467da2a9e37ebbff7be6cd3485d833e9ad8f29d4de6919bbdd471fb25e45a"
|
||||
size = 92867578
|
||||
url = "https://github.com/pulumi/pulumi/releases/download/v3.192.0/pulumi-v3.192.0-linux-x64.tar.gz"
|
||||
|
||||
[[tools.python]]
|
||||
version = "3.11.8"
|
||||
backend = "core:python"
|
||||
@@ -1,7 +0,0 @@
|
||||
# WARNING: This file is autogenerated - changes will be overwritten when regenerated by https://github.com/pulumi/ci-mgmt
|
||||
|
||||
# Overrides tool versions for test workflows
|
||||
|
||||
[tools]
|
||||
# always use pulumi latest for tests
|
||||
pulumi = "latest"
|
||||
@@ -1,28 +0,0 @@
|
||||
# WARNING: This file is autogenerated - changes will be overwritten when regenerated by https://github.com/pulumi/ci-mgmt
|
||||
# You can create your own root-level mise.toml file to override/augment this. See https://mise.jdx.dev/configuration.html
|
||||
|
||||
[env]
|
||||
_.source = "{{config_root}}/scripts/get-versions.sh"
|
||||
|
||||
[tools]
|
||||
|
||||
# Runtimes
|
||||
# TODO: we may not need `get_env` once https://github.com/jdx/mise/discussions/6339 is fixed
|
||||
go = "{{ get_env(name='GO_VERSION_MISE', default='latest') }}"
|
||||
node = '20.19.5'
|
||||
python = '3.11.8'
|
||||
dotnet = '8.0.414'
|
||||
# Corretto version used as Java SE/OpenJDK version no longer offered
|
||||
java = 'corretto-11'
|
||||
|
||||
# Executable tools
|
||||
pulumi = "{{ get_env(name='PULUMI_VERSION_MISE', default='latest') }}"
|
||||
"github:pulumi/pulumictl" = 'latest'
|
||||
"github:pulumi/schema-tools" = "latest"
|
||||
gradle = '7.6'
|
||||
golangci-lint = "1.64.8" # See note about about overrides if you need to customize this.
|
||||
"npm:yarn" = "1.22.22"
|
||||
|
||||
[settings]
|
||||
experimental = true # Required for Go binaries (e.g. pulumictl).
|
||||
lockfile = true
|
||||
12
.github/actions/esc-action/action.yaml
vendored
12
.github/actions/esc-action/action.yaml
vendored
@@ -1,12 +0,0 @@
|
||||
name: "Load secrets"
|
||||
description: |
|
||||
This is a temporary action which assists with our migration to ESC. Instead
|
||||
of surrounding every step that references secrets with an "if ESC" block, we
|
||||
instead modify those steps to consume their secrets from this step's outputs.
|
||||
Then, later, we can replace this action with esc-action to actually load
|
||||
secrets from ESC.
|
||||
inputs: {}
|
||||
outputs: {}
|
||||
runs:
|
||||
using: "node20"
|
||||
main: "index.js"
|
||||
14
.github/actions/esc-action/index.js
vendored
14
.github/actions/esc-action/index.js
vendored
@@ -1,14 +0,0 @@
|
||||
const fs = require("fs");
|
||||
|
||||
const file = process.env["GITHUB_OUTPUT"];
|
||||
var stream = fs.createWriteStream(file, { flags: "a" });
|
||||
|
||||
for (const [name, value] of Object.entries(process.env)) {
|
||||
try {
|
||||
stream.write(`${name}<<EEEOOOFFF\n${value}\nEEEOOOFFF\n`); // << syntax accommodates multiline strings.
|
||||
} catch (err) {
|
||||
console.log(`error: failed to set output for ${name}: ${err.message}`);
|
||||
}
|
||||
}
|
||||
|
||||
stream.end();
|
||||
238
.github/workflows/build.yml
vendored
238
.github/workflows/build.yml
vendored
@@ -15,6 +15,14 @@ on:
|
||||
- "**"
|
||||
workflow_dispatch: {}
|
||||
env:
|
||||
AZURE_SIGNING_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
|
||||
AZURE_SIGNING_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
|
||||
AZURE_SIGNING_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
|
||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ secrets.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||
SKIP_SIGNING: ${{ secrets.AZURE_SIGNING_CLIENT_ID == '' &&
|
||||
secrets.AZURE_SIGNING_CLIENT_SECRET == '' && secrets.AZURE_SIGNING_TENANT_ID
|
||||
== '' && secrets.AZURE_SIGNING_KEY_VAULT_URI == '' }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
PROVIDER: docker-build
|
||||
PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget
|
||||
TRAVIS_OS_NAME: linux
|
||||
@@ -25,10 +33,13 @@ env:
|
||||
DOTNETVERSION: "8.0.x"
|
||||
JAVAVERSION: "11"
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
AWS_REGION: us-west-2
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
@@ -37,35 +48,20 @@ env:
|
||||
GOOGLE_REGION: us-central1
|
||||
GOOGLE_ZONE: us-central1-a
|
||||
PULUMI_API: https://api.pulumi-staging.io
|
||||
|
||||
jobs:
|
||||
prerequisites:
|
||||
runs-on: ubuntu-latest
|
||||
name: prerequisites
|
||||
permissions:
|
||||
id-token: write # For ESC secrets.
|
||||
pull-requests: write # For schema check comment.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -76,7 +72,7 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- if: github.event_name == 'pull_request'
|
||||
name: Install Schema Tools
|
||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||
@@ -97,7 +93,7 @@ jobs:
|
||||
echo 'EOF';
|
||||
} >> "$GITHUB_ENV"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
||||
name: Comment on PR with Details of Schema Check
|
||||
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
||||
@@ -127,7 +123,6 @@ jobs:
|
||||
sdk/go/**/pulumiUtilities.go
|
||||
sdk/nodejs/package.json
|
||||
sdk/python/pyproject.toml
|
||||
sdk/java/build.gradle
|
||||
- name: Commit SDK changes for Renovate
|
||||
if: failure() && steps.worktreeClean.outcome == 'failure' &&
|
||||
contains(github.actor, 'renovate') && github.event_name ==
|
||||
@@ -173,7 +168,7 @@ jobs:
|
||||
|
||||
# workflow. https://github.com/orgs/community/discussions/25702
|
||||
|
||||
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
env:
|
||||
HEAD_REF: ${{ github.head_ref }}
|
||||
- run: git status --porcelain
|
||||
@@ -188,15 +183,10 @@ jobs:
|
||||
path: ${{ github.workspace }}/bin/provider.tar.gz
|
||||
- name: Test Provider Library
|
||||
run: make test_provider
|
||||
env:
|
||||
ARM_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.ARM_CLIENT_SECRET }}
|
||||
DIGITALOCEAN_TOKEN: ${{ steps.esc-secrets.outputs.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ steps.esc-secrets.outputs.DOCKER_HUB_PASSWORD }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Upload coverage reports to Codecov
|
||||
uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
|
||||
uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # v5.4.3
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -205,7 +195,7 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
build_sdks:
|
||||
needs: prerequisites
|
||||
runs-on: pulumi-ubuntu-8core
|
||||
@@ -219,30 +209,16 @@ jobs:
|
||||
- go
|
||||
- java
|
||||
name: build_sdks
|
||||
permissions:
|
||||
pull-requests: write # For Renovate SDK updates.
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -253,32 +229,32 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download provider
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: pulumi-${{ env.PROVIDER }}-provider.tar.gz
|
||||
path: ${{ github.workspace }}/bin
|
||||
@@ -303,7 +279,6 @@ jobs:
|
||||
sdk/go/**/pulumiUtilities.go
|
||||
sdk/nodejs/package.json
|
||||
sdk/python/pyproject.toml
|
||||
sdk/java/build.gradle
|
||||
- name: Commit SDK changes for Renovate
|
||||
if: failure() && steps.worktreeClean.outcome == 'failure' &&
|
||||
contains(github.actor, 'renovate') && github.event_name ==
|
||||
@@ -349,7 +324,7 @@ jobs:
|
||||
|
||||
# workflow. https://github.com/orgs/community/discussions/25702
|
||||
|
||||
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
env:
|
||||
HEAD_REF: ${{ github.head_ref }}
|
||||
- run: git status --porcelain
|
||||
@@ -369,29 +344,13 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
|
||||
tag_release_if_labeled_needs_release:
|
||||
name: Tag release if labeled as needs-release
|
||||
needs: publish
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
- name: check if this commit needs release
|
||||
if: ${{ env.RELEASE_BOT_ENDPOINT != '' }}
|
||||
uses: pulumi/action-release-by-pr-label@main
|
||||
@@ -399,10 +358,10 @@ jobs:
|
||||
command: "release-if-needed"
|
||||
repo: ${{ github.repository }}
|
||||
commit: ${{ github.sha }}
|
||||
slack_channel: C02MGR8JVST
|
||||
slack_channel: ${{ secrets.RELEASE_OPS_SLACK_CHANNEL }}
|
||||
env:
|
||||
RELEASE_BOT_ENDPOINT: ${{ steps.esc-secrets.outputs.RELEASE_BOT_ENDPOINT }}
|
||||
RELEASE_BOT_KEY: ${{ steps.esc-secrets.outputs.RELEASE_BOT_KEY }}
|
||||
RELEASE_BOT_ENDPOINT: ${{ secrets.RELEASE_BOT_ENDPOINT }}
|
||||
RELEASE_BOT_KEY: ${{ secrets.RELEASE_BOT_KEY }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
test:
|
||||
@@ -422,28 +381,17 @@ jobs:
|
||||
name: test
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets and Pulumi access token OIDC.
|
||||
id-token: write
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -454,32 +402,32 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download provider
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: pulumi-${{ env.PROVIDER }}-provider.tar.gz
|
||||
path: ${{ github.workspace }}/bin
|
||||
@@ -491,7 +439,7 @@ jobs:
|
||||
-exec chmod +x {} \;
|
||||
- name: Download SDK
|
||||
if: ${{ matrix.language != 'yaml' }}
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: ${{ matrix.language }}-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -525,7 +473,7 @@ jobs:
|
||||
with:
|
||||
environment: logins/pulumi-ci
|
||||
- name: Authenticate to Google Cloud
|
||||
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093 # v3.0.0
|
||||
uses: google-github-actions/auth@b7593ed2efd1c1617e1b0254da33b86225adb2a5 # v2.1.12
|
||||
with:
|
||||
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
||||
}}/locations/global/workloadIdentityPools/${{
|
||||
@@ -533,7 +481,7 @@ jobs:
|
||||
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
||||
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
||||
- name: Setup gcloud auth
|
||||
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db # v3.0.1
|
||||
uses: google-github-actions/setup-gcloud@77e7a554d41e2ee56fc945c52dfd3f33d12def9a # v2.1.4
|
||||
with:
|
||||
install_components: gke-gcloud-auth-plugin
|
||||
- name: Install gotestfmt
|
||||
@@ -546,8 +494,6 @@ jobs:
|
||||
set -euo pipefail
|
||||
|
||||
cd examples && go test -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 .
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -556,35 +502,21 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
needs: test
|
||||
name: publish
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -604,27 +536,21 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Configure AWS Credentials
|
||||
uses: aws-actions/configure-aws-credentials@00943011d9042930efac3dcd3a170e4273319bc8 # v5.1.0
|
||||
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
|
||||
with:
|
||||
aws-access-key-id: ${{ steps.esc-secrets.outputs.AWS_ACCESS_KEY_ID }}
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-region: us-east-2
|
||||
aws-secret-access-key: ${{ steps.esc-secrets.outputs.AWS_SECRET_ACCESS_KEY }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
role-duration-seconds: 7200
|
||||
role-session-name: ${{ env.PROVIDER }}@githubActions
|
||||
role-external-id: upload-pulumi-release
|
||||
role-to-assume: ${{ steps.esc-secrets.outputs.AWS_UPLOAD_ROLE_ARN }}
|
||||
role-to-assume: ${{ secrets.AWS_UPLOAD_ROLE_ARN }}
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
||||
env:
|
||||
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
||||
AZURE_SIGNING_CLIENT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID }}
|
||||
AZURE_SIGNING_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET }}
|
||||
AZURE_SIGNING_TENANT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID }}
|
||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||
SKIP_SIGNING: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID == '' && steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET == '' && steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID == '' && steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI == '' }}
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
with:
|
||||
args: -p 3 -f .goreleaser.prerelease.yml --clean --skip=validate --timeout 60m0s
|
||||
version: latest
|
||||
@@ -636,37 +562,23 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
publish_sdk:
|
||||
runs-on: ubuntu-latest
|
||||
needs: publish
|
||||
name: publish_sdk
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Checkout Scripts Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
path: ci-scripts
|
||||
repository: pulumi/scripts
|
||||
@@ -681,22 +593,22 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Download python SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: python-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -704,7 +616,7 @@ jobs:
|
||||
run: tar -zxf ${{github.workspace}}/sdk/python.tar.gz -C
|
||||
${{github.workspace}}/sdk/python
|
||||
- name: Download dotnet SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: dotnet-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -712,7 +624,7 @@ jobs:
|
||||
run: tar -zxf ${{github.workspace}}/sdk/dotnet.tar.gz -C
|
||||
${{github.workspace}}/sdk/dotnet
|
||||
- name: Download nodejs SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: nodejs-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -724,16 +636,16 @@ jobs:
|
||||
- name: Publish SDKs
|
||||
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
||||
env:
|
||||
NUGET_PUBLISH_KEY: ${{ steps.esc-secrets.outputs.NUGET_PUBLISH_KEY }}
|
||||
NODE_AUTH_TOKEN: ${{ steps.esc-secrets.outputs.NPM_TOKEN }}
|
||||
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
|
||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
PYPI_PUBLISH_ARTIFACTS: all
|
||||
PYPI_USERNAME: __token__
|
||||
PYPI_PASSWORD: ${{ steps.esc-secrets.outputs.PYPI_API_TOKEN }}
|
||||
SIGNING_KEY_ID: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY_ID }}
|
||||
SIGNING_KEY: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY }}
|
||||
SIGNING_PASSWORD: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_PASSWORD }}
|
||||
PUBLISH_REPO_USERNAME: ${{ steps.esc-secrets.outputs.OSSRH_USERNAME }}
|
||||
PUBLISH_REPO_PASSWORD: ${{ steps.esc-secrets.outputs.OSSRH_PASSWORD }}
|
||||
PYPI_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
|
||||
SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }}
|
||||
SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }}
|
||||
SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }}
|
||||
PUBLISH_REPO_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
||||
PUBLISH_REPO_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -742,12 +654,12 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
persist-credentials: false
|
||||
|
||||
22
.github/workflows/command-dispatch.yml
vendored
22
.github/workflows/command-dispatch.yml
vendored
@@ -2,10 +2,13 @@
|
||||
|
||||
env:
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
AWS_REGION: us-west-2
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
@@ -14,28 +17,15 @@ env:
|
||||
GOOGLE_REGION: us-central1
|
||||
GOOGLE_ZONE: us-central1-a
|
||||
PULUMI_API: https://api.pulumi-staging.io
|
||||
|
||||
jobs:
|
||||
command-dispatch-for-testing:
|
||||
name: command-dispatch-for-testing
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
persist-credentials: false
|
||||
- uses: peter-evans/slash-command-dispatch@13bc09769d122a64f75aa5037256f6f2d78be8c4 # v4
|
||||
with:
|
||||
commands: |
|
||||
@@ -45,7 +35,7 @@ jobs:
|
||||
permission: write
|
||||
reaction-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
repository: pulumi/pulumi-docker-build
|
||||
token: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
token: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
name: command-dispatch
|
||||
on:
|
||||
issue_comment:
|
||||
|
||||
@@ -9,7 +9,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
name: Stale issue job
|
||||
steps:
|
||||
- uses: aws-actions/stale-issue-cleanup@5650b49bcd757a078f6ca06c373d7807b773f9bc # v7.1.0
|
||||
- uses: aws-actions/stale-issue-cleanup@5650b49bcd757a078f6ca06c373d7807b773f9bc #v7.1.0
|
||||
with:
|
||||
issue-types: issues # only look at issues (ignore pull-requests)
|
||||
|
||||
|
||||
4
.github/workflows/community-moderation.yml
vendored
4
.github/workflows/community-moderation.yml
vendored
@@ -1,12 +1,14 @@
|
||||
# WARNING: This file is autogenerated - changes will be overwritten when regenerated by https://github.com/pulumi/ci-mgmt
|
||||
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
jobs:
|
||||
warn_codegen:
|
||||
name: warn_codegen
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
- id: schema_changed
|
||||
|
||||
25
.github/workflows/export-repo-secrets.yml
vendored
25
.github/workflows/export-repo-secrets.yml
vendored
@@ -1,25 +0,0 @@
|
||||
permissions: write-all # Equivalent to default permissions plus id-token: write
|
||||
name: Export secrets to ESC
|
||||
on: [workflow_dispatch]
|
||||
jobs:
|
||||
export-to-esc:
|
||||
runs-on: ubuntu-latest
|
||||
name: export GitHub secrets to ESC
|
||||
steps:
|
||||
- name: Generate a GitHub token
|
||||
id: generate-token
|
||||
uses: actions/create-github-app-token@v1
|
||||
with:
|
||||
app-id: 1256780 # Export Secrets GitHub App
|
||||
private-key: ${{ secrets.EXPORT_SECRETS_PRIVATE_KEY }}
|
||||
- name: Export secrets to ESC
|
||||
uses: pulumi/esc-export-secrets-action@9d6485759b6adff2538ae91f1b77cc96265c9dad # v1
|
||||
with:
|
||||
organization: pulumi
|
||||
org-environment: imports/github-secrets
|
||||
exclude-secrets: EXPORT_SECRETS_PRIVATE_KEY
|
||||
github-token: ${{ steps.generate-token.outputs.token }}
|
||||
oidc-auth: true
|
||||
oidc-requested-token-type: urn:pulumi:token-type:access_token:organization
|
||||
env:
|
||||
GITHUB_SECRETS: ${{ toJSON(secrets) }}
|
||||
245
.github/workflows/prerelease.yml
vendored
245
.github/workflows/prerelease.yml
vendored
@@ -6,6 +6,14 @@ on:
|
||||
tags:
|
||||
- v*.*.*-**
|
||||
env:
|
||||
AZURE_SIGNING_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
|
||||
AZURE_SIGNING_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
|
||||
AZURE_SIGNING_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
|
||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ secrets.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||
SKIP_SIGNING: ${{ secrets.AZURE_SIGNING_CLIENT_ID == '' &&
|
||||
secrets.AZURE_SIGNING_CLIENT_SECRET == '' && secrets.AZURE_SIGNING_TENANT_ID
|
||||
== '' && secrets.AZURE_SIGNING_KEY_VAULT_URI == '' }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
PROVIDER: docker-build
|
||||
PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget
|
||||
TRAVIS_OS_NAME: linux
|
||||
@@ -16,10 +24,13 @@ env:
|
||||
DOTNETVERSION: "8.0.x"
|
||||
JAVAVERSION: "11"
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
AWS_REGION: us-west-2
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
@@ -29,32 +40,20 @@ env:
|
||||
GOOGLE_ZONE: us-central1-a
|
||||
PULUMI_API: https://api.pulumi-staging.io
|
||||
IS_PRERELEASE: true
|
||||
|
||||
jobs:
|
||||
prerequisites:
|
||||
runs-on: ubuntu-latest
|
||||
name: prerequisites
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -65,7 +64,7 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- if: github.event_name == 'pull_request'
|
||||
name: Install Schema Tools
|
||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||
@@ -86,7 +85,7 @@ jobs:
|
||||
echo 'EOF';
|
||||
} >> "$GITHUB_ENV"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
||||
name: Comment on PR with Details of Schema Check
|
||||
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
||||
@@ -116,7 +115,6 @@ jobs:
|
||||
sdk/go/**/pulumiUtilities.go
|
||||
sdk/nodejs/package.json
|
||||
sdk/python/pyproject.toml
|
||||
sdk/java/build.gradle
|
||||
- name: Commit SDK changes for Renovate
|
||||
if: failure() && steps.worktreeClean.outcome == 'failure' &&
|
||||
contains(github.actor, 'renovate') && github.event_name ==
|
||||
@@ -162,7 +160,7 @@ jobs:
|
||||
|
||||
# workflow. https://github.com/orgs/community/discussions/25702
|
||||
|
||||
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
env:
|
||||
HEAD_REF: ${{ github.head_ref }}
|
||||
- run: git status --porcelain
|
||||
@@ -177,15 +175,10 @@ jobs:
|
||||
path: ${{ github.workspace }}/bin/provider.tar.gz
|
||||
- name: Test Provider Library
|
||||
run: make test_provider
|
||||
env:
|
||||
ARM_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.ARM_CLIENT_SECRET }}
|
||||
DIGITALOCEAN_TOKEN: ${{ steps.esc-secrets.outputs.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ steps.esc-secrets.outputs.DOCKER_HUB_PASSWORD }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Upload coverage reports to Codecov
|
||||
uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
|
||||
uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # v5.4.3
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -194,7 +187,7 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
build_sdks:
|
||||
needs: prerequisites
|
||||
runs-on: pulumi-ubuntu-8core
|
||||
@@ -208,30 +201,16 @@ jobs:
|
||||
- go
|
||||
- java
|
||||
name: build_sdks
|
||||
permissions:
|
||||
pull-requests: write # For Renovate SDK updates.
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -242,32 +221,32 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download provider
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: pulumi-${{ env.PROVIDER }}-provider.tar.gz
|
||||
path: ${{ github.workspace }}/bin
|
||||
@@ -292,7 +271,6 @@ jobs:
|
||||
sdk/go/**/pulumiUtilities.go
|
||||
sdk/nodejs/package.json
|
||||
sdk/python/pyproject.toml
|
||||
sdk/java/build.gradle
|
||||
- name: Commit ${{ matrix.language }} SDK changes for Renovate
|
||||
if: failure() && steps.worktreeClean.outcome == 'failure' &&
|
||||
contains(github.actor, 'renovate') && github.event_name ==
|
||||
@@ -338,7 +316,7 @@ jobs:
|
||||
|
||||
# workflow. https://github.com/orgs/community/discussions/25702
|
||||
|
||||
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
env:
|
||||
HEAD_REF: ${{ github.head_ref }}
|
||||
- run: git status --porcelain
|
||||
@@ -357,7 +335,7 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
test:
|
||||
runs-on: pulumi-ubuntu-8core
|
||||
needs:
|
||||
@@ -375,28 +353,17 @@ jobs:
|
||||
name: test
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets and Pulumi access token OIDC.
|
||||
id-token: write
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -407,32 +374,32 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download provider
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: pulumi-${{ env.PROVIDER }}-provider.tar.gz
|
||||
path: ${{ github.workspace }}/bin
|
||||
@@ -444,7 +411,7 @@ jobs:
|
||||
-exec chmod +x {} \;
|
||||
- name: Download SDK
|
||||
if: ${{ matrix.language != 'yaml' }}
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: ${{ matrix.language }}-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -478,7 +445,7 @@ jobs:
|
||||
with:
|
||||
environment: logins/pulumi-ci
|
||||
- name: Authenticate to Google Cloud
|
||||
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093 # v3.0.0
|
||||
uses: google-github-actions/auth@b7593ed2efd1c1617e1b0254da33b86225adb2a5 # v2.1.12
|
||||
with:
|
||||
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
||||
}}/locations/global/workloadIdentityPools/${{
|
||||
@@ -486,7 +453,7 @@ jobs:
|
||||
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
||||
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
||||
- name: Setup gcloud auth
|
||||
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db # v3.0.1
|
||||
uses: google-github-actions/setup-gcloud@77e7a554d41e2ee56fc945c52dfd3f33d12def9a # v2.1.4
|
||||
with:
|
||||
install_components: gke-gcloud-auth-plugin
|
||||
- name: Install gotestfmt
|
||||
@@ -499,8 +466,6 @@ jobs:
|
||||
set -euo pipefail
|
||||
|
||||
cd examples && go test -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 .
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -509,35 +474,21 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
needs: test
|
||||
name: publish
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -557,27 +508,21 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Configure AWS Credentials
|
||||
uses: aws-actions/configure-aws-credentials@00943011d9042930efac3dcd3a170e4273319bc8 # v5.1.0
|
||||
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
|
||||
with:
|
||||
aws-access-key-id: ${{ steps.esc-secrets.outputs.AWS_ACCESS_KEY_ID }}
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-region: us-east-2
|
||||
aws-secret-access-key: ${{ steps.esc-secrets.outputs.AWS_SECRET_ACCESS_KEY }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
role-duration-seconds: 7200
|
||||
role-session-name: ${{ env.PROVIDER }}@githubActions
|
||||
role-external-id: upload-pulumi-release
|
||||
role-to-assume: ${{ steps.esc-secrets.outputs.AWS_UPLOAD_ROLE_ARN }}
|
||||
role-to-assume: ${{ secrets.AWS_UPLOAD_ROLE_ARN }}
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
||||
env:
|
||||
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
||||
AZURE_SIGNING_CLIENT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID }}
|
||||
AZURE_SIGNING_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET }}
|
||||
AZURE_SIGNING_TENANT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID }}
|
||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||
SKIP_SIGNING: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID == '' && steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET == '' && steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID == '' && steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI == '' }}
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
with:
|
||||
args: -p 3 -f .goreleaser.prerelease.yml --clean --skip=validate --timeout 60m0s
|
||||
version: latest
|
||||
@@ -589,37 +534,23 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
publish_sdk:
|
||||
runs-on: ubuntu-latest
|
||||
needs: publish
|
||||
name: publish_sdk
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Checkout Scripts Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
path: ci-scripts
|
||||
repository: pulumi/scripts
|
||||
@@ -634,22 +565,22 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Download python SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: python-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -657,7 +588,7 @@ jobs:
|
||||
run: tar -zxf ${{github.workspace}}/sdk/python.tar.gz -C
|
||||
${{github.workspace}}/sdk/python
|
||||
- name: Download dotnet SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: dotnet-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -665,7 +596,7 @@ jobs:
|
||||
run: tar -zxf ${{github.workspace}}/sdk/dotnet.tar.gz -C
|
||||
${{github.workspace}}/sdk/dotnet
|
||||
- name: Download nodejs SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: nodejs-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -677,11 +608,11 @@ jobs:
|
||||
- name: Publish SDKs
|
||||
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
||||
env:
|
||||
NUGET_PUBLISH_KEY: ${{ steps.esc-secrets.outputs.NUGET_PUBLISH_KEY }}
|
||||
NODE_AUTH_TOKEN: ${{ steps.esc-secrets.outputs.NPM_TOKEN }}
|
||||
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
|
||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
PYPI_PUBLISH_ARTIFACTS: all
|
||||
PYPI_USERNAME: __token__
|
||||
PYPI_PASSWORD: ${{ steps.esc-secrets.outputs.PYPI_API_TOKEN }}
|
||||
PYPI_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -690,36 +621,22 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
publish_java_sdk:
|
||||
runs-on: ubuntu-latest
|
||||
continue-on-error: true
|
||||
needs: publish
|
||||
name: publish_java_sdk
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -730,19 +647,19 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download java SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: java-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -750,25 +667,25 @@ jobs:
|
||||
run: tar -zxf ${{github.workspace}}/sdk/java.tar.gz -C
|
||||
${{github.workspace}}/sdk/java
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Publish Java SDK
|
||||
run: gradle -p ./sdk/java publishToSonatype closeAndReleaseSonatypeStagingRepository
|
||||
env:
|
||||
PACKAGE_VERSION: ${{ env.PROVIDER_VERSION }}
|
||||
SIGNING_KEY_ID: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY_ID }}
|
||||
SIGNING_KEY: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY }}
|
||||
SIGNING_PASSWORD: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_PASSWORD }}
|
||||
PUBLISH_REPO_PASSWORD: ${{ steps.esc-secrets.outputs.OSSRH_PASSWORD }}
|
||||
PUBLISH_REPO_USERNAME: ${{ steps.esc-secrets.outputs.OSSRH_USERNAME }}
|
||||
SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }}
|
||||
SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }}
|
||||
SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }}
|
||||
PUBLISH_REPO_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
||||
PUBLISH_REPO_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
||||
publish_go_sdk:
|
||||
runs-on: ubuntu-latest
|
||||
name: publish-go-sdk
|
||||
needs: publish_sdk
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- id: version
|
||||
@@ -776,10 +693,8 @@ jobs:
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Download go SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: go-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
|
||||
31
.github/workflows/pull-request.yml
vendored
31
.github/workflows/pull-request.yml
vendored
@@ -3,14 +3,41 @@
|
||||
name: pull-request
|
||||
on:
|
||||
pull_request_target: {}
|
||||
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
PROVIDER: docker-build
|
||||
PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget
|
||||
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
|
||||
TRAVIS_OS_NAME: linux
|
||||
PULUMI_GO_DEP_ROOT: ${{ github.workspace }}/..
|
||||
GOVERSION: "1.21.x"
|
||||
NODEVERSION: "20.x"
|
||||
PYTHONVERSION: "3.11.8"
|
||||
DOTNETVERSION: "8.0.x"
|
||||
JAVAVERSION: "11"
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
AWS_REGION: us-west-2
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
GOOGLE_PROJECT: pulumi-ci-gcp-provider
|
||||
GOOGLE_PROJECT_NUMBER: "895284651812"
|
||||
GOOGLE_REGION: us-central1
|
||||
GOOGLE_ZONE: us-central1-a
|
||||
PULUMI_API: https://api.pulumi-staging.io
|
||||
jobs:
|
||||
comment-on-pr:
|
||||
runs-on: ubuntu-latest
|
||||
name: comment-on-pr
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- name: Comment PR
|
||||
|
||||
266
.github/workflows/release.yml
vendored
266
.github/workflows/release.yml
vendored
@@ -7,6 +7,14 @@ on:
|
||||
- v*.*.*
|
||||
- "!v*.*.*-**"
|
||||
env:
|
||||
AZURE_SIGNING_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
|
||||
AZURE_SIGNING_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
|
||||
AZURE_SIGNING_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
|
||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ secrets.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||
SKIP_SIGNING: ${{ secrets.AZURE_SIGNING_CLIENT_ID == '' &&
|
||||
secrets.AZURE_SIGNING_CLIENT_SECRET == '' && secrets.AZURE_SIGNING_TENANT_ID
|
||||
== '' && secrets.AZURE_SIGNING_KEY_VAULT_URI == '' }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
PROVIDER: docker-build
|
||||
PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget
|
||||
TRAVIS_OS_NAME: linux
|
||||
@@ -17,10 +25,13 @@ env:
|
||||
DOTNETVERSION: "8.0.x"
|
||||
JAVAVERSION: "11"
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
AWS_REGION: us-west-2
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
@@ -29,35 +40,20 @@ env:
|
||||
GOOGLE_REGION: us-central1
|
||||
GOOGLE_ZONE: us-central1-a
|
||||
PULUMI_API: https://api.pulumi-staging.io
|
||||
|
||||
jobs:
|
||||
prerequisites:
|
||||
runs-on: ubuntu-latest
|
||||
name: prerequisites
|
||||
permissions:
|
||||
id-token: write # For ESC secrets.
|
||||
pull-requests: write # For schema check comment.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -68,7 +64,7 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- if: github.event_name == 'pull_request'
|
||||
name: Install Schema Tools
|
||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||
@@ -89,7 +85,7 @@ jobs:
|
||||
echo 'EOF';
|
||||
} >> "$GITHUB_ENV"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
||||
name: Comment on PR with Details of Schema Check
|
||||
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
||||
@@ -119,7 +115,6 @@ jobs:
|
||||
sdk/go/**/pulumiUtilities.go
|
||||
sdk/nodejs/package.json
|
||||
sdk/python/pyproject.toml
|
||||
sdk/java/build.gradle
|
||||
- name: Commit SDK changes for Renovate
|
||||
if: failure() && steps.worktreeClean.outcome == 'failure' &&
|
||||
contains(github.actor, 'renovate') && github.event_name ==
|
||||
@@ -165,7 +160,7 @@ jobs:
|
||||
|
||||
# workflow. https://github.com/orgs/community/discussions/25702
|
||||
|
||||
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
env:
|
||||
HEAD_REF: ${{ github.head_ref }}
|
||||
- run: git status --porcelain
|
||||
@@ -180,15 +175,10 @@ jobs:
|
||||
path: ${{ github.workspace }}/bin/provider.tar.gz
|
||||
- name: Test Provider Library
|
||||
run: make test_provider
|
||||
env:
|
||||
ARM_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.ARM_CLIENT_SECRET }}
|
||||
DIGITALOCEAN_TOKEN: ${{ steps.esc-secrets.outputs.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ steps.esc-secrets.outputs.DOCKER_HUB_PASSWORD }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Upload coverage reports to Codecov
|
||||
uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
|
||||
uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # v5.4.3
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -197,7 +187,7 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
build_sdks:
|
||||
needs: prerequisites
|
||||
runs-on: pulumi-ubuntu-8core
|
||||
@@ -211,30 +201,16 @@ jobs:
|
||||
- go
|
||||
- java
|
||||
name: build_sdks
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -245,32 +221,32 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download provider
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: pulumi-${{ env.PROVIDER }}-provider.tar.gz
|
||||
path: ${{ github.workspace }}/bin
|
||||
@@ -295,7 +271,6 @@ jobs:
|
||||
sdk/go/**/pulumiUtilities.go
|
||||
sdk/nodejs/package.json
|
||||
sdk/python/pyproject.toml
|
||||
sdk/java/build.gradle
|
||||
- name: Commit SDK changes for Renovate
|
||||
if: failure() && steps.worktreeClean.outcome == 'failure' &&
|
||||
contains(github.actor, 'renovate') && github.event_name ==
|
||||
@@ -341,7 +316,7 @@ jobs:
|
||||
|
||||
# workflow. https://github.com/orgs/community/discussions/25702
|
||||
|
||||
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
env:
|
||||
HEAD_REF: ${{ github.head_ref }}
|
||||
- run: git status --porcelain
|
||||
@@ -360,7 +335,7 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
test:
|
||||
runs-on: pulumi-ubuntu-8core
|
||||
needs:
|
||||
@@ -378,28 +353,17 @@ jobs:
|
||||
name: test
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
id-token: write
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -410,32 +374,32 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download provider
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: pulumi-${{ env.PROVIDER }}-provider.tar.gz
|
||||
path: ${{ github.workspace }}/bin
|
||||
@@ -447,7 +411,7 @@ jobs:
|
||||
-exec chmod +x {} \;
|
||||
- name: Download SDK
|
||||
if: ${{ matrix.language != 'yaml' }}
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: ${{ matrix.language }}-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -481,7 +445,7 @@ jobs:
|
||||
with:
|
||||
environment: logins/pulumi-ci
|
||||
- name: Authenticate to Google Cloud
|
||||
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093 # v3.0.0
|
||||
uses: google-github-actions/auth@b7593ed2efd1c1617e1b0254da33b86225adb2a5 # v2.1.12
|
||||
with:
|
||||
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
||||
}}/locations/global/workloadIdentityPools/${{
|
||||
@@ -489,7 +453,7 @@ jobs:
|
||||
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
||||
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
||||
- name: Setup gcloud auth
|
||||
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db # v3.0.1
|
||||
uses: google-github-actions/setup-gcloud@77e7a554d41e2ee56fc945c52dfd3f33d12def9a # v2.1.4
|
||||
with:
|
||||
install_components: gke-gcloud-auth-plugin
|
||||
- name: Install gotestfmt
|
||||
@@ -502,8 +466,6 @@ jobs:
|
||||
set -euo pipefail
|
||||
|
||||
cd examples && go test -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 .
|
||||
env:
|
||||
GTIHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -512,35 +474,21 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
needs: test
|
||||
name: publish
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -560,27 +508,21 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Configure AWS Credentials
|
||||
uses: aws-actions/configure-aws-credentials@00943011d9042930efac3dcd3a170e4273319bc8 # v5.1.0
|
||||
uses: aws-actions/configure-aws-credentials@b47578312673ae6fa5b5096b330d9fbac3d116df # v4.2.1
|
||||
with:
|
||||
aws-access-key-id: ${{ steps.esc-secrets.outputs.AWS_ACCESS_KEY_ID }}
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-region: us-east-2
|
||||
aws-secret-access-key: ${{ steps.esc-secrets.outputs.AWS_SECRET_ACCESS_KEY }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
role-duration-seconds: 7200
|
||||
role-session-name: ${{ env.PROVIDER }}@githubActions
|
||||
role-external-id: upload-pulumi-release
|
||||
role-to-assume: ${{ steps.esc-secrets.outputs.AWS_UPLOAD_ROLE_ARN }}
|
||||
role-to-assume: ${{ secrets.AWS_UPLOAD_ROLE_ARN }}
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
||||
env:
|
||||
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
||||
AZURE_SIGNING_CLIENT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID }}
|
||||
AZURE_SIGNING_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET }}
|
||||
AZURE_SIGNING_TENANT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID }}
|
||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||
SKIP_SIGNING: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID == '' && steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET == '' && steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID == '' && steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI == '' }}
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
with:
|
||||
args: -p 3 release --clean --timeout 60m0s
|
||||
version: latest
|
||||
@@ -592,37 +534,23 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
publish_sdk:
|
||||
runs-on: ubuntu-latest
|
||||
needs: publish
|
||||
name: publish_sdks
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Checkout Scripts Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
path: ci-scripts
|
||||
repository: pulumi/scripts
|
||||
@@ -637,22 +565,22 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Download python SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: python-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -660,7 +588,7 @@ jobs:
|
||||
run: tar -zxf ${{github.workspace}}/sdk/python.tar.gz -C
|
||||
${{github.workspace}}/sdk/python
|
||||
- name: Download dotnet SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: dotnet-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -668,7 +596,7 @@ jobs:
|
||||
run: tar -zxf ${{github.workspace}}/sdk/dotnet.tar.gz -C
|
||||
${{github.workspace}}/sdk/dotnet
|
||||
- name: Download nodejs SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: nodejs-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -680,11 +608,11 @@ jobs:
|
||||
- name: Publish SDKs
|
||||
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
||||
env:
|
||||
NUGET_PUBLISH_KEY: ${{ steps.esc-secrets.outputs.NUGET_PUBLISH_KEY }}
|
||||
NODE_AUTH_TOKEN: ${{ steps.esc-secrets.outputs.NPM_TOKEN }}
|
||||
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
|
||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
PYPI_PUBLISH_ARTIFACTS: all
|
||||
PYPI_USERNAME: __token__
|
||||
PYPI_PASSWORD: ${{ steps.esc-secrets.outputs.PYPI_API_TOKEN }}
|
||||
PYPI_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -693,36 +621,22 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
publish_java_sdk:
|
||||
runs-on: ubuntu-latest
|
||||
continue-on-error: true
|
||||
needs: publish
|
||||
name: publish_java_sdk
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -733,19 +647,19 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download java SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: java-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -753,25 +667,25 @@ jobs:
|
||||
run: tar -zxf ${{github.workspace}}/sdk/java.tar.gz -C
|
||||
${{github.workspace}}/sdk/java
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Publish Java SDK
|
||||
run: gradle -p ./sdk/java publishToSonatype closeAndReleaseSonatypeStagingRepository
|
||||
env:
|
||||
PACKAGE_VERSION: ${{ env.PROVIDER_VERSION }}
|
||||
SIGNING_KEY_ID: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY_ID }}
|
||||
SIGNING_KEY: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY }}
|
||||
SIGNING_PASSWORD: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_PASSWORD }}
|
||||
PUBLISH_REPO_PASSWORD: ${{ steps.esc-secrets.outputs.OSSRH_PASSWORD }}
|
||||
PUBLISH_REPO_USERNAME: ${{ steps.esc-secrets.outputs.OSSRH_USERNAME }}
|
||||
SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }}
|
||||
SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }}
|
||||
SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }}
|
||||
PUBLISH_REPO_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
||||
PUBLISH_REPO_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
||||
publish_go_sdk:
|
||||
runs-on: ubuntu-latest
|
||||
name: publish-go-sdk
|
||||
needs: publish_sdk
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- id: version
|
||||
@@ -779,10 +693,8 @@ jobs:
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Download go SDK
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: go-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -802,23 +714,7 @@ jobs:
|
||||
dispatch_docs_build:
|
||||
runs-on: ubuntu-latest
|
||||
needs: publish_go_sdk
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
- name: Install pulumictl
|
||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||
with:
|
||||
@@ -827,5 +723,5 @@ jobs:
|
||||
run: pulumictl create docs-build pulumi-${{ env.PROVIDER }}
|
||||
"${GITHUB_REF#refs/tags/}"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
name: dispatch_docs_build
|
||||
|
||||
23
.github/workflows/release_command.yml
vendored
23
.github/workflows/release_command.yml
vendored
@@ -11,18 +11,9 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
persist-credentials: false
|
||||
- name: Should release PR
|
||||
uses: pulumi/action-release-by-pr-label@main
|
||||
with:
|
||||
@@ -30,14 +21,14 @@ jobs:
|
||||
repo: ${{ github.repository }}
|
||||
pr: ${{ github.event.client_payload.pull_request.number }}
|
||||
version: ${{ github.event.client_payload.slash_command.args.all }}
|
||||
slack_channel: ${{ steps.esc-secrets.outputs.RELEASE_OPS_STAGING_SLACK_CHANNEL }}
|
||||
slack_channel: ${{ secrets.RELEASE_OPS_STAGING_SLACK_CHANNEL }}
|
||||
env:
|
||||
RELEASE_BOT_ENDPOINT: ${{ steps.esc-secrets.outputs.RELEASE_BOT_ENDPOINT }}
|
||||
RELEASE_BOT_KEY: ${{ steps.esc-secrets.outputs.RELEASE_BOT_KEY }}
|
||||
RELEASE_BOT_ENDPOINT: ${{ secrets.RELEASE_BOT_ENDPOINT }}
|
||||
RELEASE_BOT_KEY: ${{ secrets.RELEASE_BOT_KEY }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- if: failure()
|
||||
name: Notify failure
|
||||
uses: peter-evans/create-or-update-comment@e8674b075228eee787fea43ef493e45ece1004c9 # v5.0.0
|
||||
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
repository: ${{ github.event.client_payload.github.payload.repository.full_name }}
|
||||
@@ -46,7 +37,7 @@ jobs:
|
||||
"release command failed: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
|
||||
- if: success()
|
||||
name: Notify success
|
||||
uses: peter-evans/create-or-update-comment@e8674b075228eee787fea43ef493e45ece1004c9 # v5.0.0
|
||||
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
repository: ${{ github.event.client_payload.github.payload.repository.full_name }}
|
||||
|
||||
146
.github/workflows/run-acceptance-tests.yml
vendored
146
.github/workflows/run-acceptance-tests.yml
vendored
@@ -10,6 +10,7 @@ on:
|
||||
- CHANGELOG.md
|
||||
workflow_dispatch: {}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
PROVIDER: docker-build
|
||||
PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget
|
||||
TRAVIS_OS_NAME: linux
|
||||
@@ -20,10 +21,13 @@ env:
|
||||
DOTNETVERSION: "8.0.x"
|
||||
JAVAVERSION: "11"
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
AWS_REGION: us-west-2
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
@@ -35,57 +39,37 @@ env:
|
||||
PR_COMMIT_SHA: ${{ github.event.client_payload.pull_request.head.sha }}
|
||||
jobs:
|
||||
comment-notification:
|
||||
if: github.event_name == 'repository_dispatch'
|
||||
runs-on: ubuntu-latest
|
||||
name: comment-notification
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
with:
|
||||
lfs: true
|
||||
persist-credentials: false
|
||||
ref: ${{ env.PR_COMMIT_SHA }}
|
||||
- name: Create URL to the run output
|
||||
id: vars
|
||||
run: echo
|
||||
"run-url=https://github.com/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID"
|
||||
>> "$GITHUB_OUTPUT"
|
||||
- name: Update with Result
|
||||
uses: peter-evans/create-or-update-comment@e8674b075228eee787fea43ef493e45ece1004c9 # v5.0.0
|
||||
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
|
||||
with:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
token: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
repository: ${{ github.event.client_payload.github.payload.repository.full_name }}
|
||||
issue-number: ${{ github.event.client_payload.github.payload.issue.number }}
|
||||
body: "Please view the PR build: ${{ steps.vars.outputs.run-url }}"
|
||||
if: github.event_name == 'repository_dispatch'
|
||||
prerequisites:
|
||||
runs-on: ubuntu-latest
|
||||
name: prerequisites
|
||||
permissions:
|
||||
id-token: write # For ESC secrets.
|
||||
pull-requests: write # For schema check comment.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
persist-credentials: false
|
||||
ref: ${{ env.PR_COMMIT_SHA }}
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
ref: ${{ env.PR_COMMIT_SHA }}
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -96,7 +80,7 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- if: github.event_name == 'pull_request'
|
||||
name: Install Schema Tools
|
||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||
@@ -117,7 +101,7 @@ jobs:
|
||||
echo 'EOF';
|
||||
} >> "$GITHUB_ENV"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
||||
name: Comment on PR with Details of Schema Check
|
||||
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
||||
@@ -147,7 +131,6 @@ jobs:
|
||||
sdk/go/**/pulumiUtilities.go
|
||||
sdk/nodejs/package.json
|
||||
sdk/python/pyproject.toml
|
||||
sdk/java/build.gradle
|
||||
- name: Commit SDK changes for Renovate
|
||||
if: failure() && steps.worktreeClean.outcome == 'failure' &&
|
||||
contains(github.actor, 'renovate') && github.event_name ==
|
||||
@@ -193,7 +176,7 @@ jobs:
|
||||
|
||||
# workflow. https://github.com/orgs/community/discussions/25702
|
||||
|
||||
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
env:
|
||||
HEAD_REF: ${{ github.head_ref }}
|
||||
- run: git status --porcelain
|
||||
@@ -208,15 +191,10 @@ jobs:
|
||||
path: ${{ github.workspace }}/bin/provider.tar.gz
|
||||
- name: Test Provider Library
|
||||
run: make test_provider
|
||||
env:
|
||||
ARM_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.ARM_CLIENT_SECRET }}
|
||||
DIGITALOCEAN_TOKEN: ${{ steps.esc-secrets.outputs.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ steps.esc-secrets.outputs.DOCKER_HUB_PASSWORD }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Upload coverage reports to Codecov
|
||||
uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # v5.5.1
|
||||
uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 # v5.4.3
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -225,7 +203,7 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
if: github.event_name == 'repository_dispatch' ||
|
||||
github.event.pull_request.head.repo.full_name == github.repository
|
||||
build_sdks:
|
||||
@@ -241,32 +219,18 @@ jobs:
|
||||
- go
|
||||
- java
|
||||
name: build_sdks
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write # For ESC secrets.
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
persist-credentials: false
|
||||
ref: ${{ env.PR_COMMIT_SHA }}
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
ref: ${{ env.PR_COMMIT_SHA }}
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -277,32 +241,32 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download provider
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: pulumi-${{ env.PROVIDER }}-provider.tar.gz
|
||||
path: ${{ github.workspace }}/bin
|
||||
@@ -327,7 +291,6 @@ jobs:
|
||||
sdk/go/**/pulumiUtilities.go
|
||||
sdk/nodejs/package.json
|
||||
sdk/python/pyproject.toml
|
||||
sdk/java/build.gradle
|
||||
- name: Commit SDK changes for Renovate
|
||||
if: failure() && steps.worktreeClean.outcome == 'failure' &&
|
||||
contains(github.actor, 'renovate') && github.event_name ==
|
||||
@@ -372,7 +335,7 @@ jobs:
|
||||
|
||||
# workflow. https://github.com/orgs/community/discussions/25702
|
||||
|
||||
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||
env:
|
||||
HEAD_REF: ${{ github.head_ref }}
|
||||
- run: git status --porcelain
|
||||
@@ -392,7 +355,7 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
if: github.event_name == 'repository_dispatch' ||
|
||||
github.event.pull_request.head.repo.full_name == github.repository
|
||||
test:
|
||||
@@ -415,27 +378,16 @@ jobs:
|
||||
id-token: write
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
persist-credentials: false
|
||||
ref: ${{ env.PR_COMMIT_SHA }}
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
ref: ${{ env.PR_COMMIT_SHA }}
|
||||
- id: version
|
||||
name: Set Provider Version
|
||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||
with:
|
||||
set-env: PROVIDER_VERSION
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -446,32 +398,32 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Download provider
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: pulumi-${{ env.PROVIDER }}-provider.tar.gz
|
||||
path: ${{ github.workspace }}/bin
|
||||
@@ -483,7 +435,7 @@ jobs:
|
||||
-exec chmod +x {} \;
|
||||
- name: Download SDK
|
||||
if: ${{ matrix.language != 'yaml' }}
|
||||
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
|
||||
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
||||
with:
|
||||
name: ${{ matrix.language }}-sdk.tar.gz
|
||||
path: ${{ github.workspace}}/sdk/
|
||||
@@ -517,7 +469,7 @@ jobs:
|
||||
with:
|
||||
environment: logins/pulumi-ci
|
||||
- name: Authenticate to Google Cloud
|
||||
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093 # v3.0.0
|
||||
uses: google-github-actions/auth@b7593ed2efd1c1617e1b0254da33b86225adb2a5 # v2.1.12
|
||||
with:
|
||||
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
||||
}}/locations/global/workloadIdentityPools/${{
|
||||
@@ -525,7 +477,7 @@ jobs:
|
||||
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
||||
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
||||
- name: Setup gcloud auth
|
||||
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db # v3.0.1
|
||||
uses: google-github-actions/setup-gcloud@77e7a554d41e2ee56fc945c52dfd3f33d12def9a # v2.1.4
|
||||
with:
|
||||
install_components: gke-gcloud-auth-plugin
|
||||
- name: Install gotestfmt
|
||||
@@ -538,8 +490,6 @@ jobs:
|
||||
set -euo pipefail
|
||||
|
||||
cd examples && go test -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 .
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
- if: failure() && github.event_name == 'push'
|
||||
name: Notify Slack
|
||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||
@@ -548,28 +498,13 @@ jobs:
|
||||
fields: repo,commit,author,action
|
||||
status: ${{ job.status }}
|
||||
env:
|
||||
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
||||
if: github.event_name == 'repository_dispatch' ||
|
||||
github.event.pull_request.head.repo.full_name == github.repository
|
||||
sentinel:
|
||||
runs-on: ubuntu-latest
|
||||
name: sentinel
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
with:
|
||||
lfs: true
|
||||
persist-credentials: false
|
||||
ref: ${{ env.PR_COMMIT_SHA }}
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
- name: Mark workflow as successful
|
||||
uses: guibranco/github-status-action-v2@0849440ec82c5fa69b2377725b9b7852a3977e76 # v1.1.13
|
||||
with:
|
||||
@@ -580,7 +515,6 @@ jobs:
|
||||
sha: ${{ github.event.pull_request.head.sha || github.sha }}
|
||||
permissions:
|
||||
statuses: write
|
||||
id-token: write # For ESC secrets.
|
||||
if: github.event_name == 'repository_dispatch' ||
|
||||
github.event.pull_request.head.repo.full_name == github.repository
|
||||
needs:
|
||||
@@ -591,7 +525,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
persist-credentials: false
|
||||
|
||||
38
.github/workflows/weekly-pulumi-update.yml
vendored
38
.github/workflows/weekly-pulumi-update.yml
vendored
@@ -17,10 +17,13 @@ env:
|
||||
DOTNETVERSION: "8.0.x"
|
||||
JAVAVERSION: "11"
|
||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||
AWS_REGION: us-west-2
|
||||
AZURE_LOCATION: westus
|
||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||
@@ -29,25 +32,14 @@ env:
|
||||
GOOGLE_REGION: us-central1
|
||||
GOOGLE_ZONE: us-central1-a
|
||||
PULUMI_API: https://api.pulumi-staging.io
|
||||
|
||||
jobs:
|
||||
weekly-pulumi-update:
|
||||
runs-on: ubuntu-latest
|
||||
permissions: write-all
|
||||
steps:
|
||||
- name: Checkout Repo
|
||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
lfs: true
|
||||
- env:
|
||||
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
|
||||
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
|
||||
ESC_ACTION_OIDC_AUTH: "true"
|
||||
ESC_ACTION_OIDC_ORGANIZATION: pulumi
|
||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||
id: esc-secrets
|
||||
name: Fetch secrets from ESC
|
||||
uses: pulumi/esc-action@9eb774255b1a4afb7855678ae8d4a77359da0d9b
|
||||
lfs: true
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
@@ -58,30 +50,20 @@ jobs:
|
||||
with:
|
||||
repo: pulumi/pulumictl
|
||||
- name: Install Pulumi CLI
|
||||
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
||||
- name: Setup DotNet
|
||||
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
||||
with:
|
||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||
- name: Setup Node
|
||||
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version: ${{ env.NODEVERSION }}
|
||||
registry-url: https://registry.npmjs.org
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
||||
with:
|
||||
python-version: ${{ env.PYTHONVERSION }}
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||
with:
|
||||
java-version: ${{ env.JAVAVERSION }}
|
||||
distribution: temurin
|
||||
cache: gradle
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5.0.0
|
||||
with:
|
||||
gradle-version: "7.6"
|
||||
- name: Update Pulumi/Pulumi
|
||||
id: gomod
|
||||
run: >-
|
||||
@@ -140,5 +122,5 @@ jobs:
|
||||
|
||||
gh pr create -t "$msg" -b "$msg" --head "$(git branch --show-current)"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
||||
name: weekly-pulumi-update
|
||||
|
||||
@@ -1 +1 @@
|
||||
3.203.0
|
||||
3.187.0
|
||||
|
||||
12
CHANGELOG.md
12
CHANGELOG.md
@@ -1,21 +1,9 @@
|
||||
## Unreleased
|
||||
|
||||
## 0.0.14 (2025-09-30)
|
||||
|
||||
### Fixed
|
||||
|
||||
- A warning is no longer emitted for the reserved `__internal` key. (https://github.com/pulumi/pulumi-docker-build/issues/579)
|
||||
|
||||
## 0.0.13 (2025-08-27)
|
||||
|
||||
### Changed
|
||||
|
||||
- Docker Build Cloud and `exec` errors are more helpful. (https://github.com/pulumi/pulumi-docker-build/issues/549)
|
||||
|
||||
### Fixed
|
||||
|
||||
- The provider is no longer replaced on version changes. (https://github.com/pulumi/pulumi-docker-build/issues/581)
|
||||
|
||||
## 0.0.12 (2025-05-16)
|
||||
|
||||
### Changed
|
||||
|
||||
40
Makefile
40
Makefile
@@ -17,8 +17,8 @@ WORKING_DIR := $(shell pwd)
|
||||
EXAMPLES_DIR := ${WORKING_DIR}/examples/yaml
|
||||
TESTPARALLELISM := 4
|
||||
|
||||
PULUMI := pulumi
|
||||
GOGLANGCILINT := golangci-lint
|
||||
PULUMI := bin/pulumi
|
||||
GOGLANGCILINT := bin/golangci-lint
|
||||
|
||||
# Override during CI using `make [TARGET] PROVIDER_VERSION=""` or by setting a PROVIDER_VERSION environment variable
|
||||
# Local & branch builds will just used this fixed default version unless specified
|
||||
@@ -63,26 +63,38 @@ examples/yaml:
|
||||
rm -rf ${WORKING_DIR}/examples/yaml/app
|
||||
cp -r ${WORKING_DIR}/examples/app ${WORKING_DIR}/examples/yaml/app
|
||||
|
||||
examples/go: bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
examples/go: ${PULUMI} bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
$(call example,go)
|
||||
@git checkout examples/go/go.mod
|
||||
|
||||
examples/nodejs: bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
examples/nodejs: ${PULUMI} bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
$(call example,nodejs)
|
||||
@git checkout examples/nodejs/package.json
|
||||
|
||||
examples/python: bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
examples/python: ${PULUMI} bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
$(call example,python)
|
||||
@git checkout examples/python/requirements.txt
|
||||
|
||||
examples/dotnet: bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
examples/dotnet: ${PULUMI} bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
$(call example,dotnet)
|
||||
@git checkout examples/dotnet/provider-docker-build.csproj
|
||||
|
||||
examples/java: bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
examples/java: ${PULUMI} bin/${PROVIDER} ${WORKING_DIR}/examples/yaml/Pulumi.yaml
|
||||
$(call example,java)
|
||||
@git checkout examples/java/pom.xml
|
||||
|
||||
${PULUMI}: go.sum
|
||||
GOBIN=${WORKING_DIR}/bin go install github.com/pulumi/pulumi/pkg/v3/cmd/pulumi
|
||||
GOBIN=${WORKING_DIR}/bin go install github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3
|
||||
GOBIN=${WORKING_DIR}/bin go install github.com/pulumi/pulumi/sdk/nodejs/cmd/pulumi-language-nodejs/v3
|
||||
GOBIN=${WORKING_DIR}/bin go install github.com/pulumi/pulumi/sdk/python/cmd/pulumi-language-python/v3
|
||||
GOBIN=${WORKING_DIR}/bin go install github.com/pulumi/pulumi-java/pkg/cmd/pulumi-language-java
|
||||
GOBIN=${WORKING_DIR}/bin go install github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3
|
||||
GOBIN=${WORKING_DIR}/bin go install github.com/pulumi/pulumi-yaml/cmd/pulumi-converter-yaml
|
||||
|
||||
${GOGLANGCILINT}: go.sum
|
||||
GOBIN=${WORKING_DIR}/bin go install github.com/golangci/golangci-lint/cmd/golangci-lint@8b37f14
|
||||
|
||||
define pulumi_login
|
||||
export PULUMI_CONFIG_PASSPHRASE=asdfqwerty1234; \
|
||||
pulumi login --local;
|
||||
@@ -90,7 +102,7 @@ endef
|
||||
|
||||
define example
|
||||
rm -rf ${WORKING_DIR}/examples/$(1)
|
||||
pulumi convert \
|
||||
$(PULUMI) convert \
|
||||
--cwd ${WORKING_DIR}/examples/yaml \
|
||||
--logtostderr \
|
||||
--generate-only \
|
||||
@@ -128,7 +140,7 @@ build:: provider sdk/dotnet sdk/go sdk/nodejs sdk/python sdk/java ${SCHEMA_PATH}
|
||||
only_build:: build
|
||||
|
||||
.PHONY: lint
|
||||
lint:
|
||||
lint: ${GOGLANGCILINT}
|
||||
${GOGLANGCILINT} run --fix -c .golangci.yml
|
||||
|
||||
install:: install_nodejs_sdk install_dotnet_sdk
|
||||
@@ -193,7 +205,7 @@ sdk: sdk/python sdk/nodejs sdk/java sdk/python sdk/go sdk/dotnet
|
||||
.PHONY: sdk/*
|
||||
|
||||
sdk/python: TMPDIR := $(shell mktemp -d)
|
||||
sdk/python: bin/${PROVIDER}
|
||||
sdk/python: $(PULUMI) bin/${PROVIDER}
|
||||
rm -rf sdk/python
|
||||
$(PULUMI) package gen-sdk ./bin/$(PROVIDER) --language python -o ${TMPDIR}
|
||||
cp README.md ${TMPDIR}/python/
|
||||
@@ -206,7 +218,7 @@ sdk/python: bin/${PROVIDER}
|
||||
mv -f ${TMPDIR}/python ${WORKING_DIR}/sdk/.
|
||||
|
||||
sdk/nodejs: TMPDIR := $(shell mktemp -d)
|
||||
sdk/nodejs: bin/${PROVIDER}
|
||||
sdk/nodejs: $(PULUMI) bin/${PROVIDER}
|
||||
rm -rf sdk/nodejs
|
||||
$(PULUMI) package gen-sdk ./bin/$(PROVIDER) --language nodejs -o ${TMPDIR}
|
||||
cp README.md LICENSE ${TMPDIR}/nodejs
|
||||
@@ -218,7 +230,7 @@ sdk/nodejs: bin/${PROVIDER}
|
||||
|
||||
sdk/go: TMPDIR := $(shell mktemp -d)
|
||||
sdk/go: PATH := "$(WORKING_DIR)/bin:$(PATH)"
|
||||
sdk/go: bin/${PROVIDER}
|
||||
sdk/go: $(PULUMI) bin/${PROVIDER}
|
||||
rm -rf sdk/go
|
||||
PATH=$(PATH) $(PULUMI) package gen-sdk ./bin/$(PROVIDER) --language go -o ${TMPDIR}
|
||||
cp go.mod ${TMPDIR}/go/dockerbuild/go.mod
|
||||
@@ -228,7 +240,7 @@ sdk/go: bin/${PROVIDER}
|
||||
mv -f ${TMPDIR}/go ${WORKING_DIR}/sdk/go
|
||||
|
||||
sdk/dotnet: TMPDIR := $(shell mktemp -d)
|
||||
sdk/dotnet: bin/${PROVIDER}
|
||||
sdk/dotnet: $(PULUMI) bin/${PROVIDER}
|
||||
rm -rf sdk/dotnet
|
||||
$(PULUMI) package gen-sdk ./bin/${PROVIDER} --language dotnet -o ${TMPDIR}
|
||||
cd ${TMPDIR}/dotnet/ && \
|
||||
@@ -238,7 +250,7 @@ sdk/dotnet: bin/${PROVIDER}
|
||||
|
||||
sdk/java: PACKAGE_VERSION := $(shell pulumictl convert-version --language generic -v "$(VERSION_GENERIC)")
|
||||
sdk/java: TMPDIR := $(shell mktemp -d)
|
||||
sdk/java: bin/${PROVIDER}
|
||||
sdk/java: $(PULUMI) bin/${PROVIDER}
|
||||
rm -rf sdk/java
|
||||
$(PULUMI) package gen-sdk --language java ./bin/${PROVIDER} -o ${TMPDIR}
|
||||
cd ${TMPDIR}/java/ && gradle --console=plain build
|
||||
|
||||
428
docs/_index.md
428
docs/_index.md
@@ -1,428 +0,0 @@
|
||||
---
|
||||
title: Docker Build
|
||||
meta_desc: Provides an overview of the Docker Build Provider for Pulumi.
|
||||
layout: package
|
||||
---
|
||||
|
||||
The Docker Build provider leverages [buildx and BuildKit](https://docs.docker.com/build/architecture/) to build modern Docker images with Pulumi.
|
||||
|
||||
Not to be confused with the earlier
|
||||
[Docker](../docker) provider, which is still
|
||||
appropriate for managing resources unrelated to building images.
|
||||
|
||||
| Provider | Use cases |
|
||||
| ---------------- | ----------------------------------------------------------------------- |
|
||||
| `@pulumi/docker-build` | Anything related to building images with `docker build`. |
|
||||
| `@pulumi/docker` | Everything else -- including running containers and creating networks. |
|
||||
|
||||
## Example
|
||||
|
||||
If your Pulumi program has a directory called `app` alongside it, containing a
|
||||
file named "Dockerfile" (which can be as simple as `FROM alpine` for the
|
||||
purpose of example), then the code below shows how to build a multi-platform
|
||||
image, publish it to a remote AWS ECR registry, and use an [inline
|
||||
cache](https://docs.docker.com/build/cache/backends/inline/) to speed up
|
||||
subsequent builds.
|
||||
|
||||
{{< chooser language "typescript,python,csharp,go,yaml,java" / >}}
|
||||
|
||||
{{% choosable language typescript %}}
|
||||
|
||||
```typescript
|
||||
import * as aws from "@pulumi/aws";
|
||||
import * as docker_build from "@pulumi/docker-build";
|
||||
|
||||
// Create an ECR repository for pushing.
|
||||
const ecrRepository = new aws.ecr.Repository("ecr-repository", {});
|
||||
|
||||
// Grab auth credentials for ECR.
|
||||
const authToken = aws.ecr.getAuthorizationTokenOutput({
|
||||
registryId: ecrRepository.registryId,
|
||||
});
|
||||
|
||||
// Build and push an image to ECR with inline caching.
|
||||
const myImage = new docker_build.Image("my-image", {
|
||||
// Tag our image with our ECR repository's address.
|
||||
tags: [pulumi.interpolate`${ecrRepository.repositoryUrl}:latest`],
|
||||
context: {
|
||||
location: "./app",
|
||||
},
|
||||
// Use the pushed image as a cache source.
|
||||
cacheFrom: [{
|
||||
registry: {
|
||||
ref: pulumi.interpolate`${ecrRepository.repositoryUrl}:latest`,
|
||||
},
|
||||
}],
|
||||
// Include an inline cache with our pushed image.
|
||||
cacheTo: [{
|
||||
inline: {},
|
||||
}],
|
||||
// Build a multi-platform image manifest for ARM and AMD.
|
||||
platforms: [
|
||||
"linux/amd64",
|
||||
"linux/arm64",
|
||||
],
|
||||
// Push the final result to ECR.
|
||||
push: true,
|
||||
// Provide our ECR credentials.
|
||||
registries: [{
|
||||
address: ecrRepository.repositoryUrl,
|
||||
password: authToken.password,
|
||||
username: authToken.userName,
|
||||
}],
|
||||
});
|
||||
|
||||
// Export a ref for the pushed images so we can deploy it.
|
||||
export const ref = myImage.ref;
|
||||
```
|
||||
|
||||
{{% /choosable %}}
|
||||
|
||||
{{% choosable language python %}}
|
||||
|
||||
```python
|
||||
import pulumi
|
||||
import pulumi_aws as aws
|
||||
import pulumi_docker_build as docker_build
|
||||
|
||||
# Create an ECR repository for pushing.
|
||||
ecr_repository = aws.ecr.Repository("ecr-repository")
|
||||
|
||||
# Grab auth credentials for ECR.
|
||||
auth_token = aws.ecr.get_authorization_token_output(registry_id=ecr_repository.registry_id)
|
||||
|
||||
# Build and push an image to ECR with inline caching.
|
||||
my_image = docker_build.Image("my-image",
|
||||
# Tag our image with our ECR repository's address.
|
||||
tags=[ecr_repository.repository_url.apply(lambda repository_url: f"{repository_url}:latest")],
|
||||
context=docker_build.BuildContextArgs(
|
||||
location="./app",
|
||||
),
|
||||
# Use the pushed image as a cache source.
|
||||
cache_from=[docker_build.CacheFromArgs(
|
||||
registry=docker_build.CacheFromRegistryArgs(
|
||||
ref=ecr_repository.repository_url.apply(lambda repository_url: f"{repository_url}:latest"),
|
||||
),
|
||||
)],
|
||||
# Include an inline cache with our pushed image.
|
||||
cache_to=[docker_build.CacheToArgs(
|
||||
inline=docker_build.CacheToInlineArgs(),
|
||||
)],
|
||||
# Build a multi-platform image manifest for ARM and AMD.
|
||||
platforms=[
|
||||
docker_build.Platform.LINUX_AMD64,
|
||||
docker_build.Platform.LINUX_ARM64,
|
||||
],
|
||||
# Push the final result to ECR.
|
||||
push=True,
|
||||
# Provide our ECR credentials.
|
||||
registries=[docker_build.RegistryArgs(
|
||||
address=ecr_repository.repository_url,
|
||||
password=auth_token.password,
|
||||
username=auth_token.user_name,
|
||||
)],
|
||||
)
|
||||
|
||||
# Export a ref for the pushed images so we can deploy it.
|
||||
pulumi.export("ref", my_image.ref)
|
||||
```
|
||||
|
||||
{{% /choosable %}}
|
||||
|
||||
{{% choosable language csharp %}}
|
||||
|
||||
```csharp
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Pulumi;
|
||||
using Aws = Pulumi.Aws;
|
||||
using DockerBuild = Pulumi.DockerBuild;
|
||||
|
||||
return await Deployment.RunAsync(() =>
|
||||
{
|
||||
// Create an ECR repository for pushing.
|
||||
var ecrRepository = new Aws.Ecr.Repository("ecr-repository");
|
||||
|
||||
// Grab auth credentials for ECR.
|
||||
var authToken = Aws.Ecr.GetAuthorizationToken.Invoke(new()
|
||||
{
|
||||
RegistryId = ecrRepository.RegistryId,
|
||||
});
|
||||
|
||||
// Build and push an image to ECR with inline caching.
|
||||
var myImage = new DockerBuild.Image("my-image", new()
|
||||
{
|
||||
// Tag our image with our ECR repository's address.
|
||||
Tags = new[]
|
||||
{
|
||||
ecrRepository.RepositoryUrl.Apply(repositoryUrl => $"{repositoryUrl}:latest"),
|
||||
},
|
||||
Context = new DockerBuild.Inputs.BuildContextArgs
|
||||
{
|
||||
Location = "./app",
|
||||
},
|
||||
// Use the pushed image as a cache source.
|
||||
CacheFrom = new[]
|
||||
{
|
||||
new DockerBuild.Inputs.CacheFromArgs
|
||||
{
|
||||
Registry = new DockerBuild.Inputs.CacheFromRegistryArgs
|
||||
{
|
||||
Ref = ecrRepository.RepositoryUrl.Apply(repositoryUrl => $"{repositoryUrl}:latest"),
|
||||
},
|
||||
},
|
||||
},
|
||||
// Include an inline cache with our pushed image.
|
||||
CacheTo = new[]
|
||||
{
|
||||
new DockerBuild.Inputs.CacheToArgs
|
||||
{
|
||||
Inline = null,
|
||||
},
|
||||
},
|
||||
// Build a multi-platform image manifest for ARM and AMD.
|
||||
Platforms = new[]
|
||||
{
|
||||
DockerBuild.Platform.Linux_amd64,
|
||||
DockerBuild.Platform.Linux_arm64,
|
||||
},
|
||||
// Push the final result to ECR.
|
||||
Push = true,
|
||||
// Provide our ECR credentials.
|
||||
Registries = new[]
|
||||
{
|
||||
new DockerBuild.Inputs.RegistryArgs
|
||||
{
|
||||
Address = ecrRepository.RepositoryUrl,
|
||||
Password = authToken.Apply(getAuthorizationTokenResult => getAuthorizationTokenResult.Password),
|
||||
Username = authToken.Apply(getAuthorizationTokenResult => getAuthorizationTokenResult.UserName),
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
// Export a ref for the pushed images so we can deploy it.
|
||||
return new Dictionary<string, object?>
|
||||
{
|
||||
["ref"] = myImage.Ref,
|
||||
};
|
||||
});
|
||||
|
||||
```
|
||||
|
||||
{{% /choosable %}}
|
||||
|
||||
{{% choosable language go %}}
|
||||
|
||||
```go
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ecr"
|
||||
"github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild"
|
||||
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
|
||||
)
|
||||
|
||||
func main() {
|
||||
pulumi.Run(func(ctx *pulumi.Context) error {
|
||||
// Create an ECR repository for pushing.
|
||||
ecrRepository, err := ecr.NewRepository(ctx, "ecr-repository", nil)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// Grab auth credentials for ECR.
|
||||
authToken := ecr.GetAuthorizationTokenOutput(ctx, ecr.GetAuthorizationTokenOutputArgs{
|
||||
RegistryId: ecrRepository.RegistryId,
|
||||
}, nil)
|
||||
|
||||
// Build and push an image to ECR with inline caching.
|
||||
myImage, err := dockerbuild.NewImage(ctx, "my-image", &dockerbuild.ImageArgs{
|
||||
// Tag our image with our ECR repository's address.
|
||||
Tags: pulumi.StringArray{
|
||||
ecrRepository.RepositoryUrl.ApplyT(func(repositoryUrl string) (string, error) {
|
||||
return fmt.Sprintf("%v:latest", repositoryUrl), nil
|
||||
}).(pulumi.StringOutput),
|
||||
},
|
||||
Context: &dockerbuild.BuildContextArgs{
|
||||
Location: pulumi.String("./app"),
|
||||
},
|
||||
// Use the pushed image as a cache source.
|
||||
CacheFrom: dockerbuild.CacheFromArray{
|
||||
&dockerbuild.CacheFromArgs{
|
||||
Registry: &dockerbuild.CacheFromRegistryArgs{
|
||||
Ref: ecrRepository.RepositoryUrl.ApplyT(func(repositoryUrl string) (string, error) {
|
||||
return fmt.Sprintf("%v:latest", repositoryUrl), nil
|
||||
}).(pulumi.StringOutput),
|
||||
},
|
||||
},
|
||||
},
|
||||
// Include an inline cache with our pushed image.
|
||||
CacheTo: dockerbuild.CacheToArray{
|
||||
&dockerbuild.CacheToArgs{
|
||||
Inline: nil,
|
||||
},
|
||||
},
|
||||
// Build a multi-platform image manifest for ARM and AMD.
|
||||
Platforms: dockerbuild.PlatformArray{
|
||||
dockerbuild.Platform_Linux_amd64,
|
||||
dockerbuild.Platform_Linux_arm64,
|
||||
},
|
||||
// Push the final result to ECR.
|
||||
Push: pulumi.Bool(true),
|
||||
// Provide our ECR credentials.
|
||||
Registries: dockerbuild.RegistryArray{
|
||||
&dockerbuild.RegistryArgs{
|
||||
Address: ecrRepository.RepositoryUrl,
|
||||
Password: authToken.ApplyT(func(authToken ecr.GetAuthorizationTokenResult) (*string, error) {
|
||||
return &authToken.Password, nil
|
||||
}).(pulumi.StringPtrOutput),
|
||||
Username: authToken.ApplyT(func(authToken ecr.GetAuthorizationTokenResult) (*string, error) {
|
||||
return &authToken.UserName, nil
|
||||
}).(pulumi.StringPtrOutput),
|
||||
},
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// Export a ref for the pushed images so we can deploy it.
|
||||
ctx.Export("ref", myImage.Ref)
|
||||
return nil
|
||||
})
|
||||
}
|
||||
```
|
||||
|
||||
{{% /choosable %}}
|
||||
|
||||
{{% choosable language yaml %}}
|
||||
|
||||
```yaml
|
||||
description: Push to AWS ECR with caching
|
||||
name: ecr
|
||||
outputs:
|
||||
ref: ${my-image.ref}
|
||||
resources:
|
||||
# Create an ECR repository for pushing.
|
||||
ecr-repository:
|
||||
type: aws:ecr:Repository
|
||||
|
||||
# Build and push an image to ECR with inline caching.
|
||||
my-image:
|
||||
type: docker-build:Image
|
||||
properties:
|
||||
# Tag our image with our ECR repository's address.
|
||||
tags:
|
||||
- ${ecr-repository.repositoryUrl}:latest
|
||||
context:
|
||||
location: ./app
|
||||
# Use the pushed image as a cache source.
|
||||
cacheFrom:
|
||||
- registry:
|
||||
ref: ${ecr-repository.repositoryUrl}:latest
|
||||
# Include an inline cache with our pushed image.
|
||||
cacheTo:
|
||||
- inline: {}
|
||||
# Build a multi-platform image manifest for ARM and AMD.
|
||||
platforms:
|
||||
- linux/amd64
|
||||
- linux/arm64
|
||||
# Push the final result to ECR.
|
||||
push: true
|
||||
# Provide our ECR credentials.
|
||||
registries:
|
||||
- address: ${ecr-repository.repositoryUrl}
|
||||
password: ${auth-token.password}
|
||||
username: ${auth-token.userName}
|
||||
|
||||
runtime: yaml
|
||||
variables:
|
||||
auth-token:
|
||||
# Grab auth credentials for ECR.
|
||||
fn::aws:ecr:getAuthorizationToken:
|
||||
registryId: ${ecr-repository.registryId}
|
||||
```
|
||||
|
||||
{{% /choosable %}}
|
||||
|
||||
{{% choosable language java %}}
|
||||
|
||||
```java
|
||||
package myapp;
|
||||
|
||||
import com.pulumi.Context;
|
||||
import com.pulumi.Pulumi;
|
||||
import com.pulumi.core.Output;
|
||||
import com.pulumi.aws.ecr.Repository;
|
||||
import com.pulumi.aws.ecr.EcrFunctions;
|
||||
import com.pulumi.aws.ecr.inputs.GetAuthorizationTokenArgs;
|
||||
import com.pulumi.dockerbuild.Image;
|
||||
import com.pulumi.dockerbuild.ImageArgs;
|
||||
import com.pulumi.dockerbuild.inputs.CacheFromArgs;
|
||||
import com.pulumi.dockerbuild.inputs.CacheFromRegistryArgs;
|
||||
import com.pulumi.dockerbuild.inputs.CacheToArgs;
|
||||
import com.pulumi.dockerbuild.inputs.CacheToInlineArgs;
|
||||
import com.pulumi.dockerbuild.inputs.BuildContextArgs;
|
||||
import com.pulumi.dockerbuild.inputs.RegistryArgs;
|
||||
import java.util.List;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Map;
|
||||
import java.io.File;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
public class App {
|
||||
public static void main(String[] args) {
|
||||
Pulumi.run(App::stack);
|
||||
}
|
||||
|
||||
public static void stack(Context ctx) {
|
||||
// Create an ECR repository for pushing.
|
||||
var ecrRepository = new Repository("ecrRepository");
|
||||
|
||||
// Grab auth credentials for ECR.
|
||||
final var authToken = EcrFunctions.getAuthorizationToken(GetAuthorizationTokenArgs.builder()
|
||||
.registryId(ecrRepository.registryId())
|
||||
.build());
|
||||
|
||||
// Build and push an image to ECR with inline caching.
|
||||
var myImage = new Image("myImage", ImageArgs.builder()
|
||||
// Tag our image with our ECR repository's address.
|
||||
.tags(ecrRepository.repositoryUrl().applyValue(repositoryUrl -> String.format("%s:latest", repositoryUrl)))
|
||||
.context(BuildContextArgs.builder()
|
||||
.location("./app")
|
||||
.build())
|
||||
// Use the pushed image as a cache source.
|
||||
.cacheFrom(CacheFromArgs.builder()
|
||||
.registry(CacheFromRegistryArgs.builder()
|
||||
.ref(ecrRepository.repositoryUrl().applyValue(repositoryUrl -> String.format("%s:latest", repositoryUrl)))
|
||||
.build())
|
||||
.build())
|
||||
// Include an inline cache with our pushed image.
|
||||
.cacheTo(CacheToArgs.builder()
|
||||
.inline()
|
||||
.build())
|
||||
// Build a multi-platform image manifest for ARM and AMD.
|
||||
.platforms(
|
||||
"linux/amd64",
|
||||
"linux/arm64")
|
||||
// Push the final result to ECR.
|
||||
.push(true)
|
||||
// Provide our ECR credentials.
|
||||
.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())))
|
||||
.build())
|
||||
.build());
|
||||
|
||||
ctx.export("ref", myImage.ref());
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
{{% /choosable %}}
|
||||
|
||||
{{< /chooser >}}
|
||||
@@ -1,33 +0,0 @@
|
||||
---
|
||||
title: Docker-Build Installation & Configuration
|
||||
meta_desc: Provides an overview on how to configure the Pulumi Docker-Build Provider.
|
||||
layout: package
|
||||
---
|
||||
|
||||
The Pulumi Docker-build provider builds modern Docker images with [buildx](https://docs.docker.com/reference/cli/docker/buildx/) and [BuildKit](https://docs.docker.com/build/buildkit/).
|
||||
|
||||
## Installation
|
||||
|
||||
The Docker-Build provider is available as a package in all Pulumi languages:
|
||||
|
||||
* JavaScript/TypeScript: [`@pulumi/docker-build`](https://www.npmjs.com/package/@pulumi/docker-build)
|
||||
* Python: [`pulumi-docker-build`](https://pypi.org/project/pulumi-docker-build/)
|
||||
* Go: [`github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild`](https://github.com/pulumi/pulumi-docker-build)
|
||||
* .NET: [`Pulumi.DockerBuild`](https://www.nuget.org/packages/Pulumi.DockerBuild)
|
||||
* Java: [`com.pulumi/docker-build`](https://central.sonatype.com/artifact/com.pulumi/docker-build)
|
||||
|
||||
## Configuring The Provider
|
||||
|
||||
### Host
|
||||
|
||||
The `DOCKER_HOST` environment variable can be used to specify a custom build daemon's location.
|
||||
|
||||
```bash
|
||||
$ export DOCKER_HOST=tcp://127.0.0.1:2376/
|
||||
```
|
||||
|
||||
This can also be specified in your stack's configuration:
|
||||
|
||||
```bash
|
||||
$ pulumi config set docker-build:host tcp://127.0.0.1:2376/
|
||||
```
|
||||
@@ -1,12 +1,12 @@
|
||||
module provider-docker-build
|
||||
|
||||
go 1.24.7
|
||||
go 1.24.1
|
||||
|
||||
toolchain go1.24.9
|
||||
toolchain go1.24.5
|
||||
|
||||
require (
|
||||
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.12
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0
|
||||
)
|
||||
|
||||
require (
|
||||
@@ -58,20 +58,20 @@ require (
|
||||
github.com/opentracing/basictracer-go v1.1.0 // indirect
|
||||
github.com/opentracing/opentracing-go v1.2.0 // indirect
|
||||
github.com/pgavlin/fx v0.1.6 // indirect
|
||||
github.com/pgavlin/fx/v2 v2.0.10 // indirect
|
||||
github.com/pjbgf/sha1cd v0.3.2 // indirect
|
||||
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.17.0 // indirect
|
||||
github.com/pulumi/esc v0.14.3 // indirect
|
||||
github.com/rivo/uniseg v0.4.7 // indirect
|
||||
github.com/rogpeppe/go-internal v1.14.1 // indirect
|
||||
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect
|
||||
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect
|
||||
github.com/sergi/go-diff v1.4.0 // indirect
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect
|
||||
github.com/skeema/knownhosts v1.3.1 // indirect
|
||||
github.com/spf13/cast v1.5.0 // indirect
|
||||
github.com/spf13/cobra v1.10.1 // indirect
|
||||
github.com/spf13/pflag v1.0.9 // indirect
|
||||
github.com/spf13/cobra v1.9.1 // indirect
|
||||
github.com/spf13/pflag v1.0.6 // indirect
|
||||
github.com/texttheater/golang-levenshtein v1.0.1 // indirect
|
||||
github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect
|
||||
github.com/uber/jaeger-lib v2.4.1+incompatible // indirect
|
||||
@@ -84,12 +84,12 @@ require (
|
||||
golang.org/x/crypto v0.39.0 // indirect
|
||||
golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0 // indirect
|
||||
golang.org/x/mod v0.25.0 // indirect
|
||||
golang.org/x/net v0.41.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sync v0.15.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/term v0.32.0 // indirect
|
||||
golang.org/x/text v0.26.0 // indirect
|
||||
golang.org/x/tools v0.34.0 // indirect
|
||||
golang.org/x/tools v0.33.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250519155744-55703ea1f237 // indirect
|
||||
google.golang.org/grpc v1.72.1 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
|
||||
@@ -146,8 +146,8 @@ github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+
|
||||
github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc=
|
||||
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.10 h1:ggyQ6pB+lEQEbEae48Wh/X221eLOamMD7i01ISe88u4=
|
||||
github.com/pgavlin/fx/v2 v2.0.10/go.mod h1:M/nF/ooAOy+NUBooYYXl2REARzJ/giPJxfMs8fINfKc=
|
||||
github.com/pgavlin/fx/v2 v2.0.3 h1:ZBVklTFjxcWvBVPE+ti5qwnmTIQ0Gq6nuj3J5RKDtKk=
|
||||
github.com/pgavlin/fx/v2 v2.0.3/go.mod h1:Cvnwqq0BopdHUJ7CU50h1XPeKrF4ZwdFj1nJLXbAjCE=
|
||||
github.com/pjbgf/sha1cd v0.3.2 h1:a9wb0bp1oC2TGwStyn0Umc/IGKQnEgF0vVaZ8QF8eo4=
|
||||
github.com/pjbgf/sha1cd v0.3.2/go.mod h1:zQWigSxVmsHEZow5qaLtPYxpcKMMQpa09ixqBxuCS6A=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
@@ -159,31 +159,33 @@ 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.17.0 h1:oaVOIyFTENlYDuqc3pW75lQT9jb2cd6ie/4/Twxn66w=
|
||||
github.com/pulumi/esc v0.17.0/go.mod h1:XnSxlt5NkmuAj304l/gK4pRErFbtqq6XpfX1tYT9Jbc=
|
||||
github.com/pulumi/esc v0.14.3 h1:Zli+9LiSDT/W+Fsfr8tITxCo+5wn969tLrE4KLv44G8=
|
||||
github.com/pulumi/esc v0.14.3/go.mod h1:XnSxlt5NkmuAj304l/gK4pRErFbtqq6XpfX1tYT9Jbc=
|
||||
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.12 h1:uzmw+0iic764m0Yvh4I/jRV1x3q49dVh5Ctq9RllsQ8=
|
||||
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.12/go.mod h1:6zFMe786NvFDO03BVJwdw1R/Yms4F6vAU49iBHo8zbQ=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0 h1:naNpZOkGf1QaIcfB47MAh2UHW7DUh37Tg1zOdDmxx5I=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0/go.mod h1:aV0+c5xpSYccWKmOjTZS9liYCqh7+peu3cQgSXu7CJw=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0 h1:BflBBeD/qaoKN4Tov11g4aHzJ7pTXBSb8otgmteRer0=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0/go.mod h1:BnpKxUc6QlxqoCqobHNZsUuIuY27H6ZFUk0Cp+0JN5U=
|
||||
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
||||
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=
|
||||
github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc=
|
||||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 h1:OkMGxebDjyw0ULyrTYWeN0UNCCkmCWfjPnIA2W6oviI=
|
||||
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06/go.mod h1:+ePHsJ1keEjQtpvf9HHw0f4ZeJ0TLRsxhunSI2hYJSs=
|
||||
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 h1:lZUw3E0/J3roVtGQ+SCrUrg3ON6NgVqpn3+iol9aGu4=
|
||||
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1/go.mod h1:uToXkOrWAZ6/Oc07xWQrPOhJotwFIyu2bBVN41fcDUY=
|
||||
github.com/sergi/go-diff v1.4.0 h1:n/SP9D5ad1fORl+llWyN+D6qoUETXNZARKjyY2/KVCw=
|
||||
github.com/sergi/go-diff v1.4.0/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8=
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
|
||||
github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=
|
||||
github.com/skeema/knownhosts v1.3.1 h1:X2osQ+RAjK76shCbvhHHHVl3ZlgDm8apHEHFqRjnBY8=
|
||||
github.com/skeema/knownhosts v1.3.1/go.mod h1:r7KTdC8l4uxWRyK2TpQZ/1o5HaSzh06ePQNxPwTcfiY=
|
||||
github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w=
|
||||
github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155UU=
|
||||
github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s=
|
||||
github.com/spf13/cobra v1.10.1/go.mod h1:7SmJGaTHFVBY0jW4NXGluQoLvhqFQM+6XSKD+P4XaB0=
|
||||
github.com/spf13/pflag v1.0.9 h1:9exaQaMOCwffKiiiYk6/BndUBv+iRViNW+4lEMi0PvY=
|
||||
github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
|
||||
github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
|
||||
github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
|
||||
github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
|
||||
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
|
||||
@@ -191,6 +193,7 @@ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXf
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
||||
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
|
||||
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U=
|
||||
@@ -241,8 +244,8 @@ golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLL
|
||||
golang.org/x/net v0.0.0-20200421231249-e086a090c8fd/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
|
||||
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
@@ -279,8 +282,8 @@ golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtn
|
||||
golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
|
||||
golang.org/x/tools v0.34.0 h1:qIpSLOxeCYGg9TrcJokLBG4KFA6d795g0xkBkiESGlo=
|
||||
golang.org/x/tools v0.34.0/go.mod h1:pAP9OwEaY1CAW3HOmg3hLZC5Z0CCmzjAF2UQMSqNARg=
|
||||
golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc=
|
||||
golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
@@ -300,6 +303,7 @@ gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRN
|
||||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
||||
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
lukechampine.com/frand v1.5.1 h1:fg0eRtdmGFIxhP5zQJzM1lFDbD6CUfu/f+7WgAZd5/w=
|
||||
|
||||
@@ -181,9 +181,8 @@ func TestConfig(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
|
||||
test := integration.ProgramTestOptions{
|
||||
Dir: path.Join(cwd, "tests", "config"),
|
||||
Dependencies: []string{"@pulumi/docker-build"},
|
||||
SkipEmptyPreviewUpdate: true,
|
||||
Dir: path.Join(cwd, "tests", "config"),
|
||||
Dependencies: []string{"@pulumi/docker-build"},
|
||||
}
|
||||
|
||||
integration.ProgramTest(t, &test)
|
||||
|
||||
23
go.mod
23
go.mod
@@ -1,8 +1,6 @@
|
||||
module github.com/pulumi/pulumi-docker-build
|
||||
|
||||
go 1.24.7
|
||||
|
||||
toolchain go1.24.9
|
||||
go 1.24.1
|
||||
|
||||
require (
|
||||
github.com/aws/aws-sdk-go v1.55.5
|
||||
@@ -18,14 +16,14 @@ require (
|
||||
github.com/otiai10/copy v1.14.0
|
||||
github.com/pulumi/providertest v0.3.1
|
||||
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.0.0-20250806132441-44ca9a522cef
|
||||
github.com/pulumi/pulumi-go-provider v1.1.2
|
||||
github.com/pulumi/pulumi-go-provider v1.1.0
|
||||
github.com/pulumi/pulumi-java/pkg v1.16.0
|
||||
github.com/pulumi/pulumi-yaml v1.21.2
|
||||
github.com/pulumi/pulumi/pkg/v3 v3.203.0
|
||||
github.com/pulumi/pulumi/pkg/v3 v3.187.0
|
||||
github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3 v3.0.0-20250806165243-bee5e4fa4815
|
||||
github.com/pulumi/pulumi/sdk/nodejs/cmd/pulumi-language-nodejs/v3 v3.0.0-20250806165243-bee5e4fa4815
|
||||
github.com/pulumi/pulumi/sdk/python/cmd/pulumi-language-python/v3 v3.0.0-20250806165243-bee5e4fa4815
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0
|
||||
github.com/regclient/regclient v0.7.1
|
||||
github.com/sirupsen/logrus v1.9.3
|
||||
github.com/spf13/afero v1.14.0
|
||||
@@ -193,7 +191,6 @@ require (
|
||||
github.com/go-openapi/jsonpointer v0.19.6 // indirect
|
||||
github.com/go-openapi/jsonreference v0.20.2 // indirect
|
||||
github.com/go-openapi/swag v0.22.4 // indirect
|
||||
github.com/go-test/deep v1.0.3 // indirect
|
||||
github.com/go-toolsmith/astcast v1.1.0 // indirect
|
||||
github.com/go-toolsmith/astcopy v1.1.0 // indirect
|
||||
github.com/go-toolsmith/astequal v1.2.0 // indirect
|
||||
@@ -255,6 +252,7 @@ require (
|
||||
github.com/hashicorp/vault/api v1.12.0 // indirect
|
||||
github.com/hexops/gotextdiff v1.0.3 // indirect
|
||||
github.com/iancoleman/strcase v0.3.0 // indirect
|
||||
github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd // indirect
|
||||
github.com/imdario/mergo v0.3.16 // indirect
|
||||
github.com/in-toto/in-toto-golang v0.5.0 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
@@ -344,7 +342,6 @@ require (
|
||||
github.com/pgavlin/aho-corasick v0.5.1 // indirect
|
||||
github.com/pgavlin/diff v0.0.0-20230503175810-113847418e2e // indirect
|
||||
github.com/pgavlin/fx v0.1.6 // indirect
|
||||
github.com/pgavlin/fx/v2 v2.0.10 // indirect
|
||||
github.com/pgavlin/goldmark v1.1.33-0.20200616210433-b5eb04559386 // indirect
|
||||
github.com/pgavlin/text v0.0.0-20240821195002-b51d0990e284 // indirect
|
||||
github.com/pjbgf/sha1cd v0.3.2 // indirect
|
||||
@@ -382,7 +379,7 @@ require (
|
||||
github.com/securego/gosec/v2 v2.20.1-0.20240525090044-5f0084eb01a9 // indirect
|
||||
github.com/segmentio/asm v1.2.0 // indirect
|
||||
github.com/segmentio/encoding v0.4.1 // indirect
|
||||
github.com/sergi/go-diff v1.4.0 // indirect
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect
|
||||
github.com/serialx/hashring v0.0.0-20200727003509-22c0c7ab6b1b // indirect
|
||||
github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c // indirect
|
||||
github.com/shibumi/go-pathspec v1.3.0 // indirect
|
||||
@@ -397,9 +394,9 @@ require (
|
||||
github.com/sourcegraph/appdash-data v0.0.0-20151005221446-73f23eafcf67 // indirect
|
||||
github.com/sourcegraph/go-diff v0.7.0 // indirect
|
||||
github.com/spf13/cast v1.5.0 // indirect
|
||||
github.com/spf13/cobra v1.10.1 // indirect
|
||||
github.com/spf13/cobra v1.9.1 // indirect
|
||||
github.com/spf13/jwalterweatherman v1.1.0 // indirect
|
||||
github.com/spf13/pflag v1.0.9 // indirect
|
||||
github.com/spf13/pflag v1.0.6 // indirect
|
||||
github.com/spf13/viper v1.12.0 // indirect
|
||||
github.com/ssgreg/nlreturn/v2 v2.2.1 // indirect
|
||||
github.com/stbenjam/no-sprintf-host-port v0.1.1 // indirect
|
||||
@@ -464,14 +461,14 @@ require (
|
||||
gocloud.dev/secrets/hashivault v0.37.0 // indirect
|
||||
golang.org/x/exp/typeparams v0.0.0-20240314144324-c7f7c6466f7f // indirect
|
||||
golang.org/x/mod v0.25.0 // indirect
|
||||
golang.org/x/net v0.41.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/oauth2 v0.30.0 // indirect
|
||||
golang.org/x/sync v0.15.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/term v0.32.0 // indirect
|
||||
golang.org/x/text v0.26.0 // indirect
|
||||
golang.org/x/time v0.6.0 // indirect
|
||||
golang.org/x/tools v0.34.0 // indirect
|
||||
golang.org/x/tools v0.33.0 // indirect
|
||||
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
|
||||
|
||||
38
go.sum
38
go.sum
@@ -589,6 +589,8 @@ github.com/hinshun/vt10x v0.0.0-20220301184237-5011da428d02 h1:AgcIVYPa6XJnU3phs
|
||||
github.com/hinshun/vt10x v0.0.0-20220301184237-5011da428d02/go.mod h1:Q48J4R4DvxnHolD5P8pOtXigYlRuPLGl6moFx3ulM68=
|
||||
github.com/iancoleman/strcase v0.3.0 h1:nTXanmYxhfFAMjZL34Ov6gkzEsSJZ5DbhxWjvSASxEI=
|
||||
github.com/iancoleman/strcase v0.3.0/go.mod h1:iwCmte+B7n89clKwxIoIXy/HfoL7AsD47ZCWhYzw7ho=
|
||||
github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd h1:anPrsicrIi2ColgWTVPk+TrN42hJIWlfPHSBP9S0ZkM=
|
||||
github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd/go.mod h1:3LVOLeyx9XVvwPgrt2be44XgSqndprz1G18rSk8KD84=
|
||||
github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4=
|
||||
github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY=
|
||||
github.com/in-toto/in-toto-golang v0.5.0 h1:hb8bgwr0M2hGdDsLjkJ3ZqJ8JFLL/tgYdAxF/XEFBbY=
|
||||
@@ -839,8 +841,8 @@ github.com/pgavlin/diff v0.0.0-20230503175810-113847418e2e h1:Or25BtWLCyWKjnLyuM
|
||||
github.com/pgavlin/diff v0.0.0-20230503175810-113847418e2e/go.mod h1:WGwlmuPAiQTGQUjxyAfP7j4JgbgiFvFpI/qRtsQtS/4=
|
||||
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.10 h1:ggyQ6pB+lEQEbEae48Wh/X221eLOamMD7i01ISe88u4=
|
||||
github.com/pgavlin/fx/v2 v2.0.10/go.mod h1:M/nF/ooAOy+NUBooYYXl2REARzJ/giPJxfMs8fINfKc=
|
||||
github.com/pgavlin/fx/v2 v2.0.3 h1:ZBVklTFjxcWvBVPE+ti5qwnmTIQ0Gq6nuj3J5RKDtKk=
|
||||
github.com/pgavlin/fx/v2 v2.0.3/go.mod h1:Cvnwqq0BopdHUJ7CU50h1XPeKrF4ZwdFj1nJLXbAjCE=
|
||||
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/pgavlin/text v0.0.0-20240821195002-b51d0990e284 h1:qpLdAFg3kyV/mEsuMPBgLzFo3xRpKBdOff8m0up9eAs=
|
||||
@@ -894,22 +896,22 @@ github.com/pulumi/providertest v0.3.1 h1:vlftr7TZlObh81mL88IhhF0/9ZbLrZZos4NAvR4
|
||||
github.com/pulumi/providertest v0.3.1/go.mod h1:fFHUP4/9DRyYnHWiRnwcynMtM/a7hHR/QcJfcuZKO3A=
|
||||
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.0.0-20250806132441-44ca9a522cef h1:cxRa9R9To6OYKacIG2Em6zcM7BDNr6joC43uiV1lSVY=
|
||||
github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet/v3 v3.0.0-20250806132441-44ca9a522cef/go.mod h1:VLcnE1lj92EfRi7CRMzdPkQ9OQvrlg2upJM1lBZzNmg=
|
||||
github.com/pulumi/pulumi-go-provider v1.1.2 h1:NUQDXaftBDFTPMBPwxo8FhJUX0ymkv6a1XiXTnCDpvg=
|
||||
github.com/pulumi/pulumi-go-provider v1.1.2/go.mod h1:3lNIuxT/BArFyiKrVfv+UT7gMMtplss7V69KuBZ4zIk=
|
||||
github.com/pulumi/pulumi-go-provider v1.1.0 h1:TNrLoQ7LrT6Z2xPbspJKXE3pKZsz+pCVo62zKFGxjBI=
|
||||
github.com/pulumi/pulumi-go-provider v1.1.0/go.mod h1:bWvFWytb2ULBefjDW/YG+GcjHbzVojwtl1RW5afMvR0=
|
||||
github.com/pulumi/pulumi-java/pkg v1.16.0 h1:8KCiIXWv2uxfIks0SdgOezyXg4HZIoPfHID9eMg4nuM=
|
||||
github.com/pulumi/pulumi-java/pkg v1.16.0/go.mod h1:VeMZ1s9LfXBypao4A1tRF3EB7fYnYZ1LwImyg6FBX0c=
|
||||
github.com/pulumi/pulumi-yaml v1.21.2 h1:czqC5AazinfX6Bj0nqAAQ6x/Cr8/3oUz3HUjJg6tJ4o=
|
||||
github.com/pulumi/pulumi-yaml v1.21.2/go.mod h1:KOqDnuJksfIq8belFVFN3IEI4r0NgW69M0QPSj54On4=
|
||||
github.com/pulumi/pulumi/pkg/v3 v3.203.0 h1:n4n1mvumcb33LaEPwzoodL5s68y0KIFH6BKlsmMC2xM=
|
||||
github.com/pulumi/pulumi/pkg/v3 v3.203.0/go.mod h1:U0BRLDbyScfNdP22SBCi3pqghDD/wD8FiEILDcN7Blk=
|
||||
github.com/pulumi/pulumi/pkg/v3 v3.187.0 h1:VTbireKCxG/wKPX3slHNb3Zk3xKMr5CvcvjH8194H2I=
|
||||
github.com/pulumi/pulumi/pkg/v3 v3.187.0/go.mod h1:3y5nyMg62dd+DBzYW/P4d+Ye9pJ/zhJd+aGzMzfUL1g=
|
||||
github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3 v3.0.0-20250806165243-bee5e4fa4815 h1:tipGG4aEPejP424igQYxJ6TOtWVtZJa0z679oIv00ho=
|
||||
github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3 v3.0.0-20250806165243-bee5e4fa4815/go.mod h1:V2MMs29cFeGBdZyFKxNqTGVfBgDLhIOGfrXOxheieuI=
|
||||
github.com/pulumi/pulumi/sdk/nodejs/cmd/pulumi-language-nodejs/v3 v3.0.0-20250806165243-bee5e4fa4815 h1:+QJTFK7UcOFTYCg3XaSTrRZHWJ6Hqza8w9oADa4pPcM=
|
||||
github.com/pulumi/pulumi/sdk/nodejs/cmd/pulumi-language-nodejs/v3 v3.0.0-20250806165243-bee5e4fa4815/go.mod h1:0kA9b5LsaXLEKQzo0o9UUsHtZkACthHYLyBVUDUVMxc=
|
||||
github.com/pulumi/pulumi/sdk/python/cmd/pulumi-language-python/v3 v3.0.0-20250806165243-bee5e4fa4815 h1:bkvtySMos0ij3fWZWZaU5sVrvGvU0dZCusoxpgEtX6I=
|
||||
github.com/pulumi/pulumi/sdk/python/cmd/pulumi-language-python/v3 v3.0.0-20250806165243-bee5e4fa4815/go.mod h1:SJtr0N/XFyelI7M7U0UbJXr15pgEdSmpN40cglTsRTA=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0 h1:naNpZOkGf1QaIcfB47MAh2UHW7DUh37Tg1zOdDmxx5I=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0/go.mod h1:aV0+c5xpSYccWKmOjTZS9liYCqh7+peu3cQgSXu7CJw=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0 h1:BflBBeD/qaoKN4Tov11g4aHzJ7pTXBSb8otgmteRer0=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0/go.mod h1:BnpKxUc6QlxqoCqobHNZsUuIuY27H6ZFUk0Cp+0JN5U=
|
||||
github.com/quasilyte/go-ruleguard v0.4.2 h1:htXcXDK6/rO12kiTHKfHuqR4kr3Y4M0J0rOL6CH/BYs=
|
||||
github.com/quasilyte/go-ruleguard v0.4.2/go.mod h1:GJLgqsLeo4qgavUoL8JeGFNS7qcisx3awV/w9eWTmNI=
|
||||
github.com/quasilyte/go-ruleguard/dsl v0.3.22 h1:wd8zkOhSNr+I+8Qeciml08ivDt1pSXe60+5DqOpCjPE=
|
||||
@@ -956,8 +958,8 @@ github.com/segmentio/asm v1.2.0 h1:9BQrFxC+YOHJlTlHGkTrFWf59nbL3XnCoFLTwDCI7ys=
|
||||
github.com/segmentio/asm v1.2.0/go.mod h1:BqMnlJP91P8d+4ibuonYZw9mfnzI9HfxselHZr5aAcs=
|
||||
github.com/segmentio/encoding v0.4.1 h1:KLGaLSW0jrmhB58Nn4+98spfvPvmo4Ci1P/WIQ9wn7w=
|
||||
github.com/segmentio/encoding v0.4.1/go.mod h1:/d03Cd8PoaDeceuhUUUQWjU0KhWjrmYrWPgtJHYZSnI=
|
||||
github.com/sergi/go-diff v1.4.0 h1:n/SP9D5ad1fORl+llWyN+D6qoUETXNZARKjyY2/KVCw=
|
||||
github.com/sergi/go-diff v1.4.0/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8=
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
|
||||
github.com/serialx/hashring v0.0.0-20200727003509-22c0c7ab6b1b h1:h+3JX2VoWTFuyQEo87pStk/a99dzIO1mM9KxIyLPGTU=
|
||||
github.com/serialx/hashring v0.0.0-20200727003509-22c0c7ab6b1b/go.mod h1:/yeG0My1xr/u+HZrFQ1tOQQQQrOawfyMUH13ai5brBc=
|
||||
github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c h1:W65qqJCIOVP4jpqPQ0YvHYKwcMEMVWIzWC5iNQQfBTU=
|
||||
@@ -998,13 +1000,13 @@ github.com/spf13/afero v1.14.0 h1:9tH6MapGnn/j0eb0yIXiLjERO8RB6xIVZRDCX7PtqWA=
|
||||
github.com/spf13/afero v1.14.0/go.mod h1:acJQ8t0ohCGuMN3O+Pv0V0hgMxNYDlvdk+VTfyZmbYo=
|
||||
github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w=
|
||||
github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155UU=
|
||||
github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s=
|
||||
github.com/spf13/cobra v1.10.1/go.mod h1:7SmJGaTHFVBY0jW4NXGluQoLvhqFQM+6XSKD+P4XaB0=
|
||||
github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
|
||||
github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
|
||||
github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk=
|
||||
github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo=
|
||||
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/pflag v1.0.9 h1:9exaQaMOCwffKiiiYk6/BndUBv+iRViNW+4lEMi0PvY=
|
||||
github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
|
||||
github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/viper v1.12.0 h1:CZ7eSOd3kZoaYDLbXnmzgQI5RlciuXBMA+18HwHRfZQ=
|
||||
github.com/spf13/viper v1.12.0/go.mod h1:b6COn30jlNxbm/V2IqWiNWkJ+vZNiMNksliPCiuKtSI=
|
||||
github.com/ssgreg/nlreturn/v2 v2.2.1 h1:X4XDI7jstt3ySqGU86YGAURbxw3oTDPK9sPEi6YEwQ0=
|
||||
@@ -1256,8 +1258,8 @@ golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
|
||||
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
|
||||
golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
|
||||
golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY=
|
||||
golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
|
||||
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
|
||||
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
|
||||
@@ -1379,8 +1381,8 @@ golang.org/x/tools v0.5.0/go.mod h1:N+Kgy78s5I24c24dU8OfWNEotWjutIs8SnJvn5IDq+k=
|
||||
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
|
||||
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
|
||||
golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps=
|
||||
golang.org/x/tools v0.34.0 h1:qIpSLOxeCYGg9TrcJokLBG4KFA6d795g0xkBkiESGlo=
|
||||
golang.org/x/tools v0.34.0/go.mod h1:pAP9OwEaY1CAW3HOmg3hLZC5Z0CCmzjAF2UQMSqNARg=
|
||||
golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc=
|
||||
golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
|
||||
19
mise.toml
Normal file
19
mise.toml
Normal file
@@ -0,0 +1,19 @@
|
||||
# WARNING: This file is autogenerated - changes will be overwritten when regenerated by https://github.com/pulumi/ci-mgmt
|
||||
|
||||
[tools]
|
||||
|
||||
# Runtimes
|
||||
go = '1.21'
|
||||
node = '20'
|
||||
python = '3.11.8'
|
||||
dotnet = '8.0'
|
||||
# Corretto version used as Java SE/OpenJDK version no longer offered
|
||||
java = 'corretto-11'
|
||||
|
||||
# Executable tools
|
||||
pulumi = 'latest'
|
||||
"go:github.com/pulumi/pulumictl/cmd/pulumictl" = 'latest'
|
||||
gradle = '7.6'
|
||||
|
||||
[settings]
|
||||
experimental = true # Required for Go binaries (e.g. pulumictl).
|
||||
@@ -1,55 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# This script can be simplified to use go when https://github.com/jdx/mise/discussions/6374 is fixed
|
||||
# e.g. go list -m -f '{{.GoVersion}}'
|
||||
|
||||
module_path="github.com/pulumi/pulumi/pkg/v3"
|
||||
go_mod_path="."
|
||||
gomod="go.mod"
|
||||
|
||||
if [[ "$go_mod_path" != "" && "$go_mod_path" != "." ]]; then
|
||||
gomod="$go_mod_path/$gomod"
|
||||
fi
|
||||
|
||||
if [[ ! -f "$gomod" ]]; then
|
||||
echo "missing $gomod" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
raw_version=$(awk -v module="$module_path" '
|
||||
$1 == module || $2 == module {
|
||||
for (i = 1; i <= NF; i++) {
|
||||
if ($i ~ /^v[0-9]/) {
|
||||
sub(/^v/, "", $i)
|
||||
print $i
|
||||
exit
|
||||
}
|
||||
}
|
||||
}
|
||||
' "$gomod")
|
||||
|
||||
if [[ -z "${raw_version:-}" ]]; then
|
||||
echo "failed to determine Pulumi version from $gomod" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "PULUMI_VERSION_MISE=$raw_version"
|
||||
export PULUMI_VERSION_MISE=$raw_version
|
||||
|
||||
# Prefer the toolchain directive if present, otherwise fall back to the `go` version line
|
||||
go_toolchain=$(awk '/^toolchain[[:space:]]+go[0-9]/{ print $2; exit }' "$gomod")
|
||||
|
||||
if [[ -n "${go_toolchain:-}" ]]; then
|
||||
go_version=${go_toolchain#go}
|
||||
else
|
||||
go_version=$(awk '/^go[[:space:]]+[0-9]/{ print $2; exit }' "$gomod")
|
||||
fi
|
||||
|
||||
if [[ -z "${go_version:-}" ]]; then
|
||||
echo "failed to determine Go version from $gomod" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "GO_VERSION_MISE=$go_version"
|
||||
export GO_VERSION_MISE=$go_version
|
||||
18
sdk/go/dockerbuild/go.mod
generated
18
sdk/go/dockerbuild/go.mod
generated
@@ -1,12 +1,10 @@
|
||||
module github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild
|
||||
|
||||
go 1.24.7
|
||||
|
||||
toolchain go1.24.9
|
||||
go 1.24.1
|
||||
|
||||
require (
|
||||
github.com/blang/semver v3.5.1+incompatible
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0
|
||||
)
|
||||
|
||||
require (
|
||||
@@ -60,7 +58,6 @@ require (
|
||||
github.com/opentracing/basictracer-go v1.1.0 // indirect
|
||||
github.com/opentracing/opentracing-go v1.2.0 // indirect
|
||||
github.com/pgavlin/fx v0.1.6 // indirect
|
||||
github.com/pgavlin/fx/v2 v2.0.10 // indirect
|
||||
github.com/pjbgf/sha1cd v0.3.2 // indirect
|
||||
github.com/pkg/errors v0.9.1 // indirect
|
||||
github.com/pkg/term v1.1.0 // indirect
|
||||
@@ -69,12 +66,13 @@ require (
|
||||
github.com/pulumi/esc v0.17.0 // indirect
|
||||
github.com/rivo/uniseg v0.4.7 // indirect
|
||||
github.com/rogpeppe/go-internal v1.14.1 // indirect
|
||||
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect
|
||||
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect
|
||||
github.com/sergi/go-diff v1.4.0 // indirect
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 // indirect
|
||||
github.com/skeema/knownhosts v1.3.1 // indirect
|
||||
github.com/spf13/cast v1.5.0 // indirect
|
||||
github.com/spf13/cobra v1.10.1 // indirect
|
||||
github.com/spf13/pflag v1.0.9 // indirect
|
||||
github.com/spf13/cobra v1.9.1 // indirect
|
||||
github.com/spf13/pflag v1.0.6 // indirect
|
||||
github.com/stretchr/objx v0.5.2 // indirect
|
||||
github.com/texttheater/golang-levenshtein v1.0.1 // indirect
|
||||
github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect
|
||||
@@ -88,12 +86,12 @@ require (
|
||||
golang.org/x/crypto v0.39.0 // indirect
|
||||
golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0 // indirect
|
||||
golang.org/x/mod v0.25.0 // indirect
|
||||
golang.org/x/net v0.41.0 // indirect
|
||||
golang.org/x/net v0.40.0 // indirect
|
||||
golang.org/x/sync v0.15.0 // indirect
|
||||
golang.org/x/sys v0.33.0 // indirect
|
||||
golang.org/x/term v0.32.0 // indirect
|
||||
golang.org/x/text v0.26.0 // indirect
|
||||
golang.org/x/tools v0.34.0 // indirect
|
||||
golang.org/x/tools v0.33.0 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250519155744-55703ea1f237 // indirect
|
||||
google.golang.org/grpc v1.72.1 // indirect
|
||||
google.golang.org/protobuf v1.36.6 // indirect
|
||||
|
||||
32
sdk/go/dockerbuild/go.sum
generated
32
sdk/go/dockerbuild/go.sum
generated
@@ -148,8 +148,8 @@ github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+
|
||||
github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc=
|
||||
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.10 h1:ggyQ6pB+lEQEbEae48Wh/X221eLOamMD7i01ISe88u4=
|
||||
github.com/pgavlin/fx/v2 v2.0.10/go.mod h1:M/nF/ooAOy+NUBooYYXl2REARzJ/giPJxfMs8fINfKc=
|
||||
github.com/pgavlin/fx/v2 v2.0.3 h1:ZBVklTFjxcWvBVPE+ti5qwnmTIQ0Gq6nuj3J5RKDtKk=
|
||||
github.com/pgavlin/fx/v2 v2.0.3/go.mod h1:Cvnwqq0BopdHUJ7CU50h1XPeKrF4ZwdFj1nJLXbAjCE=
|
||||
github.com/pjbgf/sha1cd v0.3.2 h1:a9wb0bp1oC2TGwStyn0Umc/IGKQnEgF0vVaZ8QF8eo4=
|
||||
github.com/pjbgf/sha1cd v0.3.2/go.mod h1:zQWigSxVmsHEZow5qaLtPYxpcKMMQpa09ixqBxuCS6A=
|
||||
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
|
||||
@@ -164,8 +164,8 @@ github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435
|
||||
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
|
||||
github.com/pulumi/esc v0.17.0 h1:oaVOIyFTENlYDuqc3pW75lQT9jb2cd6ie/4/Twxn66w=
|
||||
github.com/pulumi/esc v0.17.0/go.mod h1:XnSxlt5NkmuAj304l/gK4pRErFbtqq6XpfX1tYT9Jbc=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0 h1:naNpZOkGf1QaIcfB47MAh2UHW7DUh37Tg1zOdDmxx5I=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.203.0/go.mod h1:aV0+c5xpSYccWKmOjTZS9liYCqh7+peu3cQgSXu7CJw=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0 h1:BflBBeD/qaoKN4Tov11g4aHzJ7pTXBSb8otgmteRer0=
|
||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0/go.mod h1:BnpKxUc6QlxqoCqobHNZsUuIuY27H6ZFUk0Cp+0JN5U=
|
||||
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
||||
github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ=
|
||||
github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
|
||||
@@ -173,19 +173,21 @@ github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/f
|
||||
github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ=
|
||||
github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc=
|
||||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 h1:OkMGxebDjyw0ULyrTYWeN0UNCCkmCWfjPnIA2W6oviI=
|
||||
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06/go.mod h1:+ePHsJ1keEjQtpvf9HHw0f4ZeJ0TLRsxhunSI2hYJSs=
|
||||
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 h1:lZUw3E0/J3roVtGQ+SCrUrg3ON6NgVqpn3+iol9aGu4=
|
||||
github.com/santhosh-tekuri/jsonschema/v5 v5.3.1/go.mod h1:uToXkOrWAZ6/Oc07xWQrPOhJotwFIyu2bBVN41fcDUY=
|
||||
github.com/sergi/go-diff v1.4.0 h1:n/SP9D5ad1fORl+llWyN+D6qoUETXNZARKjyY2/KVCw=
|
||||
github.com/sergi/go-diff v1.4.0/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8=
|
||||
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
|
||||
github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=
|
||||
github.com/skeema/knownhosts v1.3.1 h1:X2osQ+RAjK76shCbvhHHHVl3ZlgDm8apHEHFqRjnBY8=
|
||||
github.com/skeema/knownhosts v1.3.1/go.mod h1:r7KTdC8l4uxWRyK2TpQZ/1o5HaSzh06ePQNxPwTcfiY=
|
||||
github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w=
|
||||
github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155UU=
|
||||
github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s=
|
||||
github.com/spf13/cobra v1.10.1/go.mod h1:7SmJGaTHFVBY0jW4NXGluQoLvhqFQM+6XSKD+P4XaB0=
|
||||
github.com/spf13/pflag v1.0.9 h1:9exaQaMOCwffKiiiYk6/BndUBv+iRViNW+4lEMi0PvY=
|
||||
github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
|
||||
github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
|
||||
github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
|
||||
github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
|
||||
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
|
||||
@@ -193,6 +195,7 @@ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXf
|
||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
||||
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
|
||||
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
|
||||
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
|
||||
github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U=
|
||||
@@ -243,8 +246,8 @@ golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLL
|
||||
golang.org/x/net v0.0.0-20200421231249-e086a090c8fd/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/net v0.41.0 h1:vBTly1HeNPEn3wtREYfy4GZ/NECgw2Cnl+nK6Nz3uvw=
|
||||
golang.org/x/net v0.41.0/go.mod h1:B/K4NNqkfmg07DQYrbwvSluqCJOOXwUjeb/5lOisjbA=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
@@ -281,8 +284,8 @@ golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtn
|
||||
golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
|
||||
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
|
||||
golang.org/x/tools v0.34.0 h1:qIpSLOxeCYGg9TrcJokLBG4KFA6d795g0xkBkiESGlo=
|
||||
golang.org/x/tools v0.34.0/go.mod h1:pAP9OwEaY1CAW3HOmg3hLZC5Z0CCmzjAF2UQMSqNARg=
|
||||
golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc=
|
||||
golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
@@ -302,6 +305,7 @@ gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRN
|
||||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
||||
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
lukechampine.com/frand v1.5.1 h1:fg0eRtdmGFIxhP5zQJzM1lFDbD6CUfu/f+7WgAZd5/w=
|
||||
|
||||
96
sdk/nodejs/image.ts
generated
96
sdk/nodejs/image.ts
generated
@@ -501,7 +501,7 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Equivalent to Docker's `--add-host` flag.
|
||||
*/
|
||||
declare public readonly addHosts: pulumi.Output<string[] | undefined>;
|
||||
public readonly addHosts!: pulumi.Output<string[] | undefined>;
|
||||
/**
|
||||
* `ARG` names and values to set during the build.
|
||||
*
|
||||
@@ -513,7 +513,7 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Equivalent to Docker's `--build-arg` flag.
|
||||
*/
|
||||
declare public readonly buildArgs: pulumi.Output<{[key: string]: string} | undefined>;
|
||||
public readonly buildArgs!: pulumi.Output<{[key: string]: string} | undefined>;
|
||||
/**
|
||||
* Setting this to `false` will always skip image builds during previews,
|
||||
* and setting it to `true` will always build images during previews.
|
||||
@@ -527,35 +527,35 @@ export class Image extends pulumi.CustomResource {
|
||||
* Defaults to `true` as a safeguard against broken images merging as part
|
||||
* of CI pipelines.
|
||||
*/
|
||||
declare public readonly buildOnPreview: pulumi.Output<boolean | undefined>;
|
||||
public readonly buildOnPreview!: pulumi.Output<boolean | undefined>;
|
||||
/**
|
||||
* Builder configuration.
|
||||
*/
|
||||
declare public readonly builder: pulumi.Output<outputs.BuilderConfig | undefined>;
|
||||
public readonly builder!: pulumi.Output<outputs.BuilderConfig | undefined>;
|
||||
/**
|
||||
* Cache export configuration.
|
||||
*
|
||||
* Equivalent to Docker's `--cache-from` flag.
|
||||
*/
|
||||
declare public readonly cacheFrom: pulumi.Output<outputs.CacheFrom[] | undefined>;
|
||||
public readonly cacheFrom!: pulumi.Output<outputs.CacheFrom[] | undefined>;
|
||||
/**
|
||||
* Cache import configuration.
|
||||
*
|
||||
* Equivalent to Docker's `--cache-to` flag.
|
||||
*/
|
||||
declare public readonly cacheTo: pulumi.Output<outputs.CacheTo[] | undefined>;
|
||||
public readonly cacheTo!: pulumi.Output<outputs.CacheTo[] | undefined>;
|
||||
/**
|
||||
* Build context settings. Defaults to the current directory.
|
||||
*
|
||||
* Equivalent to Docker's `PATH | URL | -` positional argument.
|
||||
*/
|
||||
declare public readonly context: pulumi.Output<outputs.BuildContext | undefined>;
|
||||
public readonly context!: pulumi.Output<outputs.BuildContext | undefined>;
|
||||
/**
|
||||
* A preliminary hash of the image's build context.
|
||||
*
|
||||
* Pulumi uses this to determine if an image _may_ need to be re-built.
|
||||
*/
|
||||
declare public /*out*/ readonly contextHash: pulumi.Output<string>;
|
||||
public /*out*/ readonly contextHash!: pulumi.Output<string>;
|
||||
/**
|
||||
* A SHA256 digest of the image if it was exported to a registry or
|
||||
* elsewhere.
|
||||
@@ -565,13 +565,13 @@ export class Image extends pulumi.CustomResource {
|
||||
* Registry images can be referenced precisely as `<tag>@<digest>`. The
|
||||
* `ref` output provides one such reference as a convenience.
|
||||
*/
|
||||
declare public /*out*/ readonly digest: pulumi.Output<string>;
|
||||
public /*out*/ readonly digest!: pulumi.Output<string>;
|
||||
/**
|
||||
* Dockerfile settings.
|
||||
*
|
||||
* Equivalent to Docker's `--file` flag.
|
||||
*/
|
||||
declare public readonly dockerfile: pulumi.Output<outputs.Dockerfile | undefined>;
|
||||
public readonly dockerfile!: pulumi.Output<outputs.Dockerfile | undefined>;
|
||||
/**
|
||||
* Use `exec` mode to build this image.
|
||||
*
|
||||
@@ -594,7 +594,7 @@ export class Image extends pulumi.CustomResource {
|
||||
* are temporarily written to disk in order to provide them to the
|
||||
* `docker-buildx` binary.
|
||||
*/
|
||||
declare public readonly exec: pulumi.Output<boolean | undefined>;
|
||||
public readonly exec!: pulumi.Output<boolean | undefined>;
|
||||
/**
|
||||
* Controls where images are persisted after building.
|
||||
*
|
||||
@@ -606,13 +606,13 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Equivalent to Docker's `--output` flag.
|
||||
*/
|
||||
declare public readonly exports: pulumi.Output<outputs.Export[] | undefined>;
|
||||
public readonly exports!: pulumi.Output<outputs.Export[] | undefined>;
|
||||
/**
|
||||
* Attach arbitrary key/value metadata to the image.
|
||||
*
|
||||
* Equivalent to Docker's `--label` flag.
|
||||
*/
|
||||
declare public readonly labels: pulumi.Output<{[key: string]: string} | undefined>;
|
||||
public readonly labels!: pulumi.Output<{[key: string]: string} | undefined>;
|
||||
/**
|
||||
* When `true` the build will automatically include a `docker` export.
|
||||
*
|
||||
@@ -620,7 +620,7 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Equivalent to Docker's `--load` flag.
|
||||
*/
|
||||
declare public readonly load: pulumi.Output<boolean | undefined>;
|
||||
public readonly load!: pulumi.Output<boolean | undefined>;
|
||||
/**
|
||||
* Set the network mode for `RUN` instructions. Defaults to `default`.
|
||||
*
|
||||
@@ -628,25 +628,25 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Equivalent to Docker's `--network` flag.
|
||||
*/
|
||||
declare public readonly network: pulumi.Output<enums.NetworkMode | undefined>;
|
||||
public readonly network!: pulumi.Output<enums.NetworkMode | undefined>;
|
||||
/**
|
||||
* Do not import cache manifests when building the image.
|
||||
*
|
||||
* Equivalent to Docker's `--no-cache` flag.
|
||||
*/
|
||||
declare public readonly noCache: pulumi.Output<boolean | undefined>;
|
||||
public readonly noCache!: pulumi.Output<boolean | undefined>;
|
||||
/**
|
||||
* Set target platform(s) for the build. Defaults to the host's platform.
|
||||
*
|
||||
* Equivalent to Docker's `--platform` flag.
|
||||
*/
|
||||
declare public readonly platforms: pulumi.Output<enums.Platform[] | undefined>;
|
||||
public readonly platforms!: pulumi.Output<enums.Platform[] | undefined>;
|
||||
/**
|
||||
* Always pull referenced images.
|
||||
*
|
||||
* Equivalent to Docker's `--pull` flag.
|
||||
*/
|
||||
declare public readonly pull: pulumi.Output<boolean | undefined>;
|
||||
public readonly pull!: pulumi.Output<boolean | undefined>;
|
||||
/**
|
||||
* When `true` the build will automatically include a `registry` export.
|
||||
*
|
||||
@@ -654,7 +654,7 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Equivalent to Docker's `--push` flag.
|
||||
*/
|
||||
declare public readonly push: pulumi.Output<boolean>;
|
||||
public readonly push!: pulumi.Output<boolean>;
|
||||
/**
|
||||
* If the image was pushed to any registries then this will contain a
|
||||
* single fully-qualified tag including the build's digest.
|
||||
@@ -671,7 +671,7 @@ export class Image extends pulumi.CustomResource {
|
||||
* For more control over tags consumed by downstream resources you should
|
||||
* use the `digest` output.
|
||||
*/
|
||||
declare public /*out*/ readonly ref: pulumi.Output<string>;
|
||||
public /*out*/ readonly ref!: pulumi.Output<string>;
|
||||
/**
|
||||
* Registry credentials. Required if reading or exporting to private
|
||||
* repositories.
|
||||
@@ -681,7 +681,7 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Similar to `docker login`.
|
||||
*/
|
||||
declare public readonly registries: pulumi.Output<outputs.Registry[] | undefined>;
|
||||
public readonly registries!: pulumi.Output<outputs.Registry[] | undefined>;
|
||||
/**
|
||||
* A mapping of secret names to their corresponding values.
|
||||
*
|
||||
@@ -693,13 +693,13 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Similar to Docker's `--secret` flag.
|
||||
*/
|
||||
declare public readonly secrets: pulumi.Output<{[key: string]: string} | undefined>;
|
||||
public readonly secrets!: pulumi.Output<{[key: string]: string} | undefined>;
|
||||
/**
|
||||
* SSH agent socket or keys to expose to the build.
|
||||
*
|
||||
* Equivalent to Docker's `--ssh` flag.
|
||||
*/
|
||||
declare public readonly ssh: pulumi.Output<outputs.SSH[] | undefined>;
|
||||
public readonly ssh!: pulumi.Output<outputs.SSH[] | undefined>;
|
||||
/**
|
||||
* Name and optionally a tag (format: `name:tag`).
|
||||
*
|
||||
@@ -708,7 +708,7 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Equivalent to Docker's `--tag` flag.
|
||||
*/
|
||||
declare public readonly tags: pulumi.Output<string[] | undefined>;
|
||||
public readonly tags!: pulumi.Output<string[] | undefined>;
|
||||
/**
|
||||
* Set the target build stage(s) to build.
|
||||
*
|
||||
@@ -716,7 +716,7 @@ export class Image extends pulumi.CustomResource {
|
||||
*
|
||||
* Equivalent to Docker's `--target` flag.
|
||||
*/
|
||||
declare public readonly target: pulumi.Output<string | undefined>;
|
||||
public readonly target!: pulumi.Output<string | undefined>;
|
||||
|
||||
/**
|
||||
* Create a Image resource with the given unique name, arguments, and options.
|
||||
@@ -729,31 +729,31 @@ export class Image extends pulumi.CustomResource {
|
||||
let resourceInputs: pulumi.Inputs = {};
|
||||
opts = opts || {};
|
||||
if (!opts.id) {
|
||||
if (args?.push === undefined && !opts.urn) {
|
||||
if ((!args || args.push === undefined) && !opts.urn) {
|
||||
throw new Error("Missing required property 'push'");
|
||||
}
|
||||
resourceInputs["addHosts"] = args?.addHosts;
|
||||
resourceInputs["buildArgs"] = args?.buildArgs;
|
||||
resourceInputs["buildOnPreview"] = (args?.buildOnPreview) ?? true;
|
||||
resourceInputs["builder"] = args?.builder;
|
||||
resourceInputs["cacheFrom"] = args?.cacheFrom;
|
||||
resourceInputs["cacheTo"] = args?.cacheTo;
|
||||
resourceInputs["context"] = args?.context;
|
||||
resourceInputs["dockerfile"] = args?.dockerfile;
|
||||
resourceInputs["exec"] = args?.exec;
|
||||
resourceInputs["exports"] = args?.exports;
|
||||
resourceInputs["labels"] = args?.labels;
|
||||
resourceInputs["load"] = args?.load;
|
||||
resourceInputs["network"] = (args?.network) ?? "default";
|
||||
resourceInputs["noCache"] = args?.noCache;
|
||||
resourceInputs["platforms"] = args?.platforms;
|
||||
resourceInputs["pull"] = args?.pull;
|
||||
resourceInputs["push"] = args?.push;
|
||||
resourceInputs["registries"] = args?.registries;
|
||||
resourceInputs["secrets"] = args?.secrets;
|
||||
resourceInputs["ssh"] = args?.ssh;
|
||||
resourceInputs["tags"] = args?.tags;
|
||||
resourceInputs["target"] = args?.target;
|
||||
resourceInputs["addHosts"] = args ? args.addHosts : undefined;
|
||||
resourceInputs["buildArgs"] = args ? args.buildArgs : undefined;
|
||||
resourceInputs["buildOnPreview"] = (args ? args.buildOnPreview : undefined) ?? true;
|
||||
resourceInputs["builder"] = args ? args.builder : undefined;
|
||||
resourceInputs["cacheFrom"] = args ? args.cacheFrom : undefined;
|
||||
resourceInputs["cacheTo"] = args ? args.cacheTo : undefined;
|
||||
resourceInputs["context"] = args ? args.context : undefined;
|
||||
resourceInputs["dockerfile"] = args ? args.dockerfile : undefined;
|
||||
resourceInputs["exec"] = args ? args.exec : undefined;
|
||||
resourceInputs["exports"] = args ? args.exports : undefined;
|
||||
resourceInputs["labels"] = args ? args.labels : undefined;
|
||||
resourceInputs["load"] = args ? args.load : undefined;
|
||||
resourceInputs["network"] = (args ? args.network : undefined) ?? "default";
|
||||
resourceInputs["noCache"] = args ? args.noCache : undefined;
|
||||
resourceInputs["platforms"] = args ? args.platforms : undefined;
|
||||
resourceInputs["pull"] = args ? args.pull : undefined;
|
||||
resourceInputs["push"] = args ? args.push : undefined;
|
||||
resourceInputs["registries"] = args ? args.registries : undefined;
|
||||
resourceInputs["secrets"] = args ? args.secrets : undefined;
|
||||
resourceInputs["ssh"] = args ? args.ssh : undefined;
|
||||
resourceInputs["tags"] = args ? args.tags : undefined;
|
||||
resourceInputs["target"] = args ? args.target : undefined;
|
||||
resourceInputs["contextHash"] = undefined /*out*/;
|
||||
resourceInputs["digest"] = undefined /*out*/;
|
||||
resourceInputs["ref"] = undefined /*out*/;
|
||||
|
||||
22
sdk/nodejs/index_.ts
generated
22
sdk/nodejs/index_.ts
generated
@@ -113,27 +113,27 @@ export class Index extends pulumi.CustomResource {
|
||||
*
|
||||
* Defaults to `true`.
|
||||
*/
|
||||
declare public readonly push: pulumi.Output<boolean | undefined>;
|
||||
public readonly push!: pulumi.Output<boolean | undefined>;
|
||||
/**
|
||||
* The pushed tag with digest.
|
||||
*
|
||||
* Identical to the tag if the index was not pushed.
|
||||
*/
|
||||
declare public /*out*/ readonly ref: pulumi.Output<string>;
|
||||
public /*out*/ readonly ref!: pulumi.Output<string>;
|
||||
/**
|
||||
* Authentication for the registry where the tagged index will be pushed.
|
||||
*
|
||||
* Credentials can also be included with the provider's configuration.
|
||||
*/
|
||||
declare public readonly registry: pulumi.Output<outputs.Registry | undefined>;
|
||||
public readonly registry!: pulumi.Output<outputs.Registry | undefined>;
|
||||
/**
|
||||
* Existing images to include in the index.
|
||||
*/
|
||||
declare public readonly sources: pulumi.Output<string[]>;
|
||||
public readonly sources!: pulumi.Output<string[]>;
|
||||
/**
|
||||
* The tag to apply to the index.
|
||||
*/
|
||||
declare public readonly tag: pulumi.Output<string>;
|
||||
public readonly tag!: pulumi.Output<string>;
|
||||
|
||||
/**
|
||||
* Create a Index resource with the given unique name, arguments, and options.
|
||||
@@ -146,16 +146,16 @@ export class Index extends pulumi.CustomResource {
|
||||
let resourceInputs: pulumi.Inputs = {};
|
||||
opts = opts || {};
|
||||
if (!opts.id) {
|
||||
if (args?.sources === undefined && !opts.urn) {
|
||||
if ((!args || args.sources === undefined) && !opts.urn) {
|
||||
throw new Error("Missing required property 'sources'");
|
||||
}
|
||||
if (args?.tag === undefined && !opts.urn) {
|
||||
if ((!args || args.tag === undefined) && !opts.urn) {
|
||||
throw new Error("Missing required property 'tag'");
|
||||
}
|
||||
resourceInputs["push"] = (args?.push) ?? true;
|
||||
resourceInputs["registry"] = args?.registry;
|
||||
resourceInputs["sources"] = args?.sources;
|
||||
resourceInputs["tag"] = args?.tag;
|
||||
resourceInputs["push"] = (args ? args.push : undefined) ?? true;
|
||||
resourceInputs["registry"] = args ? args.registry : undefined;
|
||||
resourceInputs["sources"] = args ? args.sources : undefined;
|
||||
resourceInputs["tag"] = args ? args.tag : undefined;
|
||||
resourceInputs["ref"] = undefined /*out*/;
|
||||
} else {
|
||||
resourceInputs["push"] = undefined /*out*/;
|
||||
|
||||
6
sdk/nodejs/provider.ts
generated
6
sdk/nodejs/provider.ts
generated
@@ -25,7 +25,7 @@ export class Provider extends pulumi.ProviderResource {
|
||||
/**
|
||||
* The build daemon's address.
|
||||
*/
|
||||
declare public readonly host: pulumi.Output<string | undefined>;
|
||||
public readonly host!: pulumi.Output<string | undefined>;
|
||||
|
||||
/**
|
||||
* Create a Provider resource with the given unique name, arguments, and options.
|
||||
@@ -38,8 +38,8 @@ export class Provider extends pulumi.ProviderResource {
|
||||
let resourceInputs: pulumi.Inputs = {};
|
||||
opts = opts || {};
|
||||
{
|
||||
resourceInputs["host"] = (args?.host) ?? (utilities.getEnv("DOCKER_HOST") || "");
|
||||
resourceInputs["registries"] = pulumi.output(args?.registries).apply(JSON.stringify);
|
||||
resourceInputs["host"] = (args ? args.host : undefined) ?? (utilities.getEnv("DOCKER_HOST") || "");
|
||||
resourceInputs["registries"] = pulumi.output(args ? args.registries : undefined).apply(JSON.stringify);
|
||||
}
|
||||
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
||||
super(Provider.__pulumiType, name, resourceInputs, opts);
|
||||
|
||||
2
sdk/nodejs/tsconfig.json
generated
2
sdk/nodejs/tsconfig.json
generated
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"outDir": "bin",
|
||||
"target": "ES2020",
|
||||
"target": "es2016",
|
||||
"module": "commonjs",
|
||||
"moduleResolution": "node",
|
||||
"declaration": true,
|
||||
|
||||
Reference in New Issue
Block a user