-
Notifications
You must be signed in to change notification settings - Fork 0
38 lines (29 loc) · 1.32 KB
/
publish-nuget.yml
File metadata and controls
38 lines (29 loc) · 1.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
name: Publish NuGet Package
on:
push:
branches:
- main # Публикация при пуше в ветку main
paths:
- 'NuclearAbilitySystem/**' # Укажите правильный путь к проекту, если он отличается
jobs:
build-and-publish:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup .NET SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: '6.0.x' # Используем .NET 6.0, как указано в .csproj
- name: Restore dependencies
run: dotnet restore NuclearAbilitySystem/NuclearAbilitySystem.csproj
- name: Build
run: dotnet build NuclearAbilitySystem/NuclearAbilitySystem.csproj --configuration Test --no-restore
- name: Test
run: dotnet test NuclearAbilitySystem/NuclearAbilitySystem.csproj --configuration Test --no-build --verbosity normal
- name: Pack NuGet Package (auto-generated on build)
run: dotnet build NuclearAbilitySystem/NuclearAbilitySystem.csproj --configuration Release --no-restore
- name: Publish to NuGet
env:
NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }}
run: dotnet nuget push NuclearAbilitySystem/bin/Release/*.nupkg --api-key $NUGET_API_KEY --source https://api.nuget.org/v3/index.json