diff --git a/.github/workflows/__linux-arm64.yml b/.github/workflows/__linux-arm64.yml index a1764426d8..de045d8954 100644 --- a/.github/workflows/__linux-arm64.yml +++ b/.github/workflows/__linux-arm64.yml @@ -20,6 +20,11 @@ on: - cron: '0 5 * * *' workflow_dispatch: inputs: + dotnet-version: + type: string + description: The version of .NET to install + required: false + default: 9.x go-version: type: string description: The version of Go to install @@ -27,6 +32,11 @@ on: default: '>=1.21.0' workflow_call: inputs: + dotnet-version: + type: string + description: The version of .NET to install + required: false + default: 9.x go-version: type: string description: The version of Go to install @@ -37,7 +47,7 @@ defaults: shell: bash concurrency: cancel-in-progress: ${{ github.event_name == 'pull_request' || false }} - group: linux-arm64-${{github.ref}}-${{inputs.go-version}} + group: linux-arm64-${{github.ref}}-${{inputs.dotnet-version}}-${{inputs.go-version}} jobs: linux-arm64: strategy: @@ -56,6 +66,10 @@ jobs: steps: - name: Check out repository uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + - name: Install .NET + uses: actions/setup-dotnet@a98b56852c35b8e3190ac28c8c2271da59106c68 # v6.0.0 + with: + dotnet-version: ${{ inputs.dotnet-version || '9.x' }} - name: Install Go uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 with: @@ -70,21 +84,23 @@ jobs: setup-kotlin: 'true' - uses: ./../action/init with: - languages: javascript,python,go + languages: ${{ env.LANGUAGES }} tools: ${{ steps.prepare-test.outputs.tools-url }} - - name: Build Go code - run: go build main.go + - name: Build code + run: ./build.sh - uses: ./../action/analyze with: upload-database: false - name: Assert databases exist run: | cd "$RUNNER_TEMP/codeql_databases" - for lang in javascript python go; do + for lang in ${LANGUAGES//,/ }; do if [[ ! -d "$lang" ]]; then echo "Did not find a database for $lang" exit 1 fi + echo "Found database for $lang" done env: + LANGUAGES: cpp,csharp,go,java,javascript,python,ruby CODEQL_ACTION_TEST_MODE: true diff --git a/CHANGELOG.md b/CHANGELOG.md index dc22e818d1..617419b551 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ See the [releases page](https://github.com/github/codeql-action/releases) for th ## [UNRELEASED] -- The CodeQL Action now supports CodeQL releases that are compatible with Linux Arm64 and download the native `linux-arm64` CodeQL bundle when available. [#4072](https://github.com/github/codeql-action/pull/4072) +- The CodeQL Action now supports CodeQL releases that are compatible with Linux Arm64 and downloads the native `linux-arm64` CodeQL bundle when available. [#4072](https://github.com/github/codeql-action/pull/4072) ## 4.37.9 - 26 Aug 2026 diff --git a/pr-checks/checks/linux-arm64.yml b/pr-checks/checks/linux-arm64.yml index 94e03da173..29d3eea41e 100644 --- a/pr-checks/checks/linux-arm64.yml +++ b/pr-checks/checks/linux-arm64.yml @@ -9,22 +9,27 @@ operatingSystems: versions: - nightly-latest installGo: true +installDotNet: true +# The set of languages CodeQL supports on this platform, excluding Swift (macOS only). +env: + LANGUAGES: cpp,csharp,go,java,javascript,python,ruby steps: - uses: ./../action/init with: - languages: javascript,python,go + languages: ${{ env.LANGUAGES }} tools: ${{ steps.prepare-test.outputs.tools-url }} - - name: Build Go code - run: go build main.go + - name: Build code + run: ./build.sh - uses: ./../action/analyze with: upload-database: false - name: Assert databases exist run: | cd "$RUNNER_TEMP/codeql_databases" - for lang in javascript python go; do + for lang in ${LANGUAGES//,/ }; do if [[ ! -d "$lang" ]]; then echo "Did not find a database for $lang" exit 1 fi + echo "Found database for $lang" done