Skip to content

v0.2.0

Latest

Choose a tag to compare

@github-actions github-actions released this 02 Jun 20:38

Changed

  • The shipped application is now the Phoenix app (app-phoenix/), replacing the Rails app. ghcr.io/dawarich-app/atlas/app is now built from app-phoenix/ and compose.yml runs it (Phoenix on port 4000; Caddy proxies app:4000).
  • The Go atlas-control sidecar is absorbed into the Phoenix app. It is removed from compose.yml; the app now execs docker compose / docker run against the host daemon directly (requires the docker socket mount + group_add already wired in compose.yml). The build-control and test-sidecar CI jobs are retired.
  • API responses are byte-for-byte equal to the Rails app, enforced by the mix test --include parity golden gate in CI.

Added

  • Auto-generated SECRET_KEY_BASE on first boot (persisted to /data/.secret_key_base, mode 600) so docker compose up -d stays zero-config — matching the legacy Rails behavior.
  • Atlas.Release.migrate_from_rails/1 — one-shot importer for upgrades from a Rails install: bin/atlas eval 'Atlas.Release.migrate_from_rails("/data/app.sqlite3")' copies services, region_selections, and settings into the Phoenix DB (idempotent; backs the source up first).

Migration notes (upgrading from 0.1.x / Rails)

  • The Phoenix app uses a different SQLite file (/data/atlas.sqlite3) and schema. Settings/region selection/service state do not carry over automatically — run Atlas.Release.migrate_from_rails/1 once against the old /data/app.sqlite3 to preserve them. (User GPS data lives in Dawarich, not Atlas, and is unaffected.)
  • Schema migrations run automatically on boot.