İşlem hatları için zamanlamaları yapılandırma
Not
Microsoft Team Foundation Server (TFS) 2018 ve önceki sürümlerde, derleme ve yayın işlem hatlarıtanımlarolarak adlandırılır, çalışmalaraderlemelerdenir, hizmet bağlantılarınahizmet uç noktalarıdenir, aşamalarortamlarolarak adlandırılır ve işleraşamalarolarak adlandırılır.
Azure Pipelines, ardışık düzenin nasıl başlatıldığını yapılandırmak için çeşitli tetikleyici türleri sağlar.
- Zamanlanan Tetikleyiciler, işlem hattınızı gecelik bir derleme gibi bir zamanlamaya göre başlatır. Bu makale, işlem hatlarınızı bir zamanlamaya göre çalıştırmak için zamanlanmış Tetikleyicileri kullanma hakkında rehberlik sağlar.
- Olay tabanlı tetikleyiciler, bir çekme isteği oluşturma veya bir dala iletme gibi olaylara yanıt olarak işlem hattınızı başlatır. Olay tabanlı Tetikleyicileri kullanma hakkında daha fazla bilgi için bkz. Azure Pipelines Tetikleyiciler.
Zamanlanan ve olay tabanlı Tetikleyicileri işlem hatlarınız içinde birleştirebilirsiniz; Örneğin, her gönderim yapıldığında (CI tetikleyicisi), bir çekme isteği yapıldığında (PR tetikleyicisi) ve gecelik bir derleme (planlı tetikleyici) için derlemeyi doğrulayabilirsiniz. İşlem hattınızı yalnızca bir zamanlamaya göre derlemek ve olay tabanlı tetikleyicilere yanıt vermek istiyorsanız, işlem hattınızda başka bir tetikleyici etkinleştirilmemiş olduğundan emin olun. örneğin, bir GitHub deposundaki yaml işlem hatları, varsayılan olarak etkinleştirilen cı tetikleyicilerine ve PR tetikleyicilerine sahiptir. varsayılan tetikleyicileri devre dışı bırakma hakkında bilgi için bkz. Azure Pipelines tetikleyicileri ve depo türünü içeren bölüme gidin.
Zamanlanmış tetikleyiciler
Önemli
İşlem hattı ayarları kullanıcı arabirimi kullanılarak tanımlanan zamanlanmış Tetikleyiciler, YAML zamanlanan tetikleyicilere göre önceliklidir.
YAML işlem hattınızda hem YAML zamanlanmış Tetikleyiciler hem de UI tanımlı zamanlanmış Tetikleyiciler varsa, yalnızca UI tanımlı zamanlanmış Tetikleyiciler çalıştırılır. YAML işlem hattınızda YAML tanımlı zamanlanmış Tetikleyicileri çalıştırmak için, işlem hattı ayarları Kullanıcı arabiriminde tanımlanan zamanlanmış Tetikleyicileri kaldırmanız gerekir. Tüm UI zamanlanmış Tetikleyicileri kaldırıldıktan sonra, YAML zamanlanmış tetikleyicilerinin değerlendirilmeye başlaması için bir gönderme yapılmalıdır.
UI zamanlanmış tetikleyicilerini bir YAML işlem hattından silmek için bkz. UI ayarları YAML zamanlanmış tetikleyicilerini geçersiz kılar.
Zamanlanmış Tetikleyiciler, cron söz dizimikullanılarak tanımlanan bir zamanlamaya göre çalışacak bir işlem hattı yapılandırır.
schedules:
- cron: string # cron syntax defining a schedule
displayName: string # friendly name given to a specific schedule
branches:
include: [ string ] # which branches the schedule applies to
exclude: [ string ] # which branches to exclude from the schedule
always: boolean # whether to always run the pipeline or only if there have been source code changes since the last successful scheduled run. The default is false.
YAML 'de zamanlanmış işlem hatları aşağıdaki kısıtlamalara sahiptir.
- Cron zamanlamalarının saat dilimi UTC 'dir.
excludeİçin yan tümcesi olmadan bir yan tümce belirtirsenizincludebranches,*includeyan tümcesinde belirtmeye eşdeğerdir.- Zamanlamaları belirtirken işlem hattı değişkenlerini kullanamazsınız.
- YAML dosyanızda şablonlarkullanıyorsanız, zamanlamaların şablon dosyalarında değil, ana YAML dosyasında belirtilmesi gerekir.
Zamanlanmış Tetikleyiciler için dal konuları
Zamanlanan Tetikleyiciler, aşağıdaki olaylar gerçekleştiğinde bir dal için değerlendirilir.
- İşlem hattı oluşturulur.
- Bir işlem hattının YAML dosyası, bir gönderiden ya da işlem hattı düzenleyicisinde düzenlenerek güncellenir.
- Ardışık düzenin YAML dosya yolu, farklı bır YAML dosyasına başvuracak şekilde güncelleştirilir. Bu değişiklik yalnızca varsayılan dalı güncelleştirir ve bu nedenle yalnızca varsayılan dal için güncelleştirilmiş YAML dosyasında zamanlamalar seçer. Başka herhangi bir dal daha sonra varsayılan dalı birleşiyorsa, örneğin
git pull origin main, yeni başvurulan YAML dosyasından zamanlanan Tetikleyiciler bu dal için değerlendirilir. - Yeni bir dal oluşturulur.
Bu olaylardan biri bir dalda oluştuktan sonra, bu dal, o dalda YAML dosyasında bulunan zamanlanmış tetikleyicilerle ilgili dal filtreleriyle eşleşiyorsa, o dal için planlanan tüm çalıştırmalar eklenir.
Önemli
Bir dal için zamanlanmış çalıştırmalar yalnızca dal, Bu belirli daldaYAML dosyasındaki zamanlanmış tetikleyicilerle ilgili dal filtreleriyle eşleşiyorsa eklenir.
Örneğin, aşağıdaki zamanlamaya sahip bir işlem hattı oluşturulur ve YAML dosyasının bu sürümü dala iade edilir main . Bu zamanlama, main dalı günlük olarak oluşturur.
# YAML file in the main branch
schedules:
- cron: "0 0 * * *"
displayName: Daily midnight build
branches:
include:
- main
Ardından, adlı yeni bir dal oluşturulur mainnew-feature . Yeni daldaki YAML dosyasından zamanlanan Tetikleyiciler okunurdur ve dal için eşleşme olmadığından new-feature , zamanlanmış derlemelerde değişiklik yapılmaz ve new-feature dal, zamanlanmış bir tetikleyici kullanılarak derlenmez.
new-featurebranches Listeye eklenirse ve bu değişiklik dala itilir new-feature , YAML dosyası okunurdur ve bu yana new-feature dallar listesinde olduğundan, dal için zamanlanmış bir derleme eklenir new-feature .
# YAML file in the new-feature-branch
schedules:
- cron: "0 0 * * *"
displayName: Daily midnight build
branches:
include:
- main
- new-feature
Artık adlı bir dalın release oluşturulduğunu main ve release daldaki YAML dosyasındaki dal filtrelerine eklendiğini main , ancak yeni oluşturulan dala eklendiğine release dikkat edin.
# YAML file in the release branch
schedules:
- cron: "0 0 * * *"
displayName: Daily midnight build
branches:
include:
- main
# YAML file in the main branch with release added to the branches list
schedules:
- cron: "0 0 * * *"
displayName: Daily midnight build
branches:
include:
- main
- release
Daldaki dal release filtrelerine eklendiğinden main , ancak daldaki dal filtrelerine eklendiğinden releaserelease , release dal bu zamanlamaya göre oluşturulmayacaktır. Yalnızca dal, featurefeature YAML dosyasındaki dal filtrelerine eklendiğinde, zamanlanan derleme Scheduler 'a eklenir.
Azure DevOps Server 2019 ' de yaml sözdiziminde zamanlanmış derlemeler desteklenmez. YAML derleme işlem hattınızı oluşturduktan sonra, zamanlanmış bir tetikleyici belirtmek için işlem hattı ayarlarını kullanabilirsiniz.
YAML işlem hatları TFS üzerinde kullanılamaz.
Örnekler
Aşağıdaki örnek iki zamanlamayı tanımlar:
schedules:
- cron: "0 0 * * *"
displayName: Daily midnight build
branches:
include:
- main
- releases/*
exclude:
- releases/ancient/*
- cron: "0 12 * * 0"
displayName: Weekly Sunday build
branches:
include:
- releases/*
always: true
Günlük gece yarısı oluşturanilk zamanlama, her gün gece yarısı bir işlem hattı çalıştırır, ancak bu, ve için son başarılı zamanlanan çalıştırmadan bu yana yalnızca kod değiştiyse,, ve tüm releases/* dalların dışında, releases/ancient/* .
İkinci zamanlama, haftalık Pazar derlemesi, tüm dallar için kodun en son çalıştırılmasından sonra değiştirilip değiştirilmediğini ve bu yana bir işlem hattı çalıştırır .
Not
Cron zamanlamalarının saat dilimi UTC 'dir, bu nedenle bu örneklerde gece yarısı derleme ve öğlen, UTC 'de gece yarısı ve öğleden sonra bu derleme.
Daha fazla örnek için bkz. Klasik düzenleyiciden geçiş.
Azure DevOps Server 2019 ' de yaml sözdiziminde zamanlanmış derlemeler desteklenmez. YAML derleme işlem hattınızı oluşturduktan sonra, zamanlanmış bir tetikleyici belirtmek için işlem hattı ayarlarını kullanabilirsiniz.
YAML işlem hatları TFS üzerinde kullanılamaz.
Cron sözdizimi
her Azure Pipelines zamanlanan tetikleyici cron ifadesi, beş girişi olan boşlukla ayrılmış bir ifadedir ve aşağıdaki sırayla yapılır.
mm HH DD MM DW
\ \ \ \ \__ Days of week
\ \ \ \____ Months
\ \ \______ Days
\ \________ Hours
\__________ Minutes
| Alan | Kabul edilen değerler |
|---|---|
| Dakika | 0 ila 59 |
| Saat | 0 ile 23 arasında |
| Gün | 1 ila 31 |
| Ay | 1 ila 12, tam Ingilizce adları, Ingilizce adların ilk üç harfi |
| Haftanın günleri | 0 ila 6 (Pazar ile başlayarak), tam Ingilizce adları, Ingilizce adların ilk üç harfi |
Değerler aşağıdaki biçimlerde olabilir.
| Biçimlendir | Örnek | Description |
|---|---|---|
| Liyorsa | * |
Bu alanın tüm değerlerini eşleştirir |
| Tek değer | 5 |
Bu alan için tek bir değer belirtir |
| Virgülle ayrılmış | 3,5,6 |
Bu alan için birden çok değer belirtir. Birden çok biçim birleştirilebilir, örneğin 1,3-6 |
| Aralıklar | 1-3 |
Bu alan için dahil edilen değer aralığı |
| Aralıklar | */4 veya 1-5/2 |
Bu alanla eşleştirilecek aralıklar (her 4. değer veya 2. adım aralığı ile 1-5 aralığı) |
| Örnek | Cron ifadesi |
|---|---|
| Her Pazartesi, Çarşamba ve Cuma 'yı 6:00 PM 'de oluşturun | 0 18 * * Mon,Wed,Fri, 0 18 * * 1,3,5 , veya 0 18 * * 1-5/2 |
| 6 saatte bir derleyin | 0 0,6,12,18 * * *0 */6 * * *veya0 0-18/6 * * * |
| 9:00 ile başlayarak 6 saatte bir derleyin | 0 9,15,21 * * * veya 0 9-21/6 * * * |
Desteklenen biçimler hakkında daha fazla bilgi için bkz. crontab ifadesi.
Azure DevOps Server 2019 ' de yaml sözdiziminde zamanlanmış derlemeler desteklenmez. YAML derleme işlem hattınızı oluşturduktan sonra, zamanlanmış bir tetikleyici belirtmek için işlem hattı ayarlarını kullanabilirsiniz.
YAML işlem hatları TFS üzerinde kullanılamaz.
Zamanlanan çalıştırmalar görünümü
İşlem hatlarınızın işlem hattı ayrıntıları sayfasındaki bağlam menüsünden zamanlanan çalıştırmalar ' ı seçerek yaklaşan zamanlanan derlemelerin önizlemesini görüntüleyebilirsiniz.

