Skip to content

Release

Release #16

Workflow file for this run

name: Release
on:
workflow_dispatch:
inputs:
version:
description: The version to release (e.g. v1.0.0)
required: true
type: string
jobs:
release:
name: Release
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Create Tag
uses: negz/create-tag@v1
with:
version: ${{ github.event.inputs.version }}
token: ${{ secrets.GITHUB_TOKEN }}
- name: Release
uses: softprops/action-gh-release@v1
with:
name: ${{ github.event.inputs.version }}
tag_name: ${{ github.event.inputs.version }}
generate_release_notes: true
deploy:
name: Deploy
runs-on: ubuntu-latest
permissions:
contents: 'read'
id-token: 'write'
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: 1.22.x
- name: Get Version
run: |
VERSION="${{ github.event.inputs.version }}"
MODIFIED_VERSION="${VERSION//./-}"
echo "VERSION_GCP=$MODIFIED_VERSION" >> $GITHUB_ENV
- run: go mod download
- run: go install github.com/a-h/templ/cmd/templ@v0.2.648
- name: Generate Templ Files
run: templ generate -path ./components
- name: Generate CSS
run: |
curl -sLO https://github.com/tailwindlabs/tailwindcss/releases/latest/download/tailwindcss-linux-x64
chmod +x tailwindcss-linux-x64
mv tailwindcss-linux-x64 tailwindcss
./tailwindcss -i ./styles/input.css -o ./assets/css/output@${{ github.event.inputs.version }}.css --minify
- name: Replace version
run: sed -i 's/\${version}/'"$VERSION"'/' app.yaml
env:
VERSION: ${{ github.event.inputs.version }}
- name: Replace token secret
run: sed -i 's/\${secrets.DB_TOKEN}/'"$DB_TOKEN"'/' app.yaml
env:
DB_TOKEN: ${{ secrets.DB_TOKEN }}
- id: 'auth'
uses: 'google-github-actions/auth@v1'
with:
workload_identity_provider: ${{ secrets.GCP_WIP }}
service_account: ${{ secrets.GCP_SERVICE_ACCOUNT }}
- id: 'deploy'
uses: 'google-github-actions/deploy-appengine@v1'
with:
version: ${{ env.VERSION_GCP }}
flags: --no-cache