0
votes

I have a Release pipeline with 3 environments. I have a single build pipeline(_TestCM) that builds different branches(develop,master,release). All branches builds are CI builds. Release pipeline

I applied artifact filter at each environment. Artifact filter

I want to deploy

Develop branch --> Environment 1 at 11:30 AM, 3 PM daily
Master branch --> Environment 2 at 5 AM, 7 PM daily
Release branch --> Environment 3 at 6 AM, 2 PM daily.

How can I configure above scheduling requirement in a single Release pipeline? Creating multiple release pipelines with single environment in each pipeline is not an option as we have of 100 of Release pipelines. Release pipeline need to trigger at scheduled time only if there any changes from that branch.

If it is not possible in a single Release pipeline, what are options we can accomplish this task considering 100 of Release pipelines?

1

1 Answers

0
votes

Based on your requirement, I am afraid that it is not possible in a single release pipeline.

Release pipeline need to trigger at scheduled time only if there any changes from that branch.

For this requirement, there is an Option in Release Pipeline( Only schedule releases if the source or pipeline has changed).

enter image description here

According to your deploy process, you need to determine the environment via the branches. So you need to add multiple artifacts for multiple branches.

In this case, this option will not meet your needs. It treats all atifacts as a whole. When one of the branches changes, the release will be triggered by the schedule and all artifacts of different branches will be deployed at the same time.

You can achieve your needs by creating multiple pipelines.

The following are the settings you can refer to:

When you add artifacts, you can select the branch and enable the option:Only schedule releases if the source or pipeline has changed.

For example:

enter image description here

In environemnt, you can directly set schedule trigger without other settings.

enter image description here

You need to create the corresponding number of release pipelines according to your branches.