This video tutorial about the Intershop Continuous Integration (CI) structure acts as an overview of the individual steps that need to be taken for an e-commerce development project. Furthermore, it will cover the deployment of an online shop. We have subsequent video tutorials for the most important steps, which are linked below.
First, you need to know that an e-commerce development project is split into the parts of project development and project deployment.
In terms of IT landscape, you need:
Then, your developers can start creating their code. They build and test locally, by pushing one or more commits into their local dev branch. When this is completed, the local dev branch is being pushed into the remote dev branch. This result will then be built and tested, or just compiled if there is nothing to be tested. If the test results are fine, the dev branch will be merged into the master branch. This is followed by a subsequent build and test of the master branch. Afterwards, this step marks the end of the development cycle. From here on, the deployment phase begins. We currently deploy by using Gradle.
At some point in the project phase, a copy of the master branch will be published as release to an artifact repository server. This release is necessary to be able to deploy the project to a system like test or production. Usually, the deployment phase of a project starts within an already prepared test environment for integration tests. This is where changes are still made to the project and tests are carried out to prepare the project for productive use. In this phase, further releases are created and published to the Artifact Repository.
After successfully passing all those integration tests, the release can be considered as production ready and will be deployed into a production system. From here, there are no more code changes! The deployment to the production system marks the end of the deployment process. In further project work, redeployments with a newer version of the project are very common. For this, a zero-downtime-deployment is possible, as long as changes only affect the file system. Database changes, however, require a planned downtime of the production environment.
This is our overview of a CI project. We hope that our video series is helping you to successfully deploy your e-commerce project.