Now that CLI v2.17.4+ are available, we can switch this job back to `ubuntu`. As a result, we can also bring back testing on the older CLI versions (which did not work on MacOS). CLI v.2.16.6 has a known failure on Linux so we exclude it from this workflow. This change is orthogonal to the PR check generator change as the check doesn't use the generator.
97 lines
2.7 KiB
YAML
97 lines
2.7 KiB
YAML
# Checks logs, SARIF, and database bundle debug artifacts exist.
|
|
name: PR Check - Debug artifact upload
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- releases/v*
|
|
pull_request:
|
|
types:
|
|
- opened
|
|
- synchronize
|
|
- reopened
|
|
- ready_for_review
|
|
schedule:
|
|
- cron: '0 5 * * *'
|
|
workflow_dispatch: {}
|
|
jobs:
|
|
upload-artifacts:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
version:
|
|
- stable-20230403
|
|
- stable-v2.13.5
|
|
- stable-v2.14.6
|
|
- stable-v2.15.5
|
|
- default
|
|
- linked
|
|
- nightly-latest
|
|
name: Upload debug artifacts
|
|
env:
|
|
CODEQL_ACTION_TEST_MODE: true
|
|
timeout-minutes: 45
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Check out repository
|
|
uses: actions/checkout@v4
|
|
- name: Prepare test
|
|
id: prepare-test
|
|
uses: ./.github/actions/prepare-test
|
|
with:
|
|
version: ${{ matrix.version }}
|
|
- uses: actions/setup-go@v5
|
|
with:
|
|
go-version: ^1.13.1
|
|
- uses: ./../action/init
|
|
id: init
|
|
with:
|
|
tools: ${{ steps.prepare-test.outputs.tools-url }}
|
|
debug: true
|
|
debug-artifact-name: my-debug-artifacts
|
|
debug-database-name: my-db
|
|
- uses: ./../action/.github/actions/setup-swift
|
|
with:
|
|
codeql-path: ${{ steps.init.outputs.codeql-path }}
|
|
- name: Build code
|
|
shell: bash
|
|
run: ./build.sh
|
|
- uses: ./../action/analyze
|
|
id: analysis
|
|
download-and-check-artifacts:
|
|
name: Download and check debug artifacts
|
|
needs: upload-artifacts
|
|
timeout-minutes: 45
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Download all artifacts
|
|
uses: actions/download-artifact@v3
|
|
- name: Check expected artifacts exist
|
|
shell: bash
|
|
run: |
|
|
VERSIONS="stable-20230403 stable-v2.13.5 stable-v2.14.6 stable-v2.15.5 default linked nightly-latest"
|
|
LANGUAGES="cpp csharp go java javascript python"
|
|
for version in $VERSIONS; do
|
|
pushd "./my-debug-artifacts-${version//./}"
|
|
echo "Artifacts from version $version:"
|
|
for language in $LANGUAGES; do
|
|
echo "- Checking $language"
|
|
if [[ ! -f "$language.sarif" ]] ; then
|
|
echo "Missing a SARIF file for $language"
|
|
exit 1
|
|
fi
|
|
if [[ ! -f "my-db-$language.zip" ]] ; then
|
|
echo "Missing a database bundle for $language"
|
|
exit 1
|
|
fi
|
|
if [[ ! -d "$language/log" ]] ; then
|
|
echo "Missing logs for $language"
|
|
exit 1
|
|
fi
|
|
done
|
|
popd
|
|
done
|
|
env:
|
|
GO111MODULE: auto
|