Test against oldest supported version
This commit is contained in:
parent
70d2efc353
commit
e70ec1d70e
1 changed files with 21 additions and 5 deletions
26
.github/workflows/pr-checks.yml
vendored
26
.github/workflows/pr-checks.yml
vendored
|
|
@ -292,7 +292,10 @@ jobs:
|
|||
outputs:
|
||||
versions: ${{ steps.compare.outputs.versions }}
|
||||
nightly-url: ${{ steps.get-url.outputs.nightly-url }}
|
||||
|
||||
env:
|
||||
# URL of the oldest release that we support, if this is being bumped then the constant
|
||||
# CODEQL_MINIMUM_VERSION in the file codeql.ts should also be bumped to match this.
|
||||
OLDEST_URL: https://github.com/github/codeql-action/releases/download/codeql-bundle-20201028/codeql-bundle.tar.gz
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Move codeql-action
|
||||
|
|
@ -336,31 +339,44 @@ jobs:
|
|||
with:
|
||||
tools: ${{ steps.get-url.outputs.nightly-url }}
|
||||
languages: javascript
|
||||
- name: Remove empty database
|
||||
# allows us to run init a fourth time
|
||||
run: |
|
||||
rm -rf "$RUNNER_TEMP/codeql_databases"
|
||||
- name: Init with a CodeQL bundle from the oldest supported release
|
||||
id: init-oldest
|
||||
uses: ./../action/init
|
||||
with:
|
||||
tools: ${{ env.OLDEST_URL }}
|
||||
languages: javascript
|
||||
- name: Compare CodeQL bundle versions
|
||||
id: compare
|
||||
env:
|
||||
CODEQL_DEFAULT: ${{ steps.init-default.outputs.codeql-path }}
|
||||
CODEQL_LATEST: ${{ steps.init-latest.outputs.codeql-path }}
|
||||
CODEQL_NIGHTLY: ${{ steps.init-nightly.outputs.codeql-path }}
|
||||
CODEQL_OLDEST: ${{ steps.init-oldest.outputs.codeql-path }}
|
||||
NIGHTLY_URL: ${{ steps.get-url.outputs.nightly-url }}
|
||||
run: |
|
||||
CODEQL_VERSION_DEFAULT="$("$CODEQL_DEFAULT" version --format terse)"
|
||||
CODEQL_VERSION_LATEST="$("$CODEQL_LATEST" version --format terse)"
|
||||
CODEQL_VERSION_NIGHTLY="$("$CODEQL_NIGHTLY" version --format terse)"
|
||||
CODEQL_VERSION_OLDEST="$("$CODEQL_OLDEST" version --format terse)"
|
||||
echo "Default CodeQL bundle version is $CODEQL_VERSION_DEFAULT"
|
||||
echo "Latest CodeQL bundle version is $CODEQL_VERSION_LATEST"
|
||||
echo "Nightly CodeQL bundle version is $CODEQL_VERSION_NIGHTLY"
|
||||
echo "Oldest supported CodeQL bundle version is $CODEQL_VERSION_OLDEST"
|
||||
|
||||
# If we're running on a pull request, run each integration test with all three bundles, even
|
||||
# If we're running on a pull request, run each integration test with all four bundles, even
|
||||
# if `tools: latest` would be the same as `tools: null`. This allows us to make the
|
||||
# integration test job for each of the three bundles a required status check.
|
||||
# integration test job for each of the four bundles a required status check.
|
||||
#
|
||||
# If we're running on push, then we can skip running with `tools: latest` when it would be
|
||||
# the same as running with `tools: null`.
|
||||
if [[ "$GITHUB_EVENT_NAME" != "pull_request" && "$CODEQL_VERSION_DEFAULT" == "$CODEQL_VERSION_LATEST" ]]; then
|
||||
VERSIONS_JSON="[null, \"$NIGHTLY_URL\"]"
|
||||
VERSIONS_JSON="[null, \"$NIGHTLY_URL\", \"$OLDEST_URL\"]"
|
||||
else
|
||||
VERSIONS_JSON="[null, \"$NIGHTLY_URL\", \"latest\"]"
|
||||
VERSIONS_JSON="[null, \"$NIGHTLY_URL\", \"$OLDEST_URL\", \"latest\"]"
|
||||
fi
|
||||
|
||||
# Output a JSON-encoded list with the distinct versions to test against.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue