.NET
Build actions for .NET projects using the .NET SDK.
Available Actions
| Action | Description |
|---|---|
dotnet-setup | Install .NET SDK |
dotnet-repository-login | Configure NuGet sources |
dotnet-build | Build and test |
dotnet-cut-tag | Bump version and create tag |
dotnet-repository-publish | Publish NuGet packages |
dotnet-docker-publish | Build and push Docker image |
Version File
.NET reads and writes versions in *.csproj:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<Version>1.2.3</Version>
</PropertyGroup>
</Project>
Example Usage
steps:
- uses: actions/checkout@v4
- uses: p6m-actions/dotnet-setup@v1
- uses: p6m-actions/dotnet-repository-login@v1
with:
source-url: https://${{ vars.ARTIFACTORY_HOSTNAME }}/artifactory/api/nuget/v3/nuget
username: ${{ secrets.ARTIFACTORY_USERNAME }}
password: ${{ secrets.ARTIFACTORY_IDENTITY_TOKEN }}
- uses: p6m-actions/dotnet-build@v1
- uses: p6m-actions/dotnet-docker-publish@v1
with:
image: ${{ vars.ARTIFACTORY_HOSTNAME }}/${{ vars.ARTIFACTORY_PROJECT }}-docker-local/applications/my-service
platforms: linux/amd64,linux/arm64
Dockerfile
note
Dockerfile patterns depend on your specific project structure. The dotnet-docker-publish action handles building and publishing the container image using your project's Dockerfile.
See Containerization for general patterns including:
- Multi-stage builds vs copying pre-built artifacts
- Non-root user configuration
- Health check setup
Related
- .NET Setup Guide - Local development environment
- Containerization - General container patterns