[bazel rbe] Update RBE windows docker image (and move it to GAR) (#34229)

- Update to windows RBE docker image, followed by subsequent regenerate
of win RBE toolchain (basically verifying that the README.md for windows
RBE toolchain works well)
- Also move windows docker image from GCR to GAR (which is where our
other testing images already live).
- (cleanup) Move windows RBE docker image to a better location in our
repo.

This PR should be sufficient to demonstrate how we would go about
upgrading the windows RBE build to VS2022 once needed.
pull/33646/head
Jan Tattermusch 1 year ago committed by GitHub
parent 9800546913
commit dc635afc61
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      third_party/toolchains/README.md
  2. 2
      third_party/toolchains/dockerfile/rbe_windows2019/Dockerfile
  3. 4
      third_party/toolchains/generate_windows_rbe_configs.sh
  4. 32
      third_party/toolchains/rbe_windows_bazel_6.3.2_vs2019/cc/BUILD
  5. 2
      third_party/toolchains/rbe_windows_bazel_6.3.2_vs2019/config/BUILD

@ -22,7 +22,7 @@ Also see go/rbe-windows-user-guide
# Windows RBE docker image
The `rbe_win2019` directory contains the dockerfile to rebuild the docker image we use on RBE windows workers. See go/rbe-windows-user-guide.
The `dockerfile/rbe_windows2019` directory contains the dockerfile to rebuild the docker image we use on RBE windows workers. See go/rbe-windows-user-guide.
Note that for linux, we use a docker image under `tools/dockerfile` (since for Linux RBE docker image is simply of the testing docker images
we maintain)
@ -30,7 +30,7 @@ we maintain)
## How to rebuild the Windows RBE docker image and use it for Windows RBE
On a kokoro debug windows VM, run the following:
- `docker build -t us-docker.pkg.dev/grpc-testing/testing-images-public/rbe_windows2019 third_party/toolchains/rbe_win2019`
- `docker build -t us-docker.pkg.dev/grpc-testing/testing-images-public/rbe_windows2019 third_party/toolchains/dockerfile/rbe_windows2019`
- To be able to authenticate when pushing the image to GAR, run `gcloud auth configure-docker us-docker.pkg.dev`
- `docker push us-docker.pkg.dev/grpc-testing/testing-images-public/rbe_windows2019`
- Update the `generate_windows_rbe_configs.sh` with the newly built & pushed image's SHA256 digest.

