configuring builds

Build fundamentals

"A build system is a system used to automatically produce all the artifacts required to successfully deploy, test and run our production software". - Infrastructure as code

Continuous integration - " is the practice of merging all developer working copies to a shared mainline several times a day"

   A continuous integration build is the fact we build the integrated changes of our mainline by means of a build server after each commit

Pipeline - a template of the steps used to run our build over and over again - it defines the sequence of the tasks and the variables to be passed between tasks

Tasks - e.g. Compile the source code - take the input, what sources to build, where to find them & produce a result

Agents - Executes the task for us

Creating a build

Select a template; select a build source (Git) & define as ci; define the build tasks; select the agent (pool) that will do the work.

Build tasks - multiple phases with demands

 

Build security

Agents are placed in pools (a securable unit - grant access to use as well as add & remove agents) (Create a personal access token (PAT)

Queues - also a securable unit

 

Enable ci through the triggers tab

 

 

Build variables - custom; built-in; secrets

Triggers - ci; branch filters; pull request; gated check-in

Options - properties; demands; build number format; work-items; Oauth token passed in as a variable (system.access token) or defined as an envvar used by scripts that need acces

retention policy

 

Tasks & the market place

default tasks

vsts market place  - 

build your own