jobs.deployment.strategy definíció

Az üzembehelyezési stratégia lehetővé teszi a frissítés kézbesítésének konfigurálását.

A definícióra hivatkozó definíciók: jobs.deployment

Megvalósítások

Implementálás Description
stratégia: runOnce Futtassa az egyszeri üzembehelyezési stratégiát.
stratégia: gördülő Működés közbeni üzembe helyezési stratégia.
stratégia: kanári Kanári-telepítési stratégia.

Megjegyzések

Alkalmazásfrissítések üzembe helyezésekor fontos, hogy a frissítés kézbesítéséhez használt technika a következő lesz:

  • Inicializálás engedélyezése.
  • Telepítse a frissítést.
  • A forgalom átirányítása a frissített verzióra.
  • Tesztelje a frissített verziót az útválasztási forgalom után.
  • Hiba esetén futtassa a lépéseket az utolsó ismert jó verzióra való visszaállításhoz.

Ezt életciklus-horgok használatával érjük el, amelyek az üzembe helyezés során lépéseket futtathatnak. Az életciklus-horgok mindegyike ügynökfeladatként vagy kiszolgálói feladatként (vagy tárolóként vagy érvényesítési feladatként) oldható fel a készlet attribútumától függően. Alapértelmezés szerint az életciklus-horgok öröklik az üzembe helyezési feladat által megadott készletet.

Az üzembehelyezési feladatok a következőt használják: $(Pipeline.Workspace) system variable.

Ha saját üzemeltetésű ügynököket használ, a munkaterület tiszta beállításaival megtisztíthatja az üzembehelyezési munkaterületet.

  jobs:
  - deployment: deploy
    pool:
      vmImage: ubuntu-latest
      workspace:
        clean: all
    environment: staging

stratégia: runOnce

A RunOnce üzembehelyezési stratégiája úgy vezet be módosításokat, hogy mindegyik lépését egyszer végrehajtja.

strategy:
  runOnce: # RunOnce Deployment strategy.
    preDeploy: # Pre deploy hook for runOnce deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where pre deploy steps will run.
    deploy: # Deploy hook for runOnce deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where deploy steps will run.
    routeTraffic: # Route traffic hook for runOnce deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where route traffic steps will run.
    postRouteTraffic: # Post route traffic hook for runOnce deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where post route traffic steps will run.
    on: # On success or failure hook for runOnce deployment strategy.
      failure: # Runs on failure of any step.
        steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
        pool: string | pool # Pool where post on failure steps will run.
      success: # Runs on success of all of the steps.
        steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
        pool: string | pool # Pool where on success steps will run.

Tulajdonságok

runOncejobs.deployment.strategy.runOnce.
RunOnce üzembehelyezési stratégia.

Megjegyzések

runOnce a legegyszerűbb üzembehelyezési stratégia, amelyben az összes életciklus-horog, nevezetesen preDeploydeploya , routeTrafficés postRouteTraffica végrehajtása egyszer történik meg. Ezután vagy on: successon: failure végrehajtja a parancsot.

stratégia: gördülő

A működés közbeni üzemelő példányok az alkalmazás előző verziójának példányait az alkalmazás új verziójának példányaira cserélik az egyes iterációkban rögzített virtuális gépeken (gördülő készleten).

strategy:
  rolling: # Rolling Deployment strategy.
    maxParallel: string # Maximum number of jobs running in parallel.
    preDeploy: # Pre deploy hook for rolling deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where pre deploy steps will run.
    deploy: # Deploy hook for rolling deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where deploy steps will run.
    routeTraffic: # Route traffic hook for rolling deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where route traffic steps will run.
    postRouteTraffic: # Post route traffic hook for rolling deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where post route traffic steps will run.
    on: # On success or failure hook for rolling deployment strategy.
      failure: # Runs on failure of any step.
        steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
        pool: string | pool # Pool where post on failure steps will run.
      success: # Runs on success of all of the steps.
        steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
        pool: string | pool # Pool where on success steps will run.

Tulajdonságok

rollingjobs.deployment.strategy.rolling.
Gördülő üzembe helyezési stratégia.

stratégia: kanári

A Canary üzembehelyezési stratégiája módosításokat hajt végre a kiszolgálók egy kis részhalmazán.

strategy:
  canary: # Canary Deployment strategy.
    increments: [ string ] # Maximum batch size for deployment.
    preDeploy: # Pre deploy hook for canary deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where pre deploy steps will run.
    deploy: # Deploy hook for canary deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where deploy steps will run.
    routeTraffic: # Route traffic hook for canary deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where route traffic steps will run.
    postRouteTraffic: # Post route traffic hook for canary deployment strategy.
      steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
      pool: string | pool # Pool where post route traffic steps will run.
    on: # On success or failure hook for canary deployment strategy.
      failure: # Runs on failure of any step.
        steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
        pool: string | pool # Pool where post on failure steps will run.
      success: # Runs on success of all of the steps.
        steps: [ task | script | powershell | pwsh | bash | checkout | download | downloadBuild | getPackage | publish | template | reviewApp ] # A list of steps to run.
        pool: string | pool # Pool where on success steps will run.

Tulajdonságok

canaryjobs.deployment.strategy.canary.
Kanári-telepítési stratégia.

Megjegyzések

A Canary üzembehelyezési stratégia egy fejlett üzembehelyezési stratégia, amely segít csökkenteni az alkalmazások új verzióinak bevezetésében jelentkező kockázatokat. Ezzel a stratégiával először a kiszolgálók egy kis részhalmazára helyezheti el a módosításokat. Az új verzióba vetett nagyobb bizalommal az infrastruktúra több kiszolgálójára is kiadhatja, és nagyobb forgalmat irányíthat hozzá.

Lásd még