generated from pulumi/pulumi-provider-boilerplate
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
85dea57
commit cdbe617
Showing
2 changed files
with
170 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,141 @@ | ||
name: release | ||
on: | ||
push: | ||
tags: | ||
- v*.*.* | ||
- '!v*.*.*-**' | ||
env: | ||
PROVIDER: "aem" | ||
# THIS GITHUB_TOKEN IS A REQUIREMENT TO BE ABLE TO WRITE TO GH RELEASES | ||
GITHUB_TOKEN: ${{ YOUR GITHUB TOKEN HERE }} | ||
# IF YOU NEED TO PUBLISH A NPM PACKAGE THEN ENSURE A NPM_TOKEN SECRET IS SET | ||
# AND PUBLISH_NPM: TRUE. IF YOU WANT TO PUBLISH TO A PRIVATE NPM REGISTRY | ||
# THEN ENSURE THE NPM_REGISTRY_URL IS CHANGED | ||
NODE_AUTH_TOKEN: ${{ YOUR NPM TOKEN HERE }} | ||
NPM_TOKEN: ${{ YOUR NPM TOKEN HERE }} | ||
PUBLISH_NPM: true | ||
NPM_REGISTRY_URL: https://registry.npmjs.org | ||
# IF YOU NEED TO PUBLISH A NUGET PACKAGE THEN ENSURE AN NUGET_PUBLISH_KEY | ||
# SECRET IS SET AND PUBLISH_NUGET: TRUE. IF YOU WANT TO PUBLISH TO AN ALTERNATIVE | ||
# NPM REGISTRY THEN ENSURE THE NPM_REGISTRY_URL IS CHANGED | ||
NUGET_PUBLISH_KEY: ${{ YOUR NUGET PUBLISH KEY HERE }} | ||
NUGET_FEED_URL: https://api.nuget.org/v3/index.json | ||
PUBLISH_NUGET: true | ||
# IF YOU NEED TO PUBLISH A PYPI PACKAGE THEN ENSURE AN PYPI_API_TOKEN | ||
# SECRET IS SET AND PUBLISH_PYPI: TRUE. IF YOU WANT TO PUBLISH TO AN ALTERNATIVE | ||
# PYPI REGISTRY THEN ENSURE THE PYPI_REPOSITORY_URL IS SET. IF YOU ARE USING AN API_TOKEN THEN | ||
# YOU DO NOT NEED TO CHANGE THE PYPI_USERNAME (__token__) , IF YOU ARE USING PASSWORD AUTHENTICATION THEN YOU WILL | ||
# NEED TO CHANGE TO USE THE CORRECT PASSWORD | ||
PYPI_PASSWORD: ${{ YOUR PYPI PASSWORD HERE }} | ||
PYPI_USERNAME: "YOUR PYPI USERNAME HERE" | ||
PYPI_REPOSITORY_URL: "" | ||
PUBLISH_PYPI: true | ||
jobs: | ||
publish_binary: | ||
name: publish | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout Repo | ||
uses: actions/checkout@v2 | ||
- name: Unshallow clone for tags | ||
run: git fetch --prune --unshallow --tags | ||
- name: Install Go | ||
uses: actions/setup-go@v2 | ||
with: | ||
go-version: ${{matrix.goversion}} | ||
- name: Install pulumictl | ||
uses: jaxxstorm/[email protected] | ||
with: | ||
repo: pulumi/pulumictl | ||
- name: Run GoReleaser | ||
uses: goreleaser/goreleaser-action@v2 | ||
with: | ||
args: -p 3 release --rm-dist | ||
version: latest | ||
strategy: | ||
fail-fast: true | ||
matrix: | ||
goversion: | ||
- 1.17.x | ||
publish_sdk: | ||
name: Publish SDKs | ||
runs-on: ubuntu-latest | ||
needs: publish_binary | ||
steps: | ||
- name: Checkout Repo | ||
uses: actions/checkout@v2 | ||
- name: Unshallow clone for tags | ||
run: git fetch --prune --unshallow --tags | ||
- name: Install Go | ||
uses: actions/setup-go@v2 | ||
with: | ||
go-version: ${{ matrix.goversion }} | ||
- name: Install pulumictl | ||
uses: jaxxstorm/[email protected] | ||
with: | ||
repo: pulumi/pulumictl | ||
- name: Install Pulumi CLI | ||
uses: pulumi/[email protected] | ||
- name: Setup Node | ||
uses: actions/setup-node@v1 | ||
with: | ||
node-version: ${{matrix.nodeversion}} | ||
registry-url: ${{env.NPM_REGISTRY_URL}} | ||
- name: Setup DotNet | ||
uses: actions/setup-dotnet@v1 | ||
with: | ||
dotnet-version: ${{matrix.dotnetversion}} | ||
- name: Setup Python | ||
uses: actions/setup-python@v1 | ||
with: | ||
python-version: ${{matrix.pythonversion}} | ||
- name: Generate SDK | ||
run: make ${{ matrix.language }}_sdk | ||
- name: Check worktree clean | ||
run: | | ||
git update-index -q --refresh | ||
if ! git diff-files --quiet; then | ||
>&2 echo "error: working tree is not clean, aborting!" | ||
git status | ||
git diff | ||
exit 1 | ||
fi | ||
- name: Compress SDK folder | ||
run: tar -zcf sdk/${{ matrix.language }}.tar.gz -C sdk/${{ matrix.language }} . | ||
- name: Upload artifacts | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: ${{ matrix.language }}-sdk.tar.gz | ||
path: ${{ github.workspace}}/sdk/${{ matrix.language }}.tar.gz | ||
- if: ${{ matrix.language == 'python' && env.PUBLISH_PYPI == 'true' }} | ||
name: Publish package to PyPI | ||
uses: pypa/gh-action-pypi-publish@release/v1 | ||
with: | ||
user: ${{ env.PYPI_USERNAME }} | ||
password: ${{ env.PYPI_PASSWORD }} | ||
packages-dir: ${{github.workspace}}/sdk/python/bin/dist | ||
- if: ${{ matrix.language == 'nodejs' && env.PUBLISH_NPM == 'true' }} | ||
uses: JS-DevTools/npm-publish@v1 | ||
with: | ||
access: "public" | ||
token: ${{ env.NPM_TOKEN }} | ||
package: ${{github.workspace}}/sdk/nodejs/bin/package.json | ||
- if: ${{ matrix.language == 'dotnet' && env.PUBLISH_NUGET == 'true' }} | ||
name: publish nuget package | ||
run: | | ||
dotnet nuget push ${{github.workspace}}/sdk/dotnet/bin/Debug/*.nupkg -s ${{ env.NUGET_FEED_URL }} -k ${{ env.NUGET_PUBLISH_KEY }} | ||
echo "done publishing packages" | ||
strategy: | ||
fail-fast: true | ||
matrix: | ||
dotnetversion: | ||
- 3.1.301 | ||
goversion: | ||
- 1.18.x | ||
language: | ||
- nodejs | ||
- go | ||
nodeversion: | ||
- 14.x | ||
pythonversion: | ||
- "3.9" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
archives: | ||
- id: archive | ||
name_template: '{{ .Binary }}-{{ .Tag }}-{{ .Os }}-{{ .Arch }}' | ||
before: | ||
hooks: | ||
- make gen | ||
builds: | ||
- binary: pulumi-resource-aem | ||
dir: provider | ||
env: | ||
- CGO_ENABLED=0 | ||
goarch: | ||
- amd64 | ||
- arm64 | ||
goos: | ||
- darwin | ||
- windows | ||
- linux | ||
ldflags: | ||
# The line below MUST align with the module in current provider/go.mod | ||
- -X github.com/wttech/pulumi-aem-native/provider/Version={{.Tag }} | ||
main: ./cmd/pulumi-resource-aem/ | ||
changelog: | ||
skip: true | ||
release: | ||
disable: false | ||
prerelease: auto | ||
snapshot: | ||
name_template: '{{ .Tag }}-SNAPSHOT' |