# 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/v1 - releases/v2 pull_request: types: - opened - synchronize - reopened - ready_for_review workflow_dispatch: {} jobs: upload-artifacts: strategy: matrix: os: [ubuntu-latest, macos-latest] version: [stable-20210308, stable-20210319, stable-20210809, cached, latest, nightly-latest] name: Upload debug artifacts timeout-minutes: 45 runs-on: ${{ matrix.os }} steps: - name: Check out repository uses: actions/checkout@v3 - name: Prepare test id: prepare-test uses: ./.github/prepare-test with: version: ${{ matrix.version }} - uses: ./../action/init with: tools: ${{ steps.prepare-test.outputs.tools-url }} debug: true debug-artifact-name: my-debug-artifacts debug-database-name: my-db - 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: | OPERATING_SYSTEMS="ubuntu-latest macos-latest" VERSIONS="stable-20210308 stable-20210319 stable-20210809 cached latest nightly-latest" LANGUAGES="cpp csharp go java javascript python" for os in $OPERATING_SYSTEMS; do for version in $VERSIONS; do pushd "./my-debug-artifacts-$os-$version" echo "Artifacts from version $version on $os:" 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 "log" ]] ; then echo "Missing database initialization logs" exit 1 fi if [[ ! -d "$language/log" ]] ; then echo "Missing logs for $language" exit 1 fi done popd done done env: INTERNAL_CODEQL_ACTION_DEBUG_LOC: true