Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze quickstart leert u hoe u een GitHub-werkstroom maakt om de compilatie van uw .NET-broncode in GitHub te valideren. Het compileren van uw .NET-code is een van de meest eenvoudige validatiestappen die u kunt uitvoeren om ervoor te zorgen dat de kwaliteit van updates voor uw code wordt gegarandeerd. Als code niet wordt gecompileerd (of gebouwd), is het een eenvoudig afschrikmiddel en moet het een duidelijk teken zijn dat de code moet worden opgelost.
Vereisten
- Een GitHub-account.
- Een .NET-broncodeopslagplaats.
Een werkstroombestand maken
Voeg in de GitHub-opslagplaats een nieuw YAML-bestand toe aan de map .github/workflows . Kies een betekenisvolle bestandsnaam, iets dat duidelijk aangeeft wat de werkstroom moet doen. Zie Werkstroombestand voor meer informatie.
Belangrijk
GitHub vereist dat werkstroomsamenstellingsbestanden in de map .github/workflows worden geplaatst.
Werkstroombestanden definiëren doorgaans een samenstelling van een of meer GitHub Action via de jobs.<job_id>/steps[*]. Zie de werkstroomsyntaxis voor GitHub Actions voor meer informatie.
Maak een nieuw bestand met de naam build-validation.yml, kopieer en plak de volgende YML-inhoud erin:
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
In de voorgaande werkstroomsamenstelling:
De
name: buildnaam wordt gedefinieerd, 'build' wordt weergegeven in werkstroomstatusbadges.name: buildHet
onknooppunt geeft de gebeurtenissen aan die de werkstroom activeren:on: push: pull_request: branches: [ main ] paths: - '**.cs' - '**.csproj'- Geactiveerd wanneer een
pushofpull_requestoptreedt in demainvertakking waar bestanden zijn gewijzigd die eindigen op de bestandsextensies .cs of .csproj .
- Geactiveerd wanneer een
Het
envknooppunt definieert benoemde omgevingsvariabelen (env var).env: DOTNET_VERSION: '6.0.401' # The .NET SDK version to use- De omgevingsvariabele
DOTNET_VERSIONwordt de waarde'6.0.401'toegewezen. Er wordt later naar de omgevingsvariabele verwezen om dedotnet-versionactions/setup-dotnet@v3GitHub Action op te geven.
- De omgevingsvariabele
Het
jobsknooppunt bouwt de stappen uit die de werkstroom moet uitvoeren.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-restoreEr is één taak, met de naam
build-<os>van het<os>besturingssysteem van destrategy/matrix. Denameelementen zijnruns-ondynamisch voor elke waarde in dematrix/os. Dit wordt uitgevoerd op de nieuwste versies van Ubuntu, Windows en macOS.De
actions/setup-dotnet@v3GitHub Action is vereist om de .NET SDK in te stellen met de opgegeven versie van deDOTNET_VERSIONomgevingsvariabele.(Optioneel) Er zijn mogelijk extra stappen vereist, afhankelijk van uw .NET-workload. Ze worden weggelaten uit dit voorbeeld, maar mogelijk hebt u extra hulpprogramma's nodig om uw apps te bouwen.
- Wanneer u bijvoorbeeld een ASP.NET Core Blazor WebAssembly-toepassing bouwt met AoT-compilatie (Ahead-of-Time), installeert u de bijbehorende workload voordat u herstel-/build-/publicatiebewerkingen uitvoert.
- name: Install WASM Tools Workload run: dotnet workload install wasm-toolsZie voor meer informatie over .NET-workloads
dotnet workload install.De
dotnet restoreopdracht wordt aangeroepen.De
dotnet buildopdracht wordt aangeroepen.
In dit geval kunt u een werkstroombestand beschouwen als een samenstelling die de verschillende stappen vertegenwoordigt voor het bouwen van een toepassing. Veel .NET CLI-opdrachten zijn beschikbaar, waarvan de meeste kunnen worden gebruikt in de context van een GitHub Action.
Badge Een werkstroomstatus maken
Het is gebruikelijk dat GitHub-opslagplaatsen een README.md bestand hebben in de hoofdmap van de opslagplaatsmap. Op dezelfde manier is het handig om de meest recente status voor verschillende werkstromen te rapporteren. Alle werkstromen kunnen een statusbadge genereren, die visueel aantrekkelijk zijn in het README.md-bestand . De badge Werkstroomstatus toevoegen:
Selecteer in de GitHub-opslagplaats de optie Actiesnavigatie .
Alle werkstromen van de opslagplaats worden aan de linkerkant weergegeven, selecteer de gewenste werkstroom en de knop met het beletselteken (...).
- Met de knop met het beletselteken (...) worden de menuopties voor de geselecteerde werkstroom uitgevouwen.
Selecteer de menuoptie Statusbadge maken.
Selecteer de markdown-knop Status kopiëren.
Plak de Markdown in het README.md bestand, sla het bestand op, voer de wijzigingen door en push deze.
Zie De badge Een werkstroomstatus toevoegen voor meer informatie.
Badge Voorbeeld van buildwerkstroomstatus
| Geslaagd | Mislukt | Geen status |
|---|---|---|

