stages.stage tanımı
Aşamalar, ilgili işlerden oluşan bir koleksiyondır. Varsayılan olarak aşamalar sıralı olarak çalıştırılır. Her aşama, özellik aracılığıyla dependsOn
aksi belirtilmedikçe yalnızca önceki aşama tamamlandıktan sonra başlar.
stages:
- stage: string # Required as first property. ID of the stage.
displayName: string # Human-readable name for the stage.
pool: string | pool # Pool where jobs in this stage will run unless otherwise specified.
dependsOn: string | [ string ] # Any stages which must complete before this one.
condition: string # Evaluate this condition expression to determine whether to run this stage.
variables: variables | [ variable ] # Stage-specific variables.
jobs: [ job | deployment | template ] # Jobs which make up the stage.
lockBehavior: string # Behavior lock requests from this stage should exhibit in relation to other exclusive lock requests.
templateContext: # Stage related information passed from a pipeline when extending a template.
stages:
- stage: string # Required as first property. ID of the stage.
displayName: string # Human-readable name for the stage.
pool: string | pool # Pool where jobs in this stage will run unless otherwise specified.
dependsOn: string | [ string ] # Any stages which must complete before this one.
condition: string # Evaluate this condition expression to determine whether to run this stage.
variables: variables | [ variable ] # Stage-specific variables.
jobs: [ job | deployment | template ] # Jobs which make up the stage.
Bu tanıma başvuran tanımlar: aşamalar
Özellikler
stage
Dize. İlk özellik olarak gereklidir.
Aşamanın kimliği.
displayName
Dize.
Sahne için insan tarafından okunabilir bir ad.
pool
havuzuna bakın.
Aksi belirtilmedikçe bu aşamadaki işlerin çalıştırılacağı havuz.
dependsOn
dize | dize listesi.
Bundan önce tamamlanması gereken tüm aşamalar. Varsayılan olarak aşamalar ardışık olarak işlem hattında tanımlanan sırayla çalıştırılır. İşlem hattındaki önceki aşamaya bağlı olmaması gerekiyorsa bir aşama belirtin dependsOn: []
.
condition
Dize.
Bu aşamanın çalıştırılıp çalıştırılmayacağını belirlemek için bu koşul ifadesini değerlendirin.
variables
değişkenlerini seçin.
Aşamaya özgü değişkenler.
jobs
işleri seçin.
Aşamayı oluşturan işler.
lockBehavior
Dize.
Bu aşamadan gelen davranış kilidi istekleri, diğer özel kilit istekleriyle ilgili olarak gösterilmelidir. sıralı | runLatest.
templateContext
templateContext.
Şablon genişletilirken işlem hattından geçirilen aşamayla ilgili bilgiler. hakkında templateContext
daha fazla bilgi için bkz. Genişletilmiş YAML İşlem Hatları şablonları artık aşamalar, işler ve dağıtımlar için bağlam bilgileri geçirilebilir veŞablonlar - Özellikleri şablonlara geçirmek için templateContext kullanma.
Açıklamalar
hakkında templateContext
daha fazla bilgi için bkz. Genişletilmiş YAML İşlem Hatları şablonları artık aşamalar, işler ve dağıtımlar için bağlam bilgileri geçirilebilir veŞablonlar - Özellikleri şablonlara geçirmek için templateContext kullanma.
Aşamanın ne zaman çalıştırılması gerektiğini el ile denetlemek için onay denetimlerini kullanın. Bu denetimler genellikle üretim ortamlarına yapılan dağıtımları denetlemek için kullanılır.
Denetimler , kaynak sahibinin kullanabileceği bir mekanizmadır. İşlem hattındaki bir aşamanın bir kaynağı ne zaman tükettiği denetlenir. Ortam gibi bir kaynağın sahibi olarak, kaynağı kullanan bir aşamanın başlayabilmesi için gereken denetimleri tanımlayabilirsiniz.
Şu anda ortamlarda el ile onay denetimleri desteklenmektedir. Daha fazla bilgi için bkz . Onaylar.
Özel kilit
YAML işlem hatlarında, korumalı kaynaklarda aşamaların yürütülmesini denetlemek için denetimler kullanılır. Kullanabileceğiniz yaygın denetimlerden biri özel kilit denetimidir. Bu denetim işlem hattından yalnızca tek bir çalıştırmanın devamını sağlar. Birden çok çalıştırma aynı anda bir ortama dağıtım yapmaya çalıştığında, denetim tüm eski çalıştırmaları iptal eder ve en son çalıştırmanın dağıtılmasına izin verir.
İki değeri olan özelliğini kullanarak özel kullanım kilidi denetiminin lockBehavior
davranışını yapılandırabilirsiniz:
runLatest
- Yalnızca en son çalıştırma, kaynağın kilidini alır. BelirtilmezselockBehavior
bu varsayılan değerdir.sequential
- Tüm çalıştırmalar kilidi korumalı kaynağa sırayla alır.
Yayınlarınız toplu olduğunda ve önceki çalıştırmalardan gelen tüm kod değişikliklerini içerdiğinde eski çalıştırmaları iptal etmek iyi bir yaklaşımdır. Ancak, kod değişikliklerinin toplu olmadığı bazı işlem hatları vardır. özelliğini yapılandırarak lockBehavior
, tüm çalıştırmaların devam edip bir ortama sıralı olarak dağıtılmasına izin vermeyi veya eski çalıştırmaları iptal etme ve yalnızca en son çalıştırmalara izin verme önceki davranışını korumayı seçebilirsiniz. değeri sequential
, tüm çalıştırmaların kilidi korumalı kaynağa sırayla aldığı anlamına gelir. değeri runLatest
, yalnızca en son çalıştırmanın kaynağın kilidini aldığını gösterir.
veya runLatest
dağıtımlarıyla sequential
özel kilit denetimi kullanmak için şu adımları izleyin:
- Ortamda (veya başka bir korumalı kaynakta) özel kullanım kilidi denetimini etkinleştirin.
- İşlem hattının YAML dosyasında adlı
lockBehavior
yeni bir özellik belirtin. Bu işlem hattının tamamı veya belirli bir aşama için belirtilebilir:
Bir aşamada ayarlayın:
stages:
- stage: A
lockBehavior: sequential
jobs:
- job: Job
steps:
- script: Hey!
İşlem hattında ayarlayın:
lockBehavior: runLatest
stages:
- stage: A
jobs:
- job: Job
steps:
- script: Hey!
Örnekler
Bu örnek, üç aşamayı birbiri ardına çalıştırır. Orta aşama iki işi paralel olarak çalıştırır.
stages:
- stage: Build
jobs:
- job: BuildJob
steps:
- script: echo Building!
- stage: Test
jobs:
- job: TestOnWindows
steps:
- script: echo Testing on Windows!
- job: TestOnLinux
steps:
- script: echo Testing on Linux!
- stage: Deploy
jobs:
- job: Deploy
steps:
- script: echo Deploying the code!
Bu örnek iki aşamayı paralel olarak çalıştırır. Kısa olması için işler ve adımlar atlanır.
stages:
- stage: BuildWin
displayName: Build for Windows
- stage: BuildMac
displayName: Build for Mac
dependsOn: [] # by specifying an empty array, this stage doesn't depend on the stage before it
Ayrıca bkz.
Aşamalar, koşullar ve değişkenler hakkında daha fazla bilgi edinin.