Skip to main content

Update

Check for and install updates to keep your Mumara Campaigns installation current with the latest features and security patches.

Overview

Navigate to Tools → Update to open the Update Wizard. The wizard guides you through the entire update process in a step-by-step flow:

  1. Pre-flight Checks — Verify requirements, configure file transfer, and optionally create a backup
  2. Download — Download the update package from the server
  3. Extract — Extract the update archive
  4. Install Files — Copy updated files to the application directory
  5. Database & Cache — Run database migrations and clear caches
  6. Complete — Cleanup and confirmation

A numbered step indicator at the top of the page shows your current progress. Each step must complete successfully before the wizard advances to the next.


Step 1: Pre-flight Checks

When you open the Update page, the system automatically runs a series of checks.

Version Information

Two version badges are displayed:

BadgeDescription
Current VersionThe version currently installed on your server
Latest VersionThe newest version available from Mumara servers

If both versions match, an "Already up to date" message is shown with the update button disabled. You can click Force reinstall? to re-download and reinstall the current version if needed (e.g. to repair corrupted files).

The last update date is also shown if a previous update was performed.

Update Channel

Three release channels are exposed as radio options. Each shows the resolved version it would install, so you always see exactly what's about to land on your server.

ChannelWhen To UseBehaviour
StableProduction installations (default)Installs the latest production release. Honours the standard Already up to date / Force reinstall logic against the current version.
BetaStaging or pre-release validationInstalls the latest beta build advertised by the update server. The badge next to the radio shows the beta version (e.g. v7.1-beta2). If no beta is currently published, the radio is disabled with an Unavailable badge.
Specific versionPinned upgrade or downgradeInstalls an exact version you type in (X.Y or X.Y.Z, validated client-side). Useful for re-installing a known-good release or rolling back.

Switching to Beta or Specific version automatically suppresses the Already up to date check — you're explicitly asking for a build different from "latest stable", so the comparison no longer applies. Selecting Beta or Specific version also asks you to confirm before kicking off the download, since both can result in pre-release or downgrade installs.

The Begin Update button label updates to reflect the choice — Begin Update, Force Reinstall, Install Beta v7.1-beta2, or Install v6.5.5.

Always back up first when leaving Stable

Beta and specific-version installs may include unfinished features or incompatible schema changes. Create a backup in the section below before switching off the Stable channel.

System Requirements

The wizard checks that your server meets all requirements for the update:

  • PHP version — Minimum PHP version required by the new release
  • PHP extensions — Required extensions (e.g. mbstring, openssl, curl, zip)
  • Other dependencies — Any additional server-side requirements

Each requirement shows a green check or red cross indicating pass/fail status. If a required item fails, the update button is disabled until the issue is resolved.

File/Folder Permissions

The system verifies that key directories and files are writable by the web server process. Each path shows a check or cross icon. Fix any permission issues before proceeding.

File Transfer Method

Choose how updated files are copied to the application directory:

MethodDescription
Direct CopyCopies files directly on the filesystem (default, recommended when PHP runs as the web server user)
FTPTransfers files via FTP — useful when PHP doesn't have direct write access
SFTPTransfers files via SFTP (SSH) — secure alternative to FTP

When FTP or SFTP is selected, additional fields appear:

FieldDescription
HostFTP/SFTP server address (default: 127.0.0.1)
PortConnection port (default: 21 for FTP, 22 for SFTP)
UsernameFTP/SFTP username
PasswordFTP/SFTP password
Mumara PathAbsolute path to the Mumara installation on the FTP server (e.g. /var/www/mumara)

Use Test Connection to verify the credentials before proceeding, and Save FTP Settings to persist them for future updates.

Backup (Optional)

Before updating, you can create a backup of your application files, database, or both.

OptionDescription
Backup FilesCreates a compressed archive of the application directory
Backup DatabaseCreates a database dump
Backup Tool Requirements

