Skip to content

ci: add continuous integration #17

ci: add continuous integration

ci: add continuous integration #17

Workflow file for this run

name: continuous integration
on:
workflow_dispatch:
pull_request:
branches: [main]
push:
branches: [main]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs:
integration:
runs-on: ubuntu-latest
defaults:
run:
working-directory: src
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Run megalinter
uses: oxsecurity/megalinter:v7.8.0@sha256:b52dea560364564a896b0dc7e5099805190128e1a1236970c9d415121c03a195
env:
DISABLE_LINTERS: SPELL_CSPELL
EDITORCONFIG_EDITORCONFIG_CHECKER_ARGUMENTS: -disable-end-of-line
- name: Restore dotnet tools
run: dotnet tool restore
- name: Test for outdated dependencies
run: dotnet outdated --fail-on-updates
working-directory: src
- name: SonarCloud configuration
run: dotnet sonarscanner begin /o:arwynfr /k:ArwynFr_dotnet-integration-testing /d:sonar.host.url=https://sonarcloud.io
env:
SONAR_TOKEN: ${{ secrets.sonar_token }}
- name: Run automated tests
run: dotnet test --settings runsettings.xml --results-directory TestResults
working-directory: src/ArwynFr.IntegrationTesting.Tests
- name: SonarCloud analyze
run: dotnet sonarscanner end
- name: Continuous integration
run: gh pr merge --squash --auto
env:
GH_TOKEN: ${{ github.token }}