diff --git a/.github/check-codescanning-config/action.yml b/.github/check-codescanning-config/action.yml index c966b49cfe..4f878bf5af 100644 --- a/.github/check-codescanning-config/action.yml +++ b/.github/check-codescanning-config/action.yml @@ -42,6 +42,8 @@ runs: packs: ${{ inputs.packs }} tools: ${{ inputs.tools }} db-location: ${{ runner.temp }}/codescanning-config-cli-test + env: + CODEQL_ACTION_TEST_MODE: 'true' - name: Install dependencies shell: bash diff --git a/.github/query-filter-test/action.yml b/.github/query-filter-test/action.yml index d5fa7c1230..33d5401a0f 100644 --- a/.github/query-filter-test/action.yml +++ b/.github/query-filter-test/action.yml @@ -35,14 +35,14 @@ runs: tools: ${{ inputs.tools }} db-location: ${{ runner.temp }}/query-filter-test env: - TEST_MODE: "true" + CODEQL_ACTION_TEST_MODE: "true" - uses: ./../action/analyze with: output: ${{ runner.temp }}/results upload-database: false upload: false env: - TEST_MODE: "true" + CODEQL_ACTION_TEST_MODE: "true" - name: Check SARIF uses: ./../action/.github/check-sarif with: diff --git a/.github/workflows/__analyze-ref-input.yml b/.github/workflows/__analyze-ref-input.yml index 84b99876fe..1c27da3fc5 100644 --- a/.github/workflows/__analyze-ref-input.yml +++ b/.github/workflows/__analyze-ref-input.yml @@ -83,8 +83,6 @@ jobs: languages: cpp,csharp,java,javascript,python config-file: ${{ github.repository }}/tests/multi-language-repo/.github/codeql/custom-queries.yml@${{ github.sha }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -92,7 +90,5 @@ jobs: with: ref: refs/heads/main sha: 5e235361806c361d4d3f8859e3c897658025a9a2 - env: - TEST_MODE: true env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__autobuild-action.yml b/.github/workflows/__autobuild-action.yml index 236a4e17f9..807df26c47 100644 --- a/.github/workflows/__autobuild-action.yml +++ b/.github/workflows/__autobuild-action.yml @@ -46,8 +46,6 @@ jobs: with: languages: csharp tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/autobuild env: # Explicitly disable the CLR tracer. @@ -58,8 +56,6 @@ jobs: CORECLR_PROFILER: '' CORECLR_PROFILER_PATH_64: '' - uses: ./../action/analyze - env: - TEST_MODE: true - name: Check database shell: bash run: | @@ -69,4 +65,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__export-file-baseline-information.yml b/.github/workflows/__export-file-baseline-information.yml index 5cf8f2e6f6..b239cc56c3 100644 --- a/.github/workflows/__export-file-baseline-information.yml +++ b/.github/workflows/__export-file-baseline-information.yml @@ -42,6 +42,11 @@ jobs: uses: ./.github/prepare-test with: version: ${{ matrix.version }} + - uses: swift-actions/setup-swift@5cdaa9161ad1f55ae39a5ea1784ef96de72f95d9 + # Windows doesn't support Swift, and only macOS latest and nightly-latest support Swift 5.7.1. + if: runner.os == 'Linux' || (runner.os == 'macOS' && matrix.version == 'cached') + with: + swift-version: '5.7' - uses: ./../action/init with: languages: javascript @@ -49,7 +54,6 @@ jobs: env: CODEQL_FILE_BASELINE_INFORMATION: true CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: true - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -59,7 +63,6 @@ jobs: env: CODEQL_FILE_BASELINE_INFORMATION: true CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: true - TEST_MODE: true - name: Upload SARIF uses: actions/upload-artifact@v3 with: @@ -84,4 +87,4 @@ jobs: fi done env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__extractor-ram-threads.yml b/.github/workflows/__extractor-ram-threads.yml index 70f0c7d287..8a3ca5a28a 100644 --- a/.github/workflows/__extractor-ram-threads.yml +++ b/.github/workflows/__extractor-ram-threads.yml @@ -43,8 +43,6 @@ jobs: languages: java ram: 230 threads: 1 - env: - TEST_MODE: true - name: Assert Results shell: bash run: | @@ -65,4 +63,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__go-custom-queries.yml b/.github/workflows/__go-custom-queries.yml index 3b4da7b4ed..ebbdf5239d 100644 --- a/.github/workflows/__go-custom-queries.yml +++ b/.github/workflows/__go-custom-queries.yml @@ -82,14 +82,10 @@ jobs: languages: go config-file: ./.github/codeql/custom-queries.yml tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze - env: - TEST_MODE: true env: DOTNET_GENERATE_ASPNET_CERTIFICATE: 'false' - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__go-tracing-autobuilder.yml b/.github/workflows/__go-tracing-autobuilder.yml index 0de99293de..a491c478d8 100644 --- a/.github/workflows/__go-tracing-autobuilder.yml +++ b/.github/workflows/__go-tracing-autobuilder.yml @@ -69,12 +69,8 @@ jobs: with: languages: go tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/autobuild - uses: ./../action/analyze - env: - TEST_MODE: true - shell: bash run: | if [[ "${CODEQL_ACTION_DID_AUTOBUILD_GOLANG}" != true ]]; then @@ -89,4 +85,4 @@ jobs: fi env: DOTNET_GENERATE_ASPNET_CERTIFICATE: 'false' - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__go-tracing-custom-build-steps.yml b/.github/workflows/__go-tracing-custom-build-steps.yml index e9877327d1..b6e8055bbb 100644 --- a/.github/workflows/__go-tracing-custom-build-steps.yml +++ b/.github/workflows/__go-tracing-custom-build-steps.yml @@ -69,14 +69,10 @@ jobs: with: languages: go tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: go build main.go - uses: ./../action/analyze - env: - TEST_MODE: true - shell: bash run: | # Once we start running Bash 4.2 in all environments, we can replace the @@ -93,4 +89,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__go-tracing-legacy-workflow.yml b/.github/workflows/__go-tracing-legacy-workflow.yml index 77aa3793db..e06ea36d73 100644 --- a/.github/workflows/__go-tracing-legacy-workflow.yml +++ b/.github/workflows/__go-tracing-legacy-workflow.yml @@ -69,11 +69,7 @@ jobs: with: languages: go tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze - env: - TEST_MODE: true - shell: bash run: | cd "$RUNNER_TEMP/codeql_databases" @@ -83,4 +79,4 @@ jobs: fi env: DOTNET_GENERATE_ASPNET_CERTIFICATE: 'false' - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__init-with-registries.yml b/.github/workflows/__init-with-registries.yml index 2d2d778dc6..958fca7dee 100644 --- a/.github/workflows/__init-with-registries.yml +++ b/.github/workflows/__init-with-registries.yml @@ -54,8 +54,6 @@ jobs: packages: "*/*" token: "${{ secrets.GITHUB_TOKEN }}" - env: - TEST_MODE: true - name: Verify packages installed shell: bash run: | @@ -78,4 +76,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__javascript-source-root.yml b/.github/workflows/__javascript-source-root.yml index 0386919c90..c32a27cbea 100644 --- a/.github/workflows/__javascript-source-root.yml +++ b/.github/workflows/__javascript-source-root.yml @@ -52,8 +52,6 @@ jobs: languages: javascript source-root: ../new-source-root tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze with: skip-queries: true @@ -67,4 +65,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__ml-powered-queries.yml b/.github/workflows/__ml-powered-queries.yml index 5c73023747..4b6367ee6c 100644 --- a/.github/workflows/__ml-powered-queries.yml +++ b/.github/workflows/__ml-powered-queries.yml @@ -71,15 +71,11 @@ jobs: queries: security-extended source-root: ./../action/tests/ml-powered-queries-repo tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze with: output: ${{ runner.temp }}/results upload-database: false - env: - TEST_MODE: true - name: Upload SARIF uses: actions/upload-artifact@v3 @@ -91,8 +87,7 @@ jobs: - name: Check sarif uses: ./../action/.github/check-sarif # Running on Windows requires CodeQL CLI 2.9.0+. - if: "!(matrix.version == 'stable-20220120' && (matrix.os == 'windows-latest'\ - \ || matrix.os == 'windows-2019'))" + if: "!(matrix.version == 'stable-20220120' && runner.os == 'Windows')" with: sarif-file: ${{ runner.temp }}/results/javascript.sarif queries-run: js/ml-powered/nosql-injection,js/ml-powered/path-injection,js/ml-powered/sql-injection,js/ml-powered/xss @@ -102,7 +97,7 @@ jobs: env: # Running on Windows requires CodeQL CLI 2.9.0+. SHOULD_RUN_ML_POWERED_QUERIES: ${{ !(matrix.version == 'stable-20220120' && - (matrix.os == 'windows-latest' || matrix.os == 'windows-2019')) }} + runner.os == 'Windows') }} shell: bash run: | echo "Expecting ML-powered queries to be run: ${SHOULD_RUN_ML_POWERED_QUERIES}" @@ -137,4 +132,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__multi-language-autodetect.yml b/.github/workflows/__multi-language-autodetect.yml index c990a6ed09..b4db770a0d 100644 --- a/.github/workflows/__multi-language-autodetect.yml +++ b/.github/workflows/__multi-language-autodetect.yml @@ -65,20 +65,26 @@ jobs: uses: actions/setup-go@v3 with: go-version: ^1.13.1 + - uses: swift-actions/setup-swift@5cdaa9161ad1f55ae39a5ea1784ef96de72f95d9 + # Only macOS latest and nightly-latest support Swift 5.7.1 + if: runner.os == 'Linux' || matrix.version == 'cached' + with: + swift-version: '5.7' + - uses: ./../action/init with: db-location: ${{ runner.temp }}/customDbLocation tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true + - name: Build code shell: bash run: ./build.sh + - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - - shell: bash + + - name: Check language autodetect for all languages excluding Ruby, Swift + shell: bash run: | CPP_DB=${{ fromJson(steps.analysis.outputs.db-locations).cpp }} if [[ ! -d $CPP_DB ]] || [[ ! $CPP_DB == ${{ runner.temp }}/customDbLocation/* ]]; then @@ -110,5 +116,28 @@ jobs: echo "Did not create a database for Python, or created it in the wrong location." exit 1 fi + + - name: Check language autodetect for Ruby + if: (matrix.version == 'cached' || matrix.version == 'latest' || matrix.version + == 'nightly-latest') + shell: bash + run: | + RUBY_DB=${{ fromJson(steps.analysis.outputs.db-locations).ruby }} + if [[ ! -d $RUBY_DB ]] || [[ ! $RUBY_DB == ${{ runner.temp }}/customDbLocation/* ]]; then + echo "Did not create a database for Ruby, or created it in the wrong location." + exit 1 + fi + + - name: Check language autodetect for Swift + if: "!startsWith(matrix.os, 'windows') && (matrix.version == 'cached' || matrix.version\ + \ == 'latest' || matrix.version == 'nightly-latest')" + shell: bash + run: | + SWIFT_DB=${{ fromJson(steps.analysis.outputs.db-locations).swift }} + if [[ ! -d $SWIFT_DB ]] || [[ ! $SWIFT_DB == ${{ runner.temp }}/customDbLocation/* ]]; then + echo "Did not create a database for Swift, or created it in the wrong location." + exit 1 + fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: 'true' # Remove when Swift is GA. + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__packaging-codescanning-config-inputs-js.yml b/.github/workflows/__packaging-codescanning-config-inputs-js.yml index 7c5e8af36e..d3657a2025 100644 --- a/.github/workflows/__packaging-codescanning-config-inputs-js.yml +++ b/.github/workflows/__packaging-codescanning-config-inputs-js.yml @@ -60,16 +60,12 @@ jobs: packs: +dsp-testing/codeql-pack1@1.0.0 languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze with: output: ${{ runner.temp }}/results - env: - TEST_MODE: true - name: Check results uses: ./../action/.github/check-sarif @@ -95,4 +91,4 @@ jobs: env: CODEQL_PASS_CONFIG_TO_CLI: true - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__packaging-config-inputs-js.yml b/.github/workflows/__packaging-config-inputs-js.yml index 4e4f20ecbf..f35e2a9af7 100644 --- a/.github/workflows/__packaging-config-inputs-js.yml +++ b/.github/workflows/__packaging-config-inputs-js.yml @@ -60,16 +60,12 @@ jobs: packs: +dsp-testing/codeql-pack1@1.0.0 languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze with: output: ${{ runner.temp }}/results - env: - TEST_MODE: true - name: Check results uses: ./../action/.github/check-sarif @@ -93,4 +89,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__packaging-config-js.yml b/.github/workflows/__packaging-config-js.yml index 560b9edaaf..7751c8f137 100644 --- a/.github/workflows/__packaging-config-js.yml +++ b/.github/workflows/__packaging-config-js.yml @@ -59,16 +59,12 @@ jobs: config-file: .github/codeql/codeql-config-packaging.yml languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze with: output: ${{ runner.temp }}/results - env: - TEST_MODE: true - name: Check results uses: ./../action/.github/check-sarif @@ -92,4 +88,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__packaging-inputs-js.yml b/.github/workflows/__packaging-inputs-js.yml index 4d9d4e4f28..77be551100 100644 --- a/.github/workflows/__packaging-inputs-js.yml +++ b/.github/workflows/__packaging-inputs-js.yml @@ -60,16 +60,12 @@ jobs: 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 }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze with: output: ${{ runner.temp }}/results - env: - TEST_MODE: true - name: Check results uses: ./../action/.github/check-sarif @@ -93,4 +89,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__remote-config.yml b/.github/workflows/__remote-config.yml index 948d6bf936..30c9348e22 100644 --- a/.github/workflows/__remote-config.yml +++ b/.github/workflows/__remote-config.yml @@ -83,13 +83,9 @@ jobs: languages: cpp,csharp,java,javascript,python config-file: ${{ github.repository }}/tests/multi-language-repo/.github/codeql/custom-queries.yml@${{ github.sha }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze - env: - TEST_MODE: true env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__rubocop-multi-language.yml b/.github/workflows/__rubocop-multi-language.yml index 3d72824c67..c240aabb73 100644 --- a/.github/workflows/__rubocop-multi-language.yml +++ b/.github/workflows/__rubocop-multi-language.yml @@ -58,7 +58,5 @@ jobs: - uses: ./../action/upload-sarif with: sarif_file: rubocop.sarif - env: - TEST_MODE: true env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__ruby-autodetect.yml b/.github/workflows/__ruby-autodetect.yml deleted file mode 100644 index a18a78b297..0000000000 --- a/.github/workflows/__ruby-autodetect.yml +++ /dev/null @@ -1,70 +0,0 @@ -# Warning: This file is generated automatically, and should not be modified. -# Instead, please modify the template in the pr-checks directory and run: -# pip install ruamel.yaml && python3 sync.py -# to regenerate this file. - -name: PR Check - Ruby analysis using autodetect -env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - GO111MODULE: auto -on: - push: - branches: - - main - - releases/v1 - - releases/v2 - pull_request: - types: - - opened - - synchronize - - reopened - - ready_for_review - workflow_dispatch: {} -jobs: - ruby-autodetect: - strategy: - matrix: - include: - - os: ubuntu-latest - version: latest - - os: macos-latest - version: latest - - os: ubuntu-latest - version: cached - - os: macos-latest - version: cached - - os: ubuntu-latest - version: nightly-latest - - os: macos-latest - version: nightly-latest - name: Ruby analysis using autodetect - 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 }} - env: - TEST_MODE: true - - uses: ./../action/analyze - id: analysis - env: - TEST_MODE: true - - name: Check database - shell: bash - run: | - RUBY_DB="${{ fromJson(steps.analysis.outputs.db-locations).ruby }}" - if [[ ! -d "$RUBY_DB" ]]; then - echo "Did not create a database for Ruby." - exit 1 - fi - env: - CODEQL_ENABLE_EXPERIMENTAL_FEATURES: 'true' - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true diff --git a/.github/workflows/__ruby.yml b/.github/workflows/__ruby.yml index 707163f79d..9a3a9f7ebf 100644 --- a/.github/workflows/__ruby.yml +++ b/.github/workflows/__ruby.yml @@ -52,12 +52,8 @@ jobs: with: languages: ruby tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - name: Check database shell: bash run: | @@ -67,5 +63,4 @@ jobs: exit 1 fi env: - CODEQL_ENABLE_EXPERIMENTAL_FEATURES: 'true' - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__split-workflow.yml b/.github/workflows/__split-workflow.yml index c9b8373b9c..d2d45353b9 100644 --- a/.github/workflows/__split-workflow.yml +++ b/.github/workflows/__split-workflow.yml @@ -54,8 +54,6 @@ jobs: packs: +dsp-testing/codeql-pack1@1.0.0 languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -63,8 +61,6 @@ jobs: with: skip-queries: true output: ${{ runner.temp }}/results - env: - TEST_MODE: true - name: Assert No Results shell: bash @@ -77,8 +73,6 @@ jobs: with: output: ${{ runner.temp }}/results upload-database: false - env: - TEST_MODE: true - name: Assert Results shell: bash run: | @@ -94,4 +88,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__swift-autobuild.yml b/.github/workflows/__swift-autobuild.yml index 4b3a285611..b85b0a2113 100644 --- a/.github/workflows/__swift-autobuild.yml +++ b/.github/workflows/__swift-autobuild.yml @@ -42,17 +42,18 @@ jobs: uses: ./.github/prepare-test with: version: ${{ matrix.version }} + - uses: swift-actions/setup-swift@5cdaa9161ad1f55ae39a5ea1784ef96de72f95d9 + # Only macOS latest and nightly-latest support Swift 5.7.1 + if: runner.os == 'Linux' || matrix.version == 'cached' + with: + swift-version: '5.7' - uses: ./../action/init with: languages: swift tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/autobuild - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - name: Check database shell: bash run: | @@ -63,4 +64,4 @@ jobs: fi env: CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: 'true' - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__swift-custom-build.yml b/.github/workflows/__swift-custom-build.yml index 2e854ed374..78124ae8f4 100644 --- a/.github/workflows/__swift-custom-build.yml +++ b/.github/workflows/__swift-custom-build.yml @@ -48,19 +48,20 @@ jobs: uses: ./.github/prepare-test with: version: ${{ matrix.version }} + - uses: swift-actions/setup-swift@5cdaa9161ad1f55ae39a5ea1784ef96de72f95d9 + # Only macOS latest and nightly-latest support Swift 5.7.1 + if: runner.os == 'Linux' || matrix.version == 'cached' + with: + swift-version: '5.7' - uses: ./../action/init with: languages: swift tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - name: Check database shell: bash run: | @@ -72,4 +73,4 @@ jobs: env: CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: 'true' DOTNET_GENERATE_ASPNET_CERTIFICATE: 'false' - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__test-autobuild-working-dir.yml b/.github/workflows/__test-autobuild-working-dir.yml index 2d5b3f91c3..0ab8a2b7a9 100644 --- a/.github/workflows/__test-autobuild-working-dir.yml +++ b/.github/workflows/__test-autobuild-working-dir.yml @@ -49,14 +49,10 @@ jobs: with: languages: java tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/autobuild with: working-directory: autobuild-dir - uses: ./../action/analyze - env: - TEST_MODE: true - name: Check database shell: bash run: | @@ -66,4 +62,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__test-local-codeql.yml b/.github/workflows/__test-local-codeql.yml index 0697311f7d..54354b4ebd 100644 --- a/.github/workflows/__test-local-codeql.yml +++ b/.github/workflows/__test-local-codeql.yml @@ -47,13 +47,9 @@ jobs: - uses: ./../action/init with: tools: ./codeql-bundle.tar.gz - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze - env: - TEST_MODE: true env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__test-proxy.yml b/.github/workflows/__test-proxy.yml index 15f1fa7abb..1551a18a9b 100644 --- a/.github/workflows/__test-proxy.yml +++ b/.github/workflows/__test-proxy.yml @@ -42,14 +42,10 @@ jobs: with: languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze - env: - TEST_MODE: true env: https_proxy: http://squid-proxy:3128 - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true container: image: ubuntu:22.04 options: --dns 127.0.0.1 diff --git a/.github/workflows/__unset-environment.yml b/.github/workflows/__unset-environment.yml index dcb8b0693c..dfdf0a01c6 100644 --- a/.github/workflows/__unset-environment.yml +++ b/.github/workflows/__unset-environment.yml @@ -57,15 +57,11 @@ jobs: with: db-location: ${{ runner.temp }}/customDbLocation tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: env -i PATH="$PATH" HOME="$HOME" ./build.sh - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - shell: bash run: | CPP_DB="${{ fromJson(steps.analysis.outputs.db-locations).cpp }}" @@ -105,4 +101,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__upload-ref-sha-input.yml b/.github/workflows/__upload-ref-sha-input.yml index d9c29bd703..a488455b4e 100644 --- a/.github/workflows/__upload-ref-sha-input.yml +++ b/.github/workflows/__upload-ref-sha-input.yml @@ -83,8 +83,6 @@ jobs: languages: cpp,csharp,java,javascript,python config-file: ${{ github.repository }}/tests/multi-language-repo/.github/codeql/custom-queries.yml@${{ github.sha }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -93,13 +91,9 @@ jobs: ref: refs/heads/main sha: 5e235361806c361d4d3f8859e3c897658025a9a2 upload: false - env: - TEST_MODE: true - uses: ./../action/upload-sarif with: ref: refs/heads/main sha: 5e235361806c361d4d3f8859e3c897658025a9a2 - env: - TEST_MODE: true env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/__with-checkout-path.yml b/.github/workflows/__with-checkout-path.yml index 29d9cfbb92..dd63cb05df 100644 --- a/.github/workflows/__with-checkout-path.yml +++ b/.github/workflows/__with-checkout-path.yml @@ -88,8 +88,6 @@ jobs: languages: csharp,javascript source-path: x/y/z/some-path/tests/multi-language-repo debug: true - env: - TEST_MODE: true - name: Build code (non-windows) shell: bash if: ${{ runner.os != 'Windows' }} @@ -106,16 +104,12 @@ jobs: ref: v1.1.0 sha: 474bbf07f9247ffe1856c6a0f94aeeb10e7afee6 upload: false - env: - TEST_MODE: true - uses: ./../action/upload-sarif with: ref: v1.1.0 sha: 474bbf07f9247ffe1856c6a0f94aeeb10e7afee6 checkout_path: x/y/z/some-path/tests/multi-language-repo - env: - TEST_MODE: true - name: Verify SARIF after upload shell: bash @@ -146,4 +140,4 @@ jobs: exit 1 fi env: - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true + CODEQL_ACTION_TEST_MODE: true diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index bc22fc10b6..3981d43bc8 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -9,6 +9,9 @@ on: # by other workflows. types: [opened, synchronize, reopened, ready_for_review] +env: + CODEQL_ACTION_TESTING_ENVIRONMENT: codeql-action-pr-checks + jobs: # Identify the CodeQL tool versions to use in the analysis job. check-codeql-versions: diff --git a/.github/workflows/debug-artifacts-failure.yml b/.github/workflows/debug-artifacts-failure.yml index d265730f2a..9afb2b30ef 100644 --- a/.github/workflows/debug-artifacts-failure.yml +++ b/.github/workflows/debug-artifacts-failure.yml @@ -23,6 +23,8 @@ jobs: os: [ubuntu-latest, macos-latest] name: Upload debug artifacts after failure in analyze continue-on-error: true + env: + CODEQL_ACTION_TEST_MODE: true timeout-minutes: 45 runs-on: ${{ matrix.os }} steps: @@ -44,8 +46,6 @@ jobs: debug: true debug-artifact-name: my-debug-artifacts debug-database-name: my-db - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -54,8 +54,6 @@ jobs: with: expect-error: true ram: 1 - env: - TEST_MODE: true download-and-check-artifacts: name: Download and check debug artifacts after failure in analyze needs: upload-artifacts @@ -91,4 +89,3 @@ jobs: done env: GO111MODULE: auto - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true diff --git a/.github/workflows/debug-artifacts.yml b/.github/workflows/debug-artifacts.yml index 0a65f5d0af..99cc887fed 100644 --- a/.github/workflows/debug-artifacts.yml +++ b/.github/workflows/debug-artifacts.yml @@ -45,6 +45,8 @@ jobs: - os: macos-latest version: nightly-latest name: Upload debug artifacts + env: + CODEQL_ACTION_TEST_MODE: true timeout-minutes: 45 runs-on: ${{ matrix.os }} steps: @@ -64,15 +66,11 @@ jobs: debug: true debug-artifact-name: my-debug-artifacts debug-database-name: my-db - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true download-and-check-artifacts: name: Download and check debug artifacts needs: upload-artifacts @@ -117,4 +115,3 @@ jobs: done env: GO111MODULE: auto - INTERNAL_CODEQL_ACTION_DEBUG_LOC: true \ No newline at end of file diff --git a/.github/workflows/expected-queries-runs.yml b/.github/workflows/expected-queries-runs.yml index 96527272ed..d74e90acbf 100644 --- a/.github/workflows/expected-queries-runs.yml +++ b/.github/workflows/expected-queries-runs.yml @@ -17,6 +17,8 @@ on: jobs: expected-queries: name: Expected Queries Tests + env: + CODEQL_ACTION_TEST_MODE: true timeout-minutes: 45 runs-on: ubuntu-latest steps: @@ -31,15 +33,11 @@ jobs: with: languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze with: output: ${{ runner.temp }}/results upload-database: false upload: false - env: - TEST_MODE: true - name: Check Sarif uses: ./../action/.github/check-sarif diff --git a/.github/workflows/python-deps.yml b/.github/workflows/python-deps.yml index eeb6d88ead..49acccc578 100644 --- a/.github/workflows/python-deps.yml +++ b/.github/workflows/python-deps.yml @@ -148,6 +148,7 @@ jobs: python_deps_type: pipenv env: + CODEQL_ACTION_TEST_MODE: true PYTHON_DEPS_TYPE: ${{ matrix.python_deps_type }} PYTHON_VERSION: ${{ matrix.python_version }} @@ -165,8 +166,6 @@ jobs: tools: latest languages: python setup-python-dependencies: false - env: - TEST_MODE: true - name: Test Auto Package Installation run: | diff --git a/CHANGELOG.md b/CHANGELOG.md index a1fcb25102..ea29c33b83 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # CodeQL Action Changelog +## 1.1.34 - 25 Nov 2022 + +- Update default CodeQL bundle version to 2.11.4. [#1391](https://github.com/github/codeql-action/pull/1391) +- Fixed a bug where some the `init` action and the `analyze` action would have different sets of experimental feature flags enabled. [#1384](https://github.com/github/codeql-action/pull/1384) + ## 1.1.33 - 16 Nov 2022 - Go is now analyzed in the same way as other compiled languages such as C/C++, C#, and Java. This completes the rollout of the feature described in [CodeQL Action version 2.1.27](#2127---06-oct-2022). [#1322](https://github.com/github/codeql-action/pull/1322) diff --git a/README.md b/README.md index 81b3c2703b..eaaa0438d6 100644 --- a/README.md +++ b/README.md @@ -59,7 +59,7 @@ jobs: uses: github/codeql-action/init@v2 # Override language selection by uncommenting this and choosing your languages # with: - # languages: go, javascript, csharp, python, cpp, java + # languages: go, javascript, csharp, python, cpp, java, ruby # Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java). # If this step fails, then you should remove it and run the build manually (see below). diff --git a/lib/analyze-action.js b/lib/analyze-action.js index b7ab5295cc..7b23c95768 100644 --- a/lib/analyze-action.js +++ b/lib/analyze-action.js @@ -155,7 +155,7 @@ async function run() { const memory = util.getMemoryFlag(actionsUtil.getOptionalInput("ram") || process.env["CODEQL_RAM"]); const repositoryNwo = (0, repository_1.parseRepositoryNwo)(util.getRequiredEnvParam("GITHUB_REPOSITORY")); const gitHubVersion = await (0, api_client_1.getGitHubVersion)(); - const features = new feature_flags_1.Features(gitHubVersion, repositoryNwo, logger); + const features = new feature_flags_1.Features(gitHubVersion, repositoryNwo, actionsUtil.getTemporaryDirectory(), logger); await runAutobuildIfLegacyGoWorkflow(config, logger); dbCreationTimings = await (0, analyze_1.runFinalize)(outputDir, threads, memory, config, logger); if (actionsUtil.getRequiredInput("skip-queries") !== "true") { @@ -170,7 +170,7 @@ async function run() { } core.setOutput("db-locations", dbLocations); if (runStats && actionsUtil.getRequiredInput("upload") === "true") { - uploadResult = await upload_lib.uploadFromActions(outputDir, config.gitHubVersion, logger); + uploadResult = await upload_lib.uploadFromActions(outputDir, logger); core.setOutput("sarif-id", uploadResult.sarifID); } else { diff --git a/lib/analyze-action.js.map b/lib/analyze-action.js.map index b64d19301f..970b089704 100644 --- a/lib/analyze-action.js.map +++ b/lib/analyze-action.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze-action.js","sourceRoot":"","sources":["../src/analyze-action.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"analyze-action.js","sourceRoot":"","sources":["../src/analyze-action.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/api-compatibility.json b/lib/api-compatibility.json index 73d77986ea..120901cf22 100644 --- a/lib/api-compatibility.json +++ b/lib/api-compatibility.json @@ -1 +1 @@ -{ "maximumVersion": "3.7", "minimumVersion": "3.3" } +{ "maximumVersion": "3.8", "minimumVersion": "3.3" } diff --git a/lib/codeql.js b/lib/codeql.js index deee9433d0..3956def945 100644 --- a/lib/codeql.js +++ b/lib/codeql.js @@ -120,20 +120,14 @@ function getCodeQLBundleName() { return `codeql-bundle-${platform}.tar.gz`; } function getCodeQLActionRepository(logger) { - if (process.env["GITHUB_ACTION_REPOSITORY"] !== undefined) { - return process.env["GITHUB_ACTION_REPOSITORY"]; - } - // The Actions Runner used with GitHub Enterprise Server 2.22 did not set the GITHUB_ACTION_REPOSITORY variable. - // This fallback logic can be removed after the end-of-support for 2.22 on 2021-09-23. if ((0, actions_util_1.isRunningLocalAction)()) { // This handles the case where the Action does not come from an Action repository, // e.g. our integration tests which use the Action code from the current checkout. + // In these cases, the GITHUB_ACTION_REPOSITORY environment variable is not set. logger.info("The CodeQL Action is checked out locally. Using the default CodeQL Action repository."); return exports.CODEQL_DEFAULT_ACTION_REPOSITORY; } - logger.info("GITHUB_ACTION_REPOSITORY environment variable was not set. Falling back to legacy method of finding the GitHub Action."); - const relativeScriptPathParts = (0, actions_util_1.getRelativeScriptPath)().split(path.sep); - return `${relativeScriptPathParts[0]}/${relativeScriptPathParts[1]}`; + return util.getRequiredEnvParam("GITHUB_ACTION_REPOSITORY"); } exports.getCodeQLActionRepository = getCodeQLActionRepository; async function getCodeQLBundleDownloadURL(apiDetails, variant, logger) { @@ -216,7 +210,7 @@ async function getCodeQLBundleDownloadURL(apiDetails, variant, logger) { * version requirement. Must be set to true outside tests. * @returns a { CodeQL, toolsVersion } object. */ -async function setupCodeQL(codeqlURL, apiDetails, tempDir, variant, features, logger, checkVersion) { +async function setupCodeQL(codeqlURL, apiDetails, tempDir, variant, bypassToolcache, logger, checkVersion) { try { const forceLatestReason = // We use the special value of 'latest' to prioritize the version in the @@ -227,8 +221,7 @@ async function setupCodeQL(codeqlURL, apiDetails, tempDir, variant, features, lo // the toolcache when the appropriate feature is enabled. This // allows us to quickly rollback a broken bundle that has made its way // into the toolcache. - codeqlURL === undefined && - (await features.getValue(feature_flags_1.Feature.BypassToolcacheEnabled)) + codeqlURL === undefined && bypassToolcache ? "a specific version of CodeQL was not requested and the bypass toolcache feature is enabled" : undefined; const forceLatest = forceLatestReason !== undefined; diff --git a/lib/codeql.js.map b/lib/codeql.js.map index d1a952195d..91af8c985e 100644 --- a/lib/codeql.js.map +++ b/lib/codeql.js.map @@ -1 +1 @@ -{"version":3,"file":"codeql.js","sourceRoot":"","sources":["../src/codeql.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"codeql.js","sourceRoot":"","sources":["../src/codeql.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/codeql.test.js b/lib/codeql.test.js index 81a32a3b70..e85422ddca 100644 --- a/lib/codeql.test.js +++ b/lib/codeql.test.js @@ -32,6 +32,7 @@ const del_1 = __importDefault(require("del")); const yaml = __importStar(require("js-yaml")); const nock_1 = __importDefault(require("nock")); const sinon = __importStar(require("sinon")); +const actionsUtil = __importStar(require("./actions-util")); const codeql = __importStar(require("./codeql")); const defaults = __importStar(require("./defaults.json")); const feature_flags_1 = require("./feature-flags"); @@ -81,7 +82,7 @@ ava_1.default.beforeEach(() => { trapCacheDownloadTime: 0, }; }); -async function mockApiAndSetupCodeQL({ apiDetails, featureEnablement, isPinned, tmpDir, toolsInput, version, }) { +async function mockApiAndSetupCodeQL({ apiDetails, bypassToolcache, isPinned, tmpDir, toolsInput, version, }) { var _a; const platform = process.platform === "win32" ? "win64" @@ -95,7 +96,7 @@ async function mockApiAndSetupCodeQL({ apiDetails, featureEnablement, isPinned, (0, nock_1.default)(baseUrl) .get(relativeUrl) .replyWithFile(200, path.join(__dirname, `/../src/testdata/codeql-bundle${isPinned ? "-pinned" : ""}.tar.gz`)); - return await codeql.setupCodeQL(toolsInput ? toolsInput.input : `${baseUrl}${relativeUrl}`, apiDetails !== null && apiDetails !== void 0 ? apiDetails : sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, featureEnablement !== null && featureEnablement !== void 0 ? featureEnablement : (0, testing_utils_1.createFeatures)([]), (0, logging_1.getRunnerLogger)(true), false); + return await codeql.setupCodeQL(toolsInput ? toolsInput.input : `${baseUrl}${relativeUrl}`, apiDetails !== null && apiDetails !== void 0 ? apiDetails : sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, !!bypassToolcache, (0, logging_1.getRunnerLogger)(true), false); } (0, ava_1.default)("download codeql bundle cache", async (t) => { await util.withTmpDir(async (tmpDir) => { @@ -138,7 +139,7 @@ async function mockApiAndSetupCodeQL({ apiDetails, featureEnablement, isPinned, }); t.assert(toolcache.find("CodeQL", "0.0.0-20200601")); t.deepEqual(pinnedCodeQLConfig.toolsVersion, "20200601"); - const codeQLConfig = await codeql.setupCodeQL(undefined, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, (0, testing_utils_1.createFeatures)([]), (0, logging_1.getRunnerLogger)(true), false); + const codeQLConfig = await codeql.setupCodeQL(undefined, sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, false, (0, logging_1.getRunnerLogger)(true), false); t.deepEqual(codeQLConfig.toolsVersion, "0.0.0-20200601"); const cachedVersions = toolcache.findAllVersions("CodeQL"); t.is(cachedVersions.length, 1); @@ -208,7 +209,7 @@ for (const [isFeatureEnabled, toolsInput, shouldToolcacheBeBypassed,] of TOOLCAC await mockApiAndSetupCodeQL({ version: defaults.bundleVersion, apiDetails: sampleApiDetails, - featureEnablement: (0, testing_utils_1.createFeatures)(isFeatureEnabled ? [feature_flags_1.Feature.BypassToolcacheEnabled] : []), + bypassToolcache: isFeatureEnabled, toolsInput: { input: toolsInput }, tmpDir, }); @@ -240,7 +241,7 @@ for (const [isFeatureEnabled, toolsInput, shouldToolcacheBeBypassed,] of TOOLCAC (0, nock_1.default)("https://example.githubenterprise.com") .get(`/github/codeql-action/releases/download/${defaults.bundleVersion}/${codeQLBundleName}`) .replyWithFile(200, path.join(__dirname, `/../src/testdata/codeql-bundle-pinned.tar.gz`)); - await codeql.setupCodeQL(undefined, sampleGHAEApiDetails, tmpDir, util.GitHubVariant.GHAE, (0, testing_utils_1.createFeatures)([]), (0, logging_1.getRunnerLogger)(true), false); + await codeql.setupCodeQL(undefined, sampleGHAEApiDetails, tmpDir, util.GitHubVariant.GHAE, false, (0, logging_1.getRunnerLogger)(true), false); const cachedVersions = toolcache.findAllVersions("CodeQL"); t.is(cachedVersions.length, 1); }); @@ -297,6 +298,8 @@ for (const [isFeatureEnabled, toolsInput, shouldToolcacheBeBypassed,] of TOOLCAC process.env["RUNNER_TEMP"] = path.dirname(__dirname); const repoLocalRunner = codeql.getCodeQLActionRepository(logger); t.deepEqual(repoLocalRunner, "github/codeql-action"); + // isRunningLocalAction() === false + sinon.stub(actionsUtil, "isRunningLocalAction").returns(false); process.env["GITHUB_ACTION_REPOSITORY"] = "xxx/yyy"; const repoEnv = codeql.getCodeQLActionRepository(logger); t.deepEqual(repoEnv, "xxx/yyy"); diff --git a/lib/codeql.test.js.map b/lib/codeql.test.js.map index 66ce4e78a1..0b06da0003 100644 --- a/lib/codeql.test.js.map +++ b/lib/codeql.test.js.map @@ -1 +1 @@ -{"version":3,"file":"codeql.test.js","sourceRoot":"","sources":["../src/codeql.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"codeql.test.js","sourceRoot":"","sources":["../src/codeql.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/config-utils.js b/lib/config-utils.js index 2c3c04da2c..0fc1be3d70 100644 --- a/lib/config-utils.js +++ b/lib/config-utils.js @@ -19,7 +19,7 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.downloadPacks = exports.getConfig = exports.getPathToParsedConfigFile = exports.initConfig = exports.parsePacks = exports.validatePackSpecification = exports.prettyPrintPack = exports.parsePacksSpecification = exports.parsePacksFromConfig = exports.calculateAugmentation = exports.getDefaultConfig = exports.getUnknownLanguagesError = exports.getNoLanguagesError = exports.getConfigFileDirectoryGivenMessage = exports.getConfigFileFormatInvalidMessage = exports.getConfigFileRepoFormatInvalidMessage = exports.getConfigFileDoesNotExistErrorMessage = exports.getConfigFileOutsideWorkspaceErrorMessage = exports.getLocalPathDoesNotExist = exports.getLocalPathOutsideOfRepository = exports.getPacksStrInvalid = exports.getPacksInvalid = exports.getPacksInvalidSplit = exports.getPathsInvalid = exports.getPathsIgnoreInvalid = exports.getQueryUsesInvalid = exports.getQueriesMissingUses = exports.getQueriesInvalid = exports.getDisableDefaultQueriesInvalid = exports.getNameInvalid = exports.validateAndSanitisePath = exports.defaultAugmentationProperties = void 0; +exports.downloadPacks = exports.getConfig = exports.getPathToParsedConfigFile = exports.initConfig = exports.parsePacks = exports.validatePackSpecification = exports.prettyPrintPack = exports.parsePacksSpecification = exports.parsePacksFromConfig = exports.calculateAugmentation = exports.getDefaultConfig = exports.getRawLanguages = exports.getLanguages = exports.getLanguagesInRepo = exports.getUnknownLanguagesError = exports.getNoLanguagesError = exports.getConfigFileDirectoryGivenMessage = exports.getConfigFileFormatInvalidMessage = exports.getConfigFileRepoFormatInvalidMessage = exports.getConfigFileDoesNotExistErrorMessage = exports.getConfigFileOutsideWorkspaceErrorMessage = exports.getLocalPathDoesNotExist = exports.getLocalPathOutsideOfRepository = exports.getPacksStrInvalid = exports.getPacksInvalid = exports.getPacksInvalidSplit = exports.getPathsInvalid = exports.getPathsIgnoreInvalid = exports.getQueryUsesInvalid = exports.getQueriesMissingUses = exports.getQueriesInvalid = exports.getDisableDefaultQueriesInvalid = exports.getNameInvalid = exports.validateAndSanitisePath = exports.defaultAugmentationProperties = void 0; const fs = __importStar(require("fs")); const path = __importStar(require("path")); // We need to import `performance` on Node 12 @@ -385,7 +385,8 @@ function getUnknownLanguagesError(languages) { } exports.getUnknownLanguagesError = getUnknownLanguagesError; /** - * Gets the set of languages in the current repository + * Gets the set of languages in the current repository that are + * scannable by CodeQL. */ async function getLanguagesInRepo(repository, logger) { logger.debug(`GitHub repo ${repository.owner} ${repository.repo}`); @@ -407,6 +408,7 @@ async function getLanguagesInRepo(repository, logger) { } return [...languages]; } +exports.getLanguagesInRepo = getLanguagesInRepo; /** * Get the languages to analyse. * @@ -418,18 +420,16 @@ async function getLanguagesInRepo(repository, logger) { * then throw an error. */ async function getLanguages(codeQL, languagesInput, repository, logger) { - // Obtain from action input 'languages' if set - let languages = (languagesInput || "") - .split(",") - .map((x) => x.trim()) - .filter((x) => x.length > 0); - logger.info(`Languages from configuration: ${JSON.stringify(languages)}`); - if (languages.length === 0) { - // Obtain languages as all languages in the repo that can be analysed - languages = await getLanguagesInRepo(repository, logger); + // Obtain languages without filtering them. + const { rawLanguages, autodetected } = await getRawLanguages(languagesInput, repository, logger); + let languages = rawLanguages.map(languages_1.resolveAlias); + if (autodetected) { const availableLanguages = await codeQL.resolveLanguages(); languages = languages.filter((value) => value in availableLanguages); - logger.info(`Automatically detected languages: ${JSON.stringify(languages)}`); + logger.info(`Automatically detected languages: ${languages.join(", ")}`); + } + else { + logger.info(`Languages from configuration: ${languages.join(", ")}`); } // If the languages parameter was not given and no languages were // detected then fail here as this is a workflow configuration error. @@ -440,19 +440,51 @@ async function getLanguages(codeQL, languagesInput, repository, logger) { const parsedLanguages = []; const unknownLanguages = []; for (const language of languages) { + // We know this is not an alias since we resolved it above. const parsedLanguage = (0, languages_1.parseLanguage)(language); if (parsedLanguage === undefined) { unknownLanguages.push(language); } - else if (parsedLanguages.indexOf(parsedLanguage) === -1) { + else if (!parsedLanguages.includes(parsedLanguage)) { parsedLanguages.push(parsedLanguage); } } + // Any unknown languages here would have come directly from the input + // since we filter unknown languages coming from the GitHub API. if (unknownLanguages.length > 0) { throw new Error(getUnknownLanguagesError(unknownLanguages)); } return parsedLanguages; } +exports.getLanguages = getLanguages; +/** + * Gets the set of languages in the current repository without checking to + * see if these languages are actually supported by CodeQL. + * + * @param languagesInput The languages from the workflow input + * @param repository the owner/name of the repository + * @param logger a logger + * @returns A tuple containing a list of languages in this repository that might be + * analyzable and whether or not this list was determined automatically. + */ +async function getRawLanguages(languagesInput, repository, logger) { + // Obtain from action input 'languages' if set + let rawLanguages = (languagesInput || "") + .split(",") + .map((x) => x.trim().toLowerCase()) + .filter((x) => x.length > 0); + let autodetected; + if (rawLanguages.length) { + autodetected = false; + } + else { + autodetected = true; + // Obtain all languages in the repo that can be analysed + rawLanguages = (await getLanguagesInRepo(repository, logger)); + } + return { rawLanguages, autodetected }; +} +exports.getRawLanguages = getRawLanguages; async function addQueriesAndPacksFromWorkflow(codeQL, queriesInput, languages, resultMap, packs, tempDir, workspacePath, apiDetails, featureEnablement, logger) { let injectedMlQueries = false; queriesInput = queriesInput.trim(); diff --git a/lib/config-utils.js.map b/lib/config-utils.js.map index 9133f32659..4e420179ee 100644 --- a/lib/config-utils.js.map +++ b/lib/config-utils.js.map @@ -1 +1 @@ -{"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../src/config-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../src/config-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/config-utils.test.js b/lib/config-utils.test.js index 7190f3434a..5b38c9bce8 100644 --- a/lib/config-utils.test.js +++ b/lib/config-utils.test.js @@ -34,6 +34,7 @@ const configUtils = __importStar(require("./config-utils")); const feature_flags_1 = require("./feature-flags"); const languages_1 = require("./languages"); const logging_1 = require("./logging"); +const repository_1 = require("./repository"); const testing_utils_1 = require("./testing-utils"); const util = __importStar(require("./util")); (0, testing_utils_1.setupTests)(ava_1.default); @@ -933,11 +934,7 @@ function parseInputAndConfigMacro(t, packsFromConfig, packsFromInput, languages, languages, "/a/b", mockLogger), expected); } parseInputAndConfigMacro.title = (providedTitle) => `Parse Packs input and config: ${providedTitle}`; -const mockLogger = { - info: (message) => { - console.log(message); - }, -}; +const mockLogger = (0, logging_1.getRunnerLogger)(true); function parseInputAndConfigErrorMacro(t, packsFromConfig, packsFromInput, languages, packsFromInputOverride, expected) { t.throws(() => { configUtils.parsePacks(packsFromConfig, packsFromInput, packsFromInputOverride, languages, "/a/b", mockLogger); @@ -1237,4 +1234,86 @@ const calculateAugmentationErrorMacro = ava_1.default.macro({ }, { instanceOf: Error }, "Invalid 'registries' input. Must be an array of objects with 'url' and 'packages' properties."); }); }); +// getLanguages +const mockRepositoryNwo = (0, repository_1.parseRepositoryNwo)("owner/repo"); +// eslint-disable-next-line github/array-foreach +[ + { + name: "languages from input", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "jAvAscript, \n jaVa", + languagesInRepository: ["SwiFt", "other"], + expectedLanguages: ["javascript", "java"], + expectedApiCall: false, + }, + { + name: "languages from github api", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "", + languagesInRepository: [" jAvAscript\n \t", " jaVa", "SwiFt", "other"], + expectedLanguages: ["javascript", "java"], + expectedApiCall: true, + }, + { + name: "aliases from input", + codeqlResolvedLanguages: ["javascript", "csharp", "cpp", "java", "python"], + languagesInput: " typEscript\n \t, C#, c , KoTlin", + languagesInRepository: ["SwiFt", "other"], + expectedLanguages: ["javascript", "csharp", "cpp", "java"], + expectedApiCall: false, + }, + { + name: "duplicate languages from input", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "jAvAscript, \n jaVa, kotlin, typescript", + languagesInRepository: ["SwiFt", "other"], + expectedLanguages: ["javascript", "java"], + expectedApiCall: false, + }, + { + name: "aliases from github api", + codeqlResolvedLanguages: ["javascript", "csharp", "cpp", "java", "python"], + languagesInput: "", + languagesInRepository: [" typEscript\n \t", " C#", "c", "other"], + expectedLanguages: ["javascript", "csharp", "cpp"], + expectedApiCall: true, + }, + { + name: "no languages", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "", + languagesInRepository: [], + expectedApiCall: true, + expectedError: configUtils.getNoLanguagesError(), + }, + { + name: "unrecognized languages from input", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "a, b, c, javascript", + languagesInRepository: [], + expectedApiCall: false, + expectedError: configUtils.getUnknownLanguagesError(["a", "b"]), + }, +].forEach((args) => { + (0, ava_1.default)(`getLanguages: ${args.name}`, async (t) => { + const mockRequest = (0, testing_utils_1.mockLanguagesInRepo)(args.languagesInRepository); + const languages = args.codeqlResolvedLanguages.reduce((acc, lang) => ({ + ...acc, + [lang]: true, + }), {}); + const codeQL = (0, codeql_1.setCodeQL)({ + resolveLanguages: () => Promise.resolve(languages), + }); + if (args.expectedLanguages) { + // happy path + const actualLanguages = await configUtils.getLanguages(codeQL, args.languagesInput, mockRepositoryNwo, mockLogger); + t.deepEqual(actualLanguages.sort(), args.expectedLanguages.sort()); + } + else { + // there is an error + await t.throwsAsync(async () => await configUtils.getLanguages(codeQL, args.languagesInput, mockRepositoryNwo, mockLogger), { message: args.expectedError }); + } + t.deepEqual(mockRequest.called, args.expectedApiCall); + }); +}); //# sourceMappingURL=config-utils.test.js.map \ No newline at end of file diff --git a/lib/config-utils.test.js.map b/lib/config-utils.test.js.map index 4b1edc3f1a..c88eaf1d2e 100644 --- a/lib/config-utils.test.js.map +++ b/lib/config-utils.test.js.map @@ -1 +1 @@ -{"version":3,"file":"config-utils.test.js","sourceRoot":"","sources":["../src/config-utils.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"config-utils.test.js","sourceRoot":"","sources":["../src/config-utils.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/defaults.json b/lib/defaults.json index 39a5dd80e8..0f32e5d5ff 100644 --- a/lib/defaults.json +++ b/lib/defaults.json @@ -1,3 +1,3 @@ { - "bundleVersion": "codeql-bundle-20221105" + "bundleVersion": "codeql-bundle-20221123" } diff --git a/lib/feature-flags.js b/lib/feature-flags.js index 27aac662fc..cee8ed35e7 100644 --- a/lib/feature-flags.js +++ b/lib/feature-flags.js @@ -19,13 +19,17 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.Features = exports.featureConfig = exports.Feature = void 0; +exports.Features = exports.FEATURE_FLAGS_FILE_NAME = exports.featureConfig = exports.Feature = void 0; +const fs = __importStar(require("fs")); +const path = __importStar(require("path")); const api_client_1 = require("./api-client"); const util = __importStar(require("./util")); var Feature; (function (Feature) { Feature["BypassToolcacheEnabled"] = "bypass_toolcache_enabled"; + Feature["BypassToolcacheKotlinSwiftEnabled"] = "bypass_toolcache_kotlin_swift_enabled"; Feature["CliConfigFileEnabled"] = "cli_config_file_enabled"; + Feature["DisableKotlinAnalysisEnabled"] = "disable_kotlin_analysis_enabled"; Feature["FileBaselineInformationEnabled"] = "file_baseline_information_enabled"; Feature["MlPoweredQueriesEnabled"] = "ml_powered_queries_enabled"; Feature["TrapCachingEnabled"] = "trap_caching_enabled"; @@ -33,6 +37,18 @@ var Feature; exports.featureConfig = { [Feature.BypassToolcacheEnabled]: { envVar: "CODEQL_BYPASS_TOOLCACHE", + // Cannot specify a minimum version because this flag is checked before we have + // access to the CodeQL instance. + minimumVersion: undefined, + }, + [Feature.BypassToolcacheKotlinSwiftEnabled]: { + envVar: "CODEQL_BYPASS_TOOLCACHE_KOTLIN_SWIFT", + // Cannot specify a minimum version because this flag is checked before we have + // access to the CodeQL instance. + minimumVersion: undefined, + }, + [Feature.DisableKotlinAnalysisEnabled]: { + envVar: "CODEQL_DISABLE_KOTLIN_ANALYSIS", minimumVersion: undefined, }, [Feature.CliConfigFileEnabled]: { @@ -52,14 +68,15 @@ exports.featureConfig = { minimumVersion: undefined, }, }; +exports.FEATURE_FLAGS_FILE_NAME = "cached-feature-flags.json"; /** * Determines the enablement status of a number of features. * If feature enablement is not able to be determined locally, a request to the * GitHub API is made to determine the enablement status. */ class Features { - constructor(gitHubVersion, repositoryNwo, logger) { - this.gitHubFeatureFlags = new GitHubFeatureFlags(gitHubVersion, repositoryNwo, logger); + constructor(gitHubVersion, repositoryNwo, tempDir, logger) { + this.gitHubFeatureFlags = new GitHubFeatureFlags(gitHubVersion, repositoryNwo, path.join(tempDir, exports.FEATURE_FLAGS_FILE_NAME), logger); } /** * @@ -103,14 +120,15 @@ class Features { } exports.Features = Features; class GitHubFeatureFlags { - constructor(gitHubVersion, repositoryNwo, logger) { + constructor(gitHubVersion, repositoryNwo, featureFlagsFile, logger) { this.gitHubVersion = gitHubVersion; this.repositoryNwo = repositoryNwo; + this.featureFlagsFile = featureFlagsFile; this.logger = logger; /**/ } async getValue(feature) { - const response = await this.getApiResponse(); + const response = await this.getAllFeatures(); if (response === undefined) { this.logger.debug(`No feature flags API response for ${feature}, considering it disabled.`); return false; @@ -122,10 +140,48 @@ class GitHubFeatureFlags { } return !!featureEnablement; } - async getApiResponse() { - const apiResponse = this.cachedApiResponse || (await this.loadApiResponse()); - this.cachedApiResponse = apiResponse; - return apiResponse; + async getAllFeatures() { + // if we have an in memory cache, use that + if (this.cachedApiResponse !== undefined) { + return this.cachedApiResponse; + } + // if a previous step has written a feature flags file to disk, use that + const fileFlags = await this.readLocalFlags(); + if (fileFlags !== undefined) { + this.cachedApiResponse = fileFlags; + return fileFlags; + } + // if not, request flags from the server + let remoteFlags = await this.loadApiResponse(); + if (remoteFlags === undefined) { + remoteFlags = {}; + } + // cache the response in memory + this.cachedApiResponse = remoteFlags; + // and cache them to disk so future workflow steps can use them + await this.writeLocalFlags(remoteFlags); + return remoteFlags; + } + async readLocalFlags() { + try { + if (fs.existsSync(this.featureFlagsFile)) { + this.logger.debug(`Loading feature flags from ${this.featureFlagsFile}`); + return JSON.parse(fs.readFileSync(this.featureFlagsFile, "utf8")); + } + } + catch (e) { + this.logger.warning(`Error reading cached feature flags file ${this.featureFlagsFile}: ${e}. Requesting from GitHub instead.`); + } + return undefined; + } + async writeLocalFlags(flags) { + try { + this.logger.debug(`Writing feature flags to ${this.featureFlagsFile}`); + fs.writeFileSync(this.featureFlagsFile, JSON.stringify(flags)); + } + catch (e) { + this.logger.warning(`Error writing cached feature flags file ${this.featureFlagsFile}: ${e}.`); + } } async loadApiResponse() { // Do nothing when not running against github.com diff --git a/lib/feature-flags.js.map b/lib/feature-flags.js.map index 14a523f2ec..014a1659bd 100644 --- a/lib/feature-flags.js.map +++ b/lib/feature-flags.js.map @@ -1 +1 @@ -{"version":3,"file":"feature-flags.js","sourceRoot":"","sources":["../src/feature-flags.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"feature-flags.js","sourceRoot":"","sources":["../src/feature-flags.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,6CAA4C;AAI5C,6CAA+B;AAM/B,IAAY,OAQX;AARD,WAAY,OAAO;IACjB,8DAAmD,CAAA;IACnD,sFAA2E,CAAA;IAC3E,2DAAgD,CAAA;IAChD,2EAAgE,CAAA;IAChE,+EAAoE,CAAA;IACpE,iEAAsD,CAAA;IACtD,sDAA2C,CAAA;AAC7C,CAAC,EARW,OAAO,GAAP,eAAO,KAAP,eAAO,QAQlB;AAEY,QAAA,aAAa,GAGtB;IACF,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE;QAChC,MAAM,EAAE,yBAAyB;QACjC,+EAA+E;QAC/E,iCAAiC;QACjC,cAAc,EAAE,SAAS;KAC1B;IACD,CAAC,OAAO,CAAC,iCAAiC,CAAC,EAAE;QAC3C,MAAM,EAAE,sCAAsC;QAC9C,+EAA+E;QAC/E,iCAAiC;QACjC,cAAc,EAAE,SAAS;KAC1B;IACD,CAAC,OAAO,CAAC,4BAA4B,CAAC,EAAE;QACtC,MAAM,EAAE,gCAAgC;QACxC,cAAc,EAAE,SAAS;KAC1B;IACD,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE;QAC9B,MAAM,EAAE,2BAA2B;QACnC,cAAc,EAAE,QAAQ;KACzB;IACD,CAAC,OAAO,CAAC,8BAA8B,CAAC,EAAE;QACxC,MAAM,EAAE,kCAAkC;QAC1C,cAAc,EAAE,QAAQ;KACzB;IACD,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE;QACjC,MAAM,EAAE,2BAA2B;QACnC,cAAc,EAAE,OAAO;KACxB;IACD,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;QAC5B,MAAM,EAAE,qBAAqB;QAC7B,cAAc,EAAE,SAAS;KAC1B;CACF,CAAC;AAUW,QAAA,uBAAuB,GAAG,2BAA2B,CAAC;AAEnE;;;;GAIG;AACH,MAAa,QAAQ;IAGnB,YACE,aAAiC,EACjC,aAA4B,EAC5B,OAAe,EACf,MAAc;QAEd,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAC9C,aAAa,EACb,aAAa,EACb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,+BAAuB,CAAC,EAC3C,MAAM,CACP,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAgB,EAAE,MAAe;QAC9C,IAAI,CAAC,MAAM,IAAI,qBAAa,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE;YACpD,MAAM,IAAI,KAAK,CACb,8DAA8D,OAAO,2CAA2C,CACjH,CAAC;SACH;QAED,oDAAoD;QACpD,IAAI,OAAO,KAAK,OAAO,CAAC,sBAAsB,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;YACrE,OAAO,KAAK,CAAC;SACd;QAED,MAAM,MAAM,GAAG,CACb,OAAO,CAAC,GAAG,CAAC,qBAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CACjD,CAAC,iBAAiB,EAAE,CAAC;QAEtB,sFAAsF;QACtF,IAAI,MAAM,KAAK,OAAO,EAAE;YACtB,OAAO,KAAK,CAAC;SACd;QAED,yEAAyE;QACzE,MAAM,cAAc,GAAG,qBAAa,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC;QAC7D,IAAI,MAAM,IAAI,cAAc,EAAE;YAC5B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,EAAE;gBAC5D,OAAO,KAAK,CAAC;aACd;SACF;QAED,8EAA8E;QAC9E,IAAI,MAAM,KAAK,MAAM,EAAE;YACrB,OAAO,IAAI,CAAC;SACb;QACD,gDAAgD;QAChD,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;CACF;AAjED,4BAiEC;AAED,MAAM,kBAAkB;IAGtB,YACmB,aAAiC,EACjC,aAA4B,EAC5B,gBAAwB,EACxB,MAAc;QAHd,kBAAa,GAAb,aAAa,CAAoB;QACjC,kBAAa,GAAb,aAAa,CAAe;QAC5B,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,WAAM,GAAN,MAAM,CAAQ;QAE/B,IAAI;IACN,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAgB;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,qCAAqC,OAAO,4BAA4B,CACzE,CAAC;YACF,OAAO,KAAK,CAAC;SACd;QACD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5C,IAAI,iBAAiB,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,YAAY,OAAO,uDAAuD,CAC3E,CAAC;YACF,OAAO,KAAK,CAAC;SACd;QACD,OAAO,CAAC,CAAC,iBAAiB,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,0CAA0C;QAC1C,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS,EAAE;YACxC,OAAO,IAAI,CAAC,iBAAiB,CAAC;SAC/B;QAED,wEAAwE;QACxE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9C,IAAI,SAAS,KAAK,SAAS,EAAE;YAC3B,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACnC,OAAO,SAAS,CAAC;SAClB;QAED,wCAAwC;QACxC,IAAI,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/C,IAAI,WAAW,KAAK,SAAS,EAAE;YAC7B,WAAW,GAAG,EAAE,CAAC;SAClB;QAED,+BAA+B;QAC/B,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC;QAErC,+DAA+D;QAC/D,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAExC,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,cAAc;QAG1B,IAAI;YACF,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;gBACxC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,8BAA8B,IAAI,CAAC,gBAAgB,EAAE,CACtD,CAAC;gBACF,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;aACnE;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,OAAO,CACjB,2CAA2C,IAAI,CAAC,gBAAgB,KAAK,CAAC,mCAAmC,CAC1G,CAAC;SACH;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,KAAoC;QAEpC,IAAI;YACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;YACvE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;SAChE;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,OAAO,CACjB,2CAA2C,IAAI,CAAC,gBAAgB,KAAK,CAAC,GAAG,CAC1E,CAAC;SACH;IACH,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,iDAAiD;QACjD,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;YACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,oEAAoE,CACrE,CAAC;YACF,OAAO,EAAE,CAAC;SACX;QACD,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAA,yBAAY,GAAE,CAAC,OAAO,CAC3C,8DAA8D,EAC9D;gBACE,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK;gBAC/B,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI;aAC9B,CACF,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC;SACtB;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,EAAE;gBAC3C,IAAI,CAAC,MAAM,CAAC,OAAO,CACjB,gGAAgG;oBAC9F,oEAAoE;oBACpE,qFAAqF;oBACrF,kFAAkF,CAAC,EAAE,CACxF,CAAC;aACH;iBAAM;gBACL,kFAAkF;gBAClF,8EAA8E;gBAC9E,2FAA2F;gBAC3F,eAAe;gBACf,MAAM,IAAI,KAAK,CACb,sEAAsE,CAAC,EAAE,CAC1E,CAAC;aACH;SACF;IACH,CAAC;CACF"} \ No newline at end of file diff --git a/lib/feature-flags.test.js b/lib/feature-flags.test.js index d8600c71ac..2be53499b8 100644 --- a/lib/feature-flags.test.js +++ b/lib/feature-flags.test.js @@ -1,8 +1,29 @@ "use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +const fs = __importStar(require("fs")); +const path = __importStar(require("path")); const ava_1 = __importDefault(require("ava")); const feature_flags_1 = require("./feature-flags"); const logging_1 = require("./logging"); @@ -25,7 +46,7 @@ for (const variant of ALL_FEATURES_DISABLED_VARIANTS) { (0, ava_1.default)(`All features are disabled if running against ${variant.description}`, async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { const loggedMessages = []; - const featureEnablement = setUpTests(tmpDir, (0, testing_utils_1.getRecordingLogger)(loggedMessages), variant.gitHubVersion); + const featureEnablement = setUpFeatureFlagTests(tmpDir, (0, testing_utils_1.getRecordingLogger)(loggedMessages), variant.gitHubVersion); for (const feature of Object.values(feature_flags_1.Feature)) { t.false(await featureEnablement.getValue(feature, includeCodeQlIfRequired(feature))); } @@ -38,7 +59,7 @@ for (const variant of ALL_FEATURES_DISABLED_VARIANTS) { (0, ava_1.default)("API response missing", async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { const loggedMessages = []; - const featureEnablement = setUpTests(tmpDir, (0, testing_utils_1.getRecordingLogger)(loggedMessages)); + const featureEnablement = setUpFeatureFlagTests(tmpDir, (0, testing_utils_1.getRecordingLogger)(loggedMessages)); (0, testing_utils_1.mockFeatureFlagApiEndpoint)(403, {}); for (const feature of Object.values(feature_flags_1.Feature)) { t.assert((await featureEnablement.getValue(feature, includeCodeQlIfRequired(feature))) === false); @@ -49,7 +70,7 @@ for (const variant of ALL_FEATURES_DISABLED_VARIANTS) { (0, ava_1.default)("Features are disabled if they're not returned in API response", async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { const loggedMessages = []; - const featureEnablement = setUpTests(tmpDir, (0, testing_utils_1.getRecordingLogger)(loggedMessages)); + const featureEnablement = setUpFeatureFlagTests(tmpDir, (0, testing_utils_1.getRecordingLogger)(loggedMessages)); (0, testing_utils_1.mockFeatureFlagApiEndpoint)(200, {}); for (const feature of Object.values(feature_flags_1.Feature)) { t.assert((await featureEnablement.getValue(feature, includeCodeQlIfRequired(feature))) === false); @@ -59,7 +80,7 @@ for (const variant of ALL_FEATURES_DISABLED_VARIANTS) { }); (0, ava_1.default)("Feature flags exception is propagated if the API request errors", async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); (0, testing_utils_1.mockFeatureFlagApiEndpoint)(500, {}); await t.throwsAsync(async () => featureEnablement.getValue(feature_flags_1.Feature.MlPoweredQueriesEnabled, includeCodeQlIfRequired(feature_flags_1.Feature.MlPoweredQueriesEnabled)), { message: "Encountered an error while trying to determine feature enablement: Error: some error message", @@ -69,7 +90,7 @@ for (const variant of ALL_FEATURES_DISABLED_VARIANTS) { for (const feature of Object.keys(feature_flags_1.featureConfig)) { (0, ava_1.default)(`Only feature '${feature}' is enabled if enabled in the API response. Other features disabled`, async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); // set all features to false except the one we're testing const expectedFeatureEnablement = {}; for (const f of Object.keys(feature_flags_1.featureConfig)) { @@ -87,7 +108,7 @@ for (const feature of Object.keys(feature_flags_1.featureConfig)) { }); (0, ava_1.default)(`Only feature '${feature}' is enabled if the associated environment variable is true. Others disabled.`, async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); const expectedFeatureEnablement = initializeFeatures(false); (0, testing_utils_1.mockFeatureFlagApiEndpoint)(200, expectedFeatureEnablement); // feature should be disabled initially @@ -99,7 +120,7 @@ for (const feature of Object.keys(feature_flags_1.featureConfig)) { }); (0, ava_1.default)(`Feature '${feature}' is disabled if the associated environment variable is false, even if enabled in API`, async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); const expectedFeatureEnablement = initializeFeatures(true); (0, testing_utils_1.mockFeatureFlagApiEndpoint)(200, expectedFeatureEnablement); // feature should be enabled initially @@ -112,7 +133,7 @@ for (const feature of Object.keys(feature_flags_1.featureConfig)) { if (feature_flags_1.featureConfig[feature].minimumVersion !== undefined) { (0, ava_1.default)(`Getting feature '${feature} should throw if no codeql is provided`, async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); const expectedFeatureEnablement = initializeFeatures(true); (0, testing_utils_1.mockFeatureFlagApiEndpoint)(200, expectedFeatureEnablement); await t.throwsAsync(async () => featureEnablement.getValue(feature), { @@ -124,7 +145,7 @@ for (const feature of Object.keys(feature_flags_1.featureConfig)) { if (feature_flags_1.featureConfig[feature].minimumVersion !== undefined) { (0, ava_1.default)(`Feature '${feature}' is disabled if the minimum CLI version is below ${feature_flags_1.featureConfig[feature].minimumVersion}`, async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); const expectedFeatureEnablement = initializeFeatures(true); (0, testing_utils_1.mockFeatureFlagApiEndpoint)(200, expectedFeatureEnablement); // feature should be disabled when an old CLI version is set @@ -156,6 +177,37 @@ for (const feature of Object.keys(feature_flags_1.featureConfig)) { // An even less likely scenario is that we no longer have any features. t.assert(Object.values(feature_flags_1.featureConfig).length > 0, "There should be at least one feature"); }); +(0, ava_1.default)("Feature flags are saved to disk", async (t) => { + await (0, util_1.withTmpDir)(async (tmpDir) => { + const featureEnablement = setUpFeatureFlagTests(tmpDir); + const expectedFeatureEnablement = initializeFeatures(true); + (0, testing_utils_1.mockFeatureFlagApiEndpoint)(200, expectedFeatureEnablement); + const cachedFeatureFlags = path.join(tmpDir, feature_flags_1.FEATURE_FLAGS_FILE_NAME); + t.false(fs.existsSync(cachedFeatureFlags), "Feature flag cached file should not exist before getting feature flags"); + t.true(await featureEnablement.getValue(feature_flags_1.Feature.CliConfigFileEnabled, includeCodeQlIfRequired(feature_flags_1.Feature.CliConfigFileEnabled)), "Feature flag should be enabled initially"); + t.true(fs.existsSync(cachedFeatureFlags), "Feature flag cached file should exist after getting feature flags"); + const actualFeatureEnablement = JSON.parse(fs.readFileSync(cachedFeatureFlags, "utf8")); + t.deepEqual(actualFeatureEnablement, expectedFeatureEnablement); + // now test that we actually use the feature flag cache instead of the server + actualFeatureEnablement[feature_flags_1.Feature.CliConfigFileEnabled] = false; + fs.writeFileSync(cachedFeatureFlags, JSON.stringify(actualFeatureEnablement)); + // delete the in memory cache so that we are forced to use the cached file + featureEnablement.gitHubFeatureFlags.cachedApiResponse = undefined; + t.false(await featureEnablement.getValue(feature_flags_1.Feature.CliConfigFileEnabled, includeCodeQlIfRequired(feature_flags_1.Feature.CliConfigFileEnabled)), "Feature flag should be enabled after reading from cached file"); + }); +}); +(0, ava_1.default)("Environment variable can override feature flag cache", async (t) => { + await (0, util_1.withTmpDir)(async (tmpDir) => { + const featureEnablement = setUpFeatureFlagTests(tmpDir); + const expectedFeatureEnablement = initializeFeatures(true); + (0, testing_utils_1.mockFeatureFlagApiEndpoint)(200, expectedFeatureEnablement); + const cachedFeatureFlags = path.join(tmpDir, feature_flags_1.FEATURE_FLAGS_FILE_NAME); + t.true(await featureEnablement.getValue(feature_flags_1.Feature.CliConfigFileEnabled, includeCodeQlIfRequired(feature_flags_1.Feature.CliConfigFileEnabled)), "Feature flag should be enabled initially"); + t.true(fs.existsSync(cachedFeatureFlags), "Feature flag cached file should exist after getting feature flags"); + process.env.CODEQL_PASS_CONFIG_TO_CLI = "false"; + t.false(await featureEnablement.getValue(feature_flags_1.Feature.CliConfigFileEnabled, includeCodeQlIfRequired(feature_flags_1.Feature.CliConfigFileEnabled)), "Feature flag should be disabled after setting env var"); + }); +}); function assertAllFeaturesUndefinedInApi(t, loggedMessages) { for (const feature of Object.keys(feature_flags_1.featureConfig)) { t.assert(loggedMessages.find((v) => v.type === "debug" && @@ -169,9 +221,9 @@ function initializeFeatures(initialValue) { return features; }, {}); } -function setUpTests(tmpDir, logger = (0, logging_1.getRunnerLogger)(true), gitHubVersion = { type: util_1.GitHubVariant.DOTCOM }) { +function setUpFeatureFlagTests(tmpDir, logger = (0, logging_1.getRunnerLogger)(true), gitHubVersion = { type: util_1.GitHubVariant.DOTCOM }) { (0, testing_utils_1.setupActionsVars)(tmpDir, tmpDir); - return new feature_flags_1.Features(gitHubVersion, testRepositoryNwo, logger); + return new feature_flags_1.Features(gitHubVersion, testRepositoryNwo, tmpDir, logger); } function includeCodeQlIfRequired(feature) { return feature_flags_1.featureConfig[feature].minimumVersion !== undefined diff --git a/lib/feature-flags.test.js.map b/lib/feature-flags.test.js.map index df5ce53c6f..79162b6382 100644 --- a/lib/feature-flags.test.js.map +++ b/lib/feature-flags.test.js.map @@ -1 +1 @@ -{"version":3,"file":"feature-flags.test.js","sourceRoot":"","sources":["../src/feature-flags.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"feature-flags.test.js","sourceRoot":"","sources":["../src/feature-flags.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,8CAAuB;AAEvB,mDAMyB;AACzB,uCAA4C;AAC5C,6CAAkD;AAClD,mDAOyB;AAEzB,iCAA0E;AAE1E,IAAA,0BAAU,EAAC,aAAI,CAAC,CAAC;AAEjB,aAAI,CAAC,UAAU,CAAC,GAAG,EAAE;IACnB,IAAA,4BAAqB,EAAC,OAAO,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,IAAA,+BAAkB,EAAC,gBAAgB,CAAC,CAAC;AAE/D,MAAM,8BAA8B,GAG/B;IACH;QACE,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,EAAE,IAAI,EAAE,oBAAa,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE;KAC9D;IACD,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,oBAAa,CAAC,IAAI,EAAE,EAAE;CACrE,CAAC;AAEF,KAAK,MAAM,OAAO,IAAI,8BAA8B,EAAE;IACpD,IAAA,aAAI,EAAC,gDAAgD,OAAO,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACtF,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChC,MAAM,cAAc,GAAG,EAAE,CAAC;YAC1B,MAAM,iBAAiB,GAAG,qBAAqB,CAC7C,MAAM,EACN,IAAA,kCAAkB,EAAC,cAAc,CAAC,EAClC,OAAO,CAAC,aAAa,CACtB,CAAC;YAEF,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,uBAAO,CAAC,EAAE;gBAC5C,CAAC,CAAC,KAAK,CACL,MAAM,iBAAiB,CAAC,QAAQ,CAC9B,OAAO,EACP,uBAAuB,CAAC,OAAO,CAAC,CACjC,CACF,CAAC;aACH;YAED,CAAC,CAAC,MAAM,CACN,cAAc,CAAC,IAAI,CACjB,CAAC,CAAgB,EAAE,EAAE,CACnB,CAAC,CAAC,IAAI,KAAK,OAAO;gBAClB,CAAC,CAAC,OAAO;oBACP,oEAAoE,CACzE,KAAK,SAAS,CAChB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;CACJ;AAED,IAAA,aAAI,EAAC,sBAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACvC,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAChC,MAAM,cAAc,GAAoB,EAAE,CAAC;QAC3C,MAAM,iBAAiB,GAAG,qBAAqB,CAC7C,MAAM,EACN,IAAA,kCAAkB,EAAC,cAAc,CAAC,CACnC,CAAC;QAEF,IAAA,0CAA0B,EAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAEpC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,uBAAO,CAAC,EAAE;YAC5C,CAAC,CAAC,MAAM,CACN,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAC/B,OAAO,EACP,uBAAuB,CAAC,OAAO,CAAC,CACjC,CAAC,KAAK,KAAK,CACb,CAAC;SACH;QACD,+BAA+B,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,+DAA+D,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAChF,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAChC,MAAM,cAAc,GAAoB,EAAE,CAAC;QAC3C,MAAM,iBAAiB,GAAG,qBAAqB,CAC7C,MAAM,EACN,IAAA,kCAAkB,EAAC,cAAc,CAAC,CACnC,CAAC;QAEF,IAAA,0CAA0B,EAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAEpC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,uBAAO,CAAC,EAAE;YAC5C,CAAC,CAAC,MAAM,CACN,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAC/B,OAAO,EACP,uBAAuB,CAAC,OAAO,CAAC,CACjC,CAAC,KAAK,KAAK,CACb,CAAC;SACH;QAED,+BAA+B,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iEAAiE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAClF,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAExD,IAAA,0CAA0B,EAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAEpC,MAAM,CAAC,CAAC,WAAW,CACjB,KAAK,IAAI,EAAE,CACT,iBAAiB,CAAC,QAAQ,CACxB,uBAAO,CAAC,uBAAuB,EAC/B,uBAAuB,CAAC,uBAAO,CAAC,uBAAuB,CAAC,CACzD,EACH;YACE,OAAO,EACL,8FAA8F;SACjG,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,6BAAa,CAAC,EAAE;IAChD,IAAA,aAAI,EAAC,iBAAiB,OAAO,sEAAsE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/G,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExD,yDAAyD;YACzD,MAAM,yBAAyB,GAAmC,EAAE,CAAC;YACrE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,6BAAa,CAAC,EAAE;gBAC1C,yBAAyB,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC;aAC9C;YACD,IAAA,0CAA0B,EAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;YAE3D,6CAA6C;YAC7C,MAAM,uBAAuB,GAAmC,EAAE,CAAC;YACnE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,6BAAa,CAAC,EAAE;gBAC1C,uBAAuB,CAAC,CAAC,CAAC,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAC3D,CAAY,EACZ,uBAAuB,CAAC,CAAC,CAAC,CAC3B,CAAC;aACH;YAED,4DAA4D;YAC5D,CAAC,CAAC,SAAS,CAAC,uBAAuB,EAAE,yBAAyB,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,iBAAiB,OAAO,+EAA+E,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QACxH,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExD,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAA,0CAA0B,EAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;YAE3D,uCAAuC;YACvC,CAAC,CAAC,MAAM,CACN,CAAC,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAChC,OAAkB,EAClB,uBAAuB,CAAC,OAAO,CAAC,CACjC,CAAC,CACH,CAAC;YAEF,gEAAgE;YAChE,OAAO,CAAC,GAAG,CAAC,6BAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;YACpD,CAAC,CAAC,MAAM,CACN,MAAM,iBAAiB,CAAC,QAAQ,CAC9B,OAAkB,EAClB,uBAAuB,CAAC,OAAO,CAAC,CACjC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,YAAY,OAAO,uFAAuF,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC3H,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExD,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC3D,IAAA,0CAA0B,EAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;YAE3D,sCAAsC;YACtC,CAAC,CAAC,MAAM,CACN,MAAM,iBAAiB,CAAC,QAAQ,CAC9B,OAAkB,EAClB,uBAAuB,CAAC,OAAO,CAAC,CACjC,CACF,CAAC;YAEF,kEAAkE;YAClE,OAAO,CAAC,GAAG,CAAC,6BAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;YACrD,CAAC,CAAC,MAAM,CACN,CAAC,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAChC,OAAkB,EAClB,uBAAuB,CAAC,OAAO,CAAC,CACjC,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,6BAAa,CAAC,OAAO,CAAC,CAAC,cAAc,KAAK,SAAS,EAAE;QACvD,IAAA,aAAI,EAAC,oBAAoB,OAAO,wCAAwC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YACpF,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;gBAExD,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC3D,IAAA,0CAA0B,EAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;gBAE3D,MAAM,CAAC,CAAC,WAAW,CACjB,KAAK,IAAI,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAkB,CAAC,EAC1D;oBACE,OAAO,EAAE,8DAA8D,OAAO,2CAA2C;iBAC1H,CACF,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,6BAAa,CAAC,OAAO,CAAC,CAAC,cAAc,KAAK,SAAS,EAAE;QACvD,IAAA,aAAI,EAAC,YAAY,OAAO,qDAAqD,6BAAa,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAChI,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;gBAExD,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC3D,IAAA,0CAA0B,EAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;gBAE3D,4DAA4D;gBAC5D,IAAI,MAAM,GAAG,IAAA,iCAAiB,EAAC,OAAO,CAAC,CAAC;gBACxC,CAAC,CAAC,MAAM,CACN,CAAC,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,OAAkB,EAAE,MAAM,CAAC,CAAC,CAChE,CAAC;gBAEF,oEAAoE;gBACpE,qCAAqC;gBACrC,OAAO,CAAC,GAAG,CAAC,6BAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;gBACpD,CAAC,CAAC,MAAM,CACN,CAAC,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,OAAkB,EAAE,MAAM,CAAC,CAAC,CAChE,CAAC;gBAEF,0DAA0D;gBAC1D,yBAAyB;gBACzB,OAAO,CAAC,GAAG,CAAC,6BAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;gBAChD,MAAM,GAAG,IAAA,iCAAiB,EAAC,6BAAa,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,CAAC;gBAClE,CAAC,CAAC,MAAM,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,OAAkB,EAAE,MAAM,CAAC,CAAC,CAAC;gBAEvE,kEAAkE;gBAClE,OAAO,CAAC,GAAG,CAAC,6BAAa,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;gBACrD,CAAC,CAAC,MAAM,CACN,CAAC,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,OAAkB,EAAE,MAAM,CAAC,CAAC,CAChE,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;CACF;AAED,4EAA4E;AAC5E,+EAA+E;AAC/E,qEAAqE;AACrE,gFAAgF;AAChF,8DAA8D;AAC9D,IAAA,aAAI,EAAC,sDAAsD,EAAE,CAAC,CAAC,EAAE,EAAE;IACjE,CAAC,CAAC,MAAM,CACN,MAAM,CAAC,MAAM,CAAC,6BAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,SAAS,CAAC,EACxE,8DAA8D,CAC/D,CAAC;IAEF,uEAAuE;IACvE,CAAC,CAAC,MAAM,CACN,MAAM,CAAC,MAAM,CAAC,6BAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EACvC,sCAAsC,CACvC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,iCAAiC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAClD,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAA,0CAA0B,EAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;QAE3D,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,uCAAuB,CAAC,CAAC;QAEtE,CAAC,CAAC,KAAK,CACL,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EACjC,wEAAwE,CACzE,CAAC;QAEF,CAAC,CAAC,IAAI,CACJ,MAAM,iBAAiB,CAAC,QAAQ,CAC9B,uBAAO,CAAC,oBAAoB,EAC5B,uBAAuB,CAAC,uBAAO,CAAC,oBAAoB,CAAC,CACtD,EACD,0CAA0C,CAC3C,CAAC;QAEF,CAAC,CAAC,IAAI,CACJ,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EACjC,mEAAmE,CACpE,CAAC;QAEF,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CACxC,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAC5C,CAAC;QACF,CAAC,CAAC,SAAS,CAAC,uBAAuB,EAAE,yBAAyB,CAAC,CAAC;QAEhE,6EAA6E;QAC7E,uBAAuB,CAAC,uBAAO,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC;QAC9D,EAAE,CAAC,aAAa,CACd,kBAAkB,EAClB,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,CACxC,CAAC;QAEF,0EAA0E;QACzE,iBAAyB,CAAC,kBAAkB,CAAC,iBAAiB,GAAG,SAAS,CAAC;QAE5E,CAAC,CAAC,KAAK,CACL,MAAM,iBAAiB,CAAC,QAAQ,CAC9B,uBAAO,CAAC,oBAAoB,EAC5B,uBAAuB,CAAC,uBAAO,CAAC,oBAAoB,CAAC,CACtD,EACD,+DAA+D,CAChE,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,aAAI,EAAC,sDAAsD,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACvE,MAAM,IAAA,iBAAU,EAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAChC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAA,0CAA0B,EAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;QAE3D,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,uCAAuB,CAAC,CAAC;QACtE,CAAC,CAAC,IAAI,CACJ,MAAM,iBAAiB,CAAC,QAAQ,CAC9B,uBAAO,CAAC,oBAAoB,EAC5B,uBAAuB,CAAC,uBAAO,CAAC,oBAAoB,CAAC,CACtD,EACD,0CAA0C,CAC3C,CAAC;QAEF,CAAC,CAAC,IAAI,CACJ,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EACjC,mEAAmE,CACpE,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,OAAO,CAAC;QAEhD,CAAC,CAAC,KAAK,CACL,MAAM,iBAAiB,CAAC,QAAQ,CAC9B,uBAAO,CAAC,oBAAoB,EAC5B,uBAAuB,CAAC,uBAAO,CAAC,oBAAoB,CAAC,CACtD,EACD,uDAAuD,CACxD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAS,+BAA+B,CAAC,CAAC,EAAE,cAA+B;IACzE,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,6BAAa,CAAC,EAAE;QAChD,CAAC,CAAC,MAAM,CACN,cAAc,CAAC,IAAI,CACjB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,OAAO;YACjB,CAAC,CAAC,OAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC;YACtC,CAAC,CAAC,OAAkB,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAC5D,KAAK,SAAS,CAChB,CAAC;KACH;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,YAAqB;IAC/C,OAAO,MAAM,CAAC,IAAI,CAAC,6BAAa,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;QACzD,QAAQ,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC;QAC7B,OAAO,QAAQ,CAAC;IAClB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAc,EACd,MAAM,GAAG,IAAA,yBAAe,EAAC,IAAI,CAAC,EAC9B,gBAAgB,EAAE,IAAI,EAAE,oBAAa,CAAC,MAAM,EAAwB;IAEpE,IAAA,gCAAgB,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC,OAAO,IAAI,wBAAQ,CAAC,aAAa,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAe;IAC9C,OAAO,6BAAa,CAAC,OAAO,CAAC,CAAC,cAAc,KAAK,SAAS;QACxD,CAAC,CAAC,IAAA,iCAAiB,EAAC,OAAO,CAAC;QAC5B,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC"} \ No newline at end of file diff --git a/lib/init-action.js b/lib/init-action.js index 478493250e..99b18c6c05 100644 --- a/lib/init-action.js +++ b/lib/init-action.js @@ -88,13 +88,13 @@ async function run() { const gitHubVersion = await (0, api_client_1.getGitHubVersion)(); (0, util_1.checkGitHubVersionInRange)(gitHubVersion, logger); const repositoryNwo = (0, repository_1.parseRepositoryNwo)((0, util_1.getRequiredEnvParam)("GITHUB_REPOSITORY")); - const features = new feature_flags_1.Features(gitHubVersion, repositoryNwo, logger); + const features = new feature_flags_1.Features(gitHubVersion, repositoryNwo, (0, actions_util_1.getTemporaryDirectory)(), logger); try { const workflowErrors = await (0, actions_util_1.validateWorkflow)(); if (!(await (0, actions_util_1.sendStatusReport)(await (0, actions_util_1.createStatusReportBase)("init", "starting", startedAt, workflowErrors)))) { return; } - const initCodeQLResult = await (0, init_1.initCodeQL)((0, actions_util_1.getOptionalInput)("tools"), apiDetails, (0, actions_util_1.getTemporaryDirectory)(), gitHubVersion.type, features, logger); + const initCodeQLResult = await (0, init_1.initCodeQL)((0, actions_util_1.getOptionalInput)("tools"), apiDetails, (0, actions_util_1.getTemporaryDirectory)(), gitHubVersion.type, await (0, util_1.shouldBypassToolcache)(features, (0, actions_util_1.getOptionalInput)("tools"), (0, actions_util_1.getOptionalInput)("languages"), repositoryNwo, logger), logger); codeql = initCodeQLResult.codeql; toolsVersion = initCodeQLResult.toolsVersion; await (0, util_1.enrichEnvironment)(codeql); @@ -137,6 +137,10 @@ async function run() { core.exportVariable("CODEQL_RAM", process.env["CODEQL_RAM"] || (0, util_1.getMemoryFlagValue)((0, actions_util_1.getOptionalInput)("ram")).toString()); core.exportVariable("CODEQL_THREADS", (0, util_1.getThreadsFlagValue)((0, actions_util_1.getOptionalInput)("threads"), logger).toString()); + // Disable Kotlin extractor if feature flag set + if (await features.getValue(feature_flags_1.Feature.DisableKotlinAnalysisEnabled)) { + core.exportVariable("CODEQL_EXTRACTOR_JAVA_AGENT_DISABLE_KOTLIN", "true"); + } const sourceRoot = path.resolve((0, util_1.getRequiredEnvParam)("GITHUB_WORKSPACE"), (0, actions_util_1.getOptionalInput)("source-root") || ""); const tracerConfig = await (0, init_1.runInit)(codeql, config, sourceRoot, "Runner.Worker.exe", features, logger); if (tracerConfig !== undefined) { @@ -177,6 +181,7 @@ async function runWrapper() { core.setFailed(`init action failed: ${error}`); console.log(error); } + await (0, util_1.checkForTimeout)(); } void runWrapper(); //# sourceMappingURL=init-action.js.map \ No newline at end of file diff --git a/lib/init-action.js.map b/lib/init-action.js.map index 986993d4e9..e2d5b06f58 100644 --- a/lib/init-action.js.map +++ b/lib/init-action.js.map @@ -1 +1 @@ -{"version":3,"file":"init-action.js","sourceRoot":"","sources":["../src/init-action.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"init-action.js","sourceRoot":"","sources":["../src/init-action.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/init.js b/lib/init.js index 7767efdb8f..820f2e5e1f 100644 --- a/lib/init.js +++ b/lib/init.js @@ -30,9 +30,9 @@ const configUtils = __importStar(require("./config-utils")); const tracer_config_1 = require("./tracer-config"); const util = __importStar(require("./util")); const util_1 = require("./util"); -async function initCodeQL(codeqlURL, apiDetails, tempDir, variant, featureEnablement, logger) { +async function initCodeQL(codeqlURL, apiDetails, tempDir, variant, bypassToolcache, logger) { logger.startGroup("Setup CodeQL tools"); - const { codeql, toolsVersion } = await (0, codeql_1.setupCodeQL)(codeqlURL, apiDetails, tempDir, variant, featureEnablement, logger, true); + const { codeql, toolsVersion } = await (0, codeql_1.setupCodeQL)(codeqlURL, apiDetails, tempDir, variant, bypassToolcache, logger, true); await codeql.printVersion(); logger.endGroup(); return { codeql, toolsVersion }; diff --git a/lib/init.js.map b/lib/init.js.map index 49f6e5c02a..0353057512 100644 --- a/lib/init.js.map +++ b/lib/init.js.map @@ -1 +1 @@ -{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/languages.js b/lib/languages.js index e0c348ff1a..d65222b4e0 100644 --- a/lib/languages.js +++ b/lib/languages.js @@ -1,6 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.isScannedLanguage = exports.isTracedLanguage = exports.parseLanguage = exports.Language = void 0; +exports.isScannedLanguage = exports.isTracedLanguage = exports.parseLanguage = exports.resolveAlias = exports.KOTLIN_SWIFT_BYPASS = exports.LANGUAGE_ALIASES = exports.Language = void 0; // All the languages supported by CodeQL var Language; (function (Language) { @@ -14,23 +14,39 @@ var Language; Language["swift"] = "swift"; })(Language = exports.Language || (exports.Language = {})); // Additional names for languages -const LANGUAGE_ALIASES = { +exports.LANGUAGE_ALIASES = { c: Language.cpp, "c++": Language.cpp, "c#": Language.csharp, + kotlin: Language.java, typescript: Language.javascript, }; -// Translate from user input or GitHub's API names for languages to CodeQL's names for languages +exports.KOTLIN_SWIFT_BYPASS = ["kotlin", "swift"]; +function resolveAlias(lang) { + return exports.LANGUAGE_ALIASES[lang] || lang; +} +exports.resolveAlias = resolveAlias; +/** + * Translate from user input or GitHub's API names for languages to CodeQL's + * names for languages. This does not translate a language alias to the actual + * language used by CodeQL. + * + * @param language The language to translate. + * @returns A language supported by CodeQL, an alias for a language, or + * `undefined` if the input language cannot be parsed into a langauge supported + * by CodeQL. + */ function parseLanguage(language) { // Normalise to lower case - language = language.toLowerCase(); + language = language.trim().toLowerCase(); // See if it's an exact match if (language in Language) { return language; } - // Check language aliases - if (language in LANGUAGE_ALIASES) { - return LANGUAGE_ALIASES[language]; + // Check language aliases, but return the original language name, + // the alias will be resolved later. + if (language in exports.LANGUAGE_ALIASES) { + return language; } return undefined; } diff --git a/lib/languages.js.map b/lib/languages.js.map index 36f6f2a2f8..747dcb0a01 100644 --- a/lib/languages.js.map +++ b/lib/languages.js.map @@ -1 +1 @@ -{"version":3,"file":"languages.js","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":";;;AAAA,wCAAwC;AACxC,IAAY,QASX;AATD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,qBAAS,CAAA;IACT,yBAAa,CAAA;IACb,qCAAyB,CAAA;IACzB,6BAAiB,CAAA;IACjB,yBAAa,CAAA;IACb,2BAAe,CAAA;AACjB,CAAC,EATW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QASnB;AAED,iCAAiC;AACjC,MAAM,gBAAgB,GAAiC;IACrD,CAAC,EAAE,QAAQ,CAAC,GAAG;IACf,KAAK,EAAE,QAAQ,CAAC,GAAG;IACnB,IAAI,EAAE,QAAQ,CAAC,MAAM;IACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;CAChC,CAAC;AAEF,gGAAgG;AAChG,SAAgB,aAAa,CAAC,QAAgB;IAC5C,0BAA0B;IAC1B,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAElC,6BAA6B;IAC7B,IAAI,QAAQ,IAAI,QAAQ,EAAE;QACxB,OAAO,QAAoB,CAAC;KAC7B;IAED,yBAAyB;IACzB,IAAI,QAAQ,IAAI,gBAAgB,EAAE;QAChC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;KACnC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAfD,sCAeC;AAED,SAAgB,gBAAgB,CAAC,QAAkB;IACjD,OAAO;QACL,QAAQ,CAAC,GAAG;QACZ,QAAQ,CAAC,MAAM;QACf,QAAQ,CAAC,EAAE;QACX,QAAQ,CAAC,IAAI;QACb,QAAQ,CAAC,KAAK;KACf,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACvB,CAAC;AARD,4CAQC;AAED,SAAgB,iBAAiB,CAAC,QAAkB;IAClD,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAFD,8CAEC"} \ No newline at end of file +{"version":3,"file":"languages.js","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":";;;AAAA,wCAAwC;AACxC,IAAY,QASX;AATD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,qBAAS,CAAA;IACT,yBAAa,CAAA;IACb,qCAAyB,CAAA;IACzB,6BAAiB,CAAA;IACjB,yBAAa,CAAA;IACb,2BAAe,CAAA;AACjB,CAAC,EATW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QASnB;AAED,iCAAiC;AACpB,QAAA,gBAAgB,GAAiC;IAC5D,CAAC,EAAE,QAAQ,CAAC,GAAG;IACf,KAAK,EAAE,QAAQ,CAAC,GAAG;IACnB,IAAI,EAAE,QAAQ,CAAC,MAAM;IACrB,MAAM,EAAE,QAAQ,CAAC,IAAI;IACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;CAChC,CAAC;AAIW,QAAA,mBAAmB,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAEvD,SAAgB,YAAY,CAAC,IAAqB;IAChD,OAAO,wBAAgB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACxC,CAAC;AAFD,oCAEC;AAED;;;;;;;;;GASG;AACH,SAAgB,aAAa,CAAC,QAAgB;IAC5C,0BAA0B;IAC1B,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAEzC,6BAA6B;IAC7B,IAAI,QAAQ,IAAI,QAAQ,EAAE;QACxB,OAAO,QAAoB,CAAC;KAC7B;IAED,iEAAiE;IACjE,oCAAoC;IACpC,IAAI,QAAQ,IAAI,wBAAgB,EAAE;QAChC,OAAO,QAAQ,CAAC;KACjB;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAhBD,sCAgBC;AAED,SAAgB,gBAAgB,CAAC,QAAkB;IACjD,OAAO;QACL,QAAQ,CAAC,GAAG;QACZ,QAAQ,CAAC,MAAM;QACf,QAAQ,CAAC,EAAE;QACX,QAAQ,CAAC,IAAI;QACb,QAAQ,CAAC,KAAK;KACf,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACvB,CAAC;AARD,4CAQC;AAED,SAAgB,iBAAiB,CAAC,QAAkB;IAClD,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAFD,8CAEC"} \ No newline at end of file diff --git a/lib/languages.test.js b/lib/languages.test.js index 833c27204f..36617bfcc4 100644 --- a/lib/languages.test.js +++ b/lib/languages.test.js @@ -16,10 +16,14 @@ const testing_utils_1 = require("./testing-utils"); t.deepEqual((0, languages_1.parseLanguage)("javascript"), languages_1.Language.javascript); t.deepEqual((0, languages_1.parseLanguage)("python"), languages_1.Language.python); // Aliases - t.deepEqual((0, languages_1.parseLanguage)("c"), languages_1.Language.cpp); - t.deepEqual((0, languages_1.parseLanguage)("c++"), languages_1.Language.cpp); - t.deepEqual((0, languages_1.parseLanguage)("c#"), languages_1.Language.csharp); - t.deepEqual((0, languages_1.parseLanguage)("typescript"), languages_1.Language.javascript); + t.deepEqual((0, languages_1.parseLanguage)("c"), "c"); + t.deepEqual((0, languages_1.parseLanguage)("c++"), "c++"); + t.deepEqual((0, languages_1.parseLanguage)("c#"), "c#"); + t.deepEqual((0, languages_1.parseLanguage)("kotlin"), "kotlin"); + t.deepEqual((0, languages_1.parseLanguage)("typescript"), "typescript"); + // spaces and case-insensitivity + t.deepEqual((0, languages_1.parseLanguage)(" \t\nCsHaRp\t\t"), languages_1.Language.csharp); + t.deepEqual((0, languages_1.parseLanguage)(" \t\nkOtLin\t\t"), "kotlin"); // Not matches t.deepEqual((0, languages_1.parseLanguage)("foo"), undefined); t.deepEqual((0, languages_1.parseLanguage)(" "), undefined); diff --git a/lib/languages.test.js.map b/lib/languages.test.js.map index adb548b725..496c3f9f4d 100644 --- a/lib/languages.test.js.map +++ b/lib/languages.test.js.map @@ -1 +1 @@ -{"version":3,"file":"languages.test.js","sourceRoot":"","sources":["../src/languages.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"languages.test.js","sourceRoot":"","sources":["../src/languages.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/shared-environment.js b/lib/shared-environment.js index 0cbb61681b..b26b6a8593 100644 --- a/lib/shared-environment.js +++ b/lib/shared-environment.js @@ -1,6 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.CODEQL_ACTION_TESTING_ENVIRONMENT = exports.CODEQL_WORKFLOW_STARTED_AT = exports.ODASA_TRACER_CONFIGURATION = void 0; +exports.CODEQL_ACTION_TEST_MODE = exports.CODEQL_ACTION_TESTING_ENVIRONMENT = exports.CODEQL_WORKFLOW_STARTED_AT = exports.ODASA_TRACER_CONFIGURATION = void 0; exports.ODASA_TRACER_CONFIGURATION = "ODASA_TRACER_CONFIGURATION"; // The time at which the first action (normally init) started executing. // If a workflow invokes a different action without first invoking the init @@ -9,4 +9,6 @@ exports.ODASA_TRACER_CONFIGURATION = "ODASA_TRACER_CONFIGURATION"; // rather that the init action. exports.CODEQL_WORKFLOW_STARTED_AT = "CODEQL_WORKFLOW_STARTED_AT"; exports.CODEQL_ACTION_TESTING_ENVIRONMENT = "CODEQL_ACTION_TESTING_ENVIRONMENT"; +/** Used to disable uploading SARIF results or status reports to the GitHub API */ +exports.CODEQL_ACTION_TEST_MODE = "CODEQL_ACTION_TEST_MODE"; //# sourceMappingURL=shared-environment.js.map \ No newline at end of file diff --git a/lib/shared-environment.js.map b/lib/shared-environment.js.map index bf2878e051..430d1ac072 100644 --- a/lib/shared-environment.js.map +++ b/lib/shared-environment.js.map @@ -1 +1 @@ -{"version":3,"file":"shared-environment.js","sourceRoot":"","sources":["../src/shared-environment.ts"],"names":[],"mappings":";;;AAAa,QAAA,0BAA0B,GAAG,4BAA4B,CAAC;AACvE,wEAAwE;AACxE,2EAA2E;AAC3E,4EAA4E;AAC5E,2EAA2E;AAC3E,+BAA+B;AAClB,QAAA,0BAA0B,GAAG,4BAA4B,CAAC;AAE1D,QAAA,iCAAiC,GAC5C,mCAAmC,CAAC"} \ No newline at end of file +{"version":3,"file":"shared-environment.js","sourceRoot":"","sources":["../src/shared-environment.ts"],"names":[],"mappings":";;;AAAa,QAAA,0BAA0B,GAAG,4BAA4B,CAAC;AACvE,wEAAwE;AACxE,2EAA2E;AAC3E,4EAA4E;AAC5E,2EAA2E;AAC3E,+BAA+B;AAClB,QAAA,0BAA0B,GAAG,4BAA4B,CAAC;AAE1D,QAAA,iCAAiC,GAC5C,mCAAmC,CAAC;AAEtC,kFAAkF;AACrE,QAAA,uBAAuB,GAAG,yBAAyB,CAAC"} \ No newline at end of file diff --git a/lib/testing-utils.js b/lib/testing-utils.js index 761fbc23b1..ae0c6a27e6 100644 --- a/lib/testing-utils.js +++ b/lib/testing-utils.js @@ -19,7 +19,7 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.createFeatures = exports.mockCodeQLVersion = exports.mockFeatureFlagApiEndpoint = exports.getRecordingLogger = exports.setupActionsVars = exports.setupTests = void 0; +exports.createFeatures = exports.mockCodeQLVersion = exports.mockLanguagesInRepo = exports.mockFeatureFlagApiEndpoint = exports.getRecordingLogger = exports.setupActionsVars = exports.setupTests = void 0; const github = __importStar(require("@actions/github")); const sinon = __importStar(require("sinon")); const apiClient = __importStar(require("./api-client")); @@ -144,6 +144,25 @@ function mockFeatureFlagApiEndpoint(responseStatusCode, response) { sinon.stub(apiClient, "getApiClient").value(() => client); } exports.mockFeatureFlagApiEndpoint = mockFeatureFlagApiEndpoint; +function mockLanguagesInRepo(languages) { + const mockClient = sinon.stub(apiClient, "getApiClient"); + const listLanguages = sinon.stub().resolves({ + status: 200, + data: languages.reduce((acc, lang) => { + acc[lang] = 1; + return acc; + }, {}), + headers: {}, + url: "GET /repos/:owner/:repo/languages", + }); + mockClient.returns({ + repos: { + listLanguages, + }, + }); + return listLanguages; +} +exports.mockLanguagesInRepo = mockLanguagesInRepo; function mockCodeQLVersion(version) { return { async getVersion() { diff --git a/lib/testing-utils.js.map b/lib/testing-utils.js.map index aca0477aeb..4ba747cfbe 100644 --- a/lib/testing-utils.js.map +++ b/lib/testing-utils.js.map @@ -1 +1 @@ -{"version":3,"file":"testing-utils.js","sourceRoot":"","sources":["../src/testing-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"testing-utils.js","sourceRoot":"","sources":["../src/testing-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/trap-caching.js b/lib/trap-caching.js index 2ad6c138ed..107667d9ae 100644 --- a/lib/trap-caching.js +++ b/lib/trap-caching.js @@ -100,11 +100,11 @@ async function downloadTrapCaches(codeql, languages, logger) { // The SHA from the base of the PR is the most similar commit we might have a cache for const preferredKey = await cacheKey(codeql, language, baseSha); logger.info(`Looking in Actions cache for TRAP cache with key ${preferredKey}`); - const found = await cache.restoreCache([cacheDir], preferredKey, [ + const found = await (0, util_1.withTimeout)(MAX_CACHE_OPERATION_MS, cache.restoreCache([cacheDir], preferredKey, [ // Fall back to any cache with the right key prefix await cachePrefix(codeql, language), - ], { - segmentTimeoutInMs: MAX_CACHE_OPERATION_MS, + ]), () => { + logger.info(`Timed out downloading cache for ${language}, will continue without it`); }); if (found === undefined) { // We didn't find a TRAP cache in the Actions cache, so the directory on disk is diff --git a/lib/trap-caching.js.map b/lib/trap-caching.js.map index c42365a3ff..5d7406b7ff 100644 --- a/lib/trap-caching.js.map +++ b/lib/trap-caching.js.map @@ -1 +1 @@ -{"version":3,"file":"trap-caching.js","sourceRoot":"","sources":["../src/trap-caching.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"trap-caching.js","sourceRoot":"","sources":["../src/trap-caching.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/upload-lib.js b/lib/upload-lib.js index 986c09fa37..b0f510eb4f 100644 --- a/lib/upload-lib.js +++ b/lib/upload-lib.js @@ -30,7 +30,6 @@ const zlib_1 = __importDefault(require("zlib")); const core = __importStar(require("@actions/core")); const file_url_1 = __importDefault(require("file-url")); const jsonschema = __importStar(require("jsonschema")); -const semver = __importStar(require("semver")); const actionsUtil = __importStar(require("./actions-util")); const api = __importStar(require("./api-client")); const fingerprints = __importStar(require("./fingerprints")); @@ -129,8 +128,8 @@ exports.findSarifFilesInDir = findSarifFilesInDir; // Uploads a single sarif file or a directory of sarif files // depending on what the path happens to refer to. // Returns true iff the upload occurred and succeeded -async function uploadFromActions(sarifPath, gitHubVersion, logger) { - return await uploadFiles(getSarifFilePaths(sarifPath), (0, repository_1.parseRepositoryNwo)(util.getRequiredEnvParam("GITHUB_REPOSITORY")), await actionsUtil.getCommitOid(actionsUtil.getRequiredInput("checkout_path")), await actionsUtil.getRef(), await actionsUtil.getAnalysisKey(), actionsUtil.getOptionalInput("category"), util.getRequiredEnvParam("GITHUB_WORKFLOW"), actionsUtil.getWorkflowRunID(), actionsUtil.getRequiredInput("checkout_path"), actionsUtil.getRequiredInput("matrix"), gitHubVersion, logger); +async function uploadFromActions(sarifPath, logger) { + return await uploadFiles(getSarifFilePaths(sarifPath), (0, repository_1.parseRepositoryNwo)(util.getRequiredEnvParam("GITHUB_REPOSITORY")), await actionsUtil.getCommitOid(actionsUtil.getRequiredInput("checkout_path")), await actionsUtil.getRef(), await actionsUtil.getAnalysisKey(), actionsUtil.getOptionalInput("category"), util.getRequiredEnvParam("GITHUB_WORKFLOW"), actionsUtil.getWorkflowRunID(), actionsUtil.getRequiredInput("checkout_path"), actionsUtil.getRequiredInput("matrix"), logger); } exports.uploadFromActions = uploadFromActions; function getSarifFilePaths(sarifPath) { @@ -193,7 +192,7 @@ function validateSarifFileSchema(sarifFilePath, logger) { exports.validateSarifFileSchema = validateSarifFileSchema; // buildPayload constructs a map ready to be uploaded to the API from the given // parameters, respecting the current mode and target GitHub instance version. -function buildPayload(commitOid, ref, analysisKey, analysisName, zippedSarif, workflowRunID, checkoutURI, environment, toolNames, gitHubVersion, mergeBaseCommitOid) { +function buildPayload(commitOid, ref, analysisKey, analysisName, zippedSarif, workflowRunID, checkoutURI, environment, toolNames, mergeBaseCommitOid) { const payloadObj = { commit_oid: commitOid, ref, @@ -208,26 +207,22 @@ function buildPayload(commitOid, ref, analysisKey, analysisName, zippedSarif, wo base_ref: undefined, base_sha: undefined, }; - // This behaviour can be made the default when support for GHES 3.0 is discontinued. - if (gitHubVersion.type !== util.GitHubVariant.GHES || - semver.satisfies(gitHubVersion.version, `>=3.1`)) { - if (actionsUtil.workflowEventName() === "pull_request") { - if (commitOid === util.getRequiredEnvParam("GITHUB_SHA") && - mergeBaseCommitOid) { - // We're uploading results for the merge commit - // and were able to determine the merge base. - // So we use that as the most accurate base. - payloadObj.base_ref = `refs/heads/${util.getRequiredEnvParam("GITHUB_BASE_REF")}`; - payloadObj.base_sha = mergeBaseCommitOid; - } - else if (process.env.GITHUB_EVENT_PATH) { - // Either we're not uploading results for the merge commit - // or we could not determine the merge base. - // Using the PR base is the only option here - const githubEvent = JSON.parse(fs.readFileSync(process.env.GITHUB_EVENT_PATH, "utf8")); - payloadObj.base_ref = `refs/heads/${githubEvent.pull_request.base.ref}`; - payloadObj.base_sha = githubEvent.pull_request.base.sha; - } + if (actionsUtil.workflowEventName() === "pull_request") { + if (commitOid === util.getRequiredEnvParam("GITHUB_SHA") && + mergeBaseCommitOid) { + // We're uploading results for the merge commit + // and were able to determine the merge base. + // So we use that as the most accurate base. + payloadObj.base_ref = `refs/heads/${util.getRequiredEnvParam("GITHUB_BASE_REF")}`; + payloadObj.base_sha = mergeBaseCommitOid; + } + else if (process.env.GITHUB_EVENT_PATH) { + // Either we're not uploading results for the merge commit + // or we could not determine the merge base. + // Using the PR base is the only option here + const githubEvent = JSON.parse(fs.readFileSync(process.env.GITHUB_EVENT_PATH, "utf8")); + payloadObj.base_ref = `refs/heads/${githubEvent.pull_request.base.ref}`; + payloadObj.base_sha = githubEvent.pull_request.base.sha; } } return payloadObj; @@ -235,7 +230,7 @@ function buildPayload(commitOid, ref, analysisKey, analysisName, zippedSarif, wo exports.buildPayload = buildPayload; // Uploads the given set of sarif files. // Returns true iff the upload occurred and succeeded -async function uploadFiles(sarifFiles, repositoryNwo, commitOid, ref, analysisKey, category, analysisName, workflowRunID, sourceRoot, environment, gitHubVersion, logger) { +async function uploadFiles(sarifFiles, repositoryNwo, commitOid, ref, analysisKey, category, analysisName, workflowRunID, sourceRoot, environment, logger) { logger.startGroup("Uploading results"); logger.info(`Processing sarif files: ${JSON.stringify(sarifFiles)}`); // Validate that the files we were asked to upload are all valid SARIF files @@ -252,7 +247,7 @@ async function uploadFiles(sarifFiles, repositoryNwo, commitOid, ref, analysisKe const sarifPayload = JSON.stringify(sarif); const zippedSarif = zlib_1.default.gzipSync(sarifPayload).toString("base64"); const checkoutURI = (0, file_url_1.default)(sourceRoot); - const payload = buildPayload(commitOid, ref, analysisKey, analysisName, zippedSarif, workflowRunID, checkoutURI, environment, toolNames, gitHubVersion, await actionsUtil.determineMergeBaseCommitOid()); + const payload = buildPayload(commitOid, ref, analysisKey, analysisName, zippedSarif, workflowRunID, checkoutURI, environment, toolNames, await actionsUtil.determineMergeBaseCommitOid()); // Log some useful debug info about the info const rawUploadSizeBytes = sarifPayload.length; logger.debug(`Raw upload size: ${rawUploadSizeBytes} bytes`); diff --git a/lib/upload-lib.js.map b/lib/upload-lib.js.map index 1aa83c29f6..3251729675 100644 --- a/lib/upload-lib.js.map +++ b/lib/upload-lib.js.map @@ -1 +1 @@ -{"version":3,"file":"upload-lib.js","sourceRoot":"","sources":["../src/upload-lib.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"upload-lib.js","sourceRoot":"","sources":["../src/upload-lib.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/upload-lib.test.js b/lib/upload-lib.test.js index d62613b21c..81c6c6dd9e 100644 --- a/lib/upload-lib.test.js +++ b/lib/upload-lib.test.js @@ -42,45 +42,24 @@ ava_1.default.beforeEach(() => { const inputFile = `${__dirname}/../src/testdata/invalid-sarif.sarif`; t.throws(() => uploadLib.validateSarifFileSchema(inputFile, (0, logging_1.getRunnerLogger)(true))); }); -(0, ava_1.default)("validate correct payload used per version", async (t) => { - const newVersions = [ - { type: util_1.GitHubVariant.DOTCOM }, - { type: util_1.GitHubVariant.GHES, version: "3.1.0" }, - ]; - const oldVersions = [ - { type: util_1.GitHubVariant.GHES, version: "2.22.1" }, - { type: util_1.GitHubVariant.GHES, version: "3.0.0" }, - ]; - const allVersions = newVersions.concat(oldVersions); +(0, ava_1.default)("validate correct payload used for push, PR merge commit, and PR head", async (t) => { process.env["GITHUB_EVENT_NAME"] = "push"; - for (const version of allVersions) { - const payload = uploadLib.buildPayload("commit", "refs/heads/master", "key", undefined, "", undefined, "/opt/src", undefined, ["CodeQL", "eslint"], version, "mergeBaseCommit"); - // Not triggered by a pull request - t.falsy(payload.base_ref); - t.falsy(payload.base_sha); - } + const pushPayload = uploadLib.buildPayload("commit", "refs/heads/master", "key", undefined, "", undefined, "/opt/src", undefined, ["CodeQL", "eslint"], "mergeBaseCommit"); + // Not triggered by a pull request + t.falsy(pushPayload.base_ref); + t.falsy(pushPayload.base_sha); process.env["GITHUB_EVENT_NAME"] = "pull_request"; process.env["GITHUB_SHA"] = "commit"; process.env["GITHUB_BASE_REF"] = "master"; process.env["GITHUB_EVENT_PATH"] = `${__dirname}/../src/testdata/pull_request.json`; - for (const version of newVersions) { - const payload = uploadLib.buildPayload("commit", "refs/pull/123/merge", "key", undefined, "", undefined, "/opt/src", undefined, ["CodeQL", "eslint"], version, "mergeBaseCommit"); - // Uploads for a merge commit use the merge base - t.deepEqual(payload.base_ref, "refs/heads/master"); - t.deepEqual(payload.base_sha, "mergeBaseCommit"); - } - for (const version of newVersions) { - const payload = uploadLib.buildPayload("headCommit", "refs/pull/123/head", "key", undefined, "", undefined, "/opt/src", undefined, ["CodeQL", "eslint"], version, "mergeBaseCommit"); - // Uploads for the head use the PR base - t.deepEqual(payload.base_ref, "refs/heads/master"); - t.deepEqual(payload.base_sha, "f95f852bd8fca8fcc58a9a2d6c842781e32a215e"); - } - for (const version of oldVersions) { - const payload = uploadLib.buildPayload("commit", "refs/pull/123/merge", "key", undefined, "", undefined, "/opt/src", undefined, ["CodeQL", "eslint"], version, "mergeBaseCommit"); - // These older versions won't expect these values - t.falsy(payload.base_ref); - t.falsy(payload.base_sha); - } + const prMergePayload = uploadLib.buildPayload("commit", "refs/pull/123/merge", "key", undefined, "", undefined, "/opt/src", undefined, ["CodeQL", "eslint"], "mergeBaseCommit"); + // Uploads for a merge commit use the merge base + t.deepEqual(prMergePayload.base_ref, "refs/heads/master"); + t.deepEqual(prMergePayload.base_sha, "mergeBaseCommit"); + const prHeadPayload = uploadLib.buildPayload("headCommit", "refs/pull/123/head", "key", undefined, "", undefined, "/opt/src", undefined, ["CodeQL", "eslint"], "mergeBaseCommit"); + // Uploads for the head use the PR base + t.deepEqual(prHeadPayload.base_ref, "refs/heads/master"); + t.deepEqual(prHeadPayload.base_sha, "f95f852bd8fca8fcc58a9a2d6c842781e32a215e"); }); (0, ava_1.default)("finding SARIF files", async (t) => { await (0, util_1.withTmpDir)(async (tmpDir) => { diff --git a/lib/upload-lib.test.js.map b/lib/upload-lib.test.js.map index 4a2bdb173f..60592d3503 100644 --- a/lib/upload-lib.test.js.map +++ b/lib/upload-lib.test.js.map @@ -1 +1 @@ -{"version":3,"file":"upload-lib.test.js","sourceRoot":"","sources":["../src/upload-lib.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"upload-lib.test.js","sourceRoot":"","sources":["../src/upload-lib.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/upload-sarif-action.js b/lib/upload-sarif-action.js index 240f9942ad..8138df9ccb 100644 --- a/lib/upload-sarif-action.js +++ b/lib/upload-sarif-action.js @@ -21,7 +21,6 @@ var __importStar = (this && this.__importStar) || function (mod) { Object.defineProperty(exports, "__esModule", { value: true }); const core = __importStar(require("@actions/core")); const actionsUtil = __importStar(require("./actions-util")); -const api_client_1 = require("./api-client"); const logging_1 = require("./logging"); const repository_1 = require("./repository"); const upload_lib = __importStar(require("./upload-lib")); @@ -44,8 +43,7 @@ async function run() { return; } try { - const gitHubVersion = await (0, api_client_1.getGitHubVersion)(); - const uploadResult = await upload_lib.uploadFromActions(actionsUtil.getRequiredInput("sarif_file"), gitHubVersion, (0, logging_1.getActionsLogger)()); + const uploadResult = await upload_lib.uploadFromActions(actionsUtil.getRequiredInput("sarif_file"), (0, logging_1.getActionsLogger)()); core.setOutput("sarif-id", uploadResult.sarifID); // We don't upload results in test mode, so don't wait for processing if ((0, util_1.isInTestMode)()) { diff --git a/lib/upload-sarif-action.js.map b/lib/upload-sarif-action.js.map index cb4cf136d9..a9ded387f8 100644 --- a/lib/upload-sarif-action.js.map +++ b/lib/upload-sarif-action.js.map @@ -1 +1 @@ -{"version":3,"file":"upload-sarif-action.js","sourceRoot":"","sources":["../src/upload-sarif-action.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,oDAAsC;AAEtC,4DAA8C;AAC9C,6CAAgD;AAChD,uCAA6C;AAC7C,6CAAkD;AAClD,yDAA2C;AAC3C,iCAKgB;AAEhB,8CAA8C;AAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAMvC,KAAK,UAAU,uBAAuB,CACpC,SAAe,EACf,WAA0C;IAE1C,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,sBAAsB,CAC/D,cAAc,EACd,SAAS,EACT,SAAS,CACV,CAAC;IACF,MAAM,YAAY,GAA4B;QAC5C,GAAG,gBAAgB;QACnB,GAAG,WAAW;KACf,CAAC;IACF,MAAM,WAAW,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,GAAG;IAChB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC7B,IAAA,4BAAqB,EAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,IAAA,yBAAkB,EAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtC,IACE,CAAC,CAAC,MAAM,WAAW,CAAC,gBAAgB,CAClC,MAAM,WAAW,CAAC,sBAAsB,CACtC,cAAc,EACd,UAAU,EACV,SAAS,CACV,CACF,CAAC,EACF;QACA,OAAO;KACR;IAED,IAAI;QACF,MAAM,aAAa,GAAG,MAAM,IAAA,6BAAgB,GAAE,CAAC;QAE/C,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,iBAAiB,CACrD,WAAW,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAC1C,aAAa,EACb,IAAA,0BAAgB,GAAE,CACnB,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QAEjD,qEAAqE;QACrE,IAAI,IAAA,mBAAY,GAAE,EAAE;YAClB,IAAI,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;SACjE;aAAM,IAAI,WAAW,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,KAAK,MAAM,EAAE;YACzE,MAAM,UAAU,CAAC,iBAAiB,CAChC,IAAA,+BAAkB,EAAC,IAAA,0BAAmB,EAAC,mBAAmB,CAAC,CAAC,EAC5D,YAAY,CAAC,OAAO,EACpB,IAAA,0BAAgB,GAAE,CACnB,CAAC;SACH;QACD,MAAM,uBAAuB,CAAC,SAAS,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;KACrE;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,MAAM,WAAW,CAAC,gBAAgB,CAChC,MAAM,WAAW,CAAC,sBAAsB,CACtC,cAAc,EACd,WAAW,CAAC,gBAAgB,CAAC,KAAK,CAAC,EACnC,SAAS,EACT,OAAO,EACP,KAAK,CACN,CACF,CAAC;QACF,OAAO;KACR;AACH,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,IAAI;QACF,MAAM,GAAG,EAAE,CAAC;KACb;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,CAAC,SAAS,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;KACpB;AACH,CAAC;AAED,KAAK,UAAU,EAAE,CAAC"} \ No newline at end of file +{"version":3,"file":"upload-sarif-action.js","sourceRoot":"","sources":["../src/upload-sarif-action.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,oDAAsC;AAEtC,4DAA8C;AAC9C,uCAA6C;AAC7C,6CAAkD;AAClD,yDAA2C;AAC3C,iCAKgB;AAEhB,8CAA8C;AAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAMvC,KAAK,UAAU,uBAAuB,CACpC,SAAe,EACf,WAA0C;IAE1C,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,sBAAsB,CAC/D,cAAc,EACd,SAAS,EACT,SAAS,CACV,CAAC;IACF,MAAM,YAAY,GAA4B;QAC5C,GAAG,gBAAgB;QACnB,GAAG,WAAW;KACf,CAAC;IACF,MAAM,WAAW,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,GAAG;IAChB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC7B,IAAA,4BAAqB,EAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,IAAA,yBAAkB,EAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtC,IACE,CAAC,CAAC,MAAM,WAAW,CAAC,gBAAgB,CAClC,MAAM,WAAW,CAAC,sBAAsB,CACtC,cAAc,EACd,UAAU,EACV,SAAS,CACV,CACF,CAAC,EACF;QACA,OAAO;KACR;IAED,IAAI;QACF,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,iBAAiB,CACrD,WAAW,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAC1C,IAAA,0BAAgB,GAAE,CACnB,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QAEjD,qEAAqE;QACrE,IAAI,IAAA,mBAAY,GAAE,EAAE;YAClB,IAAI,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;SACjE;aAAM,IAAI,WAAW,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,KAAK,MAAM,EAAE;YACzE,MAAM,UAAU,CAAC,iBAAiB,CAChC,IAAA,+BAAkB,EAAC,IAAA,0BAAmB,EAAC,mBAAmB,CAAC,CAAC,EAC5D,YAAY,CAAC,OAAO,EACpB,IAAA,0BAAgB,GAAE,CACnB,CAAC;SACH;QACD,MAAM,uBAAuB,CAAC,SAAS,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;KACrE;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,MAAM,WAAW,CAAC,gBAAgB,CAChC,MAAM,WAAW,CAAC,sBAAsB,CACtC,cAAc,EACd,WAAW,CAAC,gBAAgB,CAAC,KAAK,CAAC,EACnC,SAAS,EACT,OAAO,EACP,KAAK,CACN,CACF,CAAC;QACF,OAAO;KACR;AACH,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,IAAI;QACF,MAAM,GAAG,EAAE,CAAC;KACb;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,CAAC,SAAS,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;KACpB;AACH,CAAC;AAED,KAAK,UAAU,EAAE,CAAC"} \ No newline at end of file diff --git a/lib/util.js b/lib/util.js index d08ec96568..29f313a5c2 100644 --- a/lib/util.js +++ b/lib/util.js @@ -22,7 +22,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.isHostedRunner = exports.checkForTimeout = exports.withTimeout = exports.tryGetFolderBytes = exports.listFolder = exports.doesDirectoryExist = exports.logCodeScanningConfigInCli = exports.useCodeScanningConfigInCli = exports.isInTestMode = exports.checkActionVersion = exports.getMlPoweredJsQueriesStatus = exports.getMlPoweredJsQueriesPack = exports.ML_POWERED_JS_QUERIES_PACK_NAME = exports.isGoodVersion = exports.delay = exports.bundleDb = exports.codeQlVersionAbove = exports.getCachedCodeQlVersion = exports.cacheCodeQlVersion = exports.isHTTPError = exports.UserError = exports.HTTPError = exports.getRequiredEnvParam = exports.enrichEnvironment = exports.initializeEnvironment = exports.EnvVar = exports.assertNever = exports.apiVersionInRange = exports.DisallowedAPIVersionReason = exports.checkGitHubVersionInRange = exports.getGitHubVersion = exports.GitHubVariant = exports.parseGitHubUrl = exports.getCodeQLDatabasePath = exports.getThreadsFlag = exports.getThreadsFlagValue = exports.getAddSnippetsFlag = exports.getMemoryFlag = exports.getMemoryFlagValue = exports.withTmpDir = exports.getToolNames = exports.getExtraOptionsEnvParam = exports.DID_AUTOBUILD_GO_ENV_VAR_NAME = exports.DEFAULT_DEBUG_DATABASE_NAME = exports.DEFAULT_DEBUG_ARTIFACT_NAME = exports.GITHUB_DOTCOM_URL = void 0; +exports.shouldBypassToolcache = exports.isHostedRunner = exports.checkForTimeout = exports.withTimeout = exports.tryGetFolderBytes = exports.listFolder = exports.doesDirectoryExist = exports.logCodeScanningConfigInCli = exports.useCodeScanningConfigInCli = exports.isInTestMode = exports.checkActionVersion = exports.getMlPoweredJsQueriesStatus = exports.getMlPoweredJsQueriesPack = exports.ML_POWERED_JS_QUERIES_PACK_NAME = exports.isGoodVersion = exports.delay = exports.bundleDb = exports.codeQlVersionAbove = exports.getCachedCodeQlVersion = exports.cacheCodeQlVersion = exports.isHTTPError = exports.UserError = exports.HTTPError = exports.getRequiredEnvParam = exports.enrichEnvironment = exports.initializeEnvironment = exports.EnvVar = exports.assertNever = exports.apiVersionInRange = exports.DisallowedAPIVersionReason = exports.checkGitHubVersionInRange = exports.getGitHubVersion = exports.GitHubVariant = exports.parseGitHubUrl = exports.getCodeQLDatabasePath = exports.getThreadsFlag = exports.getThreadsFlagValue = exports.getAddSnippetsFlag = exports.getMemoryFlag = exports.getMemoryFlagValue = exports.withTmpDir = exports.getToolNames = exports.getExtraOptionsEnvParam = exports.DID_AUTOBUILD_GO_ENV_VAR_NAME = exports.DEFAULT_DEBUG_DATABASE_NAME = exports.DEFAULT_DEBUG_ARTIFACT_NAME = exports.GITHUB_DOTCOM_URL = void 0; const fs = __importStar(require("fs")); const os = __importStar(require("os")); const path = __importStar(require("path")); @@ -37,6 +37,8 @@ const apiCompatibility = __importStar(require("./api-compatibility.json")); const codeql_1 = require("./codeql"); const config_utils_1 = require("./config-utils"); const feature_flags_1 = require("./feature-flags"); +const languages_1 = require("./languages"); +const shared_environment_1 = require("./shared-environment"); /** * Specifies bundle versions that are known to be broken * and will not be used if found in the toolcache. @@ -544,7 +546,7 @@ async function checkActionVersion(version) { githubVersion.type === GitHubVariant.GHAE || (githubVersion.type === GitHubVariant.GHES && semver.satisfies((_a = semver.coerce(githubVersion.version)) !== null && _a !== void 0 ? _a : "0.0.0", ">=3.4"))) { - core.warning("CodeQL Action v1 will be deprecated on December 7th, 2022. Please upgrade to v2. For " + + core.warning("CodeQL Action v1 will be deprecated on January 18th, 2023. Please upgrade to v2. For " + "more information, see " + "https://github.blog/changelog/2022-04-27-code-scanning-deprecation-of-codeql-action-v1/"); } @@ -557,7 +559,7 @@ exports.checkActionVersion = checkActionVersion; * In test mode, we don't upload SARIF results or status reports to the GitHub API. */ function isInTestMode() { - return process.env["TEST_MODE"] === "true"; + return process.env[shared_environment_1.CODEQL_ACTION_TEST_MODE] === "true"; } exports.isInTestMode = isInTestMode; /** @@ -709,4 +711,43 @@ function isHostedRunner() { (_c = process.env["RUNNER_TOOL_CACHE"]) === null || _c === void 0 ? void 0 : _c.includes("hostedtoolcache"))); } exports.isHostedRunner = isHostedRunner; +/** + * + * @param featuresEnablement The features enabled for the current run + * @param languagesInput Languages input from the workflow + * @param repository The owner/name of the repository + * @param logger A logger + * @returns A boolean indicating whether or not the toolcache should be bypassed and the latest codeql should be downloaded. + */ +async function shouldBypassToolcache(featuresEnablement, codeqlUrl, languagesInput, repository, logger) { + // An explicit codeql url is specified, that means the toolcache will not be used. + if (codeqlUrl) { + return true; + } + // Check if the toolcache is disabled for all languages + if (await featuresEnablement.getValue(feature_flags_1.Feature.BypassToolcacheEnabled)) { + return true; + } + // Check if the toolcache is disabled for kotlin and swift. + if (!(await featuresEnablement.getValue(feature_flags_1.Feature.BypassToolcacheKotlinSwiftEnabled))) { + return false; + } + // Now check to see if kotlin or swift is one of the languages being analyzed. + const { rawLanguages, autodetected } = await (0, config_utils_1.getRawLanguages)(languagesInput, repository, logger); + let bypass = rawLanguages.some((lang) => languages_1.KOTLIN_SWIFT_BYPASS.includes(lang)); + if (bypass) { + logger.info(`Bypassing toolcache for kotlin or swift. Languages: ${rawLanguages}`); + } + else if (!autodetected && rawLanguages.includes(languages_1.Language.java)) { + // special case: java was explicitly specified, but there might be + // some kotlin in the repository, so we need to make a request for that. + const langsInRepo = await (0, config_utils_1.getLanguagesInRepo)(repository, logger); + if (langsInRepo.includes("kotlin")) { + logger.info(`Bypassing toolcache for kotlin.`); + bypass = true; + } + } + return bypass; +} +exports.shouldBypassToolcache = shouldBypassToolcache; //# sourceMappingURL=util.js.map \ No newline at end of file diff --git a/lib/util.js.map b/lib/util.js.map index c27cb98c7e..8fd23abc66 100644 --- a/lib/util.js.map +++ b/lib/util.js.map @@ -1 +1 @@ -{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,uCAAyB;AACzB,2CAA6B;AAC7B,+BAAiC;AAEjC,oDAAsC;AACtC,8CAAsB;AACtB,sEAA4C;AAC5C,+CAAiC;AAEjC,kDAAoC;AACpC,6CAA8D;AAC9D,2EAA6D;AAC7D,qCAA8D;AAC9D,iDAIwB;AACxB,mDAA6D;AAI7D;;;GAGG;AACH,MAAM,eAAe,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAE3C;;GAEG;AACU,QAAA,iBAAiB,GAAG,oBAAoB,CAAC;AAEtD;;GAEG;AACU,QAAA,2BAA2B,GAAG,iBAAiB,CAAC;AAE7D;;GAEG;AACU,QAAA,2BAA2B,GAAG,IAAI,CAAC;AAEhD;;;GAGG;AACU,QAAA,6BAA6B,GACxC,oCAAoC,CAAC;AAyCvC;;GAEG;AACH,SAAgB,uBAAuB;IACrC,MAAM,OAAO,GAAG,6BAA6B,CAAC;IAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QACzC,OAAO,EAAE,CAAC;KACX;IACD,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KACxB;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,KAAK,CACb,GAAG,OAAO,kEAAkE,OAAO,EAAE,CACtF,CAAC;KACH;AACH,CAAC;AAdD,0DAcC;AAED;;;;GAIG;AACH,SAAgB,YAAY,CAAC,KAAgB;IAC3C,MAAM,SAAS,GAAG,EAAE,CAAC;IAErB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE;QAClC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;QACjC,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7D,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;SAC/B;KACF;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAChC,CAAC;AAZD,oCAYC;AAED,6FAA6F;AAC7F,wCAAwC;AACjC,KAAK,UAAU,UAAU,CAC9B,IAAoC;IAEpC,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,IAAA,aAAG,EAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACnC,OAAO,MAAM,CAAC;AAChB,CAAC;AAPD,gCAOC;AAED;;;;;;GAMG;AACH,SAAS,gCAAgC;IACvC,8CAA8C;IAC9C,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,SAA6B;IAC9D,IAAI,oBAA4B,CAAC;IACjC,IAAI,SAAS,EAAE;QACb,oBAAoB,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,oBAAoB,IAAI,CAAC,EAAE;YACnE,MAAM,IAAI,KAAK,CAAC,wBAAwB,SAAS,eAAe,CAAC,CAAC;SACnE;KACF;SAAM;QACL,MAAM,gBAAgB,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QACvC,MAAM,oBAAoB,GAAG,gBAAgB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;QAC9D,MAAM,uBAAuB,GAAG,gCAAgC,EAAE,CAAC;QACnE,oBAAoB,GAAG,oBAAoB,GAAG,uBAAuB,CAAC;KACvE;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;AAC1C,CAAC;AAdD,gDAcC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,SAA6B;IACzD,OAAO,SAAS,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;AAClD,CAAC;AAFD,sCAEC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAChC,SAAuC;IAEvC,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;QACjC,sEAAsE;QACtE,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;KAChD;IACD,OAAO,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,yBAAyB,CAAC;AACxE,CAAC;AARD,gDAQC;AAED;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CACjC,SAA6B,EAC7B,MAAc;IAEd,IAAI,UAAkB,CAAC;IACvB,MAAM,UAAU,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC;IACpC,IAAI,SAAS,EAAE;QACb,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,4BAA4B,SAAS,eAAe,CAAC,CAAC;SACvE;QACD,IAAI,UAAU,GAAG,UAAU,EAAE;YAC3B,MAAM,CAAC,IAAI,CACT,uCAAuC,UAAU,uBAAuB,UAAU,IAAI,CACvF,CAAC;YACF,UAAU,GAAG,UAAU,CAAC;SACzB;QACD,MAAM,UAAU,GAAG,CAAC,UAAU,CAAC;QAC/B,IAAI,UAAU,GAAG,UAAU,EAAE;YAC3B,MAAM,CAAC,IAAI,CACT,4CAA4C,UAAU,uBAAuB,UAAU,IAAI,CAC5F,CAAC;YACF,UAAU,GAAG,UAAU,CAAC;SACzB;KACF;SAAM;QACL,+BAA+B;QAC/B,UAAU,GAAG,UAAU,CAAC;KACzB;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AA7BD,kDA6BC;AAED;;;;;;;GAOG;AACH,SAAgB,cAAc,CAC5B,SAA6B,EAC7B,MAAc;IAEd,OAAO,aAAa,mBAAmB,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;AAC/D,CAAC;AALD,wCAKC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,MAAc,EAAE,QAAkB;IACtE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC;AAFD,sDAEC;AAED;;;GAGG;AACH,SAAgB,cAAc,CAAC,QAAgB;IAC7C,MAAM,WAAW,GAAG,QAAQ,CAAC;IAC7B,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;QAClC,QAAQ,GAAG,WAAW,QAAQ,EAAE,CAAC;KAClC;IACD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;QACvE,MAAM,IAAI,KAAK,CAAC,IAAI,WAAW,8BAA8B,CAAC,CAAC;KAChE;IAED,IAAI,GAAQ,CAAC;IACb,IAAI;QACF,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;KACzB;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,IAAI,WAAW,sBAAsB,CAAC,CAAC;KACxD;IAED,kDAAkD;IAClD,0CAA0C;IAC1C,IAAI,GAAG,CAAC,QAAQ,KAAK,YAAY,IAAI,GAAG,CAAC,QAAQ,KAAK,gBAAgB,EAAE;QACtE,OAAO,yBAAiB,CAAC;KAC1B;IAED,wCAAwC;IACxC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE;QAC1C,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;KAC3E;IACD,4CAA4C;IAC5C,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACnC,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;KAC1C;IAED,4DAA4D;IAC5D,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC/B,GAAG,CAAC,QAAQ,GAAG,GAAG,GAAG,CAAC,QAAQ,GAAG,CAAC;KACnC;IAED,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AArCD,wCAqCC;AAED,MAAM,gCAAgC,GAAG,6BAA6B,CAAC;AACvE,MAAM,0CAA0C,GAC9C,oCAAoC,CAAC;AAEvC,IAAI,yBAAyB,GAAG,KAAK,CAAC;AAEtC,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,qDAAM,CAAA;IACN,iDAAI,CAAA;IACJ,iDAAI,CAAA;AACN,CAAC,EAJW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAIxB;AAMM,KAAK,UAAU,gBAAgB,CACpC,UAA4B;IAE5B,iEAAiE;IACjE,IAAI,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,yBAAiB,EAAE;QACxD,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC;KACvC;IAED,8DAA8D;IAC9D,mEAAmE;IACnE,MAAM,SAAS,GAAG,IAAA,yBAAY,GAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IAE5C,8EAA8E;IAC9E,wEAAwE;IACxE,IAAI,QAAQ,CAAC,OAAO,CAAC,gCAAgC,CAAC,KAAK,SAAS,EAAE;QACpE,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,CAAC;KACvC;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,gCAAgC,CAAC,KAAK,WAAW,EAAE;QACtE,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC;KACrC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,gCAAgC,CAAW,CAAC;IAC7E,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;AAC/C,CAAC;AAzBD,4CAyBC;AAED,SAAgB,yBAAyB,CACvC,OAAsB,EACtB,MAAc;IAEd,IAAI,yBAAyB,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,EAAE;QACpE,OAAO;KACR;IAED,MAAM,0BAA0B,GAAG,iBAAiB,CAClD,OAAO,CAAC,OAAO,EACf,gBAAgB,CAAC,cAAc,EAC/B,gBAAgB,CAAC,cAAc,CAChC,CAAC;IAEF,IACE,0BAA0B,KAAK,0BAA0B,CAAC,cAAc,EACxE;QACA,MAAM,CAAC,OAAO,CACZ,8FAA8F,OAAO,CAAC,OAAO,2FAA2F,CACzM,CAAC;KACH;IACD,IACE,0BAA0B,KAAK,0BAA0B,CAAC,cAAc,EACxE;QACA,MAAM,CAAC,OAAO,CACZ,qBAAqB,OAAO,CAAC,OAAO,2MAA2M,CAChP,CAAC;KACH;IACD,yBAAyB,GAAG,IAAI,CAAC;IACjC,IAAI,CAAC,cAAc,CAAC,0CAA0C,EAAE,IAAI,CAAC,CAAC;AACxE,CAAC;AA9BD,8DA8BC;AAED,IAAY,0BAGX;AAHD,WAAY,0BAA0B;IACpC,+FAAc,CAAA;IACd,+FAAc,CAAA;AAChB,CAAC,EAHW,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAGrC;AAED,SAAgB,iBAAiB,CAC/B,OAAe,EACf,cAAsB,EACtB,cAAsB;IAEtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,cAAc,EAAE,CAAC,EAAE;QACrD,OAAO,0BAA0B,CAAC,cAAc,CAAC;KAClD;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,cAAc,EAAE,CAAC,EAAE;QACrD,OAAO,0BAA0B,CAAC,cAAc,CAAC;KAClD;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAZD,8CAYC;AAED;;GAEG;AACH,MAAM,yBAA0B,SAAQ,KAAK;IAC3C,YAAmB,uBAA8B;QAC/C,KAAK,CAAC,+CAA+C,CAAC,CAAC;QADtC,4BAAuB,GAAvB,uBAAuB,CAAO;IAEjD,CAAC;CACF;AAED;;;GAGG;AACH,SAAgB,WAAW,CAAC,KAAY;IACtC,MAAM,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC;AAC7C,CAAC;AAFD,kCAEC;AAED;;;GAGG;AACH,IAAY,MA8BX;AA9BD,WAAY,MAAM;IAChB;;OAEG;IACH,2CAAiC,CAAA;IAEjC;;;OAGG;IACH,uEAA6D,CAAA;IAE7D;;;OAGG;IACH,mEAAyD,CAAA;IAEzD;;;;OAIG;IACH,yEAA+D,CAAA;IAE/D;;;OAGG;IACH,6DAAmD,CAAA;AACrD,CAAC,EA9BW,MAAM,GAAN,cAAM,KAAN,cAAM,QA8BjB;AAED;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,OAAe;IACnD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAC1D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;AAC1D,CAAC;AAJD,sDAIC;AAED;;;GAGG;AACI,KAAK,UAAU,iBAAiB,CAAC,MAAc;IACpD,IAAI,MAAM,kBAAkB,CAAC,MAAM,EAAE,mCAA0B,CAAC,EAAE;QAChE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAC5D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;KACvD;SAAM;QACL,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;QAC3D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;KACtD;AACH,CAAC;AARD,8CAQC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,SAAiB;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACrC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7C,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,mCAAmC,CAAC,CAAC;KAClE;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAND,kDAMC;AAED,MAAa,SAAU,SAAQ,KAAK;IAGlC,YAAY,OAAe,EAAE,MAAc;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAPD,8BAOC;AAED;;;GAGG;AACH,MAAa,SAAU,SAAQ,KAAK;IAClC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CACF;AAJD,8BAIC;AAED,SAAgB,WAAW,CAAC,GAAQ;IAClC,OAAO,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,MAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACnE,CAAC;AAFD,kCAEC;AAED,IAAI,mBAAmB,GAAuB,SAAS,CAAC;AAExD,SAAgB,kBAAkB,CAAC,OAAe;IAChD,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACrC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;KACpE;IACD,mBAAmB,GAAG,OAAO,CAAC;AAChC,CAAC;AALD,gDAKC;AAED,SAAgB,sBAAsB;IACpC,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAFD,wDAEC;AAEM,KAAK,UAAU,kBAAkB,CACtC,MAAc,EACd,eAAuB;IAEvB,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,EAAE,EAAE,eAAe,CAAC,CAAC;AAChE,CAAC;AALD,gDAKC;AAED,gEAAgE;AACzD,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,QAAkB,EAClB,MAAc,EACd,MAAc;IAEd,MAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7D,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,CAAC;IAC5E,gEAAgE;IAChE,qEAAqE;IACrE,sEAAsE;IACtE,oEAAoE;IACpE,qBAAqB;IACrB,IAAI,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE;QACrC,MAAM,IAAA,aAAG,EAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;KAChD;IACD,MAAM,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;IACtE,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAlBD,4BAkBC;AAEM,KAAK,UAAU,KAAK,CAAC,YAAoB;IAC9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;AACrE,CAAC;AAFD,sBAEC;AAED,SAAgB,aAAa,CAAC,WAAmB;IAC/C,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAChD,CAAC;AAFD,sCAEC;AAEY,QAAA,+BAA+B,GAC1C,4CAA4C,CAAC;AAE/C;;;GAGG;AACI,KAAK,UAAU,yBAAyB,CAC7C,MAAc;IAEd,IAAI,OAAO,CAAC;IACZ,IAAI,MAAM,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;QAC9C,OAAO,GAAG,QAAQ,CAAC;KACpB;SAAM,IAAI,MAAM,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;QACpD,OAAO,GAAG,QAAQ,CAAC;KACpB;SAAM,IAAI,MAAM,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;QACpD,OAAO,GAAG,QAAQ,CAAC;KACpB;SAAM;QACL,OAAO,GAAG,QAAQ,CAAC;KACpB;IACD,OAAO,IAAA,8BAAe,EAAC;QACrB,IAAI,EAAE,uCAA+B;QACrC,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAjBD,8DAiBC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,2BAA2B,CAAC,MAAc;IACxD,MAAM,qBAAqB,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;SAC1D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,sCAAuB,EAAC,CAAC,CAAC,CAAC;SACtC,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,4CAA4C,IAAI,CAAC,IAAI,CAAC,IAAI,CAC3E,CAAC;IACJ,QAAQ,qBAAqB,CAAC,MAAM,EAAE;QACpC,KAAK,CAAC;YACJ,sFAAsF;YACtF,6FAA6F;YAC7F,uFAAuF;YACvF,6FAA6F;YAC7F,iBAAiB;YACjB,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,QAAQ,CAAC;QACtD,KAAK,CAAC;YACJ,OAAO,OAAO,CAAC;QACjB;YACE,OAAO,OAAO,CAAC;KAClB;AACH,CAAC;AApBD,kEAoBC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,kBAAkB,CAAC,OAAe;;IACtD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;QACrC,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACnD,4FAA4F;QAC5F,EAAE;QACF,8FAA8F;QAC9F,+FAA+F;QAC/F,kCAAkC;QAClC,IACE,aAAa,CAAC,IAAI,KAAK,aAAa,CAAC,MAAM;YAC3C,aAAa,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI;YACzC,CAAC,aAAa,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI;gBACxC,MAAM,CAAC,SAAS,CACd,MAAA,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,mCAAI,OAAO,EAC/C,OAAO,CACR,CAAC,EACJ;YACA,IAAI,CAAC,OAAO,CACV,uFAAuF;gBACrF,wBAAwB;gBACxB,yFAAyF,CAC5F,CAAC;SACH;KACF;AACH,CAAC;AAxBD,gDAwBC;AAED;;;;GAIG;AACH,SAAgB,YAAY;IAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,MAAM,CAAC;AAC7C,CAAC;AAFD,oCAEC;AAED;;;GAGG;AACI,KAAK,UAAU,0BAA0B,CAC9C,MAAc,EACd,iBAAoC;IAEpC,OAAO,MAAM,iBAAiB,CAAC,QAAQ,CAAC,uBAAO,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;AAChF,CAAC;AALD,gEAKC;AAEM,KAAK,UAAU,0BAA0B,CAC9C,MAAc,EACd,iBAAoC,EACpC,MAAc;IAEd,IAAI,MAAM,0BAA0B,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAAE;QAC/D,MAAM,CAAC,IAAI,CACT,qEAAqE,CACtE,CAAC;KACH;SAAM;QACL,MAAM,CAAC,IAAI,CACT,wEAAwE,CACzE,CAAC;KACH;AACH,CAAC;AAdD,gEAcC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,OAAe;IAChD,IAAI;QACF,MAAM,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;KAC5B;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAPD,gDAOC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,GAAW;IACpC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE;QAC5B,OAAO,EAAE,CAAC;KACX;IACD,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,IAAI,KAAK,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;QAC3B,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE;YAClB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;SAC3C;aAAM,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE;YAC9B,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACjE;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAdD,gCAcC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,MAAc;IAEd,IAAI;QACF,OAAO,MAAM,IAAA,gBAAS,EAAiB,yBAAa,CAAC,CAAC,QAAQ,CAAC,CAAC;KACjE;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,CAAC,OAAO,CAAC,sDAAsD,CAAC,EAAE,CAAC,CAAC;QAC1E,OAAO,SAAS,CAAC;KAClB;AACH,CAAC;AAVD,8CAUC;AAED,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB;;;;;;;;;;;;;;;;;;;GAmBG;AACI,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,OAAmB,EACnB,SAAqB;IAErB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;QAC7B,QAAQ,GAAG,IAAI,CAAC;QAChB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,OAAO,GAAuB,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC1D,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,QAAQ,EAAE;gBACb,sEAAsE;gBACtE,sEAAsE;gBACtE,qEAAqE;gBACrE,mEAAmE;gBACnE,UAAU,GAAG,IAAI,CAAC;gBAClB,SAAS,EAAE,CAAC;aACb;YACD,OAAO,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC,EAAE,SAAS,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;AACnD,CAAC;AA1BD,kCA0BC;AAED;;;;;GAKG;AACI,KAAK,UAAU,eAAe;IACnC,IAAI,UAAU,KAAK,IAAI,EAAE;QACvB,IAAI,CAAC,IAAI,CACP,oFAAoF,CACrF,CAAC;QACF,MAAM,KAAK,CAAC,KAAM,CAAC,CAAC;QACpB,OAAO,CAAC,IAAI,EAAE,CAAC;KAChB;AACH,CAAC;AARD,0CAQC;AAED;;;;;;;;;GASG;AACH,SAAgB,cAAc;;IAC5B,OAAO;IACL,+CAA+C;IAC/C,CAAA,MAAA,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,0CAAE,QAAQ,CAAC,cAAc,CAAC;;QACpD,6CAA6C;QAC7C,MAAA,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,0CAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAA;;QACtD,8DAA8D;QAC9D,MAAA,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,0CAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAA,CAC9D,CAAC;AACJ,CAAC;AATD,wCASC"} \ No newline at end of file +{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/util.test.js b/lib/util.test.js index cab6a554b5..b182d9d2cf 100644 --- a/lib/util.test.js +++ b/lib/util.test.js @@ -30,7 +30,9 @@ const github = __importStar(require("@actions/github")); const ava_1 = __importDefault(require("ava")); const sinon = __importStar(require("sinon")); const api = __importStar(require("./api-client")); +const feature_flags_1 = require("./feature-flags"); const logging_1 = require("./logging"); +const repository_1 = require("./repository"); const testing_utils_1 = require("./testing-utils"); const util = __importStar(require("./util")); (0, testing_utils_1.setupTests)(ava_1.default); @@ -363,4 +365,117 @@ const shortTime = 10; t.deepEqual(shortTaskTimedOut, false); t.deepEqual(result, 99); }); +const mockRepositoryNwo = (0, repository_1.parseRepositoryNwo)("owner/repo"); +// eslint-disable-next-line github/array-foreach +[ + { + name: "disabled", + features: [], + hasCustomCodeQL: false, + languagesInput: undefined, + languagesInRepository: [], + expected: false, + expectedApiCall: false, + }, + { + name: "disabled even though swift kotlin bypassed", + features: [feature_flags_1.Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: undefined, + languagesInRepository: [], + expected: false, + expectedApiCall: true, + }, + { + name: "disabled even though swift kotlin analyzed", + features: [], + hasCustomCodeQL: false, + languagesInput: " sWiFt , KoTlIn ", + languagesInRepository: [], + expected: false, + expectedApiCall: false, + }, + { + name: "toolcache bypass all", + features: [feature_flags_1.Feature.BypassToolcacheEnabled], + hasCustomCodeQL: false, + languagesInput: undefined, + languagesInRepository: [], + expected: true, + expectedApiCall: false, + }, + { + name: "custom CodeQL", + features: [], + hasCustomCodeQL: true, + languagesInput: undefined, + languagesInRepository: [], + expected: true, + expectedApiCall: false, + }, + { + name: "bypass swift", + features: [feature_flags_1.Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: " sWiFt ,other", + languagesInRepository: [], + expected: true, + expectedApiCall: false, + }, + { + name: "bypass kotlin", + features: [feature_flags_1.Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "other, KoTlIn ", + languagesInRepository: [], + expected: true, + expectedApiCall: false, + }, + { + name: "bypass kotlin language from repository", + features: [feature_flags_1.Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "", + languagesInRepository: ["KoTlIn", "other"], + expected: true, + expectedApiCall: true, + }, + { + name: "bypass swift language from repository", + features: [feature_flags_1.Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "", + languagesInRepository: ["SwiFt", "other"], + expected: true, + expectedApiCall: true, + }, + { + name: "bypass java from input if there is kotlin in repository", + features: [feature_flags_1.Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "java", + languagesInRepository: ["kotlin", "other"], + expected: true, + expectedApiCall: true, + }, + { + name: "don't bypass java from input if there is no kotlin in repository", + features: [feature_flags_1.Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "java", + languagesInRepository: ["java", "other"], + expected: false, + expectedApiCall: true, + }, +].forEach((args) => { + (0, ava_1.default)(`shouldBypassToolcache: ${args.name}`, async (t) => { + const mockRequest = (0, testing_utils_1.mockLanguagesInRepo)(args.languagesInRepository); + const mockLogger = (0, logging_1.getRunnerLogger)(true); + const featureEnablement = (0, testing_utils_1.createFeatures)(args.features); + const codeqlUrl = args.hasCustomCodeQL ? "custom-codeql-url" : undefined; + const actual = await util.shouldBypassToolcache(featureEnablement, codeqlUrl, args.languagesInput, mockRepositoryNwo, mockLogger); + t.deepEqual(actual, args.expected); + t.deepEqual(mockRequest.called, args.expectedApiCall); + }); +}); //# sourceMappingURL=util.test.js.map \ No newline at end of file diff --git a/lib/util.test.js.map b/lib/util.test.js.map index 0c662395c9..aee0b0ac3b 100644 --- a/lib/util.test.js.map +++ b/lib/util.test.js.map @@ -1 +1 @@ -{"version":3,"file":"util.test.js","sourceRoot":"","sources":["../src/util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"util.test.js","sourceRoot":"","sources":["../src/util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json index dd2a6772ab..512a12c79c 100644 --- a/node_modules/.package-lock.json +++ b/node_modules/.package-lock.json @@ -1,6 +1,6 @@ { "name": "codeql", - "version": "1.1.33", + "version": "1.1.34", "lockfileVersion": 3, "requires": true, "packages": { diff --git a/package-lock.json b/package-lock.json index d949a37530..00130fc639 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "codeql", - "version": "1.1.33", + "version": "1.1.34", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "codeql", - "version": "1.1.33", + "version": "1.1.34", "license": "MIT", "dependencies": { "@actions/artifact": "^1.1.0", diff --git a/package.json b/package.json index 4119efe1ba..048b376538 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "codeql", - "version": "1.1.33", + "version": "1.1.34", "private": true, "description": "CodeQL action", "scripts": { diff --git a/pr-checks/checks/analyze-ref-input.yml b/pr-checks/checks/analyze-ref-input.yml index e6b18e9b02..7948c3d5da 100644 --- a/pr-checks/checks/analyze-ref-input.yml +++ b/pr-checks/checks/analyze-ref-input.yml @@ -6,8 +6,6 @@ steps: tools: ${{ steps.prepare-test.outputs.tools-url }} languages: cpp,csharp,java,javascript,python config-file: ${{ github.repository }}/tests/multi-language-repo/.github/codeql/custom-queries.yml@${{ github.sha }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -15,5 +13,3 @@ steps: with: ref: 'refs/heads/main' sha: '5e235361806c361d4d3f8859e3c897658025a9a2' - env: - TEST_MODE: true diff --git a/pr-checks/checks/autobuild-action.yml b/pr-checks/checks/autobuild-action.yml index 09f5e68255..c219e41fe3 100644 --- a/pr-checks/checks/autobuild-action.yml +++ b/pr-checks/checks/autobuild-action.yml @@ -6,8 +6,6 @@ steps: with: languages: csharp tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/autobuild env: # Explicitly disable the CLR tracer. @@ -18,8 +16,6 @@ steps: CORECLR_PROFILER: "" CORECLR_PROFILER_PATH_64: "" - uses: ./../action/analyze - env: - TEST_MODE: true - name: Check database shell: bash run: | diff --git a/pr-checks/checks/export-file-baseline-information.yml b/pr-checks/checks/export-file-baseline-information.yml index b890d259d0..43b859c3bb 100644 --- a/pr-checks/checks/export-file-baseline-information.yml +++ b/pr-checks/checks/export-file-baseline-information.yml @@ -2,6 +2,11 @@ name: "Export file baseline information" description: "Tests that file baseline information is exported when the feature is enabled" versions: ["nightly-latest"] steps: + - uses: swift-actions/setup-swift@5cdaa9161ad1f55ae39a5ea1784ef96de72f95d9 + # Windows doesn't support Swift, and only macOS latest and nightly-latest support Swift 5.7.1. + if: runner.os == 'Linux' || (runner.os == 'macOS' && matrix.version == 'cached') + with: + swift-version: "5.7" - uses: ./../action/init with: languages: javascript @@ -9,7 +14,6 @@ steps: env: CODEQL_FILE_BASELINE_INFORMATION: true CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: true - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -19,7 +23,6 @@ steps: env: CODEQL_FILE_BASELINE_INFORMATION: true CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: true - TEST_MODE: true - name: Upload SARIF uses: actions/upload-artifact@v3 with: diff --git a/pr-checks/checks/extractor-ram-threads.yml b/pr-checks/checks/extractor-ram-threads.yml index 29b605dc8a..996d8b4bde 100644 --- a/pr-checks/checks/extractor-ram-threads.yml +++ b/pr-checks/checks/extractor-ram-threads.yml @@ -8,8 +8,6 @@ steps: languages: java ram: 230 threads: 1 - env: - TEST_MODE: true - name: Assert Results shell: bash run: | diff --git a/pr-checks/checks/go-custom-queries.yml b/pr-checks/checks/go-custom-queries.yml index 20261adc3f..518c51a9f1 100644 --- a/pr-checks/checks/go-custom-queries.yml +++ b/pr-checks/checks/go-custom-queries.yml @@ -8,11 +8,7 @@ steps: languages: go config-file: ./.github/codeql/custom-queries.yml tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze - env: - TEST_MODE: true diff --git a/pr-checks/checks/go-tracing-autobuilder.yml b/pr-checks/checks/go-tracing-autobuilder.yml index 7ea1d7e263..4c01f02d62 100644 --- a/pr-checks/checks/go-tracing-autobuilder.yml +++ b/pr-checks/checks/go-tracing-autobuilder.yml @@ -8,12 +8,8 @@ steps: with: languages: go tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/autobuild - uses: ./../action/analyze - env: - TEST_MODE: true - shell: bash run: | if [[ "${CODEQL_ACTION_DID_AUTOBUILD_GOLANG}" != true ]]; then diff --git a/pr-checks/checks/go-tracing-custom-build-steps.yml b/pr-checks/checks/go-tracing-custom-build-steps.yml index 361fa31ce9..1490717694 100644 --- a/pr-checks/checks/go-tracing-custom-build-steps.yml +++ b/pr-checks/checks/go-tracing-custom-build-steps.yml @@ -6,14 +6,10 @@ steps: with: languages: go tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: go build main.go - uses: ./../action/analyze - env: - TEST_MODE: true - shell: bash run: | # Once we start running Bash 4.2 in all environments, we can replace the diff --git a/pr-checks/checks/go-tracing-legacy-workflow.yml b/pr-checks/checks/go-tracing-legacy-workflow.yml index 0c82542304..010d425f55 100644 --- a/pr-checks/checks/go-tracing-legacy-workflow.yml +++ b/pr-checks/checks/go-tracing-legacy-workflow.yml @@ -8,11 +8,7 @@ steps: with: languages: go tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze - env: - TEST_MODE: true - shell: bash run: | cd "$RUNNER_TEMP/codeql_databases" diff --git a/pr-checks/checks/init-with-registries.yml b/pr-checks/checks/init-with-registries.yml index 6c475d2b57..6ab1a53dfe 100644 --- a/pr-checks/checks/init-with-registries.yml +++ b/pr-checks/checks/init-with-registries.yml @@ -19,8 +19,6 @@ steps: packages: "*/*" token: "${{ secrets.GITHUB_TOKEN }}" - env: - TEST_MODE: true - name: Verify packages installed shell: bash run: | diff --git a/pr-checks/checks/javascript-source-root.yml b/pr-checks/checks/javascript-source-root.yml index 7b30cb5a19..ed85a604d1 100644 --- a/pr-checks/checks/javascript-source-root.yml +++ b/pr-checks/checks/javascript-source-root.yml @@ -13,8 +13,6 @@ steps: languages: javascript source-root: ../new-source-root tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze with: skip-queries: true diff --git a/pr-checks/checks/ml-powered-queries.yml b/pr-checks/checks/ml-powered-queries.yml index 2f06b8c16d..d0628b32cc 100644 --- a/pr-checks/checks/ml-powered-queries.yml +++ b/pr-checks/checks/ml-powered-queries.yml @@ -14,15 +14,11 @@ steps: queries: security-extended source-root: ./../action/tests/ml-powered-queries-repo tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze with: output: "${{ runner.temp }}/results" upload-database: false - env: - TEST_MODE: true - name: Upload SARIF uses: actions/upload-artifact@v3 @@ -34,7 +30,7 @@ steps: - name: Check sarif uses: ./../action/.github/check-sarif # Running on Windows requires CodeQL CLI 2.9.0+. - if: "!(matrix.version == 'stable-20220120' && (matrix.os == 'windows-latest' || matrix.os == 'windows-2019'))" + if: "!(matrix.version == 'stable-20220120' && runner.os == 'Windows')" with: sarif-file: ${{ runner.temp }}/results/javascript.sarif queries-run: js/ml-powered/nosql-injection,js/ml-powered/path-injection,js/ml-powered/sql-injection,js/ml-powered/xss @@ -43,7 +39,7 @@ steps: - name: Check results env: # Running on Windows requires CodeQL CLI 2.9.0+. - SHOULD_RUN_ML_POWERED_QUERIES: ${{ !(matrix.version == 'stable-20220120' && (matrix.os == 'windows-latest' || matrix.os == 'windows-2019')) }} + SHOULD_RUN_ML_POWERED_QUERIES: ${{ !(matrix.version == 'stable-20220120' && runner.os == 'Windows') }} shell: bash run: | echo "Expecting ML-powered queries to be run: ${SHOULD_RUN_ML_POWERED_QUERIES}" diff --git a/pr-checks/checks/multi-language-autodetect.yml b/pr-checks/checks/multi-language-autodetect.yml index 69e5091a7b..591df52239 100644 --- a/pr-checks/checks/multi-language-autodetect.yml +++ b/pr-checks/checks/multi-language-autodetect.yml @@ -1,21 +1,29 @@ name: "Multi-language repository" description: "An end-to-end integration test of a multi-language repository using automatic language detection" operatingSystems: ["ubuntu", "macos"] +env: + CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: "true" # Remove when Swift is GA. steps: + - uses: swift-actions/setup-swift@5cdaa9161ad1f55ae39a5ea1784ef96de72f95d9 + # Only macOS latest and nightly-latest support Swift 5.7.1 + if: runner.os == 'Linux' || matrix.version == 'cached' + with: + swift-version: "5.7" + - uses: ./../action/init with: db-location: "${{ runner.temp }}/customDbLocation" tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true + - name: Build code shell: bash run: ./build.sh + - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - - shell: bash + + - name: Check language autodetect for all languages excluding Ruby, Swift + shell: bash run: | CPP_DB=${{ fromJson(steps.analysis.outputs.db-locations).cpp }} if [[ ! -d $CPP_DB ]] || [[ ! $CPP_DB == ${{ runner.temp }}/customDbLocation/* ]]; then @@ -47,3 +55,23 @@ steps: echo "Did not create a database for Python, or created it in the wrong location." exit 1 fi + + - name: Check language autodetect for Ruby + if: "(matrix.version == 'cached' || matrix.version == 'latest' || matrix.version == 'nightly-latest')" + shell: bash + run: | + RUBY_DB=${{ fromJson(steps.analysis.outputs.db-locations).ruby }} + if [[ ! -d $RUBY_DB ]] || [[ ! $RUBY_DB == ${{ runner.temp }}/customDbLocation/* ]]; then + echo "Did not create a database for Ruby, or created it in the wrong location." + exit 1 + fi + + - name: Check language autodetect for Swift + if: "!startsWith(matrix.os, 'windows') && (matrix.version == 'cached' || matrix.version == 'latest' || matrix.version == 'nightly-latest')" + shell: bash + run: | + SWIFT_DB=${{ fromJson(steps.analysis.outputs.db-locations).swift }} + if [[ ! -d $SWIFT_DB ]] || [[ ! $SWIFT_DB == ${{ runner.temp }}/customDbLocation/* ]]; then + echo "Did not create a database for Swift, or created it in the wrong location." + exit 1 + fi diff --git a/pr-checks/checks/packaging-codescanning-config-inputs-js.yml b/pr-checks/checks/packaging-codescanning-config-inputs-js.yml index 50353ee51a..94f42cb7b5 100644 --- a/pr-checks/checks/packaging-codescanning-config-inputs-js.yml +++ b/pr-checks/checks/packaging-codescanning-config-inputs-js.yml @@ -12,16 +12,12 @@ steps: packs: +dsp-testing/codeql-pack1@1.0.0 languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze with: output: "${{ runner.temp }}/results" - env: - TEST_MODE: true - name: Check results uses: ./../action/.github/check-sarif diff --git a/pr-checks/checks/packaging-config-inputs-js.yml b/pr-checks/checks/packaging-config-inputs-js.yml index edbeb44420..56d9344ec3 100644 --- a/pr-checks/checks/packaging-config-inputs-js.yml +++ b/pr-checks/checks/packaging-config-inputs-js.yml @@ -8,16 +8,12 @@ steps: packs: +dsp-testing/codeql-pack1@1.0.0 languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze with: output: "${{ runner.temp }}/results" - env: - TEST_MODE: true - name: Check results uses: ./../action/.github/check-sarif diff --git a/pr-checks/checks/packaging-config-js.yml b/pr-checks/checks/packaging-config-js.yml index 3108d45cb6..40334228bc 100644 --- a/pr-checks/checks/packaging-config-js.yml +++ b/pr-checks/checks/packaging-config-js.yml @@ -7,16 +7,12 @@ steps: config-file: ".github/codeql/codeql-config-packaging.yml" languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze with: output: "${{ runner.temp }}/results" - env: - TEST_MODE: true - name: Check results uses: ./../action/.github/check-sarif diff --git a/pr-checks/checks/packaging-inputs-js.yml b/pr-checks/checks/packaging-inputs-js.yml index eb8b17088c..6a254bd967 100644 --- a/pr-checks/checks/packaging-inputs-js.yml +++ b/pr-checks/checks/packaging-inputs-js.yml @@ -8,16 +8,12 @@ steps: 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 }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze with: output: "${{ runner.temp }}/results" - env: - TEST_MODE: true - name: Check results uses: ./../action/.github/check-sarif diff --git a/pr-checks/checks/remote-config.yml b/pr-checks/checks/remote-config.yml index 351eaa4b87..918c1cd0da 100644 --- a/pr-checks/checks/remote-config.yml +++ b/pr-checks/checks/remote-config.yml @@ -6,11 +6,7 @@ steps: tools: ${{ steps.prepare-test.outputs.tools-url }} languages: cpp,csharp,java,javascript,python config-file: ${{ github.repository }}/tests/multi-language-repo/.github/codeql/custom-queries.yml@${{ github.sha }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze - env: - TEST_MODE: true diff --git a/pr-checks/checks/rubocop-multi-language.yml b/pr-checks/checks/rubocop-multi-language.yml index 504b1d3b4d..3d4f62915b 100644 --- a/pr-checks/checks/rubocop-multi-language.yml +++ b/pr-checks/checks/rubocop-multi-language.yml @@ -24,5 +24,3 @@ steps: - uses: ./../action/upload-sarif with: sarif_file: rubocop.sarif - env: - TEST_MODE: true diff --git a/pr-checks/checks/ruby-autodetect.yml b/pr-checks/checks/ruby-autodetect.yml deleted file mode 100644 index ea00b89aec..0000000000 --- a/pr-checks/checks/ruby-autodetect.yml +++ /dev/null @@ -1,26 +0,0 @@ -# This check should be combined into `multi-language-autodetect.yml` once Ruby is GA'ed -# and the `CODEQL_ENABLE_EXPERIMENTAL_FEATURES` environment variable is not needed. -name: "Ruby analysis using autodetect" -description: "Tests creation of a Ruby database when language isn't specified in init" -versions: ["latest", "cached", "nightly-latest"] -operatingSystems: ["ubuntu", "macos"] -env: - CODEQL_ENABLE_EXPERIMENTAL_FEATURES: "true" -steps: - - uses: ./../action/init - with: - tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - - uses: ./../action/analyze - id: analysis - env: - TEST_MODE: true - - name: Check database - shell: bash - run: | - RUBY_DB="${{ fromJson(steps.analysis.outputs.db-locations).ruby }}" - if [[ ! -d "$RUBY_DB" ]]; then - echo "Did not create a database for Ruby." - exit 1 - fi diff --git a/pr-checks/checks/ruby.yml b/pr-checks/checks/ruby.yml index 3273240909..3b4279aa66 100644 --- a/pr-checks/checks/ruby.yml +++ b/pr-checks/checks/ruby.yml @@ -2,19 +2,13 @@ name: "Ruby analysis" description: "Tests creation of a Ruby database" versions: ["latest", "cached", "nightly-latest"] operatingSystems: ["ubuntu", "macos"] -env: - CODEQL_ENABLE_EXPERIMENTAL_FEATURES: "true" steps: - uses: ./../action/init with: languages: ruby tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - name: Check database shell: bash run: | diff --git a/pr-checks/checks/split-workflow.yml b/pr-checks/checks/split-workflow.yml index 9bea010f0a..6e802c22fb 100644 --- a/pr-checks/checks/split-workflow.yml +++ b/pr-checks/checks/split-workflow.yml @@ -9,8 +9,6 @@ steps: packs: +dsp-testing/codeql-pack1@1.0.0 languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -18,8 +16,6 @@ steps: with: skip-queries: true output: "${{ runner.temp }}/results" - env: - TEST_MODE: true - name: Assert No Results shell: bash @@ -32,8 +28,6 @@ steps: with: output: "${{ runner.temp }}/results" upload-database: false - env: - TEST_MODE: true - name: Assert Results shell: bash run: | diff --git a/pr-checks/checks/swift-autobuild.yml b/pr-checks/checks/swift-autobuild.yml index 330a37c73e..a9efe76860 100644 --- a/pr-checks/checks/swift-autobuild.yml +++ b/pr-checks/checks/swift-autobuild.yml @@ -6,17 +6,18 @@ operatingSystems: ["macos"] env: CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: "true" steps: + - uses: swift-actions/setup-swift@5cdaa9161ad1f55ae39a5ea1784ef96de72f95d9 + # Only macOS latest and nightly-latest support Swift 5.7.1 + if: runner.os == 'Linux' || matrix.version == 'cached' + with: + swift-version: "5.7" - uses: ./../action/init with: languages: swift tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/autobuild - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - name: Check database shell: bash run: | diff --git a/pr-checks/checks/swift-custom-build.yml b/pr-checks/checks/swift-custom-build.yml index 065733a713..9780bde51a 100644 --- a/pr-checks/checks/swift-custom-build.yml +++ b/pr-checks/checks/swift-custom-build.yml @@ -6,19 +6,20 @@ env: CODEQL_ENABLE_EXPERIMENTAL_FEATURES_SWIFT: "true" DOTNET_GENERATE_ASPNET_CERTIFICATE: "false" steps: + - uses: swift-actions/setup-swift@5cdaa9161ad1f55ae39a5ea1784ef96de72f95d9 + # Only macOS latest and nightly-latest support Swift 5.7.1 + if: runner.os == 'Linux' || matrix.version == 'cached' + with: + swift-version: "5.7" - uses: ./../action/init with: languages: swift tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - name: Check database shell: bash run: | diff --git a/pr-checks/checks/test-autobuild-working-dir.yml b/pr-checks/checks/test-autobuild-working-dir.yml index 6f8aa0a58e..3d3a8b8406 100644 --- a/pr-checks/checks/test-autobuild-working-dir.yml +++ b/pr-checks/checks/test-autobuild-working-dir.yml @@ -14,14 +14,10 @@ steps: with: languages: java tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/autobuild with: working-directory: autobuild-dir - uses: ./../action/analyze - env: - TEST_MODE: true - name: Check database shell: bash run: | diff --git a/pr-checks/checks/test-local-codeql.yml b/pr-checks/checks/test-local-codeql.yml index ce36df45ce..3a7edc9813 100644 --- a/pr-checks/checks/test-local-codeql.yml +++ b/pr-checks/checks/test-local-codeql.yml @@ -12,11 +12,7 @@ steps: - uses: ./../action/init with: tools: ./codeql-bundle.tar.gz - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh - uses: ./../action/analyze - env: - TEST_MODE: true diff --git a/pr-checks/checks/test-proxy.yml b/pr-checks/checks/test-proxy.yml index ca68e41cf0..fd0d4f98bf 100644 --- a/pr-checks/checks/test-proxy.yml +++ b/pr-checks/checks/test-proxy.yml @@ -17,8 +17,4 @@ steps: with: languages: javascript tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - uses: ./../action/analyze - env: - TEST_MODE: true diff --git a/pr-checks/checks/unset-environment.yml b/pr-checks/checks/unset-environment.yml index 14174c40c1..777bc40424 100644 --- a/pr-checks/checks/unset-environment.yml +++ b/pr-checks/checks/unset-environment.yml @@ -6,15 +6,11 @@ steps: with: db-location: ${{ runner.temp }}/customDbLocation tools: ${{ steps.prepare-test.outputs.tools-url }} - env: - TEST_MODE: true - name: Build code shell: bash run: env -i PATH="$PATH" HOME="$HOME" ./build.sh - uses: ./../action/analyze id: analysis - env: - TEST_MODE: true - shell: bash run: | CPP_DB="${{ fromJson(steps.analysis.outputs.db-locations).cpp }}" diff --git a/pr-checks/checks/upload-ref-sha-input.yml b/pr-checks/checks/upload-ref-sha-input.yml index 508a6a4412..2f8fe2ad32 100644 --- a/pr-checks/checks/upload-ref-sha-input.yml +++ b/pr-checks/checks/upload-ref-sha-input.yml @@ -6,8 +6,6 @@ steps: tools: ${{ steps.prepare-test.outputs.tools-url }} languages: cpp,csharp,java,javascript,python config-file: ${{ github.repository }}/tests/multi-language-repo/.github/codeql/custom-queries.yml@${{ github.sha }} - env: - TEST_MODE: true - name: Build code shell: bash run: ./build.sh @@ -16,11 +14,7 @@ steps: ref: 'refs/heads/main' sha: '5e235361806c361d4d3f8859e3c897658025a9a2' upload: false - env: - TEST_MODE: true - uses: ./../action/upload-sarif with: ref: 'refs/heads/main' sha: '5e235361806c361d4d3f8859e3c897658025a9a2' - env: - TEST_MODE: true diff --git a/pr-checks/checks/with-checkout-path.yml b/pr-checks/checks/with-checkout-path.yml index 84bddda78d..23805b3b7e 100644 --- a/pr-checks/checks/with-checkout-path.yml +++ b/pr-checks/checks/with-checkout-path.yml @@ -14,8 +14,6 @@ steps: languages: csharp,javascript source-path: x/y/z/some-path/tests/multi-language-repo debug: true - env: - TEST_MODE: true - name: Build code (non-windows) shell: bash if: ${{ runner.os != 'Windows' }} @@ -32,16 +30,12 @@ steps: ref: v1.1.0 sha: 474bbf07f9247ffe1856c6a0f94aeeb10e7afee6 upload: false - env: - TEST_MODE: true - uses: ./../action/upload-sarif with: ref: v1.1.0 sha: 474bbf07f9247ffe1856c6a0f94aeeb10e7afee6 checkout_path: x/y/z/some-path/tests/multi-language-repo - env: - TEST_MODE: true - name: Verify SARIF after upload shell: bash diff --git a/pr-checks/sync.py b/pr-checks/sync.py index 19189d3ac7..bd23bdf414 100644 --- a/pr-checks/sync.py +++ b/pr-checks/sync.py @@ -115,7 +115,7 @@ def writeHeader(checkStream): checkJob[key] = checkSpecification[key] checkJob['env'] = checkJob.get('env', {}) - checkJob['env']['INTERNAL_CODEQL_ACTION_DEBUG_LOC'] = True + checkJob['env']['CODEQL_ACTION_TEST_MODE'] = True checkName = file[:len(file) - 4] with open(f"../.github/workflows/__{checkName}.yml", 'w') as output_stream: diff --git a/src/analyze-action.ts b/src/analyze-action.ts index 79d95c4bdd..e004ef2117 100644 --- a/src/analyze-action.ts +++ b/src/analyze-action.ts @@ -217,7 +217,12 @@ async function run() { const gitHubVersion = await getGitHubVersion(); - const features = new Features(gitHubVersion, repositoryNwo, logger); + const features = new Features( + gitHubVersion, + repositoryNwo, + actionsUtil.getTemporaryDirectory(), + logger + ); await runAutobuildIfLegacyGoWorkflow(config, logger); @@ -257,11 +262,7 @@ async function run() { core.setOutput("db-locations", dbLocations); if (runStats && actionsUtil.getRequiredInput("upload") === "true") { - uploadResult = await upload_lib.uploadFromActions( - outputDir, - config.gitHubVersion, - logger - ); + uploadResult = await upload_lib.uploadFromActions(outputDir, logger); core.setOutput("sarif-id", uploadResult.sarifID); } else { logger.info("Not uploading results"); diff --git a/src/api-compatibility.json b/src/api-compatibility.json index cb77fa450d..22672f336c 100644 --- a/src/api-compatibility.json +++ b/src/api-compatibility.json @@ -1 +1 @@ -{"maximumVersion": "3.7", "minimumVersion": "3.3"} +{"maximumVersion": "3.8", "minimumVersion": "3.3"} diff --git a/src/codeql.test.ts b/src/codeql.test.ts index f2e3c7bd88..22e3ef76a4 100644 --- a/src/codeql.test.ts +++ b/src/codeql.test.ts @@ -9,11 +9,12 @@ import * as yaml from "js-yaml"; import nock from "nock"; import * as sinon from "sinon"; +import * as actionsUtil from "./actions-util"; import { GitHubApiDetails } from "./api-client"; import * as codeql from "./codeql"; import { AugmentationProperties, Config } from "./config-utils"; import * as defaults from "./defaults.json"; -import { Feature, FeatureEnablement } from "./feature-flags"; +import { Feature } from "./feature-flags"; import { Language } from "./languages"; import { getRunnerLogger } from "./logging"; import { setupTests, setupActionsVars, createFeatures } from "./testing-utils"; @@ -69,14 +70,14 @@ test.beforeEach(() => { async function mockApiAndSetupCodeQL({ apiDetails, - featureEnablement, + bypassToolcache, isPinned, tmpDir, toolsInput, version, }: { apiDetails?: GitHubApiDetails; - featureEnablement?: FeatureEnablement; + bypassToolcache?: boolean; isPinned?: boolean; tmpDir: string; toolsInput?: { input?: string }; @@ -109,7 +110,7 @@ async function mockApiAndSetupCodeQL({ apiDetails ?? sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, - featureEnablement ?? createFeatures([]), + !!bypassToolcache, getRunnerLogger(true), false ); @@ -172,7 +173,7 @@ test("don't download codeql bundle cache with pinned different version cached", sampleApiDetails, tmpDir, util.GitHubVariant.DOTCOM, - createFeatures([]), + false, getRunnerLogger(true), false ); @@ -280,9 +281,7 @@ for (const [ await mockApiAndSetupCodeQL({ version: defaults.bundleVersion, apiDetails: sampleApiDetails, - featureEnablement: createFeatures( - isFeatureEnabled ? [Feature.BypassToolcacheEnabled] : [] - ), + bypassToolcache: isFeatureEnabled, toolsInput: { input: toolsInput }, tmpDir, }); @@ -338,7 +337,7 @@ test("download codeql bundle from github ae endpoint", async (t) => { sampleGHAEApiDetails, tmpDir, util.GitHubVariant.GHAE, - createFeatures([]), + false, getRunnerLogger(true), false ); @@ -432,6 +431,8 @@ test("getCodeQLActionRepository", (t) => { const repoLocalRunner = codeql.getCodeQLActionRepository(logger); t.deepEqual(repoLocalRunner, "github/codeql-action"); + // isRunningLocalAction() === false + sinon.stub(actionsUtil, "isRunningLocalAction").returns(false); process.env["GITHUB_ACTION_REPOSITORY"] = "xxx/yyy"; const repoEnv = codeql.getCodeQLActionRepository(logger); t.deepEqual(repoEnv, "xxx/yyy"); diff --git a/src/codeql.ts b/src/codeql.ts index bda04e61d6..7a1595c27d 100644 --- a/src/codeql.ts +++ b/src/codeql.ts @@ -10,7 +10,7 @@ import { default as queryString } from "query-string"; import * as semver from "semver"; import { v4 as uuidV4 } from "uuid"; -import { getRelativeScriptPath, isRunningLocalAction } from "./actions-util"; +import { isRunningLocalAction } from "./actions-util"; import * as api from "./api-client"; import { Config } from "./config-utils"; import * as defaults from "./defaults.json"; // Referenced from codeql-action-sync-tool! @@ -296,26 +296,17 @@ function getCodeQLBundleName(): string { } export function getCodeQLActionRepository(logger: Logger): string { - if (process.env["GITHUB_ACTION_REPOSITORY"] !== undefined) { - return process.env["GITHUB_ACTION_REPOSITORY"]; - } - - // The Actions Runner used with GitHub Enterprise Server 2.22 did not set the GITHUB_ACTION_REPOSITORY variable. - // This fallback logic can be removed after the end-of-support for 2.22 on 2021-09-23. - if (isRunningLocalAction()) { // This handles the case where the Action does not come from an Action repository, // e.g. our integration tests which use the Action code from the current checkout. + // In these cases, the GITHUB_ACTION_REPOSITORY environment variable is not set. logger.info( "The CodeQL Action is checked out locally. Using the default CodeQL Action repository." ); return CODEQL_DEFAULT_ACTION_REPOSITORY; } - logger.info( - "GITHUB_ACTION_REPOSITORY environment variable was not set. Falling back to legacy method of finding the GitHub Action." - ); - const relativeScriptPathParts = getRelativeScriptPath().split(path.sep); - return `${relativeScriptPathParts[0]}/${relativeScriptPathParts[1]}`; + + return util.getRequiredEnvParam("GITHUB_ACTION_REPOSITORY"); } async function getCodeQLBundleDownloadURL( @@ -424,7 +415,7 @@ export async function setupCodeQL( apiDetails: api.GitHubApiDetails, tempDir: string, variant: util.GitHubVariant, - features: FeatureEnablement, + bypassToolcache: boolean, logger: Logger, checkVersion: boolean ): Promise<{ codeql: CodeQL; toolsVersion: string }> { @@ -438,8 +429,7 @@ export async function setupCodeQL( // the toolcache when the appropriate feature is enabled. This // allows us to quickly rollback a broken bundle that has made its way // into the toolcache. - codeqlURL === undefined && - (await features.getValue(Feature.BypassToolcacheEnabled)) + codeqlURL === undefined && bypassToolcache ? "a specific version of CodeQL was not requested and the bypass toolcache feature is enabled" : undefined; const forceLatest = forceLatestReason !== undefined; diff --git a/src/config-utils.test.ts b/src/config-utils.test.ts index cf2bf25a8a..53a5cd076b 100644 --- a/src/config-utils.test.ts +++ b/src/config-utils.test.ts @@ -12,7 +12,12 @@ import * as configUtils from "./config-utils"; import { Feature } from "./feature-flags"; import { Language } from "./languages"; import { getRunnerLogger, Logger } from "./logging"; -import { setupTests, createFeatures } from "./testing-utils"; +import { parseRepositoryNwo } from "./repository"; +import { + setupTests, + createFeatures, + mockLanguagesInRepo as mockLanguagesInRepo, +} from "./testing-utils"; import * as util from "./util"; setupTests(test); @@ -1759,11 +1764,7 @@ function parseInputAndConfigMacro( parseInputAndConfigMacro.title = (providedTitle: string) => `Parse Packs input and config: ${providedTitle}`; -const mockLogger = { - info: (message: string) => { - console.log(message); - }, -} as Logger; +const mockLogger = getRunnerLogger(true); function parseInputAndConfigErrorMacro( t: ExecutionContext, @@ -2449,3 +2450,105 @@ test("downloadPacks-with-registries fails with invalid registries block", async ); }); }); + +// getLanguages + +const mockRepositoryNwo = parseRepositoryNwo("owner/repo"); +// eslint-disable-next-line github/array-foreach +[ + { + name: "languages from input", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "jAvAscript, \n jaVa", + languagesInRepository: ["SwiFt", "other"], + expectedLanguages: ["javascript", "java"], + expectedApiCall: false, + }, + { + name: "languages from github api", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "", + languagesInRepository: [" jAvAscript\n \t", " jaVa", "SwiFt", "other"], + expectedLanguages: ["javascript", "java"], + expectedApiCall: true, + }, + { + name: "aliases from input", + codeqlResolvedLanguages: ["javascript", "csharp", "cpp", "java", "python"], + languagesInput: " typEscript\n \t, C#, c , KoTlin", + languagesInRepository: ["SwiFt", "other"], + expectedLanguages: ["javascript", "csharp", "cpp", "java"], + expectedApiCall: false, + }, + { + name: "duplicate languages from input", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "jAvAscript, \n jaVa, kotlin, typescript", + languagesInRepository: ["SwiFt", "other"], + expectedLanguages: ["javascript", "java"], + expectedApiCall: false, + }, + { + name: "aliases from github api", + codeqlResolvedLanguages: ["javascript", "csharp", "cpp", "java", "python"], + languagesInput: "", + languagesInRepository: [" typEscript\n \t", " C#", "c", "other"], + expectedLanguages: ["javascript", "csharp", "cpp"], + expectedApiCall: true, + }, + { + name: "no languages", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "", + languagesInRepository: [], + expectedApiCall: true, + expectedError: configUtils.getNoLanguagesError(), + }, + { + name: "unrecognized languages from input", + codeqlResolvedLanguages: ["javascript", "java", "python"], + languagesInput: "a, b, c, javascript", + languagesInRepository: [], + expectedApiCall: false, + expectedError: configUtils.getUnknownLanguagesError(["a", "b"]), + }, +].forEach((args) => { + test(`getLanguages: ${args.name}`, async (t) => { + const mockRequest = mockLanguagesInRepo(args.languagesInRepository); + const languages = args.codeqlResolvedLanguages.reduce( + (acc, lang) => ({ + ...acc, + [lang]: true, + }), + {} + ); + const codeQL = setCodeQL({ + resolveLanguages: () => Promise.resolve(languages), + }); + + if (args.expectedLanguages) { + // happy path + const actualLanguages = await configUtils.getLanguages( + codeQL, + args.languagesInput, + mockRepositoryNwo, + mockLogger + ); + + t.deepEqual(actualLanguages.sort(), args.expectedLanguages.sort()); + } else { + // there is an error + await t.throwsAsync( + async () => + await configUtils.getLanguages( + codeQL, + args.languagesInput, + mockRepositoryNwo, + mockLogger + ), + { message: args.expectedError } + ); + } + t.deepEqual(mockRequest.called, args.expectedApiCall); + }); +}); diff --git a/src/config-utils.ts b/src/config-utils.ts index 9afa9d6180..b3bde0cf9b 100644 --- a/src/config-utils.ts +++ b/src/config-utils.ts @@ -15,7 +15,12 @@ import { } from "./codeql"; import * as externalQueries from "./external-queries"; import { Feature, FeatureEnablement } from "./feature-flags"; -import { Language, parseLanguage } from "./languages"; +import { + Language, + LanguageOrAlias, + parseLanguage, + resolveAlias, +} from "./languages"; import { Logger } from "./logging"; import { RepositoryNwo } from "./repository"; import { downloadTrapCaches } from "./trap-caching"; @@ -852,12 +857,13 @@ export function getUnknownLanguagesError(languages: string[]): string { } /** - * Gets the set of languages in the current repository + * Gets the set of languages in the current repository that are + * scannable by CodeQL. */ -async function getLanguagesInRepo( +export async function getLanguagesInRepo( repository: RepositoryNwo, logger: Logger -): Promise { +): Promise { logger.debug(`GitHub repo ${repository.owner} ${repository.repo}`); const response = await api.getApiClient().repos.listLanguages({ owner: repository.owner, @@ -870,7 +876,7 @@ async function getLanguagesInRepo( // When we pick a language to autobuild we want to pick the most popular traced language // Since sets in javascript maintain insertion order, using a set here and then splatting it // into an array gives us an array of languages ordered by popularity - const languages: Set = new Set(); + const languages: Set = new Set(); for (const lang of Object.keys(response.data)) { const parsedLang = parseLanguage(lang); if (parsedLang !== undefined) { @@ -890,27 +896,27 @@ async function getLanguagesInRepo( * If no languages could be detected from either the workflow or the repository * then throw an error. */ -async function getLanguages( +export async function getLanguages( codeQL: CodeQL, languagesInput: string | undefined, repository: RepositoryNwo, logger: Logger ): Promise { - // Obtain from action input 'languages' if set - let languages = (languagesInput || "") - .split(",") - .map((x) => x.trim()) - .filter((x) => x.length > 0); - logger.info(`Languages from configuration: ${JSON.stringify(languages)}`); + // Obtain languages without filtering them. + const { rawLanguages, autodetected } = await getRawLanguages( + languagesInput, + repository, + logger + ); - if (languages.length === 0) { - // Obtain languages as all languages in the repo that can be analysed - languages = await getLanguagesInRepo(repository, logger); + let languages = rawLanguages.map(resolveAlias); + + if (autodetected) { const availableLanguages = await codeQL.resolveLanguages(); languages = languages.filter((value) => value in availableLanguages); - logger.info( - `Automatically detected languages: ${JSON.stringify(languages)}` - ); + logger.info(`Automatically detected languages: ${languages.join(", ")}`); + } else { + logger.info(`Languages from configuration: ${languages.join(", ")}`); } // If the languages parameter was not given and no languages were @@ -923,13 +929,17 @@ async function getLanguages( const parsedLanguages: Language[] = []; const unknownLanguages: string[] = []; for (const language of languages) { - const parsedLanguage = parseLanguage(language); + // We know this is not an alias since we resolved it above. + const parsedLanguage = parseLanguage(language) as Language; if (parsedLanguage === undefined) { unknownLanguages.push(language); - } else if (parsedLanguages.indexOf(parsedLanguage) === -1) { + } else if (!parsedLanguages.includes(parsedLanguage)) { parsedLanguages.push(parsedLanguage); } } + + // Any unknown languages here would have come directly from the input + // since we filter unknown languages coming from the GitHub API. if (unknownLanguages.length > 0) { throw new Error(getUnknownLanguagesError(unknownLanguages)); } @@ -937,6 +947,38 @@ async function getLanguages( return parsedLanguages; } +/** + * Gets the set of languages in the current repository without checking to + * see if these languages are actually supported by CodeQL. + * + * @param languagesInput The languages from the workflow input + * @param repository the owner/name of the repository + * @param logger a logger + * @returns A tuple containing a list of languages in this repository that might be + * analyzable and whether or not this list was determined automatically. + */ +export async function getRawLanguages( + languagesInput: string | undefined, + repository: RepositoryNwo, + logger: Logger +) { + // Obtain from action input 'languages' if set + let rawLanguages = (languagesInput || "") + .split(",") + .map((x) => x.trim().toLowerCase()) + .filter((x) => x.length > 0); + let autodetected: boolean; + if (rawLanguages.length) { + autodetected = false; + } else { + autodetected = true; + + // Obtain all languages in the repo that can be analysed + rawLanguages = (await getLanguagesInRepo(repository, logger)) as string[]; + } + return { rawLanguages, autodetected }; +} + async function addQueriesAndPacksFromWorkflow( codeQL: CodeQL, queriesInput: string, diff --git a/src/defaults.json b/src/defaults.json index 25f11946b2..a83d15c8d7 100644 --- a/src/defaults.json +++ b/src/defaults.json @@ -1,3 +1,3 @@ { - "bundleVersion": "codeql-bundle-20221105" + "bundleVersion": "codeql-bundle-20221123" } diff --git a/src/feature-flags.test.ts b/src/feature-flags.test.ts index af5f4d9650..c4e0f326c2 100644 --- a/src/feature-flags.test.ts +++ b/src/feature-flags.test.ts @@ -1,3 +1,6 @@ +import * as fs from "fs"; +import * as path from "path"; + import test from "ava"; import { @@ -5,6 +8,7 @@ import { featureConfig, FeatureEnablement, Features, + FEATURE_FLAGS_FILE_NAME, } from "./feature-flags"; import { getRunnerLogger } from "./logging"; import { parseRepositoryNwo } from "./repository"; @@ -42,7 +46,7 @@ for (const variant of ALL_FEATURES_DISABLED_VARIANTS) { test(`All features are disabled if running against ${variant.description}`, async (t) => { await withTmpDir(async (tmpDir) => { const loggedMessages = []; - const featureEnablement = setUpTests( + const featureEnablement = setUpFeatureFlagTests( tmpDir, getRecordingLogger(loggedMessages), variant.gitHubVersion @@ -72,7 +76,7 @@ for (const variant of ALL_FEATURES_DISABLED_VARIANTS) { test("API response missing", async (t) => { await withTmpDir(async (tmpDir) => { const loggedMessages: LoggedMessage[] = []; - const featureEnablement = setUpTests( + const featureEnablement = setUpFeatureFlagTests( tmpDir, getRecordingLogger(loggedMessages) ); @@ -94,7 +98,7 @@ test("API response missing", async (t) => { test("Features are disabled if they're not returned in API response", async (t) => { await withTmpDir(async (tmpDir) => { const loggedMessages: LoggedMessage[] = []; - const featureEnablement = setUpTests( + const featureEnablement = setUpFeatureFlagTests( tmpDir, getRecordingLogger(loggedMessages) ); @@ -116,7 +120,7 @@ test("Features are disabled if they're not returned in API response", async (t) test("Feature flags exception is propagated if the API request errors", async (t) => { await withTmpDir(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); mockFeatureFlagApiEndpoint(500, {}); @@ -137,7 +141,7 @@ test("Feature flags exception is propagated if the API request errors", async (t for (const feature of Object.keys(featureConfig)) { test(`Only feature '${feature}' is enabled if enabled in the API response. Other features disabled`, async (t) => { await withTmpDir(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); // set all features to false except the one we're testing const expectedFeatureEnablement: { [feature: string]: boolean } = {}; @@ -162,7 +166,7 @@ for (const feature of Object.keys(featureConfig)) { test(`Only feature '${feature}' is enabled if the associated environment variable is true. Others disabled.`, async (t) => { await withTmpDir(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); const expectedFeatureEnablement = initializeFeatures(false); mockFeatureFlagApiEndpoint(200, expectedFeatureEnablement); @@ -188,7 +192,7 @@ for (const feature of Object.keys(featureConfig)) { test(`Feature '${feature}' is disabled if the associated environment variable is false, even if enabled in API`, async (t) => { await withTmpDir(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); const expectedFeatureEnablement = initializeFeatures(true); mockFeatureFlagApiEndpoint(200, expectedFeatureEnablement); @@ -215,7 +219,7 @@ for (const feature of Object.keys(featureConfig)) { if (featureConfig[feature].minimumVersion !== undefined) { test(`Getting feature '${feature} should throw if no codeql is provided`, async (t) => { await withTmpDir(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); const expectedFeatureEnablement = initializeFeatures(true); mockFeatureFlagApiEndpoint(200, expectedFeatureEnablement); @@ -233,7 +237,7 @@ for (const feature of Object.keys(featureConfig)) { if (featureConfig[feature].minimumVersion !== undefined) { test(`Feature '${feature}' is disabled if the minimum CLI version is below ${featureConfig[feature].minimumVersion}`, async (t) => { await withTmpDir(async (tmpDir) => { - const featureEnablement = setUpTests(tmpDir); + const featureEnablement = setUpFeatureFlagTests(tmpDir); const expectedFeatureEnablement = initializeFeatures(true); mockFeatureFlagApiEndpoint(200, expectedFeatureEnablement); @@ -285,6 +289,88 @@ test("At least one feature has a minimum version specified", (t) => { ); }); +test("Feature flags are saved to disk", async (t) => { + await withTmpDir(async (tmpDir) => { + const featureEnablement = setUpFeatureFlagTests(tmpDir); + const expectedFeatureEnablement = initializeFeatures(true); + mockFeatureFlagApiEndpoint(200, expectedFeatureEnablement); + + const cachedFeatureFlags = path.join(tmpDir, FEATURE_FLAGS_FILE_NAME); + + t.false( + fs.existsSync(cachedFeatureFlags), + "Feature flag cached file should not exist before getting feature flags" + ); + + t.true( + await featureEnablement.getValue( + Feature.CliConfigFileEnabled, + includeCodeQlIfRequired(Feature.CliConfigFileEnabled) + ), + "Feature flag should be enabled initially" + ); + + t.true( + fs.existsSync(cachedFeatureFlags), + "Feature flag cached file should exist after getting feature flags" + ); + + const actualFeatureEnablement = JSON.parse( + fs.readFileSync(cachedFeatureFlags, "utf8") + ); + t.deepEqual(actualFeatureEnablement, expectedFeatureEnablement); + + // now test that we actually use the feature flag cache instead of the server + actualFeatureEnablement[Feature.CliConfigFileEnabled] = false; + fs.writeFileSync( + cachedFeatureFlags, + JSON.stringify(actualFeatureEnablement) + ); + + // delete the in memory cache so that we are forced to use the cached file + (featureEnablement as any).gitHubFeatureFlags.cachedApiResponse = undefined; + + t.false( + await featureEnablement.getValue( + Feature.CliConfigFileEnabled, + includeCodeQlIfRequired(Feature.CliConfigFileEnabled) + ), + "Feature flag should be enabled after reading from cached file" + ); + }); +}); + +test("Environment variable can override feature flag cache", async (t) => { + await withTmpDir(async (tmpDir) => { + const featureEnablement = setUpFeatureFlagTests(tmpDir); + const expectedFeatureEnablement = initializeFeatures(true); + mockFeatureFlagApiEndpoint(200, expectedFeatureEnablement); + + const cachedFeatureFlags = path.join(tmpDir, FEATURE_FLAGS_FILE_NAME); + t.true( + await featureEnablement.getValue( + Feature.CliConfigFileEnabled, + includeCodeQlIfRequired(Feature.CliConfigFileEnabled) + ), + "Feature flag should be enabled initially" + ); + + t.true( + fs.existsSync(cachedFeatureFlags), + "Feature flag cached file should exist after getting feature flags" + ); + process.env.CODEQL_PASS_CONFIG_TO_CLI = "false"; + + t.false( + await featureEnablement.getValue( + Feature.CliConfigFileEnabled, + includeCodeQlIfRequired(Feature.CliConfigFileEnabled) + ), + "Feature flag should be disabled after setting env var" + ); + }); +}); + function assertAllFeaturesUndefinedInApi(t, loggedMessages: LoggedMessage[]) { for (const feature of Object.keys(featureConfig)) { t.assert( @@ -305,14 +391,14 @@ function initializeFeatures(initialValue: boolean) { }, {}); } -function setUpTests( +function setUpFeatureFlagTests( tmpDir: string, logger = getRunnerLogger(true), gitHubVersion = { type: GitHubVariant.DOTCOM } as util.GitHubVersion ): FeatureEnablement { setupActionsVars(tmpDir, tmpDir); - return new Features(gitHubVersion, testRepositoryNwo, logger); + return new Features(gitHubVersion, testRepositoryNwo, tmpDir, logger); } function includeCodeQlIfRequired(feature: string) { diff --git a/src/feature-flags.ts b/src/feature-flags.ts index 7df7fc5024..8fbaa5b875 100644 --- a/src/feature-flags.ts +++ b/src/feature-flags.ts @@ -1,3 +1,6 @@ +import * as fs from "fs"; +import * as path from "path"; + import { getApiClient } from "./api-client"; import { CodeQL } from "./codeql"; import { Logger } from "./logging"; @@ -10,7 +13,9 @@ export interface FeatureEnablement { export enum Feature { BypassToolcacheEnabled = "bypass_toolcache_enabled", + BypassToolcacheKotlinSwiftEnabled = "bypass_toolcache_kotlin_swift_enabled", CliConfigFileEnabled = "cli_config_file_enabled", + DisableKotlinAnalysisEnabled = "disable_kotlin_analysis_enabled", FileBaselineInformationEnabled = "file_baseline_information_enabled", MlPoweredQueriesEnabled = "ml_powered_queries_enabled", TrapCachingEnabled = "trap_caching_enabled", @@ -22,6 +27,18 @@ export const featureConfig: Record< > = { [Feature.BypassToolcacheEnabled]: { envVar: "CODEQL_BYPASS_TOOLCACHE", + // Cannot specify a minimum version because this flag is checked before we have + // access to the CodeQL instance. + minimumVersion: undefined, + }, + [Feature.BypassToolcacheKotlinSwiftEnabled]: { + envVar: "CODEQL_BYPASS_TOOLCACHE_KOTLIN_SWIFT", + // Cannot specify a minimum version because this flag is checked before we have + // access to the CodeQL instance. + minimumVersion: undefined, + }, + [Feature.DisableKotlinAnalysisEnabled]: { + envVar: "CODEQL_DISABLE_KOTLIN_ANALYSIS", minimumVersion: undefined, }, [Feature.CliConfigFileEnabled]: { @@ -50,6 +67,8 @@ export const featureConfig: Record< */ type GitHubFeatureFlagsApiResponse = Partial>; +export const FEATURE_FLAGS_FILE_NAME = "cached-feature-flags.json"; + /** * Determines the enablement status of a number of features. * If feature enablement is not able to be determined locally, a request to the @@ -61,11 +80,13 @@ export class Features implements FeatureEnablement { constructor( gitHubVersion: util.GitHubVersion, repositoryNwo: RepositoryNwo, + tempDir: string, logger: Logger ) { this.gitHubFeatureFlags = new GitHubFeatureFlags( gitHubVersion, repositoryNwo, + path.join(tempDir, FEATURE_FLAGS_FILE_NAME), logger ); } @@ -115,7 +136,6 @@ export class Features implements FeatureEnablement { if (envVar === "true") { return true; } - // Ask the GitHub API if the feature is enabled. return await this.gitHubFeatureFlags.getValue(feature); } @@ -125,15 +145,16 @@ class GitHubFeatureFlags implements FeatureEnablement { private cachedApiResponse: GitHubFeatureFlagsApiResponse | undefined; constructor( - private gitHubVersion: util.GitHubVersion, - private repositoryNwo: RepositoryNwo, - private logger: Logger + private readonly gitHubVersion: util.GitHubVersion, + private readonly repositoryNwo: RepositoryNwo, + private readonly featureFlagsFile: string, + private readonly logger: Logger ) { /**/ } async getValue(feature: Feature): Promise { - const response = await this.getApiResponse(); + const response = await this.getAllFeatures(); if (response === undefined) { this.logger.debug( `No feature flags API response for ${feature}, considering it disabled.` @@ -150,11 +171,63 @@ class GitHubFeatureFlags implements FeatureEnablement { return !!featureEnablement; } - private async getApiResponse(): Promise { - const apiResponse = - this.cachedApiResponse || (await this.loadApiResponse()); - this.cachedApiResponse = apiResponse; - return apiResponse; + private async getAllFeatures(): Promise { + // if we have an in memory cache, use that + if (this.cachedApiResponse !== undefined) { + return this.cachedApiResponse; + } + + // if a previous step has written a feature flags file to disk, use that + const fileFlags = await this.readLocalFlags(); + if (fileFlags !== undefined) { + this.cachedApiResponse = fileFlags; + return fileFlags; + } + + // if not, request flags from the server + let remoteFlags = await this.loadApiResponse(); + if (remoteFlags === undefined) { + remoteFlags = {}; + } + + // cache the response in memory + this.cachedApiResponse = remoteFlags; + + // and cache them to disk so future workflow steps can use them + await this.writeLocalFlags(remoteFlags); + + return remoteFlags; + } + + private async readLocalFlags(): Promise< + GitHubFeatureFlagsApiResponse | undefined + > { + try { + if (fs.existsSync(this.featureFlagsFile)) { + this.logger.debug( + `Loading feature flags from ${this.featureFlagsFile}` + ); + return JSON.parse(fs.readFileSync(this.featureFlagsFile, "utf8")); + } + } catch (e) { + this.logger.warning( + `Error reading cached feature flags file ${this.featureFlagsFile}: ${e}. Requesting from GitHub instead.` + ); + } + return undefined; + } + + private async writeLocalFlags( + flags: GitHubFeatureFlagsApiResponse + ): Promise { + try { + this.logger.debug(`Writing feature flags to ${this.featureFlagsFile}`); + fs.writeFileSync(this.featureFlagsFile, JSON.stringify(flags)); + } catch (e) { + this.logger.warning( + `Error writing cached feature flags file ${this.featureFlagsFile}: ${e}.` + ); + } } private async loadApiResponse() { diff --git a/src/init-action.ts b/src/init-action.ts index e4a1a82ff1..c318ac6cd6 100644 --- a/src/init-action.ts +++ b/src/init-action.ts @@ -29,6 +29,7 @@ import { parseRepositoryNwo } from "./repository"; import { getTotalCacheSize } from "./trap-caching"; import { checkActionVersion, + checkForTimeout, checkGitHubVersionInRange, codeQlVersionAbove, DEFAULT_DEBUG_ARTIFACT_NAME, @@ -40,6 +41,7 @@ import { getThreadsFlagValue, initializeEnvironment, isHostedRunner, + shouldBypassToolcache, } from "./util"; // eslint-disable-next-line import/no-commonjs @@ -157,7 +159,12 @@ async function run() { getRequiredEnvParam("GITHUB_REPOSITORY") ); - const features = new Features(gitHubVersion, repositoryNwo, logger); + const features = new Features( + gitHubVersion, + repositoryNwo, + getTemporaryDirectory(), + logger + ); try { const workflowErrors = await validateWorkflow(); @@ -180,7 +187,13 @@ async function run() { apiDetails, getTemporaryDirectory(), gitHubVersion.type, - features, + await shouldBypassToolcache( + features, + getOptionalInput("tools"), + getOptionalInput("languages"), + repositoryNwo, + logger + ), logger ); codeql = initCodeQLResult.codeql; @@ -260,6 +273,11 @@ async function run() { getThreadsFlagValue(getOptionalInput("threads"), logger).toString() ); + // Disable Kotlin extractor if feature flag set + if (await features.getValue(Feature.DisableKotlinAnalysisEnabled)) { + core.exportVariable("CODEQL_EXTRACTOR_JAVA_AGENT_DISABLE_KOTLIN", "true"); + } + const sourceRoot = path.resolve( getRequiredEnvParam("GITHUB_WORKSPACE"), getOptionalInput("source-root") || "" @@ -332,6 +350,7 @@ async function runWrapper() { core.setFailed(`init action failed: ${error}`); console.log(error); } + await checkForTimeout(); } void runWrapper(); diff --git a/src/init.ts b/src/init.ts index aa677e70c1..f7bbf534b4 100644 --- a/src/init.ts +++ b/src/init.ts @@ -20,7 +20,7 @@ export async function initCodeQL( apiDetails: GitHubApiDetails, tempDir: string, variant: util.GitHubVariant, - featureEnablement: FeatureEnablement, + bypassToolcache: boolean, logger: Logger ): Promise<{ codeql: CodeQL; toolsVersion: string }> { logger.startGroup("Setup CodeQL tools"); @@ -29,7 +29,7 @@ export async function initCodeQL( apiDetails, tempDir, variant, - featureEnablement, + bypassToolcache, logger, true ); diff --git a/src/languages.test.ts b/src/languages.test.ts index a7dd1a8650..66e6bdeabd 100644 --- a/src/languages.test.ts +++ b/src/languages.test.ts @@ -20,10 +20,15 @@ test("parseLanguage", async (t) => { t.deepEqual(parseLanguage("python"), Language.python); // Aliases - t.deepEqual(parseLanguage("c"), Language.cpp); - t.deepEqual(parseLanguage("c++"), Language.cpp); - t.deepEqual(parseLanguage("c#"), Language.csharp); - t.deepEqual(parseLanguage("typescript"), Language.javascript); + t.deepEqual(parseLanguage("c"), "c"); + t.deepEqual(parseLanguage("c++"), "c++"); + t.deepEqual(parseLanguage("c#"), "c#"); + t.deepEqual(parseLanguage("kotlin"), "kotlin"); + t.deepEqual(parseLanguage("typescript"), "typescript"); + + // spaces and case-insensitivity + t.deepEqual(parseLanguage(" \t\nCsHaRp\t\t"), Language.csharp); + t.deepEqual(parseLanguage(" \t\nkOtLin\t\t"), "kotlin"); // Not matches t.deepEqual(parseLanguage("foo"), undefined); diff --git a/src/languages.ts b/src/languages.ts index 3ab06f9368..4e1114b846 100644 --- a/src/languages.ts +++ b/src/languages.ts @@ -11,26 +11,45 @@ export enum Language { } // Additional names for languages -const LANGUAGE_ALIASES: { [lang: string]: Language } = { +export const LANGUAGE_ALIASES: { [lang: string]: Language } = { c: Language.cpp, "c++": Language.cpp, "c#": Language.csharp, + kotlin: Language.java, typescript: Language.javascript, }; -// Translate from user input or GitHub's API names for languages to CodeQL's names for languages -export function parseLanguage(language: string): Language | undefined { +export type LanguageOrAlias = Language | keyof typeof LANGUAGE_ALIASES; + +export const KOTLIN_SWIFT_BYPASS = ["kotlin", "swift"]; + +export function resolveAlias(lang: LanguageOrAlias): Language { + return LANGUAGE_ALIASES[lang] || lang; +} + +/** + * Translate from user input or GitHub's API names for languages to CodeQL's + * names for languages. This does not translate a language alias to the actual + * language used by CodeQL. + * + * @param language The language to translate. + * @returns A language supported by CodeQL, an alias for a language, or + * `undefined` if the input language cannot be parsed into a langauge supported + * by CodeQL. + */ +export function parseLanguage(language: string): LanguageOrAlias | undefined { // Normalise to lower case - language = language.toLowerCase(); + language = language.trim().toLowerCase(); // See if it's an exact match if (language in Language) { return language as Language; } - // Check language aliases + // Check language aliases, but return the original language name, + // the alias will be resolved later. if (language in LANGUAGE_ALIASES) { - return LANGUAGE_ALIASES[language]; + return language; } return undefined; diff --git a/src/shared-environment.ts b/src/shared-environment.ts index 063f8ba35f..6545c51a85 100644 --- a/src/shared-environment.ts +++ b/src/shared-environment.ts @@ -8,3 +8,6 @@ export const CODEQL_WORKFLOW_STARTED_AT = "CODEQL_WORKFLOW_STARTED_AT"; export const CODEQL_ACTION_TESTING_ENVIRONMENT = "CODEQL_ACTION_TESTING_ENVIRONMENT"; + +/** Used to disable uploading SARIF results or status reports to the GitHub API */ +export const CODEQL_ACTION_TEST_MODE = "CODEQL_ACTION_TEST_MODE"; diff --git a/src/testing-utils.ts b/src/testing-utils.ts index c3d6768316..0712b7c6f6 100644 --- a/src/testing-utils.ts +++ b/src/testing-utils.ts @@ -162,6 +162,26 @@ export function mockFeatureFlagApiEndpoint( sinon.stub(apiClient, "getApiClient").value(() => client); } +export function mockLanguagesInRepo(languages: string[]) { + const mockClient = sinon.stub(apiClient, "getApiClient"); + const listLanguages = sinon.stub().resolves({ + status: 200, + data: languages.reduce((acc, lang) => { + acc[lang] = 1; + return acc; + }, {}), + headers: {}, + url: "GET /repos/:owner/:repo/languages", + }); + + mockClient.returns({ + repos: { + listLanguages, + }, + } as any); + return listLanguages; +} + export function mockCodeQLVersion(version) { return { async getVersion() { diff --git a/src/trap-caching.ts b/src/trap-caching.ts index 206bd88020..1c6de70398 100644 --- a/src/trap-caching.ts +++ b/src/trap-caching.ts @@ -113,15 +113,16 @@ export async function downloadTrapCaches( logger.info( `Looking in Actions cache for TRAP cache with key ${preferredKey}` ); - const found = await cache.restoreCache( - [cacheDir], - preferredKey, - [ + const found = await withTimeout( + MAX_CACHE_OPERATION_MS, + cache.restoreCache([cacheDir], preferredKey, [ // Fall back to any cache with the right key prefix await cachePrefix(codeql, language), - ], - { - segmentTimeoutInMs: MAX_CACHE_OPERATION_MS, + ]), + () => { + logger.info( + `Timed out downloading cache for ${language}, will continue without it` + ); } ); if (found === undefined) { diff --git a/src/upload-lib.test.ts b/src/upload-lib.test.ts index 0cba4269ff..a057f7ea8c 100644 --- a/src/upload-lib.test.ts +++ b/src/upload-lib.test.ts @@ -7,13 +7,7 @@ import { getRunnerLogger, Logger } from "./logging"; import { setupTests } from "./testing-utils"; import * as uploadLib from "./upload-lib"; import { pruneInvalidResults } from "./upload-lib"; -import { - GitHubVariant, - GitHubVersion, - initializeEnvironment, - SarifFile, - withTmpDir, -} from "./util"; +import { initializeEnvironment, SarifFile, withTmpDir } from "./util"; setupTests(test); @@ -35,36 +29,23 @@ test("validateSarifFileSchema - invalid", (t) => { ); }); -test("validate correct payload used per version", async (t) => { - const newVersions: GitHubVersion[] = [ - { type: GitHubVariant.DOTCOM }, - { type: GitHubVariant.GHES, version: "3.1.0" }, - ]; - const oldVersions: GitHubVersion[] = [ - { type: GitHubVariant.GHES, version: "2.22.1" }, - { type: GitHubVariant.GHES, version: "3.0.0" }, - ]; - const allVersions = newVersions.concat(oldVersions); - +test("validate correct payload used for push, PR merge commit, and PR head", async (t) => { process.env["GITHUB_EVENT_NAME"] = "push"; - for (const version of allVersions) { - const payload: any = uploadLib.buildPayload( - "commit", - "refs/heads/master", - "key", - undefined, - "", - undefined, - "/opt/src", - undefined, - ["CodeQL", "eslint"], - version, - "mergeBaseCommit" - ); - // Not triggered by a pull request - t.falsy(payload.base_ref); - t.falsy(payload.base_sha); - } + const pushPayload: any = uploadLib.buildPayload( + "commit", + "refs/heads/master", + "key", + undefined, + "", + undefined, + "/opt/src", + undefined, + ["CodeQL", "eslint"], + "mergeBaseCommit" + ); + // Not triggered by a pull request + t.falsy(pushPayload.base_ref); + t.falsy(pushPayload.base_sha); process.env["GITHUB_EVENT_NAME"] = "pull_request"; process.env["GITHUB_SHA"] = "commit"; @@ -72,62 +53,40 @@ test("validate correct payload used per version", async (t) => { process.env[ "GITHUB_EVENT_PATH" ] = `${__dirname}/../src/testdata/pull_request.json`; - for (const version of newVersions) { - const payload: any = uploadLib.buildPayload( - "commit", - "refs/pull/123/merge", - "key", - undefined, - "", - undefined, - "/opt/src", - undefined, - ["CodeQL", "eslint"], - version, - "mergeBaseCommit" - ); - // Uploads for a merge commit use the merge base - t.deepEqual(payload.base_ref, "refs/heads/master"); - t.deepEqual(payload.base_sha, "mergeBaseCommit"); - } - - for (const version of newVersions) { - const payload: any = uploadLib.buildPayload( - "headCommit", - "refs/pull/123/head", - "key", - undefined, - "", - undefined, - "/opt/src", - undefined, - ["CodeQL", "eslint"], - version, - "mergeBaseCommit" - ); - // Uploads for the head use the PR base - t.deepEqual(payload.base_ref, "refs/heads/master"); - t.deepEqual(payload.base_sha, "f95f852bd8fca8fcc58a9a2d6c842781e32a215e"); - } - - for (const version of oldVersions) { - const payload: any = uploadLib.buildPayload( - "commit", - "refs/pull/123/merge", - "key", - undefined, - "", - undefined, - "/opt/src", - undefined, - ["CodeQL", "eslint"], - version, - "mergeBaseCommit" - ); - // These older versions won't expect these values - t.falsy(payload.base_ref); - t.falsy(payload.base_sha); - } + const prMergePayload: any = uploadLib.buildPayload( + "commit", + "refs/pull/123/merge", + "key", + undefined, + "", + undefined, + "/opt/src", + undefined, + ["CodeQL", "eslint"], + "mergeBaseCommit" + ); + // Uploads for a merge commit use the merge base + t.deepEqual(prMergePayload.base_ref, "refs/heads/master"); + t.deepEqual(prMergePayload.base_sha, "mergeBaseCommit"); + + const prHeadPayload: any = uploadLib.buildPayload( + "headCommit", + "refs/pull/123/head", + "key", + undefined, + "", + undefined, + "/opt/src", + undefined, + ["CodeQL", "eslint"], + "mergeBaseCommit" + ); + // Uploads for the head use the PR base + t.deepEqual(prHeadPayload.base_ref, "refs/heads/master"); + t.deepEqual( + prHeadPayload.base_sha, + "f95f852bd8fca8fcc58a9a2d6c842781e32a215e" + ); }); test("finding SARIF files", async (t) => { diff --git a/src/upload-lib.ts b/src/upload-lib.ts index 6173cd1626..de7e92b907 100644 --- a/src/upload-lib.ts +++ b/src/upload-lib.ts @@ -7,7 +7,6 @@ import * as core from "@actions/core"; import { OctokitResponse } from "@octokit/types"; import fileUrl from "file-url"; import * as jsonschema from "jsonschema"; -import * as semver from "semver"; import * as actionsUtil from "./actions-util"; import * as api from "./api-client"; @@ -161,7 +160,6 @@ export function findSarifFilesInDir(sarifPath: string): string[] { // Returns true iff the upload occurred and succeeded export async function uploadFromActions( sarifPath: string, - gitHubVersion: util.GitHubVersion, logger: Logger ): Promise { return await uploadFiles( @@ -177,7 +175,6 @@ export async function uploadFromActions( actionsUtil.getWorkflowRunID(), actionsUtil.getRequiredInput("checkout_path"), actionsUtil.getRequiredInput("matrix"), - gitHubVersion, logger ); } @@ -263,7 +260,6 @@ export function buildPayload( checkoutURI: string, environment: string | undefined, toolNames: string[], - gitHubVersion: util.GitHubVersion, mergeBaseCommitOid: string | undefined ) { const payloadObj = { @@ -281,33 +277,27 @@ export function buildPayload( base_sha: undefined as undefined | string, }; - // This behaviour can be made the default when support for GHES 3.0 is discontinued. - if ( - gitHubVersion.type !== util.GitHubVariant.GHES || - semver.satisfies(gitHubVersion.version, `>=3.1`) - ) { - if (actionsUtil.workflowEventName() === "pull_request") { - if ( - commitOid === util.getRequiredEnvParam("GITHUB_SHA") && - mergeBaseCommitOid - ) { - // We're uploading results for the merge commit - // and were able to determine the merge base. - // So we use that as the most accurate base. - payloadObj.base_ref = `refs/heads/${util.getRequiredEnvParam( - "GITHUB_BASE_REF" - )}`; - payloadObj.base_sha = mergeBaseCommitOid; - } else if (process.env.GITHUB_EVENT_PATH) { - // Either we're not uploading results for the merge commit - // or we could not determine the merge base. - // Using the PR base is the only option here - const githubEvent = JSON.parse( - fs.readFileSync(process.env.GITHUB_EVENT_PATH, "utf8") - ); - payloadObj.base_ref = `refs/heads/${githubEvent.pull_request.base.ref}`; - payloadObj.base_sha = githubEvent.pull_request.base.sha; - } + if (actionsUtil.workflowEventName() === "pull_request") { + if ( + commitOid === util.getRequiredEnvParam("GITHUB_SHA") && + mergeBaseCommitOid + ) { + // We're uploading results for the merge commit + // and were able to determine the merge base. + // So we use that as the most accurate base. + payloadObj.base_ref = `refs/heads/${util.getRequiredEnvParam( + "GITHUB_BASE_REF" + )}`; + payloadObj.base_sha = mergeBaseCommitOid; + } else if (process.env.GITHUB_EVENT_PATH) { + // Either we're not uploading results for the merge commit + // or we could not determine the merge base. + // Using the PR base is the only option here + const githubEvent = JSON.parse( + fs.readFileSync(process.env.GITHUB_EVENT_PATH, "utf8") + ); + payloadObj.base_ref = `refs/heads/${githubEvent.pull_request.base.ref}`; + payloadObj.base_sha = githubEvent.pull_request.base.sha; } } return payloadObj; @@ -326,7 +316,6 @@ async function uploadFiles( workflowRunID: number | undefined, sourceRoot: string, environment: string | undefined, - gitHubVersion: util.GitHubVersion, logger: Logger ): Promise { logger.startGroup("Uploading results"); @@ -367,7 +356,6 @@ async function uploadFiles( checkoutURI, environment, toolNames, - gitHubVersion, await actionsUtil.determineMergeBaseCommitOid() ); diff --git a/src/upload-sarif-action.ts b/src/upload-sarif-action.ts index 4a5ce8a2fb..7fe4f70c71 100644 --- a/src/upload-sarif-action.ts +++ b/src/upload-sarif-action.ts @@ -1,7 +1,6 @@ import * as core from "@actions/core"; import * as actionsUtil from "./actions-util"; -import { getGitHubVersion } from "./api-client"; import { getActionsLogger } from "./logging"; import { parseRepositoryNwo } from "./repository"; import * as upload_lib from "./upload-lib"; @@ -52,11 +51,8 @@ async function run() { } try { - const gitHubVersion = await getGitHubVersion(); - const uploadResult = await upload_lib.uploadFromActions( actionsUtil.getRequiredInput("sarif_file"), - gitHubVersion, getActionsLogger() ); core.setOutput("sarif-id", uploadResult.sarifID); diff --git a/src/util.test.ts b/src/util.test.ts index efbc8cea78..d1b614dacf 100644 --- a/src/util.test.ts +++ b/src/util.test.ts @@ -9,8 +9,14 @@ import * as sinon from "sinon"; import * as api from "./api-client"; import { Config } from "./config-utils"; +import { Feature } from "./feature-flags"; import { getRunnerLogger } from "./logging"; -import { setupTests } from "./testing-utils"; +import { parseRepositoryNwo } from "./repository"; +import { + createFeatures, + mockLanguagesInRepo, + setupTests, +} from "./testing-utils"; import * as util from "./util"; setupTests(test); @@ -449,3 +455,123 @@ test("withTimeout doesn't call callback if promise resolves", async (t) => { t.deepEqual(shortTaskTimedOut, false); t.deepEqual(result, 99); }); + +const mockRepositoryNwo = parseRepositoryNwo("owner/repo"); +// eslint-disable-next-line github/array-foreach +[ + { + name: "disabled", + features: [], + hasCustomCodeQL: false, + languagesInput: undefined, + languagesInRepository: [], + expected: false, + expectedApiCall: false, + }, + { + name: "disabled even though swift kotlin bypassed", + features: [Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: undefined, + languagesInRepository: [], + expected: false, + expectedApiCall: true, + }, + { + name: "disabled even though swift kotlin analyzed", + features: [], + hasCustomCodeQL: false, + languagesInput: " sWiFt , KoTlIn ", + languagesInRepository: [], + expected: false, + expectedApiCall: false, + }, + { + name: "toolcache bypass all", + features: [Feature.BypassToolcacheEnabled], + hasCustomCodeQL: false, + languagesInput: undefined, + languagesInRepository: [], + expected: true, + expectedApiCall: false, + }, + { + name: "custom CodeQL", + features: [], + hasCustomCodeQL: true, + languagesInput: undefined, + languagesInRepository: [], + expected: true, + expectedApiCall: false, + }, + { + name: "bypass swift", + features: [Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: " sWiFt ,other", + languagesInRepository: [], + expected: true, + expectedApiCall: false, + }, + { + name: "bypass kotlin", + features: [Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "other, KoTlIn ", + languagesInRepository: [], + expected: true, + expectedApiCall: false, + }, + { + name: "bypass kotlin language from repository", + features: [Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "", + languagesInRepository: ["KoTlIn", "other"], + expected: true, + expectedApiCall: true, + }, + { + name: "bypass swift language from repository", + features: [Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "", + languagesInRepository: ["SwiFt", "other"], + expected: true, + expectedApiCall: true, + }, + { + name: "bypass java from input if there is kotlin in repository", + features: [Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "java", + languagesInRepository: ["kotlin", "other"], + expected: true, + expectedApiCall: true, + }, + { + name: "don't bypass java from input if there is no kotlin in repository", + features: [Feature.BypassToolcacheKotlinSwiftEnabled], + hasCustomCodeQL: false, + languagesInput: "java", + languagesInRepository: ["java", "other"], + expected: false, + expectedApiCall: true, + }, +].forEach((args) => { + test(`shouldBypassToolcache: ${args.name}`, async (t) => { + const mockRequest = mockLanguagesInRepo(args.languagesInRepository); + const mockLogger = getRunnerLogger(true); + const featureEnablement = createFeatures(args.features); + const codeqlUrl = args.hasCustomCodeQL ? "custom-codeql-url" : undefined; + const actual = await util.shouldBypassToolcache( + featureEnablement, + codeqlUrl, + args.languagesInput, + mockRepositoryNwo, + mockLogger + ); + t.deepEqual(actual, args.expected); + t.deepEqual(mockRequest.called, args.expectedApiCall); + }); +}); diff --git a/src/util.ts b/src/util.ts index 3381257882..cd6e4aa91d 100644 --- a/src/util.ts +++ b/src/util.ts @@ -14,12 +14,16 @@ import * as apiCompatibility from "./api-compatibility.json"; import { CodeQL, CODEQL_VERSION_NEW_TRACING } from "./codeql"; import { Config, + getLanguagesInRepo, + getRawLanguages, parsePacksSpecification, prettyPrintPack, } from "./config-utils"; import { Feature, FeatureEnablement } from "./feature-flags"; -import { Language } from "./languages"; +import { KOTLIN_SWIFT_BYPASS, Language } from "./languages"; import { Logger } from "./logging"; +import { RepositoryNwo } from "./repository"; +import { CODEQL_ACTION_TEST_MODE } from "./shared-environment"; /** * Specifies bundle versions that are known to be broken @@ -650,7 +654,7 @@ export async function checkActionVersion(version: string) { )) ) { core.warning( - "CodeQL Action v1 will be deprecated on December 7th, 2022. Please upgrade to v2. For " + + "CodeQL Action v1 will be deprecated on January 18th, 2023. Please upgrade to v2. For " + "more information, see " + "https://github.blog/changelog/2022-04-27-code-scanning-deprecation-of-codeql-action-v1/" ); @@ -664,7 +668,7 @@ export async function checkActionVersion(version: string) { * In test mode, we don't upload SARIF results or status reports to the GitHub API. */ export function isInTestMode(): boolean { - return process.env["TEST_MODE"] === "true"; + return process.env[CODEQL_ACTION_TEST_MODE] === "true"; } /** @@ -831,3 +835,60 @@ export function isHostedRunner() { process.env["RUNNER_TOOL_CACHE"]?.includes("hostedtoolcache") ); } + +/** + * + * @param featuresEnablement The features enabled for the current run + * @param languagesInput Languages input from the workflow + * @param repository The owner/name of the repository + * @param logger A logger + * @returns A boolean indicating whether or not the toolcache should be bypassed and the latest codeql should be downloaded. + */ +export async function shouldBypassToolcache( + featuresEnablement: FeatureEnablement, + codeqlUrl: string | undefined, + languagesInput: string | undefined, + repository: RepositoryNwo, + logger: Logger +): Promise { + // An explicit codeql url is specified, that means the toolcache will not be used. + if (codeqlUrl) { + return true; + } + + // Check if the toolcache is disabled for all languages + if (await featuresEnablement.getValue(Feature.BypassToolcacheEnabled)) { + return true; + } + + // Check if the toolcache is disabled for kotlin and swift. + if ( + !(await featuresEnablement.getValue( + Feature.BypassToolcacheKotlinSwiftEnabled + )) + ) { + return false; + } + + // Now check to see if kotlin or swift is one of the languages being analyzed. + const { rawLanguages, autodetected } = await getRawLanguages( + languagesInput, + repository, + logger + ); + let bypass = rawLanguages.some((lang) => KOTLIN_SWIFT_BYPASS.includes(lang)); + if (bypass) { + logger.info( + `Bypassing toolcache for kotlin or swift. Languages: ${rawLanguages}` + ); + } else if (!autodetected && rawLanguages.includes(Language.java)) { + // special case: java was explicitly specified, but there might be + // some kotlin in the repository, so we need to make a request for that. + const langsInRepo = await getLanguagesInRepo(repository, logger); + if (langsInRepo.includes("kotlin")) { + logger.info(`Bypassing toolcache for kotlin.`); + bypass = true; + } + } + return bypass; +} diff --git a/tests/multi-language-repo/build.sh b/tests/multi-language-repo/build.sh index e32d3e48b3..80c08cce84 100755 --- a/tests/multi-language-repo/build.sh +++ b/tests/multi-language-repo/build.sh @@ -11,3 +11,5 @@ go build main.go if [[ "$OSTYPE" == "darwin"* || "$OSTYPE" == "linux-gnu"* ]]; then swift build fi + +kotlinc main.kt diff --git a/tests/multi-language-repo/main.kt b/tests/multi-language-repo/main.kt new file mode 100644 index 0000000000..52b23a2879 --- /dev/null +++ b/tests/multi-language-repo/main.kt @@ -0,0 +1,5 @@ +fun main() { + if (true) { + println("Hello, World!") + } +}