Yazılım Geliştirme

GitHub Actions ile CI/CD: Otomatik Deploy Nasıl Kurulur?

2 görüntülenme 15.06.2026

CI/CD Nedir?

CI/CD (Continuous Integration / Continuous Deployment), kod değişikliklerinin otomatik olarak test edilip sunucuya dağıtılmasını sağlayan bir yazılım geliştirme pratiğidir. Her değişiklikte manuel adımları elle yapmak yerine, bir iş akışı (workflow) tanımlayarak süreci otomatikleştirir; böylece hatalar erken yakalanır ve dağıtım hızlanır.

GitHub Actions Mantığı

GitHub Actions, deponuzdaki .github/workflows/ klasöründe YAML dosyaları ile tanımlanan iş akışlarını çalıştırır. Örneğin "main dalına her push yapıldığında testleri çalıştır ve başarılıysa sunucuya yükle" gibi bir akış kurabilirsiniz.

Örnek Deploy Workflow

name: Deploy
on:
  push:
    branches: [ main ]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: SSH ile sunucuya deploy
        uses: appleboy/ssh-action@v1
        with:
          host: ${{ secrets.SSH_HOST }}
          username: ${{ secrets.SSH_USER }}
          key: ${{ secrets.SSH_KEY }}
          script: |
            cd /var/www/proje
            git pull origin main
            composer install --no-dev
            php artisan migrate --force

Gizli Bilgiler (Secrets)

SSH şifresi, anahtar ve sunucu IP gibi hassas bilgileri koda yazmayın. GitHub deposunda Settings > Secrets and variables > Actions bölümünden tanımlayın ve workflow'da ${{ secrets.AD }} şeklinde kullanın.

Avantajları

Otomatik deploy ile insan hatası azalır, her değişiklik kayıt altına alınır ve geri dönüş (rollback) kolaylaşır. Test adımlarını da ekleyerek bozuk kodun sunucuya gitmesini engelleyebilirsiniz.

Bu makale işinize yaradı mı?

Paylaş: Twitter LinkedIn