CI and deployment Flashcards

1
Q

continuous delivery

A

deploys built release to test and staging environments but does not release to production with out manual intervention/approval

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

Continuous deployment

A

releases to production after automatic testing has been completed in dev/test and staging. Only a failed test will stop the release going to prod

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

Continuous integration

A

automatic build of an application after a commit, merge or Pull request. Should include code quality tests

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

Static analysis

A

check non-running code for bugs, vulnerabilities and knows bad programming patterns/smells

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

Examples of static analysis tools

A

Sonarqube
white source bolt
PMD

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

White source bolt

A

provides license and vulnerabilities details on 3-party packages in your project

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

Dynamic analysis

A

ran against live deployed code. commonly used to run pentests against know vaubabilies like SQL injection

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

Examples of Dynamic analysis tools

A

owsap ZED ATTACK PROXY (zap)

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

What should unit tests be built for?

A

testing a single piece or a core function in isoloation.

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

What test data should be used in unit tests

A

mock data from a file

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

what data should be used in intergration tests

A

data hosted on the same DB system as the production enviormemtq

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

Example of a good unit test

A
  • short and run quickly
  • tests code critical to the application
  • needs to be repeatable and return the same result everytime when everything is in a working state
  • should not test external libaires, this should be done in intergration tests
  • should not be done on combined functions and methods
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

When should you make a package

A

when code can be reused across your projects and the code does not need to be changed oftern

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

what is a packaged

A

ready to run compiled or uncompiled code depeneding on the langauge. Stored in compressed zip files that have a different exnteions based on the langauge/frameworkv

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

Symantec versioning

A

in x.x.x format. major breaking change. feature change that is backwards compatible. hotfix or patch

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

Artifacts Feeds

A

can contained company created packages or used to monitor and maintain 3rd party packages being used if upstream sources has been enabled

17
Q

Common production deployment types

A

blue-green
canary/ring
rolling

18
Q

blue Green

A

release is deployed to green eniovrment then traffic is shifted fromm blue to green using azure taffic manage or appliaction gateway. provides a quick roll back option

19
Q

canary/ring

A

new features are provided to beta users so they can provide feedback

20
Q

rolling

A

release is deployed to 1 node/region at a time

21
Q

Where should secrets be stored

A

serects should not be stored on source control. Keyvault, secure varribles in pipelines and user profiles provided a plae to store serects with less risk

22
Q

Code Coverage

A

Shows % of code that is being tested via unit tests

23
Q

Code coverage fomrats suported by pipelines

A

coverlet, open cover, dotcover, visual studio, Cobertura and JaCoCo (JAVA)

24
Q

extension or task for adding code coverage in pipeline web interface

A

ReportGenerator

25
Q

difference between a gate and check

A

gates are in classic editor and checks are in used in yaml pipelines but a defined on the enivorment