Github Actions ile Sürekli Entegrasyon (CI): 11. Hafta Lab 8
Bu makalede, Github Actions kullanarak Sürekli Entegrasyon (CI) kurulumunu ele alacağız. 11. hafta Lab 8 çalışması kapsamında, Github Actions’ın nasıl kullanılacağını adım adım inceleyeceğiz. Öncelikle, Sürekli Entegrasyonun ne olduğunu ve neden önemli olduğunu anlamak gerekiyor.
Sürekli Entegrasyon (CI) Nedir?
Sürekli Entegrasyon (CI), yazılım geliştirme sürecinde geliştiricilerin kodlarını sık sık bir merkezi depoda birleştirmesidir. Bu birleştirme işlemi otomatik testler ve diğer otomasyon adımlarıyla birlikte yapılır. Sonuç olarak, erken sorun tespiti sağlanır ve entegre edilebilirlik sorunları minimize edilir. Başka bir deyişle, CI, kod kalitesini iyileştirmek ve geliştirme sürecinin verimliliğini artırmak için kullanılan bir uygulamadır. Bu sayede, daha az hata ve daha hızlı teslimatlar elde edilir.
Github Actions ile CI Kurulumu
Github Actions, Github’ın sunduğu, kod depolarınızda otomasyon iş akışlarını çalıştırmanıza olanak tanıyan bir hizmettir. CI/CD (Sürekli Entegrasyon/Sürekli Teslimat) iş akışları oluşturmak için idealdir. İlk adım, Github deponuzda bir `.github/workflows` dizini oluşturmak ve içerisine bir YAML dosyası eklemektir. Bu YAML dosyası, iş akışınızın adımlarını tanımlar.
Örneğin, basit bir Javascript projesi için bir iş akışı şöyle olabilir:
name: CI
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- run: npm install
- run: npm test
Bu örnekte, main dalına yapılan her push işlemi, bir CI iş akışını tetikler. İş akışı, kodu klonlar, bağımlılıkları yükler ve testleri çalıştırır. Sonuçlar Github’da görülebilir. Daha karmaşık projeler için, daha detaylı iş akışları oluşturmanız gerekebilir. Örneğin, kod analizi, kod kalitesi kontrolü ve dağıtım adımları ekleyebilirsiniz.
Faydalı Kaynaklar
Daha fazla bilgi edinmek için aşağıdaki kaynaklara göz atabilirsiniz:
- Github Actions Dokümanları
- Fatih Soysal’ın Kişisel Blogu (Bu konuda daha fazla makale bulabilirsiniz.)
Sonuç
Github Actions, basit ve güçlü bir CI/CD çözümü sunar. Bu makalede ele aldığımız basit örnek, daha karmaşık iş akışları için temel bir yapı oluşturur. Uygulamanızın ihtiyaçlarına göre iş akışınızı özelleştirebilir ve geliştirebilirsiniz. Unutmayın ki, sürekli entegrasyon, yazılım geliştirme sürecinde kalite ve verimliliği önemli ölçüde artırır.
Umarım bu makale, Github Actions ile CI kurulumunda size yardımcı olmuştur. Başka sorularınız varsa, yorum yapmaktan çekinmeyin.
#Etiketler: Github Actions, Sürekli Entegrasyon, CI, CI/CD, Github, YAML, Otomasyon, Yazılım Geliştirme, Kod Kalitesi, Test, Dağıtım, fatihsoysal.com