Azure DevOps Pipelines

Azure DevOps Pipelines Guidelines for Alliance Business Suite Engineering

Overview

Azure DevOps provides an end-to-end DevOps toolchain for developing and deploying software. In the context of Alliance Business Suite (ABS), we heavily utilize Azure DevOps Pipelines for our CI/CD (Continuous Integration/Continuous Deployment) operations. This guide aims to walk you through the basics of setting up and configuring pipelines tailored to the ABS ecosystem.

Table of Contents

Introduction

For those new to Azure DevOps, Pipelines is a cloud service that you can use to automatically build and test your code project and make it available to other users.

Getting Started

  1. Navigate to ABS Azure DevOps Project: Access our ABS Azure DevOps project by following this link.

  2. Go to Pipelines: On the left sidebar, click on Pipelines.

Access to Pipeline ID 19

To directly navigate to the specific pipeline with ID 19, you can use this link.

Creating a New Pipeline

  1. New Pipeline: Click on New Pipeline in the Pipelines section.
  2. Source Control: Choose the repository where your code resides.
  3. Configuration: Select a pipeline template or configure it using YAML.

Understanding YAML

YAML is a human-readable data serialization format. In Azure Pipelines, YAML is used to define the pipeline steps.

trigger:
- master

pool:
  vmImage: 'ubuntu-latest'

steps:
- script: echo Hello, world!

Variables

You can define variables to make your pipelines easier to maintain and understand.

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

Stages, Jobs, and Steps

Pipelines are organized into stages, jobs, and steps.

  • Stages: A division within a pipeline, containing one or more jobs.
  • Jobs: A series of steps run by an agent.
  • Steps: Individual tasks that run commands, scripts, or actions.

Triggers

Pipelines can be triggered manually, through code commits, or via scheduled runs.

trigger:
- master

Branch Policies

To protect important branches, consider applying branch policies like requiring a pull request review before merging.

Artifact Staging

After the build process, you'll usually want to archive your build output (artifacts) for deployment. Azure Pipelines allows easy staging of these artifacts.

Best Practices

  • Reuse YAML templates for common build configurations.
  • Make use of caching to speed up your pipelines.
  • Limit the scope of secrets and environment variables to only the stages and jobs that require them.

Additional Resources

For more specific queries and deeper understanding, feel free to reach out on our Engineering Team's Teams Channel.