Skip to content

build(deps-dev): bump @commitlint/cli from 17.6.7 to 17.8.0 #1489

build(deps-dev): bump @commitlint/cli from 17.6.7 to 17.8.0

build(deps-dev): bump @commitlint/cli from 17.6.7 to 17.8.0 #1489

Workflow file for this run

name: Pre-merge (Coffee break)
on:
pull_request:
types: [ opened, reopened, synchronize ]
branches:
- main
jobs:
analyze-code:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Cache Paket
uses: actions/cache@v3
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: Parse repository name
run: echo REPOSITORY_NAME=$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") >> $GITHUB_ENV
shell: bash
- name: Setup .NET Core
uses: actions/setup-dotnet@v3
with:
dotnet-version: ${{ secrets.VBR_DOTNET_VERSION }}
- name: .NET version
shell: bash
run: dotnet --info
- name: Cache SonarCloud packages
uses: actions/cache@v3
with:
path: ~/sonar/cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar
- name: Set up JDK 17
uses: actions/setup-java@v1
with:
java-version: 17
- name: Restore dotnet tools
shell: bash
run: |
dotnet tool restore
- name: Cache SonarCloud scanner
id: cache-sonar-scanner
uses: actions/cache@v3
with:
path: ./.sonar/scanner
key: ${{ runner.os }}-sonar-scanner
restore-keys: ${{ runner.os }}-sonar-scanner
- name: Install SonarCloud scanner
if: steps.cache-sonar-scanner.outputs.cache-hit != 'true'
shell: bash
run: |
mkdir .sonar
mkdir .sonar/scanner
dotnet tool update dotnet-sonarscanner --tool-path ./.sonar/scanner
- name: Start sonar scanner
env:
GITHUB_TOKEN: ${{ secrets.VBR_ACTIONS_TOKEN }} # Needed to get PR information, if any
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
shell: bash
run: |
./.sonar/scanner/dotnet-sonarscanner begin /k:"Informatievlaanderen_association-registry" /o:"informatievlaanderen" /d:sonar.login="${{ secrets.SONAR_TOKEN }}" /d:sonar.host.url="https://sonarcloud.io" /d:sonar.cs.dotcover.reportsPaths=dotCover.Output.html
- name: Paket install
shell: bash
run: dotnet paket install
- name: Paket restore
shell: bash
run: dotnet paket restore
- name: Dotnet restore
shell: bash
run: dotnet restore --runtime linux-x64
- name: Dotnet build
shell: bash
run: dotnet build --no-restore
- name: Analyze with sonar scanner
env:
GITHUB_TOKEN: ${{ secrets.VBR_ACTIONS_TOKEN }} # Needed to get PR information, if any
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
shell: bash
run: |
./.sonar/scanner/dotnet-sonarscanner end /d:sonar.login="${{ secrets.SONAR_TOKEN }}"
build:
if: github.repository_owner == 'Informatievlaanderen'
name: Run Tests
runs-on: ubuntu-latest
strategy:
matrix:
projects:
[
"test/AssociationRegistry.Test",
"test/AssociationRegistry.Test.Public.Api",
"test/AssociationRegistry.Test.Admin.Api",
"test/AssociationRegistry.Test.Acm.Api",
]
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Run es container
shell: bash
if: matrix.projects == 'test/AssociationRegistry.Test.Public.Api' || matrix.projects == 'test/AssociationRegistry.Test.Admin.Api'
run: |
docker run -d --name elasticsearch -p 9200:9200 -e ELASTIC_PASSWORD=local_development -e discovery.type=single-node -e xpack.security.transport.ssl.enabled=false docker.elastic.co/elasticsearch/elasticsearch:8.4.3
- name: Run wiremock container
shell: bash
if: matrix.projects == 'test/AssociationRegistry.Test.Admin.Api'
run: |
docker run -d --name wiremock -v ${{ github.workspace }}/wiremock:/home/wiremock -p 8080:8080 wiremock/wiremock:2.35.0-1 --global-response-templating --verbose
- name: Run ACM container
shell: bash
if: matrix.projects == 'test/AssociationRegistry.Test.Acm.Api' || matrix.projects == 'test/AssociationRegistry.Test.Admin.Api'
run: |
docker run -d --name acm -p 5051:80 -v ${{ github.workspace }}/identityserver:/home/identityserver ghcr.io/informatievlaanderen/identity-server-fake:1284967
- name: Run db container
shell: bash
run: |
docker run -d --name db -p 5432:5432 -e POSTGRES_USER=root -e POSTGRES_PASSWORD=root -e POSTGRES_DB=verenigingsregister postgres:15.0
- name: Cache Paket
uses: actions/cache@v3
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: Cache Python
uses: actions/cache@v3
env:
cache-name: cache-pip
with:
path: ~/.cache/pip
key: ${{ runner.os }}-build-${{ env.cache-name }}
- name: Parse repository name
run: echo REPOSITORY_NAME=$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//") >> $GITHUB_ENV
shell: bash
- name: Setup Node.js
uses: actions/setup-node@v3
- name: Setup .NET Core
uses: actions/setup-dotnet@v3
with:
dotnet-version: ${{ secrets.VBR_DOTNET_VERSION }}
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Node version
shell: bash
run: node --version
- name: .NET version
shell: bash
run: dotnet --info
- name: Python version
shell: bash
run: python --version
- name: Install NPM dependencies
shell: bash
run: npm install --legacy-peer-deps
- name: Install Python dependencies
shell: bash
run: |
python -m pip install --upgrade pip
pip install requests markdown argparse
- name: Restore dotnet tools
shell: bash
run: |
dotnet tool restore
- name: Build
shell: bash
run: ./build.sh Build
- name: Wait for db container
shell: bash
run: |
timeout 90s bash -c "until docker exec db pg_isready ; do sleep 5 ; done"
- name: Run all tests
env:
LIVEMAGDAOPTIONS__CLIENTCERTIFICATE: ${{ secrets.LIVEMAGDAOPTIONS_CLIENTCERTIFICATE }}
LIVEMAGDAOPTIONS__CLIENTCERTIFICATEPASSWORD: ${{ secrets.LIVEMAGDAOPTIONS_CLIENTCERTIFICATEPASSWORD }}
LIVEMAGDAOPTIONS__GEEFONDERNEMINGENDPOINT: ${{ secrets.LIVEMAGDAOPTIONS_GEEFONDERNEMINGENDPOINT }}
LIVEMAGDAOPTIONS__AFZENDER: ${{ secrets.LIVEMAGDAOPTIONS_AFZENDER }}
LIVEMAGDAOPTIONS__HOEDANIGHEID: ${{ secrets.LIVEMAGDAOPTIONS_HOEDANIGHEID }}
LIVEMAGDAOPTIONS__ONTVANGER: ${{ secrets.LIVEMAGDAOPTIONS_ONTVANGER }}
IGNORE_MAGDA_TESTS: ${{ secrets.LIVEMAGDAOPTIONS_CLIENTCERTIFICATE == '' && 'true' || 'false' }}
run: dotnet test ${{matrix.projects}} --logger html
- name: Archive code coverage results
if: ${{ always() }}
uses: actions/upload-artifact@v3
with:
name: test-report
path: ${{matrix.projects}}/TestResults/*.html
- name: Shows logs ACM container
if: ${{ failure() }}
shell: bash
run: |
docker logs acm
- name: Shows logs elasticsearch container
if: ${{ failure() }}
shell: bash
run: |
docker logs elasticsearch
- name: Shows logs wiremock container
if: ${{ failure() }}
shell: bash
run: |
docker logs wiremock
- name: Shows logs db container
if: ${{ failure() }}
shell: bash
run: |
docker logs db
notify:
if: ${{ always() }}
name: Notify slack
runs-on: ubuntu-latest
needs: [ build ]
steps:
- name: Post to a Slack channel
id: slack
uses: slackapi/[email protected]
with:
# Slack channel id, channel name, or user id to post message.
# See also: https://api.slack.com/methods/chat.postMessage#channels
channel-id: ${{ secrets.SLACK_CHANNEL_ID }}
# For posting a simple plain text message
slack-message: "GitHub build result: ${{ job.status }}\n${{ github.event.pull_request.html_url || github.event.head_commit.url }}"
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}