snapshot of https://github.com/grpc/grpc-go.git (master, 2026-09-15; blobs > 131072B omitted)
Some checks failed
codecov / upload (push) Failing after 13m59s
CodeQL / Analyze (push) Failing after 1s
Testing / vet-proto (push) Failing after 1s
Testing / tests (arm, latest) (push) Waiting to run
Testing / extras (latest) (push) Failing after 1s
Testing / static checks (latest-1) (push) Failing after 1s
Testing / tests (-race, latest) (push) Failing after 1s
Testing / tests (i386, latest) (push) Failing after 1s
Testing / tests (latest) (push) Failing after 1s
Testing / tests (latest-1) (push) Failing after 1s
Lock Threads / lock (push) Failing after 1s
govulncheck / govulncheck (.) (push) Failing after 1s
govulncheck / govulncheck (./cmd/protoc-gen-go-grpc) (push) Failing after 1s
govulncheck / govulncheck (./gcp/observability) (push) Failing after 1s
govulncheck / govulncheck (./security/advancedtls) (push) Failing after 1s
govulncheck / govulncheck (./stats/opencensus) (push) Failing after 1s
Stale bot / stale (push) Failing after 1s

This commit is contained in:
upstream-mirror
2026-09-15 20:40:15 +05:00
commit e241b33f26
1365 changed files with 339570 additions and 0 deletions

1
test/kokoro/README.md Normal file
View File

@@ -0,0 +1 @@
The scripts in this directory are intended to be run by Kokoro CI jobs.

17
test/kokoro/psm-csm.cfg Normal file
View File

@@ -0,0 +1,17 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/psm-interop-test-go.sh"
timeout_mins: 120
action {
define_artifacts {
regex: "artifacts/**/*sponge_log.xml"
regex: "artifacts/**/*.log"
strip_prefix: "artifacts"
}
}
env_vars {
key: "PSM_TEST_SUITE"
value: "csm"
}

View File

@@ -0,0 +1,17 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/psm-interop-test-go.sh"
timeout_mins: 360
action {
define_artifacts {
regex: "artifacts/**/*sponge_log.xml"
regex: "artifacts/**/*.log"
strip_prefix: "artifacts"
}
}
env_vars {
key: "PSM_TEST_SUITE"
value: "dualstack"
}

View File

@@ -0,0 +1,34 @@
#!/usr/bin/env bash
# Copyright 2024 gRPC authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -eo pipefail
#######################################
# Builds test app Docker images and pushes them to GCR.
# Called from psm_interop_kokoro_lib.sh.
#
# Globals:
# SRC_DIR: Absolute path to the source repo on Kokoro VM
# SERVER_IMAGE_NAME: Test server Docker image name
# CLIENT_IMAGE_NAME: Test client Docker image name
# GIT_COMMIT: SHA-1 of git commit being built
# DOCKER_REGISTRY: Docker registry to push to
# Outputs:
# Writes the output of docker image build stdout, stderr
#######################################
psm::lang::build_docker_images() {
local client_dockerfile="interop/xds/client/Dockerfile"
local server_dockerfile="interop/xds/server/Dockerfile"
psm::build::docker_images_generic "${client_dockerfile}" "${server_dockerfile}"
}

View File

@@ -0,0 +1,40 @@
#!/usr/bin/env bash
# Copyright 2024 gRPC authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -eo pipefail
# Input parameters to psm:: methods of the install script.
readonly GRPC_LANGUAGE="go"
readonly BUILD_SCRIPT_DIR="$(dirname "$0")"
# Used locally.
readonly TEST_DRIVER_INSTALL_SCRIPT_URL="https://raw.githubusercontent.com/${TEST_DRIVER_REPO_OWNER:-grpc}/psm-interop/${TEST_DRIVER_BRANCH:-main}/.kokoro/psm_interop_kokoro_lib.sh"
psm::lang::source_install_lib() {
echo "Sourcing test driver install script from: ${TEST_DRIVER_INSTALL_SCRIPT_URL}"
local install_lib
# Download to a tmp file.
install_lib="$(mktemp -d)/psm_interop_kokoro_lib.sh"
curl -s --retry-connrefused --retry 5 -o "${install_lib}" "${TEST_DRIVER_INSTALL_SCRIPT_URL}"
# Checksum.
if command -v sha256sum &> /dev/null; then
echo "Install script checksum:"
sha256sum "${install_lib}"
fi
source "${install_lib}"
}
psm::lang::source_install_lib
source "${BUILD_SCRIPT_DIR}/psm-interop-build-${GRPC_LANGUAGE}.sh"
psm::run "${PSM_TEST_SUITE}"

17
test/kokoro/psm-light.cfg Normal file
View File

