Packages
New in Version 14
Packages are light weight apps that you can directly build from the Framework UI. A Package is very much like an app and a collection of Module Defs.
You can make apps directly from the Framework UI (without using the command-line) using DocTypes, Server Scripts, Web Page etc. High quality apps can be build from the Framework directly. These apps can be bundled in a "Package" and then imported to other sites.
To add a module to a package, you have to set its "Package" property. This is available for "Custom" Module Defs
Creating a Package
You can create a new Package by creating a Package object. You can set a README and a LICENSE. A Package is designed in a way that it can be pushed to a git repository.
Once you have created a package, you can add your custom Module Defs to that package.
Making a Package Release
A
Package Release
will export all the package modules in the
[bench]/sites/[site]/packages
folder like an app, and then bundle the folder in a gzipped tarfile
[package]-[version].tar.gz
You can then download the package release and import it in another site
Importing a Package
You can create a
Package Import
and attach the exported package on a new site. If you check "Activate", the package will be extracted into the
[bench]/sites/[sitename]/packages
folder (existing files will be overwritten).
The system will then migrate this package to the database similar to how an app migration works. Files that have not been changed will be skipped unless the "Force" check is applied.
A log is created with the output.