Backup availability depends on server-side tools. If required tools (e.g. tar, mysqldump) are not installed, the corresponding option will be disabled with a message indicating which tools are missing.

Click Create Backup to start. The backup runs in the background with a live progress display showing:

  • Current phase (files or database)
  • Elapsed time
  • Completion status for each component

You can Abort a running backup if needed — this kills the backup process and cleans up any partial files.

Existing Backups

Previously created backups are listed below the backup controls, showing:

  • Version number and date
  • File names and sizes
  • Total backup size

You can delete old backups to free up disk space by clicking the trash icon next to each backup.

Change Log

A scrollable list shows the changes included in each version since your last update. Review this to understand what's new before proceeding.

Begin Update

Once all checks pass, click Begin Update to start the automated update process. If you configured FTP/SFTP settings, they are saved automatically before the update begins.


Step 2: Download

The wizard downloads the update package from the Mumara update server. Progress is shown in a log console at the bottom of the step. If the download fails (e.g. network issues), the wizard stops and you can retry.


Step 3: Extract

The downloaded archive is extracted to a temporary location. The log shows extraction progress and any errors encountered.


Step 4: Install Files

Updated files are copied to the application directory using the file transfer method configured in Step 1 (Direct Copy, FTP, or SFTP). The vendor directory is replaced entirely during this step.

warning

Do not close the browser or navigate away during this step. Interrupting file installation could leave the application in a broken state.


Step 5: Database & Cache

Database migrations run automatically to update the database schema, followed by cache clearing (config, route, view, and application caches). The log shows each migration and cache command as it executes.


Step 6: Complete

A success screen confirms the update is complete. The cleanup step removes temporary files (downloaded archive and extracted directory).

Click Go to Dashboard to return to the main application.


CLI Update (Bash Script)

For servers managed via SSH, Mumara provides a set of one-line bootstrap commands that mirror the wizard's Stable / Beta / Specific Version channels. They're useful for automated deployments, or when the web interface is unavailable (broken assets, locked-out admin, etc.).

Choosing a Channel

The three bootstraps are functionally identical except for which release channel they target. SSH to your server, navigate to the physical directory where Mumara is installed (the directory containing the version file), and run the appropriate command below.

Stable channel

Installs the latest production release — the default for ongoing maintenance.

curl -o update_mumara -L https://dl.mumara.com/campaigns/update_mumara && sh update_mumara

Beta channel

Installs the latest beta build for pre-release validation.

curl -o update_mumara_beta -L https://dl.mumara.com/campaigns/update_mumara_beta && sh update_mumara_beta
Beta builds are pre-release

Beta releases may include unfinished features, incompatible schema changes, or known bugs. Run them on staging environments or after creating a verified backup.

Specific version

Pins the install to an exact version — useful for re-installing a known-good release or rolling back. The script will prompt for the target version interactively (e.g. 6.5.5).

curl -o update_mumara_version -L https://dl.mumara.com/campaigns/update_mumara_version && sh update_mumara_version

Ioncube 10 → 12 converter

Older installations may still ship with Ioncube version 10. Mumara requires Ioncube 12+ on PHP 8.4. If your installation was built using the command-line tool with the older loader, run this from the home directory to upgrade Ioncube before attempting an update:

cd /home && curl -o mumara_ioncube10_to_12_converter.sh -L https://dl.mumara.com/mumara_ioncube10_to_12_converter.sh && sh mumara_ioncube10_to_12_converter.sh
When this is needed

The standard CLI updaters (update_mumara*) auto-detect a stale Ioncube loader and refresh it as part of the PHP upgrade step. The standalone converter is only needed if you've hit a Failed loading ioncube_loader or undefined symbol: zend_observer_fcall_end error before getting that far.

How the Bootstraps Work

All three bootstrap scripts:

  1. Confirm wget, curl, and unzip are installed (prompts for confirmation).
  2. Write a marker file to /tmp/mumara_versiontype.XXXXXX containing one of: alpha (stable), beta, or specific_version.
  3. Download update.sh from dl.mumara.com/campaigns/update.sh.
  4. Run update.sh, which reads the marker file and selects the appropriate channel when calling the upstream license server.

