mirror of
https://github.com/github/codeql-action.git
synced 2025-12-27 01:30:10 +08:00
This allows us to set it automatically in the workflow generator, simplifying things and reducing the scope for error.
39 lines
1.6 KiB
YAML
39 lines
1.6 KiB
YAML
name: "Packaging: Action input"
|
|
description: "Checks that specifying packages using the input to the Action 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-packaging2.yml"
|
|
languages: javascript
|
|
packs: dsp-testing/codeql-pack1@1.0.0, dsp-testing/codeql-pack2, dsp-testing/codeql-pack3:other-query.ql
|
|
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
|