diff --git a/.gitea/workflows/desktop.yml b/.gitea/workflows/desktop.yml index a55a92d..c95555b 100644 --- a/.gitea/workflows/desktop.yml +++ b/.gitea/workflows/desktop.yml @@ -8,91 +8,67 @@ on: - 'v[0-9]+.[0-9]+.[0-9]*' jobs: - build-ui: - name: Build SPA + build: + name: Build Linux (amd64) runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: '22' - cache: 'npm' - cache-dependency-path: web/package-lock.json + - run: npm ci working-directory: web + - run: npm run build working-directory: web - - uses: actions/upload-artifact@v4 - with: - name: spa-dist - path: web/dist/ - build-macos-arm64: - name: macOS (arm64) - needs: build-ui - runs-on: macos-14 - steps: - - uses: actions/checkout@v4 - - uses: actions/download-artifact@v4 - with: - name: spa-dist - path: cmd/desktop/frontend/dist/ + - run: | + rm -rf cmd/desktop/frontend/dist + mkdir -p cmd/desktop/frontend/dist + cp -r web/dist/* cmd/desktop/frontend/dist/ + - uses: actions/setup-go@v5 with: go-version: '1.26' + + - run: | + sudo apt-get update + sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev + - run: go install github.com/wailsapp/wails/v3/cmd/wails3@latest + - run: wails3 build -clean working-directory: cmd/desktop env: CGO_ENABLED: 1 + - run: | cd cmd/desktop/build/bin - zip -r oikos-desktop-darwin-arm64.zip oikos-desktop.app - - uses: actions/upload-artifact@v4 - with: - name: oikos-desktop-darwin-arm64 - path: cmd/desktop/build/bin/oikos-desktop-darwin-arm64.zip + tar czf oikos-desktop-linux-amd64.tar.gz oikos-desktop + sha256sum oikos-desktop-linux-amd64.tar.gz > oikos-desktop-linux-amd64.tar.gz.sha256 - build-linux-amd64: - name: Linux (amd64) - needs: build-ui - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/download-artifact@v4 - with: - name: spa-dist - path: cmd/desktop/frontend/dist/ - - uses: actions/setup-go@v5 - with: - go-version: '1.26' - - run: sudo apt-get update && sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev - - run: go install github.com/wailsapp/wails/v3/cmd/wails3@latest - - run: wails3 build -clean - working-directory: cmd/desktop - env: - CGO_ENABLED: 1 - uses: actions/upload-artifact@v4 with: name: oikos-desktop-linux-amd64 - path: cmd/desktop/build/bin/oikos-desktop + path: | + cmd/desktop/build/bin/oikos-desktop-linux-amd64.tar.gz + cmd/desktop/build/bin/oikos-desktop-linux-amd64.tar.gz.sha256 release: - name: Create Release - needs: [build-macos-arm64, build-linux-amd64] + name: Attach to Release + needs: build runs-on: ubuntu-latest if: startsWith(github.ref, 'refs/tags/') steps: - - uses: actions/download-artifact@v4 - with: - name: oikos-desktop-darwin-arm64 - uses: actions/download-artifact@v4 with: name: oikos-desktop-linux-amd64 - - name: Release - uses: https://gitea.com/actions/release-action@v1 + + - uses: https://gitea.com/actions/release-action@v1 with: files: | - oikos-desktop-darwin-arm64.zip - oikos-desktop-linux-amd64 + oikos-desktop-linux-amd64.tar.gz + oikos-desktop-linux-amd64.tar.gz.sha256 api_key: ${{ secrets.GITEA_TOKEN }}