GitHub Actions Nedir?
İngilizce: GitHub Actions
GitHub Actions, depo olaylarıyla tetiklenen YAML iş akışları üzerinden test, build, güvenlik taraması ve dağıtım otomasyonu çalıştırır.
GitHub Actions Nedir?
GitHub Actions, GitHub deposu içindeki olaylara bağlı otomasyon çalıştırma sistemidir. Kod push edildiğinde testleri başlatabilir, pull request açıldığında lint kontrolü yapabilir veya yeni tag geldiğinde uygulamayı dağıtabilir.
Nasıl Çalışır?
İş akışları .github/workflows/ dizinindeki YAML dosyalarıyla tanımlanır. on alanı tetikleyiciyi belirtir: push, pull_request, schedule, workflow_dispatch gibi. Her workflow bir veya daha fazla job içerir; job’lar GitHub-hosted ya da self-hosted runner üzerinde çalışır. Job içindeki step’ler komut veya hazır action olabilir.
Secrets, token ve ortam değişkenleri hassas bilgileri yönetmek için kullanılır. Matrix build, aynı testleri farklı Node.js, Python veya işletim sistemi sürümlerinde çalıştırmayı sağlar. Cache ve artifact özellikleri süreyi kısaltır ve çıktıları saklar.
İş Dünyasında Kullanımı
GitHub Actions, CI/CD hattı kurmak, Docker imajı üretmek, statik site yayınlamak, güvenlik taraması yapmak, bağımlılık güncellemek veya planlı bakım görevleri çalıştırmak için kullanılabilir.
DevOps açısından güçlü yanı, otomasyonun kodla aynı depoda versiyonlanmasıdır. Güvenli kullanım için secret erişimleri, branch kuralları, third-party action izinleri ve runner yetkileri dikkatle sınırlandırılmalıdır.
İlgili Terimler
CI/CD, kod değişikliklerini otomatik derleme, test ve dağıtım hatlarından geçirerek sürümü tekrarlanabilir hale getiren DevOps pratiğidir.
CI PipelineCI pipeline, kod değişikliklerini otomatik derleme, test ve analiz adımlarından geçirerek ana dala güvenli taşımayı sağlar.
DevOpsDevOps, yazılım geliştirme ve operasyon ekiplerini ortak süreç, otomasyon ve ölçümlerle daha güvenilir teslimata hizalayan yaklaşımdır.
GitGit, kod değişikliklerini commit geçmişiyle izleyen, dallanma ve birleştirme üzerinden ekiplerin paralel çalışmasını sağlayan dağıtık versiyon kontrolüdür.
GitHubGitHub, Git depolarını barındıran; pull request, issue, paket, güvenlik ve otomasyon özellikleriyle yazılım ekiplerini bir araya getiren platformdur.