name: Publish on: push: tags: - 'v*' workflow_dispatch: inputs: tag_name: description: 'Tag name for the release' required: true type: string jobs: publish: runs-on: ubuntu-latest steps: - name: Checkout uses: https://git.quad4.io/actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - name: Setup Go uses: https://git.quad4.io/actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6 with: go-version: '1.25.4' cache: true - name: Setup Node uses: https://git.quad4.io/actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 with: node-version: '22' - name: Setup pnpm uses: https://git.quad4.io/actions/setup-pnpm@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4 with: version: 10 - name: Install Task uses: https://git.quad4.io/actions/setup-task@0ab1b2a65bc55236a3bc64cde78f80e20e8885c2 # v1 with: version: '3.46.3' - name: Generate SBOM uses: https://git.quad4.io/actions/gh-gomod-generate-sbom@efc74245d6802c8cefd925620515442756c70d8f # v2 with: version: v1 args: mod -licenses -json -output bom.json - name: Build Everything run: task all env: NODE_ENV: production - name: Create Release and Upload Assets uses: https://git.quad4.io/actions/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844 # v1 with: tag_name: ${{ github.event.inputs.tag_name || github.ref_name }} files: | software-station bom.json env: GITHUB_TOKEN: ${{ secrets.GITEA_TOKEN }}