GitHub Actions Nedir?
Daha önce her gün yazılım geliştirme süreçlerinizde hata yapma korkusu ile manuel testler yapıyor olabilirsiniz. Artık GitHub Actions sayesinde bu korkuyu geride bırakabilirsiniz. Yazılımınız her yeni commit ile testlerden geçecek ve her şey yolunda ise otomatik olarak yayına alınacaktır.
GitHub Actions ile Otomatik İşlemler Nasıl Yapılır?
# Adım 1: GitHub Actions'ı Projenize Entegre Etme
Örnek bir YAML dosyası:
name: CI Workflow
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Node.js
uses: actions/setup-node@v2
with:
node-version: '14'
- name: Install dependencies
run: npm install
- name: Run tests
run: npm test
Yukarıdaki örnekte, `push` işlemi gerçekleştikçe CI iş akışı çalışır. Bu iş akışı, projenizin kodunu kontrol eder, Node.js ortamını ayarlar, bağımlılıkları yükler ve testleri çalıştırır.
# Adım 2: GitHub Actions ile Sürekli Entegrasyon (CI)
# Adım 3: GitHub Actions ile Sürekli Dağıtım (CD)
Örnek bir dağıtım iş akışı:
name: Deploy to Production
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Deploy to Server
run: |
ssh user@server "cd /path/to/project && git pull && npm install && pm2 restart app"
Bu iş akışında, `main` dalına yapılan her push işleminden sonra otomatik olarak sunucuya bağlanılır ve yeni değişiklikler uygulanır.
GitHub Actions’ın Gücü Nerede Yatar?
1. Kolay Entegrasyon: GitHub Actions, GitHub ekosistemine tam entegre olduğu için kurulum ve yapılandırma çok kolaydır.
2. Esneklik: Farklı ortamlar ve diller için destek sağlar. İster Python, ister Node.js ya da Java uygulamaları olsun, her türlü projede kullanabilirsiniz.
3. Özelleştirilebilirlik: Her tür işlem için geniş bir eklenti (action) yelpazesi sunar. İhtiyacınıza göre, yeni bir eklenti eklemek veya var olan bir eklentiyi değiştirmek oldukça basittir.
4. Ücretsiz Plan: GitHub Actions, açık kaynak projeleri için ücretsizdir. Bu sayede, projelerinizi otomatikleştirirken herhangi bir maliyetle karşılaşmazsınız.
Sonuç
GitHub Actions ile tanıştıktan sonra, yazılım geliştirme sürecinizi nasıl otomatikleştirdiğinizin farkına varacak ve işlerinizi daha hızlı ve hatasız bir şekilde yönetebileceksiniz. Kodunuz her zaman sağlam, işler her zaman yolunda olacak!