Commit Graph

58 Commits

Author SHA1 Message Date
Henry Mercer
4a0b22ec25 Delete unused CodeQL bundles from the toolcache before downloading
When we download a bundle the toolcache often already holds a different one that the job will not use, and on GitHub-hosted runners it shares a filesystem with the workspace, so it takes space away from the analysis. Empty the toolcache before downloading, which also frees space for the archive during extraction, and which is safe because getting as far as a download means the tools were not resolved from the toolcache. Skip this once a step has obtained the tools, since a later step may run a path it was given, and gate it on the runner being GitHub-hosted and on a feature flag that is off by default.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-09-04 10:12:10 +01:00
Paolo Tranquilli
6441b26a49 Merge remote-tracking branch 'origin/main' into redsun82-linux-arm64-support 2026-08-27 10:09:22 +02:00
Henry Mercer
c05e445696 Report tools download durations on both download paths
The streaming path reported no timings at all, so we have no data for the
path that most runs take. It now reports a total duration, which is also
populated on the download-then-extract path.

That path additionally reports the extraction duration, which was
previously computed but only logged.

`downloadDurationMs` keeps its existing meaning of time spent downloading
alone, so existing telemetry stays comparable.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 628ce334-991a-4578-9c1b-93d2e96bbddb
2026-08-24 18:32:04 +01:00
Paolo Tranquilli
43ae5e70b0 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
2026-08-05 15:51:01 +02:00
Paolo Tranquilli
4c96123771 Add support for linux/arm64
Recognize the linux/arm64 platform so the CodeQL CLI is accepted on
Arm64 Linux runners and the native per-platform bundle
codeql-bundle-linux-arm64.tar.zst is resolved, rather than falling
through to the combined all-platforms gzip fallback (which deliberately
omits arm64).

