mirror of
https://github.com/github/codeql-action.git
synced 2026-05-16 16:20:21 +00:00
a190d3876a
This allows us to set it automatically in the workflow generator, simplifying things and reducing the scope for error.
38 lines
1.5 KiB
YAML
38 lines
1.5 KiB
YAML
name: "Packaging: Config file"
|
|
description: "Checks that specifying packages using only a config file works"
|
|
versions: ["latest", "cached", "nightly-latest"] # This feature is not compatible with old CLIs
|
|
steps:
|
|
- uses: ./../action/init
|
|
with:
|
|
config-file: ".github/codeql/codeql-config-packaging.yml"
|
|
languages: javascript
|
|
tools: ${{ steps.prepare-test.outputs.tools-url }}
|
|
- name: Build code
|
|
shell: bash
|
|
run: ./build.sh
|
|
- uses: ./../action/analyze
|
|
with:
|
|
output: "${{ runner.temp }}/results"
|
|
|
|
- name: Check results
|
|
uses: ./../action/.github/check-sarif
|
|
with:
|
|
sarif-file: ${{ runner.temp }}/results/javascript.sarif
|
|
queries-run: javascript/example/empty-or-one-block,javascript/example/empty-or-one-block,javascript/example/other-query-block,javascript/example/two-block
|
|
queries-not-run: foo,bar
|
|
|
|
- name: Assert Results
|
|
shell: bash
|
|
run: |
|
|
cd "$RUNNER_TEMP/results"
|
|
# We should have 4 hits from these rules
|
|
EXPECTED_RULES="javascript/example/empty-or-one-block javascript/example/empty-or-one-block javascript/example/other-query-block javascript/example/two-block"
|
|
|
|
# use tr to replace newlines with spaces and xargs to trim leading and trailing whitespace
|
|
RULES="$(cat javascript.sarif | jq -r '.runs[0].results[].ruleId' | sort | tr "\n\r" " " | xargs)"
|
|
echo "Found matching rules '$RULES'"
|
|
if [ "$RULES" != "$EXPECTED_RULES" ]; then
|
|
echo "Did not match expected rules '$EXPECTED_RULES'."
|
|
exit 1
|
|
fi
|