12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- @rem Copyright 2017 gRPC authors.
- @rem
- @rem Licensed under the Apache License, Version 2.0 (the "License");
- @rem you may not use this file except in compliance with the License.
- @rem You may obtain a copy of the License at
- @rem
- @rem http://www.apache.org/licenses/LICENSE-2.0
- @rem
- @rem Unless required by applicable law or agreed to in writing, software
- @rem distributed under the License is distributed on an "AS IS" BASIS,
- @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- @rem See the License for the specific language governing permissions and
- @rem limitations under the License.
- @rem make sure msys binaries are preferred over cygwin binaries
- @rem set path to python3.7
- @rem set path to CMake
- set PATH=C:\tools\msys64\usr\bin;C:\Python37;C:\Program Files\CMake\bin;%PATH%
- @rem create "python3" link that normally doesn't exist
- dir C:\Python37\
- mklink C:\Python37\python3.exe C:\Python37\python.exe
- python --version
- python3 --version
- @rem If this is a PR using RUN_TESTS_FLAGS var, then add flags to filter tests
- if defined KOKORO_GITHUB_PULL_REQUEST_NUMBER if defined RUN_TESTS_FLAGS (
- set RUN_TESTS_FLAGS=%RUN_TESTS_FLAGS% --filter_pr_tests --base_branch origin/%KOKORO_GITHUB_PULL_REQUEST_TARGET_BRANCH%
- )
- @rem Update DNS settings to:
- @rem 1. allow resolving metadata.google.internal hostname
- @rem 2. make fetching default GCE credential by oauth2client work
- netsh interface ip set dns "Local Area Connection 8" static 169.254.169.254 primary
- netsh interface ip add dnsservers "Local Area Connection 8" 8.8.8.8 index=2
- netsh interface ip add dnsservers "Local Area Connection 8" 8.8.4.4 index=3
- @rem Uninstall protoc so that it doesn't clash with C++ distribtests.
- @rem (on grpc-win2016 kokoro workers it can result in GOOGLE_PROTOBUF_MIN_PROTOC_VERSION violation)
- choco uninstall protoc -y --limit-output
- @rem Install nasm (required for boringssl assembly optimized build as boringssl no long supports yasm)
- @rem Downloading from GCS should be very reliables when on a GCP VM.
- mkdir C:\nasm
- curl -sSL -o C:\nasm\nasm.exe https://storage.googleapis.com/grpc-build-helper/nasm-2.15.05/nasm.exe || goto :error
- set PATH=C:\nasm;%PATH%
- nasm
- @rem Only install C# dependencies if we are running C# tests
- If "%PREPARE_BUILD_INSTALL_DEPS_CSHARP%" == "true" (
- @rem C# prerequisites: Install dotnet SDK
- powershell -File src\csharp\install_dotnet_sdk.ps1 || goto :error
- @rem Explicitly add default nuget source.
- @rem (on Kokoro grpc-win2016 workers, the default nuget source is not configured,
- @rem which results in errors when "dotnet restore" is run)
- %LOCALAPPDATA%\Microsoft\dotnet\dotnet nuget add source https://api.nuget.org/v3/index.json -n "nuget.org"
- )
- @rem Add dotnet on path and disable some unwanted dotnet
- @rem option regardless of PREPARE_BUILD_INSTALL_DEPS_CSHARP value.
- @rem Always setting the env vars is fine since its instantaneous,
- @rem it can't fail and it avoids possible issues with
- @rem "setlocal" and "EnableDelayedExpansion" which would be required if
- @rem we wanted to do the same under the IF block.
- set PATH=%LOCALAPPDATA%\Microsoft\dotnet;%PATH%
- set NUGET_XMLDOC_MODE=skip
- set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
- set DOTNET_CLI_TELEMETRY_OPTOUT=true
- @rem Only install Python interpreters if we are running Python tests
- If "%PREPARE_BUILD_INSTALL_DEPS_PYTHON%" == "true" (
- powershell -File tools\internal_ci\helper_scripts\install_python_interpreters.ps1 || goto :error
- )
- @rem Needed for uploading test results to bigquery
- python -m pip install google-api-python-client oauth2client six==1.16.0 || goto :error
- git submodule update --init || goto :error
- goto :EOF
- :error
- exit /b 1
|