|
@@ -0,0 +1,69 @@
|
|
|
+
|
|
|
+name: Build
|
|
|
+on: [push, pull_request]
|
|
|
+
|
|
|
+env:
|
|
|
+ BUILD_DOTNET_VERSION: 3.1.x
|
|
|
+ BUILD_LINUX_TEST_TFM: netcoreapp3.1
|
|
|
+ DOTNET_NOLOGO: 1
|
|
|
+
|
|
|
+jobs:
|
|
|
+ windows:
|
|
|
+ name: Windows
|
|
|
+ runs-on: windows-latest
|
|
|
+ steps:
|
|
|
+ - name: Checkout
|
|
|
+ uses: actions/checkout@v2
|
|
|
+
|
|
|
+ - name: Setup .NET
|
|
|
+ uses: actions/setup-dotnet@v1
|
|
|
+ with:
|
|
|
+ dotnet-version: ${{ env.BUILD_DOTNET_VERSION }}
|
|
|
+
|
|
|
+ - name: Restore
|
|
|
+ run: dotnet restore src/Abc.Zebus.sln
|
|
|
+
|
|
|
+ - name: Build
|
|
|
+ run: dotnet build --configuration Release --no-restore src/Abc.Zebus.sln
|
|
|
+
|
|
|
+ - name: Pack
|
|
|
+ run: dotnet pack --configuration Release --no-build src/Abc.Zebus.sln
|
|
|
+
|
|
|
+ - name: Test
|
|
|
+ run: dotnet test --configuration Release --no-build src/Abc.Zebus.sln
|
|
|
+
|
|
|
+ - name: Upload NuGet
|
|
|
+ uses: actions/upload-artifact@v2
|
|
|
+ with:
|
|
|
+ name: NuGet
|
|
|
+ path: output/*.nupkg
|
|
|
+
|
|
|
+ linux:
|
|
|
+ name: Linux
|
|
|
+ runs-on: ubuntu-latest
|
|
|
+ steps:
|
|
|
+ - name: Checkout
|
|
|
+ uses: actions/checkout@v2
|
|
|
+
|
|
|
+ - name: Setup .NET
|
|
|
+ uses: actions/setup-dotnet@v1
|
|
|
+ with:
|
|
|
+ dotnet-version: ${{ env.BUILD_DOTNET_VERSION }}
|
|
|
+
|
|
|
+ - name: Install RocksDb dependencies
|
|
|
+ run: sudo apt-get install libsnappy-dev
|
|
|
+
|
|
|
+ - name: Restore
|
|
|
+ run: dotnet restore src/Abc.Zebus.sln
|
|
|
+
|
|
|
+ - name: Build
|
|
|
+ run: |
|
|
|
+ for testProject in src/**/*.Tests.csproj; do
|
|
|
+ dotnet build --configuration Release --framework ${{ env.BUILD_LINUX_TEST_TFM }} --no-restore $testProject
|
|
|
+ done
|
|
|
+
|
|
|
+ - name: Test
|
|
|
+ run: |
|
|
|
+ for testProject in src/**/*.Tests.csproj; do
|
|
|
+ dotnet test --configuration Release --framework ${{ env.BUILD_LINUX_TEST_TFM }} --no-build $testProject
|
|
|
+ done
|