Files
spaceshell/deploy/README.md
T
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

1.6 KiB

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

# 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:

    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).