@@ -0,0 +1,17 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/psm-interop-test-go.sh"
timeout_mins: 30
action {
define_artifacts {
regex: "artifacts/**/*sponge_log.xml"
regex: "artifacts/**/*.log"
strip_prefix: "artifacts"
}
}
env_vars {
key: "PSM_TEST_SUITE"
value: "light"
}

View File

@@ -0,0 +1,17 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/psm-interop-test-go.sh"
timeout_mins: 30
action {
define_artifacts {
regex: "artifacts/**/*sponge_log.xml"
regex: "artifacts/**/*.log"
strip_prefix: "artifacts"
}
}
env_vars {
key: "PSM_TEST_SUITE"
value: "regional_td"
}

View File

@@ -0,0 +1,17 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/psm-interop-test-go.sh"
timeout_mins: 240
action {
define_artifacts {
regex: "artifacts/**/*sponge_log.xml"
regex: "artifacts/**/*.log"
strip_prefix: "artifacts"
}
}
env_vars {
key: "PSM_TEST_SUITE"
value: "security"
}

View File

@@ -0,0 +1,17 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/psm-interop-test-go.sh"
timeout_mins: 240
action {
define_artifacts {
regex: "artifacts/**/*sponge_log.xml"
regex: "artifacts/**/*.log"
strip_prefix: "artifacts"
}
}
env_vars {
key: "PSM_TEST_SUITE"
value: "spiffe"
}

11
test/kokoro/xds.cfg Normal file
View File

@@ -0,0 +1,11 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/xds.sh"
timeout_mins: 360
action {
define_artifacts {
regex: "**/*sponge_log.*"
regex: "github/grpc/reports/**"
}
}

45
test/kokoro/xds.sh Executable file
View File

@@ -0,0 +1,45 @@
#!/bin/bash
set -exu -o pipefail
[[ -f /VERSION ]] && cat /VERSION
cd github
export GOPATH="${HOME}/gopath"
pushd grpc-go/interop/xds/client
# Install a version of Go supported by gRPC for the new features, e.g.
# errors.Is()
gofilename=go1.25.0.linux-amd64.tar.gz
curl --retry 3 -O -L "https://go.dev/dl/${gofilename}"
sudo tar -C /usr/local -xf "${gofilename}"
sudo ln -s /usr/local/go/bin/go /usr/bin/go
# Retry go build on errors (e.g. go get connection errors), for at most 3 times
for i in 1 2 3; do go build && break || sleep 5; done
popd
git clone -b master --single-branch --depth=1 https://github.com/grpc/grpc.git
grpc/tools/run_tests/helper_scripts/prep_xds.sh
# Test cases "path_matching" and "header_matching" are not included in "all",
# because not all interop clients in all languages support these new tests.
#
# TODO: remove "path_matching" and "header_matching" from --test_case after
# they are added into "all".
GRPC_GO_LOG_VERBOSITY_LEVEL=99 GRPC_GO_LOG_SEVERITY_LEVEL=info \
python3 grpc/tools/run_tests/run_xds_tests.py \
--test_case="ping_pong,circuit_breaking" \
--project_id=grpc-testing \
--project_num=830293263384 \
--source_image=projects/grpc-testing/global/images/xds-test-server-5 \
--path_to_server_binary=/java_server/grpc-java/interop-testing/build/install/grpc-interop-testing/bin/xds-test-server \
--gcp_suffix=$(date '+%s') \
--verbose \
${XDS_V3_OPT-} \
--client_cmd="grpc-go/interop/xds/client/client \
--server=xds:///{server_uri} \
--stats_port={stats_port} \
--qps={qps} \
{fail_on_failed_rpc} \
{rpcs_to_send} \
{metadata_to_send}"

View File

@@ -0,0 +1,17 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/psm-interop-test-go.sh"
timeout_mins: 300
action {
define_artifacts {
regex: "artifacts/**/*sponge_log.xml"
regex: "artifacts/**/*.log"
strip_prefix: "artifacts"
}
}
env_vars {
key: "PSM_TEST_SUITE"
value: "lb"
}

View File

@@ -0,0 +1,17 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/psm-interop-test-go.sh"
timeout_mins: 60
action {
define_artifacts {
regex: "artifacts/**/*sponge_log.xml"
regex: "artifacts/**/*.log"
strip_prefix: "artifacts"
}
}
env_vars {
key: "PSM_TEST_SUITE"
value: "url_map"
}

11
test/kokoro/xds_v3.cfg Normal file
View File

@@ -0,0 +1,11 @@
# Config file for internal CI
# Location of the continuous shell script in repository.
build_file: "grpc-go/test/kokoro/xds_v3.sh"
timeout_mins: 360
action {
define_artifacts {
regex: "**/*sponge_log.*"
regex: "github/grpc/reports/**"
}
}

3
test/kokoro/xds_v3.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
XDS_V3_OPT="--xds_v3_support" `dirname $0`/xds.sh