In addition to Publishing Content dotCMS offers the option to add content items to_Bundles_for later use.
Bundles allow you to add and group multiple types of content (the same content items you can individually Push) for later use. For instance, it is possible to create a Bundle with Folders, Pages, and content assets, and after changing each of the bundled items you can remote Push the whole Bundle instead of having to push each of the individual content items separately.
Please Note: There are different bundle considerations to be accounted for when push publishing to either Static or Dynamic endpoints. Please refer to the Static and Dynamic Publishing documentation before sending objects between servers.
The same objects that can be Remote Published can be added to Bundles: assets from the Content Manager, Host and Folders, Dynamic plugins, Users and Content Types.
To add pieces of content to the a Bundle, simply right-click a piece of content and select “Add to Bundle”.
The “Add to Bundle”light box opens:
Choose Bundle: Select a Bundle from the list to add the selected content to.
Note: To add a new Bundle, just enter a name for the new Bundle instead of selecting a Bundle from the list.
The existing Bundles can be viewed in the Publishing Queue window (Site Browser →Publishing Queue) under the Bundles tab:
This displays a list of all Bundles and their content, and provides options to perform the following actions:
- Upload Bundles: Manually upload Bundles created on another dotCMS server (see Download, below).
- Delete: Deletes the Bundle.
- Download: Downloads the selected Bundle. This downloads a compressed tar file with the Bundle contents that can be used to manually upload the bundle on another dotCMS server. You must specify whether the download will be used to Remote Publish or Remote Un-Publish the content in the Bundle.
- Push Publish: Displays the Push Publish light box so you can add the contents of the Bundle to the Publishing Queue.
Dependencies
When you add any assets to a bundle and then select “Download for Publish” for that bundle, dotCMS automatically adds required dependencies of the content to the Bundle as well. This ensures that all necessary objects are included when the Bundle is uploaded to another dotCMS server. However, in the case of static publishing folders instead of complete sites, then the external image links from WYSIWYGS, vtl files parsed by widgets, etc., must also be included in the bundle to ensure that there will be no broken links on static pages (think of your bundle as an FTP upload in the case of a static endpoint. Remember that in the case of a push publishing to a static endpoint it is recommended that the complete site be pushed to avoid broken links.
For more information, please see the Push Publishing Dependencies documentation.
Bundle Manifest
*Note: The manifest will only be availables for bundles made after upgrading to 21.09. *
dotCMS Bundles include a downloadable manifest that shows everything that is included in the bundle.
This bundle can be retrieved two ways, through the backend and through the REST API:
On the backend when you click on a bundle on the status/history page of the push publishing queue you will see a download manifest butom at the top.
To retrieve the bundle manifest as a CSV file through REST API call use:
GET /api/bundle/{bundleId}/manifest