Before You Start
Make a backup of your Luster database before you do anything. The updater will prompt you to download a .zip of your most current files as part of the update process anyway, but it's good practice to have one on your computer before you even start.
How to back up your database
- cPanel - Look for phpMyAdmin under the Databases section. Click your database name in the left sidebar, then click Export at the top and hit Go. That saves a copy of all your data to your computer.
- Plesk - Look for Databases → Export Dump.
Updating Through the Admin Panel
This is the normal way to update. The whole thing happens in your browser.
-
Open the update page
When a new version is out, you’ll see a banner on the dashboard. Click Update Luster to go to the update page. You can also reach it through Settings → System Info.
-
Prepare the update
Click Prepare Update. Luster reaches out to GitHub, downloads the new release, and checks it to make sure the file wasn't corrupted or tampered with. It also checks that your server has everything it needs (enough disk space, writable folders, etc.).
If all the checks pass, you'll see a green summary, a Changes In This Update card, and a button to download your backup.
The Changes In This Update card previews two things before you commit to anything: files that will be removed (old files no longer part of the new release — you can expand the list to see exactly which ones), and what happens to
public/.htaccess. If your live file still matches what Luster itself last wrote there, it's silently updated to the new release's default. If you've customized it, it's never touched or overwritten automatically — you'll see a warning instead, with a preview of the new default and a download link, so you can merge in anything you need by hand. Once you have, click I've reviewed and merged this myself so the warning doesn't reappear next time. -
Download your Backup
Click Download Backup. This saves a ZIP file to your computer with all of your Luster files and a full database dump. Keep it somewhere safe. If an update goes sideways for whatever reason, this ZIP will help you recover everything and get back to exactly where you left off before updating.
-
Apply the Update
Tick the box confirming you've saved the backup, then click Apply Update. Luster copies the new files into place, deletes any obsolete files previewed in the step above, and reconciles
public/.htaccessas described there. Your settings file (config/app.php) is never touched, so your database credentials and all your settings stay exactly as they are.vendor/(Luster's bundled dependencies) is fully managed by the updater like any other release file — it's rebuilt to match what the new release ships. You never need to run Composer yourself.public/uploads/andstorage/are never touched by an update, same as always. -
Run the Migration Runner
After the files are updated, Luster sends you straight to the migration runner. This is a separate page that makes any database changes the new version needs: new tables, new columns, etc. Click Run Migrations and let it apply any pending migrations to your install. Then, you're done!
Manual Updates
Sometimes an update can’t be applied automatically — usually because the release is missing the security file that Luster uses to verify the download. When that happens, the update page will say so and give you a link to the release on GitHub.
-
Download the Latest Release
Go to the Luster releases page and download the most recent
.zipfile. -
Extract over your existing install
Extract the ZIP and upload all the files to your server, overwriting everything.
Never overwrite config/app.php. It contains your database credentials and site settings. Upload everything except
config/app.php, or at a minimum protect that file. Everything else is safe to overwrite.If the new release includes new settings in
config/app.sample.php, you can add them to your existingconfig/app.phpby hand - new settings always have safe defaults, so nothing breaks if they're missing. -
Run the migration runner
Visit the migration runner in your browser:
URLhttps://yoursite.com/luster/public/migrate/Log in to the admin panel first if you haven't already; the migration runner checks for an active admin session.
Click Run Migrations and wait for it to finish. You'll get a message confirming your migration has completed succesfully. If some did not apply, that's okay, you can re-run the migration runner again!
If the Migration Runner Shows an Error
The migration runner is safe to re-run — already-completed migrations are skipped, so you won't get duplicates. If something errors, just go back and run it again. A single failure won't stop the rest.
Most migration errors happen because the database table the migration was trying to change already has what it needs (maybe from a previous partial run, or from a manual change). In that case, the migration is effectively done even though it reported an error.
You can check and fix this in phpMyAdmin or your database manager:
-
Read The Error
The run log will name the migration number that failed and what went wrong. Copy that message.
-
Check the Migrations Table
Open phpMyAdmin from your host’s control panel. Select your database on the left, find the
lstr_migrationstable, and click Browse. If the failing migration number is not listed there, you can add it manually — click Insert, put the number in themigration_numberfield, and save. Then re-run the migration runner. -
Restore From Backup (if needed)
If the error looks more serious and your site is broken, restore from the backup ZIP you downloaded before updating. Then report the issue through your admin panel's Send a Report form, or go to the contact page to find more ways to reach out.