Merge pull request #464 from vobst/initial_benchmarking_infrastructure #669
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Acceptance tests | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
env: | |
CARGO_TERM_COLOR: always | |
GHIDRA_RELEASE_TAG: Ghidra_10.2.3_build | |
GHIDRA_VERSION: ghidra_10.2.3_PUBLIC_20230208 | |
jobs: | |
acceptance-tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Build and run docker image for cross compiling | |
run: | | |
pushd test/artificial_samples | |
docker build -t cross_compiling . | |
docker run --rm -v $(pwd)/build:/home/cwe/artificial_samples/build cross_compiling sudo python3 -m SCons | |
popd | |
pushd test/lkm_samples | |
./build.sh | |
- uses: actions/setup-java@v1 | |
with: | |
java-version: "17.0.x" | |
java-package: jdk | |
architecture: x64 | |
- name: Install Ghidra | |
run: | | |
wget https://github.com/NationalSecurityAgency/ghidra/releases/download/${GHIDRA_RELEASE_TAG}/${GHIDRA_VERSION}.zip | |
unzip -d ghidra ${GHIDRA_VERSION}.zip | |
mv ghidra/ghidra_* /opt/ghidra | |
rm ${GHIDRA_VERSION}.zip | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
- name: Install cwe_checker | |
run: make all GHIDRA_PATH=/opt/ghidra | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --no-fail-fast -p acceptance_tests_ghidra -- --show-output --ignored --test-threads 1 | |
docker-build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Build the docker image | |
run: docker build -t cwe_checker . | |
- name: Check functionality of the image | |
run: docker run --rm cwe_checker /bin/echo | grep -q CWE676 |