chore(release-please): release blueprint-test 0.16.3 (#2630) #11
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
name: Release new CLI versions | |
on: | |
push: | |
branches: | |
- "master" | |
paths: | |
- "cli/Makefile" | |
- ".github/workflows/release-cli.yml" | |
env: | |
CLI_BUCKET: gs://cft-cli | |
RELEASE_URL: https://api.github.com/repos/GoogleCloudPlatform/cloud-foundation-toolkit/releases/latest | |
jobs: | |
release-new-cli: | |
name: Release new CLI versions | |
runs-on: ubuntu-latest | |
if: github.repository == 'GoogleCloudPlatform/cloud-foundation-toolkit' | |
permissions: | |
contents: 'write' | |
id-token: 'write' | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed # v5.1.0 | |
with: | |
go-version-file: cli/go.mod | |
cache-dependency-path: cli/go.sum | |
- id: 'auth' | |
name: 'Authenticate to Google Cloud' | |
uses: 'google-github-actions/auth@8254fb75a33b976a221574d287e93919e6a36f70' # v2.1.6 | |
with: | |
workload_identity_provider: '${{ secrets.GCP_WIF_PROVIDER }}' | |
service_account: '${{ secrets.GCP_WIF_SA_EMAIL }}' | |
- uses: google-github-actions/setup-gcloud@f0990588f1e5b5af6827153b93673613abdc6ec7 # v2.1.1 | |
with: | |
version: "410.0.0" | |
# used by make release which runs gcloud alpha storage | |
- name: Install gcloud alpha commands | |
run: gcloud components install alpha | |
- name: Retrieve last released version | |
run: |- | |
LAST_VERSION=$(curl --silent "${{env.RELEASE_URL}}" | \ | |
jq --raw-output .tag_name) | |
echo "LAST_VERSION=${LAST_VERSION}" >> $GITHUB_ENV | |
- name: Build | |
working-directory: ./cli | |
run: |- | |
make release | |
chmod +x bin/* | |
- name: Archive build artifacts | |
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 | |
with: | |
name: bin | |
path: cli/bin | |
- name: Retrieve current version | |
working-directory: ./cli | |
run: |- | |
CURRENT_VERSION=$(./bin/cft-linux-amd64 version) | |
echo "CURRENT_VERSION=${CURRENT_VERSION}" >> $GITHUB_ENV | |
- name: Release new version | |
if: env.LAST_VERSION != env.CURRENT_VERSION | |
working-directory: ./cli | |
run: |- | |
make publish | |
- name: Create Release | |
if: env.LAST_VERSION != env.CURRENT_VERSION | |
id: create_release | |
uses: actions/create-release@0cb9c9b65d5d1901c1f53e5e66eaf4afd303e70e # v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tag_name: cli/${{ env.CURRENT_VERSION }} | |
release_name: CLI Release ${{ env.CURRENT_VERSION }} | |
draft: false | |
prerelease: false | |
- name: Upload Linux Release | |
if: env.LAST_VERSION != env.CURRENT_VERSION | |
uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./cli/bin/cft-linux-amd64 | |
asset_name: cft-linux-amd64 | |
asset_content_type: application/octet-stream | |
- name: Upload Darwin Release | |
if: env.LAST_VERSION != env.CURRENT_VERSION | |
uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./cli/bin/cft-darwin-amd64 | |
asset_name: cft-darwin-amd64 | |
asset_content_type: application/octet-stream | |
- name: Upload Windows Release | |
if: env.LAST_VERSION != env.CURRENT_VERSION | |
uses: actions/upload-release-asset@e8f9f06c4b078e705bd2ea027f0926603fc9b4d5 # v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./cli/bin/cft-windows-amd64 | |
asset_name: cft-windows-amd64 | |
asset_content_type: application/octet-stream |