Remove deployment templates
This commit is contained in:
@@ -1,29 +0,0 @@
|
|||||||
archives:
|
|
||||||
- id: archive
|
|
||||||
name_template: '{{ .Binary }}-{{ .Tag }}-{{ .Os }}-{{ .Arch }}'
|
|
||||||
before:
|
|
||||||
hooks:
|
|
||||||
- make gen
|
|
||||||
builds:
|
|
||||||
- binary: pulumi-resource-xyz
|
|
||||||
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/your-org-name/pulumi-xyz/provider/Version={{.Tag }}
|
|
||||||
main: ./cmd/pulumi-resource-xyz/
|
|
||||||
changelog:
|
|
||||||
skip: true
|
|
||||||
release:
|
|
||||||
disable: false
|
|
||||||
prerelease: auto
|
|
||||||
snapshot:
|
|
||||||
name_template: '{{ .Tag }}-SNAPSHOT'
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
# Configure
|
|
||||||
|
|
||||||
1. Create a directory at the root of your repo called .github/workflows
|
|
||||||
|
|
||||||
1. Place the release.yml from this directory there
|
|
||||||
|
|
||||||
1. Place the .goreleaser.yml from this directory at the root of your repo
|
|
||||||
|
|
||||||
1. Obtain needed accounts and tokens from the language specific package managers you will use
|
|
||||||
|
|
||||||
1. Add any needed tokens to the actions secrets for your repository or organization
|
|
||||||
|
|
||||||
1. Customize the release.yml with the correct tokens using the format:
|
|
||||||
|
|
||||||
`${{ secrets.MyTokenName }}`
|
|
||||||
|
|
||||||
1. Customize .goreleaser.yml for your provider, replacing any instances of 'xyz' with your provider's name, and paying special attention that the ldlflags are set to match your provider/go.mod exactly:
|
|
||||||
|
|
||||||
`-X github.com/pulumi/pulumi-aws/provider/v5/pkg/version.Version={{.Tag}}`
|
|
||||||
|
|
||||||
1. Delete this directory if desired
|
|
||||||
|
|
||||||
|
|
||||||
# Deploy
|
|
||||||
|
|
||||||
1. Push a tag to your repo in the format "v0.0.0" to initiate a release
|
|
||||||
|
|
||||||
1. IMPORTANT: also add a tag in the format "sdk/v0.0.0" for the Go SDK
|
|
||||||
@@ -1,143 +0,0 @@
|
|||||||
name: release
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
tags:
|
|
||||||
- v*.*.*
|
|
||||||
- '!v*.*.*-**'
|
|
||||||
env:
|
|
||||||
PROVIDER: "YOUR PROVIDER NAME HERE eg: xyz"
|
|
||||||
# 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/action-install-gh-release@v1.5.0
|
|
||||||
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/action-install-gh-release@v1.5.0
|
|
||||||
with:
|
|
||||||
repo: pulumi/pulumictl
|
|
||||||
- name: Install Pulumi CLI
|
|
||||||
uses: pulumi/action-install-pulumi-cli@v2.0.0
|
|
||||||
- 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
|
|
||||||
- python
|
|
||||||
- dotnet
|
|
||||||
- go
|
|
||||||
nodeversion:
|
|
||||||
- 14.x
|
|
||||||
pythonversion:
|
|
||||||
- "3.9"
|
|
||||||
Reference in New Issue
Block a user