Farklı CI/CD yaklaşımlarını keşfetme
Şimdiye kadar buluta özel uygulamanız için CI/CD'yi desteklemeye yönelik iki yaklaşım gördünüz. Uygulamayı AKS'ye el ile dağıttınız ve uygulamayı derlemek ve dağıtmak için GitHub Actions'ı kullandınız. Microsoft üçüncü bir yaklaşımı (Azure Pipelines) destekler. Her iki otomatik yaklaşım da geçerlidir; gereksinimlerinize en uygun olanı seçersiniz.
GitHub eylemleriyle Azure Pipelines'ın farkı nedir?
Bu iki yaklaşımın nasıl aynı olduğunu inceleyerek başlayalım. GitHub Actions ve Azure Pipelines hem CI/CD araçlarıdır. İkisi de şu desteği destekler:
- Uygulamanızı oluşturma ve dağıtma.
- Uygulamanızı derleme ve dağıtma adımlarını tanımlamak için YAML dosyaları.
- Derleme ve dağıtma işlemini başlatmak için tetikler.
- Derleme ve dağıtma işlemini izleme.
- Dağıtımı geri alır.
Özellikler için farklı destek düzeyleri, iki yaklaşımın farklılık gösterdiği durumlardır. Şimdi bu farklılıklara göz atalım.
GitHub Actions | Azure Pipelines |
---|---|
Genel depolar için ücretsiz | açık kaynak projeleri için ücretsiz |
Özel depolar için ayda 2000 dakikaya kadar ücretsiz | Özel depolar için ayda 1800 dakikaya kadar ücretsiz |
20 eşzamanlı işle sınırlı | 10 eşzamanlı işle sınırlı |
Azure Pipelines, birçok farklı kaynak deposunu desteklediği için GitHub Actions'a göre bir avantaja sahiptir. Azure Pipelines; GitHub, GitHub Enterprise Server, Bitbucket Cloud, Azure Repos Git ve TFVC, Subversion ve External Git'i destekler. GitHub Actions yalnızca GitHub'i destekler.
Daha karmaşık CD/CD iş akışlarınız varsa Azure Pipelines gereksinimlerinizi destekleyecek şekilde ölçeklendirilebilir. Azure Pipelines birden çok aşamayı, birden çok işi ve birden çok adımı destekler. GitHub Actions, birden çok adımda yalnızca tek bir işi destekler. Bu esneklik, otomatik test senaryolarıyla birleştirilebilir.
Dekont
DevOps'ta yeni bir proje oluşturduğunuzda ücretsiz Azure Pipeline dakikaları kullanılamayabilir. Ücretsiz paralellik izni istemek için paralellik istek formunu doldurun. Sonraki alıştırmayı tamamlamadan önce bunu yapmanız gerekir.
GitHub Action'ınızı devre dışı bırakma
Farklılıkları gözden geçirdikten sonra uygulamanızı Azure Pipelines'ı kullanacak şekilde değiştirmeye karar verirsiniz.
Sekmede, çatallanmış deponuza Actions gidin.
Soldaki Build and deploy an app to AKS iş akışını seçin.
Sağ üstteki diğer seçenekler menüsünü seçin.
İş akışını devre dışı bırak'ı seçin.
GitHub Action iş akışını devre dışı bırakmışsınız. Şimdi uygulamanızı derlemek ve dağıtmak için bir Azure Pipeline oluşturacaksınız.