Document Basket
  • The document basket is empty

    To place a document in the briefcase, you should drag and drop it from where it is linked on the site.

Continuous Deployment

Continuous deployment, also known as continuous integration, is part of our quality approach. For your competitive advantage, it’s important to be able to get new functions, modules, layout changes and templates operational on test and productive systems quickly. You want to measure time to market in minutes, not days. AOE media makes this process stable and risk-free, with a sophisticated system for automatic quality assurance, automatic rollout and rollbacks.

Continuous deployment means that a software project, such as a website,is regularly rebuilt, and tested automatically as well as manually. The system is automatically rebuilt in whole or in part each time there is a change. By making many small functional changes instead of one big one, developers have control over the project at every stage, and can incrementally implement feedback from tests and test users.

Benefits:

  • Bugs and problems are detected quickly and can be corrected quickly
  • Your website stays available without interruption, even when changes are being published to it
  • Demos and tests can be done securely, without “open heart surgery”

An overview of the AOE deployment process:

Before starting, our developers pull the “Latest” development environment from the current operational website version. Changes they make are “checked in” to the Version Control System (VCS). Backup Storage provides new text and/or pictures entered by the site operator. In the Artefact Repository, a delta package is automatically generated [1] from the contents of the VCS and Backup Storage, and then installed to Latest, i.e. the first development environment [2]. The Artefact Repository administers the packages based on their version numbers, and monitors the individual tests and builds. The first automatic smoke test is then run on Latest.

Continuous Deployment bei AOE media
An overview of the AOE deployment process (Click to enlarge)

Tests are then run on the second development environment, “Deploy” (PHPUnit und Selenium testing) [3]. If everything’s OK, the build package moves from development to the split productive environment [4]. The “Stage” and “Production” systems there have 100% identical hardware and software, and each contain an A and B version. A is active, while B is inactive. The status is switched with each new build, so that if a critical error shows up, there is always the option of switching back to the earlier version (rollback function).  The last approval system for changes is Stage. It’s live, but protected for certain IPs or by HTTP authentication. By contrast, Production is the open, final version of the website, where the package is installed after the final acceptance tests [5]. This A and B version setup lets us retain and upgrade the version status quo during the development phase, without taking your site down.

A nightly backup writes content back to Backup Storage. All builds are created with Jenkins (formerly Hudson), either manually, or automatically for the nightly backups. The installation package contains only changes to the productive environment, never to content, so no content is ever lost. The site also stays editable up to basically the last minute before publishing to Production.

Continuous deployment was first used in the Java world. AOE media has implemented it for its customers in the TYPO3 and PHP development environments.

Case Study

Panasonic

  • 1For more than 30 of Panasonic's european national websites, AOE media implemented a Search as a Service full text search based on Apache Solr.
  • 2Filter, Auto-Suggest, Synonym Search and more ...
  • 3The crawler doesn't need pre-loaded structured data - unique on the German market!