Skip to content

.NET

.NET #328

Workflow file for this run

name: .NET
on:
push:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: 8.0.x
# Add NuGet Sources
- name: Create Local NuGet Directory
run: mkdir ~/nuget
- name: Add Local Nuget Source
run: dotnet nuget add source ~/nuget
- name: Add Garage Group NuGet Source
run: >
dotnet nuget add source ${{ vars.GG_NUGET_SOURCE_URL }}
-n garage
-u ${{ secrets.GG_NUGET_SOURCE_USER_NAME }}
-p ${{ secrets.GG_NUGET_SOURCE_USER_PASSWORD }}
--store-password-in-clear-text
# Api.Core.FailureCode
- name: Restore Api.Core.FailureCode
run: dotnet restore ./src/*/*/Api.Core.FailureCode.csproj
- name: Build Api.Core.FailureCode
run: dotnet build ./src/*/*/Api.Core.FailureCode.csproj --no-restore -c Release
- name: Pack Api.Core.FailureCode
run: dotnet pack ./src/*/*/Api.Core.FailureCode.csproj --no-restore -o ~/nuget -c Release
# Api.Core.EntityKey
- name: Restore Api.Core.EntityKey
run: dotnet restore ./src/*/*/Api.Core.EntityKey.csproj
- name: Build Api.Core.EntityKey
run: dotnet build ./src/*/*/Api.Core.EntityKey.csproj --no-restore -c Release
- name: Pack Api.Core.EntityKey
run: dotnet pack ./src/*/*/Api.Core.EntityKey.csproj --no-restore -o ~/nuget -c Release
# Api.Core.EntityKey.Test
- name: Test Api.Core.EntityKey.Test
run: dotnet test ./src/*/*/Api.Core.EntityKey.Test.csproj -c Release
# Api.Core.ExpandedField
- name: Restore Api.Core.ExpandedField
run: dotnet restore ./src/*/*/Api.Core.ExpandedField.csproj
- name: Build Api.Core.ExpandedField
run: dotnet build ./src/*/*/Api.Core.ExpandedField.csproj --no-restore -c Release
- name: Pack Api.Core.ExpandedField
run: dotnet pack ./src/*/*/Api.Core.ExpandedField.csproj --no-restore -o ~/nuget -c Release
# Api.Core.Transaction
- name: Restore Api.Core.Transaction
run: dotnet restore ./src/*/*/Api.Core.Transaction.csproj
- name: Build Api.Core.Transaction
run: dotnet build ./src/*/*/Api.Core.Transaction.csproj --no-restore -c Release
- name: Pack Api.Core.Transaction
run: dotnet pack ./src/*/*/Api.Core.Transaction.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.Impersonate
- name: Restore Api.Abstractions.Impersonate
run: dotnet restore ./src/*/*/Api.Abstractions.Impersonate.csproj
- name: Build Api.Abstractions.Impersonate
run: dotnet build ./src/*/*/Api.Abstractions.Impersonate.csproj --no-restore -c Release
- name: Pack Api.Abstractions.Impersonate
run: dotnet pack ./src/*/*/Api.Abstractions.Impersonate.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.WhoAmI
- name: Restore Api.Abstractions.WhoAmI
run: dotnet restore ./src/*/*/Api.Abstractions.WhoAmI.csproj
- name: Build Api.Abstractions.WhoAmI
run: dotnet build ./src/*/*/Api.Abstractions.WhoAmI.csproj --no-restore -c Release
- name: Pack Api.Abstractions.WhoAmI
run: dotnet pack ./src/*/*/Api.Abstractions.WhoAmI.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.Search
- name: Restore Api.Abstractions.Search
run: dotnet restore ./src/*/*/Api.Abstractions.Search.csproj
- name: Build Api.Abstractions.Search
run: dotnet build ./src/*/*/Api.Abstractions.Search.csproj --no-restore -c Release
- name: Pack Api.Abstractions.Search
run: dotnet pack ./src/*/*/Api.Abstractions.Search.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.EntityUpdate
- name: Restore Api.Abstractions.EntityUpdate
run: dotnet restore ./src/*/*/Api.Abstractions.EntityUpdate.csproj
- name: Build Api.Abstractions.EntityUpdate
run: dotnet build ./src/*/*/Api.Abstractions.EntityUpdate.csproj --no-restore -c Release
- name: Pack Api.Abstractions.EntityUpdate
run: dotnet pack ./src/*/*/Api.Abstractions.EntityUpdate.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.EntityDelete
- name: Restore Api.Abstractions.EntityDelete
run: dotnet restore ./src/*/*/Api.Abstractions.EntityDelete.csproj
- name: Build Api.Abstractions.EntityDelete
run: dotnet build ./src/*/*/Api.Abstractions.EntityDelete.csproj --no-restore -c Release
- name: Pack Api.Abstractions.EntityDelete
run: dotnet pack ./src/*/*/Api.Abstractions.EntityDelete.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.EntityCreate
- name: Restore Api.Abstractions.EntityCreate
run: dotnet restore ./src/*/*/Api.Abstractions.EntityCreate.csproj
- name: Build Api.Abstractions.EntityCreate
run: dotnet build ./src/*/*/Api.Abstractions.EntityCreate.csproj --no-restore -c Release
- name: Pack Api.Abstractions.EntityCreate
run: dotnet pack ./src/*/*/Api.Abstractions.EntityCreate.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.EntitySetGet
- name: Restore Api.Abstractions.EntitySetGet
run: dotnet restore ./src/*/*/Api.Abstractions.EntitySetGet.csproj
- name: Build Api.Abstractions.EntitySetGet
run: dotnet build ./src/*/*/Api.Abstractions.EntitySetGet.csproj --no-restore -c Release
- name: Pack Api.Abstractions.EntitySetGet
run: dotnet pack ./src/*/*/Api.Abstractions.EntitySetGet.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.EntityGet
- name: Restore Api.Abstractions.EntityGet
run: dotnet restore ./src/*/*/Api.Abstractions.EntityGet.csproj
- name: Build Api.Abstractions.EntityGet
run: dotnet build ./src/*/*/Api.Abstractions.EntityGet.csproj --no-restore -c Release
- name: Pack Api.Abstractions.EntityGet
run: dotnet pack ./src/*/*/Api.Abstractions.EntityGet.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.EmailSend
- name: Restore Api.Abstractions.EmailSend
run: dotnet restore ./src/*/*/Api.Abstractions.EmailSend.csproj
- name: Build Api.Abstractions.EmailSend
run: dotnet build ./src/*/*/Api.Abstractions.EmailSend.csproj --no-restore -c Release
- name: Pack Api.Abstractions.EmailSend
run: dotnet pack ./src/*/*/Api.Abstractions.EmailSend.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.FetchXml
- name: Restore Api.Abstractions.FetchXml
run: dotnet restore ./src/*/*/Api.Abstractions.FetchXml.csproj
- name: Build Api.Abstractions.FetchXml
run: dotnet build ./src/*/*/Api.Abstractions.FetchXml.csproj --no-restore -c Release
- name: Pack Api.Abstractions.FetchXml
run: dotnet pack ./src/*/*/Api.Abstractions.FetchXml.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions.ChangeSetExecute
- name: Restore Api.Abstractions.ChangeSetExecute
run: dotnet restore ./src/*/*/Api.Abstractions.ChangeSetExecute.csproj
- name: Build Api.Abstractions.ChangeSetExecute
run: dotnet build ./src/*/*/Api.Abstractions.ChangeSetExecute.csproj --no-restore -c Release
- name: Pack Api.Abstractions.ChangeSetExecute
run: dotnet pack ./src/*/*/Api.Abstractions.ChangeSetExecute.csproj --no-restore -o ~/nuget -c Release
# Api.Abstractions
- name: Restore Api.Abstractions
run: dotnet restore ./src/*/*/Api.Abstractions.csproj
- name: Build Api.Abstractions
run: dotnet build ./src/*/*/Api.Abstractions.csproj --no-restore -c Release
- name: Pack Api.Abstractions
run: dotnet pack ./src/*/*/Api.Abstractions.csproj --no-restore -o ~/nuget -c Release
# Api
- name: Restore Api
run: dotnet restore ./src/*/*/Api.csproj
- name: Build Api
run: dotnet build ./src/*/*/Api.csproj --no-restore -c Release
- name: Pack Api
run: dotnet pack ./src/*/*/Api.csproj --no-restore -o ~/nuget -c Release
# Api.Test
- name: Test Api.Test
run: dotnet test ./src/*/*/Api.Test.csproj -o ~/nuget -c Release
# Api.Impersonation
- name: Restore Api.Impersonation
run: dotnet restore ./src/*/*/Api.Impersonation.csproj
- name: Build Api.Impersonation
run: dotnet build ./src/*/*/Api.Impersonation.csproj --no-restore -c Release
- name: Pack Api.Impersonation
run: dotnet pack ./src/*/*/Api.Impersonation.csproj --no-restore -o ~/nuget -c Release
# Api.Impersonation.Test
- name: Test Api.Impersonation.Test
run: dotnet test ./src/*/*/Api.Impersonation.Test.csproj -o ~/nuget -c Release
# Push
- name: Push Packages
if: ${{ github.ref == 'refs/heads/main' }}
run: >
dotnet nuget push "../../../nuget/*.nupkg"
-s ${{ vars.GG_NUGET_SOURCE_URL }}
-k ${{ secrets.GG_NUGET_SOURCE_USER_PASSWORD }}
--skip-duplicate