Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Yapıtlar üreten bir Azure pipeline'ınız varsa işlem hattınız bir işlem hattı kaynağı tanımlayarak yapıtları kullanabilir. Azure DevOps Server 2020 ve üzeri sürümlerde, işlem hattı kaynağı kullanarak işlem hattı tamamlama tetikleyicilerini de etkinleştirebilirsiniz.
pipelines:
- pipeline: string # Required as first property. ID of the pipeline resource.
project: string # Project for the source; defaults to current project.
source: string # Name of the pipeline that produces the artifact.
version: string # The pipeline run number to pick the artifact, defaults to latest pipeline successful across all stages; used only for manual or scheduled triggers.
branch: string # Branch to pick the artifact. Optional; defaults to all branches, used only for manual or scheduled triggers.
tags: [ string ] # List of tags required on the pipeline to pickup default artifacts. Optional; used only for manual or scheduled triggers.
trigger: # Specify none to disable, true to include all branches, or use the full syntax as described in the following examples.
enabled: boolean # Whether the trigger is enabled; defaults to true.
branches: branches # Branches to include or exclude for triggering a run.
stages: [ string ] # List of stages that when matched will trigger the pipeline.
tags: [ string ] # List of tags that when matched will trigger the pipeline.
pipelines:
- pipeline: string # Required as first property. ID of the pipeline resource.
project: string # Project for the source; defaults to current project.
source: string # Name of the pipeline that produces the artifact.
version: string # The pipeline run number to pick the artifact, defaults to latest pipeline successful across all stages; used only for manual or scheduled triggers.
branch: string # Branch to pick the artifact. Optional; defaults to all branches, used only for manual or scheduled triggers.
tags: [ string ] # List of tags required on the pipeline to pickup default artifacts. Optional; used only for manual or scheduled triggers.
trigger: # Specify none to disable, true to include all branches, or use the full syntax as described in the following examples.
enabled: boolean # Whether the trigger is enabled; defaults to true.
branches: branches # Branches to include or exclude for triggering a run.
Özellikler
pipeline
dize. İlk özellik olarak gereklidir.
İşlem hattı kaynağının kimliği. Kabul edilebilir değerler: [-_A-Za-z0-9]*.
project
dize.
Kaynak için Project; varsayılan olarak geçerli projeyi kullanır.
source
dize.
Yapıtı üreten işlem hattının adı. İşlem hattı bir klasörde yer alıyorsa, baştaki \
dahil olmak üzere klasör adını ekleyin, örneğin \security pipelines\security-lib-ci
. Bu özellik büyük/küçük harfe duyarlı değildir ve ad boşluk içeriyorsa tırnak işareti gerekmez. Aynı ada sahip birden çok işlem hattı varsa klasör yolu belirtilmelidir.
version
dize.
yapıtı seçmek için işlem hattı çalıştırma numarasını , varsayılan olarak tüm aşamalarda başarılı olan en son işlem hattına sahiptir; yalnızca el ile veya zamanlanmış tetikleyiciler için kullanılır.
branch
dize.
Yapıtı seçmek için Dal . Opsiyonel; yalnızca el ile veya zamanlanmış tetikleyiciler için kullanılan tüm dalları varsayılan olarak kullanır.
dize listesini tags
.
varsayılan yapıtları almak için işlem hattında gerekli etiketlerin listesini . Opsiyonel; yalnızca el ile veya zamanlanmış tetikleyiciler için kullanılır.
resources.pipelines.pipeline.triggertrigger
.
Devre dışı bırakılacak yok, tüm dalları eklemek için true belirtin veya aşağıdaki örneklerde açıklandığı gibi tam söz dizimini kullanın.
Açıklamalar
Uyarı
pipeline:
işlem hattı kaynağının adını belirtir. İşlem hattı kaynak değişkenlerini kullanma veya yapıtları indirme gibi işlem hattının diğer bölümlerinden işlem hattı kaynağına başvururken burada tanımlanan etiketi kullanın.
İşlem hattı kaynak tetikleyicisindeki stages
ve tags
hakkında daha fazla bilgi için bkz. işlem hattı tamamlama tetikleyicilerini.
İşlem hattı kaynak tetikleyicileri hakkında daha fazla bilgi için bkz. işlem hattı tamamlama tetikleyicilerini.
İşlem hattı kaynağı tetikleyici söz dizimi
Uyarı
İşlem hattı tamamlama tetikleyicileri, başka bir işlem hattının tamamlanması sonucunda işlem hattının çalıştırılıp çalıştırılmayacağını belirlerken yaml işlem hattının dal filtrelerinin hangi dal sürümünün değerlendirileceğini belirlemek üzere el ile ve zamanlanmış derlemeler ayarı için
İşlem hattı kaynağında tetikleyicileri tanımlamanın birkaç yolu vardır. Başvuruda bulunan işlem hattının herhangi bir çalıştırması tamamlandığında bir çalıştırma tetikleme için trigger: true
kullanın.
resources:
pipelines:
- pipeline: source-pipeline
source: TriggeringPipeline
trigger: true
İşlem hattı kaynak tetikleyicisini devre dışı bırakmak için none
değerini belirtin.
resources:
pipelines:
- pipeline: source-pipeline
source: TriggeringPipeline
trigger: none
Dal filtrelerini yapılandırmak için tam söz dizimini kullanın. Dal filtreleri, dahil edilecek dalların listesi veya dahil edilecek dalların listesi olarak belirtilebilir ve dışlanacak dalların listesiyle birleştirilebilir.
Eklenecek ve dışlanan dalların listesini belirtmek için aşağıdaki trigger
söz dizimini kullanın.
resources:
pipelines:
- pipeline: source-pipeline
source: TriggeringPipeline
trigger:
branches:
include:
- main
- develop
- features/*
exclude:
- features/experimental/*
Dahil etmek istediğiniz dalların listesini dışlama olmadan belirtmek için, exclude
değerini atleyin veya aşağıdaki söz dizimini kullanarak doğrudan izleyen dalların listesini branches
.
resources:
pipelines:
- pipeline: source-pipeline
source: TriggeringPipeline
trigger:
branches:
- main
- develop
Aşamalara veya etiketlere göre filtrelemek için aşağıdaki trigger
söz dizimini kullanın.
resources:
pipelines:
- pipeline: source-pipeline
source: TriggeringPipeline
trigger:
branches: # Branches to include
tags: # List of tags that when matched will trigger the pipeline.
- release25
stages: # List of stages that when complete will trigger the pipeline.
- build
Daha fazla bilgi için bkz. İşlem hattı tamamlama tetikleyicileri.
Önemli
Bir kaynak tetikleyicisi tanımladığınızda, işlem hattı kaynağı geçerli işlem hattıyla aynı depodan geliyorsa tetikleyici, olayın oluşturulduğu aynı dalı ve işlemeyi izler. Ancak işlem hattı kaynağı farklı bir depodan geliyorsa, geçerli işlem hattı el ile ve zamanlanmış derlemeler ayarı için varsayılan dal tarafından belirtilen dalda tetiklenmiş olur. Daha fazla bilgi için bkz. İşlem hattı tamamlama tetikleyicileri için dal konuları.
Önceden tanımlanmış değişkenler olarak işlem hattı kaynak meta verileri
Her çalıştırmada, bir işlem hattı kaynağının meta verileri aşağıdaki önceden tanımlanmış değişkenler olarak tüm işler tarafından kullanılabilir. Bu değişkenler çalışma zamanında işlem hattınızda kullanılabilir ve bu nedenle işlem hattı derleme zamanında değerlendirilen şablon ifadelerinde kullanılamaz.
resources.pipeline.<Alias>.projectName
resources.pipeline.<Alias>.projectID
resources.pipeline.<Alias>.pipelineName
resources.pipeline.<Alias>.pipelineID
resources.pipeline.<Alias>.runName
resources.pipeline.<Alias>.runID
resources.pipeline.<Alias>.runURI
resources.pipeline.<Alias>.sourceBranch
resources.pipeline.<Alias>.sourceCommit
resources.pipeline.<Alias>.sourceProvider
resources.pipeline.<Alias>.requestedFor
resources.pipeline.<Alias>.requestedForID
Önemli
projectName
, işlem hattı kaynağının project
değeri belirtilmemişse değişkenlerde mevcut değildir.
project
özelliği, aynı projedeki bir işlem hattına başvuran işlem hattı kaynakları için isteğe bağlıdır, ancak istenirse belirtilebilir.
<Alias>
değerini işlem hattı kaynağının kimliğiyle değiştirin. Aşağıdaki işlem hattı kaynağı için runID
erişecek değişken resources.pipeline.source-pipeline.runID
.
resources:
pipelines:
- pipeline: source-pipeline
source: TriggeringPipeline
İşlem hattı, işlem hattı kaynaklarından biri tarafından tetiklendiğinde, önceki listedeki değişkenlere ek olarak aşağıdaki değişkenler ayarlanır.
Değişken | Değer |
---|---|
Build.Reason |
ResourceTrigger |
Resources.TriggeringAlias |
Önceki örnekteki source-pipeline gibi işlem hattı kaynağının adı. |
Resources.TriggeringCategory |
pipeline |
Aşağıdaki örnekte iki işlem hattı kaynağı vardır.
resources:
pipelines:
- pipeline: source-pipeline
source: PipelineTriggerSource
project: FabrikamFiber
trigger: true
- pipeline: other-project-pipeline
source: PipelineTriggerFromOtherProject
project: FabrikamRepo
trigger: true
trigger: none # Only trigger with pipeline resource trigger
pool:
vmImage: ubuntu-latest
- bash: echo $(resources.pipeline.source-pipeline.projectName)
- bash: printenv | sort
Bu işlem hattı çalıştırıldığında, ilk bash
görev projectName
olan source-pipeline
adlı işlem hattı kaynağının FabrikamFiber
çıkışını alır.
İkinci bash
görev, bu bölümde açıklanan işlem hattı kaynak değişkenleri de dahil olmak üzere, görev için kullanılabilir olan tüm ortam değişkenlerini oluşturur. Ortam değişkenlerini listeleme genellikle bir üretim işlem hattında yapılmaz, ancak sorun giderme için yararlı olabilir. Bu örnekte iki işlem hattı kaynağı vardır ve çıktı aşağıdaki iki satırı içerir.
RESOURCES_PIPELINE_OTHER-PROJECT-PIPELINE_PROJECTNAME=FabrikamRepo
RESOURCES_PIPELINE_SOURCE-PIPELINE_PROJECTNAME=FabrikamFiber
Uyarı
Sistem ve kullanıcı tanımlı değişkenler, platformunuz için ortam değişkenleri olarak eklenmiştir. Değişkenler ortam değişkenlerine dönüştüğünde, değişken adları büyük harflerle yazılır ve noktalar alt çizgilere dönüşür. Örneğin, değişken adı any.variable
ANY_VARIABLE
olur.
Değişkenleri ve değişken söz dizimlerini kullanma hakkında daha fazla bilgi için bkz. değişken söz dizimlerini anlama Koşullarıbelirtme ve İfadeler.
bir download
görevi kullanarak işlem hattı kaynağındaki yapıtları kullanabilirsiniz. bkz. steps.download anahtar sözcüğü.
Örnekler
resources:
pipelines:
- pipeline: MyAppA
source: MyCIPipelineA
- pipeline: MyAppB
source: MyCIPipelineB
trigger: true
- pipeline: MyAppC
project: DevOpsProject
source: MyCIPipelineC
branch: releases/M159
version: 20190718.2
trigger:
branches:
include:
- main
- releases/*
exclude:
- users/*