Keep a library of your own plugin and theme ZIPs
The WordPress asset library holds plugin and theme ZIPs that are not on wordpress.org. Upload a ZIP on the master once. Hyperion copies it to every node, so a site on any node can install it. The files live under /var/lib/hyperion/wp-assets/<id>/ on each server.
Before you start
Section titled “Before you start”- You hold the Manage hosting profiles permission. Owners and Administrators have it. Installing a library item onto one hosting also needs the Manage WordPress (plugins, staging, …) permission for that hosting.
- The ZIP is at most 50 MB and is a real ZIP archive. Hyperion checks the first four bytes and refuses anything else with “file is not a ZIP archive (missing PK header)”.
Upload a ZIP
Section titled “Upload a ZIP”- Open Profiles & limits in the sidebar and click WordPress asset library.
- In Upload a ZIP, pick Plugin or Theme in Kind.
- Choose the file in ZIP file and click Upload ZIP.
The page answers Uploaded "<file>" → id <n>. and shows the item in the Library table. If the same bytes are already stored, nothing new is written and the message is Asset "<file>" already in library as id <n> — no duplicate stored.
The Library table has these columns: ID, Kind, Original filename, Size, In profiles (how many profiles reference the item), Installs (how many one-off installs from a hosting’s WordPress tab are tracked, profile-driven installs excluded), Uploaded, Reference and Actions.
Install an item on one hosting
Section titled “Install an item on one hosting”Use From library on the hosting’s plugin or theme group. See Manage plugins and themes.
Install an item through a profile
Section titled “Install an item through a profile”- Copy the value in the Reference column. It looks like
@asset:7. Clicking it copies it. - Open Profiles & limits, edit a profile, and paste the reference on its own line in the Plugins or Themes field. Add
!at the end of the line (@asset:7!) to activate the item after it is installed. - Apply the profile to a WordPress hosting. Hyperion installs the ZIP with
--forceas the hosting’s system user.
A profile can mix library references with wordpress.org slugs such as akismet.
Publish a new version of an item
Section titled “Publish a new version of an item”- In the item’s row, click Replace ZIP and choose the new file. The item keeps its id, so profiles that reference it keep working. Hyperion confirms with
Asset id <n> replaced with "<file>". - To push the new files to hostings that already have the item, click Re-install on <n> hosting(s) (it appears when at least one hosting is tracked) and confirm. Hyperion installs the new ZIP on each tracked hosting one at a time, at about a minute each, and keeps each hosting’s activate setting.
Delete an item
Section titled “Delete an item”Click Delete in the item’s row and confirm with Delete permanently.
Check that it worked
Section titled “Check that it worked”- After an upload, the item appears in the Library table with its size and uploader.
- After Re-install on <n> hosting(s), the page answers
Re-installed on <n> hosting(s).If some failed, it answers with the count and the first failures. - After a delete, the row is gone and the page answers “Asset deleted”.
If it fails
Section titled “If it fails”- “uploaded file is … bytes — max is … bytes (50 MB)”: the ZIP is too large.
- “uploaded file is empty”: the file field was empty.
- “Re-installed on … hosting(s); … failed.”: the message lists the first failures. Fix the cause shown and run the re-install again.
- A profile fails to install
@asset:<id>: the item was deleted, or the id is wrong. Check the id in the Library table.