jobs.deployment.strategy.runOnce definíció
A runOnce üzembehelyezési stratégiája úgy vezet be módosításokat, hogy mindegyik lépést egyszer végrehajtja.
runOnce:
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.
A definícióra hivatkozó definíciók: jobs.deployment.strategy
Tulajdonságok
preDeploy
preDeployHook.
A runOnce üzembehelyezési stratégia előzetes üzembehelyezési horogja.
deploy
deployHook.
Hook üzembe helyezése a runOnce üzembehelyezési stratégiához.
routeTraffic
routeTrafficHook.
A runOnce üzembehelyezési stratégiához tartozó forgalomhook irányítása.
postRouteTraffic
postRouteTrafficHook.
A runOnce üzembehelyezési stratégia útvonal-forgalmi horogának közzététele.
on
onSuccessOrFailureHook.
A runOnce üzembehelyezési stratégiájának sikeres vagy sikertelen lefutása esetén.
Megjegyzések
runOnce
A a legegyszerűbb üzembehelyezési stratégia, amelyben az összes életciklushook , azaz preDeploy
deploy
, routeTraffic
és postRouteTraffic
, egyszer lesz végrehajtva. Ezután vagy on:
success
on:
failure
végrehajtja a parancsot.
Az életciklus-horgok leírása
preDeploy
: Az erőforrások inicializálására szolgáló lépések futtatására szolgál az alkalmazás üzembe helyezése előtt.
deploy
: Az alkalmazást üzembe helyező lépések futtatására szolgál. Az összetevő-feladat letöltése csak az deploy
üzembehelyezési feladatok horogjában lesz automatikusan beszúrva. Az összetevők letöltésének leállításához használja - download: none
vagy válassza ki a letölteni kívánt összetevőket a Folyamatösszetevő letöltése feladat megadásával.
routeTraffic
: A frissített verzió forgalmát kiszolgáló lépések futtatására szolgál.
postRouteTraffic
: A forgalom irányítása után futtatja a lépéseket. Ezek a feladatok általában meghatározott időközönként figyelik a frissített verzió állapotát.
on: failure
vagy on: success
: A visszaállítási műveletek vagy a törlés lépéseinek futtatására szolgál.
Példák
Az alábbi YAML-kódrészlet az üzembehelyezési feladat egyszerű használatát mutatja be az runOnce
üzembehelyezési stratégia használatával. A példa egy kivételi lépést is tartalmaz.
jobs:
# Track deployments on the environment.
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: ubuntu-latest
# Creates an environment if it doesn't exist.
environment: 'smarthotel-dev'
strategy:
runOnce:
deploy:
steps:
- checkout: self
- script: echo my first deployment
A feladat minden futtatásakor a rendszer rögzíti smarthotel-dev
a környezet üzembehelyezési előzményeit.
Megjegyzés
- Üres erőforrásokkal rendelkező környezetet is létrehozhat, amelyet absztrakt rendszerhéjként használhat az üzembe helyezési előzmények rögzítéséhez, ahogy az előző példában is látható.
A következő példa bemutatja, hogyan hivatkozhat egy folyamat egy környezetre és egy üzembe helyezési feladat céljára használandó erőforrásra.
jobs:
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: ubuntu-latest
# Records deployment against bookings resource - Kubernetes namespace.
environment: 'smarthotel-dev.bookings'
strategy:
runOnce:
deploy:
steps:
# No need to explicitly pass the connection details.
- task: KubernetesManifest@0
displayName: Deploy to Kubernetes cluster
inputs:
action: deploy
namespace: $(k8sNamespace)
manifests: |
$(System.ArtifactsDirectory)/manifests/*
imagePullSecrets: |
$(imagePullSecret)
containers: |
$(containerRegistry)/$(imageRepository):$(tag)
Ez a megközelítés a következő előnyökkel jár:
- A környezet egy adott erőforrásán rögzíti az üzembehelyezési előzményeket, nem pedig a környezet összes erőforrásának előzményeit.
- Az üzembehelyezési feladat lépései automatikusan öröklik az erőforrás kapcsolati adatait (ebben az esetben egy Kubernetes-névteret,
smarthotel-dev.bookings
), mivel az üzembehelyezési feladat a környezethez van kapcsolva. Ez akkor hasznos, ha a feladat több lépéséhez is ugyanazt a kapcsolatrészletet állítja be.
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: