|
Two root causes made the composer-based update produce a broken install:
- composer create-project ships source only, without the compiled frontend
bundles (public/v1/js/app.js etc.), leaving the UI broken (no graphs, 404s).
Switch to downloading and extracting the official GitHub release zip, which
is prebuilt. Normalize the version so both "6.6.5" and "v6.6.5" resolve to
the correct v-prefixed release asset.
- Laravel Passport renames its migration files between versions, so a
carried-over DB has the oauth_* tables while the new filenames look pending,
and migrate aborts trying to recreate existing tables. Reconcile the
migrations ledger before migrate: record already-present tables, let missing
ones be created.
Also add an ERR trap so a failed run names the failing line and cannot
masquerade as success (a silent mid-run failure left a half-built dir that
looked done), a dependency check (curl/unzip/php), and mkdir guards for the
storage carry-over. Document all of it in README.md and CLAUDE.md.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|