CodeBlanks Logo Icon CodeBlanks

Workflow dosyası

Workflow YAML dosyasının yapısını öğrenirsin.

Workflow dosyası nedir?

GitHub Actions iş akışları, depoda .github/workflows/ klasöründe bulunan YAML dosyalarıyla tanımlanır. Her dosya iş akışının adını, hangi olayda başlayacağını ve hangi işleri yapacağını belirtir. Dosyalar genellikle .yml veya .yaml uzantısını kullanır.

.github/
  workflows/
    tests.yml

YAML dosyasının temel yapısı

YAML, girintilerle hiyerarşi oluşturan okunabilir bir yapılandırma biçimidir. Workflow dosyasında name iş akışının adını, on başlangıç olayını, jobs ise yapılacak işleri tanımlar. Alt seviyedeki alanlar boşluklarla girintilenir; girintiler tutarlı olmalıdır.

name: Test Workflow

on: push

jobs:
  test:
    runs-on: ubuntu-latest

Uygulama İlk workflow dosyasını yaz

tests.yml içeriğini tamamla. Workflow adını Basic CI yap, başlangıç olayını push olarak belirle ve test isimli işin ubuntu-latest ortamında çalışmasını sağla.

Başlangıç kodu

terminal
# Workflow adını yaz

# Başlangıç olayını yaz

# İş adını ve çalışma ortamını yaz

Örnek çözüm

terminal
name: Basic CI

on: push

jobs:
  test:
    runs-on: ubuntu-latest

Beklenen çıktı

Basic CI
push
test
ubuntu-latest

Soru ve cevaplar

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

1 Bir workflow YAML dosyası hangi klasörde bulunmalıdır?

  • .github/workflows/ Doğru cevap
  • public/workflows/
  • .git/workflows/
  • src/actions/

Açıklama: GitHub Actions workflow dosyaları deponun kök dizinindeki .github/workflows klasöründe bulunur.

2 Workflow adını tanımla

Soru
name: ____
on: push

jobs:
  test:
    runs-on: ubuntu-latest
Cevap
name: Test Workflow
on: push

jobs:
  test:
    runs-on: ubuntu-latest

Açıklama: name alanı workflow dosyasının görünen adını belirler.

3 Workflow alanları

Kavram Anlamı
name İş akışının adı
on Başlatan olay
jobs Yapılacak işler
runs-on Çalışma ortamı

Orta seviye bölümündeki tüm dersler

20 Orta seviye finali

  1. Dal yönetimi
  2. Rebase
  3. Çatışma
  4. PR akışı