loading table of contents...

Chapter 4. Blueprint Workspace for Developers

CoreMedia Blueprint workspace is the result of CoreMedia’s long year experience in customer projects. As CoreMedia CMS is a highly customizable product that you can adapt to your specific needs, the first thing you used to do when you started to work with CoreMedia CMS was to create a proper development environment on your own. CoreMedia Blueprint workspace addresses this challenge with a reference project in a predefined working environment that integrates all CoreMedia components and is ready for start.

CoreMedia Blueprint workspace provides you with an environment which is strictly based on today’s de facto standard for managing and building Java projects by using Maven. That way, building your project artifacts is a matter of simply executing mvn clean install. Developers are able to test all the various CoreMedia CMS components directly within the same environment by executing mvn tomcat7:run and mvn tomcat7:run-war respectively. No further deployment is necessary.

With the introduction of Chef as the provision tool of choice and Vagrant as the tool to prepare VirtualBox virtualized environments, setting up the server back-end to start developing with CoreMedia Blueprint workspace is now a matter of minutes, rather than hours. A simple vagrant up management will provide you with all databases, content repository and search services without the need to install and configure any project specific software on the developer's system.

To achieve this simplicity all components within the CoreMedia Blueprint workspace are preconfigured with hostnames, ports, database schemes, users and passwords such that you don’t need to worry about configuration while developing within the CoreMedia Blueprint workspace. Instead, right from the start, you may concentrate on the real work, on the business logic that creates your company’s value in the first place.

CoreMedia Blueprint workspace creates RPM or Zip artifacts out of the box, which you can use for deployment. You can preconfigure or post-configure your components that means at build time or at installation time, respectively.