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 Read More »

Create Multi Stage Pipelines with YAML in Azure DevOps

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.
Read More »

Working with Azure DevOps Pipelines using Command line

One of the new exciting features introduced in Azure DevOps updates is the introduction of ‘az pipelines’ command group. Microsoft has been putting some efforts in writing YAML based pipelines over the last few months and has also recently introduced the ability to do Continuous Integration or Release or define both in one single pipeline. Since Azure Pipelines can now be managed at the command line, you can use it to further introduce the automation that you have created for your organization. In this blog post, we’ll learn how to use ‘az pipelines’ commands to define, initiate and manage Azure pipelines at the command line.
Read More »

Schedule Azure DevOps Pipelines using Cron Syntax

Azure DevOps has always provided the facility of defining Scheduled pipelines using UI Editor. With the push of Sprint 137, this functionality is now moved to the Cron Syntax. (And not Cron-like Syntax :)) Not only the cron syntax is more prominent in the Software world, it also provides more granularity than the UI editor. Also, you can define multiple schedules simultaneously for a single pipelines, allowing you even more flexibility. Not to mention, you can also manage and track build schedules as part of the code. In this blog post, we’ll learn about the same.
Read More »

Print all environment variables in Azure DevOps across Microsoft Hosted Agents

While debugging the CI builds, sometimes it becomes necessary to take a peek at the values of the variables that are being passed to the environment used. It helps in understanding what is going on and why some steps are not working as desired in the build pipeline. There are different commands to check the environment variables in different types of agents, mostly based on the underlying Operating System. However, if you happen to use the Microsoft Hosted agents for your build pipelines, we can use one single line of code to print all environmental variables across all agents.
Read More »

Using Liquibase to manage and deploy changes on SQL Server

In previous post, we saw how we can install and configure Liquibase. In this blog post, we’ll see how we can leverage Liquibase to deploy changes on the Microsoft SQL Server.

Download JDBC driver for SQL Server

For this, we first need to download the JDBC driver for the SQL Server. This can be downloaded from the Microsoft using this link. The download is available in both .exe format for Windows and .tar.gz format for Mac OS X or Linux. Read More »

Include Databases in CI/CD pipeline using Liquibase

For most of the Organizations, it is almost unthinkable to work in a software project without some kind of version control. The benefits of tracking and retaining an incremental history of the code are well understood and documented. However most of the time this has been limited to the application code and not the accompanying databases. This has remain a concern due to the many complexities and cultural issues associated with how the databases operates and their various versions. However, it is not just limited to keep database schema and data changes as part of the version control. Read More »

Install Jenkins in offline mode on CentOS / RHEL

There are times when you would need to do an offline installation of the Jenkins. This may be to meet certain requirements of the workplace that you are operating in. I came across this issue some time back and internet is woefully out of articles for proper steps on this one. In this blog post, we’ll learn how to do an offline installation of Jenkins.

Install OpenJDK Java

First, we need to check what version of java is installed on the machine using:
Read More »