Intershop provides an integrated environment for development and production in Microsoft Azure Cloud. All continuous integration processes are preconfigured in a project location in Azure DevOps.
Each customer project starts with an organization and a project in Azure DevOps. The project contains prepared source repositories and provides access to the necessary Java artifacts, pipelines, an optional ticket system, and wiki system. For container handling two registries are provided - one for Intershop container images and the second one for self-created images.
The CI/CD system is working with a standard configuration.
To access the various resources, you need an Azure account, which is provided by Intershop.
Customer resources in Azure
The following resources are required on a developer machine:
Docker Desktop (https://www.docker.com/products/docker-desktop/)
Azure CLI, see https://docs.microsoft.com/en-us/cli/azure/install-azure-cli.
Intershop Studio (Download URL: https://repository.cloud.intershop.com/ui/native/studio)
Setup details are available in the README of the project.
Intershop delivers a standard product with standard documentation - this documentation can be extended by the project developers, if necessary.
Angular CLI (https://www.npmjs.com/package/@angular/cli )
Microsoft Visual Code
For details, refer to https://github.com/intershop/intershop-pwa/blob/develop/docs/guides/getting-started.md .
Apache Maven (https://maven.apache.org/install.html)
For more information, refer to Guide - IOM Setup Blueprint Project.
Projects require access to various artifacts - this includes Maven packages as well as container images.
Log in to https://dev.azure.com for your configured organization.
Configure a personal access token, see https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops&tabs=Windows for details.
The personal access token should be configured to read packages:
Copy the personal access token to a temporary text file for later use.
Configure an SSH public key, see https://docs.microsoft.com/en-us/azure/devops/repos/git/use-ssh-keys-to-authenticate?toc=%2Fazure%2Fdevops%2Forganizations%2Ftoc.json&bc=%2Fazure%2Fdevops%2Forganizations%2Fbreadcrumb%2Ftoc.json&view=azure-devops for details.
The personal access token is used for your Maven or Gradle configuration.
To access the Intershop registry, it is necessary to generate a special token for the Docker login. To do so, perform the following steps:
Log in via LOGIN VIA OIDC PROVIDER and use your Intershop Azure account.
On the following page, select your profile on the top left.
Copy the CLI secret from the dialog.
For more information see Guide - Access to Intershop Docker Images.
To test the Docker login to the Intershop registry, use the following command:
docker login -u <your Azure account> -p <CLI secret>
The response should be:
To test the Docker login to your Azure registry, use the following command:
az acr login -n <project name without dash>acr.azurecr.io>
The response should be:
This repository contains the Intershop Commerce Management project code. The initial project contains an empty template with a default project configuration.
This is the initial code of the Intershop Progressive Web App - the default frontend of the ICM.
The initial project code of the Intershop Order Management was stored here. (optional)
This project contains the necessary configuration for the ICM continuous integration processes.
This project contains the necessary configuration for the CD processes.
The Flux configuration for the Kubernetes deployment is stored in this repository.
The repository <project name> is empty and currently not used.
All Git repositories in an Intershop project are prepared with a template as starting point. Intershop prefers and recommends GitFlow branching strategy, see https://nvie.com/posts/a-successful-git-branching-model/. So, there is always a “master”-Branch and a “develop”-Branch prepared. The provided Azure DevOps pipelines assume a development in this GitFlow branching strategy.
The following branches will automatically trigger a new build, if changes are available:
For feature development, based on develop branch.
For hotfix development, based on master or release branches.
Stabilization development, based on develop branch. This branch prepares a release on the master.
This branch is the working development branch.
The master branch holds the stable code. Release tags will be created from this branch.
Tags “version/**” will trigger a release build with the correct version. Intershop recommends semantic versioning (see https://semver.org).
The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.