Developing for Magnolia in the cloud
This page gives an overview of the Magnolia development cycle for standard and custom bundles.
Cloud environments vary
Depending on your subscription package, the environments available to you may differ.
For example:
You may have only a single Live environment available, or only a UAT and a Live environment. In these cases, you can deploy a development snapshot directly in the Live or in the UAT environment respectively.
Local development
Creating new features and functions in your Magnolia _package starts with local development.* After cloning the remote Git repository linked to your Magnolia subscription package, you install a Magnolia local development bundle on your machine. This is where you develop new features before sending them to the cloud via the Git repository.
Have a look at the prerequisites below before you get started.
Working in Magnolia cloud
After developing locally and pushing your work to the Magnolia Git repository, log in to the cockpit to retrieve your work. As well as providing an overview of your package’s status, the cockpit is the starting point for all the actions you can do in Magnolia in the cloud:
-
Install updates using Magnolia - Create development snapshots and releases to deploy and test new features through the different environments in Magnolia before making your site available to your customers.
Continuous delivery is a way to ensure that new configuration, templates and code can be rapidly and safely deployed to production. You deliver every change first to a UAT environment and verify that business applications and services function as expected through testing. Since every change is delivered to the UAT environment using automation in the Magnolia Cloud Cockpit, you have confidence that the application can be deployed to the Live environment exactly the same way, with a push of a button when the business is ready. In the UAT environment, business users can validate your changes with real content cloned from the Live environment.
Adapted from Caum, Carl: Continuous Delivery Vs. Continuous Deployment: What’s the Diff?
-
Manage environments in Magnolia - Create and manage the environments and running instances of Magnolia in the cloud.
Prerequisites
Java
Java 1.8 or higher is required to run the Magnolia local development bundle. If you do not know whether you have Java installed or which version you have, please read get Java.
Git
Git is required to develop for Magnolia in the cloud. You need:
Magnolia recommends that you develop your light module files using Magnolia CLI.
The CLI commands referred to here and further on are Magnolia CLI version 4 commands. |
See Setting up a local Git repository to get started with your standard bundle development workflow.
Custom cloud bundle development workflow
In the case of custom cloud bundle implementations, the development workflow is different. You or your cloud partner create the Magnolia bundle that is deployed to the cloud.
From Magnolia 6.2.1, Magnolia provides a cloud-specific option in the Magnolia Maven archetype to facilitate the creation of your cloud bundles. The Magnolia Maven Archetype generates a best-practice project skeleton. The Magnolia Cloud Maven Plugin validates and uploads your custom cloud bundle. Once your custom bundle is deployed to the cloud, you can also work with Magnolia Cloud using both Light Development (as described above) and Java custom modules.
Hands-on learning
Try out our end-to-end Hello Cloud development tutorial, in which you set up a light module and deploy it in Magnolia.