GitHub Actions İş Akışı Üreteci
CI (sürekli entegrasyon) olmayan yeni bir GitHub deposu, bir sonraki başarısız dağıtıma yalnızca bir git push uzaklıktadır. Bu üreteç, Node, PHP veya Laravel için başlangıç niteliğinde bir .github/workflows/ci.yml dosyası yazar; checkout adımını, doğru çalışma zamanı action’ını, bağımlılık kurulumunu ve standart test komutunu birbirine bağlar, yeşil/kırmızı noktayı yakmak için ihtiyacınız olan her şey.
Bir iş akışı nasıl oluştururuz?
-
1
Yığını seçin
Node (`actions/setup-node` kullanır), PHP (`shivammathur/setup-php` kullanır) veya Laravel (PHP + `php artisan test`).
-
2
Ana dalı ayarlayın
`main` varsayılandır; deponuz hâlâ `master` veya özel bir ad kullanıyorsa bunu değiştirin.
-
3
Oluşturun
Araç, ilgili dalda `push` ve `pull_request` tetikleyicileri içeren bir YAML dosyası oluşturur.
-
4
.github/workflows/ dizinine commit'leyin
`.github/workflows/ci.yml` yolunda dosyayı oluşturun ve push edin; bir sonraki commit'te Actions sekmesi yanacaktır.
İş akışı nasıl görünür
name: CI
on:
push:
branches: [main]
pull_request:
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: '8.4'
- run: composer install --no-interaction
- run: php artisan test
Üretecin sabitlediği action’lar
| Action | Amacı |
|---|---|
actions/checkout@v4 |
Depoyu runner’a klonlar |
actions/setup-node@v4 |
Bir Node araç zinciri kurar |
shivammathur/setup-php@v2 |
Uzantılarıyla birlikte bir PHP sürümü kurar |
Sırada ne eklemeli
- Test adımından önce bir Lint adımı (
npm run lint,./vendor/bin/phpstan analyse). - Matris derlemesi:
strategy.matrixile birden fazla Node/PHP sürümünde çalıştırın. - Kapsam yüklemesi: Test adımından sonra
codecov-actionveyacoveralls-action. - Gizli anahtarlar: Token’ları asla sabit kodlamayın,
secrets.XXXkullanın ve bunları Settings → Actions altında tanımlayın.
Sık yapılan hatalar
- Etiketleri getirmeyi unutmak: Sürüm mantığınız etiketleri okuyorsa
checkoutüzerindewith: { fetch-depth: 0 }belirtin. latestDocker imajları kullanmak: Çalıştırmaların aylar sonra da yeniden üretilebilir kalması için sürümleri sabitleyin.- Her push’ta 30 dakikalık bir test paketi çalıştırmak: Uzun işleri
needs:ile bölerek paralelleştirin.
Sık Sorulan Sorular
.github/workflows/ci.yml dizinizin kök dizininde yer almaktadır. GitHub, bu dizinin içindeki tüm YAML dosyalarını algılar ve her birini Eylemler sekmesinde ayrı bir iş akışı olarak gösterir.
Forklardan gelen çekme istekleri iş akışını çalıştırır, ancak GITHUB_TOKEN yalnızca okuma modunda ayarlanmıştır. Dış katkıda bulunanlar, açıkça izin vermedikçe gizli bilgilere erişemez.
setup-php adımlarında bir strategy.matrix.php: [8.2, 8.3, 8.4] bloğu ekleyin ve ${{ matrix.php }}’ye referans verin. Runner, her sürüm için paralel olarak bir iş oluşturacaktır.
Hayır. Oluşturulan YAML sayfada gösterilir, hiçbir yere yüklenmez veya kaydedilmez; kopyalamayı siz yaparsınız.
İlgili Araçlar
ASCII Tablosu Referansı
NUL, LF ve DEL dahil her kod için ondalık, onaltılık, sekizlik ve ikili değerlerle HTML sayısal karakter başvurusu gösterimini sunan tam ASCII tablosu.
HTML Karakter Referansı
HTML varlıklarının aranabilir listesi; adlandırılmış ve sayısal kodlarıyla birlikte özel karakter ve semboller için tek tıkla kopyalama.
FPS Sayacı
requestAnimationFrame ile tarayıcı FPS değerini ölçün: yumuşatma, en düşük ve en yüksek kare hızı, uyarı eşiği ve isteğe bağlı grafik. Yerel çalışır, yükleme ve API yoktur.
Klavye kısayolları başvurusu
macOS, Windows ve Linux’ta VS Code, Chrome ve GNU Readline kullanan Bash için belgelenmiş varsayılan kısayolları arayın.
EditorConfig Oluşturucu
Girinti stili ve boyutu, satır sonu, karakter kümesi ve boşluk kurallarınızla bir .editorconfig dosyası oluşturarak IDE ve editörler arasında tutarlı biçimlendirme sağlayın.
E-posta Doğrulayıcı
Bir e-posta adresini doğrulayın: RFC 5322 sözdizimi kontrolü, canlı MX kaydı sorgulama, ayrıca yerel kısım, alan adı ve uzunluk bilgileri. Hiçbir e-posta gönderilmez.
Araç diğer dillerde mevcuttur
- GitHub Actions ワークフロージェネレーター [JA]
- Generador de Flujos de Trabajo de GitHub Actions [ES]
- Générateur de Workflow GitHub Actions [FR]
- Gerador de Workflow do GitHub Actions [PT]
- Bộ công cụ tạo luồng công việc cho GitHub Actions [VI]
- GitHub Actions Workflow-generator [SV]
- เครื่องมือสร้างลำดับขั้นตอนการทำงานสำหรับ GitHub Actions [TH]
- GitHub Actions 워크플로우 생성기 [KO]
- مولّد سير عمل GitHub Actions [AR]
- GitHub-Actions-Workflow-Generator [DE]
- Generator Alur Kerja untuk GitHub Actions [ID]
- GitHub Actions Werkstroomgenerator [NL]
- Generator workflow GitHub Actions [PL]
- GitHub Actions Workflow Generator [EN]
- Generatore di Workflow di GitHub Actions [IT]
- Генератор рабочих процессов для GitHub Actions [RU]
- GitHub Actions 工作流生成器 [ZH]