Skip to content

Commit 4a9dc72

Browse files
committed
Create CD workflow
1 parent 21b0b60 commit 4a9dc72

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

.github/workflows/cd.yml

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: CD
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
build:
8+
runs-on: windows-latest
9+
environment: NuGet
10+
strategy:
11+
fail-fast: false
12+
matrix:
13+
configuration: [Release]
14+
platform: [Any CPU]
15+
env:
16+
WORKING_DIR: ${{ github.workspace }}
17+
SOLUTION_PATH: '${{ github.workspace }}\CubeKit.sln'
18+
HEAD_PROJECTS_DIR: '${{ github.workspace }}\src\platforms'
19+
HEAD_EXTENSIONS_DIR: '${{ github.workspace }}\src\extensions'
20+
CONFIGURATION: ${{ matrix.configuration }}
21+
ARCHITECTURE: ${{ matrix.platform }}
22+
23+
steps:
24+
- name: Checkout the repository
25+
uses: actions/checkout@v4
26+
- name: Setup MSBuild
27+
uses: microsoft/setup-msbuild@v2
28+
- name: Setup NuGet
29+
uses: NuGet/setup-nuget@v2
30+
- name: Setup .NET
31+
uses: actions/setup-dotnet@v4
32+
with:
33+
dotnet-version: 9.x
34+
35+
- name: Restore project
36+
shell: pwsh
37+
run: |
38+
msbuild $env:SOLUTION_PATH `
39+
-t:Restore `
40+
-p:Platform=$env:ARCHITECTURE `
41+
-p:Configuration=$env:CONFIGURATION
42+
43+
- name: Build CubeKit
44+
run: |
45+
msbuild "$env:SOLUTION_PATH" `
46+
-t:Build `
47+
-p:Platform=$env:PLATFORM `
48+
-p:Configuration=$env:CONFIGURATION
49+
50+
- name: Package CubeKit
51+
run: dotnet pack ${{ env.PACKAGE_PROJECT_PATH }} --configuration Release --no-build -o ./output
52+
53+
- name: Publish package to NuGet
54+
run: dotnet nuget push ./output/*.nupkg --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json
55+
# TODO: Publish symbols as well

0 commit comments

Comments
 (0)