@ -42,7 +42,7 @@ RUN Invoke-WebRequest "https://aka.ms/vs/16/release/vs_buildtools.exe" \
"--quiet", "--wait", "--nocache", \
"--add", "Microsoft.VisualStudio.Workload.VCTools", \
"--add", "Microsoft.VisualStudio.Component.VC.Tools.x86.x64", \
"--add", "Microsoft.VisualStudio.Component.Windows10SDK.19041" -Wait; \
"--add", "Microsoft.VisualStudio.Component.Windows10SDK.20348" -Wait; \
Remove-Item C:/TEMP/vs_buildtools.exe; \
[Environment]::SetEnvironmentVariable(\"BAZEL_VC\", \"C:\VS\VC\", \"Machine\")
# Install msys2 and add to path.

@ -28,7 +28,7 @@ wget https://github.com/bazelbuild/bazel-toolchains/releases/download/v5.1.2/rbe
RBE_CONFIGS_GEN_TOOL_PATH="./rbe_configs_gen_windows_amd64.exe"
# Actions on RBE will run under a dedicated docker image.
WINDOWS_RBE_DOCKER_IMAGE=gcr.io/grpc-testing/rbe_windows2019@sha256:41772e8eeb9dd8c8b996bf32d58164d84b2315c8e81e634bbff5a0216b7f52fd
WINDOWS_RBE_DOCKER_IMAGE=us-docker.pkg.dev/grpc-testing/testing-images-public/rbe_windows2019@sha256:63aed074a2ca1bf5af45bb43b255d21d51882d7169ec57be7f0f5454ea5d2c98
# Bazel version used for configuring
# Needs to be one of the versions from bazel/supported_versions.txt chosen so that the result is compatible
@ -42,9 +42,7 @@ CONFIG_OUTPUT_PATH=third_party/toolchains/rbe_windows_bazel_6.3.2_vs2019
rm -rf "${REPO_ROOT}/${CONFIG_OUTPUT_PATH}"
# Pull the RBE windows docker image first.
# Note that you need to run "gcloud auth configure-docker gcr.io" first to be able to pull the image from gcr.io
# TOOD(jtattermusch): investigate why pulling a docker image on windows is extremely slow.
# TODO(jtattermusch): move the RBE windows docker image to GAR where it will be publicly accessible.
docker pull ${WINDOWS_RBE_DOCKER_IMAGE}
${RBE_CONFIGS_GEN_TOOL_PATH} \

@ -207,19 +207,19 @@ cc_toolchain_config(
abi_libc_version = "local",
toolchain_identifier = "msvc_x64",
msvc_env_tmp = "C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp",
msvc_env_path = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX64\\x64;C:\\VS\\Common7\\IDE\\VC\\VCPackages;C:\\VS\\Common7\\IDE\\CommonExtensions\\Microsoft\\TestWindow;C:\\VS\\Common7\\IDE\\CommonExtensions\\Microsoft\\TeamFoundation\\Team Explorer;C:\\VS\\MSBuild\\Current\\bin\\Roslyn;C:\\VS\\Common7\\Tools\\devinit;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\10.0.19041.0\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\x64;C:\\VS\\\\MSBuild\\Current\\Bin;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\VS\\Common7\\IDE\\;C:\\VS\\Common7\\Tools\\;;C:\\Windows\\system32",
msvc_env_include = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\include;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\ucrt;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\shared;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\um;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\winrt;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\cppwinrt",
msvc_env_lib = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\lib\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.19041.0\\ucrt\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.19041.0\\um\\x64",
msvc_env_path = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX64\\x64;C:\\VS\\Common7\\IDE\\VC\\VCPackages;C:\\VS\\Common7\\IDE\\CommonExtensions\\Microsoft\\TestWindow;C:\\VS\\Common7\\IDE\\CommonExtensions\\Microsoft\\TeamFoundation\\Team Explorer;C:\\VS\\MSBuild\\Current\\bin\\Roslyn;C:\\VS\\Common7\\Tools\\devinit;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\10.0.20348.0\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\x64;C:\\VS\\\\MSBuild\\Current\\Bin;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\VS\\Common7\\IDE\\;C:\\VS\\Common7\\Tools\\;;C:\\Windows\\system32",
msvc_env_include = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\include;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\ucrt;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\shared;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\um;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\winrt;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\cppwinrt",
msvc_env_lib = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\lib\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.20348.0\\ucrt\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.20348.0\\um\\x64",
msvc_cl_path = "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x64/cl.exe",
msvc_ml_path = "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x64/ml64.exe",
msvc_link_path = "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x64/link.exe",
msvc_lib_path = "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x64/lib.exe",
cxx_builtin_include_directories = [ "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\include",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\ucrt",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\shared",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\um",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\winrt",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\cppwinrt"],
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\ucrt",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\shared",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\um",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\winrt",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\cppwinrt"],
tool_paths = {
"ar": "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x64/lib.exe",
"ml": "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x64/ml64.exe",
@ -278,19 +278,19 @@ cc_toolchain_config(
abi_libc_version = "local",
toolchain_identifier = "msvc_x64_x86",
msvc_env_tmp = "C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp",
msvc_env_path = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX64\\x86;C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX64\\x64;C:\\VS\\Common7\\IDE\\VC\\VCPackages;C:\\VS\\Common7\\IDE\\CommonExtensions\\Microsoft\\TestWindow;C:\\VS\\Common7\\IDE\\CommonExtensions\\Microsoft\\TeamFoundation\\Team Explorer;C:\\VS\\MSBuild\\Current\\bin\\Roslyn;C:\\VS\\Common7\\Tools\\devinit;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\10.0.19041.0\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\x64;C:\\VS\\\\MSBuild\\Current\\Bin;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\VS\\Common7\\IDE\\;C:\\VS\\Common7\\Tools\\;;C:\\Windows\\system32",
msvc_env_include = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\include;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\ucrt;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\shared;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\um;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\winrt;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\cppwinrt",
msvc_env_lib = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\lib\\x86;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.19041.0\\ucrt\\x86;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.19041.0\\um\\x86",
msvc_env_path = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX64\\x86;C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\bin\\HostX64\\x64;C:\\VS\\Common7\\IDE\\VC\\VCPackages;C:\\VS\\Common7\\IDE\\CommonExtensions\\Microsoft\\TestWindow;C:\\VS\\Common7\\IDE\\CommonExtensions\\Microsoft\\TeamFoundation\\Team Explorer;C:\\VS\\MSBuild\\Current\\bin\\Roslyn;C:\\VS\\Common7\\Tools\\devinit;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\10.0.20348.0\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\x64;C:\\VS\\\\MSBuild\\Current\\Bin;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\VS\\Common7\\IDE\\;C:\\VS\\Common7\\Tools\\;;C:\\Windows\\system32",
msvc_env_include = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\include;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\ucrt;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\shared;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\um;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\winrt;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\cppwinrt",
msvc_env_lib = "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\lib\\x86;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.20348.0\\ucrt\\x86;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.20348.0\\um\\x86",
msvc_cl_path = "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/cl.exe",
msvc_ml_path = "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/ml.exe",
msvc_link_path = "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/link.exe",
msvc_lib_path = "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/lib.exe",
cxx_builtin_include_directories = [ "C:\\VS\\VC\\Tools\\MSVC\\14.29.30133\\include",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\ucrt",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\shared",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\um",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\winrt",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.19041.0\\cppwinrt"],
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\ucrt",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\shared",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\um",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\winrt",
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.20348.0\\cppwinrt"],
tool_paths = {
"ar": "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/lib.exe",
"ml": "C:/VS/VC/Tools/MSVC/14.29.30133/bin/HostX64/x86/ml.exe",

@ -40,7 +40,7 @@ platform(
"@platforms//cpu:x86_64",
],
exec_properties = {
"container-image": "docker://gcr.io/grpc-testing/rbe_windows2019@sha256:41772e8eeb9dd8c8b996bf32d58164d84b2315c8e81e634bbff5a0216b7f52fd",
"container-image": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/rbe_windows2019@sha256:63aed074a2ca1bf5af45bb43b255d21d51882d7169ec57be7f0f5454ea5d2c98",
"OSFamily": "Windows",
},
)

Loading…
Cancel
Save