The need for efficient and reliable deployment processes has never been more critical. Leveraging Continuous Integration and Continuous Deployment (CI/CD) can significantly enhance development workflow, reduce errors, and improve collaboration among team members – making it an essential component to delivering fast, high quality implementations of inriver and other software platforms.
Without setting up CI/CD for inriver projects, deployments are manual and the deployment team must remember everything that needs to be deployed (code updates, settings, etc.) and every extension that requires updating after a code change. Needless to say, this complicates deployment and leaves a lot of room for human error.
The team at Aperture Labs aims to deliver efficient digital solutions that maximize our client’s budget, are easy to adopt, and can be maintained with ease. Leveraging CI/CD during implementation is one of the many ways we make this commitment come to life for our clients.
If you’re curious about how CI/CD is leveraged to make implementation more streamlined, read on!
Implementation
The time it takes to set up CI/CD for inriver implementations is worth the effort every time. Feature branches are created and pipelines are configured in Azure DevOps to watch these branches, set them up for release, and sync extension settings.
Creating Environment Branches
In our implementation of CI/CD below we have set up an environment for each of the inriver environments we wish to automate our deployments to. Your team can then work using your normal branching strategy and, once you are ready to deploy to inriver, merge into the environment branch.
The pipeline will then ensure that everything builds and is ready to be deployed. This also allows you to pull these branches down and ensure you’re working the exact code that is deploying to inriver.
Once the branching strategy is in place, the next step is to configure the Build pipelines in Azure DevOps. These pipelines are responsible for building the project and preparing the package for deployment to inriver.
At a high-level, the steps of the pipeline configuration are:
At the end of the pipeline running, we should have an auto-built package zip ready for deployment to inriver. We’ve also included a powershell script responsible for the publish of this zip file into the Build artifacts.
Setting Up Release Pipelines
With the Build pipeline in place, the next step is to set up release pipelines for each branch to deploy the package to inriver using its REST API. This can be configured to release automatically or manually.
The release pipeline:
The included powershell script will execute the following:
Implementing CI/CD with Azure DevOps for inriver projects offers numerous advantages:
In summary, setting up CI/CD for inriver implementations using Azure DevOps is a game-changer. It accelerates deployment cycles, enhances reliability, fosters collaboration, and reduces manual errors. By implementing something similar to the steps outlined above, you can streamline your inriver PIM projects and achieve greater efficiency.
Stay tuned for our upcoming article that dives deeper into the specifics of automating updates to extension settings, including the transformation of settings for environment-specific settings.
We're here to help you navigate the path to a high-value, high-ROI implementation of inriver. If you want to learn more about the specifics of setting up CI/CD, we're be happy to connect!