Skip to content

DATAAUTHOR-255

DATAAUTHOR-255 #3

Workflow file for this run

name: .NET CI/CD
on:
push:
branches:
- master
- 'release/**'
pull_request:
branches:
- master
- 'release/**'
jobs:
build_test:
name: Build & Test
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/dotnet/sdk:5.0-buster-slim
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build -c Release --no-restore
- name: Test
run: |
dotnet test -c Release --no-build --no-restore ./ --logger "trx;LogFileName=testresults.trx" --filter "Category!=NotWorking" || {
cat Terradue.OpenSearch.Client.Test/TestResults/testresults.trx
exit 1
}
- name: Upload Test Results
uses: actions/upload-artifact@v4
with:
name: test-results
path: Terradue.OpenSearch.Client/TestResults/testresults.trx
package:
name: Package Artifacts
runs-on: ubuntu-latest
container:
image: mcr.microsoft.com/dotnet/sdk:5.0-buster-slim
needs: build_test
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Define Version
run: |
echo "VERSION_TOOL=$(grep -oP '(?<=<Version>).*?(?=</Version>)' Terradue.OpenSearch.Client/Terradue.OpenSearch.Client.csproj)" >> $GITHUB_ENV
echo "DOTNET_ARGS=$(if [[ "${{ github.ref }}" =~ refs/heads/release/.* || "${{ github.ref }}" == refs/heads/master ]]; then echo ""; else echo "--version-suffix SNAPSHOT$(date -u +%Y%m%dT%H%M%S)"; fi)" >> $GITHUB_ENV
- name: Build & Package
run: |
dotnet tool restore
dotnet rpm -c Release -r linux-x64 -f net5.0 $DOTNET_ARGS Terradue.OpenSearch.Client/Terradue.OpenSearch.Client.csproj
dotnet deb -c Release -r linux-x64 -f net5.0 $DOTNET_ARGS Terradue.OpenSearch.Client/Terradue.OpenSearch.Client.csproj
dotnet zip -c Release -r linux-x64 -f net5.0 $DOTNET_ARGS Terradue.OpenSearch.Client/Terradue.OpenSearch.Client.csproj
dotnet publish -f net5.0 -r linux-x64 -p:PublishSingleFile=true $DOTNET_ARGS --self-contained true Terradue.OpenSearch.Client/Terradue.OpenSearch.Client.csproj
- name: Upload Packages
uses: actions/upload-artifact@v4
with:
name: packages
path: Terradue.OpenSearch.Client/bin/**