Skip to content

Commit 1bf199f

Browse files
committed
Add GitHub Actions workflow for build and publish process
1 parent 9507abe commit 1bf199f

2 files changed

Lines changed: 66 additions & 1 deletion

File tree

.github/workflows/build.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Build and Publish
2+
3+
on:
4+
push:
5+
branches: [ master ]
6+
tags: [ 'v*' ]
7+
pull_request:
8+
branches: [ master ]
9+
10+
env:
11+
DOTNET_VERSION: '8.0.x'
12+
13+
jobs:
14+
build:
15+
runs-on: windows-latest
16+
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v4
20+
21+
- name: Setup .NET
22+
uses: actions/setup-dotnet@v4
23+
with:
24+
dotnet-version: ${{ env.DOTNET_VERSION }}
25+
26+
- name: Restore dependencies
27+
run: dotnet restore
28+
29+
- name: Build
30+
run: dotnet build --configuration Release --no-restore
31+
32+
- name: Test
33+
run: dotnet test --configuration Release --no-build --verbosity normal
34+
35+
- name: Pack
36+
run: dotnet pack --configuration Release --no-build --output ./artifacts
37+
38+
- name: Upload artifacts
39+
uses: actions/upload-artifact@v4
40+
with:
41+
name: nuget-package
42+
path: ./artifacts/*.nupkg
43+
44+
publish:
45+
runs-on: windows-latest
46+
needs: build
47+
if: startsWith(github.ref, 'refs/tags/v')
48+
49+
steps:
50+
- name: Download artifacts
51+
uses: actions/download-artifact@v4
52+
with:
53+
name: nuget-package
54+
path: ./artifacts
55+
56+
- name: Setup .NET
57+
uses: actions/setup-dotnet@v4
58+
with:
59+
dotnet-version: ${{ env.DOTNET_VERSION }}
60+
61+
- name: Publish to NuGet
62+
run: dotnet nuget push ./artifacts/*.nupkg --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,10 @@
22

33
Experimental port of System.Messaging (for .NET Core)
44

5-
[![Image](https://img.shields.io/nuget/v/Experimental.System.Messaging.svg)](https://www.nuget.org/packages/Experimental.System.Messaging)
5+
[![NuGet Version](https://img.shields.io/nuget/v/Experimental.System.Messaging.svg)](https://www.nuget.org/packages/Experimental.System.Messaging)
6+
[![NuGet Downloads](https://img.shields.io/nuget/dt/Experimental.System.Messaging.svg)](https://www.nuget.org/packages/Experimental.System.Messaging)
7+
[![Build](https://github.com/dotnetdev-kr/Experimental.System.Messaging/actions/workflows/build.yml/badge.svg)](https://github.com/dotnetdev-kr/Experimental.System.Messaging/actions/workflows/build.yml)
8+
[![License](https://img.shields.io/badge/license-Ms--RL-blue.svg)](LICENSE.txt)
69

710
## Introduction
811

0 commit comments

Comments
 (0)