Skip to content

csharp windows snippets #159

csharp windows snippets

csharp windows snippets #159

name: csharp windows snippets
on:
pull_request:
schedule:
- cron: "15 7 * * *"
workflow_dispatch:
permissions:
contents: read
jobs:
csharp-windows-snippets:
outputs:
status: ${{ job.status }}
permissions:
contents: read
pull-requests: write
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
senzingsdk-version: [production-v4, staging-v4]
include:
- dotnet-version: "8"
steps:
- name: checkout repository
uses: actions/checkout@v5
with:
fetch-depth: 0
- uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ matrix.dotnet-version }}
- name: install Senzing SDK
uses: senzing-factory/github-action-install-senzing-sdk@v3
with:
senzingsdk-version: ${{ matrix.senzingsdk-version }}
- name: configure local nuget repo
run: |
$Env:sdk_package = Get-ChildItem -Path "$Env:USERPROFILE\Senzing\er\sdk\dotnet\" -Recurse | Where-Object {$_.Name -match "^Senzing.SDK*"} | Select-Object -ExpandProperty Name
mkdir $Env:USERPROFILE\dev\nuget\packages
cd $Env:USERPROFILE\dev\nuget\packages
dir
dotnet nuget add source $Env:USERPROFILE\dev\nuget\packages -n senzing
dotnet nuget push "$Env:USERPROFILE\Senzing\er\sdk\dotnet\${Env:sdk_package}" --source senzing
dotnet nuget list source
- name: Add to "Path" environment variable
run: |
Add-Content $env:GITHUB_PATH "$Env:USERPROFILE\senzing\er\lib"
- name: run csharp snippets
run: |
cd ${Env:GITHUB_WORKSPACE}/csharp/runner
dotnet run --project SnippetRunner all
slack-notification:
needs: [csharp-windows-snippets]
if: ${{ always() && contains(fromJSON('["failure", "cancelled"]'), needs.csharp-windows-snippets.outputs.status ) && github.event_name == 'schedule' }}
secrets:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
uses: senzing-factory/build-resources/.github/workflows/build-failure-slack-notification.yaml@v2
with:
job-status: ${{ needs.csharp-windows-snippets.outputs.status }}