Zamanlanan tetiklerinizi oluşturduktan veya güncelleştirdikten sonra, bu görünümü kullanarak doğrulayabilirsiniz.

Bu örnek, aşağıdaki zamanlamaya göre zamanlanan çalıştırmaları görüntüler.
schedules:
- cron: "0 0 * * *"
displayName: Daily midnight build
branches:
include:
- main
zamanlanmış çalışan pencereleri, Azure DevOps portalına gitmek için kullanılan bilgisayarda yerel saat dilimine dönüştürülen zamanları görüntüler. Bu örnek, EST saat diliminde alınmış bir ekran görüntüsü görüntüler.
Azure DevOps Server 2019 ' de yaml sözdiziminde zamanlanmış derlemeler desteklenmez. YAML derleme işlem hattınızı oluşturduktan sonra, zamanlanmış bir tetikleyici belirtmek için işlem hattı ayarlarını kullanabilirsiniz.
YAML işlem hatları TFS üzerinde kullanılamaz.
Kod değişikliği olmadığında bile çalışıyor
Not
Zamanlanan derlemeler TFS 2018,1 ve daha düşük bir kod değişikliklerinden bağımsız olarak her zaman zamanlamaya göre çalışır.
Varsayılan olarak, en son başarılı zamanlanan çalıştırmadan bu yana kod değişikliği olmadığında işlem hattı zamanlandı olarak çalışmaz. Örneğin, her gece 9:00pm ' de çalışacak bir işlem hattı zamanlayacağınızı düşünün. Haftanın günleri sırasında, kodunuza çeşitli değişiklikler gönderirsiniz. İşlem hattı zamanlamaya göre çalışır. Hafta sonları sırasında kodunuzda herhangi bir değişiklik yapmayın. , Cuma günü zamanlanan çalıştırmadan bu yana kod değişikliği yoksa, işlem hattı hafta sonu sırasında zamanlandığı şekilde çalışmaz.
Kod değişikliği olmadığında bile bir işlem hattının çalışmasına zorlamak için always anahtar sözcüğünü kullanabilirsiniz.
schedules:
- cron: ...
...
always: true
Bu Azure DevOps Server sürümünde YAML sözdiziminde zamanlanmış derlemeler desteklenmez. YAML derleme işlem hattınızı oluşturduktan sonra, zamanlanmış bir tetikleyici belirtmek için işlem hattı ayarlarını kullanabilirsiniz.
YAML işlem hatları TFS üzerinde kullanılamaz.
Zamanlanan çalışan sayısı için sınırlar
Bir işlem hattını çalıştırmak için ne sıklıkta zaman çizelgesi kullanabileceğinizi gösteren belirli sınırlar vardır. bu sınırlar, daha önce Microsoft tarafından barındırılan aracıların Azure Pipelines kaynaklarının kötüye kullanımını engellemek için eklenmiştir. Bu sınır, her hafta işlem hattı başına 1000 çalıştırmasından.
Klasik düzenleyiciden geçiş
Aşağıdaki örneklerde, zamanlamalarınızı klasik düzenleyiciden YAML 'ye nasıl geçirebileceğiniz gösterilmektedir.
- Örnek: birden çok saat dilimindeki git deposunun gecelik derlemesi
- Örnek: farklı sıklıklarla gecelik derleme
Örnek: birden çok saat dilimindeki git deposunun gecelik derlemesi
Bu örnekte, klasik düzenleyici zamanlanan tetikleyicisinin iki girişi vardır ve aşağıdaki yapılar oluşturulur.
3:00 (UTC + 5:30 saat dilimi) itibariyle her Pazartesi-Cuma,
features/india/*dal filtresi ölçütlerini karşılayan dalları oluşturun
3:00 (UTC-5:00 saat dilimi) itibariyle her Pazartesi-Cuma,
features/nc/*dal filtresi ölçütlerini karşılayan dalları oluşturun
Eşdeğer YAML zamanlanan tetikleyicisi:
schedules:
- cron: "30 21 * * Sun-Thu"
displayName: M-F 3:00 AM (UTC + 5:30) India daily build
branches:
include:
- /features/india/*
- cron: "0 8 * * Mon-Fri"
displayName: M-F 3:00 AM (UTC - 5) NC daily build
branches:
include:
- /features/nc/*
İlk zamanlamada, a-F 3:00 (UTC + 5:30) Hindistan günlük derleme, cron sözdizimi ( ) 30 21 * * Sun-Thu .
- Dakika ve saat-
30 21-Bu21:30 UTC() ile eşlenir9:30 PM UTC. Klasik düzenleyicide belirtilen saat dilimi UTC + 5:30olduğundan, YAML tetikleyicisi için belirtmek üzere istenen UTC zamanına ulaşmak için 3:00 istenen UTC saatine 5 saat ve 30 dakika çıkardık. - Bu zamanlama yalnızca ayın belirli günlerinde veya belirli bir ayda çalışmak üzere belirtilmediğinden, günler ve aylar joker karakter olarak belirtilir.
- Haftanın günü-
Sun-Thu-saat dilimi dönüştürmesi nedeniyle, derlemelerimizin UTC + 5:30 Hindistan saat diliminde 3:00 ' de çalışması için, bir önceki güne UTC saat içinde başlamasını belirtmemiz gerekir. Ayrıca, haftanın günlerini de veya olarak belirteceğiz0-40,1,2,3,4.
İkinci zamanlamada, a-F 3:00 (UTC-5) NC günlük derleme, cron sözdizimi .
- Dakika ve saat-
0 8-Bu ile eşlenir8:00 AM UTC. Klasik düzenleyicideki belirtilen saat dilimi UTC-5:00olduğundan, YAML tetikleyicisi için belirtmek üzere istenen UTC zamanına ulaşmak için istenen UTC zamanına 5 saat sonra 3:00 bir değer eklememiz gerekiyor. - Bu zamanlama yalnızca ayın belirli günlerinde veya belirli bir ayda çalışmak üzere belirtilmediğinden, günler ve aylar joker karakter olarak belirtilir.
- Haftanın günleri-
Mon-Fri-saat dilimi dönüştürmelerimiz, istenen zamanlamamız için haftanın birden çok gününe yayılmadığından, buradan dönüştürme yapmak zorunda kalmazsınız. Ayrıca, haftanın günlerini de veya olarak belirteceğiz1-51,2,3,4,5.
Önemli
YAML zamanlanan UTC saat dilimleri, gün ışığından yararlanma saatine göre hesaba vermez.
İpucu
Haftanın 3 harfli gününü kullanırken ve Paz üzerinden birden çok günün bir yayılımını yaparken, Güneş haftanın ilk günü olarak düşünülmelidir, örneğin gece yarısı için en gece, Pazartesi ile Perşembe, cron söz dizimi 0 5 * * Sun,Thu-Sat
Örnek: farklı sıklıklarla gecelik derleme
Bu örnekte, klasik düzenleyici zamanlanan tetikleyicisinin iki girişi vardır ve aşağıdaki yapılar oluşturulur.
Pazartesi-Cuma günü 3:00,
mainvereleases/*dal filtresi ölçütlerine uyan dal oluşturma
3:00: UTC 'de her Pazar,
releases/lastversionkaynak veya işlem hattı değiştirilmediyse bile dalı oluşturun
Eşdeğer YAML zamanlanan tetikleyicisi:
schedules:
- cron: "0 3 * * Mon-Fri"
displayName: M-F 3:00 AM (UTC) daily build
branches:
include:
- main
- /releases/*
- cron: "0 3 * * Sun"
displayName: Sunday 3:00 AM (UTC) weekly latest version build
branches:
include:
- /releases/lastversion
always: true
İlk zamanlamada, k-F 3:00 (UTC) günlük derleme, cron sözdizimi .
- Dakika ve saat-
0 3-Bu ile eşlenir3:00 AM UTC. Klasik düzenleyicide belirtilen saat dilimi UTColduğundan, herhangi bir zaman dilimi dönüştürmesi yapmanıza gerek kalmaz. - Bu zamanlama yalnızca ayın belirli günlerinde veya belirli bir ayda çalışmak üzere belirtilmediğinden, günler ve aylar joker karakter olarak belirtilir.
- Haftanın günleri;
Mon-Frisaat dilimi dönüştürmesi olmadığından, haftanın günleri doğrudan klasik düzenleyici zamanlamasından eşlenir. Ayrıca haftanın günleri de belirtilebilir1,2,3,4,5.
İkinci zamanlamada, pazar 3:00 (UTC) haftalık en son sürüm derlemesiolan cron sözdizimi vardır .
- Dakika ve saat-
0 3-Bu ile eşlenir3:00 AM UTC. Klasik düzenleyicide belirtilen saat dilimi UTColduğundan, herhangi bir zaman dilimi dönüştürmesi yapmanıza gerek kalmaz. - Bu zamanlama yalnızca ayın belirli günlerinde veya belirli bir ayda çalışmak üzere belirtilmediğinden, günler ve aylar joker karakter olarak belirtilir.
- Haftanın günleri-
Sun-saat dilimi dönüştürmelerimiz, istenen zamanlamamız için haftanın birden çok gününe yayılmadığından, buradan dönüştürme yapmak zorunda kalmazsınız. Ayrıca haftanın günleri de belirtilebilir0. - Ayrıca
always: true, bu derleme kaynak kodun güncelleştirilip güncelleştirilmediğini çalıştırmak için zamanlandığından de belirttik.
SSS
- YAML dosyasında bir zamanlama tanımlıyorum. Ancak çalıştırılmadı. Neler oldu?
- YAML zamanlamalarım düzgün çalışıyor. Ancak, şimdi çalışmayı durdurmuştur. Nasıl yaparım? hata ayıklaması yapılsın mı?
- Kodum değişmedi, ancak zamanlanan bir derleme tetiklendi. Neden?
- Zamanlanmış çalıştırma panelinde planlanan çalışmayı görüyorum. Ancak, bu anda çalışmaz. Neden?
- YAML ardışık düzeninde tanımlanan zamanlamalar bir dal için çalışır, ancak diğeri değildir. Bu Nasıl yaparım? düzeltilsin mi?
YAML dosyasında bir zamanlama tanımlıyorum. Ancak çalıştırılmadı. Neler oldu?
Azure Pipelines işlem hattınızda zamanladığı bir sonraki birkaç çalıştırma olup olmadığını denetleyin. İşlem hattınızda Zamanlanmış çalıştırmalar eylemini seçerek bunları bulabilirsiniz. Liste, bir sonraki birkaç gün boyunca yalnızca yakında birkaç çalıştırma olduğunu gösterecek şekilde filtrelenir. Bu değer beklentilerinizi karşılamıyorsa, bu büyük olasılıkla cron zamanlamanızı yanlış yazmış olmanız ya da doğru dalda bir zamanlamanın tanımlı olması olabilir. Zamanlamaları nasıl yapılandıracağınızı anlamak için yukarıdaki konuyu okuyun. Cron sözdiziminizi yeniden değerlendirmeye ayırın. Cron zamanlamalarının tüm zamanları UTC 'de.
YAML dosyanıza küçük bir değişiklik yapın ve bu güncelleştirmeyi deponuza gönderin. YAML dosyasından zamanlamaları okumayla ilgili herhangi bir sorun varsa, şimdi düzeltilmelidir.
Kullanıcı arabiriminde tanımlanmış zamanlamalarınız varsa, YAML zamanlamalarınız kabul edilmez. İşlem hatlarınız için düzenleyiciye gidip Tetikleyiciler' i seçerek UI zamanlamalarınızın olmadığından emin olun.
Bir işlem hattı için planlayabilmeniz için zamanladığınız çalışma sayısında bir sınır vardır. Sınırlarhakkında daha fazla bilgi edinin.
kodunuzda herhangi bir değişiklik yoksa Azure Pipelines yeni çalıştırmalar başlatmayabilir. Bu davranışı nasıl geçersiz kılacağınızı öğrenin.
YAML zamanlamalarım düzgün çalışıyor. Ancak, şimdi çalışmayı durdurmuştur. Nasıl yaparım? hata ayıklaması yapılsın mı?
Belirtmediyseniz
always:true, kodunuzda herhangi bir güncelleştirme yapılmadığı takdirde işlem hattı planlanmayacaktır. Herhangi bir kod değişikliği yapılıp yapılmayacağını ve zamanlamaları nasıl yapılandırdığınızabakın.İşlem hattınızı kaç kez zamanlayabilmeniz gerektiği konusunda bir sınır vardır. Bu sınırları aşmadığını denetleyin.
Kullanıcının Kullanıcı arabiriminde ek zamanlamalar etkinleştirilip etkinleştirilmediğini denetleyin. İşlem hattının düzenleyicisini açın ve Tetikleyiciler' i seçin. Kullanıcı arabiriminde zamanlamalar tanımlarsa, YAML zamanlamalarınız kabul edilemez.
İşlem hattının duraklatıldığını veya devre dışı bırakılıp bırakılmadığını denetleyin. işlem hattınızı Ayarlar seçin.
Azure Pipelines işlem hattınızda zamanladığı bir sonraki birkaç çalıştırma olup olmadığını denetleyin. İşlem hattınızda Zamanlanmış çalıştırmalar eylemini seçerek bunları bulabilirsiniz. Beklediğiniz zamanlamaları görmüyorsanız, YAML dosyanızda küçük bir değişiklik yapın ve güncelleştirmeyi deponuza gönderin. Bu, zamanlamaları yeniden eşitlemeniz gerekir.
kodunuzu depolamak için GitHub kullanıyorsanız, yeni bir çalıştırma başlatmaya çalışırken GitHub tarafından kısıtlanmış Azure Pipelines olabilir. Yeni bir çalıştırmayı el ile başlatıp başlatamadıysanız emin olun.
Kodum değişmedi, ancak zamanlanan bir derleme tetiklendi. Neden?
Kod değişikliği olmasa bile zamanlanmış bir derlemeyi her zaman çalıştırmaya yönelik bir seçenek etkinleştirmiş olabilirsiniz. YAML dosyası kullanırsanız, YAML dosyasında zamanlamanın söz dizimini doğrulayın. Klasik işlem hatları kullanıyorsanız, bu seçeneği zamanlanan tetikleyicilere iade ettiğini doğrulayın.
İşlem hattının derleme işlem hattını veya bazı özelliğini güncelleştirdiyseniz. Bu, kaynak kodunuzu güncelleştirmemiş olsanız bile yeni bir çalıştırmanın zamanlanmasına neden olur. Klasik düzenleyiciyi kullanarak işlem hattının değişiklik geçmişini doğrulayın.
Depoya bağlanmak için kullanılan hizmet bağlantısını güncelleştirmiş olabilirsiniz. Bu, kaynak kodunuzu güncelleştirmemiş olsanız bile yeni bir çalıştırmanın zamanlanmasına neden olur.
Azure Pipelines önce kodunuzda güncelleştirme olup olmadığını denetler. Azure Pipelines depoya ulaşamadıysa veya bu bilgileri alamazsanız, bu, yine de zamanlanmış bir çalıştırma başlatır ya da depoya ulaşamadığını göstermek için başarısız bir çalıştırma oluşturur. Bir çalıştırmanın oluşturulduğunu ve hemen başarısız olduğunu fark ederseniz, bunun nedeni büyük olasılıkla budur. Azure Pipelines, deponuza ulaşamadığından emin olmak için bir kukla derleme.
Zamanlanmış çalıştırma panelinde planlanan çalışmayı görüyorum. Ancak, bu anda çalışmaz. Neden?
- Zamanlanan çalıştırmalar panelinde tüm olası zamanlamalar gösterilir. Ancak, koda gerçek güncelleştirmeler yapmadığınız takdirde bu durum aslında çalışmayabilir. Zamanlamayı her zaman çalışacak şekilde zorlamak için, YAML ardışık düzeninde Always özelliğini ayarlamış olduğunuzdan emin olun veya her zaman klasik bir işlem hattında Çalıştır seçeneğini kontrol edin.
YAML ardışık düzeninde tanımlanan zamanlamalar bir dal için çalışır, ancak diğeri değildir. Bu Nasıl yaparım? düzeltilsin mi?
Zamanlamalar YAML dosyalarında tanımlanır ve bu dosyalar dallarla ilişkilendirilir. Belirli bir dal için bir işlem hattının zamanlanmasını istiyorsanız, features/Xfeatures/X YAML dosyasının bu dosyada bir cron zamanlaması tanımlandığından ve zamanlama için doğru dal eklemeleri bulunduğundan emin olun. Daldaki YAML dosyası features/X Bu örnekte aşağıdaki gibi olmalıdır:
schedules:
- cron: "0 12 * * 0" # replace with your schedule
branches:
include:
- features/X
Daha fazla bilgi için bkz. Zamanlanmış Tetikleyiciler Için dal konuları.



