name: Build and Release on: push: branches: [ "main" ] tags: [ "v*" ] pull_request: jobs: release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: fetch-depth: 0 - name: Setup Go uses: actions/setup-go@v2 with: go-version: 1.17 - name: Setup Node.js uses: actions/setup-node@v1 with: node-version: '14.x' - name: Setup Elm uses: jorelali/setup-elm@v2 with: elm-version: 0.19.1 - name: Build frontend run: | npm ci npm run build working-directory: ./ui - name: Test build release uses: goreleaser/goreleaser-action@v2 if: "!startsWith(github.ref, 'refs/tags/v')" with: version: latest args: release --snapshot - name: Build and publish release uses: goreleaser/goreleaser-action@v2 if: "startsWith(github.ref, 'refs/tags/v')" with: version: latest args: release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}