Updating Academy & Exam OS
3 min read
This guide explains how updates to Academy & Exam OS are delivered and how to install them.
Find your version #
Your installed version is shown:
- under About Academy & Exam OS in the staff menu (
/staff/about-software); - on the installer’s welcome page;
- in the
VERSIONfile and inmanifest.jsonof your download.
The current release is 1.1.0, a minor release with PayPal checkout and currency-aware online payments. See the Changelog.
Where updates come from #
Normal software updates are made available to licensed customers through the product download in your OsDot account (see Where to find downloads). They do not depend on the optional Priority Support plan, which adds personal help with applying an update within its scope. Neither option changes the software licence of the version you have installed. See Support Options.
Update from 1.0.x to 1.1.0 #
Version 1.1.0 is a minor release. Like the 1.0.x patches, it changes application files only and has no database migrations, so a 1.0.0, 1.0.1 or 1.0.2 installation is updated directly to 1.1.0 and receives the earlier fixes as well. The API used by the mobile app stays compatible, and there is no browser upgrade wizard: you update by replacing files.
- Download the 1.1.0 ZIP for your edition from your OsDot account.
- Take a full backup: the database,
Web/config/app_local.php,Web/config/installed.php, the wholeWeb/storage/folder and the website images you uploaded (Web/webroot/images/user-*). See Backups & Restore. - Put the site into maintenance mode by creating the file
Web/storage/maintenance.flag. - Replace the application files with the contents of the new package’s
Web/folder, keeping your ownconfig/app_local.php,config/installed.php, the wholestorage/folder and the uploaded website imageswebroot/images/user-*(extract the new files over the old ones; do not delete the oldWeb/folder first). On shared hosting, uploading the ZIP and extracting it on the server is the most reliable way; the documentation files next toWeb/are not needed on the server. - From the application folder, run
php bin/cake.php upgrade check. The expected result isInstalled: yes, version 1.0.0(or the 1.0.x version the site was first installed with: the installation marker keeps it),Package version: 1.1.0 (upgrade available)andpending: 0, with exit code 0. Nothing else has to be applied for 1.1.0. - Delete
Web/storage/maintenance.flagand check the site: sign in, open Mock Tests and Evaluations.
Important: If you customised application files, back up your changes before you replace the files, and re-apply them afterwards.
Your saved settings are kept: the new defaults of 1.1.0 (USD in the installer, the payment-method order Stripe, PayPal, Razorpay, offline) apply only to new installations. To offer PayPal, configure it under System / Integrations → Payment Configuration (see Payments & Orders). In the Reseller / White-Label edition the update replaces the package label with Reseller / White-Label package; if you had changed it for your edition, change it again.
Menu labels are your own content, so an updated site keeps its header and footer menus. When updating from 1.0.0 or 1.0.1, you can give the PDF catalogue its 1.0.2 name by renaming PDF Materials to PDF Courses & Materials under Website & CMS → Navigation.
Licensed installations (Single Site and Multi Site) #
The update keeps the Web/storage/ folder, which holds the licence activation, so the installation stays activated. No new software licence key is needed.
If a scheduled task runs php bin/cake license renew, change it to php bin/cake.php license renew. The earlier form, printed in the 1.0.0 and 1.0.1 guides and on their installer success page, does not run the command, so the licence was confirmed only when an owner used Check now. See Cron Jobs & Background Worker.
The mobile app #
An app built from 1.0.x source keeps working with a 1.1.0 website, because the API contract stays compatible (1.0.0, with two added order fields), so rebuilding the app is optional. An app built from the 1.1.0 source shows the payment provider’s name (for example “PayPal”) in a student’s order details. See Flutter Mobile App — Setup & Configuration.
Check upgrade readiness at any time #
From the Web/ folder of your installation, run:
php bin/cake.php upgrade checkThe command compares the installed version with the version of the package files on disk, checks PHP and database (MySQL or certified MariaDB) compatibility, lists pending database migrations and reminds you to take a backup. It recognises an upgrade situation; it does not apply anything.
Later updates #
Each later update ships with its own notes naming the version it applies to. Only apply a package version that the update’s notes name.
Related documents #
Watch the Video Tutorial #
Academy & Exam OS Video Tutorial 12: Updates, Backups, Security & Support shows this topic step by step (6:18).