Files
vasyansk 372dd7123a Update version to 0.1.6
Add Gitea package registry support

Add publish-dmg target for versioned DMG uploads

Update deploy-dmg to include Gitea publishing

Document Gitea token requirements in README
2026-06-15 16:52:24 +07:00

44 lines
1.6 KiB
Markdown

# Deploy — spaceshell.ru
Front nginx (`proxy`) → landing container, plus `/download/spacesh.dmg`.
## Layout on the server (`$SSH_REMOTE_DIR`, e.g. `/opt/spacesh`)
```
docker-compose.yaml # synced by CI
proxy.conf # synced by CI
download/spacesh.dmg # uploaded locally via `make deploy-dmg`
```
## One-time server setup
```bash
# The landing image lives in a private registry — log the server in once:
docker login git.realmanual.ru
mkdir -p $SSH_REMOTE_DIR/download
```
## What runs where
- **Landing image + compose deploy** → automatic in `.gitea/workflows/build.yaml`
on push to `landing/**`. CI builds/pushes the image, scps `deploy/*` to the
server, then `docker compose pull && up -d`.
- **DMG** → built on macOS, uploaded by hand: `make deploy-dmg`
(sets the stable `download/spacesh.dmg`). Tauri can't build a macOS bundle in CI.
The same command also publishes a **versioned** copy to the Gitea package
registry (`Packages` tab) when `GITEA_TOKEN` is set:
```bash
GITEA_TOKEN=<token-with-package:write> make deploy-dmg # server + Gitea Packages
make publish-dmg GITEA_TOKEN=<token> # build + Gitea Packages only
```
Published at `{GITEA_URL}/api/packages/{GITEA_OWNER}/generic/spacesh/<version>/spacesh-<version>.dmg`
(override `GITEA_URL`/`GITEA_OWNER`/`GITEA_PKG` if needed). Version comes from
`tauri.conf.json`, bumped on every `make dmg`. Without `GITEA_TOKEN` the publish
step is skipped (server copy still happens).
## Gitea secrets required
`SSH_HOST`, `SSH_USER`, `SSH_REMOTE_DIR`, `SSH_KEY` (private key, key-based auth).