Manage Firmware Bundles¶
The Firmware Bundles page in MOJO lets you upload firmware files, organize them into bundles, and build packaged archives — all from the web interface. Use it to keep your firmware catalog organized and ready for deployment.
Prerequisites
- A running MOJO instance
- Administrator or superuser access to the MOJO web interface
- Firmware binary files from your server vendor (Dell, HPE, Cisco, Supermicro, etc.)
Navigating to Firmware Bundles¶
- Log in to the MOJO web interface
- In the left sidebar, click Configuration
- Click Firmware Bundles
The page shows four summary cards at the top:
| Card | What It Shows |
|---|---|
| Total Bundles | Number of bundle definitions you have created |
| Manufacturers | Distinct manufacturers across your bundles |
| Builds | Total packaged archives available for download |
| Firmware Files | Total individual firmware binaries uploaded to MOJO (click to expand the list) |
Key Concepts¶
Before getting started, here are the three main concepts on this page:
Firmware File : An individual firmware binary (BIOS update, BMC firmware, service pack, etc.) uploaded to MOJO with metadata like type, version, manufacturer, and compatible server models.
Bundle Definition : A named set of rules that groups firmware files together by manufacturer and pattern matching. Think of it as a "filter recipe" — it defines which firmware files belong in the bundle.
Bundle Build
: A packaged .tar.gz archive generated from a bundle definition. It contains all the firmware files that matched the bundle's rules, plus a manifest. This is what gets distributed to servers or downloaded for offline use.
The typical workflow is:
Upload a Firmware File¶
Use this to add individual firmware binaries (BIOS updates, BMC firmware, RAID controller firmware, etc.) to MOJO.
- Click the Upload Firmware button in the top-right corner
-
The upload dialog opens — click Choose File and select your firmware binary
Confirming your selection
After selecting a file, the filename and file size appear below the input so you can confirm you picked the right one.
-
Select the Type from the dropdown:
Type Use For BIOS System BIOS / UEFI firmware BMC Baseboard Management Controller (iDRAC, iLO, CIMC) Storage Controller RAID / HBA controller firmware LSI 3108 LSI MegaRAID 3108 family Service Pack Cisco Host Upgrade Utility (HUU) ISO NIC Network interface card firmware CPLD Complex Programmable Logic Device firmware PSU Power supply unit firmware GPU Graphics processing unit firmware -
Enter the Version — use the vendor's version string (e.g.,
2.22.1,7.10.90.00) -
Enter the Manufacturer — this must match exactly how the manufacturer appears in MOJO's server inventory
Manufacturer input
If MOJO has already discovered servers, a dropdown appears with known manufacturers. If no servers have been discovered yet, a text input appears where you can type the manufacturer name manually (e.g.,
Dell Inc.,HPE,Cisco Systems Inc.,Supermicro). -
Select or enter Models — the server models this firmware is compatible with
- If discovered servers exist: a multi-select list appears — hold ++ctrl++ to select multiple
- If no servers are discovered: type comma-separated model names (e.g.,
PowerEdge R650, PowerEdge R750)
-
Click Upload
A success notification confirms the upload, and the Firmware Files count updates automatically.
Supported File Types¶
MOJO accepts firmware files with these extensions:
.bin .exe .iso .cap .fwpkg .rpm .scexe .img .rom .zip .tar .gz .tgz .efi .fd .hpm
View Firmware Files¶
Click the Firmware Files card at the top of the page to expand a panel showing all uploaded firmware binaries. You can:
- Search — Filter by filename
- Download — Download a copy of any firmware file
- Delete — Remove a firmware file from the catalog
Create a Bundle Definition¶
Bundle definitions are the rules that organize your firmware files into logical groups.
- Click the Upload Bundle button in the top-right corner
- The dialog opens in Create Bundle Definition mode
-
Fill in the fields:
Field Description Example Name A descriptive name for this bundle Dell PowerEdge BIOSManufacturer The manufacturer to filter firmware by Dell Inc.Include Patterns Comma-separated patterns to match firmware locations bios, poweredgeExclude Patterns Comma-separated patterns to exclude from matches legacy, test -
Click Create
How Pattern Matching Works¶
When you build a bundle, MOJO:
- Collects all firmware files matching the bundle's manufacturer
- Keeps only firmware whose location matches at least one include pattern
- Removes any firmware whose location matches an exclude pattern
Pattern Examples
- Include
bios, poweredge— matches firmware containing "bios" OR "poweredge" in the location - Exclude
legacy— removes any firmware containing "legacy" in the location - Leave Include empty to match all firmware from the specified manufacturer
Build a Bundle¶
Building a bundle packages all matching firmware files into a downloadable .tar.gz archive.
- In the bundles table, find the bundle you want to build
- Click the Build button (gear icon) in the Actions column
- A notification confirms the build has started
- Click Refresh to see the updated build count
What's in a build?
The .tar.gz archive contains all firmware files that matched the bundle's rules, organized by manufacturer, model, and type, along with a manifest file containing metadata (checksums, versions, models) for each firmware binary.
Build Statuses¶
| Status | Meaning |
|---|---|
| Building | Archive is being created |
| Ready | Build completed — archive is available for download |
| Failed | Build failed — typically means no firmware files matched the bundle's patterns |
View Bundle Details¶
Click the View button (eye icon) in the Actions column to see:
- Bundle metadata (name, manufacturer, patterns)
- List of all builds with their status, date, file size, and firmware count
- Download links for each completed build archive
Import a Pre-Built Bundle Archive¶
If you have a pre-packaged firmware bundle archive (e.g., one provided by Metify or built using the firmware-bundles tooling), you can import it directly:
- Click the Upload Bundle button
- Switch the Mode dropdown to Upload Firmware Bundle (.tar.gz)
- Click Choose File and select the
.tar.gzarchive - Click Upload
MOJO will extract the archive, process each firmware binary inside it, verify checksums, and add them to the catalog.
Alternative: CLI import
You can also import firmware bundles via the command line using sudo ./mojo-manage --firmware. See Add a Firmware Bundle for the CLI workflow.
Delete a Bundle¶
- In the bundles table, click the Delete button (trash icon) in the Actions column
- Confirm the deletion
Warning
Deleting a bundle also removes all of its builds and their archive files. The individual firmware files in the catalog are not deleted.
Troubleshooting¶
Upload fails with 'Unsupported file type'
The file extension is not in the supported list. Rename the file to use a supported extension, or contact Metify support if you believe the extension should be accepted.
Build fails with 'No firmware matched'
No firmware files in the catalog match the bundle's manufacturer and include patterns. Check that:
- Firmware files exist for the specified manufacturer (expand the Firmware Files panel to verify)
- The include patterns actually match the firmware file locations
- The manufacturer name matches exactly (e.g.,
Dell Inc.notDell)
'Permission denied' error on upload
The firmware storage directory is not writable. On a local development setup, fix ownership:
In production MOJO containers, this directory is created with proper permissions automatically. If you encounter this in production, contact Metify support.
Upload button stays disabled
All fields are required. Make sure you have selected a file, chosen a type, entered a version, entered a manufacturer, and specified at least one model.
Next Steps¶
- Set up compliance checking — Use firmware files to create Firmware Baselines and check compliance across your fleet
- Import via CLI — Use
mojo-manage --firmwareto import bundles from Nexus or local files - API access — See the MOJO REST API for programmatic firmware management