From 5cbcfec109653e070c024e522bf9ad2d1ef10bc4 Mon Sep 17 00:00:00 2001 From: Paulo Santos Date: Tue, 13 Jan 2026 11:47:15 +0000 Subject: [PATCH] removed windows 2019 and ubuntu 20.04 files and reference --- .github/ISSUE_TEMPLATE/announcement.yml | 1 - .github/ISSUE_TEMPLATE/bug-report.yml | 1 - .github/ISSUE_TEMPLATE/tool-request.yml | 1 - .github/workflows/windows2019.yml | 20 - CONTRIBUTING.md | 7 +- README.md | 5 +- docs/create-image-and-azure-resources.md | 2 +- helpers/GenerateResourcesAndImage.ps1 | 7 +- images.CI/linux-and-win/build-image.ps1 | 2 +- images/windows/Windows2019-Readme.md | 550 ------------------ .../scripts/build/Configure-ImageDataFile.ps1 | 6 +- .../windows/scripts/build/Install-Mingw64.ps1 | 36 +- .../scripts/build/Install-VisualStudio.ps1 | 54 +- images/windows/scripts/build/Install-WDK.ps1 | 17 +- .../docs-gen/Generate-SoftwareReport.ps1 | 22 +- .../windows/scripts/helpers/ImageHelpers.psm1 | 1 - .../scripts/helpers/InstallHelpers.ps1 | 18 - .../scripts/helpers/VisualStudioHelpers.ps1 | 6 +- .../windows/scripts/tests/Android.Tests.ps1 | 11 +- .../windows/scripts/tests/BizTalk.Tests.ps1 | 15 +- .../windows/scripts/tests/CLI.Tools.Tests.ps1 | 10 - .../scripts/tests/ChocoPackages.Tests.ps1 | 6 - images/windows/scripts/tests/MSYS2.Tests.ps1 | 7 - .../scripts/tests/SSDTExtensions.Tests.ps1 | 18 +- images/windows/scripts/tests/Tools.Tests.ps1 | 28 - .../scripts/tests/VisualStudio.Tests.ps1 | 10 +- .../scripts/tests/WindowsFeatures.Tests.ps1 | 2 +- .../templates/build.windows-2019.pkr.hcl | 283 --------- .../windows/templates/locals.windows.pkr.hcl | 4 - images/windows/toolsets/toolset-2019.json | 455 --------------- 30 files changed, 39 insertions(+), 1566 deletions(-) delete mode 100644 .github/workflows/windows2019.yml delete mode 100644 images/windows/Windows2019-Readme.md delete mode 100644 images/windows/templates/build.windows-2019.pkr.hcl delete mode 100644 images/windows/toolsets/toolset-2019.json diff --git a/.github/ISSUE_TEMPLATE/announcement.yml b/.github/ISSUE_TEMPLATE/announcement.yml index 91464c8d3..88e459125 100644 --- a/.github/ISSUE_TEMPLATE/announcement.yml +++ b/.github/ISSUE_TEMPLATE/announcement.yml @@ -44,7 +44,6 @@ body: - label: macOS 15 - label: macOS 15 Arm64 - label: macOS 26 Arm64 - - label: Windows Server 2019 - label: Windows Server 2022 - label: Windows Server 2025 - type: textarea diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index 6827473ed..b26b7bfea 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -27,7 +27,6 @@ body: - label: macOS 15 - label: macOS 15 Arm64 - label: macOS 26 Arm64 - - label: Windows Server 2019 - label: Windows Server 2022 - label: Windows Server 2025 - type: textarea diff --git a/.github/ISSUE_TEMPLATE/tool-request.yml b/.github/ISSUE_TEMPLATE/tool-request.yml index 58ca205ad..4bae1f892 100644 --- a/.github/ISSUE_TEMPLATE/tool-request.yml +++ b/.github/ISSUE_TEMPLATE/tool-request.yml @@ -65,7 +65,6 @@ body: - label: macOS 15 - label: macOS 15 Arm64 - label: macOS 26 Arm64 - - label: Windows Server 2019 - label: Windows Server 2022 - label: Windows Server 2025 - type: textarea diff --git a/.github/workflows/windows2019.yml b/.github/workflows/windows2019.yml deleted file mode 100644 index 3205a548b..000000000 --- a/.github/workflows/windows2019.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Trigger Windows19 CI -run-name: Windows2019 - ${{ github.event.pull_request.title }} - -on: - pull_request_target: - types: labeled - paths: - - 'images/windows/**' - -defaults: - run: - shell: pwsh - -jobs: - Windows_2019: - if: github.event.label.name == 'CI windows-all' || github.event.label.name == 'CI windows-2019' - uses: ./.github/workflows/trigger-ubuntu-win-build.yml - with: - image_type: 'windows2019' - secrets: inherit diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index eddd7d5b8..28260c9d6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -16,7 +16,6 @@ Please note that this project is released with a [Contributor Code of Conduct][c - [Adding a new tool to an image](#adding-a-new-tool-to-an-image) - [Code style guide](#code-style-guide) - ## Submitting a pull request 1. [Fork][fork] and clone the repository. @@ -41,18 +40,18 @@ Here are a few things you can do that will increase the likelihood of your pull - For every new tool, add validation scripts and update the software report script to ensure that it is included in the documentation. - If the tool is available on multiple platforms (macOS, Windows, Linux), make sure you include it on as many as possible. -- If installing multiple versions of the tool, consider putting the list of versions in the corresponding `toolset.json` file. This will help other customers configure their builds flexibly. See [toolset-windows-2019.json](images/windows/toolsets/toolset-2019.json) as an example. +- If installing multiple versions of the tool, consider putting the list of versions in the corresponding `toolset.json` file. This will help other customers configure their builds flexibly. See [toolset-windows-2022.json](images/windows/toolsets/toolset-2022.json) as an example. - Use consistent naming across all files. - Validation scripts should be simple and shouldn't change the image content. ### Windows - Add a script that will install the tool and put the script in the `scripts/build` folder. -There are a bunch of helper functions that could simplify your code: `Install-ChocoPackage`, `Install-Binary`, `Install-VSIXFromFile`, `Install-VSIXFromUrl`, `Invoke-DownloadWithRetry`, `Test-IsWin19`, `Test-IsWin22` (find the full list of helpers in [ImageHelpers.psm1](images/windows/scripts/helpers/ImageHelpers.psm1)). +There are a bunch of helper functions that could simplify your code: `Install-ChocoPackage`, `Install-Binary`, `Install-VSIXFromFile`, `Install-VSIXFromUrl`, `Invoke-DownloadWithRetry`, `Test-IsWin22`, `Test-IsWin25` (find the full list of helpers in [ImageHelpers.psm1](images/windows/scripts/helpers/ImageHelpers.psm1)). - Add a script that will validate the tool installation and put the script in the `scripts/tests` folder. We use [Pester v5](https://github.com/pester/pester) for validation scripts. If the tests for the tool are complex enough, create a separate `*.Tests.ps1`. Otherwise, use `Tools.Tests.ps1` for simple tests. Add `Invoke-PesterTests -TestFile [-TestName ]` at the end of the installation script to ensure that your tests will be run. -- Add changes to the software report generator `images/windows/scripts/docs-gen/Generate-SoftwareReport.ps1`. The software report generator is used to generate an image's README file, e.g. [Windows2019-Readme.md](images/windows/Windows2019-Readme.md) and uses [MarkdownPS](https://github.com/Sarafian/MarkdownPS). +- Add changes to the software report generator `images/windows/scripts/docs-gen/Generate-SoftwareReport.ps1`. The software report generator is used to generate an image's README file, e.g. [Windows2022-Readme.md](images/windows/Windows2022-Readme.md) and uses [MarkdownPS](https://github.com/Sarafian/MarkdownPS). ### Ubuntu diff --git a/README.md b/README.md index a11e511a3..66a5345e1 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,6 @@ To build a VM machine from this repo's source, see the [instructions](docs/creat | macOS 14 Arm64 | `macos-14` or `macos-14-xlarge`| [macOS-14-arm64] | | Windows Server 2025 | `windows-latest` or `windows-2025` | [windows-2025] | | Windows Server 2022 | `windows-2022` | [windows-2022] | -| Windows Server 2019 [![Deprecated badge](https://img.shields.io/badge/-Deprecated-red)](https://github.com/actions/runner-images/issues/12045) | `windows-2019` | [windows-2019] | ### Label scheme @@ -40,7 +39,6 @@ To build a VM machine from this repo's source, see the [instructions](docs/creat [ubuntu-24.04]: https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2404-Readme.md [ubuntu-22.04]: https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2204-Readme.md [ubuntu-slim]: https://github.com/actions/runner-images/blob/main/images/ubuntu-slim/ubuntu-slim-Readme.md -[windows-2019]: https://github.com/actions/runner-images/blob/main/images/windows/Windows2019-Readme.md [windows-2025]: https://github.com/actions/runner-images/blob/main/images/windows/Windows2025-Readme.md [windows-2022]: https://github.com/actions/runner-images/blob/main/images/windows/Windows2022-Readme.md [macOS-14]: https://github.com/actions/runner-images/blob/main/images/macos/macos-14-Readme.md @@ -79,7 +77,6 @@ latest 2 versions of an OS. GitHub Actions and Azure DevOps use the `-latest` YAML label (ex: `ubuntu-latest`, `windows-latest`, and `macos-latest`). These labels point towards the newest stable OS version available. - The `-latest` migration process is gradual and happens over 1-2 months in order to allow customers to adapt their workflows to the newest OS version. During this process, any workflow using the `-latest` label, may see changes in the OS version in their workflows or pipelines. To avoid unwanted migration, users can specify a specific OS version in the yaml file (ex: macos-14, windows-2022, ubuntu-22.04). ## Image Releases @@ -172,8 +169,10 @@ In general, these are the guidelines we follow when deciding what to pre-install What images are available for GitHub Actions and Azure DevOps? The availability of images for GitHub Actions and Azure DevOps is the same. However, deprecation policies may differ. See documentation for more details: + - [GitHub Actions](https://docs.github.com/en/free-pro-team@latest/actions/reference/specifications-for-github-hosted-runners#supported-runners-and-hardware-resources) - [Azure DevOps](https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops&tabs=yaml#software) +
diff --git a/docs/create-image-and-azure-resources.md b/docs/create-image-and-azure-resources.md index 36e74926d..f538408f2 100644 --- a/docs/create-image-and-azure-resources.md +++ b/docs/create-image-and-azure-resources.md @@ -98,7 +98,7 @@ Finally, run the `GenerateResourcesAndImage` function, setting the mandatory arg - `ResourceGroupName` - the name of the resource group that will store the resulting artifact (e.g., "imagegen-test"). The resource group must already exist in your Azure subscription; - `AzureLocation` - the location where resources will be created (e.g., "East US"); -- `ImageType` - the type of image to build (valid options are "Windows2019", "Windows2022", "Windows2025", "Ubuntu2204", "Ubuntu2404"). +- `ImageType` - the type of image to build (valid options are "Windows2022", "Windows2025", "Ubuntu2204", "Ubuntu2404"). This function automatically creates all required Azure resources and initiates the Packer image generation for the selected image type. diff --git a/helpers/GenerateResourcesAndImage.ps1 b/helpers/GenerateResourcesAndImage.ps1 index 592313e7d..d1579cac5 100644 --- a/helpers/GenerateResourcesAndImage.ps1 +++ b/helpers/GenerateResourcesAndImage.ps1 @@ -1,7 +1,6 @@ $ErrorActionPreference = 'Stop' enum ImageType { - Windows2019 = 1 Windows2022 = 2 Windows2025 = 3 Ubuntu2204 = 4 @@ -18,10 +17,6 @@ Function Get-PackerTemplate { switch ($ImageType) { # Note: Double Join-Path is required to support PowerShell 5.1 - ([ImageType]::Windows2019) { - $relativeTemplatePath = Join-Path (Join-Path "windows" "templates") "build.windows-2019.pkr.hcl" - $imageOS = "win19" - } ([ImageType]::Windows2022) { $relativeTemplatePath = Join-Path (Join-Path "windows" "templates") "build.windows-2022.pkr.hcl" $imageOS = "win22" @@ -88,7 +83,7 @@ Function GenerateResourcesAndImage { .PARAMETER ResourceGroupName The name of the resource group to store the resulting artifact. Resource group must already exist. .PARAMETER ImageType - The type of image to generate. Valid values are: Windows2019, Windows2022, Windows2025, Ubuntu2204, Ubuntu2404. + The type of image to generate. Valid values are: Windows2022, Windows2025, Ubuntu2204, Ubuntu2404. .PARAMETER ManagedImageName The name of the managed image to create. The default is "Runner-Image-{{ImageType}}". .PARAMETER AzureLocation diff --git a/images.CI/linux-and-win/build-image.ps1 b/images.CI/linux-and-win/build-image.ps1 index 431702ce9..fa4dac919 100644 --- a/images.CI/linux-and-win/build-image.ps1 +++ b/images.CI/linux-and-win/build-image.ps1 @@ -9,7 +9,7 @@ param( [String] [Parameter (Mandatory=$true)] $TempResourceGroupName, [String] [Parameter (Mandatory=$true)] $SubscriptionId, [String] [Parameter (Mandatory=$true)] $TenantId, - [String] [Parameter (Mandatory=$true)] $ImageOS, # e.g. "ubuntu22", "ubuntu22" or "win19", "win22", "win25" + [String] [Parameter (Mandatory=$true)] $ImageOS, # e.g. "ubuntu22", "ubuntu24" or "win22", "win25" [String] [Parameter (Mandatory=$false)] $UseAzureCliAuth = "false", [String] [Parameter (Mandatory=$false)] $PluginVersion = "2.3.3", [String] [Parameter (Mandatory=$false)] $VirtualNetworkName, diff --git a/images/windows/Windows2019-Readme.md b/images/windows/Windows2019-Readme.md deleted file mode 100644 index eabd5cdc0..000000000 --- a/images/windows/Windows2019-Readme.md +++ /dev/null @@ -1,550 +0,0 @@ -| Announcements | -|-| -| [[Windows Server 2025] image will no longer have D:/ drive accessible to users from 2025-07-14](https://github.com/actions/runner-images/issues/12416) | -| [[Windows & Ubuntu] .NET 6 will be removed from the images on 2025-08-01.](https://github.com/actions/runner-images/issues/12241) | -*** -# Windows Server 2019 -- OS Version: 10.0.17763 Build 7558 -- Image Version: 20250709.2.0 - -## Windows features -- Windows Subsystem for Linux (WSLv1): Enabled - -## Installed Software - -### Language and Runtime -- Bash 5.2.37(1)-release -- Go 1.24.4 -- Julia 1.11.5 -- Kotlin 2.1.10 -- LLVM 18.1.8 -- Node 18.20.8 -- Perl 5.32.1 -- PHP 8.4.8 -- Python 3.9.13 -- Ruby 3.3.8 - -### Package Management -- Chocolatey 2.4.3 -- Composer 2.8.9 -- Helm 3.18.3 -- Miniconda 25.5.1 (pre-installed on the image but not added to PATH) -- NPM 10.8.2 -- NuGet 6.14.0.116 -- pip 25.1.1 (python 3.9) -- Pipx 1.7.1 -- RubyGems 3.5.22 -- Vcpkg (build from commit f33cc491c8) -- Yarn 1.22.22 - -#### Environment variables -| Name | Value | -| ----------------------- | ------------ | -| VCPKG_INSTALLATION_ROOT | C:\vcpkg | -| CONDA | C:\Miniconda | - -### Project Management -- Ant 1.10.15 -- Gradle 8.14 -- Maven 3.9.10 -- sbt 1.11.3 - -### Tools -- 7zip 25.00 -- aria2 1.37.0 -- azcopy 10.29.1 -- Bazel 8.3.1 -- Bazelisk 1.26.0 -- Bicep 0.36.177 -- Cabal 3.14.2.0 -- CMake 3.31.6 -- CodeQL Action Bundle 2.22.1 -- Docker 27.5.1 -- Docker Compose v2 2.32.2 -- Docker-wincred 0.9.3 -- ghc 9.12.2 -- Git 2.50.1.windows.1 -- Git LFS 3.7.0 -- Google Cloud CLI 529.0.0 -- ImageMagick 7.1.1-47 -- InnoSetup 6.4.0 -- jq 1.7.1 -- Kind 0.29.0 -- Kubectl 1.33.2 -- Mercurial 5.0 -- gcc 8.1.0 -- gdb 8.1 -- GNU Binutils 2.30 -- Newman 6.2.1 -- NSIS 3.10 -- OpenSSL 1.1.1w -- Packer 1.12.0 -- Parcel 2.15.4 -- Pulumi 3.181.0 -- R 4.4.2 -- Service Fabric SDK 10.1.2493.9590 -- Stack 3.7.1 -- Subversion (SVN) 1.14.5 -- Swig 4.1.1 -- VSWhere 3.1.7 -- WinAppDriver 1.2.2009.02003 -- WiX Toolset 3.14.1.8722 -- yamllint 1.37.1 -- zstd 1.5.7 -- Ninja 1.13.0 - -### CLI Tools -- Alibaba Cloud CLI 3.0.288 -- AWS CLI 2.27.49 -- AWS SAM CLI 1.142.1 -- AWS Session Manager CLI 1.2.707.0 -- Azure CLI 2.75.0 -- Azure DevOps CLI extension 1.0.2 -- Cloud Foundry CLI 8.14.1 -- GitHub CLI 2.75.0 - -### Rust Tools -- Cargo 1.88.0 -- Rust 1.88.0 -- Rustdoc 1.88.0 -- Rustup 1.28.2 - -#### Packages -- bindgen 0.72.0 -- cargo-audit 0.21.2 -- cargo-outdated 0.17.0 -- cbindgen 0.29.0 -- Clippy 0.1.88 -- Rustfmt 1.8.0 - -### Browsers and Drivers -- Google Chrome 138.0.7204.101 -- Chrome Driver 138.0.7204.94 -- Microsoft Edge 138.0.3351.77 -- Microsoft Edge Driver 138.0.3351.77 -- Mozilla Firefox 140.0.4 -- Gecko Driver 0.36.0 -- IE Driver 4.14.0.0 -- Selenium server 4.34.0 - -#### Environment variables -| Name | Value | -| ----------------- | ---------------------------------- | -| CHROMEWEBDRIVER | C:\SeleniumWebDrivers\ChromeDriver | -| EDGEWEBDRIVER | C:\SeleniumWebDrivers\EdgeDriver | -| GECKOWEBDRIVER | C:\SeleniumWebDrivers\GeckoDriver | -| SELENIUM_JAR_PATH | C:\selenium\selenium-server.jar | - -### Java -| Version | Environment Variable | -| ------------------- | -------------------- | -| 8.0.452+9 (default) | JAVA_HOME_8_X64 | -| 11.0.27+6 | JAVA_HOME_11_X64 | -| 17.0.15+6 | JAVA_HOME_17_X64 | -| 21.0.7+6.0 | JAVA_HOME_21_X64 | - -### Shells -| Name | Target | -| ------------- | --------------------------------- | -| gitbash.exe | C:\Program Files\Git\bin\bash.exe | -| msys2bash.cmd | C:\msys64\usr\bin\bash.exe | -| wslbash.exe | C:\Windows\System32\bash.exe | - -### MSYS2 -- Pacman 6.1.0 - -#### Notes -``` -Location: C:\msys64 - -Note: MSYS2 is pre-installed on image but not added to PATH. -``` - -### BizTalk Server -- BizTalk Server Project Build Component 3.13.832.0 - -### Cached Tools - -#### Go -- 1.22.12 -- 1.23.10 -- 1.24.4 - -#### Node.js -- 18.20.8 -- 20.19.3 -- 22.17.0 - -#### Python -- 3.9.13 -- 3.10.11 -- 3.11.9 -- 3.12.10 -- 3.13.5 - -#### PyPy -- 2.7.18 [PyPy 7.3.20] -- 3.6.12 [PyPy 7.3.3] -- 3.7.13 [PyPy 7.3.9] -- 3.8.16 [PyPy 7.3.11] -- 3.9.19 [PyPy 7.3.16] -- 3.10.16 [PyPy 7.3.19] - -#### Ruby -- 3.1.7 -- 3.2.8 -- 3.3.8 - -### Databases - -#### PostgreSQL -| Property | Value | -| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | -| ServiceName | postgresql-x64-14 | -| Version | 14.18 | -| ServiceStatus | Stopped | -| ServiceStartType | Disabled | -| EnvironmentVariables | PGBIN=C:\Program Files\PostgreSQL\14\bin
PGDATA=C:\Program Files\PostgreSQL\14\data
PGROOT=C:\Program Files\PostgreSQL\14 | -| Path | C:\Program Files\PostgreSQL\14 | -| UserName | postgres | -| Password | root | - -#### MongoDB -| Version | ServiceName | ServiceStatus | ServiceStartType | -| -------- | ----------- | ------------- | ---------------- | -| 5.0.31.0 | MongoDB | Stopped | Disabled | - -### Database tools -- Azure CosmosDb Emulator 2.14.23.0 -- DacFx 170.0.94.3 -- MySQL 5.7.44.0 -- SQL OLEDB Driver 18.7.4.0 -- SQLPS 1.0 - -### Web Servers -| Name | Version | ConfigFile | ServiceName | ServiceStatus | ListenPort | -| ------ | ------- | ------------------------------------- | ----------- | ------------- | ---------- | -| Apache | 2.4.55 | C:\tools\Apache24\conf\httpd.conf | Apache | Stopped | 80 | -| Nginx | 1.29.0 | C:\tools\nginx-1.29.0\conf\nginx.conf | nginx | Stopped | 80 | - -### Visual Studio Enterprise 2019 -| Name | Version | Path | -| ----------------------------- | ------------- | -------------------------------------------------------------- | -| Visual Studio Enterprise 2019 | 16.11.36227.6 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise | - -#### Workloads, components and extensions -| Package | Version | -| ------------------------------------------------------------------------- | --------------- | -| Component.Android.NDK.R16B | 16.11.36217.26 | -| Component.Android.SDK25.Private | 16.0.28625.61 | -| Component.Android.SDK30 | 16.10.31205.252 | -| Component.Ant | 1.9.3.8 | -| Component.Dotfuscator | 16.10.31205.252 | -| Component.Linux.CMake | 16.2.29003.222 | -| Component.MDD.Android | 16.0.28517.75 | -| Component.MDD.Linux | 16.5.29515.121 | -| Component.MDD.Linux.GCC.arm | 16.5.29515.121 | -| Component.Microsoft.VisualStudio.LiveShare | 1.0.4441 | -| Component.Microsoft.VisualStudio.RazorExtension | 16.10.31205.252 | -| Component.Microsoft.VisualStudio.Tools.Applications | 16.0.31110.1 | -| Component.Microsoft.VisualStudio.Web.AzureFunctions | 16.10.31205.252 | -| Component.Microsoft.Web.LibraryManager | 16.10.31205.180 | -| Component.Microsoft.WebTools.BrowserLink.WebLivePreview | 0.7.22.39845 | -| Component.Microsoft.Windows.DriverKit | 10.0.21381.0 | -| Component.OpenJDK | 16.11.31827.77 | -| Component.UnityEngine.x64 | 16.10.31205.252 | -| Component.Unreal | 16.1.28810.153 | -| Component.Unreal.Android | 16.1.28810.153 | -| Component.VSInstallerProjects | 1.0.2 | -| Component.WixToolset.VisualStudioExtension.Dev16 | 1.0.0.22 | -| Component.WixToolset.VisualStudioExtension.Schemas3 | 1.0.0.22 | -| Component.Xamarin | 16.11.36101.21 | -| Microsoft.Component.Azure.DataLake.Tools | 16.10.31205.252 | -| Microsoft.Component.ClickOnce | 16.11.31603.221 | -| Microsoft.Component.MSBuild | 16.11.33214.272 | -| Microsoft.Component.NetFX.Native | 16.5.29515.121 | -| Microsoft.Component.PythonTools | 16.11.31314.313 | -| Microsoft.Component.PythonTools.Miniconda | 16.11.31314.313 | -| Microsoft.Component.PythonTools.Web | 16.10.31205.252 | -| Microsoft.Component.VC.Runtime.UCRTSDK | 16.0.28625.61 | -| Microsoft.ComponentGroup.Blend | 16.0.28315.86 | -| Microsoft.ComponentGroup.ClickOnce.Publish | 16.11.31603.221 | -| Microsoft.Net.Component.3.5.DeveloperTools | 16.0.28517.75 | -| Microsoft.Net.Component.4.5.1.TargetingPack | 16.11.31605.320 | -| Microsoft.Net.Component.4.5.2.TargetingPack | 16.0.28517.75 | -| Microsoft.Net.Component.4.5.TargetingPack | 16.11.31605.320 | -| Microsoft.Net.Component.4.6.1.TargetingPack | 16.0.28517.75 | -| Microsoft.Net.Component.4.6.2.TargetingPack | 16.0.28517.75 | -| Microsoft.Net.Component.4.6.TargetingPack | 16.0.28517.75 | -| Microsoft.Net.Component.4.7.1.TargetingPack | 16.10.31205.252 | -| Microsoft.Net.Component.4.7.2.SDK | 16.4.29409.204 | -| Microsoft.Net.Component.4.7.2.TargetingPack | 16.10.31205.252 | -| Microsoft.Net.Component.4.7.TargetingPack | 16.10.31205.252 | -| Microsoft.Net.Component.4.8.SDK | 16.4.29313.120 | -| Microsoft.Net.Component.4.TargetingPack | 16.11.31605.320 | -| Microsoft.Net.ComponentGroup.4.6.2.DeveloperTools | 16.3.29207.166 | -| Microsoft.Net.ComponentGroup.4.7.1.DeveloperTools | 16.3.29207.166 | -| Microsoft.Net.ComponentGroup.4.7.DeveloperTools | 16.3.29207.166 | -| Microsoft.Net.ComponentGroup.DevelopmentPrerequisites | 16.3.29207.166 | -| Microsoft.Net.ComponentGroup.TargetingPacks.Common | 16.0.28516.191 | -| Microsoft.NetCore.Component.DevelopmentTools | 16.11.33214.272 | -| Microsoft.NetCore.Component.Web | 16.11.33214.272 | -| Microsoft.VisualStudio.Component.AppInsights.Tools | 16.11.36128.20 | -| Microsoft.VisualStudio.Component.AspNet45 | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Azure.AuthoringTools | 16.11.31827.77 | -| Microsoft.VisualStudio.Component.Azure.ClientLibs | 16.11.34829.67 | -| Microsoft.VisualStudio.Component.Azure.Compute.Emulator | 16.11.31827.77 | -| Microsoft.VisualStudio.Component.Azure.Kubernetes.Tools | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Azure.Powershell | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.Azure.ResourceManager.Tools | 16.4.29409.204 | -| Microsoft.VisualStudio.Component.Azure.ServiceFabric.Tools | 16.4.29313.120 | -| Microsoft.VisualStudio.Component.Azure.Storage.Emulator | 16.4.29313.120 | -| Microsoft.VisualStudio.Component.Azure.Waverton | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Azure.Waverton.BuildTools | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.ClassDesigner | 16.0.28528.71 | -| Microsoft.VisualStudio.Component.CloudExplorer | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.CodeMap | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.Common.Azure.Tools | 16.11.36128.20 | -| Microsoft.VisualStudio.Component.CoreEditor | 16.1.28811.260 | -| Microsoft.VisualStudio.Component.Debugger.JustInTime | 16.0.28517.75 | -| Microsoft.VisualStudio.Component.Debugger.Snapshot | 16.5.29813.82 | -| Microsoft.VisualStudio.Component.Debugger.TimeTravel | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.DiagnosticTools | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.DockerTools | 16.11.33214.272 | -| Microsoft.VisualStudio.Component.DotNetModelBuilder | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.DslTools | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.EntityFramework | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.FSharp | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.FSharp.Desktop | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.FSharp.WebTemplates | 16.3.29207.166 | -| Microsoft.VisualStudio.Component.GraphDocument | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.Graphics | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Graphics.Tools | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.IISExpress | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.IntelliCode | 16.11.35122.84 | -| Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.JavaScript.Diagnostics | 16.0.28517.75 | -| Microsoft.VisualStudio.Component.JavaScript.TypeScript | 16.11.31404.150 | -| Microsoft.VisualStudio.Component.LinqToSql | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.LiveUnitTesting | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.ManagedDesktop.Core | 16.4.29318.151 | -| Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites | 16.11.33214.272 | -| Microsoft.VisualStudio.Component.Merq | 16.2.29012.281 | -| Microsoft.VisualStudio.Component.MonoDebugger | 16.0.28517.75 | -| Microsoft.VisualStudio.Component.MSODBC.SQL | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils | 16.0.28707.177 | -| Microsoft.VisualStudio.Component.Node.Tools | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.NuGet | 16.1.28829.92 | -| Microsoft.VisualStudio.Component.NuGet.BuildTools | 16.1.28829.92 | -| Microsoft.VisualStudio.Component.PortableLibrary | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Roslyn.Compiler | 16.0.28714.129 | -| Microsoft.VisualStudio.Component.Roslyn.LanguageServices | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Sharepoint.Tools | 16.4.29409.204 | -| Microsoft.VisualStudio.Component.SQL.ADAL | 16.0.28517.75 | -| Microsoft.VisualStudio.Component.SQL.CLR | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.SQL.DataSources | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.SQL.SSDT | 16.3.29207.166 | -| Microsoft.VisualStudio.Component.TeamOffice | 16.4.29409.204 | -| Microsoft.VisualStudio.Component.TestTools.CodedUITest | 16.0.28327.66 | -| Microsoft.VisualStudio.Component.TestTools.WebLoadTest | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.TextTemplating | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.TypeScript.4.3 | 16.0.31506.151 | -| Microsoft.VisualStudio.Component.Unity | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.UWP.VC.ARM64 | 16.3.29207.166 | -| Microsoft.VisualStudio.Component.VC.14.25.x86.x64 | 16.11.32428.96 | -| Microsoft.VisualStudio.Component.VC.140 | 16.11.33801.447 | -| Microsoft.VisualStudio.Component.VC.ASAN | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.ATL | 16.4.29313.120 | -| Microsoft.VisualStudio.Component.VC.ATL.ARM | 16.4.29313.120 | -| Microsoft.VisualStudio.Component.VC.ATL.ARM.Spectre | 16.5.29721.120 | -| Microsoft.VisualStudio.Component.VC.ATL.ARM64 | 16.4.29313.120 | -| Microsoft.VisualStudio.Component.VC.ATL.ARM64.Spectre | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.VC.ATL.Spectre | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.VC.ATLMFC | 16.4.29313.120 | -| Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre | 16.5.29721.120 | -| Microsoft.VisualStudio.Component.VC.CLI.Support | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.CMake.Project | 16.3.29103.31 | -| Microsoft.VisualStudio.Component.VC.CoreIde | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.DiagnosticTools | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.VC.Llvm.Clang | 16.11.31603.221 | -| Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset | 16.3.29207.166 | -| Microsoft.VisualStudio.Component.VC.MFC.ARM | 16.4.29313.120 | -| Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre | 16.5.29721.120 | -| Microsoft.VisualStudio.Component.VC.MFC.ARM64 | 16.4.29313.120 | -| Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre | 16.5.29721.120 | -| Microsoft.VisualStudio.Component.VC.Modules.x86.x64 | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.Redist.14.Latest | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.VC.Redist.MSM | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest | 16.0.28517.75 | -| Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest | 16.0.28517.75 | -| Microsoft.VisualStudio.Component.VC.Tools.ARM | 16.11.32406.258 | -| Microsoft.VisualStudio.Component.VC.Tools.ARM64 | 16.11.32406.258 | -| Microsoft.VisualStudio.Component.VC.Tools.ARM64EC | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.Tools.x86.x64 | 16.11.32406.258 | -| Microsoft.VisualStudio.Component.VC.v141.ARM | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.v141.ARM.Spectre | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.VC.v141.ARM64 | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.v141.ARM64.Spectre | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.VC.v141.ATL | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.ATL.ARM | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.ATL.ARM.Spectre | 16.5.29721.120 | -| Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64 | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64.Spectre | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.ATL.Spectre | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.MFC | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.VC.v141.x86.x64 | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.VC.v141.x86.x64.Spectre | 16.5.29515.121 | -| Microsoft.VisualStudio.Component.VSSDK | 16.0.28315.86 | -| Microsoft.VisualStudio.Component.Wcf.Tooling | 16.0.28625.61 | -| Microsoft.VisualStudio.Component.Web | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.WebDeploy | 16.0.28517.75 | -| Microsoft.VisualStudio.Component.Windows10SDK | 16.4.29409.204 | -| Microsoft.VisualStudio.Component.Windows10SDK.16299 | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Windows10SDK.17134 | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Windows10SDK.17763 | 16.0.28517.75 | -| Microsoft.VisualStudio.Component.Windows10SDK.18362 | 16.1.28829.92 | -| Microsoft.VisualStudio.Component.Windows10SDK.19041 | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Windows10SDK.20348 | 16.11.31603.221 | -| Microsoft.VisualStudio.Component.Windows11SDK.22000 | 16.11.31727.170 | -| Microsoft.VisualStudio.Component.WinXP | 16.10.31205.252 | -| Microsoft.VisualStudio.Component.Workflow | 16.0.28315.86 | -| Microsoft.VisualStudio.ComponentGroup.ArchitectureTools.Native | 16.0.28621.142 | -| Microsoft.VisualStudio.ComponentGroup.Azure.CloudServices | 16.10.31205.180 | -| Microsoft.VisualStudio.ComponentGroup.Azure.Prerequisites | 16.10.31303.231 | -| Microsoft.VisualStudio.ComponentGroup.Azure.ResourceManager.Tools | 16.0.28528.71 | -| Microsoft.VisualStudio.ComponentGroup.AzureFunctions | 16.10.31205.180 | -| Microsoft.VisualStudio.ComponentGroup.MSIX.Packaging | 16.11.34827.16 | -| Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Core | 16.2.29012.281 | -| Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang | 16.11.31603.221 | -| Microsoft.VisualStudio.ComponentGroup.UWP.NetCoreAndStandard | 16.11.33214.272 | -| Microsoft.VisualStudio.ComponentGroup.UWP.Support | 16.11.33214.272 | -| Microsoft.VisualStudio.ComponentGroup.UWP.VC | 16.10.31205.180 | -| Microsoft.VisualStudio.ComponentGroup.UWP.VC.v141 | 16.1.28810.153 | -| Microsoft.VisualStudio.ComponentGroup.UWP.Xamarin | 16.10.31205.180 | -| Microsoft.VisualStudio.ComponentGroup.VisualStudioExtension.Prerequisites | 16.10.31205.180 | -| Microsoft.VisualStudio.ComponentGroup.Web | 16.10.31205.180 | -| Microsoft.VisualStudio.ComponentGroup.Web.Client | 16.10.31205.180 | -| Microsoft.VisualStudio.ComponentGroup.Web.CloudTools | 16.10.31205.180 | -| Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions | 16.11.32413.511 | -| Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.CMake | 16.11.32413.511 | -| Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions.TemplateEngine | 16.11.32413.511 | -| Microsoft.VisualStudio.Workload.Azure | 16.11.35026.282 | -| Microsoft.VisualStudio.Workload.CoreEditor | 16.10.31205.180 | -| Microsoft.VisualStudio.Workload.Data | 16.0.28720.110 | -| Microsoft.VisualStudio.Workload.DataScience | 16.10.31205.180 | -| Microsoft.VisualStudio.Workload.ManagedDesktop | 16.11.33214.272 | -| Microsoft.VisualStudio.Workload.ManagedGame | 16.10.31205.180 | -| Microsoft.VisualStudio.Workload.NativeCrossPlat | 16.10.31205.180 | -| Microsoft.VisualStudio.Workload.NativeDesktop | 16.11.36128.20 | -| Microsoft.VisualStudio.Workload.NativeGame | 16.11.36128.20 | -| Microsoft.VisualStudio.Workload.NativeMobile | 16.10.31205.180 | -| Microsoft.VisualStudio.Workload.NetCoreTools | 16.11.33214.272 | -| Microsoft.VisualStudio.Workload.NetCrossPlat | 16.11.33214.272 | -| Microsoft.VisualStudio.Workload.NetWeb | 16.11.33214.272 | -| Microsoft.VisualStudio.Workload.Node | 16.10.31205.180 | -| Microsoft.VisualStudio.Workload.Office | 16.11.33214.272 | -| Microsoft.VisualStudio.Workload.Python | 16.11.33328.57 | -| Microsoft.VisualStudio.Workload.Universal | 16.11.36128.20 | -| Microsoft.VisualStudio.Workload.VisualStudioExtension | 16.10.31205.180 | -| ms-biztalk.BizTalk | 3.13.2.0 | -| ProBITools.MicrosoftAnalysisServicesModelingProjects | 2.9.18 | -| ProBITools.MicrosoftReportProjectsforVisualStudio | 2.6.11 | -| SSIS.SqlServerIntegrationServicesProjects | 4.6 | -| VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects | 1.0.2 | -| Windows Driver Kit | 10.1.22000.1 | -| Windows Driver Kit Visual Studio Extension | 10.0.21381.0 | -| Windows Software Development Kit | 10.1.22621.755 | -| WixToolset.WixToolsetVisualStudio2019Extension | 1.0.0.22 | - -#### Microsoft Visual C++ -| Name | Architecture | Version | -| -------------------------------------------- | ------------ | ----------- | -| Microsoft Visual C++ 2010 Redistributable | x64 | 10.0.40219 | -| Microsoft Visual C++ 2010 Redistributable | x86 | 10.0.40219 | -| Microsoft Visual C++ 2013 Additional Runtime | x64 | 12.0.40660 | -| Microsoft Visual C++ 2013 Minimum Runtime | x64 | 12.0.40660 | -| Microsoft Visual C++ 2013 Additional Runtime | x86 | 12.0.21005 | -| Microsoft Visual C++ 2013 Minimum Runtime | x86 | 12.0.21005 | -| Microsoft Visual C++ 2019 Debug Runtime | x64 | 14.29.30157 | -| Microsoft Visual C++ 2019 Debug Runtime | x86 | 14.29.30157 | -| Microsoft Visual C++ 2022 Additional Runtime | x64 | 14.44.35211 | -| Microsoft Visual C++ 2022 Minimum Runtime | x64 | 14.44.35211 | -| Microsoft Visual C++ 2022 Additional Runtime | x86 | 14.44.35211 | -| Microsoft Visual C++ 2022 Minimum Runtime | x86 | 14.44.35211 | - -#### Installed Windows SDKs -- 10.0.14393.0 -- 10.0.16299.0 -- 10.0.17134.0 -- 10.0.17763.0 -- 10.0.18362.0 -- 10.0.19041.0 -- 10.0.20348.0 -- 10.0.22000.0 -- 10.0.22621.0 - -### .NET Core Tools -- .NET Core SDK: 6.0.136, 6.0.203, 6.0.321, 6.0.428, 8.0.118, 8.0.206, 8.0.315, 8.0.412, 9.0.108, 9.0.205, 9.0.302 -- .NET Framework: 4.7.2, 4.8 -- Microsoft.AspNetCore.App: 6.0.5, 6.0.26, 6.0.36, 8.0.6, 8.0.18, 9.0.6, 9.0.7 -- Microsoft.NETCore.App: 6.0.5, 6.0.26, 6.0.36, 8.0.6, 8.0.18, 9.0.6, 9.0.7 -- Microsoft.WindowsDesktop.App: 6.0.5, 6.0.26, 6.0.36, 8.0.6, 8.0.18, 9.0.6, 9.0.7 -- nbgv 3.7.115+d31f50f4d1 - -### PowerShell Tools -- PowerShell 7.4.11 - -#### Powershell Modules -- Az: 12.5.0 -- AWSPowershell: 5.0.9 -- DockerMsftProvider: 1.0.0.8 -- MarkdownPS: 1.10 -- Microsoft.Graph: 2.29.0 -- Pester: 3.4.0, 5.7.1 -- PowerShellGet: 1.0.0.1, 2.2.5 -- PSScriptAnalyzer: 1.24.0 -- PSWindowsUpdate: 2.2.1.5 -- SqlServer: 22.2.0 -- VSSetup: 2.2.16 - -### Android -| Package Name | Version | -| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Android Command Line Tools | 8.0 | -| Android Emulator | 35.6.11 | -| Android SDK Build-tools | 36.0.0
35.0.0 35.0.1
34.0.0
33.0.0 33.0.1 33.0.2 33.0.3
32.0.0
31.0.0
30.0.2 | -| Android SDK Platforms | android-36 (rev 2)
android-35-ext15 (rev 1)
android-35-ext14 (rev 1)
android-35 (rev 2)
android-34-ext8 (rev 1)
android-34-ext12 (rev 1)
android-34-ext11 (rev 1)
android-34-ext10 (rev 1)
android-34 (rev 3)
android-33-ext5 (rev 1)
android-33-ext4 (rev 1)
android-33 (rev 3)
android-32 (rev 1)
android-31 (rev 1)
android-30 (rev 3) | -| Android SDK Platform-Tools | 36.0.0 | -| Android Support Repository | 47.0.0 | -| CMake | 3.18.1
3.22.1
3.31.5 | -| Google APIs | addon-google_apis-google-21
addon-google_apis-google-22
addon-google_apis-google-23
addon-google_apis-google-24 | -| Google Play services | 49 | -| Google Repository | 58 | -| NDK | 26.3.11579264
27.2.12479018
28.2.13676358 | - -#### Environment variables -| Name | Value | -| ----------------------- | ---------------------------------------- | -| ANDROID_HOME | C:\Android\android-sdk | -| ANDROID_NDK | C:\Android\android-sdk\ndk\27.2.12479018 | -| ANDROID_NDK_HOME | C:\Android\android-sdk\ndk\27.2.12479018 | -| ANDROID_NDK_LATEST_HOME | C:\Android\android-sdk\ndk\28.2.13676358 | -| ANDROID_NDK_ROOT | C:\Android\android-sdk\ndk\27.2.12479018 | -| ANDROID_SDK_ROOT | C:\Android\android-sdk | - -### Cached Docker images -| Repository:Tag | Digest | Created | -| ------------------------------------------------------------------------- | ------------------------------------------------------------------------ | ---------- | -| mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019 | sha256:99a68b9a6c0a6be2578b83b2b0ee55e40436c3ff2e68445eaa335fadc5a780c7 | 2025-07-08 | -| mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 | sha256:02eba2c4863b6d86e01bb4cfc0e54c1d711af3c9ddae946ea191fa082ba9729e | 2025-07-08 | -| mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 | sha256:f2d95688a349c6d6fc1509ac8d41259e7cfcda6a7f10c14f9294cece8b1cc0dc | 2025-07-08 | -| mcr.microsoft.com/windows/nanoserver:1809 | sha256:c357ed591af7b24f2d4a12b1947da5e6ebe559d89f41471f6928902c7cda7206 | 2025-07-05 | -| mcr.microsoft.com/windows/servercore:ltsc2019 | sha256:2a7cfebaed9241227ad68b1fc7cb764867ea1c56624ece03f926eb8bdf0c998f | 2025-07-05 | - diff --git a/images/windows/scripts/build/Configure-ImageDataFile.ps1 b/images/windows/scripts/build/Configure-ImageDataFile.ps1 index 37a537700..eace1ec9a 100644 --- a/images/windows/scripts/build/Configure-ImageDataFile.ps1 +++ b/images/windows/scripts/build/Configure-ImageDataFile.ps1 @@ -23,12 +23,8 @@ if (Test-IsWin25) { $imageLabel = "windows-2022" $softwareUrl = "${githubUrl}/win22/$imageMajorVersion.$imageMinorVersion/images/windows/Windows2022-Readme.md" $releaseUrl = "https://github.com/actions/runner-images/releases/tag/win22%2F$imageMajorVersion.$imageMinorVersion" -} elseif (Test-IsWin19) { - $imageLabel = "windows-2019" - $softwareUrl = "${githubUrl}/win19/$imageMajorVersion.$imageMinorVersion/images/windows/Windows2019-Readme.md" - $releaseUrl = "https://github.com/actions/runner-images/releases/tag/win19%2F$imageMajorVersion.$imageMinorVersion" } else { - throw "Invalid platform version is found. Either Windows Server 2019, 2022 or 2025 are required" + throw "Invalid platform version is found. Either Windows Server 2022 or 2025 are required" } $json = @" diff --git a/images/windows/scripts/build/Install-Mingw64.ps1 b/images/windows/scripts/build/Install-Mingw64.ps1 index 0fc4430db..715619ac8 100644 --- a/images/windows/scripts/build/Install-Mingw64.ps1 +++ b/images/windows/scripts/build/Install-Mingw64.ps1 @@ -3,39 +3,9 @@ ## Desc: Install GNU tools for Windows ################################################################################ -if (Test-IsWin19) { - # If Windows 2019, install version 8.1.0 form sourceforge - $baseUrl = "https://download.qt.io/development_releases/prebuilt" - - $("mingw32", "mingw64") | ForEach-Object { - if ($_ -eq "mingw32") { - $url = "$baseUrl/mingw_32/i686-8.1.0-release-posix-dwarf-rt_v6-rev0.7z" - $sha256sum = 'adb84b70094c0225dd30187ff995e311d19424b1eb8f60934c60e4903297f946' - } elseif ($_ -eq "mingw64") { - $url = "$baseUrl/mingw_64/x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z" - $sha256sum = '853970527b5de4a55ec8ca4d3fd732c00ae1c69974cc930c82604396d43e79f8' - } else { - throw "Unknown architecture $_" - } - - $packagePath = Invoke-DownloadWithRetry $url - Test-FileChecksum -Path $packagePath -ExpectedSHA256Sum $sha256sum - Expand-7ZipArchive -Path $packagePath -DestinationPath "C:\" - - # Make a copy of mingw-make.exe to make.exe, which is a more discoverable name - # and so the same command line can be used on Windows as on macOS and Linux - $path = "C:\$_\bin\mingw32-make.exe" | Get-Item - Copy-Item -Path $path -Destination (Join-Path $path.Directory 'make.exe') - } - - Add-MachinePathItem "C:\mingw64\bin" - -} - -if (-not (Test-IsWin19)) { - # If Windows 2022 0r 2025 install version specified in the toolset - $version = (Get-ToolsetContent).mingw.version - $runtime = (Get-ToolsetContent).mingw.runtime +# Install version specified in the toolset +$version = (Get-ToolsetContent).mingw.version +$runtime = (Get-ToolsetContent).mingw.runtime $("mingw32", "mingw64") | ForEach-Object { if ($_ -eq "mingw32") { diff --git a/images/windows/scripts/build/Install-VisualStudio.ps1 b/images/windows/scripts/build/Install-VisualStudio.ps1 index f5d7d60fc..e07ba31aa 100644 --- a/images/windows/scripts/build/Install-VisualStudio.ps1 +++ b/images/windows/scripts/build/Install-VisualStudio.ps1 @@ -4,26 +4,14 @@ ################################################################################ $vsToolset = (Get-ToolsetContent).visualStudio -if (Test-IsWin19) { - # Install Visual Studio for Windows 19 - Install-VisualStudio ` - -Version $vsToolset.subversion ` - -Edition $vsToolset.edition ` - -Channel $vsToolset.channel ` - -RequiredComponents $vsToolset.workloads ` - -ExtraArgs "--allWorkloads --includeRecommended --remove Component.CPython3.x64" -} - -if ( (Test-IsWin22) -or (Test-IsWin25) ) { - # Install Visual Studio for Windows 22 and 25 with InstallChannel - Install-VisualStudio ` - -Version $vsToolset.subversion ` - -Edition $vsToolset.edition ` - -Channel $vsToolset.channel ` - -InstallChannel $vsToolset.installChannel ` - -RequiredComponents $vsToolset.workloads ` - -ExtraArgs "--allWorkloads --includeRecommended --remove Component.CPython3.x64" -} +# Install Visual Studio for Windows 22 and 25 with InstallChannel +Install-VisualStudio ` + -Version $vsToolset.subversion ` + -Edition $vsToolset.edition ` + -Channel $vsToolset.channel ` + -InstallChannel $vsToolset.installChannel ` + -RequiredComponents $vsToolset.workloads ` + -ExtraArgs "--allWorkloads --includeRecommended --remove Component.CPython3.x64" # Find the version of VS installed for this instance # Only supports a single instance @@ -39,20 +27,6 @@ $vsInstallRoot = (Get-VisualStudioInstance).InstallationPath $newContent = '{"Extensions":[{"Key":"1e906ff5-9da8-4091-a299-5c253c55fdc9","Value":{"ShouldAutoUpdate":false}},{"Key":"Microsoft.VisualStudio.Web.AzureFunctions","Value":{"ShouldAutoUpdate":false}}],"ShouldAutoUpdate":false,"ShouldCheckForUpdates":false}' Set-Content -Path "$vsInstallRoot\Common7\IDE\Extensions\MachineState.json" -Value $newContent -if (Test-IsWin19) { - # Install Windows 10 SDK version 10.0.14393.795 - Install-Binary -Type EXE ` - -Url 'https://go.microsoft.com/fwlink/p/?LinkId=838916' ` - -InstallArgs @("/q", "/norestart", "/ceip off", "/features OptionId.WindowsSoftwareDevelopmentKit") ` - -ExpectedSubject 'CN=Microsoft Corporation, OU=MOPR, O=Microsoft Corporation, L=Redmond, S=Washington, C=US' - - # Install Windows 11 SDK version 10.0.22621.0 - Install-Binary -Type EXE ` - -Url 'https://go.microsoft.com/fwlink/p/?linkid=2196241' ` - -InstallArgs @("/q", "/norestart", "/ceip off", "/features OptionId.UWPManaged OptionId.UWPCPP OptionId.UWPLocalized OptionId.DesktopCPPx86 OptionId.DesktopCPPx64 OptionId.DesktopCPParm64") ` - -ExpectedSubject $(Get-MicrosoftPublisher) -} - if (Test-IsWin22) { # Install Windows 10 SDK version 10.0.17763 Install-Binary -Type EXE ` @@ -61,12 +35,10 @@ if (Test-IsWin22) { -ExpectedSubject $(Get-MicrosoftPublisher) } -if (-not (Test-IsWin19)) { - # Install Windows 11 SDK version 10.0.26100 - Install-Binary -Type EXE ` - -Url 'https://go.microsoft.com/fwlink/?linkid=2286561' ` - -InstallArgs @("/q", "/norestart", "/ceip off", "/features OptionId.UWPManaged OptionId.UWPCPP OptionId.UWPLocalized OptionId.DesktopCPPx86 OptionId.DesktopCPPx64 OptionId.DesktopCPParm64") ` - -ExpectedSubject $(Get-MicrosoftPublisher) -} +# Install Windows 11 SDK version 10.0.26100 +Install-Binary -Type EXE ` + -Url 'https://go.microsoft.com/fwlink/?linkid=2286561' ` + -InstallArgs @("/q", "/norestart", "/ceip off", "/features OptionId.UWPManaged OptionId.UWPCPP OptionId.UWPLocalized OptionId.DesktopCPPx86 OptionId.DesktopCPPx64 OptionId.DesktopCPParm64") ` + -ExpectedSubject $(Get-MicrosoftPublisher) Invoke-PesterTests -TestFile "VisualStudio" diff --git a/images/windows/scripts/build/Install-WDK.ps1 b/images/windows/scripts/build/Install-WDK.ps1 index c994d32d7..1cac470cf 100644 --- a/images/windows/scripts/build/Install-WDK.ps1 +++ b/images/windows/scripts/build/Install-WDK.ps1 @@ -4,20 +4,11 @@ ################################################################################ # Requires Windows SDK with the same version number as the WDK -if (Test-IsWin19) { - # Install all features without showing the GUI using winsdksetup.exe - Install-Binary -Type EXE ` - -Url 'https://go.microsoft.com/fwlink/?linkid=2173743' ` - -InstallArgs @("/features", "+", "/quiet") ` - -ExpectedSubject $(Get-MicrosoftPublisher) - - $wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2166289" - $wdkExtensionPath = "C:\Program Files (x86)\Windows Kits\10\Vsix\VS2019\WDK.vsix" -} elseif (Test-IsWin22) { +if (Test-IsWin22) { # SDK is available through Visual Studio $wdkUrl = "https://go.microsoft.com/fwlink/?linkid=2324617" } else { - throw "Invalid version of Visual Studio is found. Either 2019 or 2022 are required" + throw "Invalid version of Visual Studio is found. Windows Server 2022 is required" } # Install all features without showing the GUI using wdksetup.exe @@ -26,8 +17,4 @@ Install-Binary -Type EXE ` -InstallArgs @("/features", "+", "/quiet") ` -ExpectedSubject $(Get-MicrosoftPublisher) -if (Test-IsWin19){ - # Need to install the VSIX to get the build targets when running VSBuild - Install-VSIXFromFile (Resolve-Path -Path $wdkExtensionPath) -} Invoke-PesterTests -TestFile "WDK" diff --git a/images/windows/scripts/docs-gen/Generate-SoftwareReport.ps1 b/images/windows/scripts/docs-gen/Generate-SoftwareReport.ps1 index 3dc19960f..40fe4b1ca 100644 --- a/images/windows/scripts/docs-gen/Generate-SoftwareReport.ps1 +++ b/images/windows/scripts/docs-gen/Generate-SoftwareReport.ps1 @@ -79,9 +79,6 @@ $tools.AddToolVersion("Docker-wincred", $(Get-DockerWincredVersion)) $tools.AddToolVersion("ghc", $(Get-GHCVersion)) $tools.AddToolVersion("Git", $(Get-GitVersion)) $tools.AddToolVersion("Git LFS", $(Get-GitLFSVersion)) -if (Test-IsWin19) { - $tools.AddToolVersion("Google Cloud CLI", $(Get-GoogleCloudCLIVersion)) -} $tools.AddToolVersion("ImageMagick", $(Get-ImageMagickVersion)) $tools.AddToolVersion("InnoSetup", $(Get-InnoSetupVersion)) $tools.AddToolVersion("jq", $(Get-JQVersion)) @@ -99,9 +96,6 @@ if (-not (Test-IsWin25)) { } $tools.AddToolVersion("OpenSSL", $(Get-OpenSSLVersion)) $tools.AddToolVersion("Packer", $(Get-PackerVersion)) -if (Test-IsWin19) { - $tools.AddToolVersion("Parcel", $(Get-ParcelVersion)) -} $tools.AddToolVersion("Pulumi", $(Get-PulumiVersion)) $tools.AddToolVersion("R", $(Get-RVersion)) $tools.AddToolVersion("Service Fabric SDK", $(Get-ServiceFabricSDKVersion)) @@ -127,9 +121,6 @@ $cliTools.AddToolVersion("AWS SAM CLI", $(Get-AWSSAMVersion)) $cliTools.AddToolVersion("AWS Session Manager CLI", $(Get-AWSSessionManagerVersion)) $cliTools.AddToolVersion("Azure CLI", $(Get-AzureCLIVersion)) $cliTools.AddToolVersion("Azure DevOps CLI extension", $(Get-AzureDevopsExtVersion)) -if (Test-IsWin19) { - $cliTools.AddToolVersion("Cloud Foundry CLI", $(Get-CloudFoundryVersion)) -} $cliTools.AddToolVersion("GitHub CLI", $(Get-GHVersion)) # Rust Tools @@ -172,12 +163,6 @@ Note: MSYS2 is pre-installed on image but not added to PATH. '@ $msys2.AddHeader("Notes").AddNote($notes) -# BizTalk Server -if (Test-IsWin19) -{ - $installedSoftware.AddHeader("BizTalk Server").AddNode($(Get-BizTalkVersion)) -} - # Cached Tools $installedSoftware.AddHeader("Cached Tools").AddNodes($(Build-CachedToolsSection)) @@ -215,12 +200,7 @@ $visualStudio.AddToolVersionsList("Installed Windows SDKs", $(Get-WindowsSDKs).V # .NET Core Tools $netCoreTools = $installedSoftware.AddHeader(".NET Core Tools") -if (Test-IsWin19) { - # Visual Studio 2019 brings own version of .NET Core which is different from latest official version - $netCoreTools.AddToolVersionsListInline(".NET Core SDK", $(Get-DotnetSdks).Versions, '^\d+\.\d+\.\d{2}') -} else { - $netCoreTools.AddToolVersionsListInline(".NET Core SDK", $(Get-DotnetSdks).Versions, '^\d+\.\d+\.\d{3}') -} +$netCoreTools.AddToolVersionsListInline(".NET Core SDK", $(Get-DotnetSdks).Versions, '^\d+\.\d+\.\d{3}') $netCoreTools.AddToolVersionsListInline(".NET Framework", $(Get-DotnetFrameworkVersions), '^.+') Get-DotnetRuntimes | ForEach-Object { $netCoreTools.AddToolVersionsListInline($_.Runtime, $_.Versions, '^.+') diff --git a/images/windows/scripts/helpers/ImageHelpers.psm1 b/images/windows/scripts/helpers/ImageHelpers.psm1 index 95abe4f88..4ebbd8fc8 100644 --- a/images/windows/scripts/helpers/ImageHelpers.psm1 +++ b/images/windows/scripts/helpers/ImageHelpers.psm1 @@ -25,7 +25,6 @@ Export-ModuleMember -Function @( 'Get-TCToolVersionPath' 'Test-IsWin25' 'Test-IsWin22' - 'Test-IsWin19' 'Expand-7ZipArchive' 'Get-WindowsUpdateStates' 'Invoke-ScriptBlockWithRetry' diff --git a/images/windows/scripts/helpers/InstallHelpers.ps1 b/images/windows/scripts/helpers/InstallHelpers.ps1 index 6e8f09226..032e8b58b 100644 --- a/images/windows/scripts/helpers/InstallHelpers.ps1 +++ b/images/windows/scripts/helpers/InstallHelpers.ps1 @@ -356,24 +356,6 @@ function Test-IsWin22 { (Get-CimInstance -ClassName Win32_OperatingSystem).Caption -match "2022" } -function Test-IsWin19 { - <# - .SYNOPSIS - Checks if the current Windows operating system is Windows Server 2019. - - .DESCRIPTION - This function uses the Get-CimInstance cmdlet to retrieve information - about the current Windows operating system. It then checks if the Caption - property of the Win32_OperatingSystem class contains the string "2019", - indicating that the operating system is Windows Server 2019. - - .OUTPUTS - Returns $true if the current Windows operating system is Windows Server 2019. - Otherwise, returns $false. - #> - (Get-CimInstance -ClassName Win32_OperatingSystem).Caption -match "2019" -} - function Expand-7ZipArchive { <# .SYNOPSIS diff --git a/images/windows/scripts/helpers/VisualStudioHelpers.ps1 b/images/windows/scripts/helpers/VisualStudioHelpers.ps1 index baccad4c6..c4a99f1bd 100644 --- a/images/windows/scripts/helpers/VisualStudioHelpers.ps1 +++ b/images/windows/scripts/helpers/VisualStudioHelpers.ps1 @@ -36,11 +36,7 @@ Function Install-VisualStudio { ) - if (-not (Test-IsWin19)) { - $bootstrapperUrl = "https://aka.ms/vs/${Version}/postGRO-${Channel}/vs_${Edition}.exe" - } else { - $bootstrapperUrl = "https://aka.ms/vs/${Version}/${Channel}/vs_${Edition}.exe" - } + $bootstrapperUrl = "https://aka.ms/vs/${Version}/postGRO-${Channel}/vs_${Edition}.exe" $channelUri = "https://aka.ms/vs/${Version}/${Channel}/channel" $channelId = "VisualStudio.${Version}.Release" $productId = "Microsoft.VisualStudio.Product.${Edition}" diff --git a/images/windows/scripts/tests/Android.Tests.ps1 b/images/windows/scripts/tests/Android.Tests.ps1 index 2716b87f4..5ab049626 100644 --- a/images/windows/scripts/tests/Android.Tests.ps1 +++ b/images/windows/scripts/tests/Android.Tests.ps1 @@ -49,16 +49,7 @@ Describe "Android SDK" { It "Platform build tools is installed" -TestCases $buildToolsTestCases { "$installedPackages" | Should -Match "$buildToolsVersion" } - - if (Test-IsWin19) { - It "Extra package is installed" -TestCases $extraPackagesTestCases { - "$installedPackages" | Should -Match "extras;$extraPackage" - } - - It "Addon package is installed" -TestCases $addonsTestCases { - "$installedPackages" | Should -Match "add-ons;$addonPackage" - } - } + } It "Additional tool is installed" -TestCases $additionalToolsTestCases { "$installedPackages" | Should -Match $additionalToolVersion diff --git a/images/windows/scripts/tests/BizTalk.Tests.ps1 b/images/windows/scripts/tests/BizTalk.Tests.ps1 index 0a3860c70..bd8d26e15 100644 --- a/images/windows/scripts/tests/BizTalk.Tests.ps1 +++ b/images/windows/scripts/tests/BizTalk.Tests.ps1 @@ -3,17 +3,4 @@ ## Desc: Test BizTalk project build component installed. ################################################################################ -Describe "BizTalk Build Component Setup" -Skip:(-not (Test-IsWin19)) { - It "BizTalk Registry Check" { - Test-Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\BizTalk Server\3.0" | Should -BeTrue - } - - It "BizTalk Folder Check" { - "${env:ProgramFiles(x86)}\Microsoft BizTalk Server" | Should -Exist - } - - It "BizTalk Build Targets files Check" { - "${env:ProgramFiles(x86)}\MSBuild\Microsoft\BizTalk\BizTalkC.targets" | Should -Exist - "${env:ProgramFiles(x86)}\MSBuild\Microsoft\BizTalk\BizTalkCommon.targets" | Should -Exist - } -} \ No newline at end of file +# BizTalk is no longer supported on Windows Server 2022/2025 diff --git a/images/windows/scripts/tests/CLI.Tools.Tests.ps1 b/images/windows/scripts/tests/CLI.Tools.Tests.ps1 index 1122c0107..f97dc7c74 100644 --- a/images/windows/scripts/tests/CLI.Tools.Tests.ps1 +++ b/images/windows/scripts/tests/CLI.Tools.Tests.ps1 @@ -38,13 +38,3 @@ Describe "GitHub CLI" { "gh --version" | Should -ReturnZeroExitCode } } - -Describe "CloudFoundry CLI" -Skip:(-not (Test-IsWin19)) { - It "cf is located in C:\cf-cli" { - "C:\cf-cli\cf.exe" | Should -Exist - } - - It "cf" { - "cf --version" | Should -ReturnZeroExitCode - } -} diff --git a/images/windows/scripts/tests/ChocoPackages.Tests.ps1 b/images/windows/scripts/tests/ChocoPackages.Tests.ps1 index 4e0bb3ccb..1f283ca80 100644 --- a/images/windows/scripts/tests/ChocoPackages.Tests.ps1 +++ b/images/windows/scripts/tests/ChocoPackages.Tests.ps1 @@ -22,12 +22,6 @@ Describe "Bicep" { } } -Describe "GitVersion" -Skip:(-not (Test-IsWin19)) { - It "gitversion is installed" { - "gitversion /version" | Should -ReturnZeroExitCode - } -} - Describe "InnoSetup" { It "InnoSetup" { (Get-Command -Name iscc).CommandType | Should -BeExactly "Application" diff --git a/images/windows/scripts/tests/MSYS2.Tests.ps1 b/images/windows/scripts/tests/MSYS2.Tests.ps1 index 8cca75ef6..c92e7a8da 100644 --- a/images/windows/scripts/tests/MSYS2.Tests.ps1 +++ b/images/windows/scripts/tests/MSYS2.Tests.ps1 @@ -16,13 +16,6 @@ Describe "MSYS2 packages" { @{ ToolName = "bash.exe" } ) - if (Test-IsWin19) { - $TestCases += @( - @{ ToolName = "tar.exe" } - @{ ToolName = "make.exe" } - ) - } - It " is installed in " -TestCases $TestCases { (Get-Command "$ToolName").Source | Should -BeLike "$msys2Dir*" } diff --git a/images/windows/scripts/tests/SSDTExtensions.Tests.ps1 b/images/windows/scripts/tests/SSDTExtensions.Tests.ps1 index 7d1c6ee0b..1c5749577 100644 --- a/images/windows/scripts/tests/SSDTExtensions.Tests.ps1 +++ b/images/windows/scripts/tests/SSDTExtensions.Tests.ps1 @@ -1,21 +1,13 @@ Describe "SSDTExtensions" { #These extensions don't have any proper name in the state.packages.json file, only id is available, which can be found on extension marketplace download page - if (Test-isWin19) { - $testExtenions = @( - @{id = "04a86fc2-dbd5-4222-848e-911638e487fe"} - @{id = "851E7A09-7B2B-4F06-A15D-BABFCB26B970"} - @{id = "717ad572-c4b7-435c-c166-c2969777f718"} - ) + $testExtenions = @( + @{id = "04a86fc2-dbd5-4222-848e-911638e487fe"} + @{id = "717ad572-c4b7-435c-c166-c2969777f718"} + ) - It "Extensions id=" -TestCases $testExtenions { + It "Extensions id=" -TestCases $testExtenions { $version = Get-VSExtensionVersion -packageName "${id}" $version | Should -Not -BeNullOrEmpty - } - } else { - It "Extension SSDT" { - $version = Get-VSExtensionVersion -packageName "SSDT" - $version | Should -Not -BeNullOrEmpty - } } } diff --git a/images/windows/scripts/tests/Tools.Tests.ps1 b/images/windows/scripts/tests/Tools.Tests.ps1 index 510915cf5..3c6301613 100644 --- a/images/windows/scripts/tests/Tools.Tests.ps1 +++ b/images/windows/scripts/tests/Tools.Tests.ps1 @@ -54,17 +54,6 @@ Describe "DACFx" { $sqlPackagePath = 'C:\Program Files\Microsoft SQL Server\170\DAC\bin\SqlPackage.exe' "${sqlPackagePath}" | Should -Exist } - - It "SqlLocalDB" -Skip:(-not (Test-IsWin19)) { - $sqlLocalDBPath = 'C:\Program Files\Microsoft SQL Server\130\Tools\Binn\SqlLocalDB.exe' - "${sqlLocalDBPath}" | Should -Exist - } -} - -Describe "DotnetTLS" -Skip:(-not (Test-IsWin19)) { - It "Tls 1.2 is enabled" { - [Net.ServicePointManager]::SecurityProtocol -band "Tls12" | Should -Be Tls12 - } } Describe "Mercurial" -Skip:(Test-IsWin25) { @@ -101,16 +90,6 @@ Describe "Mingw64" { } } -Describe "GoogleCloudCLI" -Skip:(-not (Test-IsWin19)) { - It "" -TestCases @( - @{ ToolName = "bq" } - @{ ToolName = "gcloud" } - @{ ToolName = "gsutil" } - ) { - "$ToolName version" | Should -ReturnZeroExitCode - } -} - Describe "NET48" { It "NET48" { Get-ChildItem -Path "${env:ProgramFiles(x86)}\Microsoft SDKs\Windows\*\*\NETFX 4.8 Tools" -Directory | Should -HaveCount 1 @@ -175,13 +154,6 @@ Describe "Vcpkg" { } } -Describe "VCRedist" -Skip:(-not (Test-IsWin19)) { - It "vcredist_2010_x64" { - "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1D8E6291-B0D5-35EC-8441-6616F567A0F7}" | Should -Exist - "C:\Windows\System32\msvcr100.dll" | Should -Exist - } -} - Describe "WebPlatformInstaller" { It "WebPlatformInstaller" { "WebPICMD" | Should -ReturnZeroExitCode diff --git a/images/windows/scripts/tests/VisualStudio.Tests.ps1 b/images/windows/scripts/tests/VisualStudio.Tests.ps1 index 13a44f87b..bc26c7723 100644 --- a/images/windows/scripts/tests/VisualStudio.Tests.ps1 +++ b/images/windows/scripts/tests/VisualStudio.Tests.ps1 @@ -25,19 +25,13 @@ Describe "Visual Studio" { } } -Describe "Windows 10 SDK" -Skip:((Test-IsWin19) -or (Test-IsWin25)) { +Describe "Windows 10 SDK" -Skip:(Test-IsWin25) { It "Verifies 17763 SDK is installed" { "${env:ProgramFiles(x86)}\Windows Kits\10\DesignTime\CommonConfiguration\Neutral\UAP\10.0.17763.0\UAP.props" | Should -Exist } } -Describe "Windows 11 SDK" -Skip:(-not (Test-IsWin19)) { - It "Verifies 22621 SDK is installed" { - "${env:ProgramFiles(x86)}\Windows Kits\10\DesignTime\CommonConfiguration\Neutral\UAP\10.0.22621.0\UAP.props" | Should -Exist - } -} - -Describe "Windows 11 SDK" -Skip:(Test-IsWin19) { +Describe "Windows 11 SDK" { It "Verifies 26100 SDK is installed" { "${env:ProgramFiles(x86)}\Windows Kits\10\DesignTime\CommonConfiguration\Neutral\UAP\10.0.26100.0\UAP.props" | Should -Exist } diff --git a/images/windows/scripts/tests/WindowsFeatures.Tests.ps1 b/images/windows/scripts/tests/WindowsFeatures.Tests.ps1 index 9b8134a32..ec8001b81 100644 --- a/images/windows/scripts/tests/WindowsFeatures.Tests.ps1 +++ b/images/windows/scripts/tests/WindowsFeatures.Tests.ps1 @@ -84,7 +84,7 @@ Describe "Windows Updates" { } } -Describe "WSL2" -Skip:((Test-IsWin19) -or (Test-IsWin22)) { +Describe "WSL2" -Skip:(Test-IsWin22) { It "WSL status should return zero exit code" { "wsl --status" | Should -ReturnZeroExitCode } diff --git a/images/windows/templates/build.windows-2019.pkr.hcl b/images/windows/templates/build.windows-2019.pkr.hcl deleted file mode 100644 index 9b41e560d..000000000 --- a/images/windows/templates/build.windows-2019.pkr.hcl +++ /dev/null @@ -1,283 +0,0 @@ -build { - sources = ["source.azure-arm.image"] - name = "windows-2019" - - provisioner "powershell" { - inline = [ - "New-Item -Path ${var.image_folder} -ItemType Directory -Force", - "New-Item -Path ${var.temp_dir} -ItemType Directory -Force" - ] - } - - provisioner "file" { - destination = "${var.image_folder}\\" - sources = [ - "${path.root}/../assets", - "${path.root}/../scripts", - "${path.root}/../toolsets" - ] - } - - provisioner "file" { - destination = "${var.image_folder}\\scripts\\docs-gen\\" - source = "${path.root}/../../../helpers/software-report-base" - } - - provisioner "powershell" { - inline = [ - "Move-Item '${var.image_folder}\\assets\\post-gen' 'C:\\post-generation'", - "Remove-Item -Recurse '${var.image_folder}\\assets'", - "Move-Item '${var.image_folder}\\scripts\\docs-gen' '${var.image_folder}\\SoftwareReport'", - "Move-Item '${var.image_folder}\\scripts\\helpers' '${var.helper_script_folder}\\ImageHelpers'", - "New-Item -Type Directory -Path '${var.helper_script_folder}\\TestsHelpers\\'", - "Move-Item '${var.image_folder}\\scripts\\tests\\Helpers.psm1' '${var.helper_script_folder}\\TestsHelpers\\TestsHelpers.psm1'", - "Move-Item '${var.image_folder}\\scripts\\tests' '${var.image_folder}\\tests'", - "Remove-Item -Recurse '${var.image_folder}\\scripts'", - "Move-Item '${var.image_folder}\\toolsets\\toolset-2019.json' '${var.image_folder}\\toolset.json'", - "Remove-Item -Recurse '${var.image_folder}\\toolsets'" - ] - } - - provisioner "windows-shell" { - inline = [ - "net user ${var.install_user} ${var.install_password} /add /passwordchg:no /passwordreq:yes /active:yes /Y", - "net localgroup Administrators ${var.install_user} /add", - "winrm set winrm/config/service/auth @{Basic=\"true\"}", - "winrm get winrm/config/service/auth" - ] - } - - provisioner "powershell" { - inline = ["if (-not ((net localgroup Administrators) -contains '${var.install_user}')) { exit 1 }"] - } - - provisioner "powershell" { - elevated_password = "${var.install_password}" - elevated_user = "${var.install_user}" - inline = ["bcdedit.exe /set TESTSIGNING ON"] - } - - provisioner "powershell" { - elevated_password = "${var.install_password}" - elevated_user = "${var.install_user}" - scripts = ["${path.root}/../scripts/build/Install-NET48.ps1"] - valid_exit_codes = [0, 3010] - } - - provisioner "windows-restart" { - restart_timeout = "10m" - } - - provisioner "powershell" { - environment_vars = ["IMAGE_VERSION=${var.image_version}", "IMAGE_OS=${var.image_os}", "AGENT_TOOLSDIRECTORY=${var.agent_tools_directory}", "IMAGEDATA_FILE=${var.imagedata_file}", "IMAGE_FOLDER=${var.image_folder}", "TEMP_DIR=${var.temp_dir}"] - execution_policy = "unrestricted" - scripts = [ - "${path.root}/../scripts/build/Configure-WindowsDefender.ps1", - "${path.root}/../scripts/build/Configure-PowerShell.ps1", - "${path.root}/../scripts/build/Install-PowerShellModules.ps1", - "${path.root}/../scripts/build/Install-WindowsFeatures.ps1", - "${path.root}/../scripts/build/Install-Chocolatey.ps1", - "${path.root}/../scripts/build/Configure-BaseImage.ps1", - "${path.root}/../scripts/build/Configure-ImageDataFile.ps1", - "${path.root}/../scripts/build/Configure-SystemEnvironment.ps1", - "${path.root}/../scripts/build/Configure-DotnetSecureChannel.ps1" - ] - } - - provisioner "windows-restart" { - restart_timeout = "30m" - } - - provisioner "powershell" { - inline = ["Set-Service -Name wlansvc -StartupType Manual", "if ($(Get-Service -Name wlansvc).Status -eq 'Running') { Stop-Service -Name wlansvc}"] - } - - provisioner "powershell" { - environment_vars = ["IMAGE_FOLDER=${var.image_folder}", "TEMP_DIR=${var.temp_dir}"] - scripts = [ - "${path.root}/../scripts/build/Install-VCRedist.ps1", - "${path.root}/../scripts/build/Install-Docker.ps1", - "${path.root}/../scripts/build/Install-DockerWinCred.ps1", - "${path.root}/../scripts/build/Install-DockerCompose.ps1", - "${path.root}/../scripts/build/Install-PowershellCore.ps1", - "${path.root}/../scripts/build/Install-WebPlatformInstaller.ps1", - "${path.root}/../scripts/build/Install-TortoiseSvn.ps1" - ] - } - - provisioner "windows-restart" { - restart_timeout = "10m" - } - - provisioner "powershell" { - elevated_password = "${var.install_password}" - elevated_user = "${var.install_user}" - environment_vars = ["IMAGE_FOLDER=${var.image_folder}", "TEMP_DIR=${var.temp_dir}"] - scripts = [ - "${path.root}/../scripts/build/Install-VisualStudio.ps1", - "${path.root}/../scripts/build/Install-KubernetesTools.ps1", - "${path.root}/../scripts/build/Install-NET48-devpack.ps1" - ] - valid_exit_codes = [0, 3010] - } - - provisioner "powershell" { - environment_vars = ["IMAGE_FOLDER=${var.image_folder}", "TEMP_DIR=${var.temp_dir}"] - scripts = [ - "${path.root}/../scripts/build/Install-Wix.ps1", - "${path.root}/../scripts/build/Install-WDK.ps1", - "${path.root}/../scripts/build/Install-VSExtensions.ps1", - "${path.root}/../scripts/build/Install-AzureCli.ps1", - "${path.root}/../scripts/build/Install-AzureDevOpsCli.ps1", - "${path.root}/../scripts/build/Install-ChocolateyPackages.ps1", - "${path.root}/../scripts/build/Install-JavaTools.ps1", - "${path.root}/../scripts/build/Install-Kotlin.ps1", - "${path.root}/../scripts/build/Install-OpenSSL.ps1" - ] - } - - provisioner "powershell" { - execution_policy = "remotesigned" - environment_vars = ["IMAGE_FOLDER=${var.image_folder}", "TEMP_DIR=${var.temp_dir}"] - scripts = ["${path.root}/../scripts/build/Install-ServiceFabricSDK.ps1"] - } - - provisioner "windows-restart" { - restart_timeout = "10m" - } - - provisioner "windows-shell" { - inline = ["wmic product where \"name like '%%microsoft azure powershell%%'\" call uninstall /nointeractive"] - } - - provisioner "powershell" { - environment_vars = ["IMAGE_FOLDER=${var.image_folder}", "TEMP_DIR=${var.temp_dir}"] - scripts = [ - "${path.root}/../scripts/build/Install-ActionsCache.ps1", - "${path.root}/../scripts/build/Install-Ruby.ps1", - "${path.root}/../scripts/build/Install-PyPy.ps1", - "${path.root}/../scripts/build/Install-Toolset.ps1", - "${path.root}/../scripts/build/Configure-Toolset.ps1", - "${path.root}/../scripts/build/Install-NodeJS.ps1", - "${path.root}/../scripts/build/Install-AndroidSDK.ps1", - "${path.root}/../scripts/build/Install-PowershellAzModules.ps1", - "${path.root}/../scripts/build/Install-Pipx.ps1", - "${path.root}/../scripts/build/Install-Git.ps1", - "${path.root}/../scripts/build/Install-GitHub-CLI.ps1", - "${path.root}/../scripts/build/Install-PHP.ps1", - "${path.root}/../scripts/build/Install-Rust.ps1", - "${path.root}/../scripts/build/Install-Sbt.ps1", - "${path.root}/../scripts/build/Install-Chrome.ps1", - "${path.root}/../scripts/build/Install-EdgeDriver.ps1", - "${path.root}/../scripts/build/Install-Firefox.ps1", - "${path.root}/../scripts/build/Install-Selenium.ps1", - "${path.root}/../scripts/build/Install-IEWebDriver.ps1", - "${path.root}/../scripts/build/Install-Apache.ps1", - "${path.root}/../scripts/build/Install-Nginx.ps1", - "${path.root}/../scripts/build/Install-Msys2.ps1", - "${path.root}/../scripts/build/Install-WinAppDriver.ps1", - "${path.root}/../scripts/build/Install-R.ps1", - "${path.root}/../scripts/build/Install-AWSTools.ps1", - "${path.root}/../scripts/build/Install-DACFx.ps1", - "${path.root}/../scripts/build/Install-MysqlCli.ps1", - "${path.root}/../scripts/build/Install-SQLPowerShellTools.ps1", - "${path.root}/../scripts/build/Install-SQLOLEDBDriver.ps1", - "${path.root}/../scripts/build/Install-DotnetSDK.ps1", - "${path.root}/../scripts/build/Install-Mingw64.ps1", - "${path.root}/../scripts/build/Install-Haskell.ps1", - "${path.root}/../scripts/build/Install-Stack.ps1", - "${path.root}/../scripts/build/Install-Miniconda.ps1", - "${path.root}/../scripts/build/Install-AzureCosmosDbEmulator.ps1", - "${path.root}/../scripts/build/Install-Mercurial.ps1", - "${path.root}/../scripts/build/Install-Zstd.ps1", - "${path.root}/../scripts/build/Install-NSIS.ps1", - "${path.root}/../scripts/build/Install-CloudFoundryCli.ps1", - "${path.root}/../scripts/build/Install-Vcpkg.ps1", - "${path.root}/../scripts/build/Install-PostgreSQL.ps1", - "${path.root}/../scripts/build/Install-Bazel.ps1", - "${path.root}/../scripts/build/Install-AliyunCli.ps1", - "${path.root}/../scripts/build/Install-RootCA.ps1", - "${path.root}/../scripts/build/Install-MongoDB.ps1", - "${path.root}/../scripts/build/Install-GoogleCloudCLI.ps1", - "${path.root}/../scripts/build/Install-CodeQLBundle.ps1", - "${path.root}/../scripts/build/Install-BizTalkBuildComponent.ps1", - "${path.root}/../scripts/build/Configure-Diagnostics.ps1", - "${path.root}/../scripts/build/Configure-DynamicPort.ps1", - "${path.root}/../scripts/build/Configure-GDIProcessHandleQuota.ps1", - "${path.root}/../scripts/build/Configure-Shell.ps1", - "${path.root}/../scripts/build/Configure-DeveloperMode.ps1", - "${path.root}/../scripts/build/Install-LLVM.ps1" - ] - } - - provisioner "powershell" { - elevated_password = "${var.install_password}" - elevated_user = "${var.install_user}" - scripts = ["${path.root}/../scripts/build/Install-WindowsUpdates.ps1"] - } - - provisioner "windows-restart" { - check_registry = true - restart_check_command = "powershell -command \"& {if ((-not (Get-Process TiWorker.exe -ErrorAction SilentlyContinue)) -and (-not [System.Environment]::HasShutdownStarted) ) { Write-Output 'Restart complete' }}\"" - restart_timeout = "30m" - } - - provisioner "powershell" { - pause_before = "2m0s" - environment_vars = ["IMAGE_FOLDER=${var.image_folder}", "TEMP_DIR=${var.temp_dir}"] - scripts = [ - "${path.root}/../scripts/build/Install-WindowsUpdatesAfterReboot.ps1", - "${path.root}/../scripts/build/Invoke-Cleanup.ps1", - "${path.root}/../scripts/tests/RunAll-Tests.ps1" - ] - } - - provisioner "powershell" { - inline = ["if (-not (Test-Path ${var.image_folder}\\tests\\testResults.xml)) { throw '${var.image_folder}\\tests\\testResults.xml not found' }"] - } - - provisioner "powershell" { - environment_vars = ["IMAGE_VERSION=${var.image_version}", "IMAGE_FOLDER=${var.image_folder}"] - inline = ["pwsh -File '${var.image_folder}\\SoftwareReport\\Generate-SoftwareReport.ps1'"] - } - - provisioner "powershell" { - inline = ["if (-not (Test-Path C:\\software-report.md)) { throw 'C:\\software-report.md not found' }", "if (-not (Test-Path C:\\software-report.json)) { throw 'C:\\software-report.json not found' }"] - } - - provisioner "file" { - destination = "${path.root}/../Windows2019-Readme.md" - direction = "download" - source = "C:\\software-report.md" - } - - provisioner "file" { - destination = "${path.root}/../software-report.json" - direction = "download" - source = "C:\\software-report.json" - } - - provisioner "powershell" { - environment_vars = ["INSTALL_USER=${var.install_user}"] - scripts = [ - "${path.root}/../scripts/build/Install-NativeImages.ps1", - "${path.root}/../scripts/build/Configure-System.ps1", - "${path.root}/../scripts/build/Configure-User.ps1", - "${path.root}/../scripts/build/Post-Build-Validation.ps1" - ] - skip_clean = true - } - - provisioner "windows-restart" { - restart_timeout = "10m" - } - - provisioner "powershell" { - inline = [ - "if( Test-Path $env:SystemRoot\\System32\\Sysprep\\unattend.xml ){ rm $env:SystemRoot\\System32\\Sysprep\\unattend.xml -Force}", - "& $env:SystemRoot\\System32\\Sysprep\\Sysprep.exe /oobe /generalize /quiet /quit", - "while($true) { $imageState = Get-ItemProperty HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Setup\\State | Select ImageState; if($imageState.ImageState -ne 'IMAGE_STATE_GENERALIZE_RESEAL_TO_OOBE') { Write-Output $imageState.ImageState; Start-Sleep -s 10 } else { break } }" - ] - } - -} diff --git a/images/windows/templates/locals.windows.pkr.hcl b/images/windows/templates/locals.windows.pkr.hcl index 231c7634b..9417e1ddc 100644 --- a/images/windows/templates/locals.windows.pkr.hcl +++ b/images/windows/templates/locals.windows.pkr.hcl @@ -1,9 +1,5 @@ locals { image_properties_map = { - "win19" = { - source_image_marketplace_sku = "MicrosoftWindowsServer:WindowsServer:2019-Datacenter" - os_disk_size_gb = 256 - }, "win22" = { source_image_marketplace_sku = "MicrosoftWindowsServer:WindowsServer:2022-Datacenter-g2" os_disk_size_gb = 256 diff --git a/images/windows/toolsets/toolset-2019.json b/images/windows/toolsets/toolset-2019.json deleted file mode 100644 index 581eb94a4..000000000 --- a/images/windows/toolsets/toolset-2019.json +++ /dev/null @@ -1,455 +0,0 @@ -{ - "toolcache": [ - { - "name": "Ruby", - "arch": "x64", - "platform" : "win32", - "versions": [ - "3.1", - "3.2", - "3.3" - ], - "default": "3.3" - }, - { - "name": "Python", - "url" : "https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json", - "arch": "x64", - "platform" : "win32", - "versions": [ - "3.9.*", - "3.10.*", - "3.11.*", - "3.12.*", - "3.13.*", - "3.14.*" - ], - "default": "3.9.*" - }, - { - "name": "Python", - "url" : "https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json", - "arch": "x86", - "platform" : "win32", - "versions": [ - "3.9.*", - "3.10.*", - "3.11.*", - "3.12.*", - "3.13.*" - ] - }, - { - "name": "PyPy", - "arch": "x86", - "platform" : "win64", - "versions": [ - "2.7", - "3.6", - "3.7", - "3.8", - "3.9", - "3.10" - ] - }, - { - "name": "node", - "url" : "https://raw.githubusercontent.com/actions/node-versions/main/versions-manifest.json", - "arch": "x64", - "platform" : "win32", - "versions": [ - "18.*", - "20.*", - "22.*" - ] - }, - { - "name": "go", - "url" : "https://raw.githubusercontent.com/actions/go-versions/main/versions-manifest.json", - "arch": "x64", - "platform" : "win32", - "versions": [ - "1.22.*", - "1.23.*", - "1.24.*", - "1.25.*" - ], - "default": "1.24.*" - } - ], - "powershellModules": [ - {"name": "DockerMsftProvider"}, - {"name": "MarkdownPS"}, - {"name": "Pester"}, - {"name": "PowerShellGet"}, - {"name": "PSScriptAnalyzer"}, - {"name": "PSWindowsUpdate"}, - {"name": "SqlServer", "versions": ["22.2.0"]}, - {"name": "VSSetup"}, - {"name": "Microsoft.Graph"}, - {"name": "AWSPowershell"} - ], - "azureModules": [ - { - "name": "az", - "versions": [ - "12.5.0" - ] - } - ], - "java": { - "default": "8", - "versions": [ "8", "11", "17", "21"] - }, - "android": { - "commandline_tools_url": "https://dl.google.com/android/repository/commandlinetools-win-9123335_latest.zip", - "hash": "8A90E6A3DEB2FA13229B2E335EFD07687DCC8A55A3C544DA9F40B41404993E7D", - "platform_min_version": "31", - "build_tools_min_version": "31.0.0", - "extras": [ - "android;m2repository", - "google;m2repository", - "google;google_play_services" - ], - "addons": [ - "addon-google_apis-google-24", - "addon-google_apis-google-23", - "addon-google_apis-google-22", - "addon-google_apis-google-21" - ], - "additional_tools": [ - "cmake;3.18.1", - "cmake;3.22.1", - "cmake;3.31.5" - ], - "ndk": { - "default": "27", - "versions": [ - "26" , "27", "28" - ] - } - }, - "MsysPackages": { - "msys2": [ - "base-devel", - "compression" - ], - "mingw": [ - { - "arch": "mingw-w64-x86_64", - "exec_dir": "mingw64", - "runtime_packages": [ - { - "name": "clang", - "executables": [ - "clang", - "g++", - "gcc" - ] - }, - { - "name": "cmake", - "executables": [ - "cmake", - "cpack", - "ctest" - ] - }, - { - "name": "ragel", - "executables": [ - "ragel" - ] - } - ], - "additional_packages": [ - "clang-tools-extra", - "libxml2", - "llvm", - "toolchain" - ] - }, - { - "arch": "mingw-w64-i686", - "exec_dir": "mingw32", - "runtime_packages": [ - { - "name": "clang", - "executables": [ - "clang", - "g++", - "gcc" - ] - }, - { - "name": "cmake", - "executables": [ - "cmake", - "cpack", - "ctest" - ] - }, - { - "name": "ragel", - "executables": [ - "ragel" - ] - } - ], - "additional_packages": [ - "libxml2", - "llvm", - "toolchain" - ] - } - ] - }, - "windowsFeatures": [ - { "name": "NET-Framework-Features", "includeAllSubFeatures": true }, - { "name": "NET-Framework-45-Features", "includeAllSubFeatures": true }, - { "name": "FS-iSCSITarget-Server", "includeAllSubFeatures": true, "includeManagementTools": true }, - { "name": "Containers" }, - { "name": "Microsoft-Windows-Subsystem-Linux", "optionalFeature": true }, - { "name": "VirtualMachinePlatform", "optionalFeature": true }, - { "name": "Wireless-Networking" } - ], - "visualStudio": { - "version" : "2019", - "subversion" : "16", - "edition" : "Enterprise", - "channel": "release", - "workloads": [ - "Component.Dotfuscator", - "Component.Linux.CMake", - "Component.UnityEngine.x64", - "Component.Unreal.Android", - "Microsoft.Component.Azure.DataLake.Tools", - "Microsoft.Component.PythonTools.Miniconda", - "Microsoft.Component.PythonTools.Web", - "Microsoft.Component.VC.Runtime.UCRTSDK", - "Microsoft.Net.ComponentGroup.4.6.2.DeveloperTools", - "Microsoft.Net.ComponentGroup.4.7.1.DeveloperTools", - "Microsoft.Net.Component.4.7.2.SDK", - "Microsoft.Net.Component.4.7.2.TargetingPack", - "Microsoft.Net.ComponentGroup.4.7.DeveloperTools", - "Microsoft.VisualStudio.Component.AspNet45", - "Microsoft.VisualStudio.Component.Azure.Kubernetes.Tools", - "Microsoft.VisualStudio.Component.Azure.ServiceFabric.Tools", - "Microsoft.VisualStudio.Component.Debugger.JustInTime", - "Microsoft.VisualStudio.Component.DslTools", - "Microsoft.VisualStudio.Component.EntityFramework", - "Microsoft.VisualStudio.Component.FSharp.Desktop", - "Microsoft.VisualStudio.Component.LinqToSql", - "Microsoft.VisualStudio.Component.SQL.SSDT", - "Microsoft.VisualStudio.Component.Sharepoint.Tools", - "Microsoft.VisualStudio.Component.PortableLibrary", - "Microsoft.VisualStudio.Component.TeamOffice", - "Microsoft.VisualStudio.Component.TestTools.CodedUITest", - "Microsoft.VisualStudio.Component.TestTools.WebLoadTest", - "Microsoft.VisualStudio.Component.UWP.VC.ARM64", - "Microsoft.VisualStudio.Component.VC.140", - "Microsoft.VisualStudio.Component.VC.ATL.ARM", - "Microsoft.VisualStudio.Component.VC.ATLMFC", - "Microsoft.VisualStudio.Component.VC.ATLMFC.Spectre", - "Microsoft.VisualStudio.Component.VC.CLI.Support", - "Microsoft.VisualStudio.Component.VC.CMake.Project", - "Microsoft.VisualStudio.Component.VC.DiagnosticTools", - "Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset", - "Microsoft.VisualStudio.Component.VC.MFC.ARM", - "Microsoft.VisualStudio.Component.VC.MFC.ARM.Spectre", - "Microsoft.VisualStudio.Component.VC.MFC.ARM64", - "Microsoft.VisualStudio.Component.VC.MFC.ARM64.Spectre", - "Microsoft.VisualStudio.Component.VC.Modules.x86.x64", - "Microsoft.VisualStudio.Component.VC.Tools.ARM64EC", - "Microsoft.VisualStudio.Component.VC.Redist.MSM", - "Microsoft.VisualStudio.Component.VC.Runtimes.ARM.Spectre", - "Microsoft.VisualStudio.Component.VC.Runtimes.ARM64.Spectre", - "Microsoft.VisualStudio.Component.VC.Runtimes.x86.x64.Spectre", - "Microsoft.VisualStudio.Component.VC.TestAdapterForBoostTest", - "Microsoft.VisualStudio.Component.VC.TestAdapterForGoogleTest", - "Microsoft.VisualStudio.Component.VC.v141.x86.x64", - "Microsoft.VisualStudio.Component.VC.v141.x86.x64.Spectre", - "Microsoft.VisualStudio.Component.VC.v141.ARM.Spectre", - "Microsoft.VisualStudio.Component.VC.v141.ARM64.Spectre", - "Microsoft.VisualStudio.Component.VC.v141.ATL", - "Microsoft.VisualStudio.Component.VC.v141.ATL.ARM", - "Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64", - "Microsoft.VisualStudio.Component.VC.v141.ATL.ARM.Spectre", - "Microsoft.VisualStudio.Component.VC.v141.ATL.ARM64.Spectre", - "Microsoft.VisualStudio.Component.VC.v141.ATL.Spectre", - "Microsoft.VisualStudio.Component.VC.v141.MFC", - "Microsoft.VisualStudio.Component.VC.v141.MFC.ARM.Spectre", - "Microsoft.VisualStudio.Component.VC.v141.MFC.ARM64.Spectre", - "Microsoft.VisualStudio.Component.VC.v141.MFC.Spectre", - "Microsoft.VisualStudio.Component.VC.14.25.x86.x64", - "Microsoft.VisualStudio.Component.Windows10SDK.19041", - "Microsoft.VisualStudio.Component.WinXP", - "Microsoft.VisualStudio.Component.Workflow", - "Microsoft.VisualStudio.ComponentGroup.Azure.CloudServices", - "Microsoft.VisualStudio.ComponentGroup.Azure.ResourceManager.Tools", - "Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang", - "Microsoft.VisualStudio.ComponentGroup.Web.CloudTools", - "Microsoft.VisualStudio.ComponentGroup.UWP.VC", - "Microsoft.VisualStudio.ComponentGroup.UWP.VC.v141", - "Microsoft.VisualStudio.Workload.Azure", - "Microsoft.VisualStudio.Workload.Data", - "Microsoft.VisualStudio.Workload.DataScience", - "Microsoft.VisualStudio.Workload.ManagedDesktop", - "Microsoft.VisualStudio.Workload.ManagedGame", - "Microsoft.VisualStudio.Workload.NativeCrossPlat", - "Microsoft.VisualStudio.Workload.NativeDesktop", - "Microsoft.VisualStudio.Workload.NativeGame", - "Microsoft.VisualStudio.Workload.NativeMobile", - "Microsoft.VisualStudio.Workload.NetCoreTools", - "Microsoft.VisualStudio.Workload.NetCrossPlat", - "Microsoft.VisualStudio.Workload.NetWeb", - "Microsoft.VisualStudio.Workload.Node", - "Microsoft.VisualStudio.Workload.Office", - "Microsoft.VisualStudio.Workload.Python", - "Microsoft.VisualStudio.Workload.Universal", - "Microsoft.VisualStudio.Workload.VisualStudioExtension", - "Component.MDD.Linux", - "Component.MDD.Linux.GCC.arm" - ], - "vsix": [ - "ProBITools.MicrosoftReportProjectsforVisualStudio", - "VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects", - "ms-biztalk.BizTalk", - "WixToolset.WixToolsetVisualStudio2019Extension", - "ProBITools.MicrosoftAnalysisServicesModelingProjects", - "SSIS.SqlServerIntegrationServicesProjects" - ] - }, - "docker": { - "images": [ - "mcr.microsoft.com/windows/servercore:ltsc2019", - "mcr.microsoft.com/windows/nanoserver:1809", - "mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019", - "mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019", - "mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019" - ], - "components": { - "docker": "27.5.1", - "compose": "2.32.2" - } - }, - "pipx": [ - { - "package": "yamllint", - "cmd": "yamllint --version" - } - ], - "selenium": { - "version": "4" - }, - "npm": { - "global_packages": [ - { "name": "yarn", "test": "yarn --version" }, - { "name": "newman", "test": "newman --version" }, - { "name": "lerna", "test": "lerna --version" }, - { "name": "typescript", "test": "tsc --version" }, - { "name": "cordova" }, - { "name": "grunt-cli", "test": "grunt --version" }, - { "name": "gulp-cli", "test": "gulp --version" }, - { "name": "parcel", "test": "parcel --version"}, - { "name": "webpack" }, - { "name": "webpack-cli" }, - { "name": "node-sass" } - ] - }, - "serviceFabric": { - "runtime": { - "version": "10.1.2493.9590", - "checksum": "09C63A971BACDE338282C73B3C9174BED9AAD53E1D3A1B73D44515852C9C00CF" - }, - "sdk": { - "version": "7.1.2493", - "checksum": "0CB1084156C75CF5075EA91ABA330CF10B58648B8E036C9C2F286805263C497F" - } - }, - "dotnet": { - "versions": [ - "6.0", - "8.0", - "9.0" - ], - "tools": [ - { "name": "nbgv", "test": "nbgv --version", "getversion": "nbgv --version" } - ], - "warmup": true - }, - "choco": { - "common_packages": [ - { "name": "7zip.install" }, - { "name": "azcopy10" }, - { "name": "aria2" }, - { "name": "Bicep" }, - { "name": "gitversion.portable"}, - { "name": "innosetup" }, - { "name": "jq" }, - { "name": "NuGet.CommandLine" }, - { "name": "packer" }, - { - "name": "strawberryperl" , - "args": [ "--version", "5.32.1.1" ] - }, - { "name": "pulumi" }, - { "name": "swig" }, - { "name": "vswhere" }, - { - "name": "julia", - "args": [ "--ia", "/DIR=C:\\Julia" ] - }, - { - "name": "cmake.install", - "version": "3.31.6", - "args": [ "--installargs", "ADD_CMAKE_TO_PATH=\"System\"" ] - }, - { "name": "imagemagick" }, - { "name": "ninja" } - ] - }, - "node": { - "default": "18.*" - }, - "maven": { - "version": "3.9" - }, - "mysql": { - "version": "5.7" - }, - "mongodb": { - "version": "5.0" - }, - "nsis": { - "version": "3.10" - }, - "php": { - "version": "8.4" - }, - "llvm": { - "version": "18" - }, - "postgresql": { - "version": "14" - }, - "kotlin": { - "version": "2.1.10", - "pinnedDetails": { - "link": "https://github.com/actions/runner-images/issues/12045", - "reason": "Image is deprecated and will be removed soon", - "review-at": "2027-01-01" - } - }, - "openssl": { - "version": "1.1.1", - "pinnedDetails": { - "link": "https://github.com/actions/runner-images/issues/12045", - "reason": "Image is deprecated and will be removed soon", - "review-at": "2027-01-01" - } - }, - "pwsh": { - "version": "7.4" - } -}