Add ["linux", "arm64"] to the supported platforms and make the linux
bundle name arch-aware. Keep the download mock faithful and cover the
new arch branch with tests.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-08-04 15:32:12 +02:00
Michael B. Gale
3013ac07bd Promote AllowToolcacheInput feature 2026-07-24 16:28:21 +01:00
Henry Mercer
f342ca9247 Preserve bundle compression coverage
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-07-22 10:29:53 +01:00
Henry Mercer
3c20a74df3 Remove unused bundle download fields
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-07-20 18:55:25 +01:00
Michael B. Gale
4b164dbc17 Add CODE_SCANNING_* vars to EnvVar enum 2026-07-09 14:51:22 +01:00
Henry Mercer
b4ea7aa65a Improve tests 2026-05-08 19:16:48 +01:00
Henry Mercer
42d7f62579 Remove dead code 2026-05-08 19:16:46 +01:00
Henry Mercer
540699dcca Remove makeOverlayMatchFeatures indirection 2026-05-08 19:14:05 +01:00
Henry Mercer
0aedbb71d8 Merge branch 'main' into henrymercer/overlay-match-codeql-version 2026-05-08 19:10:45 +01:00
Michael B. Gale
922d6fb888 Use makeMacro instead of test.macro 2026-05-07 14:59:42 +01:00
Henry Mercer
01bc9be56a Filter to code scanning only 2026-05-07 11:00:54 +01:00
Henry Mercer
b967fdfbdc Add dry run mode so we can dark ship 2026-05-06 18:30:24 +01:00
Henry Mercer
55d6319f96 Match CLI version to cached overlay-base database 2026-05-06 18:01:37 +01:00
Henry Mercer
b0942116d7 Expose all enabled default CLI versions 2026-05-06 17:45:56 +01:00
Henry Mercer
6123416ead Merge remote-tracking branch 'origin/main' into henrymercer/parallel-unit-tests 2026-03-04 15:12:33 +01:00
Henry Mercer
675af55c60 Run some unit tests in parallel 2026-03-04 12:40:22 +01:00
Henry Mercer
d4f1b14259 Use new setupActionsVars pattern 2026-03-03 19:24:18 +01:00
Michael B. Gale
8b734d3bc2 Improve variable names and comments
Also set default `GITHUB_EVENT_NAME` in `setupActionsVars`
2026-02-16 08:54:19 +00:00
Michael B. Gale
d5f0374a1f Force nightly bundle when FF is enabled 2026-02-15 17:22:20 +00:00
Michael B. Gale
466a4f00eb Add unit test for tools: nightly 2026-02-15 17:19:12 +00:00
Michael B. Gale
dc2ced8385 Add tests for scenarios where the feature is unavailable 2025-10-10 14:39:59 +01:00
Michael B. Gale
5c752c85dd Add test macro for fallback tests 2025-10-10 14:39:58 +01:00
Michael B. Gale
a512fe0868 Gate tools: toolcache behind FF
Mainly to allow us to disable it, if needed.
2025-10-10 13:49:06 +01:00
Michael B. Gale
726a341ed4 Restrict when tools: toolcache can be used 2025-10-06 13:16:16 +01:00
Michael B. Gale
425ef85595 Support requesting CLI from toolcache with tools: toolcache 2025-10-03 15:40:33 +01:00
Michael B. Gale
297313df79 Add getLatestToolcacheVersion with tests 2025-10-03 14:40:34 +01:00
Henry Mercer
1afa0e7463 Cleanup extract to toolcache feature flag 2025-08-08 11:26:14 +01:00
Chuan-kai Lin
b37e7e2c5d Move initializeFeatures() to testing-utils
This change eliminates the need for setup-codeql.test to import from
feature-flags.test, which makes the former run all tests defined in the
latter.
2025-07-11 09:54:40 -07:00
Fotis Koutoulakis (@NlightNFotis)
427ce4600e doc: add issue link to todo reminders in tests 2024-11-12 18:29:53 +00:00
Fotis Koutoulakis (@NlightNFotis)
5445a29a97 tests: instead of false, use old feature flag with default value of false 2024-11-12 17:59:47 +00:00
Henry Mercer
33f2dc57a4 Enable zstd bundles on GHES and remove feature flag 2024-11-01 15:24:51 +00:00
Henry Mercer
1f4b0cb523 Add regression test 2024-10-28 20:07:52 +00:00
Henry Mercer
e5048f5d84 Tweak a couple of log messages 2024-10-22 21:19:34 +01:00
Henry Mercer
565880b86a Add explicit field for extraction streaming 2024-10-10 19:54:56 +01:00
Henry Mercer
4dca88a5fc Logging: Add a space after a URL for easier copying 2024-10-10 19:48:21 +01:00
Henry Mercer
ddead5420c Stream the download and extraction of zstd bundles
Behind a feature flag
2024-10-10 19:48:20 +01:00
Henry Mercer
4d015b8cba Fall back to gzip if zstd fails 2024-09-23 22:53:13 +01:00
Henry Mercer
a7a6a6951e Determine zstd availability earlier on to simplify log 2024-09-23 22:39:47 +01:00
Henry Mercer
ac3fca3e9f Use zstd bundle by default when feature flag enabled 2024-09-23 22:39:46 +01:00
Henry Mercer
dd7307d603 Refactoring: Simplify retrieving error message 2024-09-16 22:38:35 +02:00
Henry Mercer
0aafba91ba Add standard tools URLs to status report 2024-09-05 19:40:26 +02:00
Henry Mercer
cf64c3e3a3 Add telemetry for compression method 2024-08-29 17:26:14 +01:00
Henry Mercer
50357f5d12 Add telemetry for time spent extracting CodeQL bundle 2024-08-08 17:46:21 +01:00
Fotis Koutoulakis (@NlightNFotis)
df4819e3a1 Soften deprecation message wording and remove unhelpful version strings from some locations 2024-05-13 14:51:06 +01:00
Fotis Koutoulakis (@NlightNFotis)
bcc13653e8 Move logging messages to downstream function and add deprecation notice 2024-05-13 14:51:06 +01:00
Fotis Koutoulakis (@NlightNFotis)
c92bbd4223 Add test for CodeQL version appearing in log. 2024-05-13 14:51:06 +01:00