Skip to content

Commit 43ae5e7

Browse files
redsun82Copilot
andcommitted
Address review comments
- Add darwin/x64 case to linked bundle tests and disambiguate the parametrized test title by platform/arch - Reword CHANGELOG entry to clarify the CLI supports Linux Arm64 - Add a dedicated Linux Arm64 end-to-end PR check on ubuntu-24.04-arm Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 308c78bb-53a3-4877-a373-70fab87543f1
1 parent 4c96123 commit 43ae5e7

4 files changed

Lines changed: 131 additions & 2 deletions

File tree

.github/workflows/__linux-arm64.yml

Lines changed: 91 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ See the [releases page](https://github.com/github/codeql-action/releases) for th
44

55
## [UNRELEASED]
66

7-
- The CodeQL Action now supports running on Linux Arm64 runners, downloading the native `linux-arm64` CodeQL bundle. [#4072](https://github.com/github/codeql-action/pull/4072)
7+
- 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)
88

99
## 4.37.5 - 03 Aug 2026
1010

pr-checks/checks/linux-arm64.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: "Linux Arm64"
2+
description: "An end-to-end integration test running on a Linux Arm64 runner, checking that the native linux-arm64 CodeQL bundle is downloaded and can analyze interpreted and compiled code"
3+
operatingSystems:
4+
- os: ubuntu
5+
runner-image: ubuntu-24.04-arm
6+
# The native linux-arm64 CodeQL bundle is only available in recent CLI releases, so we restrict this
7+
# check to `nightly-latest`, which is guaranteed to ship it. Older stable versions do not have an
8+
# arm64 asset, and `prepare-test` would resolve an x64 bundle URL for them on this runner.
9+
versions:
10+
- nightly-latest
11+
installGo: true
12+
steps:
13+
- uses: ./../action/init
14+
with:
15+
languages: javascript,python,go
16+
tools: ${{ steps.prepare-test.outputs.tools-url }}
17+
- name: Build Go code
18+
run: go build main.go
19+
- uses: ./../action/analyze
20+
with:
21+
skip-queries: true
22+
upload-database: false
23+
- name: Assert databases exist
24+
run: |
25+
cd "$RUNNER_TEMP/codeql_databases"
26+
for lang in javascript python go; do
27+
if [[ ! -d "$lang" ]]; then
28+
echo "Did not find a database for $lang"
29+
exit 1
30+
fi
31+
done

src/setup-codeql.test.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,13 @@ const LINKED_BUNDLE_TEST_CASES = [
139139
expectedBundleName: "codeql-bundle-osx64.tar.zst",
140140
expectedCompressionMethod: "zstd",
141141
},
142+
{
143+
platform: "darwin",
144+
arch: "x64",
145+
tarSupportsZstd: true,
146+
expectedBundleName: "codeql-bundle-osx64.tar.zst",
147+
expectedCompressionMethod: "zstd",
148+
},
142149
{
143150
platform: "win32",
144151
arch: "x64",
@@ -163,7 +170,7 @@ for (const {
163170
expectedCompressionMethod,
164171
} of LINKED_BUNDLE_TEST_CASES) {
165172
test.serial(
166-
`getCodeQLSource selects ${expectedBundleName} for linked tools`,
173+
`getCodeQLSource selects ${expectedBundleName} for linked tools on ${platform}/${arch}`,
167174
async (t) => {
168175
const features = createFeatures([]);
169176
sinon.stub(process, "platform").value(platform);

0 commit comments

Comments
 (0)