Skip to content

Commit

Permalink
[internal] Update GitHub Actions workflow files
Browse files Browse the repository at this point in the history
  • Loading branch information
pulumi-bot committed Jun 15, 2024
1 parent 198b1c3 commit 5f78c2f
Show file tree
Hide file tree
Showing 8 changed files with 141 additions and 92 deletions.
80 changes: 80 additions & 0 deletions .github/actions/setup-tools/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: Setup tools
description: Installs Go, Pulumi, pulumictl, schema-tools, Node.JS, Python, dotnet and Java.

inputs:
tools:
description: |
Comma separated list of tools to install. The default of "all" installs all tools. Available tools are:
go
pulumicli
pulumictl
schema-tools
node
python
dotnet
java
default: all

runs:
using: "composite"
steps:
- name: Install Go
if: inputs.tools == 'all' || contains(inputs.tools, 'go')
uses: actions/setup-go@v5
with:
go-version: "1.21.x"
cache-dependency-path: |
provider/*.sum
upstream/*.sum
- name: Install pulumictl
if: inputs.tools == 'all' || contains(inputs.tools, 'pulumictl')
uses: jaxxstorm/[email protected]
with:
tag: v0.0.46
repo: pulumi/pulumictl

- name: Install Pulumi CLI
if: inputs.tools == 'all' || contains(inputs.tools, 'pulumicli')
uses: pulumi/actions@v5
with:
pulumi-version: "dev"

- name: Install Schema Tools
if: inputs.tools == 'all' || contains(inputs.tools, 'schema-tools')
uses: jaxxstorm/[email protected]
with:
repo: pulumi/schema-tools

- name: Setup Node
if: inputs.tools == 'all' || contains(inputs.tools, 'node')
uses: actions/setup-node@v4
with:
node-version: 20.x
registry-url: https://registry.npmjs.org

- name: Setup DotNet
if: inputs.tools == 'all' || contains(inputs.tools, 'dotnet')
uses: actions/setup-dotnet@v4
with:
dotnet-version: 6.0.x

- name: Setup Python
if: inputs.tools == 'all' || contains(inputs.tools, 'python')
uses: actions/setup-python@v5
with:
python-version: 3.11.8

- name: Setup Java
if: inputs.tools == 'all' || contains(inputs.tools, 'java')
uses: actions/setup-java@v4
with:
cache: gradle
distribution: temurin
java-version: 11

- name: Setup Gradle
if: inputs.tools == 'all' || contains(inputs.tools, 'java')
uses: gradle/gradle-build-action@v3
with:
gradle-version: 7.6
52 changes: 25 additions & 27 deletions .github/workflows/build_sdk.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,28 @@ name: "Build SDK"
on:
workflow_call: {}

env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
PUBLISH_REPO_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
PUBLISH_REPO_USERNAME: ${{ secrets.OSSRH_USERNAME }}
PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }}
PULUMI_API: https://api.pulumi-staging.io
PULUMI_GO_DEP_ROOT: ${{ github.workspace }}/..
PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget
PYPI_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
PYPI_USERNAME: __token__
SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }}
SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }}
SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }}
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SPLUNK_PASSWORD: password
SPLUNK_URL: localhost:8089
SPLUNK_USERNAME: admin
TF_APPEND_USER_AGENT: pulumi

jobs:
build_sdk:
name: build_sdk
Expand All @@ -28,34 +50,10 @@ jobs:
path: |
.pulumi/examples-cache
key: ${{ runner.os }}-${{ hashFiles('provider/go.sum') }}
- name: Install pulumictl
uses: jaxxstorm/[email protected]
with:
tag: v0.0.46
repo: pulumi/pulumictl
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 20.x
registry-url: https://registry.npmjs.org
- name: Setup DotNet
uses: actions/setup-dotnet@v4
with:
dotnet-version: 6.0.x
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: 3.11.8
- name: Setup Java
uses: actions/setup-java@v4
with:
cache: gradle
distribution: temurin
java-version: 11
- name: Setup Gradle
uses: gradle/gradle-build-action@v3
- name: Setup tools
uses: ./.github/actions/setup-tools
with:
gradle-version: 7.6
tools: pulumictl, pulumicli, go, node, dotnet, python, java
- name: Download provider + tfgen binaries
uses: actions/download-artifact@v4
with:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
pulumi-version: "dev"
- if: github.event_name == 'pull_request'
name: Install Schema Tools
uses: jaxxstorm/[email protected]
Expand Down Expand Up @@ -128,7 +128,7 @@ jobs:
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
pulumi-version: "dev"
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
Expand Down Expand Up @@ -229,7 +229,7 @@ jobs:
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
pulumi-version: "dev"
- name: Setup Node
uses: actions/setup-node@v4
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/prerelease.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ jobs:
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
pulumi-version: "dev"
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
Expand Down Expand Up @@ -194,7 +194,7 @@ jobs:
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
pulumi-version: "dev"
- name: Setup Node
uses: actions/setup-node@v4
with:
Expand Down
45 changes: 25 additions & 20 deletions .github/workflows/prerequisites.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,28 @@ on:
type: string
required: true

env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }}
PUBLISH_REPO_PASSWORD: ${{ secrets.OSSRH_PASSWORD }}
PUBLISH_REPO_USERNAME: ${{ secrets.OSSRH_USERNAME }}
PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }}
PULUMI_API: https://api.pulumi-staging.io
PULUMI_GO_DEP_ROOT: ${{ github.workspace }}/..
PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget
PYPI_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
PYPI_USERNAME: __token__
SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }}
SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }}
SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }}
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SPLUNK_PASSWORD: password
SPLUNK_URL: localhost:8089
SPLUNK_USERNAME: admin
TF_APPEND_USER_AGENT: pulumi

jobs:
prerequisites:
name: prerequisites
Expand All @@ -31,27 +53,10 @@ jobs:
key: ${{ runner.os }}-${{ hashFiles('provider/go.sum') }}
- name: Prepare upstream code
run: make upstream
- name: Install Go
uses: actions/setup-go@v5
with:
go-version: "1.21.x"
cache-dependency-path: |
provider/*.sum
upstream/*.sum
- name: Install pulumictl
uses: jaxxstorm/[email protected]
with:
tag: v0.0.46
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
- if: inputs.is_pr
name: Install Schema Tools
uses: jaxxstorm/[email protected]
- name: Setup tools
uses: ./.github/actions/setup-tools
with:
repo: pulumi/schema-tools
tools: go, pulumictl, pulumicli, schema-tools
- name: Build schema generator binary
run: make tfgen_build_only
- name: Install plugins
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ jobs:
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
pulumi-version: "dev"
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
Expand Down Expand Up @@ -227,7 +227,7 @@ jobs:
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
pulumi-version: "dev"
- name: Setup Node
uses: actions/setup-node@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/resync-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ jobs:
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
pulumi-version: "dev"
- name: Setup DotNet
uses: actions/setup-dotnet@v4
with:
Expand Down
40 changes: 3 additions & 37 deletions .github/workflows/run-acceptance-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,44 +112,10 @@ jobs:
with:
repository: pulumi/examples
path: p-examples
- name: Install Go
uses: actions/setup-go@v5
- name: Setup tools
uses: ./.github/actions/setup-tools
with:
go-version: "1.21.x"
cache-dependency-path: |
sdk/go.sum
- name: Install pulumictl
uses: jaxxstorm/[email protected]
with:
tag: v0.0.46
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v5
with:
pulumi-version: "^3"
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: "20.x"
registry-url: https://registry.npmjs.org
- name: Setup DotNet
uses: actions/setup-dotnet@v4
with:
dotnet-version: "6.0.x"
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.11.8"
- name: Setup Java
uses: actions/setup-java@v4
with:
cache: gradle
distribution: temurin
java-version: "11"
- name: Setup Gradle
uses: gradle/gradle-build-action@v3
with:
gradle-version: "7.6"
tools: pulumictl, pulumicli, go, node, dotnet, python, java
- name: Download provider + tfgen binaries
uses: actions/download-artifact@v4
with:
Expand Down

0 comments on commit 5f78c2f

Please sign in to comment.