Building Applications Flashcards

1
Q

What is Azure Pipelines

A

Microsoft Azure Pipelines is a cloud service that you can use to automatically build, test, and deploy your code project. You can also make it available to other users. And it works with just about any language or project type.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is continuous integration

A

Continuous integration (CI) is the process of automating the build and testing of code every time a team member commits changes to version control.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the components of an Azure Pipeline and the function for each one.

A
  1. Tasks: Steps/scripts that defines how the build, test, and deployment steps are run.
  2. Code
  3. Build agent: a piece of installable software that runs one build or deployment job at a time
  4. Artifacts: Think of an artifact as the smallest compiled unit that we need to test or deploy the app
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the differences between implementing hosted and private agents

A

With Microsoft-hosted agents, maintenance and upgrades are taken care of for you. Each time you run a pipeline, you get a fresh virtual machine. The virtual machine is discarded after one use.

An agent that you set up and manage on your own to run build and deployment jobs is a self-hosted agent. You can use self-hosted agents in Azure Pipelines. Self-hosted agents give you more control and let you install any software you need for your builds and deployments.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are Agent pools

A

Instead of managing each agent individually, you can organize agents into agent pools. An agent pool defines the sharing boundary for all agents in that pool. In Azure Pipelines, agent pools are scoped to the Azure DevOps organization so you can share an agent pool across projects.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are Service endpoints?

A

Service endpoints are a way for Azure DevOps to connect to external systems or services

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the two ways to create tasks for a build pipeline

A

Visual Designer

A YAML file

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the Pipeline as code

A

It’s basically defining your build and release pipeline as code in a file. It can be version controlled right alongside your source code.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What Azure pipeline task can you use if there’s no build-in task type that does something you need, ie node-sass

A

CmdLine@2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What’s the Azure pipeline task for dotnet restore, dotnet build, and dotnet publish?

A

DotNetCoreCLI@2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

$(Build.DefinitionName)

A

A built-in variable that specifies the name of the build pipeline. For example, “SpaceGame-Web-CI.”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

$(Build.BuildId)

A

A built-in variable that is a numeric identifier for the completed build, like 115.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

$(Build.BuildNumber)

A

A built-in variable is the name of the completed build. You can configure the format, but by default the build number includes the current date followed by the build number for that day. An example build number is “20190329.1.”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the main parts of a pipeline yaml file?

A
  1. trigger
  2. pool
  3. variables
  4. steps and tasks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Create a pipeline called buildConfiguration that has a value of release and refer to it as well

A

variables:
buildConfiguration: ‘Release’

$(buildConfiguration)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Pipeline Templates

A

A template enables you to define common build tasks one time and reuse those tasks multiple times.

17
Q

Talk through using a template to build a release and debug pipeline

A
  1. Create a template with parameters: buildConfiguration.
  2. Add the steps needed to build in the template
  3. Call the template (- template: templates/build.yaml) with the right parameters for the buildConfiguration twice.