Mulai cepat: Membuat alur kerja GitHub validasi build
Dalam mulai cepat ini, Anda akan mempelajari cara membuat alur kerja GitHub untuk memvalidasi kompilasi kode sumber .NET Anda di GitHub. Mengkompilasi kode .NET Anda adalah salah satu langkah validasi paling dasar yang dapat Anda ambil untuk membantu memastikan kualitas pembaruan kode Anda. Jika kode tidak mengkompilasi (atau membangun), kode tersebut mudah jera dan harus menjadi tanda yang jelas bahwa kode perlu diperbaiki.
Prasyarat
- Akun GitHub.
- Repositori kode sumber .NET.
Membuat file alur kerja
Di repositori GitHub, tambahkan file YAML baru ke direktori .github/workflows . Pilih nama file yang bermakna, sesuatu yang akan dengan jelas menunjukkan apa yang dimaksudkan alur kerja. Untuk informasi selengkapnya, lihat File alur kerja.
Penting
GitHub mengharuskan file komposisi alur kerja ditempatkan dalam direktori .github/workflows .
File alur kerja biasanya menentukan komposisi satu atau beberapa GitHub Action melalui jobs.<job_id>/steps[*]
. Untuk informasi selengkapnya, lihat Sintaks alur kerja untuk Tindakan GitHub.
Buat file baru bernama build-validation.yml, salin dan tempel konten YML berikut ke dalamnya:
name: build
on:
push:
pull_request:
branches: [ main ]
paths:
- '**.cs'
- '**.csproj'
env:
DOTNET_VERSION: '6.0.401' # The .NET SDK version to use
jobs:
build:
name: build-${{matrix.os}}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
steps:
- uses: actions/checkout@v3
- name: Setup .NET Core
uses: actions/setup-dotnet@v3
with:
dotnet-version: ${{ env.DOTNET_VERSION }}
- name: Install dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release --no-restore
Dalam komposisi alur kerja sebelumnya:
menentukan
name: build
nama, "build" akan muncul dalam lencana status alur kerja.name: build
Simpul
on
menandakan peristiwa yang memicu alur kerja:on: push: pull_request: branches: [ main ] paths: - '**.cs' - '**.csproj'
- Dipicu ketika
push
ataupull_request
terjadi padamain
cabang di mana setiap file berubah berakhir dengan ekstensi file .cs atau .csproj .
- Dipicu ketika
Simpul
env
mendefinisikan variabel lingkungan bernama (env var).env: DOTNET_VERSION: '6.0.401' # The .NET SDK version to use
- Variabel
DOTNET_VERSION
lingkungan diberi nilai'6.0.401'
. Variabel lingkungan kemudian dirujuk untuk menentukandotnet-version
actions/setup-dotnet@v3
GitHub Action.
- Variabel
Simpul
jobs
menyusun langkah-langkah untuk diambil alur kerja.jobs: build: name: build-${{matrix.os}} runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, windows-latest, macOS-latest] steps: - uses: actions/checkout@v3 - name: Setup .NET Core uses: actions/setup-dotnet@v3 with: dotnet-version: ${{ env.DOTNET_VERSION }} - name: Install dependencies run: dotnet restore - name: Build run: dotnet build --configuration Release --no-restore
Ada satu pekerjaan, bernama
build-<os>
di mana<os>
adalah nama sistem operasi daristrategy/matrix
. Elemenname
danruns-on
bersifat dinamis untuk setiap nilai dalammatrix/os
. Ini akan berjalan pada versi terbaru Ubuntu, Windows, dan macOS.actions/setup-dotnet@v3
Tindakan GitHub diperlukan untuk menyiapkan .NET SDK dengan versi yang ditentukan dariDOTNET_VERSION
variabel lingkungan.(Opsional) Langkah tambahan mungkin diperlukan, tergantung pada beban kerja .NET Anda. Mereka dihilangkan dari contoh ini, tetapi Anda mungkin memerlukan alat tambahan yang diinstal untuk membangun aplikasi Anda.
- Misalnya, saat membangun aplikasi ASP.NET Core Blazor WebAssembly dengan kompilasi Ahead-of-Time (AoT), Anda akan menginstal beban kerja yang sesuai sebelum menjalankan operasi pemulihan/build/penerbitan.
- name: Install WASM Tools Workload run: dotnet workload install wasm-tools
Untuk informasi selengkapnya tentang beban kerja .NET, lihat
dotnet workload install
.Perintah
dotnet restore
dipanggil.Perintah
dotnet build
dipanggil.
Dalam hal ini, pikirkan file alur kerja sebagai komposisi yang mewakili berbagai langkah untuk membangun aplikasi. Banyak perintah .NET CLI tersedia, yang sebagian besar dapat digunakan dalam konteks GitHub Action.
Membuat lencana status alur kerja
Nomenklatur umum bagi repositori GitHub untuk memiliki file README.md di akar direktori repositori. Demikian juga, ada baiknya untuk melaporkan status terbaru untuk berbagai alur kerja. Semua alur kerja dapat menghasilkan lencana status, yang menarik secara visual dalam file README.md . Untuk menambahkan lencana status alur kerja:
Dari repositori GitHub pilih opsi navigasi Tindakan .
Semua alur kerja repositori ditampilkan di sisi kiri, pilih alur kerja yang diinginkan dan tombol elipsis (...).
- Tombol elipsis (...) memperluas opsi menu untuk alur kerja yang dipilih.
Pilih opsi menu Buat lencana status.
Pilih tombol Salin markdown lencana status.
Tempelkan Markdown ke dalam file README.md , simpan file, terapkan, dan dorong perubahan.
Untuk informasi selengkapnya, lihat Menambahkan lencana status alur kerja.
Contoh lencana status alur kerja build
Lulus | Gagal | Tidak ada status |
---|---|---|