You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

This page gives an overview of the complete Magnolia development cycle:

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 install a development snapshot directly in the Live or in the UAT environment respectively. 

Standard Cloud bundle development workflow

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

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.
  • 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:

Best practice

Magnolia recommends that you develop your light module files using Magnolia CLI. If you want to use it, you have to install it. Magnolia light modules can nonetheless also be developed without using Magnolia CLI.

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 Maven Archetype Plugin to facilitate the creation of your cloud bundles.

When you use the Magnolia Cloud Maven archetype plugin, a best-practice cloud project skeleton is generated. 

my-mgnl-cloud-webapp/
├── pom.xml
└── src
    └── main
        └── webapp
            └── WEB-INF
                └── config
                    └── dev
                    │   └── README.md
                    │   └── magnolia.properties
                    └── shared
                        └── README.md
                        └── magnolia.properties

Note:

  • Two default profiles are generated: dev and shared. These profiles have their own magnolia.properties files. 
  • During packaging, the dev profile is excluded. The shared profile is included and deployed to Magnolia Cloud.
  • You can add local developer credentials to the dev profile to be used instead of the typical Magnolia superuser/superuser, which is disabled in the cloud.
  • In the shared profile, you can create specific .properties files for each cloud environment. This can be used, for example, to test the integration of a third-party tool in the UAT environment without affecting your Live environment. 

Make sure you use the latest version of the Magnolia Maven Plugin when deploying a new bundle to Magnolia Cloud: v1.0-RC6

More information about the Magnolia Cloud Maven archetype plugin can be found in the readme here: https://git.magnolia-cms.com/projects/BUILD/repos/maven-archetypes/browse/magnolia-cloud-project-archetype/src/main/resources/archetype-resources

If you previously created a custom bundle with .properties file changes, please check your customizations carefully and adhere to the structure shown above.

Once your custom bundle is deployed to the cloud, you can work with Magnolia Cloud as described above for any light development. For java development customizations, the custom bundle deployment process must be followed.

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.


#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels