Skip to content

Vulnerability Project frontend improvements (#2478) #11426

Vulnerability Project frontend improvements (#2478)

Vulnerability Project frontend improvements (#2478) #11426

name: Build and test
on:
pull_request:
push:
branches:
- 'master'
concurrency:
# https://docs.github.com/en/actions/using-jobs/using-concurrency
# The latest queued workflow is preferred; the ones already in progress get cancelled
# Workflows on master branch shouldn't be cancelled, that's why they are identified by commit SHA
group: ${{ github.ref == 'refs/heads/master' && format('{0}-{1}', github.workflow, github.sha) || format('{0}-{1}', github.workflow, github.ref) }}
cancel-in-progress: true
jobs:
build_save-cloud-common:
name: Build and test save-cloud-common
uses: ./.github/workflows/build_and_test_reusable.yml
with:
module: save-cloud-common
gradle-cache-read-only: ${{ github.ref != 'refs/heads/master' && github.event_name != 'pull_request' }}
build_save-orchestrator-common:
name: Build and test save-orchestrator-common
needs: [ build_save-cloud-common ]
uses: ./.github/workflows/build_and_test_reusable.yml
with:
module: save-orchestrator-common
gradle-cache-read-only: ${{ github.ref != 'refs/heads/master' && github.event_name != 'pull_request' }}
build_save-agent:
name: Build and test save-agent
needs: [ build_save-orchestrator-common ]
uses: ./.github/workflows/build_and_test_reusable.yml
with:
module: save-agent
gradle-cache-read-only: ${{ github.ref != 'refs/heads/master' && github.event_name != 'pull_request' }}
build_save-demo-agent:
name: Build and test save-demo-agent
needs: [ build_save-agent ]
uses: ./.github/workflows/build_and_test_reusable.yml
with:
module: save-demo-agent
gradle-cache-read-only: ${{ github.ref != 'refs/heads/master' && github.event_name != 'pull_request' }}
build_all:
name: Build and test left modules
needs: [ build_save-demo-agent ]
strategy:
fail-fast: false
matrix:
module: [
'api-gateway',
'save-backend',
'save-orchestrator',
'save-frontend',
'save-preprocessor',
'test-utils',
'save-api',
'save-api-cli',
'save-sandbox',
'authentication-service',
'save-demo',
'save-demo-cpg',
'test-analysis-core'
]
uses: ./.github/workflows/build_and_test_reusable.yml
with:
module: ${{ matrix.module }}
gradle-cache-read-only: ${{ github.ref != 'refs/heads/master' }}
build_and_test_with_code_coverage:
name: Build, test and upload code coverage
needs: [ build_all ]
runs-on: ubuntu-latest
steps:
- name: Download gradle reports
uses: actions/download-artifact@v3
- name: Code coverage report
uses: codecov/codecov-action@v3
with:
fail_ci_if_error: false