Add manual approvers for release stages in Multi Stage Pipelines in Azure DevOps

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”

Create Multi Stage YAML CI/CD pipeline for deploying database changes using Maven, Liquibase and 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”

Version Control Practices for Managing Database Changes for Liquibase

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”