Commit Graph

1486 Commits

Author SHA1 Message Date
Dmitriy Vasyura
3d91bf7907 Enable CLI DevTunnel sanity tests (#305807) 2026-03-31 14:13:23 +11:00
João Moreno
fc6b2053dd fix: trigger stable build instead of insider build on release branches (#304406)
Co-authored-by: Copilot <copilot@github.com>
2026-03-24 09:37:56 +00:00
Dmitriy Vasyura
551308fdbc Remove automated trigger for sanity tests pipeline (#304168) 2026-03-23 17:32:38 +00:00
Alex Dima
f0a7531832 Install bubblewrap and socat in Linux CI pipelines
These are required for terminal sandbox integration tests.
2026-03-22 01:49:00 +01:00
Connor Peet
b7462b4a00 Merge pull request #303597 from microsoft/connor4312/agent-host-server-fixups
agentHost: fixup build for server
2026-03-20 13:54:33 -07:00
Dmitriy Vasyura
9de7db1a5c Sanity tests improvements (#302917) 2026-03-18 18:42:27 +00:00
João Moreno
c58fd111b2 fix: rename pipeline (#302543) 2026-03-17 20:37:18 +00:00
João Moreno
19daf4d536 feat: rename pipeline and fix esm script (#302466)
Co-authored-by: Copilot <copilot@github.com>
2026-03-17 16:06:38 +00:00
João Moreno
e3b4bdb925 allow terrapin checks to by manually triggered and report results back to GitHub (#302451)
* initial terrapin check poc

* bump terrapin timeout, remove trigger

* allow terrapin checks to by manually triggered and report results back to GitHub

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-03-17 14:34:34 +00:00
João Moreno
817d225857 Change Terrapin checks to be manual dispatches, increase timeouts (#302398)
* initial terrapin check poc

* bump terrapin timeout, remove trigger
2026-03-17 14:12:56 +00:00
João Moreno
95e71c6873 fix: enhance release approval condition to include main and release branches (#302057)
Co-authored-by: Copilot <copilot@github.com>
2026-03-16 11:50:35 +00:00
João Moreno
4bf76cd10b feat: add job to trigger insider builds for release branches (#302047)
Co-authored-by: Copilot <copilot@github.com>
2026-03-16 12:20:40 +01:00
João Moreno
a7b8934257 feat: automatically build release branches (#301991)
Co-authored-by: Copilot <copilot@github.com>
2026-03-16 10:11:06 +01:00
João Moreno
ac40642c8e refactor: remove rollout duration for insider builds in release process (#301496) 2026-03-13 13:58:56 +00:00
Raymond Zhao
38f689e11d chore: align install steps (#301147) 2026-03-12 10:36:19 -07:00
João Moreno
47b668e16d pin snapcraft docker image (#300704) 2026-03-11 08:51:04 +00:00
Anthony Kim
a0d3bb68f2 Fix PSReadline for screen reader (#298881)
* Fix PSReadline for screen reader, disable header

* Add psreadline to index.ts for build

* organize much better

* compile

* list out exact folder

* try if codesign is the problem

* Update comment to be more accurate

* Undo changes for noLogo
2026-03-10 19:35:11 -07:00
Dmitriy Vasyura
c95cc7ae08 Fix Guardian errors in sanity tests stage (#298662) 2026-03-02 09:07:48 +00:00
João Moreno
d2a693d828 fix missing sourcemaps (#298660) 2026-03-02 08:54:03 +00:00
Ladislau Szomoru
215f6b4dd5 Engineering - move node_modules and APIScan stages to the bottom (#298562) 2026-03-01 17:39:05 +01:00
Ladislau Szomoru
12bb8a5b96 Engineering - delete macOS test pipeline (#298539) 2026-03-01 09:29:52 +01:00
João Moreno
d2f1f7ce97 Inline Compile & CompileCLI stages into platform specific jobs (#296006)
* chore: ralph loop checkpoint - 2026-02-17 12:48

* fix shell script

* Inline compile stage into platform jobs

Remove the standalone Compile stage from the ADO pipeline. Each
platform job (Windows, Linux, macOS, Alpine, Web) now compiles
TypeScript itself instead of downloading a shared Compilation artifact.

- Add VSCODE_RUN_CHECKS parameter to Linux jobs for hygiene/lint/CG
- Add VSCODE_RUN_COMPILE_EXTRAS parameter to macOS jobs for telemetry
  extraction and sourcemap upload
- Remove VSCODE_COMPILE_ONLY parameter entirely
- Delete product-compile.yml (no longer referenced)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Always run telemetry extraction on macOS builds

The macOS Universal app merge requires both x64 and arm64 builds to have
identical file sets. Telemetry extraction was only running on arm64 (via
VSCODE_RUN_COMPILE_EXTRAS), causing the universal merge to fail due to
missing telemetry-core.json and telemetry-extensions.json in the x64 build.

Move telemetry extraction outside the VSCODE_RUN_COMPILE_EXTRAS gate so
it runs on all macOS builds. Sourcemap upload remains gated.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Run telemetry extraction on all client builds

All client builds (Linux, Windows, macOS) need telemetry-core.json and
telemetry-extensions.json. Previously only macOS arm64 ran extract-telemetry.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Only run telemetry extraction on Linux x64 (client build)

Linux arm64 and armhf are server-only builds, no need for telemetry files.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Remove .ralph scaffolding files

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix telemetry extraction on Windows with native PowerShell

The bash extract-telemetry.sh script fails on Windows because the Unix
bin shim gets interpreted as Node.js code. Use a native PowerShell
implementation that calls the extractor JS entry point directly.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Handle missing telemetry files gracefully on Windows

The telemetry extractor may skip emitting declarations-resolved.json
when no events are found. Handle this case with a warning instead of
failing the build.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Use deterministic build date from git commit timestamp

When each platform compiles independently, the build date embedded in
cli.js (via INSERT_PRODUCT_CONFIGURATION) differs between machines
because each uses new Date().toISOString(). This causes the macOS
Universal app merge to fail since cli.js SHA differs between x64/arm64.

Fix: use the git commit date (git log -1 --format=%cI HEAD) instead
of the current wall-clock time. This ensures all independent builds
on different machines produce identical timestamps.

Updated in:
- build/lib/date.ts: writeISODate() uses git commit date
- build/next/index.ts: bundle(), transpile, and readISODate fallback
  all use git commit date

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Remove redundant extensions-ci task from CI pipelines

core-ci (esbuild path) already includes cleanExtensionsBuildTask,
compileNonNativeExtensionsBuildTask, and compileExtensionMediaBuildTask.
Running extensions-ci in parallel caused a race condition where
core-ci's rimraf of .build/extensions clashed with extensions-ci
writing to the same directory.

Also removes dead code:
- extensions-ci and extensions-ci-pr task definitions (fully subsumed)
- core-ci-old task (useEsbuildTranspile is always true)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* remove VSCODE_RUN_COMPILE_EXTRAS

* address PR feedback regarding code duplication of `getGitCommitDate()` function by exporting a single helper function from `build/lib/date.ts` and importing it in `build/next/index.ts` to ensure consistent behavior and improve code maintainability.

* update readISODate function to return git commit date instead of current date

* add telemetry sorting script and integrate into build process for consistent output

* refactor telemetry extraction process: replace shell script with TypeScript implementation

* update skill

* update telemetry-extractor dependency to version 1.19.0

* fix build

* fix more duplicate telemetry definition issues

* cleanup

* refactor: consolidate validation checks into quality checks and remove obsolete tasks

* bust the cache

* undo cache bust

* fix expression

* fix

* fix: update Azure storage account name in quality checks

* fix: initialize stages set with 'Quality'

* fix: add VSCODE_BUILD_TYPE parameter with options for Product and CI builds

* fix: update Azure Pipeline CLI to use parameters instead of variables for queueing builds

* fix: update VSCODE_BUILD_TYPE parameter values for clarity

* fix: update default value for VSCODE_BUILD_TYPE parameter to 'Product'

* leaner

* even leaner

* only npm ci in build

* 💄

* run entire npm ci

* fix

* fix

* fix it

* Inline CompileCLI into platform stages

- Remove centralized CompileCLI stage
- Move CLI jobs into Windows, Linux, macOS stages as independent jobs
- CLI jobs now compile, publish unsigned mid-job, sign, and publish signed
- Platform compile jobs use deemon + waitForArtifacts for async CLI download
- Delete separate CLI sign jobs (now merged into CLI compile jobs)
- Remove CompileCLI from publish.ts stage tracking

* fix: macOS CLI signing - use proper directory structure for ESRP

* fix: add BUILDS_API_URL to Windows and Linux job templates

* fix: label Linux CLI jobs clearly

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: João Moreno <22350+joaomoreno@users.noreply.github.com>
2026-03-01 08:48:08 +01:00
Dmitriy Vasyura
a0a6cd83e2 Improve sanity tests stability (#298253) 2026-02-27 16:06:37 +00:00
Dmitriy Vasyura
0f81f59968 Add Sanity Tests stage to product build pipeline (#296668) 2026-02-24 11:29:11 +01:00
Dmitriy Vasyura
ee401a1256 Sanity tests perf improvements (#296248) 2026-02-22 16:55:53 +00:00
Robo
61a6cf5929 refactor: pull dmgbuild from repo (#291949)
* refactor: pull dmgbuild from repo

* ci: update python version

* chore: try with homebrew

* chore: fix binary path
2026-02-20 10:14:11 +01:00
Raymond Zhao
28f636e2b6 chore: adjust Windows BinSkim filter (#296394) 2026-02-19 15:31:55 -08:00
Ladislau Szomoru
3e3ac65d3c Engineering - another cache key update (#295268) 2026-02-13 23:03:52 +00:00
Ladislau Szomoru
9d91c023b7 Engineering - update cache key (#295259) 2026-02-13 22:17:49 +00:00
Ladislau Szomoru
ea22b3498d Engineering - use sccache during the cli build (#295241) 2026-02-13 12:35:50 -08:00
Ladislau Szomoru
5f6c0faea4 Engineering - move Alpine CLI jobs into the Alpine stage (#294852)
* Move Alpine jobs

* Update CompileCLI stage

* Pull request feedback
2026-02-12 12:43:47 +01:00
Dmitriy Vasyura
e72a9f54d6 Sanity test updates (#294782) 2026-02-12 10:36:23 +01:00
Ladislau Szomoru
bde73caaee Engineering - remove pipeline resource (#294497) 2026-02-11 14:24:51 +05:00
Alex Ross
e32b285afc Warn about distro commit and compat check early (#293104)
* Warn about distro commit and compat check early

* Move distro and extension validation to separate non-blocking stage (#293124)

* Initial plan

* Add separate ValidationChecks stage for distro and extension warnings

- Created new product-validation-checks.yml template for validation checks
- Added ValidationChecks stage to product-build.yml that runs in parallel with Compile
- Only runs when VSCODE_PUBLISH is true (release builds)
- Removed checks from product-compile.yml to avoid duplication
- Both checks use continueOnError and warning modes to make stage go orange without blocking

Co-authored-by: joaomoreno <22350+joaomoreno@users.noreply.github.com>

* Simplify product-validation-checks.yml following product-publish/release pattern

- Removed unnecessary node_modules caching, NPM registry setup, and authentication
- Simplified to just install build dependencies (npm ci in build directory)
- Reduced from 91 lines to 41 lines (55% reduction)
- Follows same pattern as product-publish.yml and product-release.yml

Co-authored-by: joaomoreno <22350+joaomoreno@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: joaomoreno <22350+joaomoreno@users.noreply.github.com>

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: joaomoreno <22350+joaomoreno@users.noreply.github.com>
2026-02-05 18:00:33 +00:00
Robo
b3669c244f ci: fix electron download from test steps (#292811)
* ci: fix electron download from test steps

* build: always repackage electron from oss entry scripts
2026-02-04 16:37:20 +01:00
Robo
d0e516655a fix: rename product executable on macOS (#291948)
* fix: rename product executable name on macOS

* chore: update test/automation/src/electron.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: update test/automation/src/electron.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* chore: rename in additional places

* chore: rename in code-perf.js

* chore: create symlink for backwards compatibility

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-03 14:50:21 -08:00
Robo
2bf84bff1b chore: update missing lock file changes (#292584) 2026-02-03 16:23:02 +00:00
Robo
2c2c45a9b5 ci: skip server codesign for universal (#292475) 2026-02-03 07:03:21 +00:00
Dmitriy Vasyura
8343acba0b Match macOS server entitlements to those used in client builds (#292442) 2026-02-02 19:04:42 -08:00
Dmitriy Vasyura
ed8f9653da Sign macOS server binaries (#291872) 2026-02-02 15:53:33 +01:00
Raymond Zhao
fb1e3d22ac chore: exclude more files from BinSkim (#291946) 2026-01-30 12:58:31 -08:00
Dmitriy Vasyura
4ac8b5ed98 Enable Windows ARM sanity tests on the new pool (#291753)
* Enable Windows ARM sanity tests on the new pool

* Update README
2026-01-29 23:30:36 +00:00
Raymond Zhao
000e601e5e Revert "engineering: use tar+zstd for win32 node_modules cache" (#291740)
Revert "engineering: use tar+zstd for win32 node_modules cache (#291624)"

This reverts commit 70529729e6.
2026-01-29 21:48:29 +00:00
João Moreno
70529729e6 engineering: use tar+zstd for win32 node_modules cache (#291624)
* engineering: use tar+zstd for win32 node_modules cache

* bump cache

* Update .github/workflows/pr-node-modules.yml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update build/azure-pipelines/win32/product-build-win32-node-modules.yml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update build/azure-pipelines/win32/steps/product-build-win32-compile.yml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update .github/workflows/pr-win32-test.yml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* bump cache salt

* more fixes

---------

Co-authored-by: Aman Karmani <aman@tmm1.net>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-29 21:16:43 +01:00
Alex Ross
e0e634e326 Bump macOS test timeout to 90 minutes (#291664)
The owners of this have asked us to try a longer timeout to help them determine if the issues we're seeing are perf degradation or a hang
2026-01-29 17:25:35 +00:00
Robo
9f5995dd3f ci: restore reliability of terrapin check (#291484)
* ci: remove continueOnError setting

* fix: misconfigured peerdepedency setting for subfolders during postinstall

* fix: restore package lock urls for reliable git check
2026-01-28 22:13:32 -08:00
Dmitriy Vasyura
4d8241eeaa Sanity tests updates (#291399)
* Sanity tests updates

* Revert qemu accidental change.
2026-01-28 13:58:56 -08:00
Robo
0074df9396 fix: update disk badge icons for dmg (#290879)
* fix: update disk badge icons for dmg

* chore: try with code icons as badge

* fix: patch badge icon outside of dmgbuild

Refs https://github.com/dmgbuild/dmgbuild/issues/278
which doesn't work well on macOS 26. We avoid forking
the project in this manner.
2026-01-28 12:03:31 +01:00
Dmitriy Vasyura
7024815efd Add test for arm64 Linux with 64K page size (#290658) 2026-01-26 18:53:22 -08:00
Robo
67655b30f5 chore: bump electron@39.3.0 (#289985)
* chore: bump electron@39.3.0

* chore: update build

* chore: bump distro
2026-01-26 21:02:29 +00:00