Skip to content

chore(release): version packages #80

chore(release): version packages

chore(release): version packages #80

name: Security mutation testing
on:
workflow_dispatch:
pull_request:
paths:
- ".github/workflows/security-mutation.yml"
- ".github/actions/setup-bun/**"
- "package.json"
- "bun.lock"
- "bunfig.toml"
- "scripts/run-security-mutations.ts"
- "scripts/run-security-mutations.test.ts"
- "server/application/pom.xml"
- "server/generated-clients/**"
- "server/.mvn/**"
- "server/mvnw"
- "server/pom.xml"
- "server/application/src/**/java/de/tum/cit/aet/hephaestus/core/auth/oauth/**"
- "server/application/src/**/java/de/tum/cit/aet/hephaestus/core/security/**"
- "server/application/src/**/java/de/tum/cit/aet/hephaestus/integration/core/connection/**"
- "server/application/src/**/java/de/tum/cit/aet/hephaestus/integration/core/oauth/state/**"
- "server/application/src/**/java/de/tum/cit/aet/hephaestus/integration/scm/gitlab/webhook/**"
permissions:
contents: read
concurrency:
group: security-mutation-${{ github.ref }}
cancel-in-progress: true
jobs:
pitest:
name: Security mutation suite
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0
with:
distribution: temurin
java-version: "21"
cache: maven
cache-dependency-path: "server/**/pom.xml"
- uses: ./.github/actions/setup-bun
- name: Install repository tooling
run: bun install --frozen-lockfile
- name: Run security mutation suite
run: timeout --kill-after=30s 8m bun run test:server:mutation
- name: Upload mutation report
if: always()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: security-mutation-report-${{ github.run_id }}-${{ github.run_attempt }}
path: server/application/target/pit-reports
if-no-files-found: error
retention-days: 30