In most of the Organizations, One would need certain approvals before a build can be promoted to one of the release environments. In Azure DevOps, it has always been easy to configure the approvers by configuring the pre-deployment settings in the stage. However, it was not possible to do it for the YAML based pipelines up until now. As we discussed in our previous blog post on how to write multi stage pipelines, we also discussed about the environments. Environments are a very new feature and Continue reading “Add manual approvers for release stages in Multi Stage Pipelines in Azure DevOps”
In our previous series of blog posts, we discussed what is Liquibase and how we can leverage Liquibase to manage database changes and associated functionality. We have seen and discussed various commands and attributes available. However we have not discussed putting everything together and creating a multi stage pipeline using some sort of CI/CD tool like Azure DevOps, Jenkins, TeamCity etc. The focus of this blog post will be to create a multi stage yaml pipeline for deploying database changes using Maven, Liquibase and Azure DevOps. The target environment will be Azure PostgreSQL for this post’s purposes, but it can be any target database in accordance with your needs.
Continue reading “Create Multi Stage YAML CI/CD pipeline for deploying database changes using Maven, Liquibase and Azure DevOps”
In the last few posts on the managing database changes, we discussed how it is useful and what are the various benefits available. One of the core philosophies of the Database as a Source Code involves treating code for Database changes as source code. This is not limited to using a version control system like Git / Subversion / Mercury etc. but it also expands to other areas like designing the proper directory structure, making it scale ready for future changes, minimizing merge conflicts etc. In this blog post, we are going to discuss some of the practices used for organizing database changes when using Liquibase.
Continue reading “Version Control Practices for Managing Database Changes for Liquibase”
Until recently, Azure DevOps had offered separate build and release views for its users. This was a little different from pipeline features in other CI/CD tools like Jenkins, where if you build a pipeline, it is a single unified experience. With recent update, they have released unified experience for the Multi Stage Pipelines. Now one can use a unified YAML experience and configure Azure DevOps pipelines to do CI, CD, or CI and CD together. This not only allows to control the build configuration as part of the source code but releases as well. In this blog post, we are going to create and work with the same.
Continue reading “Create Multi Stage Pipelines with YAML in Azure DevOps”
With the arrival of the Sprint 154 updates, auditing has been introduced in the Azure DevOps. This has been a long standing demand from various enterprises (including Ours !). We wanted to observe activities and monitor changes that have occurred in the Azure DevOps across the Organization. It is in the preview phase as of this writing of this blog post, but it is very useful in the preview phase as well. In this blog post, we are going to see what is recorded in the Azure DevOps as part of the auditing, how we can access it and what we can do with the same.
Continue reading “Working with Audit logs in Azure DevOps”