Skip to content

Feature/image manager #334

Feature/image manager

Feature/image manager #334

Workflow file for this run

name: Build and test
on:
push:
branches:
- main
- develop
- feature*
pull_request_target:
types:
- edited
- opened
- reopened
- synchronize
branches:
- main
- develop
- feature*
jobs:
build:
runs-on: ubuntu-latest
permissions: read-all
container:
image: ghcr.io/aosedge/aos-core-build:latest
options: "--entrypoint /usr/bin/bash"
credentials:
username: ${{ github.actor }}
password: ${{ github.token }}
env:
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{github.event.pull_request.head.ref}}
repository: ${{github.event.pull_request.head.repo.full_name}}
fetch-depth: 0
- name: Install build wrapper
uses: SonarSource/sonarqube-scan-action/[email protected]
- name: Build (Release)
run: |
./build.sh build --build-type Release
- name: Build (Debug)
run: |
./build.sh build --ci --clean
- name: Test
run: |
./build.sh coverage
- name: Static analysis
run: |
./build.sh lint
- name: Upload codecov report
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./build/coverage.total
- name: SonarQube analysis (on push)
if: github.event_name == 'push'
uses: SonarSource/[email protected]
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
with:
args: >
--define sonar.cfamily.compile-commands="${{ env.BUILD_WRAPPER_OUT_DIR }}/compile_commands.json"
--define sonar.coverageReportPaths=build/coverage_sonarqube.xml
- name: SonarQube analysis (on pull request)
if: github.event_name == 'pull_request_target'
uses: SonarSource/[email protected]
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
projectBaseDir: "."
args: >
--define sonar.scm.revision=${{ github.event.pull_request.head.sha }}
--define sonar.pullrequest.key=${{ github.event.pull_request.number }}
--define sonar.pullrequest.branch=${{ github.event.pull_request.head.ref }}
--define sonar.pullrequest.base=${{ github.event.pull_request.base.ref }}
--define sonar.cfamily.compile-commands="${{ env.BUILD_WRAPPER_OUT_DIR }}/compile_commands.json"
--define sonar.coverageReportPaths=build/coverage_sonarqube.xml