Skip to content

Integration Tests

Integration Tests #344

Workflow file for this run

name: Integration Tests
on:
schedule:
- cron: "0 10 * * 1-5"
workflow_dispatch:
jobs:
build:
if: github.repository_owner == 'Informatievlaanderen'
name: Run Integration Tests
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Cache Paket
uses: actions/cache@v4
env:
cache-name: cache-paket
with:
path: packages
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('paket.lock') }}
restore-keys: |
${{ runner.os }}-build-${{ env.cache-name }}-
- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ vars.VBR_DOTNET_VERSION_8 }}
- name: .NET version
shell: bash
run: dotnet --info
- name: Restore packages
shell: bash
run: |
dotnet tool restore
dotnet paket install
- name: Build
shell: bash
run: |
dotnet build --nologo --no-restore --no-incremental --configuration Debug RoadRegistry.sln
- name: Test
shell: bash
run: |
ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/local/bin/docker-compose
dotnet test --nologo --no-build --filter 'FullyQualifiedName~IntegrationTests' RoadRegistry.sln
env:
OAuth2IntrospectionOptions__ClientId: ${{ secrets.VBR_ACMIDM_INTROSPECTION_CLIENT_ID_TST }}
OAuth2IntrospectionOptions__ClientSecret: ${{ secrets.VBR_ACMIDM_INTROSPECTION_CLIENT_SECRET_TST }}
ClientId: ${{ secrets.VBR_ACMIDM_CLIENT_ID_TST }}
ClientSecret: ${{ secrets.VBR_ACMIDM_CLIENT_SECRET_TST }}
notify_failure:
if: ${{ github.repository_owner == 'Informatievlaanderen' && failure() }}
name: Notify integration tests failed
runs-on: ubuntu-latest
needs: [ build ]
steps:
- name: Notify integration tests failed
id: slack
uses: slackapi/[email protected]
with:
channel-id: '#team-wegenregister-dev'
slack-message: ":x: Integration Tests of road-registry have failed. View run at ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
env:
SLACK_BOT_TOKEN: ${{ secrets.VBR_SLACK_BOT_TOKEN }}
SLACK_CHANNEL: ${{ secrets.VBR_NOTIFIER_CHANNEL_NAME }}