Compare commits
11 Commits
update-git
...
update-git
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
96b823cf86 | ||
|
|
6ae16f10ff | ||
|
|
f17e43bad7 | ||
|
|
bce330f598 | ||
|
|
5107181566 | ||
|
|
0a2dd6e758 | ||
|
|
a0e387d0a8 | ||
|
|
daa144c232 | ||
|
|
1203c3b31f | ||
|
|
62ff8bf2d2 | ||
|
|
3b7e31b388 |
@@ -4,23 +4,26 @@ major-version: 0
|
|||||||
providerDefaultBranch: main
|
providerDefaultBranch: main
|
||||||
providerVersion: github.com/pulumi/pulumi-docker-build/provider.Version
|
providerVersion: github.com/pulumi/pulumi-docker-build/provider.Version
|
||||||
aws: true
|
aws: true
|
||||||
|
modulePath: .
|
||||||
gcp: true
|
gcp: true
|
||||||
sdkModuleDir: sdk/go/dockerbuild
|
sdkModuleDir: sdk/go/dockerbuild
|
||||||
parallel: 3
|
parallel: 3
|
||||||
|
esc:
|
||||||
|
enabled: true
|
||||||
envOverride:
|
envOverride:
|
||||||
AWS_REGION: us-west-2
|
AWS_REGION: us-west-2
|
||||||
PULUMI_API: "https://api.pulumi-staging.io"
|
PULUMI_API: "https://api.pulumi-staging.io"
|
||||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
||||||
AZURE_LOCATION: westus
|
AZURE_LOCATION: westus
|
||||||
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
DIGITALOCEAN_TOKEN: ${{ secrets.DIGITALOCEAN_TOKEN }}
|
||||||
GOOGLE_CI_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
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_POOL: pulumi-ci
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||||
GOOGLE_PROJECT: pulumi-ci-gcp-provider
|
GOOGLE_PROJECT: pulumi-ci-gcp-provider
|
||||||
GOOGLE_PROJECT_NUMBER: 895284651812
|
GOOGLE_PROJECT_NUMBER: 895284651812
|
||||||
GOOGLE_REGION: us-central1
|
GOOGLE_REGION: us-central1
|
||||||
GOOGLE_ZONE: us-central1-a
|
GOOGLE_ZONE: us-central1-a
|
||||||
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||||
|
|||||||
45
.config/mise.lock
Normal file
45
.config/mise.lock
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
[[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"
|
||||||
|
size = 27744219
|
||||||
|
url = "https://github.com/pulumi/pulumictl/releases/download/v0.0.50/pulumictl-v0.0.50-linux-amd64.tar.gz"
|
||||||
|
|
||||||
|
[[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"
|
||||||
|
size = 14282746
|
||||||
|
url = "https://github.com/pulumi/schema-tools/releases/download/v0.6.0/schema-tools-v0.6.0-linux-amd64.tar.gz"
|
||||||
|
|
||||||
|
[[tools.go]]
|
||||||
|
version = "1.21.13"
|
||||||
|
backend = "core:go"
|
||||||
|
|
||||||
|
[[tools.gradle]]
|
||||||
|
version = "7.6.6"
|
||||||
|
backend = "aqua:gradle/gradle"
|
||||||
|
|
||||||
|
[[tools.java]]
|
||||||
|
version = "corretto-11.0.28.6.1"
|
||||||
|
backend = "core:java"
|
||||||
|
|
||||||
|
[[tools.node]]
|
||||||
|
version = "20.19.5"
|
||||||
|
backend = "core:node"
|
||||||
|
|
||||||
|
[[tools.pulumi]]
|
||||||
|
version = "3.198.0"
|
||||||
|
backend = "aqua:pulumi/pulumi"
|
||||||
|
|
||||||
|
[[tools.python]]
|
||||||
|
version = "3.11.8"
|
||||||
|
backend = "core:python"
|
||||||
7
.config/mise.test.toml
Normal file
7
.config/mise.test.toml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# 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"
|
||||||
26
.config/mise.toml
Normal file
26
.config/mise.toml
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
# 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='MISE_GO_VERSION', default='latest') }}"
|
||||||
|
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 = "{{ get_env(name='MISE_PULUMI_VERSION', default='latest') }}"
|
||||||
|
"github:pulumi/pulumictl" = 'latest'
|
||||||
|
"github:pulumi/schema-tools" = "latest"
|
||||||
|
gradle = '7.6'
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
experimental = true # Required for Go binaries (e.g. pulumictl).
|
||||||
|
lockfile = true
|
||||||
2
.github/actions/esc-action/index.js
vendored
2
.github/actions/esc-action/index.js
vendored
@@ -5,7 +5,7 @@ var stream = fs.createWriteStream(file, { flags: "a" });
|
|||||||
|
|
||||||
for (const [name, value] of Object.entries(process.env)) {
|
for (const [name, value] of Object.entries(process.env)) {
|
||||||
try {
|
try {
|
||||||
stream.write(`${name}=${value}\n`);
|
stream.write(`${name}<<EEEOOOFFF\n${value}\nEEEOOOFFF\n`); // << syntax accommodates multiline strings.
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.log(`error: failed to set output for ${name}: ${err.message}`);
|
console.log(`error: failed to set output for ${name}: ${err.message}`);
|
||||||
}
|
}
|
||||||
|
|||||||
196
.github/workflows/build.yml
vendored
196
.github/workflows/build.yml
vendored
@@ -25,13 +25,10 @@ env:
|
|||||||
DOTNETVERSION: "8.0.x"
|
DOTNETVERSION: "8.0.x"
|
||||||
JAVAVERSION: "11"
|
JAVAVERSION: "11"
|
||||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
|
||||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||||
AWS_REGION: us-west-2
|
AWS_REGION: us-west-2
|
||||||
AZURE_LOCATION: westus
|
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_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||||
@@ -40,15 +37,28 @@ env:
|
|||||||
GOOGLE_REGION: us-central1
|
GOOGLE_REGION: us-central1
|
||||||
GOOGLE_ZONE: us-central1-a
|
GOOGLE_ZONE: us-central1-a
|
||||||
PULUMI_API: https://api.pulumi-staging.io
|
PULUMI_API: https://api.pulumi-staging.io
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
prerequisites:
|
prerequisites:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: prerequisites
|
name: prerequisites
|
||||||
|
permissions:
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
|
pull-requests: write # For schema check comment.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -66,7 +76,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- if: github.event_name == 'pull_request'
|
- if: github.event_name == 'pull_request'
|
||||||
name: Install Schema Tools
|
name: Install Schema Tools
|
||||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||||
@@ -87,7 +97,7 @@ jobs:
|
|||||||
echo 'EOF';
|
echo 'EOF';
|
||||||
} >> "$GITHUB_ENV"
|
} >> "$GITHUB_ENV"
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
||||||
name: Comment on PR with Details of Schema Check
|
name: Comment on PR with Details of Schema Check
|
||||||
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
||||||
@@ -162,7 +172,7 @@ jobs:
|
|||||||
|
|
||||||
# workflow. https://github.com/orgs/community/discussions/25702
|
# workflow. https://github.com/orgs/community/discussions/25702
|
||||||
|
|
||||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||||
env:
|
env:
|
||||||
HEAD_REF: ${{ github.head_ref }}
|
HEAD_REF: ${{ github.head_ref }}
|
||||||
- run: git status --porcelain
|
- run: git status --porcelain
|
||||||
@@ -177,10 +187,15 @@ jobs:
|
|||||||
path: ${{ github.workspace }}/bin/provider.tar.gz
|
path: ${{ github.workspace }}/bin/provider.tar.gz
|
||||||
- name: Test Provider Library
|
- name: Test Provider Library
|
||||||
run: make test_provider
|
run: make test_provider
|
||||||
- name: Upload coverage reports to Codecov
|
|
||||||
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
|
|
||||||
env:
|
env:
|
||||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
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
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
|
||||||
- if: failure() && github.event_name == 'push'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -189,7 +204,7 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
build_sdks:
|
build_sdks:
|
||||||
needs: prerequisites
|
needs: prerequisites
|
||||||
runs-on: pulumi-ubuntu-8core
|
runs-on: pulumi-ubuntu-8core
|
||||||
@@ -203,11 +218,23 @@ jobs:
|
|||||||
- go
|
- go
|
||||||
- java
|
- java
|
||||||
name: build_sdks
|
name: build_sdks
|
||||||
|
permissions:
|
||||||
|
pull-requests: write # For Renovate SDK updates.
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -225,18 +252,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -246,7 +273,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download provider
|
- name: Download provider
|
||||||
@@ -320,7 +347,7 @@ jobs:
|
|||||||
|
|
||||||
# workflow. https://github.com/orgs/community/discussions/25702
|
# workflow. https://github.com/orgs/community/discussions/25702
|
||||||
|
|
||||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||||
env:
|
env:
|
||||||
HEAD_REF: ${{ github.head_ref }}
|
HEAD_REF: ${{ github.head_ref }}
|
||||||
- run: git status --porcelain
|
- run: git status --porcelain
|
||||||
@@ -340,13 +367,29 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
|
|
||||||
tag_release_if_labeled_needs_release:
|
tag_release_if_labeled_needs_release:
|
||||||
name: Tag release if labeled as needs-release
|
name: Tag release if labeled as needs-release
|
||||||
needs: publish
|
needs: publish
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
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
|
- name: check if this commit needs release
|
||||||
if: ${{ env.RELEASE_BOT_ENDPOINT != '' }}
|
if: ${{ env.RELEASE_BOT_ENDPOINT != '' }}
|
||||||
uses: pulumi/action-release-by-pr-label@main
|
uses: pulumi/action-release-by-pr-label@main
|
||||||
@@ -354,10 +397,10 @@ jobs:
|
|||||||
command: "release-if-needed"
|
command: "release-if-needed"
|
||||||
repo: ${{ github.repository }}
|
repo: ${{ github.repository }}
|
||||||
commit: ${{ github.sha }}
|
commit: ${{ github.sha }}
|
||||||
slack_channel: ${{ secrets.RELEASE_OPS_SLACK_CHANNEL }}
|
slack_channel: C02MGR8JVST
|
||||||
env:
|
env:
|
||||||
RELEASE_BOT_ENDPOINT: ${{ secrets.RELEASE_BOT_ENDPOINT }}
|
RELEASE_BOT_ENDPOINT: ${{ steps.esc-secrets.outputs.RELEASE_BOT_ENDPOINT }}
|
||||||
RELEASE_BOT_KEY: ${{ secrets.RELEASE_BOT_KEY }}
|
RELEASE_BOT_KEY: ${{ steps.esc-secrets.outputs.RELEASE_BOT_KEY }}
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
test:
|
test:
|
||||||
@@ -377,12 +420,21 @@ jobs:
|
|||||||
name: test
|
name: test
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
id-token: write # For ESC secrets and Pulumi access token OIDC.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -400,18 +452,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -421,7 +473,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download provider
|
- name: Download provider
|
||||||
@@ -471,7 +523,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
environment: logins/pulumi-ci
|
environment: logins/pulumi-ci
|
||||||
- name: Authenticate to Google Cloud
|
- name: Authenticate to Google Cloud
|
||||||
uses: google-github-actions/auth@b7593ed2efd1c1617e1b0254da33b86225adb2a5 # v2.1.12
|
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093 # v3.0.0
|
||||||
with:
|
with:
|
||||||
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
||||||
}}/locations/global/workloadIdentityPools/${{
|
}}/locations/global/workloadIdentityPools/${{
|
||||||
@@ -479,7 +531,7 @@ jobs:
|
|||||||
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
||||||
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
||||||
- name: Setup gcloud auth
|
- name: Setup gcloud auth
|
||||||
uses: google-github-actions/setup-gcloud@cb1e50a9932213ecece00a606661ae9ca44f3397 # v2.2.0
|
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db # v3.0.1
|
||||||
with:
|
with:
|
||||||
install_components: gke-gcloud-auth-plugin
|
install_components: gke-gcloud-auth-plugin
|
||||||
- name: Install gotestfmt
|
- name: Install gotestfmt
|
||||||
@@ -492,6 +544,8 @@ jobs:
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
cd examples && go test -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 .
|
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'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -500,16 +554,28 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
publish:
|
publish:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: test
|
needs: test
|
||||||
name: publish
|
name: publish
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -536,27 +602,27 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Configure AWS Credentials
|
- name: Configure AWS Credentials
|
||||||
uses: aws-actions/configure-aws-credentials@7474bc4690e29a8392af63c5b98e7449536d5c3a # v4.3.1
|
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
|
||||||
with:
|
with:
|
||||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
aws-access-key-id: ${{ steps.esc-secrets.outputs.AWS_ACCESS_KEY_ID }}
|
||||||
aws-region: us-east-2
|
aws-region: us-east-2
|
||||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
aws-secret-access-key: ${{ steps.esc-secrets.outputs.AWS_SECRET_ACCESS_KEY }}
|
||||||
role-duration-seconds: 7200
|
role-duration-seconds: 7200
|
||||||
role-session-name: ${{ env.PROVIDER }}@githubActions
|
role-session-name: ${{ env.PROVIDER }}@githubActions
|
||||||
role-external-id: upload-pulumi-release
|
role-external-id: upload-pulumi-release
|
||||||
role-to-assume: ${{ secrets.AWS_UPLOAD_ROLE_ARN }}
|
role-to-assume: ${{ steps.esc-secrets.outputs.AWS_UPLOAD_ROLE_ARN }}
|
||||||
- name: Run GoReleaser
|
- name: Run GoReleaser
|
||||||
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
||||||
env:
|
env:
|
||||||
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
AZURE_SIGNING_CLIENT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID }}
|
||||||
AZURE_SIGNING_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
|
AZURE_SIGNING_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET }}
|
||||||
AZURE_SIGNING_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
|
AZURE_SIGNING_TENANT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID }}
|
||||||
AZURE_SIGNING_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
|
AZURE_SIGNING_KEY_VAULT_URI: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ secrets.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 == '' }}
|
||||||
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: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
with:
|
with:
|
||||||
args: -p 3 -f .goreleaser.prerelease.yml --clean --skip=validate --timeout 60m0s
|
args: -p 3 -f .goreleaser.prerelease.yml --clean --skip=validate --timeout 60m0s
|
||||||
version: latest
|
version: latest
|
||||||
@@ -568,16 +634,28 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
publish_sdk:
|
publish_sdk:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: publish
|
needs: publish
|
||||||
name: publish_sdk
|
name: publish_sdk
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -601,18 +679,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Download python SDK
|
- name: Download python SDK
|
||||||
@@ -644,16 +722,16 @@ jobs:
|
|||||||
- name: Publish SDKs
|
- name: Publish SDKs
|
||||||
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
||||||
env:
|
env:
|
||||||
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
|
NUGET_PUBLISH_KEY: ${{ steps.esc-secrets.outputs.NUGET_PUBLISH_KEY }}
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
NODE_AUTH_TOKEN: ${{ steps.esc-secrets.outputs.NPM_TOKEN }}
|
||||||
PYPI_PUBLISH_ARTIFACTS: all
|
PYPI_PUBLISH_ARTIFACTS: all
|
||||||
PYPI_USERNAME: __token__
|
PYPI_USERNAME: __token__
|
||||||
PYPI_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
|
PYPI_PASSWORD: ${{ steps.esc-secrets.outputs.PYPI_API_TOKEN }}
|
||||||
SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }}
|
SIGNING_KEY_ID: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY_ID }}
|
||||||
SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }}
|
SIGNING_KEY: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY }}
|
||||||
SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }}
|
SIGNING_PASSWORD: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_PASSWORD }}
|
||||||
PUBLISH_REPO_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
PUBLISH_REPO_USERNAME: ${{ steps.esc-secrets.outputs.OSSRH_USERNAME }}
|
||||||
PUBLISH_REPO_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
PUBLISH_REPO_PASSWORD: ${{ steps.esc-secrets.outputs.OSSRH_PASSWORD }}
|
||||||
- if: failure() && github.event_name == 'push'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -662,7 +740,7 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
lint:
|
lint:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
20
.github/workflows/command-dispatch.yml
vendored
20
.github/workflows/command-dispatch.yml
vendored
@@ -2,13 +2,10 @@
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
|
||||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||||
AWS_REGION: us-west-2
|
AWS_REGION: us-west-2
|
||||||
AZURE_LOCATION: westus
|
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_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||||
@@ -17,15 +14,28 @@ env:
|
|||||||
GOOGLE_REGION: us-central1
|
GOOGLE_REGION: us-central1
|
||||||
GOOGLE_ZONE: us-central1-a
|
GOOGLE_ZONE: us-central1-a
|
||||||
PULUMI_API: https://api.pulumi-staging.io
|
PULUMI_API: https://api.pulumi-staging.io
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
command-dispatch-for-testing:
|
command-dispatch-for-testing:
|
||||||
name: command-dispatch-for-testing
|
name: command-dispatch-for-testing
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
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
|
||||||
- uses: peter-evans/slash-command-dispatch@13bc09769d122a64f75aa5037256f6f2d78be8c4 # v4
|
- uses: peter-evans/slash-command-dispatch@13bc09769d122a64f75aa5037256f6f2d78be8c4 # v4
|
||||||
with:
|
with:
|
||||||
commands: |
|
commands: |
|
||||||
@@ -35,7 +45,7 @@ jobs:
|
|||||||
permission: write
|
permission: write
|
||||||
reaction-token: ${{ secrets.GITHUB_TOKEN }}
|
reaction-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
repository: pulumi/pulumi-docker-build
|
repository: pulumi/pulumi-docker-build
|
||||||
token: ${{ secrets.PULUMI_BOT_TOKEN }}
|
token: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
name: command-dispatch
|
name: command-dispatch
|
||||||
on:
|
on:
|
||||||
issue_comment:
|
issue_comment:
|
||||||
|
|||||||
2
.github/workflows/community-moderation.yml
vendored
2
.github/workflows/community-moderation.yml
vendored
@@ -1,7 +1,5 @@
|
|||||||
# WARNING: This file is autogenerated - changes will be overwritten when regenerated by https://github.com/pulumi/ci-mgmt
|
# 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:
|
jobs:
|
||||||
warn_codegen:
|
warn_codegen:
|
||||||
name: warn_codegen
|
name: warn_codegen
|
||||||
|
|||||||
2
.github/workflows/export-repo-secrets.yml
vendored
2
.github/workflows/export-repo-secrets.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
|||||||
app-id: 1256780 # Export Secrets GitHub App
|
app-id: 1256780 # Export Secrets GitHub App
|
||||||
private-key: ${{ secrets.EXPORT_SECRETS_PRIVATE_KEY }}
|
private-key: ${{ secrets.EXPORT_SECRETS_PRIVATE_KEY }}
|
||||||
- name: Export secrets to ESC
|
- name: Export secrets to ESC
|
||||||
uses: pulumi/esc-export-secrets-action@v1
|
uses: pulumi/esc-export-secrets-action@9d6485759b6adff2538ae91f1b77cc96265c9dad # v1
|
||||||
with:
|
with:
|
||||||
organization: pulumi
|
organization: pulumi
|
||||||
org-environment: imports/github-secrets
|
org-environment: imports/github-secrets
|
||||||
|
|||||||
191
.github/workflows/prerelease.yml
vendored
191
.github/workflows/prerelease.yml
vendored
@@ -16,13 +16,10 @@ env:
|
|||||||
DOTNETVERSION: "8.0.x"
|
DOTNETVERSION: "8.0.x"
|
||||||
JAVAVERSION: "11"
|
JAVAVERSION: "11"
|
||||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
|
||||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||||
AWS_REGION: us-west-2
|
AWS_REGION: us-west-2
|
||||||
AZURE_LOCATION: westus
|
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_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||||
@@ -32,6 +29,7 @@ env:
|
|||||||
GOOGLE_ZONE: us-central1-a
|
GOOGLE_ZONE: us-central1-a
|
||||||
PULUMI_API: https://api.pulumi-staging.io
|
PULUMI_API: https://api.pulumi-staging.io
|
||||||
IS_PRERELEASE: true
|
IS_PRERELEASE: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
prerequisites:
|
prerequisites:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@@ -40,7 +38,16 @@ jobs:
|
|||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -58,7 +65,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- if: github.event_name == 'pull_request'
|
- if: github.event_name == 'pull_request'
|
||||||
name: Install Schema Tools
|
name: Install Schema Tools
|
||||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||||
@@ -79,7 +86,7 @@ jobs:
|
|||||||
echo 'EOF';
|
echo 'EOF';
|
||||||
} >> "$GITHUB_ENV"
|
} >> "$GITHUB_ENV"
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
||||||
name: Comment on PR with Details of Schema Check
|
name: Comment on PR with Details of Schema Check
|
||||||
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
||||||
@@ -154,7 +161,7 @@ jobs:
|
|||||||
|
|
||||||
# workflow. https://github.com/orgs/community/discussions/25702
|
# workflow. https://github.com/orgs/community/discussions/25702
|
||||||
|
|
||||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||||
env:
|
env:
|
||||||
HEAD_REF: ${{ github.head_ref }}
|
HEAD_REF: ${{ github.head_ref }}
|
||||||
- run: git status --porcelain
|
- run: git status --porcelain
|
||||||
@@ -169,10 +176,15 @@ jobs:
|
|||||||
path: ${{ github.workspace }}/bin/provider.tar.gz
|
path: ${{ github.workspace }}/bin/provider.tar.gz
|
||||||
- name: Test Provider Library
|
- name: Test Provider Library
|
||||||
run: make test_provider
|
run: make test_provider
|
||||||
- name: Upload coverage reports to Codecov
|
|
||||||
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
|
|
||||||
env:
|
env:
|
||||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
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
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
|
||||||
- if: failure() && github.event_name == 'push'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -181,7 +193,7 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
build_sdks:
|
build_sdks:
|
||||||
needs: prerequisites
|
needs: prerequisites
|
||||||
runs-on: pulumi-ubuntu-8core
|
runs-on: pulumi-ubuntu-8core
|
||||||
@@ -195,11 +207,23 @@ jobs:
|
|||||||
- go
|
- go
|
||||||
- java
|
- java
|
||||||
name: build_sdks
|
name: build_sdks
|
||||||
|
permissions:
|
||||||
|
pull-requests: write # For Renovate SDK updates.
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -217,18 +241,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -238,7 +262,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download provider
|
- name: Download provider
|
||||||
@@ -312,7 +336,7 @@ jobs:
|
|||||||
|
|
||||||
# workflow. https://github.com/orgs/community/discussions/25702
|
# workflow. https://github.com/orgs/community/discussions/25702
|
||||||
|
|
||||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||||
env:
|
env:
|
||||||
HEAD_REF: ${{ github.head_ref }}
|
HEAD_REF: ${{ github.head_ref }}
|
||||||
- run: git status --porcelain
|
- run: git status --porcelain
|
||||||
@@ -331,7 +355,7 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
test:
|
test:
|
||||||
runs-on: pulumi-ubuntu-8core
|
runs-on: pulumi-ubuntu-8core
|
||||||
needs:
|
needs:
|
||||||
@@ -349,12 +373,21 @@ jobs:
|
|||||||
name: test
|
name: test
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
id-token: write # For ESC secrets and Pulumi access token OIDC.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -372,18 +405,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -393,7 +426,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download provider
|
- name: Download provider
|
||||||
@@ -443,7 +476,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
environment: logins/pulumi-ci
|
environment: logins/pulumi-ci
|
||||||
- name: Authenticate to Google Cloud
|
- name: Authenticate to Google Cloud
|
||||||
uses: google-github-actions/auth@b7593ed2efd1c1617e1b0254da33b86225adb2a5 # v2.1.12
|
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093 # v3.0.0
|
||||||
with:
|
with:
|
||||||
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
||||||
}}/locations/global/workloadIdentityPools/${{
|
}}/locations/global/workloadIdentityPools/${{
|
||||||
@@ -451,7 +484,7 @@ jobs:
|
|||||||
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
||||||
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
||||||
- name: Setup gcloud auth
|
- name: Setup gcloud auth
|
||||||
uses: google-github-actions/setup-gcloud@cb1e50a9932213ecece00a606661ae9ca44f3397 # v2.2.0
|
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db # v3.0.1
|
||||||
with:
|
with:
|
||||||
install_components: gke-gcloud-auth-plugin
|
install_components: gke-gcloud-auth-plugin
|
||||||
- name: Install gotestfmt
|
- name: Install gotestfmt
|
||||||
@@ -464,6 +497,8 @@ jobs:
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
cd examples && go test -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 .
|
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'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -472,16 +507,28 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
publish:
|
publish:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: test
|
needs: test
|
||||||
name: publish
|
name: publish
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -508,27 +555,27 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Configure AWS Credentials
|
- name: Configure AWS Credentials
|
||||||
uses: aws-actions/configure-aws-credentials@7474bc4690e29a8392af63c5b98e7449536d5c3a # v4.3.1
|
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
|
||||||
with:
|
with:
|
||||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
aws-access-key-id: ${{ steps.esc-secrets.outputs.AWS_ACCESS_KEY_ID }}
|
||||||
aws-region: us-east-2
|
aws-region: us-east-2
|
||||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
aws-secret-access-key: ${{ steps.esc-secrets.outputs.AWS_SECRET_ACCESS_KEY }}
|
||||||
role-duration-seconds: 7200
|
role-duration-seconds: 7200
|
||||||
role-session-name: ${{ env.PROVIDER }}@githubActions
|
role-session-name: ${{ env.PROVIDER }}@githubActions
|
||||||
role-external-id: upload-pulumi-release
|
role-external-id: upload-pulumi-release
|
||||||
role-to-assume: ${{ secrets.AWS_UPLOAD_ROLE_ARN }}
|
role-to-assume: ${{ steps.esc-secrets.outputs.AWS_UPLOAD_ROLE_ARN }}
|
||||||
- name: Run GoReleaser
|
- name: Run GoReleaser
|
||||||
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
||||||
env:
|
env:
|
||||||
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
AZURE_SIGNING_CLIENT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID }}
|
||||||
AZURE_SIGNING_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
|
AZURE_SIGNING_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET }}
|
||||||
AZURE_SIGNING_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
|
AZURE_SIGNING_TENANT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID }}
|
||||||
AZURE_SIGNING_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
|
AZURE_SIGNING_KEY_VAULT_URI: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ secrets.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 == '' }}
|
||||||
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: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
with:
|
with:
|
||||||
args: -p 3 -f .goreleaser.prerelease.yml --clean --skip=validate --timeout 60m0s
|
args: -p 3 -f .goreleaser.prerelease.yml --clean --skip=validate --timeout 60m0s
|
||||||
version: latest
|
version: latest
|
||||||
@@ -540,16 +587,28 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
publish_sdk:
|
publish_sdk:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: publish
|
needs: publish
|
||||||
name: publish_sdk
|
name: publish_sdk
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -573,18 +632,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Download python SDK
|
- name: Download python SDK
|
||||||
@@ -616,11 +675,11 @@ jobs:
|
|||||||
- name: Publish SDKs
|
- name: Publish SDKs
|
||||||
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
||||||
env:
|
env:
|
||||||
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
|
NUGET_PUBLISH_KEY: ${{ steps.esc-secrets.outputs.NUGET_PUBLISH_KEY }}
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
NODE_AUTH_TOKEN: ${{ steps.esc-secrets.outputs.NPM_TOKEN }}
|
||||||
PYPI_PUBLISH_ARTIFACTS: all
|
PYPI_PUBLISH_ARTIFACTS: all
|
||||||
PYPI_USERNAME: __token__
|
PYPI_USERNAME: __token__
|
||||||
PYPI_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
|
PYPI_PASSWORD: ${{ steps.esc-secrets.outputs.PYPI_API_TOKEN }}
|
||||||
- if: failure() && github.event_name == 'push'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -629,17 +688,29 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
publish_java_sdk:
|
publish_java_sdk:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
needs: publish
|
needs: publish
|
||||||
name: publish_java_sdk
|
name: publish_java_sdk
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -657,7 +728,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||||
with:
|
with:
|
||||||
@@ -665,7 +736,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download java SDK
|
- name: Download java SDK
|
||||||
@@ -677,18 +748,18 @@ jobs:
|
|||||||
run: tar -zxf ${{github.workspace}}/sdk/java.tar.gz -C
|
run: tar -zxf ${{github.workspace}}/sdk/java.tar.gz -C
|
||||||
${{github.workspace}}/sdk/java
|
${{github.workspace}}/sdk/java
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Publish Java SDK
|
- name: Publish Java SDK
|
||||||
run: gradle -p ./sdk/java publishToSonatype closeAndReleaseSonatypeStagingRepository
|
run: gradle -p ./sdk/java publishToSonatype closeAndReleaseSonatypeStagingRepository
|
||||||
env:
|
env:
|
||||||
PACKAGE_VERSION: ${{ env.PROVIDER_VERSION }}
|
PACKAGE_VERSION: ${{ env.PROVIDER_VERSION }}
|
||||||
SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }}
|
SIGNING_KEY_ID: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY_ID }}
|
||||||
SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }}
|
SIGNING_KEY: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY }}
|
||||||
SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }}
|
SIGNING_PASSWORD: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_PASSWORD }}
|
||||||
PUBLISH_REPO_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
PUBLISH_REPO_PASSWORD: ${{ steps.esc-secrets.outputs.OSSRH_PASSWORD }}
|
||||||
PUBLISH_REPO_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
PUBLISH_REPO_USERNAME: ${{ steps.esc-secrets.outputs.OSSRH_USERNAME }}
|
||||||
publish_go_sdk:
|
publish_go_sdk:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: publish-go-sdk
|
name: publish-go-sdk
|
||||||
|
|||||||
28
.github/workflows/pull-request.yml
vendored
28
.github/workflows/pull-request.yml
vendored
@@ -3,33 +3,7 @@
|
|||||||
name: pull-request
|
name: pull-request
|
||||||
on:
|
on:
|
||||||
pull_request_target: {}
|
pull_request_target: {}
|
||||||
env:
|
|
||||||
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:
|
jobs:
|
||||||
comment-on-pr:
|
comment-on-pr:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|||||||
212
.github/workflows/release.yml
vendored
212
.github/workflows/release.yml
vendored
@@ -17,13 +17,10 @@ env:
|
|||||||
DOTNETVERSION: "8.0.x"
|
DOTNETVERSION: "8.0.x"
|
||||||
JAVAVERSION: "11"
|
JAVAVERSION: "11"
|
||||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
|
||||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||||
AWS_REGION: us-west-2
|
AWS_REGION: us-west-2
|
||||||
AZURE_LOCATION: westus
|
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_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||||
@@ -32,15 +29,28 @@ env:
|
|||||||
GOOGLE_REGION: us-central1
|
GOOGLE_REGION: us-central1
|
||||||
GOOGLE_ZONE: us-central1-a
|
GOOGLE_ZONE: us-central1-a
|
||||||
PULUMI_API: https://api.pulumi-staging.io
|
PULUMI_API: https://api.pulumi-staging.io
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
prerequisites:
|
prerequisites:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: prerequisites
|
name: prerequisites
|
||||||
|
permissions:
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
|
pull-requests: write # For schema check comment.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -58,7 +68,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- if: github.event_name == 'pull_request'
|
- if: github.event_name == 'pull_request'
|
||||||
name: Install Schema Tools
|
name: Install Schema Tools
|
||||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||||
@@ -79,7 +89,7 @@ jobs:
|
|||||||
echo 'EOF';
|
echo 'EOF';
|
||||||
} >> "$GITHUB_ENV"
|
} >> "$GITHUB_ENV"
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
||||||
name: Comment on PR with Details of Schema Check
|
name: Comment on PR with Details of Schema Check
|
||||||
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
||||||
@@ -154,7 +164,7 @@ jobs:
|
|||||||
|
|
||||||
# workflow. https://github.com/orgs/community/discussions/25702
|
# workflow. https://github.com/orgs/community/discussions/25702
|
||||||
|
|
||||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||||
env:
|
env:
|
||||||
HEAD_REF: ${{ github.head_ref }}
|
HEAD_REF: ${{ github.head_ref }}
|
||||||
- run: git status --porcelain
|
- run: git status --porcelain
|
||||||
@@ -169,10 +179,15 @@ jobs:
|
|||||||
path: ${{ github.workspace }}/bin/provider.tar.gz
|
path: ${{ github.workspace }}/bin/provider.tar.gz
|
||||||
- name: Test Provider Library
|
- name: Test Provider Library
|
||||||
run: make test_provider
|
run: make test_provider
|
||||||
- name: Upload coverage reports to Codecov
|
|
||||||
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
|
|
||||||
env:
|
env:
|
||||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
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
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
|
||||||
- if: failure() && github.event_name == 'push'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -181,7 +196,7 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
build_sdks:
|
build_sdks:
|
||||||
needs: prerequisites
|
needs: prerequisites
|
||||||
runs-on: pulumi-ubuntu-8core
|
runs-on: pulumi-ubuntu-8core
|
||||||
@@ -195,11 +210,23 @@ jobs:
|
|||||||
- go
|
- go
|
||||||
- java
|
- java
|
||||||
name: build_sdks
|
name: build_sdks
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -217,18 +244,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -238,7 +265,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download provider
|
- name: Download provider
|
||||||
@@ -312,7 +339,7 @@ jobs:
|
|||||||
|
|
||||||
# workflow. https://github.com/orgs/community/discussions/25702
|
# workflow. https://github.com/orgs/community/discussions/25702
|
||||||
|
|
||||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||||
env:
|
env:
|
||||||
HEAD_REF: ${{ github.head_ref }}
|
HEAD_REF: ${{ github.head_ref }}
|
||||||
- run: git status --porcelain
|
- run: git status --porcelain
|
||||||
@@ -331,7 +358,7 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
test:
|
test:
|
||||||
runs-on: pulumi-ubuntu-8core
|
runs-on: pulumi-ubuntu-8core
|
||||||
needs:
|
needs:
|
||||||
@@ -349,12 +376,21 @@ jobs:
|
|||||||
name: test
|
name: test
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -372,18 +408,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -393,7 +429,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download provider
|
- name: Download provider
|
||||||
@@ -443,7 +479,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
environment: logins/pulumi-ci
|
environment: logins/pulumi-ci
|
||||||
- name: Authenticate to Google Cloud
|
- name: Authenticate to Google Cloud
|
||||||
uses: google-github-actions/auth@b7593ed2efd1c1617e1b0254da33b86225adb2a5 # v2.1.12
|
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093 # v3.0.0
|
||||||
with:
|
with:
|
||||||
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
||||||
}}/locations/global/workloadIdentityPools/${{
|
}}/locations/global/workloadIdentityPools/${{
|
||||||
@@ -451,7 +487,7 @@ jobs:
|
|||||||
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
||||||
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
||||||
- name: Setup gcloud auth
|
- name: Setup gcloud auth
|
||||||
uses: google-github-actions/setup-gcloud@cb1e50a9932213ecece00a606661ae9ca44f3397 # v2.2.0
|
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db # v3.0.1
|
||||||
with:
|
with:
|
||||||
install_components: gke-gcloud-auth-plugin
|
install_components: gke-gcloud-auth-plugin
|
||||||
- name: Install gotestfmt
|
- name: Install gotestfmt
|
||||||
@@ -464,6 +500,8 @@ jobs:
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
cd examples && go test -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 .
|
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'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -472,16 +510,28 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
publish:
|
publish:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: test
|
needs: test
|
||||||
name: publish
|
name: publish
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -508,27 +558,27 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Configure AWS Credentials
|
- name: Configure AWS Credentials
|
||||||
uses: aws-actions/configure-aws-credentials@7474bc4690e29a8392af63c5b98e7449536d5c3a # v4.3.1
|
uses: aws-actions/configure-aws-credentials@a03048d87541d1d9fcf2ecf528a4a65ba9bd7838 # v5.0.0
|
||||||
with:
|
with:
|
||||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
aws-access-key-id: ${{ steps.esc-secrets.outputs.AWS_ACCESS_KEY_ID }}
|
||||||
aws-region: us-east-2
|
aws-region: us-east-2
|
||||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
aws-secret-access-key: ${{ steps.esc-secrets.outputs.AWS_SECRET_ACCESS_KEY }}
|
||||||
role-duration-seconds: 7200
|
role-duration-seconds: 7200
|
||||||
role-session-name: ${{ env.PROVIDER }}@githubActions
|
role-session-name: ${{ env.PROVIDER }}@githubActions
|
||||||
role-external-id: upload-pulumi-release
|
role-external-id: upload-pulumi-release
|
||||||
role-to-assume: ${{ secrets.AWS_UPLOAD_ROLE_ARN }}
|
role-to-assume: ${{ steps.esc-secrets.outputs.AWS_UPLOAD_ROLE_ARN }}
|
||||||
- name: Run GoReleaser
|
- name: Run GoReleaser
|
||||||
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
uses: goreleaser/goreleaser-action@5742e2a039330cbb23ebf35f046f814d4c6ff811 # v5.1.0
|
||||||
env:
|
env:
|
||||||
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
GORELEASER_CURRENT_TAG: v${{ steps.version.outputs.version }}
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
AZURE_SIGNING_CLIENT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_ID }}
|
||||||
AZURE_SIGNING_CLIENT_ID: ${{ secrets.AZURE_SIGNING_CLIENT_ID }}
|
AZURE_SIGNING_CLIENT_SECRET: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_CLIENT_SECRET }}
|
||||||
AZURE_SIGNING_CLIENT_SECRET: ${{ secrets.AZURE_SIGNING_CLIENT_SECRET }}
|
AZURE_SIGNING_TENANT_ID: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_TENANT_ID }}
|
||||||
AZURE_SIGNING_TENANT_ID: ${{ secrets.AZURE_SIGNING_TENANT_ID }}
|
AZURE_SIGNING_KEY_VAULT_URI: ${{ steps.esc-secrets.outputs.AZURE_SIGNING_KEY_VAULT_URI }}
|
||||||
AZURE_SIGNING_KEY_VAULT_URI: ${{ secrets.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 == '' }}
|
||||||
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: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
with:
|
with:
|
||||||
args: -p 3 release --clean --timeout 60m0s
|
args: -p 3 release --clean --timeout 60m0s
|
||||||
version: latest
|
version: latest
|
||||||
@@ -540,16 +590,28 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
publish_sdk:
|
publish_sdk:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: publish
|
needs: publish
|
||||||
name: publish_sdks
|
name: publish_sdks
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -573,18 +635,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Download python SDK
|
- name: Download python SDK
|
||||||
@@ -616,11 +678,11 @@ jobs:
|
|||||||
- name: Publish SDKs
|
- name: Publish SDKs
|
||||||
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
run: ./ci-scripts/ci/publish-tfgen-package ${{ github.workspace }}
|
||||||
env:
|
env:
|
||||||
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
|
NUGET_PUBLISH_KEY: ${{ steps.esc-secrets.outputs.NUGET_PUBLISH_KEY }}
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
NODE_AUTH_TOKEN: ${{ steps.esc-secrets.outputs.NPM_TOKEN }}
|
||||||
PYPI_PUBLISH_ARTIFACTS: all
|
PYPI_PUBLISH_ARTIFACTS: all
|
||||||
PYPI_USERNAME: __token__
|
PYPI_USERNAME: __token__
|
||||||
PYPI_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
|
PYPI_PASSWORD: ${{ steps.esc-secrets.outputs.PYPI_API_TOKEN }}
|
||||||
- if: failure() && github.event_name == 'push'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -629,17 +691,29 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
publish_java_sdk:
|
publish_java_sdk:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
needs: publish
|
needs: publish
|
||||||
name: publish_java_sdk
|
name: publish_java_sdk
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -657,7 +731,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
uses: actions/setup-java@dded0888837ed1f317902acf8a20df0ad188d165 # v5.0.0
|
||||||
with:
|
with:
|
||||||
@@ -665,7 +739,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download java SDK
|
- name: Download java SDK
|
||||||
@@ -677,18 +751,18 @@ jobs:
|
|||||||
run: tar -zxf ${{github.workspace}}/sdk/java.tar.gz -C
|
run: tar -zxf ${{github.workspace}}/sdk/java.tar.gz -C
|
||||||
${{github.workspace}}/sdk/java
|
${{github.workspace}}/sdk/java
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Publish Java SDK
|
- name: Publish Java SDK
|
||||||
run: gradle -p ./sdk/java publishToSonatype closeAndReleaseSonatypeStagingRepository
|
run: gradle -p ./sdk/java publishToSonatype closeAndReleaseSonatypeStagingRepository
|
||||||
env:
|
env:
|
||||||
PACKAGE_VERSION: ${{ env.PROVIDER_VERSION }}
|
PACKAGE_VERSION: ${{ env.PROVIDER_VERSION }}
|
||||||
SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }}
|
SIGNING_KEY_ID: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY_ID }}
|
||||||
SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }}
|
SIGNING_KEY: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_KEY }}
|
||||||
SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }}
|
SIGNING_PASSWORD: ${{ steps.esc-secrets.outputs.JAVA_SIGNING_PASSWORD }}
|
||||||
PUBLISH_REPO_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
|
PUBLISH_REPO_PASSWORD: ${{ steps.esc-secrets.outputs.OSSRH_PASSWORD }}
|
||||||
PUBLISH_REPO_USERNAME: ${{ secrets.OSSRH_USERNAME }}
|
PUBLISH_REPO_USERNAME: ${{ steps.esc-secrets.outputs.OSSRH_USERNAME }}
|
||||||
publish_go_sdk:
|
publish_go_sdk:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: publish-go-sdk
|
name: publish-go-sdk
|
||||||
@@ -726,7 +800,23 @@ jobs:
|
|||||||
dispatch_docs_build:
|
dispatch_docs_build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: publish_go_sdk
|
needs: publish_go_sdk
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
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
|
- name: Install pulumictl
|
||||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||||
with:
|
with:
|
||||||
@@ -735,5 +825,5 @@ jobs:
|
|||||||
run: pulumictl create docs-build pulumi-${{ env.PROVIDER }}
|
run: pulumictl create docs-build pulumi-${{ env.PROVIDER }}
|
||||||
"${GITHUB_REF#refs/tags/}"
|
"${GITHUB_REF#refs/tags/}"
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
name: dispatch_docs_build
|
name: dispatch_docs_build
|
||||||
|
|||||||
17
.github/workflows/release_command.yml
vendored
17
.github/workflows/release_command.yml
vendored
@@ -13,7 +13,16 @@ jobs:
|
|||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
persist-credentials: false
|
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
|
||||||
- name: Should release PR
|
- name: Should release PR
|
||||||
uses: pulumi/action-release-by-pr-label@main
|
uses: pulumi/action-release-by-pr-label@main
|
||||||
with:
|
with:
|
||||||
@@ -21,10 +30,10 @@ jobs:
|
|||||||
repo: ${{ github.repository }}
|
repo: ${{ github.repository }}
|
||||||
pr: ${{ github.event.client_payload.pull_request.number }}
|
pr: ${{ github.event.client_payload.pull_request.number }}
|
||||||
version: ${{ github.event.client_payload.slash_command.args.all }}
|
version: ${{ github.event.client_payload.slash_command.args.all }}
|
||||||
slack_channel: ${{ secrets.RELEASE_OPS_STAGING_SLACK_CHANNEL }}
|
slack_channel: ${{ steps.esc-secrets.outputs.RELEASE_OPS_STAGING_SLACK_CHANNEL }}
|
||||||
env:
|
env:
|
||||||
RELEASE_BOT_ENDPOINT: ${{ secrets.RELEASE_BOT_ENDPOINT }}
|
RELEASE_BOT_ENDPOINT: ${{ steps.esc-secrets.outputs.RELEASE_BOT_ENDPOINT }}
|
||||||
RELEASE_BOT_KEY: ${{ secrets.RELEASE_BOT_KEY }}
|
RELEASE_BOT_KEY: ${{ steps.esc-secrets.outputs.RELEASE_BOT_KEY }}
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
- if: failure()
|
- if: failure()
|
||||||
name: Notify failure
|
name: Notify failure
|
||||||
|
|||||||
119
.github/workflows/run-acceptance-tests.yml
vendored
119
.github/workflows/run-acceptance-tests.yml
vendored
@@ -20,13 +20,10 @@ env:
|
|||||||
DOTNETVERSION: "8.0.x"
|
DOTNETVERSION: "8.0.x"
|
||||||
JAVAVERSION: "11"
|
JAVAVERSION: "11"
|
||||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
|
||||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||||
AWS_REGION: us-west-2
|
AWS_REGION: us-west-2
|
||||||
AZURE_LOCATION: westus
|
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_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||||
@@ -38,9 +35,16 @@ env:
|
|||||||
PR_COMMIT_SHA: ${{ github.event.client_payload.pull_request.head.sha }}
|
PR_COMMIT_SHA: ${{ github.event.client_payload.pull_request.head.sha }}
|
||||||
jobs:
|
jobs:
|
||||||
comment-notification:
|
comment-notification:
|
||||||
|
if: github.event_name == 'repository_dispatch'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: comment-notification
|
name: comment-notification
|
||||||
steps:
|
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
|
- name: Create URL to the run output
|
||||||
id: vars
|
id: vars
|
||||||
run: echo
|
run: echo
|
||||||
@@ -49,21 +53,32 @@ jobs:
|
|||||||
- name: Update with Result
|
- name: Update with Result
|
||||||
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
|
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
|
||||||
with:
|
with:
|
||||||
token: ${{ secrets.PULUMI_BOT_TOKEN }}
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
repository: ${{ github.event.client_payload.github.payload.repository.full_name }}
|
repository: ${{ github.event.client_payload.github.payload.repository.full_name }}
|
||||||
issue-number: ${{ github.event.client_payload.github.payload.issue.number }}
|
issue-number: ${{ github.event.client_payload.github.payload.issue.number }}
|
||||||
body: "Please view the PR build: ${{ steps.vars.outputs.run-url }}"
|
body: "Please view the PR build: ${{ steps.vars.outputs.run-url }}"
|
||||||
if: github.event_name == 'repository_dispatch'
|
|
||||||
prerequisites:
|
prerequisites:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: prerequisites
|
name: prerequisites
|
||||||
|
permissions:
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
|
pull-requests: write # For schema check comment.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
lfs: true
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
ref: ${{ env.PR_COMMIT_SHA }}
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -81,7 +96,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- if: github.event_name == 'pull_request'
|
- if: github.event_name == 'pull_request'
|
||||||
name: Install Schema Tools
|
name: Install Schema Tools
|
||||||
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
uses: jaxxstorm/action-install-gh-release@6096f2a2bbfee498ced520b6922ac2c06e990ed2 # v2.1.0
|
||||||
@@ -102,7 +117,7 @@ jobs:
|
|||||||
echo 'EOF';
|
echo 'EOF';
|
||||||
} >> "$GITHUB_ENV"
|
} >> "$GITHUB_ENV"
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
- if: github.event_name == 'pull_request' && github.actor != 'dependabot[bot]'
|
||||||
name: Comment on PR with Details of Schema Check
|
name: Comment on PR with Details of Schema Check
|
||||||
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1
|
||||||
@@ -177,7 +192,7 @@ jobs:
|
|||||||
|
|
||||||
# workflow. https://github.com/orgs/community/discussions/25702
|
# workflow. https://github.com/orgs/community/discussions/25702
|
||||||
|
|
||||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||||
env:
|
env:
|
||||||
HEAD_REF: ${{ github.head_ref }}
|
HEAD_REF: ${{ github.head_ref }}
|
||||||
- run: git status --porcelain
|
- run: git status --porcelain
|
||||||
@@ -192,10 +207,15 @@ jobs:
|
|||||||
path: ${{ github.workspace }}/bin/provider.tar.gz
|
path: ${{ github.workspace }}/bin/provider.tar.gz
|
||||||
- name: Test Provider Library
|
- name: Test Provider Library
|
||||||
run: make test_provider
|
run: make test_provider
|
||||||
- name: Upload coverage reports to Codecov
|
|
||||||
uses: codecov/codecov-action@fdcc8476540edceab3de004e990f80d881c6cc00 # v5.5.0
|
|
||||||
env:
|
env:
|
||||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
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
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
|
||||||
- if: failure() && github.event_name == 'push'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -204,7 +224,7 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
if: github.event_name == 'repository_dispatch' ||
|
if: github.event_name == 'repository_dispatch' ||
|
||||||
github.event.pull_request.head.repo.full_name == github.repository
|
github.event.pull_request.head.repo.full_name == github.repository
|
||||||
build_sdks:
|
build_sdks:
|
||||||
@@ -220,13 +240,25 @@ jobs:
|
|||||||
- go
|
- go
|
||||||
- java
|
- java
|
||||||
name: build_sdks
|
name: build_sdks
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
lfs: true
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
ref: ${{ env.PR_COMMIT_SHA }}
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -244,18 +276,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -265,7 +297,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download provider
|
- name: Download provider
|
||||||
@@ -338,7 +370,7 @@ jobs:
|
|||||||
|
|
||||||
# workflow. https://github.com/orgs/community/discussions/25702
|
# workflow. https://github.com/orgs/community/discussions/25702
|
||||||
|
|
||||||
git push https://pulumi-bot:${{ secrets.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
git push https://pulumi-bot:${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}@github.com/${{ github.repository }} "HEAD:$HEAD_REF"
|
||||||
env:
|
env:
|
||||||
HEAD_REF: ${{ github.head_ref }}
|
HEAD_REF: ${{ github.head_ref }}
|
||||||
- run: git status --porcelain
|
- run: git status --porcelain
|
||||||
@@ -358,7 +390,7 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
if: github.event_name == 'repository_dispatch' ||
|
if: github.event_name == 'repository_dispatch' ||
|
||||||
github.event.pull_request.head.repo.full_name == github.repository
|
github.event.pull_request.head.repo.full_name == github.repository
|
||||||
test:
|
test:
|
||||||
@@ -385,7 +417,16 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
lfs: true
|
lfs: true
|
||||||
persist-credentials: false
|
persist-credentials: false
|
||||||
ref: ${{ env.PR_COMMIT_SHA }}
|
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
|
||||||
- id: version
|
- id: version
|
||||||
name: Set Provider Version
|
name: Set Provider Version
|
||||||
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
uses: pulumi/provider-version-action@f96d032a2758fdda7939e5728eff6c0d980ae894 # v1.6.0
|
||||||
@@ -403,18 +444,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -424,7 +465,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Download provider
|
- name: Download provider
|
||||||
@@ -474,7 +515,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
environment: logins/pulumi-ci
|
environment: logins/pulumi-ci
|
||||||
- name: Authenticate to Google Cloud
|
- name: Authenticate to Google Cloud
|
||||||
uses: google-github-actions/auth@b7593ed2efd1c1617e1b0254da33b86225adb2a5 # v2.1.12
|
uses: google-github-actions/auth@7c6bc770dae815cd3e89ee6cdf493a5fab2cc093 # v3.0.0
|
||||||
with:
|
with:
|
||||||
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER
|
||||||
}}/locations/global/workloadIdentityPools/${{
|
}}/locations/global/workloadIdentityPools/${{
|
||||||
@@ -482,7 +523,7 @@ jobs:
|
|||||||
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
|
||||||
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
service_account: ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
|
||||||
- name: Setup gcloud auth
|
- name: Setup gcloud auth
|
||||||
uses: google-github-actions/setup-gcloud@cb1e50a9932213ecece00a606661ae9ca44f3397 # v2.2.0
|
uses: google-github-actions/setup-gcloud@aa5489c8933f4cc7a4f7d45035b3b1440c9c10db # v3.0.1
|
||||||
with:
|
with:
|
||||||
install_components: gke-gcloud-auth-plugin
|
install_components: gke-gcloud-auth-plugin
|
||||||
- name: Install gotestfmt
|
- name: Install gotestfmt
|
||||||
@@ -495,6 +536,8 @@ jobs:
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
cd examples && go test -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 .
|
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'
|
- if: failure() && github.event_name == 'push'
|
||||||
name: Notify Slack
|
name: Notify Slack
|
||||||
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
uses: 8398a7/action-slack@1750b5085f3ec60384090fb7c52965ef822e869e # v3.18.0
|
||||||
@@ -503,13 +546,28 @@ jobs:
|
|||||||
fields: repo,commit,author,action
|
fields: repo,commit,author,action
|
||||||
status: ${{ job.status }}
|
status: ${{ job.status }}
|
||||||
env:
|
env:
|
||||||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
|
SLACK_WEBHOOK_URL: ${{ steps.esc-secrets.outputs.SLACK_WEBHOOK_URL }}
|
||||||
if: github.event_name == 'repository_dispatch' ||
|
if: github.event_name == 'repository_dispatch' ||
|
||||||
github.event.pull_request.head.repo.full_name == github.repository
|
github.event.pull_request.head.repo.full_name == github.repository
|
||||||
sentinel:
|
sentinel:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
name: sentinel
|
name: sentinel
|
||||||
steps:
|
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
|
- name: Mark workflow as successful
|
||||||
uses: guibranco/github-status-action-v2@0849440ec82c5fa69b2377725b9b7852a3977e76 # v1.1.13
|
uses: guibranco/github-status-action-v2@0849440ec82c5fa69b2377725b9b7852a3977e76 # v1.1.13
|
||||||
with:
|
with:
|
||||||
@@ -520,6 +578,7 @@ jobs:
|
|||||||
sha: ${{ github.event.pull_request.head.sha || github.sha }}
|
sha: ${{ github.event.pull_request.head.sha || github.sha }}
|
||||||
permissions:
|
permissions:
|
||||||
statuses: write
|
statuses: write
|
||||||
|
id-token: write # For ESC secrets.
|
||||||
if: github.event_name == 'repository_dispatch' ||
|
if: github.event_name == 'repository_dispatch' ||
|
||||||
github.event.pull_request.head.repo.full_name == github.repository
|
github.event.pull_request.head.repo.full_name == github.repository
|
||||||
needs:
|
needs:
|
||||||
|
|||||||
28
.github/workflows/weekly-pulumi-update.yml
vendored
28
.github/workflows/weekly-pulumi-update.yml
vendored
@@ -17,13 +17,10 @@ env:
|
|||||||
DOTNETVERSION: "8.0.x"
|
DOTNETVERSION: "8.0.x"
|
||||||
JAVAVERSION: "11"
|
JAVAVERSION: "11"
|
||||||
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e
|
||||||
ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }}
|
|
||||||
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
ARM_SUBSCRIPTION_ID: 0282681f-7a9e-424b-80b2-96babd57a8a1
|
||||||
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
ARM_TENANT_ID: 706143bc-e1d4-4593-aee2-c9dc60ab9be7
|
||||||
AWS_REGION: us-west-2
|
AWS_REGION: us-west-2
|
||||||
AZURE_LOCATION: westus
|
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_SERVICE_ACCOUNT_EMAIL: pulumi-ci@pulumi-ci-gcp-provider.iam.gserviceaccount.com
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_POOL: pulumi-ci
|
||||||
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER: pulumi-ci
|
||||||
@@ -32,14 +29,25 @@ env:
|
|||||||
GOOGLE_REGION: us-central1
|
GOOGLE_REGION: us-central1
|
||||||
GOOGLE_ZONE: us-central1-a
|
GOOGLE_ZONE: us-central1-a
|
||||||
PULUMI_API: https://api.pulumi-staging.io
|
PULUMI_API: https://api.pulumi-staging.io
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
weekly-pulumi-update:
|
weekly-pulumi-update:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
permissions: write-all
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
||||||
with:
|
with:
|
||||||
lfs: true
|
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 Go
|
- name: Install Go
|
||||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||||
with:
|
with:
|
||||||
@@ -50,18 +58,18 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
repo: pulumi/pulumictl
|
repo: pulumi/pulumictl
|
||||||
- name: Install Pulumi CLI
|
- name: Install Pulumi CLI
|
||||||
uses: pulumi/actions@df5a93ad715135263c732ba288301bd044c383c0 # v6.3.0
|
uses: pulumi/actions@cc7494be991dba0978f7ffafaf995b0449a0998e # v6.5.0
|
||||||
- name: Setup DotNet
|
- name: Setup DotNet
|
||||||
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
|
uses: actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNETVERSION }}
|
dotnet-version: ${{ env.DOTNETVERSION }}
|
||||||
- name: Setup Node
|
- name: Setup Node
|
||||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
|
||||||
with:
|
with:
|
||||||
node-version: ${{ env.NODEVERSION }}
|
node-version: ${{ env.NODEVERSION }}
|
||||||
registry-url: https://registry.npmjs.org
|
registry-url: https://registry.npmjs.org
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
|
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHONVERSION }}
|
python-version: ${{ env.PYTHONVERSION }}
|
||||||
- name: Setup Java
|
- name: Setup Java
|
||||||
@@ -71,7 +79,7 @@ jobs:
|
|||||||
distribution: temurin
|
distribution: temurin
|
||||||
cache: gradle
|
cache: gradle
|
||||||
- name: Setup Gradle
|
- name: Setup Gradle
|
||||||
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
|
uses: gradle/actions/setup-gradle@ed408507eac070d1f99cc633dbcf757c94c7933a # v4.4.3
|
||||||
with:
|
with:
|
||||||
gradle-version: "7.6"
|
gradle-version: "7.6"
|
||||||
- name: Update Pulumi/Pulumi
|
- name: Update Pulumi/Pulumi
|
||||||
@@ -132,5 +140,5 @@ jobs:
|
|||||||
|
|
||||||
gh pr create -t "$msg" -b "$msg" --head "$(git branch --show-current)"
|
gh pr create -t "$msg" -b "$msg" --head "$(git branch --show-current)"
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
|
GITHUB_TOKEN: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
|
||||||
name: weekly-pulumi-update
|
name: weekly-pulumi-update
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
3.187.0
|
3.192.0
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ toolchain go1.24.5
|
|||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.12
|
github.com/pulumi/pulumi-docker-build/sdk/go/dockerbuild v0.0.12
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0
|
||||||
)
|
)
|
||||||
|
|
||||||
require (
|
require (
|
||||||
@@ -62,7 +62,7 @@ require (
|
|||||||
github.com/pkg/errors v0.9.1 // indirect
|
github.com/pkg/errors v0.9.1 // indirect
|
||||||
github.com/pkg/term v1.1.0 // indirect
|
github.com/pkg/term v1.1.0 // indirect
|
||||||
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect
|
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect
|
||||||
github.com/pulumi/esc v0.14.3 // indirect
|
github.com/pulumi/esc v0.17.0 // indirect
|
||||||
github.com/rivo/uniseg v0.4.7 // indirect
|
github.com/rivo/uniseg v0.4.7 // indirect
|
||||||
github.com/rogpeppe/go-internal v1.14.1 // indirect
|
github.com/rogpeppe/go-internal v1.14.1 // indirect
|
||||||
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect
|
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect
|
||||||
|
|||||||
@@ -159,12 +159,12 @@ 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/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 h1:vkHw5I/plNdTr435cARxCW6q9gc0S/Yxz7Mkd38pOb0=
|
||||||
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
|
github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE=
|
||||||
github.com/pulumi/esc v0.14.3 h1:Zli+9LiSDT/W+Fsfr8tITxCo+5wn969tLrE4KLv44G8=
|
github.com/pulumi/esc v0.17.0 h1:oaVOIyFTENlYDuqc3pW75lQT9jb2cd6ie/4/Twxn66w=
|
||||||
github.com/pulumi/esc v0.14.3/go.mod h1:XnSxlt5NkmuAj304l/gK4pRErFbtqq6XpfX1tYT9Jbc=
|
github.com/pulumi/esc v0.17.0/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 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-docker-build/sdk/go/dockerbuild v0.0.12/go.mod h1:6zFMe786NvFDO03BVJwdw1R/Yms4F6vAU49iBHo8zbQ=
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0 h1:BflBBeD/qaoKN4Tov11g4aHzJ7pTXBSb8otgmteRer0=
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0 h1:sfHuR3P02wSbV3xdSMEQ0+uC/HzlMz0YfKrVAXy1hSQ=
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0/go.mod h1:BnpKxUc6QlxqoCqobHNZsUuIuY27H6ZFUk0Cp+0JN5U=
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0/go.mod h1:aV0+c5xpSYccWKmOjTZS9liYCqh7+peu3cQgSXu7CJw=
|
||||||
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
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 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ=
|
||||||
github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
|
github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
|
||||||
|
|||||||
@@ -181,8 +181,9 @@ func TestConfig(t *testing.T) {
|
|||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
test := integration.ProgramTestOptions{
|
test := integration.ProgramTestOptions{
|
||||||
Dir: path.Join(cwd, "tests", "config"),
|
Dir: path.Join(cwd, "tests", "config"),
|
||||||
Dependencies: []string{"@pulumi/docker-build"},
|
Dependencies: []string{"@pulumi/docker-build"},
|
||||||
|
SkipEmptyPreviewUpdate: true,
|
||||||
}
|
}
|
||||||
|
|
||||||
integration.ProgramTest(t, &test)
|
integration.ProgramTest(t, &test)
|
||||||
|
|||||||
4
go.mod
4
go.mod
@@ -19,11 +19,11 @@ require (
|
|||||||
github.com/pulumi/pulumi-go-provider v1.1.1
|
github.com/pulumi/pulumi-go-provider v1.1.1
|
||||||
github.com/pulumi/pulumi-java/pkg v1.16.0
|
github.com/pulumi/pulumi-java/pkg v1.16.0
|
||||||
github.com/pulumi/pulumi-yaml v1.21.2
|
github.com/pulumi/pulumi-yaml v1.21.2
|
||||||
github.com/pulumi/pulumi/pkg/v3 v3.187.0
|
github.com/pulumi/pulumi/pkg/v3 v3.192.0
|
||||||
github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3 v3.0.0-20250806165243-bee5e4fa4815
|
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/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/python/cmd/pulumi-language-python/v3 v3.0.0-20250806165243-bee5e4fa4815
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0
|
||||||
github.com/regclient/regclient v0.7.1
|
github.com/regclient/regclient v0.7.1
|
||||||
github.com/sirupsen/logrus v1.9.3
|
github.com/sirupsen/logrus v1.9.3
|
||||||
github.com/spf13/afero v1.14.0
|
github.com/spf13/afero v1.14.0
|
||||||
|
|||||||
8
go.sum
8
go.sum
@@ -902,16 +902,16 @@ github.com/pulumi/pulumi-java/pkg v1.16.0 h1:8KCiIXWv2uxfIks0SdgOezyXg4HZIoPfHID
|
|||||||
github.com/pulumi/pulumi-java/pkg v1.16.0/go.mod h1:VeMZ1s9LfXBypao4A1tRF3EB7fYnYZ1LwImyg6FBX0c=
|
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 h1:czqC5AazinfX6Bj0nqAAQ6x/Cr8/3oUz3HUjJg6tJ4o=
|
||||||
github.com/pulumi/pulumi-yaml v1.21.2/go.mod h1:KOqDnuJksfIq8belFVFN3IEI4r0NgW69M0QPSj54On4=
|
github.com/pulumi/pulumi-yaml v1.21.2/go.mod h1:KOqDnuJksfIq8belFVFN3IEI4r0NgW69M0QPSj54On4=
|
||||||
github.com/pulumi/pulumi/pkg/v3 v3.187.0 h1:VTbireKCxG/wKPX3slHNb3Zk3xKMr5CvcvjH8194H2I=
|
github.com/pulumi/pulumi/pkg/v3 v3.192.0 h1:gZRMPaNpW+VN3ng3h9r8De8wI0keWC9fIP0rcUDatMA=
|
||||||
github.com/pulumi/pulumi/pkg/v3 v3.187.0/go.mod h1:3y5nyMg62dd+DBzYW/P4d+Ye9pJ/zhJd+aGzMzfUL1g=
|
github.com/pulumi/pulumi/pkg/v3 v3.192.0/go.mod h1:+Zp3EzjzGW4PlcW8oITZgeOfFzIVbLWvHtUVixvGQcs=
|
||||||
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 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/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 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/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 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/python/cmd/pulumi-language-python/v3 v3.0.0-20250806165243-bee5e4fa4815/go.mod h1:SJtr0N/XFyelI7M7U0UbJXr15pgEdSmpN40cglTsRTA=
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0 h1:BflBBeD/qaoKN4Tov11g4aHzJ7pTXBSb8otgmteRer0=
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0 h1:sfHuR3P02wSbV3xdSMEQ0+uC/HzlMz0YfKrVAXy1hSQ=
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0/go.mod h1:BnpKxUc6QlxqoCqobHNZsUuIuY27H6ZFUk0Cp+0JN5U=
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0/go.mod h1:aV0+c5xpSYccWKmOjTZS9liYCqh7+peu3cQgSXu7CJw=
|
||||||
github.com/quasilyte/go-ruleguard v0.4.2 h1:htXcXDK6/rO12kiTHKfHuqR4kr3Y4M0J0rOL6CH/BYs=
|
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 v0.4.2/go.mod h1:GJLgqsLeo4qgavUoL8JeGFNS7qcisx3awV/w9eWTmNI=
|
||||||
github.com/quasilyte/go-ruleguard/dsl v0.3.22 h1:wd8zkOhSNr+I+8Qeciml08ivDt1pSXe60+5DqOpCjPE=
|
github.com/quasilyte/go-ruleguard/dsl v0.3.22 h1:wd8zkOhSNr+I+8Qeciml08ivDt1pSXe60+5DqOpCjPE=
|
||||||
|
|||||||
19
mise.toml
19
mise.toml
@@ -1,19 +0,0 @@
|
|||||||
# 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).
|
|
||||||
55
scripts/get-versions.sh
Executable file
55
scripts/get-versions.sh
Executable file
@@ -0,0 +1,55 @@
|
|||||||
|
#!/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 "MISE_PULUMI_VERSION=$raw_version"
|
||||||
|
export MISE_PULUMI_VERSION=$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 "MISE_GO_VERSION=$go_version"
|
||||||
|
export MISE_GO_VERSION=$go_version
|
||||||
2
sdk/go/dockerbuild/go.mod
generated
2
sdk/go/dockerbuild/go.mod
generated
@@ -4,7 +4,7 @@ go 1.24.1
|
|||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/blang/semver v3.5.1+incompatible
|
github.com/blang/semver v3.5.1+incompatible
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0
|
||||||
)
|
)
|
||||||
|
|
||||||
require (
|
require (
|
||||||
|
|||||||
4
sdk/go/dockerbuild/go.sum
generated
4
sdk/go/dockerbuild/go.sum
generated
@@ -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/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 h1:oaVOIyFTENlYDuqc3pW75lQT9jb2cd6ie/4/Twxn66w=
|
||||||
github.com/pulumi/esc v0.17.0/go.mod h1:XnSxlt5NkmuAj304l/gK4pRErFbtqq6XpfX1tYT9Jbc=
|
github.com/pulumi/esc v0.17.0/go.mod h1:XnSxlt5NkmuAj304l/gK4pRErFbtqq6XpfX1tYT9Jbc=
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0 h1:BflBBeD/qaoKN4Tov11g4aHzJ7pTXBSb8otgmteRer0=
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0 h1:sfHuR3P02wSbV3xdSMEQ0+uC/HzlMz0YfKrVAXy1hSQ=
|
||||||
github.com/pulumi/pulumi/sdk/v3 v3.187.0/go.mod h1:BnpKxUc6QlxqoCqobHNZsUuIuY27H6ZFUk0Cp+0JN5U=
|
github.com/pulumi/pulumi/sdk/v3 v3.192.0/go.mod h1:aV0+c5xpSYccWKmOjTZS9liYCqh7+peu3cQgSXu7CJw=
|
||||||
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
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 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ=
|
||||||
github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
|
github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
|
||||||
|
|||||||
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.
|
* Equivalent to Docker's `--add-host` flag.
|
||||||
*/
|
*/
|
||||||
public readonly addHosts!: pulumi.Output<string[] | undefined>;
|
declare public readonly addHosts: pulumi.Output<string[] | undefined>;
|
||||||
/**
|
/**
|
||||||
* `ARG` names and values to set during the build.
|
* `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.
|
* Equivalent to Docker's `--build-arg` flag.
|
||||||
*/
|
*/
|
||||||
public readonly buildArgs!: pulumi.Output<{[key: string]: string} | undefined>;
|
declare public readonly buildArgs: pulumi.Output<{[key: string]: string} | undefined>;
|
||||||
/**
|
/**
|
||||||
* Setting this to `false` will always skip image builds during previews,
|
* Setting this to `false` will always skip image builds during previews,
|
||||||
* and setting it to `true` will always build images 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
|
* Defaults to `true` as a safeguard against broken images merging as part
|
||||||
* of CI pipelines.
|
* of CI pipelines.
|
||||||
*/
|
*/
|
||||||
public readonly buildOnPreview!: pulumi.Output<boolean | undefined>;
|
declare public readonly buildOnPreview: pulumi.Output<boolean | undefined>;
|
||||||
/**
|
/**
|
||||||
* Builder configuration.
|
* Builder configuration.
|
||||||
*/
|
*/
|
||||||
public readonly builder!: pulumi.Output<outputs.BuilderConfig | undefined>;
|
declare public readonly builder: pulumi.Output<outputs.BuilderConfig | undefined>;
|
||||||
/**
|
/**
|
||||||
* Cache export configuration.
|
* Cache export configuration.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `--cache-from` flag.
|
* Equivalent to Docker's `--cache-from` flag.
|
||||||
*/
|
*/
|
||||||
public readonly cacheFrom!: pulumi.Output<outputs.CacheFrom[] | undefined>;
|
declare public readonly cacheFrom: pulumi.Output<outputs.CacheFrom[] | undefined>;
|
||||||
/**
|
/**
|
||||||
* Cache import configuration.
|
* Cache import configuration.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `--cache-to` flag.
|
* Equivalent to Docker's `--cache-to` flag.
|
||||||
*/
|
*/
|
||||||
public readonly cacheTo!: pulumi.Output<outputs.CacheTo[] | undefined>;
|
declare public readonly cacheTo: pulumi.Output<outputs.CacheTo[] | undefined>;
|
||||||
/**
|
/**
|
||||||
* Build context settings. Defaults to the current directory.
|
* Build context settings. Defaults to the current directory.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `PATH | URL | -` positional argument.
|
* Equivalent to Docker's `PATH | URL | -` positional argument.
|
||||||
*/
|
*/
|
||||||
public readonly context!: pulumi.Output<outputs.BuildContext | undefined>;
|
declare public readonly context: pulumi.Output<outputs.BuildContext | undefined>;
|
||||||
/**
|
/**
|
||||||
* A preliminary hash of the image's build context.
|
* A preliminary hash of the image's build context.
|
||||||
*
|
*
|
||||||
* Pulumi uses this to determine if an image _may_ need to be re-built.
|
* Pulumi uses this to determine if an image _may_ need to be re-built.
|
||||||
*/
|
*/
|
||||||
public /*out*/ readonly contextHash!: pulumi.Output<string>;
|
declare public /*out*/ readonly contextHash: pulumi.Output<string>;
|
||||||
/**
|
/**
|
||||||
* A SHA256 digest of the image if it was exported to a registry or
|
* A SHA256 digest of the image if it was exported to a registry or
|
||||||
* elsewhere.
|
* elsewhere.
|
||||||
@@ -565,13 +565,13 @@ export class Image extends pulumi.CustomResource {
|
|||||||
* Registry images can be referenced precisely as `<tag>@<digest>`. The
|
* Registry images can be referenced precisely as `<tag>@<digest>`. The
|
||||||
* `ref` output provides one such reference as a convenience.
|
* `ref` output provides one such reference as a convenience.
|
||||||
*/
|
*/
|
||||||
public /*out*/ readonly digest!: pulumi.Output<string>;
|
declare public /*out*/ readonly digest: pulumi.Output<string>;
|
||||||
/**
|
/**
|
||||||
* Dockerfile settings.
|
* Dockerfile settings.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `--file` flag.
|
* Equivalent to Docker's `--file` flag.
|
||||||
*/
|
*/
|
||||||
public readonly dockerfile!: pulumi.Output<outputs.Dockerfile | undefined>;
|
declare public readonly dockerfile: pulumi.Output<outputs.Dockerfile | undefined>;
|
||||||
/**
|
/**
|
||||||
* Use `exec` mode to build this image.
|
* 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
|
* are temporarily written to disk in order to provide them to the
|
||||||
* `docker-buildx` binary.
|
* `docker-buildx` binary.
|
||||||
*/
|
*/
|
||||||
public readonly exec!: pulumi.Output<boolean | undefined>;
|
declare public readonly exec: pulumi.Output<boolean | undefined>;
|
||||||
/**
|
/**
|
||||||
* Controls where images are persisted after building.
|
* Controls where images are persisted after building.
|
||||||
*
|
*
|
||||||
@@ -606,13 +606,13 @@ export class Image extends pulumi.CustomResource {
|
|||||||
*
|
*
|
||||||
* Equivalent to Docker's `--output` flag.
|
* Equivalent to Docker's `--output` flag.
|
||||||
*/
|
*/
|
||||||
public readonly exports!: pulumi.Output<outputs.Export[] | undefined>;
|
declare public readonly exports: pulumi.Output<outputs.Export[] | undefined>;
|
||||||
/**
|
/**
|
||||||
* Attach arbitrary key/value metadata to the image.
|
* Attach arbitrary key/value metadata to the image.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `--label` flag.
|
* Equivalent to Docker's `--label` flag.
|
||||||
*/
|
*/
|
||||||
public readonly labels!: pulumi.Output<{[key: string]: string} | undefined>;
|
declare public readonly labels: pulumi.Output<{[key: string]: string} | undefined>;
|
||||||
/**
|
/**
|
||||||
* When `true` the build will automatically include a `docker` export.
|
* 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.
|
* Equivalent to Docker's `--load` flag.
|
||||||
*/
|
*/
|
||||||
public readonly load!: pulumi.Output<boolean | undefined>;
|
declare public readonly load: pulumi.Output<boolean | undefined>;
|
||||||
/**
|
/**
|
||||||
* Set the network mode for `RUN` instructions. Defaults to `default`.
|
* 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.
|
* Equivalent to Docker's `--network` flag.
|
||||||
*/
|
*/
|
||||||
public readonly network!: pulumi.Output<enums.NetworkMode | undefined>;
|
declare public readonly network: pulumi.Output<enums.NetworkMode | undefined>;
|
||||||
/**
|
/**
|
||||||
* Do not import cache manifests when building the image.
|
* Do not import cache manifests when building the image.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `--no-cache` flag.
|
* Equivalent to Docker's `--no-cache` flag.
|
||||||
*/
|
*/
|
||||||
public readonly noCache!: pulumi.Output<boolean | undefined>;
|
declare public readonly noCache: pulumi.Output<boolean | undefined>;
|
||||||
/**
|
/**
|
||||||
* Set target platform(s) for the build. Defaults to the host's platform.
|
* Set target platform(s) for the build. Defaults to the host's platform.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `--platform` flag.
|
* Equivalent to Docker's `--platform` flag.
|
||||||
*/
|
*/
|
||||||
public readonly platforms!: pulumi.Output<enums.Platform[] | undefined>;
|
declare public readonly platforms: pulumi.Output<enums.Platform[] | undefined>;
|
||||||
/**
|
/**
|
||||||
* Always pull referenced images.
|
* Always pull referenced images.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `--pull` flag.
|
* Equivalent to Docker's `--pull` flag.
|
||||||
*/
|
*/
|
||||||
public readonly pull!: pulumi.Output<boolean | undefined>;
|
declare public readonly pull: pulumi.Output<boolean | undefined>;
|
||||||
/**
|
/**
|
||||||
* When `true` the build will automatically include a `registry` export.
|
* 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.
|
* Equivalent to Docker's `--push` flag.
|
||||||
*/
|
*/
|
||||||
public readonly push!: pulumi.Output<boolean>;
|
declare public readonly push: pulumi.Output<boolean>;
|
||||||
/**
|
/**
|
||||||
* If the image was pushed to any registries then this will contain a
|
* If the image was pushed to any registries then this will contain a
|
||||||
* single fully-qualified tag including the build's digest.
|
* 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
|
* For more control over tags consumed by downstream resources you should
|
||||||
* use the `digest` output.
|
* use the `digest` output.
|
||||||
*/
|
*/
|
||||||
public /*out*/ readonly ref!: pulumi.Output<string>;
|
declare public /*out*/ readonly ref: pulumi.Output<string>;
|
||||||
/**
|
/**
|
||||||
* Registry credentials. Required if reading or exporting to private
|
* Registry credentials. Required if reading or exporting to private
|
||||||
* repositories.
|
* repositories.
|
||||||
@@ -681,7 +681,7 @@ export class Image extends pulumi.CustomResource {
|
|||||||
*
|
*
|
||||||
* Similar to `docker login`.
|
* Similar to `docker login`.
|
||||||
*/
|
*/
|
||||||
public readonly registries!: pulumi.Output<outputs.Registry[] | undefined>;
|
declare public readonly registries: pulumi.Output<outputs.Registry[] | undefined>;
|
||||||
/**
|
/**
|
||||||
* A mapping of secret names to their corresponding values.
|
* 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.
|
* Similar to Docker's `--secret` flag.
|
||||||
*/
|
*/
|
||||||
public readonly secrets!: pulumi.Output<{[key: string]: string} | undefined>;
|
declare public readonly secrets: pulumi.Output<{[key: string]: string} | undefined>;
|
||||||
/**
|
/**
|
||||||
* SSH agent socket or keys to expose to the build.
|
* SSH agent socket or keys to expose to the build.
|
||||||
*
|
*
|
||||||
* Equivalent to Docker's `--ssh` flag.
|
* Equivalent to Docker's `--ssh` flag.
|
||||||
*/
|
*/
|
||||||
public readonly ssh!: pulumi.Output<outputs.SSH[] | undefined>;
|
declare public readonly ssh: pulumi.Output<outputs.SSH[] | undefined>;
|
||||||
/**
|
/**
|
||||||
* Name and optionally a tag (format: `name:tag`).
|
* Name and optionally a tag (format: `name:tag`).
|
||||||
*
|
*
|
||||||
@@ -708,7 +708,7 @@ export class Image extends pulumi.CustomResource {
|
|||||||
*
|
*
|
||||||
* Equivalent to Docker's `--tag` flag.
|
* Equivalent to Docker's `--tag` flag.
|
||||||
*/
|
*/
|
||||||
public readonly tags!: pulumi.Output<string[] | undefined>;
|
declare public readonly tags: pulumi.Output<string[] | undefined>;
|
||||||
/**
|
/**
|
||||||
* Set the target build stage(s) to build.
|
* Set the target build stage(s) to build.
|
||||||
*
|
*
|
||||||
@@ -716,7 +716,7 @@ export class Image extends pulumi.CustomResource {
|
|||||||
*
|
*
|
||||||
* Equivalent to Docker's `--target` flag.
|
* Equivalent to Docker's `--target` flag.
|
||||||
*/
|
*/
|
||||||
public readonly target!: pulumi.Output<string | undefined>;
|
declare public readonly target: pulumi.Output<string | undefined>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a Image resource with the given unique name, arguments, and options.
|
* 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 = {};
|
let resourceInputs: pulumi.Inputs = {};
|
||||||
opts = opts || {};
|
opts = opts || {};
|
||||||
if (!opts.id) {
|
if (!opts.id) {
|
||||||
if ((!args || args.push === undefined) && !opts.urn) {
|
if (args?.push === undefined && !opts.urn) {
|
||||||
throw new Error("Missing required property 'push'");
|
throw new Error("Missing required property 'push'");
|
||||||
}
|
}
|
||||||
resourceInputs["addHosts"] = args ? args.addHosts : undefined;
|
resourceInputs["addHosts"] = args?.addHosts;
|
||||||
resourceInputs["buildArgs"] = args ? args.buildArgs : undefined;
|
resourceInputs["buildArgs"] = args?.buildArgs;
|
||||||
resourceInputs["buildOnPreview"] = (args ? args.buildOnPreview : undefined) ?? true;
|
resourceInputs["buildOnPreview"] = (args?.buildOnPreview) ?? true;
|
||||||
resourceInputs["builder"] = args ? args.builder : undefined;
|
resourceInputs["builder"] = args?.builder;
|
||||||
resourceInputs["cacheFrom"] = args ? args.cacheFrom : undefined;
|
resourceInputs["cacheFrom"] = args?.cacheFrom;
|
||||||
resourceInputs["cacheTo"] = args ? args.cacheTo : undefined;
|
resourceInputs["cacheTo"] = args?.cacheTo;
|
||||||
resourceInputs["context"] = args ? args.context : undefined;
|
resourceInputs["context"] = args?.context;
|
||||||
resourceInputs["dockerfile"] = args ? args.dockerfile : undefined;
|
resourceInputs["dockerfile"] = args?.dockerfile;
|
||||||
resourceInputs["exec"] = args ? args.exec : undefined;
|
resourceInputs["exec"] = args?.exec;
|
||||||
resourceInputs["exports"] = args ? args.exports : undefined;
|
resourceInputs["exports"] = args?.exports;
|
||||||
resourceInputs["labels"] = args ? args.labels : undefined;
|
resourceInputs["labels"] = args?.labels;
|
||||||
resourceInputs["load"] = args ? args.load : undefined;
|
resourceInputs["load"] = args?.load;
|
||||||
resourceInputs["network"] = (args ? args.network : undefined) ?? "default";
|
resourceInputs["network"] = (args?.network) ?? "default";
|
||||||
resourceInputs["noCache"] = args ? args.noCache : undefined;
|
resourceInputs["noCache"] = args?.noCache;
|
||||||
resourceInputs["platforms"] = args ? args.platforms : undefined;
|
resourceInputs["platforms"] = args?.platforms;
|
||||||
resourceInputs["pull"] = args ? args.pull : undefined;
|
resourceInputs["pull"] = args?.pull;
|
||||||
resourceInputs["push"] = args ? args.push : undefined;
|
resourceInputs["push"] = args?.push;
|
||||||
resourceInputs["registries"] = args ? args.registries : undefined;
|
resourceInputs["registries"] = args?.registries;
|
||||||
resourceInputs["secrets"] = args ? args.secrets : undefined;
|
resourceInputs["secrets"] = args?.secrets;
|
||||||
resourceInputs["ssh"] = args ? args.ssh : undefined;
|
resourceInputs["ssh"] = args?.ssh;
|
||||||
resourceInputs["tags"] = args ? args.tags : undefined;
|
resourceInputs["tags"] = args?.tags;
|
||||||
resourceInputs["target"] = args ? args.target : undefined;
|
resourceInputs["target"] = args?.target;
|
||||||
resourceInputs["contextHash"] = undefined /*out*/;
|
resourceInputs["contextHash"] = undefined /*out*/;
|
||||||
resourceInputs["digest"] = undefined /*out*/;
|
resourceInputs["digest"] = undefined /*out*/;
|
||||||
resourceInputs["ref"] = 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`.
|
* Defaults to `true`.
|
||||||
*/
|
*/
|
||||||
public readonly push!: pulumi.Output<boolean | undefined>;
|
declare public readonly push: pulumi.Output<boolean | undefined>;
|
||||||
/**
|
/**
|
||||||
* The pushed tag with digest.
|
* The pushed tag with digest.
|
||||||
*
|
*
|
||||||
* Identical to the tag if the index was not pushed.
|
* Identical to the tag if the index was not pushed.
|
||||||
*/
|
*/
|
||||||
public /*out*/ readonly ref!: pulumi.Output<string>;
|
declare public /*out*/ readonly ref: pulumi.Output<string>;
|
||||||
/**
|
/**
|
||||||
* Authentication for the registry where the tagged index will be pushed.
|
* Authentication for the registry where the tagged index will be pushed.
|
||||||
*
|
*
|
||||||
* Credentials can also be included with the provider's configuration.
|
* Credentials can also be included with the provider's configuration.
|
||||||
*/
|
*/
|
||||||
public readonly registry!: pulumi.Output<outputs.Registry | undefined>;
|
declare public readonly registry: pulumi.Output<outputs.Registry | undefined>;
|
||||||
/**
|
/**
|
||||||
* Existing images to include in the index.
|
* Existing images to include in the index.
|
||||||
*/
|
*/
|
||||||
public readonly sources!: pulumi.Output<string[]>;
|
declare public readonly sources: pulumi.Output<string[]>;
|
||||||
/**
|
/**
|
||||||
* The tag to apply to the index.
|
* The tag to apply to the index.
|
||||||
*/
|
*/
|
||||||
public readonly tag!: pulumi.Output<string>;
|
declare public readonly tag: pulumi.Output<string>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a Index resource with the given unique name, arguments, and options.
|
* 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 = {};
|
let resourceInputs: pulumi.Inputs = {};
|
||||||
opts = opts || {};
|
opts = opts || {};
|
||||||
if (!opts.id) {
|
if (!opts.id) {
|
||||||
if ((!args || args.sources === undefined) && !opts.urn) {
|
if (args?.sources === undefined && !opts.urn) {
|
||||||
throw new Error("Missing required property 'sources'");
|
throw new Error("Missing required property 'sources'");
|
||||||
}
|
}
|
||||||
if ((!args || args.tag === undefined) && !opts.urn) {
|
if (args?.tag === undefined && !opts.urn) {
|
||||||
throw new Error("Missing required property 'tag'");
|
throw new Error("Missing required property 'tag'");
|
||||||
}
|
}
|
||||||
resourceInputs["push"] = (args ? args.push : undefined) ?? true;
|
resourceInputs["push"] = (args?.push) ?? true;
|
||||||
resourceInputs["registry"] = args ? args.registry : undefined;
|
resourceInputs["registry"] = args?.registry;
|
||||||
resourceInputs["sources"] = args ? args.sources : undefined;
|
resourceInputs["sources"] = args?.sources;
|
||||||
resourceInputs["tag"] = args ? args.tag : undefined;
|
resourceInputs["tag"] = args?.tag;
|
||||||
resourceInputs["ref"] = undefined /*out*/;
|
resourceInputs["ref"] = undefined /*out*/;
|
||||||
} else {
|
} else {
|
||||||
resourceInputs["push"] = undefined /*out*/;
|
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.
|
* The build daemon's address.
|
||||||
*/
|
*/
|
||||||
public readonly host!: pulumi.Output<string | undefined>;
|
declare public readonly host: pulumi.Output<string | undefined>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a Provider resource with the given unique name, arguments, and options.
|
* 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 = {};
|
let resourceInputs: pulumi.Inputs = {};
|
||||||
opts = opts || {};
|
opts = opts || {};
|
||||||
{
|
{
|
||||||
resourceInputs["host"] = (args ? args.host : undefined) ?? (utilities.getEnv("DOCKER_HOST") || "");
|
resourceInputs["host"] = (args?.host) ?? (utilities.getEnv("DOCKER_HOST") || "");
|
||||||
resourceInputs["registries"] = pulumi.output(args ? args.registries : undefined).apply(JSON.stringify);
|
resourceInputs["registries"] = pulumi.output(args?.registries).apply(JSON.stringify);
|
||||||
}
|
}
|
||||||
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
||||||
super(Provider.__pulumiType, name, resourceInputs, opts);
|
super(Provider.__pulumiType, name, resourceInputs, opts);
|
||||||
|
|||||||
2
sdk/nodejs/tsconfig.json
generated
2
sdk/nodejs/tsconfig.json
generated
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"outDir": "bin",
|
"outDir": "bin",
|
||||||
"target": "es2016",
|
"target": "ES2020",
|
||||||
"module": "commonjs",
|
"module": "commonjs",
|
||||||
"moduleResolution": "node",
|
"moduleResolution": "node",
|
||||||
"declaration": true,
|
"declaration": true,
|
||||||
|
|||||||
Reference in New Issue
Block a user