name: Release new version on: push: tags: - "v*.*.*" - "v*.*.*-alpha.*" - "v*.*.*-beta.*" - "v*.*.*-rc.*" workflow_dispatch: env: GOPRIVATE: git.sr.ht jobs: release: runs-on: docker container: image: ghcr.io/ashkeel/cross-wails:v2.8.1@sha256:f40cd11894cb7b4bdacf72830337a0b2c81bc49becdba7ca3a6c7c39238de888 credentials: username: ${{ secrets.GHCR_USERNAME }} password: ${{ secrets.GHCR_PASSWORD }} steps: - uses: actions/checkout@v4 - name: Build linux/amd64 release run: GOOS=linux GOARCH=amd64 CC=x86_64-linux-gnu-gcc wails build -ldflags "-X main.appVersion=${GITHUB_REF_NAME}" -platform linux/amd64 -upx -upxflags "-9" -o strimertul-amd64 - name: Build linux/arm64 release run: GOOS=linux GOARCH=arm64 CC=aarch64-linux-gnu-gcc wails build -ldflags "-X main.appVersion=${GITHUB_REF_NAME}" -m -nosyncgomod -skipbindings -s -platform linux/arm64 -upx -upxflags "-9" -o strimertul-arm64 - name: Build windows/amd64 release run: GOOS=windows GOARCH=amd64 CC=x86_64-w64-mingw32-gcc wails build -ldflags "-X main.appVersion=${GITHUB_REF_NAME}" -m -nosyncgomod -skipbindings -s -platform windows/amd64 -upx -upxflags "-9" - name: Move binaries from build/bin run: mkdir "${GITHUB_REF_NAME}" && mv build/bin/strimertul* "${GITHUB_REF_NAME}/" - name: Upload binaries to MinIO uses: https://github.com/yakubique/minio-upload@v1.1.3 with: endpoint: https://artifacts.fromouter.space access_key: ${{ secrets.MINIO_ACCESS }} secret_key: ${{ secrets.MINIO_SECRET }} bucket: strimertul-builds source: ./${{ github.ref_name }}/ target: / recursive: true