|
24 | 24 | action: scan |
25 | 25 | additional_args: --partial |
26 | 26 | api_token: ${{ secrets.BOOST_API_TOKEN }} |
27 | | - java_job: |
28 | | - name: Java Scanner |
| 27 | + findsecbugs_job: |
| 28 | + name: FindSecBugs |
29 | 29 | runs-on: ubuntu-latest |
30 | 30 | steps: |
31 | 31 | - name: Checkout |
|
52 | 52 | additional_args: --partial --require-full-repo |
53 | 53 | api_token: ${{ secrets.BOOST_API_TOKEN }} |
54 | 54 | exec_command: /usr/local/bin/scan.sh |
| 55 | + codeql_job: |
| 56 | + name: CodeQL |
| 57 | + runs-on: ubuntu-latest |
| 58 | + steps: |
| 59 | + - name: Checkout |
| 60 | + uses: actions/checkout@v2 |
| 61 | + - name: Set up JDK |
| 62 | + uses: actions/setup-java@v2 |
| 63 | + with: |
| 64 | + java-version: '11' |
| 65 | + distribution: adopt |
| 66 | + cache: maven |
| 67 | + - name: Prepare Java scanner script |
| 68 | + run: | |
| 69 | + echo "-- Ensure directories for mounted volumes exist" |
| 70 | + mkdir -p $HOME/.m2 |
| 71 | + mkdir -p /tmp/codeql-dbs |
| 72 | + |
| 73 | + echo "-- Pull CodeQL Docker ahead of time" |
| 74 | + docker pull ghcr.io/nealfennimore/codeql:java |
| 75 | + |
| 76 | + echo "-- Creating scan script" |
| 77 | + cat << EOF > /usr/local/bin/scan.sh |
| 78 | + #!/bin/bash |
| 79 | + set -e |
| 80 | + set -x |
| 81 | + echo "--- Step 1" |
| 82 | + docker run --rm --name codeql \ |
| 83 | + -v $PWD:/tmp/src \ |
| 84 | + -v $HOME/.m2:/home/cli/.m2 \ |
| 85 | + -v /tmp/codeql-dbs:/tmp/dbs \ |
| 86 | + ghcr.io/nealfennimore/codeql:java \ |
| 87 | + codeql database create --language=java --command="mvn clean compile -DskipTests" --overwrite --source-root /tmp/src /tmp/dbs/code-db |
| 88 | + echo "--- Step 2" |
| 89 | + docker run --rm --name codeql \ |
| 90 | + -v /tmp/codeql-dbs:/tmp/dbs \ |
| 91 | + ghcr.io/nealfennimore/codeql:java \ |
| 92 | + codeql database analyze /tmp/dbs/code-db java-code-scanning.qls --sarif-category=java --format=sarif-latest --output=/tmp/dbs/code-db/output.sarif |
| 93 | + echo "--- Step 3" |
| 94 | + cat /tmp/codeql-dbs/code-db/output.sarif |
| 95 | + EOF |
| 96 | + |
| 97 | + chmod +x /usr/local/bin/scan.sh |
| 98 | + - name: Java Scanner |
| 99 | + uses: peaudecastor/boost-security-scanner-github@v2 |
| 100 | + with: |
| 101 | + action: exec |
| 102 | + additional_args: --partial --require-full-repo |
| 103 | + api_token: ${{ secrets.BOOST_API_TOKEN }} |
| 104 | + exec_command: /usr/local/bin/scan.sh |
55 | 105 | complete_scan: |
56 | 106 | name: Complete Scan |
57 | | - needs: [scan_job, java_job] |
| 107 | + needs: [scan_job, findsecbugs_job, codeql_job] |
58 | 108 | runs-on: ubuntu-latest |
59 | 109 | steps: |
60 | 110 | - name: Checkout |
|
0 commit comments