The marker tempfile is automatically cleaned up on exit, regardless of whether the update succeeds.

What update.sh Does

Once the bootstrap hands off to update.sh, the same sequence runs for all three channels:

  1. Verifies the license key and server IP with the update server (using the channel-specific type parameter).
  2. Downloads the update package to storage/app/private/update/archive/.
  3. Extracts files to storage/app/private/update/package/.
  4. Clears caches (config, route, view).
  5. Removes the old vendor/ directory and copies new files.
  6. Upgrades PHP to 8.4 if the current version is lower (auto-detects OS and installs from Remi/Ondrej repos). Refreshes the ionCube loader to match.
  7. Runs the post-copy upgrade sequence via php artisan upgrade:run — version-specific cleanup, migrate --force, cache rebuild.
  8. Adds the legacy public/ rewrite to .htaccess for installs upgrading from <= 6.6.2.
  9. Cleans up temporary files and the marker tempfile.

Optional Pre-Update Backup

Early in update.sh, you'll be asked whether to create a pre-upgrade database backup (defaults to yes). Backups are written to storage/backups/cli_v{version}_{timestamp}/database.sql.gz using mysqldump. If mysqldump isn't available, the script asks whether to proceed without a backup.

Supported Operating Systems

The CLI update script supports:

  • AlmaLinux 8, 9, 10
  • CentOS 7, 8
  • Rocky Linux 8, 9
  • Debian 11+
  • Ubuntu 20.04, 22.04, 24.04

Post-Update Verification

After any CLI update, verify the installation:

# Check the new version
cat version

# Verify PHP version
php -v

# Verify config cache
php artisan config:cache

# Check for errors
tail -20 storage/logs/laravel.log

Troubleshooting

Pre-flight Check Failures

Possible causes:

  • PHP version too old for the new release
  • Required PHP extension not installed or enabled
  • File/folder permission issues

Solutions:

  • Upgrade PHP to the required version
  • Install missing extensions via your OS package manager or php.ini
  • Fix permissions: ensure the web server user can write to the listed paths

Download Fails

Possible causes:

  • Network connectivity issues between your server and the Mumara update server
  • Firewall blocking outbound HTTPS connections
  • Insufficient disk space

Solutions:

  • Verify your server has outbound internet access
  • Check firewall rules for HTTPS (port 443)
  • Free up disk space before retrying

FTP/SFTP Connection Fails

Possible causes:

  • Incorrect credentials or port
  • FTP/SFTP server not running
  • Wrong Mumara path on the remote server

Solutions:

  • Verify credentials by testing the connection with the Test Connection button
  • Confirm the FTP/SFTP service is running on the expected port
  • Double-check the Mumara path matches the actual installation directory

Update Fails Mid-Process

Possible causes:

  • File permission errors during installation
  • Database migration conflict
  • Server timeout

Solutions:

  • If you created a backup, restore it and retry
  • Check PHP error logs for specific error messages
  • Increase PHP max_execution_time if timeouts occur
  • Contact support with the error details from the update log

Post-Update Issues

Possible causes:

  • Browser cache serving old assets
  • Incomplete migration
  • Cache not properly cleared

Solutions:

  • Clear your browser cache or do a hard refresh
  • Navigate to Tools → Update and click Refresh to re-check the current state
  • Run php artisan cache:clear and php artisan config:clear manually if needed
  • Check Debug Logs for error details

Best Practices

  • Always create a backup before updating, especially for production environments
  • Review the change log to understand what's changing before proceeding
  • Test FTP/SFTP first if using remote file transfer — a failed connection mid-update can leave files in an inconsistent state
  • Schedule updates during low-traffic periods to minimize disruption
  • Keep backups of at least the last version in case you need to roll back
  • Delete old backups periodically to reclaim disk space

Next Steps