Files
Test User 5152086668
CI / Docker build (push) Has been cancelled
CI / Frontend test and build (push) Has been cancelled
CI / Rust test (push) Has been cancelled
Release / Build and publish release (push) Has been cancelled
Initial browser fingerprint app with Gitea CI
2026-07-04 03:15:26 +08:00

1.2 KiB

Gitea CI and Release

This repository uses Gitea Actions workflows under .gitea/workflows.

CI

ci.yml runs on main pushes and pull requests:

  • Frontend: install with pnpm, run tests, build Vite dist.
  • Backend: check Rust formatting and run cargo test --locked.
  • Docker: build the production image from backend/Dockerfile.

Release

release.yml runs when a tag matching v* is pushed.

The workflow:

  1. Builds and tests the frontend.
  2. Checks and tests the Rust backend.
  3. Builds the release binary.
  4. Packages a runtime bundle with:
    • fingerprint_receiver
    • frontend/dist
    • backend/schema.sql
    • backend/data
    • README.md
    • compose.yml
  5. Creates or reuses the Gitea release for the tag.
  6. Uploads release assets.

Gitea 1.26 exposes the built-in job token as ${{ secrets.GITEA_TOKEN }}. The release workflow requests:

permissions:
  code: read
  releases: write

Manual package

VERSION=v0.1.0 BUILD_DOCKER=1 ./scripts/package-release.sh

Assets are written to release/.

Manual publish

GITEA_TOKEN=... \
GITEA_API_URL=https://git.aiot.ml/api/v1 \
GITEA_REPOSITORY=kanshan/browser-fingerprint \
RELEASE_TAG=v0.1.0 \
./scripts/publish-gitea-release.sh release/*