CodeBlanks Logo Icon CodeBlanks

GitHub Actions

GitHub Actions ile Flutter CI akışı kurmayı öğrenirsin.

GitHub Actions nedir?

GitHub Actions, GitHub deposuna ittiğin kodda otomatik işler (CI) çalıştıran bir sistemdir. .github/workflows/ klasörüne YAML dosyası koyarak bir workflow tanımlarsın. Flutter için tipik bir akış flutter test ve flutter build adımlarını içerir.

name: CI
on: [push, pull_request]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: subosito/flutter-action@v2
      - run: flutter test

CI adımları

Tipik bir Flutter CI akışı: kodu çıkar (actions/checkout), Flutter SDK'yı kur (subosito/flutter-action), bağımlılıkları yükle (flutter pub get), testleri çalıştır (flutter test), yapı oluştur (flutter build apk). Her run: satırı bir kabuk komutudur.

Uygulama CI adımları listesi

main içinde CI adımlarından oluşan bir String listesi tanımla: sırasıyla 'checkout', 'flutter pub get', 'flutter test', 'flutter build apk'. Listenin 3. elemanını (index 2) print ile yazdır.

Başlangıç kodu

main.dart
void main() {
  // CI adımları listesi tanımla: checkout, flutter pub get, flutter test, flutter build apk
  // listenin 3. elemanini (index 2) yazdir
}

Örnek çözüm

main.dart
void main() {
  final steps = <String>[
    'checkout',
    'flutter pub get',
    'flutter test',
    'flutter build apk',
  ];
  print(steps[2]);
}

Beklenen çıktı

flutter test

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 GitHub Actions workflow dosyası hangi klasöre konur?

  • bin/
  • lib/
  • .github/workflows/ Doğru cevap
  • test/

Açıklama: Workflow YAML dosyaları .github/workflows/ klasörüne konur; GitHub bu klasörü tarayarak CI işlerini başlatır.

2 Workflow tetikleyicisi

Soru
on: [____, pull_request]
Cevap
on: [push, pull_request]

Açıklama: GitHub Actions workflow'u on: anahtarıyla tetiklenir; push ve pull_request en yaygın tetikleyicilerdir, merge ve commit doğrudan tetikleyici değildir.

3 GitHub Actions eşleşmeleri

Kavram Anlamı
GitHub Actions CI sistemi
workflow Otomatik iş akışı
.github/workflows Workflow klasörü
run Kabuk komutu

İleri seviye bölümündeki tüm dersler