« Azure pipeline » : différence entre les versions

De Banane Atomic
Aller à la navigationAller à la recherche
Aucun résumé des modifications
Ligne 11 : Ligne 11 :
| Artifact || item from a git repository or a build pipeline
| Artifact || item from a git repository or a build pipeline
|-
|-
| Stages || steps to deploy and validate a software
| Stages || steps to deploy and validate a software<br>a stage contains jobs
|-
|-
| Tasks || subparts of a stage
| Job || subparts of a stage, contains task to execute<br>a job runs on a agent or can be manually ran
|-
|-
| Job || can execute a set of tasks.<br>a job runs on a agent or can be manually ran.
| Tasks || subparts of a job, those are the concreate action to execute
|-
|-
| Release pipeline definition || steps to execute to get the artefacts, install and validate the software.<br>template to run a release.
| Release pipeline definition || steps to execute to get the artefacts, install and validate the software<br>template to run a release
|-
|-
| Release agent || the one who execute the tasks defined in the release pipeline definition.<br>it is the same agent as the one used for the build.
| Release agent || the one who execute the tasks defined in the release pipeline definition<br>it is the same agent as the one used for the build
|}
|}



Version du 26 juin 2020 à 16:46

Links

Definitions

Term Definition
Artifact item from a git repository or a build pipeline
Stages steps to deploy and validate a software
a stage contains jobs
Job subparts of a stage, contains task to execute
a job runs on a agent or can be manually ran
Tasks subparts of a job, those are the concreate action to execute
Release pipeline definition steps to execute to get the artefacts, install and validate the software
template to run a release
Release agent the one who execute the tasks defined in the release pipeline definition
it is the same agent as the one used for the build

Release variables

YAML

Links

Exemple

Yaml.svg
# do not trigger the pipeline on events
trigger: none

parameters:
- name: myStepList
  type: stepList
  default:
    - bash: echo "We are on $(MyVar)"

stages:
- stage: CI
  displayName: CI stage
  # remove implicite depency on the previous stage, the stages will run in parallel
  dependsOn: []
  jobs:
  - job: ci_job
    variables:
      MyVar: 'CI'
    steps:
    - bash: echo "We are on CI"
    - task: PowerShell@2
      displayName: 'PowerShell Script'
      inputs:
        targetType: filePath
        filePath: './$(System.DefaultWorkingDirectory)/Folder/Script.ps1'
        arguments: '-Arg1 "$(MyVar)"'
      # disable the task
      enabled: false

- stage: DEMO
  displayName: DEMO stage
  dependsOn: []
  jobs:
  # use deployment job with environment and strategy to use the approval mechanism
  - deployment: demo_job
    environment: DEMO
    variables:
      MyVar: 'DEMO'
    strategy:
      runOnce:
        deploy:
          steps: ${{ parameters.myStepList }}

Steps of a release

  1. Build the software with a pipeline
    • validate product quality (unit tests, SonarCloud)
  2. Deploy the software
    • validate runtime stability (compare telemetry with previous version)
  3. Release the feature
    • validate feature usage