From 41ac287f7b597589224d6053832c976c8240cc9f Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Fri, 31 Jan 2020 17:36:37 +0100 Subject: [PATCH] generate build metadata from bazel BUILD --- bazel/grpc_build_system.bzl | 2 +- build.yaml | 6369 ----------------- build_handwritten.yaml | 263 + templates/gRPC-C++.podspec.template | 31 +- templates/gRPC-Core.podspec.template | 38 +- templates/src/core/plugin_registry.template | 39 - test/core/bad_client/gen_build_yaml.py | 80 - test/core/bad_ssl/gen_build_yaml.py | 69 - test/core/end2end/gen_build_yaml.py | 140 +- test/cpp/naming/gen_build_yaml.py | 97 +- test/cpp/qps/gen_build_yaml.py | 15 +- .../{build-cleaner.py => build_cleaner.py} | 36 +- .../extract_metadata_from_bazel_xml.py | 943 +++ tools/buildgen/generate_build_additions.sh | 7 +- tools/buildgen/generate_projects.py | 2 +- tools/buildgen/generate_projects.sh | 19 +- tools/buildgen/plugins/make_fuzzer_tests.py | 8 + tools/distrib/sanitize.sh | 2 +- .../linux/grpc_publish_packages.sh | 2 +- tools/run_tests/sanity/check_version.py | 2 +- 20 files changed, 1315 insertions(+), 6849 deletions(-) delete mode 100644 build.yaml create mode 100644 build_handwritten.yaml delete mode 100644 templates/src/core/plugin_registry.template delete mode 100755 test/core/bad_client/gen_build_yaml.py delete mode 100755 test/core/bad_ssl/gen_build_yaml.py rename tools/buildgen/{build-cleaner.py => build_cleaner.py} (71%) create mode 100755 tools/buildgen/extract_metadata_from_bazel_xml.py diff --git a/bazel/grpc_build_system.bzl b/bazel/grpc_build_system.bzl index 0abbc1d401b..0bf235ff2d6 100644 --- a/bazel/grpc_build_system.bzl +++ b/bazel/grpc_build_system.bzl @@ -221,7 +221,7 @@ def grpc_cc_test(name, srcs = [], deps = [], external_deps = [], args = [], data ) else: # the test behavior doesn't depend on polling, just generate the test - native.cc_test(name = name, tags = tags, **args) + native.cc_test(name = name, tags = tags + ["no_uses_polling"], **args) ios_cc_test( name = name, tags = tags, diff --git a/build.yaml b/build.yaml deleted file mode 100644 index 30c54a7a583..00000000000 --- a/build.yaml +++ /dev/null @@ -1,6369 +0,0 @@ -'#1': This file describes the list of targets and dependencies. -'#2': It is used among other things to generate all of our project files. -'#3': Please refer to the templates directory for more information. -settings: - '#01': The public version number of the library. - '#02': === - '#03': Please update the 'g_stands_for' field periodically with a new g word - '#04': not listed in doc/g_stands_for.md - and update that document to list the - '#05': new word. When doing so, please also update BUILD. - '#06': === - '#07': Master always has a "-dev" suffix - '#08': Use "-preN" suffixes to identify pre-release versions - '#09': Per-language overrides are possible with (eg) ruby_version tag here - '#10': See the expand_version.py for all the quirks here - core_version: 9.0.0 - csharp_major_version: 2 - g_stands_for: gringotts - version: 1.29.0-dev -filegroups: -- name: alts_tsi - headers: - - src/core/tsi/alts/crypt/gsec.h - - src/core/tsi/alts/frame_protector/alts_counter.h - - src/core/tsi/alts/frame_protector/alts_crypter.h - - src/core/tsi/alts/frame_protector/alts_frame_protector.h - - src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h - - src/core/tsi/alts/frame_protector/frame_handler.h - - src/core/tsi/alts/handshaker/alts_handshaker_client.h - - src/core/tsi/alts/handshaker/alts_shared_resource.h - - src/core/tsi/alts/handshaker/alts_tsi_handshaker.h - - src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h - - src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h - - src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h - - src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h - - src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h - - src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h - - src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h - src: - - src/core/tsi/alts/crypt/aes_gcm.cc - - src/core/tsi/alts/crypt/gsec.cc - - src/core/tsi/alts/frame_protector/alts_counter.cc - - src/core/tsi/alts/frame_protector/alts_crypter.cc - - src/core/tsi/alts/frame_protector/alts_frame_protector.cc - - src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc - - src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc - - src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc - - src/core/tsi/alts/frame_protector/frame_handler.cc - - src/core/tsi/alts/handshaker/alts_handshaker_client.cc - - src/core/tsi/alts/handshaker/alts_shared_resource.cc - - src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc - - src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc - - src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc - - src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc - - src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc - - src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc - uses: - - alts_util - - grpc_base - - grpc_transport_chttp2_client_insecure - - tsi_interface - - tsi - - grpc_shadow_boringssl -- name: alts_upb - headers: - - src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h - - src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h - - src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h - src: - - src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c - - src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c - - src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c - deps: - - upb -- name: alts_util - public_headers: - - include/grpc/grpc_security.h - headers: - - src/core/lib/security/credentials/alts/check_gcp_environment.h - - src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h - - src/core/tsi/alts/handshaker/alts_tsi_utils.h - - src/core/tsi/alts/handshaker/transport_security_common_api.h - src: - - src/core/lib/security/credentials/alts/check_gcp_environment.cc - - src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc - - src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc - - src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc - - src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc - - src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc - - src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc - - src/core/tsi/alts/handshaker/alts_tsi_utils.cc - - src/core/tsi/alts/handshaker/transport_security_common_api.cc - deps: - - upb - uses: - - alts_upb - - grpc_base - - tsi_interface -- name: census - public_headers: - - include/grpc/census.h - src: - - src/core/ext/filters/census/grpc_context.cc - uses: - - grpc_base -- name: cmdline - headers: - - test/core/util/cmdline.h - src: - - test/core/util/cmdline.cc - uses: - - gpr_base_headers -- name: envoy_ads_upb - headers: - - src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h - - src/core/ext/upb-generated/envoy/api/v2/cds.upb.h - - src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h - - src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h - - src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h - - src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h - - src/core/ext/upb-generated/envoy/api/v2/eds.upb.h - - src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.h - - src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.h - - src/core/ext/upb-generated/envoy/api/v2/lds.upb.h - - src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.h - - src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.h - - src/core/ext/upb-generated/envoy/api/v2/rds.upb.h - - src/core/ext/upb-generated/envoy/api/v2/route/route.upb.h - - src/core/ext/upb-generated/envoy/api/v2/srds.upb.h - - src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.h - - src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.h - - src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.h - - src/core/ext/upb-generated/envoy/service/discovery/v2/ads.upb.h - - src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.h - src: - - src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c - - src/core/ext/upb-generated/envoy/api/v2/cds.upb.c - - src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c - - src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c - - src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c - - src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c - - src/core/ext/upb-generated/envoy/api/v2/eds.upb.c - - src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.c - - src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.c - - src/core/ext/upb-generated/envoy/api/v2/lds.upb.c - - src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.c - - src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.c - - src/core/ext/upb-generated/envoy/api/v2/rds.upb.c - - src/core/ext/upb-generated/envoy/api/v2/route/route.upb.c - - src/core/ext/upb-generated/envoy/api/v2/srds.upb.c - - src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.c - - src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.c - - src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.c - - src/core/ext/upb-generated/envoy/service/discovery/v2/ads.upb.c - - src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.c - uses: - - envoy_core_upb - - envoy_type_upb - - google_api_upb - - proto_gen_validate_upb -- name: envoy_core_upb - headers: - - src/core/ext/upb-generated/envoy/api/v2/core/address.upb.h - - src/core/ext/upb-generated/envoy/api/v2/core/base.upb.h - - src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h - - src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h - - src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h - - src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h - - src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h - src: - - src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c - - src/core/ext/upb-generated/envoy/api/v2/core/base.upb.c - - src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c - - src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c - - src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c - - src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c - - src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c - uses: - - envoy_type_upb - - google_api_upb - - proto_gen_validate_upb -- name: envoy_orca_upb - headers: - - src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h - src: - - src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c - uses: - - proto_gen_validate_upb -- name: envoy_type_upb - headers: - - src/core/ext/upb-generated/envoy/type/http.upb.h - - src/core/ext/upb-generated/envoy/type/matcher/regex.upb.h - - src/core/ext/upb-generated/envoy/type/matcher/string.upb.h - - src/core/ext/upb-generated/envoy/type/percent.upb.h - - src/core/ext/upb-generated/envoy/type/range.upb.h - src: - - src/core/ext/upb-generated/envoy/type/http.upb.c - - src/core/ext/upb-generated/envoy/type/matcher/regex.upb.c - - src/core/ext/upb-generated/envoy/type/matcher/string.upb.c - - src/core/ext/upb-generated/envoy/type/percent.upb.c - - src/core/ext/upb-generated/envoy/type/range.upb.c - uses: - - google_api_upb - - proto_gen_validate_upb -- name: google_api_upb - headers: - - src/core/ext/upb-generated/google/api/annotations.upb.h - - src/core/ext/upb-generated/google/api/http.upb.h - - src/core/ext/upb-generated/google/protobuf/any.upb.h - - src/core/ext/upb-generated/google/protobuf/descriptor.upb.h - - src/core/ext/upb-generated/google/protobuf/duration.upb.h - - src/core/ext/upb-generated/google/protobuf/empty.upb.h - - src/core/ext/upb-generated/google/protobuf/struct.upb.h - - src/core/ext/upb-generated/google/protobuf/timestamp.upb.h - - src/core/ext/upb-generated/google/protobuf/wrappers.upb.h - - src/core/ext/upb-generated/google/rpc/status.upb.h - src: - - src/core/ext/upb-generated/google/api/annotations.upb.c - - src/core/ext/upb-generated/google/api/http.upb.c - - src/core/ext/upb-generated/google/protobuf/any.upb.c - - src/core/ext/upb-generated/google/protobuf/descriptor.upb.c - - src/core/ext/upb-generated/google/protobuf/duration.upb.c - - src/core/ext/upb-generated/google/protobuf/empty.upb.c - - src/core/ext/upb-generated/google/protobuf/struct.upb.c - - src/core/ext/upb-generated/google/protobuf/timestamp.upb.c - - src/core/ext/upb-generated/google/protobuf/wrappers.upb.c - - src/core/ext/upb-generated/google/rpc/status.upb.c - deps: - - upb -- name: gpr_base - src: - - src/core/lib/gpr/alloc.cc - - src/core/lib/gpr/atm.cc - - src/core/lib/gpr/cpu_iphone.cc - - src/core/lib/gpr/cpu_linux.cc - - src/core/lib/gpr/cpu_posix.cc - - src/core/lib/gpr/cpu_windows.cc - - src/core/lib/gpr/env_linux.cc - - src/core/lib/gpr/env_posix.cc - - src/core/lib/gpr/env_windows.cc - - src/core/lib/gpr/log.cc - - src/core/lib/gpr/log_android.cc - - src/core/lib/gpr/log_linux.cc - - src/core/lib/gpr/log_posix.cc - - src/core/lib/gpr/log_windows.cc - - src/core/lib/gpr/murmur_hash.cc - - src/core/lib/gpr/string.cc - - src/core/lib/gpr/string_posix.cc - - src/core/lib/gpr/string_util_windows.cc - - src/core/lib/gpr/string_windows.cc - - src/core/lib/gpr/sync.cc - - src/core/lib/gpr/sync_abseil.cc - - src/core/lib/gpr/sync_posix.cc - - src/core/lib/gpr/sync_windows.cc - - src/core/lib/gpr/time.cc - - src/core/lib/gpr/time_posix.cc - - src/core/lib/gpr/time_precise.cc - - src/core/lib/gpr/time_windows.cc - - src/core/lib/gpr/tls_pthread.cc - - src/core/lib/gpr/tmpfile_msys.cc - - src/core/lib/gpr/tmpfile_posix.cc - - src/core/lib/gpr/tmpfile_windows.cc - - src/core/lib/gpr/wrap_memcpy.cc - - src/core/lib/gprpp/arena.cc - - src/core/lib/gprpp/fork.cc - - src/core/lib/gprpp/global_config_env.cc - - src/core/lib/gprpp/host_port.cc - - src/core/lib/gprpp/mpscq.cc - - src/core/lib/gprpp/thd_posix.cc - - src/core/lib/gprpp/thd_windows.cc - - src/core/lib/profiling/basic_timers.cc - - src/core/lib/profiling/stap_timers.cc - deps: - - absl/container:inlined_vector - - absl/memory:memory - - absl/strings:str_format - - absl/strings:strings - - absl/types:optional - uses: - - gpr_base_headers -- name: gpr_base_headers - public_headers: - - include/grpc/support/alloc.h - - include/grpc/support/atm.h - - include/grpc/support/atm_gcc_atomic.h - - include/grpc/support/atm_gcc_sync.h - - include/grpc/support/atm_windows.h - - include/grpc/support/cpu.h - - include/grpc/support/log.h - - include/grpc/support/log_windows.h - - include/grpc/support/port_platform.h - - include/grpc/support/string_util.h - - include/grpc/support/sync.h - - include/grpc/support/sync_abseil.h - - include/grpc/support/sync_custom.h - - include/grpc/support/sync_generic.h - - include/grpc/support/sync_posix.h - - include/grpc/support/sync_windows.h - - include/grpc/support/thd_id.h - - include/grpc/support/time.h - headers: - - src/core/lib/gpr/alloc.h - - src/core/lib/gpr/arena.h - - src/core/lib/gpr/env.h - - src/core/lib/gpr/murmur_hash.h - - src/core/lib/gpr/spinlock.h - - src/core/lib/gpr/string.h - - src/core/lib/gpr/string_windows.h - - src/core/lib/gpr/time_precise.h - - src/core/lib/gpr/tls.h - - src/core/lib/gpr/tls_gcc.h - - src/core/lib/gpr/tls_msvc.h - - src/core/lib/gpr/tls_pthread.h - - src/core/lib/gpr/tmpfile.h - - src/core/lib/gpr/useful.h - - src/core/lib/gprpp/arena.h - - src/core/lib/gprpp/atomic.h - - src/core/lib/gprpp/fork.h - - src/core/lib/gprpp/global_config.h - - src/core/lib/gprpp/global_config_custom.h - - src/core/lib/gprpp/global_config_env.h - - src/core/lib/gprpp/global_config_generic.h - - src/core/lib/gprpp/host_port.h - - src/core/lib/gprpp/manual_constructor.h - - src/core/lib/gprpp/map.h - - src/core/lib/gprpp/memory.h - - src/core/lib/gprpp/mpscq.h - - src/core/lib/gprpp/sync.h - - src/core/lib/gprpp/thd.h - - src/core/lib/profiling/timers.h - uses: - - gpr_codegen -- name: gpr_codegen - public_headers: - - include/grpc/impl/codegen/atm.h - - include/grpc/impl/codegen/atm_gcc_atomic.h - - include/grpc/impl/codegen/atm_gcc_sync.h - - include/grpc/impl/codegen/atm_windows.h - - include/grpc/impl/codegen/fork.h - - include/grpc/impl/codegen/gpr_slice.h - - include/grpc/impl/codegen/gpr_types.h - - include/grpc/impl/codegen/log.h - - include/grpc/impl/codegen/port_platform.h - - include/grpc/impl/codegen/sync.h - - include/grpc/impl/codegen/sync_abseil.h - - include/grpc/impl/codegen/sync_custom.h - - include/grpc/impl/codegen/sync_generic.h - - include/grpc/impl/codegen/sync_posix.h - - include/grpc/impl/codegen/sync_windows.h -- name: grpc++_base - deps: - - grpc - uses: - - grpc++_common - - grpc++_codegen_base -- name: grpc++_base_unsecure - deps: - - grpc_unsecure - uses: - - grpc++_common - - grpc++_codegen_base -- name: grpc++_codegen_base - public_headers: - - include/grpc++/impl/codegen/async_stream.h - - include/grpc++/impl/codegen/async_unary_call.h - - include/grpc++/impl/codegen/byte_buffer.h - - include/grpc++/impl/codegen/call.h - - include/grpc++/impl/codegen/call_hook.h - - include/grpc++/impl/codegen/channel_interface.h - - include/grpc++/impl/codegen/client_context.h - - include/grpc++/impl/codegen/client_unary_call.h - - include/grpc++/impl/codegen/completion_queue.h - - include/grpc++/impl/codegen/completion_queue_tag.h - - include/grpc++/impl/codegen/config.h - - include/grpc++/impl/codegen/core_codegen_interface.h - - include/grpc++/impl/codegen/create_auth_context.h - - include/grpc++/impl/codegen/grpc_library.h - - include/grpc++/impl/codegen/metadata_map.h - - include/grpc++/impl/codegen/method_handler_impl.h - - include/grpc++/impl/codegen/rpc_method.h - - include/grpc++/impl/codegen/rpc_service_method.h - - include/grpc++/impl/codegen/security/auth_context.h - - include/grpc++/impl/codegen/serialization_traits.h - - include/grpc++/impl/codegen/server_context.h - - include/grpc++/impl/codegen/server_interface.h - - include/grpc++/impl/codegen/service_type.h - - include/grpc++/impl/codegen/slice.h - - include/grpc++/impl/codegen/status.h - - include/grpc++/impl/codegen/status_code_enum.h - - include/grpc++/impl/codegen/string_ref.h - - include/grpc++/impl/codegen/stub_options.h - - include/grpc++/impl/codegen/sync_stream.h - - include/grpc++/impl/codegen/time.h - - include/grpcpp/impl/codegen/async_generic_service.h - - include/grpcpp/impl/codegen/async_stream.h - - include/grpcpp/impl/codegen/async_stream_impl.h - - include/grpcpp/impl/codegen/async_unary_call.h - - include/grpcpp/impl/codegen/async_unary_call_impl.h - - include/grpcpp/impl/codegen/byte_buffer.h - - include/grpcpp/impl/codegen/call.h - - include/grpcpp/impl/codegen/call_hook.h - - include/grpcpp/impl/codegen/call_op_set.h - - include/grpcpp/impl/codegen/call_op_set_interface.h - - include/grpcpp/impl/codegen/callback_common.h - - include/grpcpp/impl/codegen/channel_interface.h - - include/grpcpp/impl/codegen/client_callback.h - - include/grpcpp/impl/codegen/client_callback_impl.h - - include/grpcpp/impl/codegen/client_context.h - - include/grpcpp/impl/codegen/client_context_impl.h - - include/grpcpp/impl/codegen/client_interceptor.h - - include/grpcpp/impl/codegen/client_unary_call.h - - include/grpcpp/impl/codegen/completion_queue.h - - include/grpcpp/impl/codegen/completion_queue_impl.h - - include/grpcpp/impl/codegen/completion_queue_tag.h - - include/grpcpp/impl/codegen/config.h - - include/grpcpp/impl/codegen/core_codegen_interface.h - - include/grpcpp/impl/codegen/create_auth_context.h - - include/grpcpp/impl/codegen/delegating_channel.h - - include/grpcpp/impl/codegen/grpc_library.h - - include/grpcpp/impl/codegen/intercepted_channel.h - - include/grpcpp/impl/codegen/interceptor.h - - include/grpcpp/impl/codegen/interceptor_common.h - - include/grpcpp/impl/codegen/message_allocator.h - - include/grpcpp/impl/codegen/metadata_map.h - - include/grpcpp/impl/codegen/method_handler.h - - include/grpcpp/impl/codegen/method_handler_impl.h - - include/grpcpp/impl/codegen/rpc_method.h - - include/grpcpp/impl/codegen/rpc_service_method.h - - include/grpcpp/impl/codegen/security/auth_context.h - - include/grpcpp/impl/codegen/serialization_traits.h - - include/grpcpp/impl/codegen/server_callback.h - - include/grpcpp/impl/codegen/server_callback_handlers.h - - include/grpcpp/impl/codegen/server_callback_impl.h - - include/grpcpp/impl/codegen/server_context.h - - include/grpcpp/impl/codegen/server_context_impl.h - - include/grpcpp/impl/codegen/server_interceptor.h - - include/grpcpp/impl/codegen/server_interface.h - - include/grpcpp/impl/codegen/service_type.h - - include/grpcpp/impl/codegen/slice.h - - include/grpcpp/impl/codegen/status.h - - include/grpcpp/impl/codegen/status_code_enum.h - - include/grpcpp/impl/codegen/string_ref.h - - include/grpcpp/impl/codegen/stub_options.h - - include/grpcpp/impl/codegen/sync_stream.h - - include/grpcpp/impl/codegen/sync_stream_impl.h - - include/grpcpp/impl/codegen/time.h - uses: - - grpc_codegen - - grpc++_internal_hdrs_only -- name: grpc++_codegen_base_src - src: - - src/cpp/codegen/codegen_init.cc - uses: - - grpc++_codegen_base -- name: grpc++_codegen_proto - public_headers: - - include/grpc++/impl/codegen/proto_utils.h - - include/grpcpp/impl/codegen/proto_buffer_reader.h - - include/grpcpp/impl/codegen/proto_buffer_writer.h - - include/grpcpp/impl/codegen/proto_utils.h - uses: - - grpc++_codegen_base - - grpc++_config_proto -- name: grpc++_common - public_headers: - - include/grpc++/alarm.h - - include/grpc++/channel.h - - include/grpc++/client_context.h - - include/grpc++/completion_queue.h - - include/grpc++/create_channel.h - - include/grpc++/create_channel_posix.h - - include/grpc++/ext/health_check_service_server_builder_option.h - - include/grpc++/generic/async_generic_service.h - - include/grpc++/generic/generic_stub.h - - include/grpc++/grpc++.h - - include/grpc++/health_check_service_interface.h - - include/grpc++/impl/call.h - - include/grpc++/impl/channel_argument_option.h - - include/grpc++/impl/client_unary_call.h - - include/grpc++/impl/codegen/core_codegen.h - - include/grpc++/impl/grpc_library.h - - include/grpc++/impl/method_handler_impl.h - - include/grpc++/impl/rpc_method.h - - include/grpc++/impl/rpc_service_method.h - - include/grpc++/impl/serialization_traits.h - - include/grpc++/impl/server_builder_option.h - - include/grpc++/impl/server_builder_plugin.h - - include/grpc++/impl/server_initializer.h - - include/grpc++/impl/service_type.h - - include/grpc++/resource_quota.h - - include/grpc++/security/auth_context.h - - include/grpc++/security/auth_metadata_processor.h - - include/grpc++/security/credentials.h - - include/grpc++/security/server_credentials.h - - include/grpc++/server.h - - include/grpc++/server_builder.h - - include/grpc++/server_context.h - - include/grpc++/server_posix.h - - include/grpc++/support/async_stream.h - - include/grpc++/support/async_unary_call.h - - include/grpc++/support/byte_buffer.h - - include/grpc++/support/channel_arguments.h - - include/grpc++/support/config.h - - include/grpc++/support/slice.h - - include/grpc++/support/status.h - - include/grpc++/support/status_code_enum.h - - include/grpc++/support/string_ref.h - - include/grpc++/support/stub_options.h - - include/grpc++/support/sync_stream.h - - include/grpc++/support/time.h - - include/grpcpp/alarm.h - - include/grpcpp/alarm_impl.h - - include/grpcpp/channel.h - - include/grpcpp/channel_impl.h - - include/grpcpp/client_context.h - - include/grpcpp/completion_queue.h - - include/grpcpp/completion_queue_impl.h - - include/grpcpp/create_channel.h - - include/grpcpp/create_channel_impl.h - - include/grpcpp/create_channel_posix.h - - include/grpcpp/create_channel_posix_impl.h - - include/grpcpp/ext/health_check_service_server_builder_option.h - - include/grpcpp/generic/async_generic_service.h - - include/grpcpp/generic/generic_stub.h - - include/grpcpp/generic/generic_stub_impl.h - - include/grpcpp/grpcpp.h - - include/grpcpp/health_check_service_interface.h - - include/grpcpp/health_check_service_interface_impl.h - - include/grpcpp/impl/call.h - - include/grpcpp/impl/channel_argument_option.h - - include/grpcpp/impl/client_unary_call.h - - include/grpcpp/impl/codegen/core_codegen.h - - include/grpcpp/impl/grpc_library.h - - include/grpcpp/impl/method_handler_impl.h - - include/grpcpp/impl/rpc_method.h - - include/grpcpp/impl/rpc_service_method.h - - include/grpcpp/impl/serialization_traits.h - - include/grpcpp/impl/server_builder_option.h - - include/grpcpp/impl/server_builder_option_impl.h - - include/grpcpp/impl/server_builder_plugin.h - - include/grpcpp/impl/server_initializer.h - - include/grpcpp/impl/server_initializer_impl.h - - include/grpcpp/impl/service_type.h - - include/grpcpp/resource_quota.h - - include/grpcpp/resource_quota_impl.h - - include/grpcpp/security/auth_context.h - - include/grpcpp/security/auth_metadata_processor.h - - include/grpcpp/security/auth_metadata_processor_impl.h - - include/grpcpp/security/credentials.h - - include/grpcpp/security/credentials_impl.h - - include/grpcpp/security/server_credentials.h - - include/grpcpp/security/server_credentials_impl.h - - include/grpcpp/security/tls_credentials_options.h - - include/grpcpp/server.h - - include/grpcpp/server_builder.h - - include/grpcpp/server_builder_impl.h - - include/grpcpp/server_context.h - - include/grpcpp/server_impl.h - - include/grpcpp/server_posix.h - - include/grpcpp/server_posix_impl.h - - include/grpcpp/support/async_stream.h - - include/grpcpp/support/async_stream_impl.h - - include/grpcpp/support/async_unary_call.h - - include/grpcpp/support/async_unary_call_impl.h - - include/grpcpp/support/byte_buffer.h - - include/grpcpp/support/channel_arguments.h - - include/grpcpp/support/channel_arguments_impl.h - - include/grpcpp/support/client_callback.h - - include/grpcpp/support/client_callback_impl.h - - include/grpcpp/support/client_interceptor.h - - include/grpcpp/support/config.h - - include/grpcpp/support/interceptor.h - - include/grpcpp/support/message_allocator.h - - include/grpcpp/support/proto_buffer_reader.h - - include/grpcpp/support/proto_buffer_writer.h - - include/grpcpp/support/server_callback.h - - include/grpcpp/support/server_callback_impl.h - - include/grpcpp/support/server_interceptor.h - - include/grpcpp/support/slice.h - - include/grpcpp/support/status.h - - include/grpcpp/support/status_code_enum.h - - include/grpcpp/support/string_ref.h - - include/grpcpp/support/stub_options.h - - include/grpcpp/support/sync_stream.h - - include/grpcpp/support/sync_stream_impl.h - - include/grpcpp/support/time.h - - include/grpcpp/support/validate_service_config.h - headers: - - src/cpp/client/create_channel_internal.h - - src/cpp/common/channel_filter.h - - src/cpp/server/dynamic_thread_pool.h - - src/cpp/server/external_connection_acceptor_impl.h - - src/cpp/server/health/default_health_check_service.h - - src/cpp/server/thread_pool_interface.h - - src/cpp/thread_manager/thread_manager.h - src: - - src/cpp/client/channel_cc.cc - - src/cpp/client/client_context.cc - - src/cpp/client/client_interceptor.cc - - src/cpp/client/create_channel.cc - - src/cpp/client/create_channel_internal.cc - - src/cpp/client/create_channel_posix.cc - - src/cpp/client/credentials_cc.cc - - src/cpp/common/alarm.cc - - src/cpp/common/channel_arguments.cc - - src/cpp/common/channel_filter.cc - - src/cpp/common/completion_queue_cc.cc - - src/cpp/common/core_codegen.cc - - src/cpp/common/resource_quota_cc.cc - - src/cpp/common/rpc_method.cc - - src/cpp/common/validate_service_config.cc - - src/cpp/common/version_cc.cc - - src/cpp/server/async_generic_service.cc - - src/cpp/server/channel_argument_option.cc - - src/cpp/server/create_default_thread_pool.cc - - src/cpp/server/dynamic_thread_pool.cc - - src/cpp/server/external_connection_acceptor_impl.cc - - src/cpp/server/health/default_health_check_service.cc - - src/cpp/server/health/health_check_service.cc - - src/cpp/server/health/health_check_service_server_builder_option.cc - - src/cpp/server/server_builder.cc - - src/cpp/server/server_callback.cc - - src/cpp/server/server_cc.cc - - src/cpp/server/server_context.cc - - src/cpp/server/server_credentials.cc - - src/cpp/server/server_posix.cc - - src/cpp/thread_manager/thread_manager.cc - - src/cpp/util/byte_buffer_cc.cc - - src/cpp/util/status.cc - - src/cpp/util/string_ref.cc - - src/cpp/util/time_cc.cc - uses: - - gpr_base_headers - - grpc_base_headers - - grpc_health_upb - - grpc_transport_inproc_headers - - grpc++_codegen_base - - grpc++_internal_hdrs_only -- name: grpc++_config_proto - public_headers: - - include/grpc++/impl/codegen/config_protobuf.h - - include/grpcpp/impl/codegen/config_protobuf.h -- name: grpc++_internal_hdrs_only - public_headers: - - include/grpcpp/impl/codegen/sync.h -- name: grpc++_reflection_proto - src: - - src/proto/grpc/reflection/v1alpha/reflection.proto -- name: grpc++_test - public_headers: - - include/grpc++/test/mock_stream.h - - include/grpc++/test/server_context_test_spouse.h - - include/grpcpp/test/default_reactor_test_peer.h - - include/grpcpp/test/mock_stream.h - - include/grpcpp/test/server_context_test_spouse.h - deps: - - grpc++ - - grpc -- name: grpc_base - src: - - src/core/lib/avl/avl.cc - - src/core/lib/backoff/backoff.cc - - src/core/lib/channel/channel_args.cc - - src/core/lib/channel/channel_stack.cc - - src/core/lib/channel/channel_stack_builder.cc - - src/core/lib/channel/channel_trace.cc - - src/core/lib/channel/channelz.cc - - src/core/lib/channel/channelz_registry.cc - - src/core/lib/channel/connected_channel.cc - - src/core/lib/channel/handshaker.cc - - src/core/lib/channel/handshaker_registry.cc - - src/core/lib/channel/status_util.cc - - src/core/lib/compression/compression.cc - - src/core/lib/compression/compression_args.cc - - src/core/lib/compression/compression_internal.cc - - src/core/lib/compression/message_compress.cc - - src/core/lib/compression/stream_compression.cc - - src/core/lib/compression/stream_compression_gzip.cc - - src/core/lib/compression/stream_compression_identity.cc - - src/core/lib/debug/stats.cc - - src/core/lib/debug/stats_data.cc - - src/core/lib/http/format_request.cc - - src/core/lib/http/httpcli.cc - - src/core/lib/http/parser.cc - - src/core/lib/iomgr/buffer_list.cc - - src/core/lib/iomgr/call_combiner.cc - - src/core/lib/iomgr/cfstream_handle.cc - - src/core/lib/iomgr/combiner.cc - - src/core/lib/iomgr/endpoint.cc - - src/core/lib/iomgr/endpoint_cfstream.cc - - src/core/lib/iomgr/endpoint_pair_posix.cc - - src/core/lib/iomgr/endpoint_pair_uv.cc - - src/core/lib/iomgr/endpoint_pair_windows.cc - - src/core/lib/iomgr/error.cc - - src/core/lib/iomgr/error_cfstream.cc - - src/core/lib/iomgr/ev_epoll1_linux.cc - - src/core/lib/iomgr/ev_epollex_linux.cc - - src/core/lib/iomgr/ev_poll_posix.cc - - src/core/lib/iomgr/ev_posix.cc - - src/core/lib/iomgr/ev_windows.cc - - src/core/lib/iomgr/exec_ctx.cc - - src/core/lib/iomgr/executor.cc - - src/core/lib/iomgr/executor/mpmcqueue.cc - - src/core/lib/iomgr/executor/threadpool.cc - - src/core/lib/iomgr/fork_posix.cc - - src/core/lib/iomgr/fork_windows.cc - - src/core/lib/iomgr/gethostname_fallback.cc - - src/core/lib/iomgr/gethostname_host_name_max.cc - - src/core/lib/iomgr/gethostname_sysconf.cc - - src/core/lib/iomgr/grpc_if_nametoindex_posix.cc - - src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc - - src/core/lib/iomgr/internal_errqueue.cc - - src/core/lib/iomgr/iocp_windows.cc - - src/core/lib/iomgr/iomgr.cc - - src/core/lib/iomgr/iomgr_custom.cc - - src/core/lib/iomgr/iomgr_internal.cc - - src/core/lib/iomgr/iomgr_posix.cc - - src/core/lib/iomgr/iomgr_posix_cfstream.cc - - src/core/lib/iomgr/iomgr_uv.cc - - src/core/lib/iomgr/iomgr_windows.cc - - src/core/lib/iomgr/is_epollexclusive_available.cc - - src/core/lib/iomgr/load_file.cc - - src/core/lib/iomgr/lockfree_event.cc - - src/core/lib/iomgr/poller/eventmanager_libuv.cc - - src/core/lib/iomgr/polling_entity.cc - - src/core/lib/iomgr/pollset.cc - - src/core/lib/iomgr/pollset_custom.cc - - src/core/lib/iomgr/pollset_set.cc - - src/core/lib/iomgr/pollset_set_custom.cc - - src/core/lib/iomgr/pollset_set_windows.cc - - src/core/lib/iomgr/pollset_uv.cc - - src/core/lib/iomgr/pollset_windows.cc - - src/core/lib/iomgr/resolve_address.cc - - src/core/lib/iomgr/resolve_address_custom.cc - - src/core/lib/iomgr/resolve_address_posix.cc - - src/core/lib/iomgr/resolve_address_windows.cc - - src/core/lib/iomgr/resource_quota.cc - - src/core/lib/iomgr/sockaddr_utils.cc - - src/core/lib/iomgr/socket_factory_posix.cc - - src/core/lib/iomgr/socket_mutator.cc - - src/core/lib/iomgr/socket_utils_common_posix.cc - - src/core/lib/iomgr/socket_utils_linux.cc - - src/core/lib/iomgr/socket_utils_posix.cc - - src/core/lib/iomgr/socket_utils_uv.cc - - src/core/lib/iomgr/socket_utils_windows.cc - - src/core/lib/iomgr/socket_windows.cc - - src/core/lib/iomgr/tcp_client.cc - - src/core/lib/iomgr/tcp_client_cfstream.cc - - src/core/lib/iomgr/tcp_client_custom.cc - - src/core/lib/iomgr/tcp_client_posix.cc - - src/core/lib/iomgr/tcp_client_windows.cc - - src/core/lib/iomgr/tcp_custom.cc - - src/core/lib/iomgr/tcp_posix.cc - - src/core/lib/iomgr/tcp_server.cc - - src/core/lib/iomgr/tcp_server_custom.cc - - src/core/lib/iomgr/tcp_server_posix.cc - - src/core/lib/iomgr/tcp_server_utils_posix_common.cc - - src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc - - src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc - - src/core/lib/iomgr/tcp_server_windows.cc - - src/core/lib/iomgr/tcp_uv.cc - - src/core/lib/iomgr/tcp_windows.cc - - src/core/lib/iomgr/time_averaged_stats.cc - - src/core/lib/iomgr/timer.cc - - src/core/lib/iomgr/timer_custom.cc - - src/core/lib/iomgr/timer_generic.cc - - src/core/lib/iomgr/timer_heap.cc - - src/core/lib/iomgr/timer_manager.cc - - src/core/lib/iomgr/timer_uv.cc - - src/core/lib/iomgr/udp_server.cc - - src/core/lib/iomgr/unix_sockets_posix.cc - - src/core/lib/iomgr/unix_sockets_posix_noop.cc - - src/core/lib/iomgr/wakeup_fd_eventfd.cc - - src/core/lib/iomgr/wakeup_fd_nospecial.cc - - src/core/lib/iomgr/wakeup_fd_pipe.cc - - src/core/lib/iomgr/wakeup_fd_posix.cc - - src/core/lib/iomgr/work_serializer.cc - - src/core/lib/json/json_reader.cc - - src/core/lib/json/json_writer.cc - - src/core/lib/slice/b64.cc - - src/core/lib/slice/percent_encoding.cc - - src/core/lib/slice/slice.cc - - src/core/lib/slice/slice_buffer.cc - - src/core/lib/slice/slice_intern.cc - - src/core/lib/slice/slice_string_helpers.cc - - src/core/lib/surface/api_trace.cc - - src/core/lib/surface/byte_buffer.cc - - src/core/lib/surface/byte_buffer_reader.cc - - src/core/lib/surface/call.cc - - src/core/lib/surface/call_details.cc - - src/core/lib/surface/call_log_batch.cc - - src/core/lib/surface/channel.cc - - src/core/lib/surface/channel_init.cc - - src/core/lib/surface/channel_ping.cc - - src/core/lib/surface/channel_stack_type.cc - - src/core/lib/surface/completion_queue.cc - - src/core/lib/surface/completion_queue_factory.cc - - src/core/lib/surface/event_string.cc - - src/core/lib/surface/lame_client.cc - - src/core/lib/surface/metadata_array.cc - - src/core/lib/surface/server.cc - - src/core/lib/surface/validate_metadata.cc - - src/core/lib/surface/version.cc - - src/core/lib/transport/bdp_estimator.cc - - src/core/lib/transport/byte_stream.cc - - src/core/lib/transport/connectivity_state.cc - - src/core/lib/transport/error_utils.cc - - src/core/lib/transport/metadata.cc - - src/core/lib/transport/metadata_batch.cc - - src/core/lib/transport/pid_controller.cc - - src/core/lib/transport/static_metadata.cc - - src/core/lib/transport/status_conversion.cc - - src/core/lib/transport/status_metadata.cc - - src/core/lib/transport/timeout_encoding.cc - - src/core/lib/transport/transport.cc - - src/core/lib/transport/transport_op_string.cc - - src/core/lib/uri/uri_parser.cc - deps: - - gpr - uses: - - grpc_codegen - - grpc_trace -- name: grpc_base_headers - public_headers: - - include/grpc/byte_buffer.h - - include/grpc/byte_buffer_reader.h - - include/grpc/compression.h - - include/grpc/fork.h - - include/grpc/grpc.h - - include/grpc/grpc_posix.h - - include/grpc/grpc_security_constants.h - - include/grpc/load_reporting.h - - include/grpc/slice.h - - include/grpc/slice_buffer.h - - include/grpc/status.h - - include/grpc/support/workaround_list.h - headers: - - src/core/lib/avl/avl.h - - src/core/lib/backoff/backoff.h - - src/core/lib/channel/channel_args.h - - src/core/lib/channel/channel_stack.h - - src/core/lib/channel/channel_stack_builder.h - - src/core/lib/channel/channel_trace.h - - src/core/lib/channel/channelz.h - - src/core/lib/channel/channelz_registry.h - - src/core/lib/channel/connected_channel.h - - src/core/lib/channel/context.h - - src/core/lib/channel/handshaker.h - - src/core/lib/channel/handshaker_factory.h - - src/core/lib/channel/handshaker_registry.h - - src/core/lib/channel/status_util.h - - src/core/lib/compression/algorithm_metadata.h - - src/core/lib/compression/compression_args.h - - src/core/lib/compression/compression_internal.h - - src/core/lib/compression/message_compress.h - - src/core/lib/compression/stream_compression.h - - src/core/lib/compression/stream_compression_gzip.h - - src/core/lib/compression/stream_compression_identity.h - - src/core/lib/debug/stats.h - - src/core/lib/debug/stats_data.h - - src/core/lib/gprpp/debug_location.h - - src/core/lib/gprpp/inlined_vector.h - - src/core/lib/gprpp/optional.h - - src/core/lib/gprpp/orphanable.h - - src/core/lib/gprpp/ref_counted.h - - src/core/lib/gprpp/ref_counted_ptr.h - - src/core/lib/gprpp/string_view.h - - src/core/lib/http/format_request.h - - src/core/lib/http/httpcli.h - - src/core/lib/http/parser.h - - src/core/lib/iomgr/block_annotate.h - - src/core/lib/iomgr/buffer_list.h - - src/core/lib/iomgr/call_combiner.h - - src/core/lib/iomgr/cfstream_handle.h - - src/core/lib/iomgr/closure.h - - src/core/lib/iomgr/combiner.h - - src/core/lib/iomgr/dynamic_annotations.h - - src/core/lib/iomgr/endpoint.h - - src/core/lib/iomgr/endpoint_cfstream.h - - src/core/lib/iomgr/endpoint_pair.h - - src/core/lib/iomgr/error.h - - src/core/lib/iomgr/error_cfstream.h - - src/core/lib/iomgr/error_internal.h - - src/core/lib/iomgr/ev_epoll1_linux.h - - src/core/lib/iomgr/ev_epollex_linux.h - - src/core/lib/iomgr/ev_poll_posix.h - - src/core/lib/iomgr/ev_posix.h - - src/core/lib/iomgr/exec_ctx.h - - src/core/lib/iomgr/executor.h - - src/core/lib/iomgr/executor/mpmcqueue.h - - src/core/lib/iomgr/executor/threadpool.h - - src/core/lib/iomgr/gethostname.h - - src/core/lib/iomgr/grpc_if_nametoindex.h - - src/core/lib/iomgr/internal_errqueue.h - - src/core/lib/iomgr/iocp_windows.h - - src/core/lib/iomgr/iomgr.h - - src/core/lib/iomgr/iomgr_custom.h - - src/core/lib/iomgr/iomgr_internal.h - - src/core/lib/iomgr/iomgr_posix.h - - src/core/lib/iomgr/is_epollexclusive_available.h - - src/core/lib/iomgr/load_file.h - - src/core/lib/iomgr/lockfree_event.h - - src/core/lib/iomgr/nameser.h - - src/core/lib/iomgr/poller/eventmanager_libuv.h - - src/core/lib/iomgr/polling_entity.h - - src/core/lib/iomgr/pollset.h - - src/core/lib/iomgr/pollset_custom.h - - src/core/lib/iomgr/pollset_set.h - - src/core/lib/iomgr/pollset_set_custom.h - - src/core/lib/iomgr/pollset_set_windows.h - - src/core/lib/iomgr/pollset_windows.h - - src/core/lib/iomgr/port.h - - src/core/lib/iomgr/resolve_address.h - - src/core/lib/iomgr/resolve_address_custom.h - - src/core/lib/iomgr/resource_quota.h - - src/core/lib/iomgr/sockaddr.h - - src/core/lib/iomgr/sockaddr_custom.h - - src/core/lib/iomgr/sockaddr_posix.h - - src/core/lib/iomgr/sockaddr_utils.h - - src/core/lib/iomgr/sockaddr_windows.h - - src/core/lib/iomgr/socket_factory_posix.h - - src/core/lib/iomgr/socket_mutator.h - - src/core/lib/iomgr/socket_utils.h - - src/core/lib/iomgr/socket_utils_posix.h - - src/core/lib/iomgr/socket_windows.h - - src/core/lib/iomgr/sys_epoll_wrapper.h - - src/core/lib/iomgr/tcp_client.h - - src/core/lib/iomgr/tcp_client_posix.h - - src/core/lib/iomgr/tcp_custom.h - - src/core/lib/iomgr/tcp_posix.h - - src/core/lib/iomgr/tcp_server.h - - src/core/lib/iomgr/tcp_server_utils_posix.h - - src/core/lib/iomgr/tcp_windows.h - - src/core/lib/iomgr/time_averaged_stats.h - - src/core/lib/iomgr/timer.h - - src/core/lib/iomgr/timer_custom.h - - src/core/lib/iomgr/timer_heap.h - - src/core/lib/iomgr/timer_manager.h - - src/core/lib/iomgr/udp_server.h - - src/core/lib/iomgr/unix_sockets_posix.h - - src/core/lib/iomgr/wakeup_fd_pipe.h - - src/core/lib/iomgr/wakeup_fd_posix.h - - src/core/lib/iomgr/work_serializer.h - - src/core/lib/json/json.h - - src/core/lib/slice/b64.h - - src/core/lib/slice/percent_encoding.h - - src/core/lib/slice/slice_hash_table.h - - src/core/lib/slice/slice_internal.h - - src/core/lib/slice/slice_string_helpers.h - - src/core/lib/slice/slice_utils.h - - src/core/lib/slice/slice_weak_hash_table.h - - src/core/lib/surface/api_trace.h - - src/core/lib/surface/call.h - - src/core/lib/surface/call_test_only.h - - src/core/lib/surface/channel.h - - src/core/lib/surface/channel_init.h - - src/core/lib/surface/channel_stack_type.h - - src/core/lib/surface/completion_queue.h - - src/core/lib/surface/completion_queue_factory.h - - src/core/lib/surface/event_string.h - - src/core/lib/surface/init.h - - src/core/lib/surface/lame_client.h - - src/core/lib/surface/server.h - - src/core/lib/surface/validate_metadata.h - - src/core/lib/transport/bdp_estimator.h - - src/core/lib/transport/byte_stream.h - - src/core/lib/transport/connectivity_state.h - - src/core/lib/transport/error_utils.h - - src/core/lib/transport/http2_errors.h - - src/core/lib/transport/metadata.h - - src/core/lib/transport/metadata_batch.h - - src/core/lib/transport/pid_controller.h - - src/core/lib/transport/static_metadata.h - - src/core/lib/transport/status_conversion.h - - src/core/lib/transport/status_metadata.h - - src/core/lib/transport/timeout_encoding.h - - src/core/lib/transport/transport.h - - src/core/lib/transport/transport_impl.h - - src/core/lib/uri/uri_parser.h - deps: - - gpr - uses: - - grpc_codegen - - grpc_trace_headers -- name: grpc_client_authority_filter - headers: - - src/core/ext/filters/http/client_authority_filter.h - src: - - src/core/ext/filters/http/client_authority_filter.cc - plugin: grpc_client_authority_filter - uses: - - grpc_base -- name: grpc_client_channel - headers: - - src/core/ext/filters/client_channel/backend_metric.h - - src/core/ext/filters/client_channel/backup_poller.h - - src/core/ext/filters/client_channel/client_channel.h - - src/core/ext/filters/client_channel/client_channel_channelz.h - - src/core/ext/filters/client_channel/client_channel_factory.h - - src/core/ext/filters/client_channel/connector.h - - src/core/ext/filters/client_channel/global_subchannel_pool.h - - src/core/ext/filters/client_channel/health/health_check_client.h - - src/core/ext/filters/client_channel/http_connect_handshaker.h - - src/core/ext/filters/client_channel/http_proxy.h - - src/core/ext/filters/client_channel/lb_policy.h - - src/core/ext/filters/client_channel/lb_policy_factory.h - - src/core/ext/filters/client_channel/lb_policy_registry.h - - src/core/ext/filters/client_channel/local_subchannel_pool.h - - src/core/ext/filters/client_channel/parse_address.h - - src/core/ext/filters/client_channel/proxy_mapper.h - - src/core/ext/filters/client_channel/proxy_mapper_registry.h - - src/core/ext/filters/client_channel/resolver.h - - src/core/ext/filters/client_channel/resolver_factory.h - - src/core/ext/filters/client_channel/resolver_registry.h - - src/core/ext/filters/client_channel/resolver_result_parsing.h - - src/core/ext/filters/client_channel/resolving_lb_policy.h - - src/core/ext/filters/client_channel/retry_throttle.h - - src/core/ext/filters/client_channel/server_address.h - - src/core/ext/filters/client_channel/service_config.h - - src/core/ext/filters/client_channel/subchannel.h - - src/core/ext/filters/client_channel/subchannel_interface.h - - src/core/ext/filters/client_channel/subchannel_pool_interface.h - src: - - src/core/ext/filters/client_channel/backend_metric.cc - - src/core/ext/filters/client_channel/backup_poller.cc - - src/core/ext/filters/client_channel/channel_connectivity.cc - - src/core/ext/filters/client_channel/client_channel.cc - - src/core/ext/filters/client_channel/client_channel_channelz.cc - - src/core/ext/filters/client_channel/client_channel_factory.cc - - src/core/ext/filters/client_channel/client_channel_plugin.cc - - src/core/ext/filters/client_channel/global_subchannel_pool.cc - - src/core/ext/filters/client_channel/health/health_check_client.cc - - src/core/ext/filters/client_channel/http_connect_handshaker.cc - - src/core/ext/filters/client_channel/http_proxy.cc - - src/core/ext/filters/client_channel/lb_policy.cc - - src/core/ext/filters/client_channel/lb_policy_registry.cc - - src/core/ext/filters/client_channel/local_subchannel_pool.cc - - src/core/ext/filters/client_channel/parse_address.cc - - src/core/ext/filters/client_channel/proxy_mapper_registry.cc - - src/core/ext/filters/client_channel/resolver.cc - - src/core/ext/filters/client_channel/resolver_registry.cc - - src/core/ext/filters/client_channel/resolver_result_parsing.cc - - src/core/ext/filters/client_channel/resolving_lb_policy.cc - - src/core/ext/filters/client_channel/retry_throttle.cc - - src/core/ext/filters/client_channel/server_address.cc - - src/core/ext/filters/client_channel/service_config.cc - - src/core/ext/filters/client_channel/subchannel.cc - - src/core/ext/filters/client_channel/subchannel_pool_interface.cc - plugin: grpc_client_channel - uses: - - grpc_base - - grpc_deadline_filter - - grpc_health_upb - - envoy_orca_upb -- name: grpc_client_idle_filter - src: - - src/core/ext/filters/client_idle/client_idle_filter.cc - plugin: grpc_client_idle_filter - uses: - - grpc_base -- name: grpc_codegen - public_headers: - - include/grpc/impl/codegen/byte_buffer.h - - include/grpc/impl/codegen/byte_buffer_reader.h - - include/grpc/impl/codegen/compression_types.h - - include/grpc/impl/codegen/connectivity_state.h - - include/grpc/impl/codegen/grpc_types.h - - include/grpc/impl/codegen/propagation_bits.h - - include/grpc/impl/codegen/slice.h - - include/grpc/impl/codegen/status.h - uses: - - gpr_codegen -- name: grpc_deadline_filter - headers: - - src/core/ext/filters/deadline/deadline_filter.h - src: - - src/core/ext/filters/deadline/deadline_filter.cc - plugin: grpc_deadline_filter - uses: - - grpc_base -- name: grpc_health_upb - headers: - - src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h - src: - - src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c - deps: - - upb -- name: grpc_http_filters - headers: - - src/core/ext/filters/http/client/http_client_filter.h - - src/core/ext/filters/http/message_compress/message_compress_filter.h - - src/core/ext/filters/http/server/http_server_filter.h - src: - - src/core/ext/filters/http/client/http_client_filter.cc - - src/core/ext/filters/http/http_filters_plugin.cc - - src/core/ext/filters/http/message_compress/message_compress_filter.cc - - src/core/ext/filters/http/server/http_server_filter.cc - plugin: grpc_http_filters - uses: - - grpc_base -- name: grpc_lb_policy_cds - src: - - src/core/ext/filters/client_channel/lb_policy/xds/cds.cc - plugin: grpc_lb_policy_cds - uses: - - grpc_base - - grpc_client_channel - - grpc_xds_client -- name: grpc_lb_policy_cds_secure - src: - - src/core/ext/filters/client_channel/lb_policy/xds/cds.cc - plugin: grpc_lb_policy_cds - uses: - - grpc_base - - grpc_client_channel - - grpc_xds_client_secure -- name: grpc_lb_policy_grpclb - headers: - - src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h - - src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h - src: - - src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.cc - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc - - src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc - deps: - - upb - plugin: grpc_lb_policy_grpclb - uses: - - grpc_base - - grpc_client_channel - - grpc_lb_upb - - grpc_resolver_fake -- name: grpc_lb_policy_grpclb_secure - headers: - - src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h - - src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h - src: - - src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc - - src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc - deps: - - upb - plugin: grpc_lb_policy_grpclb - uses: - - grpc_base - - grpc_client_channel - - grpc_lb_upb - - grpc_resolver_fake - - grpc_secure -- name: grpc_lb_policy_pick_first - src: - - src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc - plugin: grpc_lb_policy_pick_first - uses: - - grpc_base - - grpc_client_channel - - grpc_lb_subchannel_list -- name: grpc_lb_policy_round_robin - src: - - src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc - plugin: grpc_lb_policy_round_robin - uses: - - grpc_base - - grpc_client_channel - - grpc_lb_subchannel_list -- name: grpc_lb_policy_xds - headers: - - src/core/ext/filters/client_channel/lb_policy/xds/xds.h - src: - - src/core/ext/filters/client_channel/lb_policy/xds/xds.cc - plugin: grpc_lb_policy_xds - uses: - - grpc_base - - grpc_client_channel - - grpc_xds_client -- name: grpc_lb_policy_xds_secure - headers: - - src/core/ext/filters/client_channel/lb_policy/xds/xds.h - src: - - src/core/ext/filters/client_channel/lb_policy/xds/xds.cc - plugin: grpc_lb_policy_xds - uses: - - grpc_base - - grpc_client_channel - - grpc_xds_client_secure -- name: grpc_lb_subchannel_list - headers: - - src/core/ext/filters/client_channel/lb_policy/subchannel_list.h - uses: - - grpc_base - - grpc_client_channel -- name: grpc_lb_upb - headers: - - src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h - src: - - src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c - deps: - - upb - uses: - - google_api_upb -- name: grpc_max_age_filter - headers: - - src/core/ext/filters/max_age/max_age_filter.h - src: - - src/core/ext/filters/max_age/max_age_filter.cc - plugin: grpc_max_age_filter - uses: - - grpc_base -- name: grpc_message_size_filter - headers: - - src/core/ext/filters/message_size/message_size_filter.h - src: - - src/core/ext/filters/message_size/message_size_filter.cc - plugin: grpc_message_size_filter - uses: - - grpc_base -- name: grpc_resolver_dns_ares - headers: - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h - src: - - src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc - - src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc - plugin: grpc_resolver_dns_ares - uses: - - grpc_base - - grpc_client_channel - - grpc_resolver_dns_selection -- name: grpc_resolver_dns_native - src: - - src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc - plugin: grpc_resolver_dns_native - uses: - - grpc_base - - grpc_client_channel - - grpc_resolver_dns_selection -- name: grpc_resolver_dns_selection - headers: - - src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h - src: - - src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc - uses: - - grpc_base -- name: grpc_resolver_fake - headers: - - src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h - src: - - src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc - plugin: grpc_resolver_fake - uses: - - grpc_base - - grpc_client_channel -- name: grpc_resolver_sockaddr - src: - - src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc - plugin: grpc_resolver_sockaddr - uses: - - grpc_base - - grpc_client_channel -- name: grpc_resolver_xds - src: - - src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc - plugin: grpc_resolver_xds - uses: - - grpc_base - - grpc_client_channel - - grpc_xds_client -- name: grpc_resolver_xds_secure - src: - - src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc - plugin: grpc_resolver_xds - uses: - - grpc_base - - grpc_client_channel - - grpc_secure - - grpc_xds_client_secure -- name: grpc_secure - public_headers: - - include/grpc/grpc_security.h - headers: - - src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h - - src/core/ext/filters/client_channel/lb_policy/xds/xds.h - - src/core/lib/security/context/security_context.h - - src/core/lib/security/credentials/alts/alts_credentials.h - - src/core/lib/security/credentials/composite/composite_credentials.h - - src/core/lib/security/credentials/credentials.h - - src/core/lib/security/credentials/fake/fake_credentials.h - - src/core/lib/security/credentials/google_default/google_default_credentials.h - - src/core/lib/security/credentials/iam/iam_credentials.h - - src/core/lib/security/credentials/jwt/json_token.h - - src/core/lib/security/credentials/jwt/jwt_credentials.h - - src/core/lib/security/credentials/jwt/jwt_verifier.h - - src/core/lib/security/credentials/local/local_credentials.h - - src/core/lib/security/credentials/oauth2/oauth2_credentials.h - - src/core/lib/security/credentials/plugin/plugin_credentials.h - - src/core/lib/security/credentials/ssl/ssl_credentials.h - - src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h - - src/core/lib/security/credentials/tls/tls_credentials.h - - src/core/lib/security/security_connector/alts/alts_security_connector.h - - src/core/lib/security/security_connector/fake/fake_security_connector.h - - src/core/lib/security/security_connector/load_system_roots.h - - src/core/lib/security/security_connector/load_system_roots_linux.h - - src/core/lib/security/security_connector/local/local_security_connector.h - - src/core/lib/security/security_connector/security_connector.h - - src/core/lib/security/security_connector/ssl/ssl_security_connector.h - - src/core/lib/security/security_connector/ssl_utils.h - - src/core/lib/security/security_connector/ssl_utils_config.h - - src/core/lib/security/security_connector/tls/tls_security_connector.h - - src/core/lib/security/transport/auth_filters.h - - src/core/lib/security/transport/secure_endpoint.h - - src/core/lib/security/transport/security_handshaker.h - - src/core/lib/security/transport/target_authority_table.h - - src/core/lib/security/transport/tsi_error.h - - src/core/lib/security/util/json_util.h - src: - - src/core/lib/http/httpcli_security_connector.cc - - src/core/lib/security/context/security_context.cc - - src/core/lib/security/credentials/alts/alts_credentials.cc - - src/core/lib/security/credentials/composite/composite_credentials.cc - - src/core/lib/security/credentials/credentials.cc - - src/core/lib/security/credentials/credentials_metadata.cc - - src/core/lib/security/credentials/fake/fake_credentials.cc - - src/core/lib/security/credentials/google_default/credentials_generic.cc - - src/core/lib/security/credentials/google_default/google_default_credentials.cc - - src/core/lib/security/credentials/iam/iam_credentials.cc - - src/core/lib/security/credentials/jwt/json_token.cc - - src/core/lib/security/credentials/jwt/jwt_credentials.cc - - src/core/lib/security/credentials/jwt/jwt_verifier.cc - - src/core/lib/security/credentials/local/local_credentials.cc - - src/core/lib/security/credentials/oauth2/oauth2_credentials.cc - - src/core/lib/security/credentials/plugin/plugin_credentials.cc - - src/core/lib/security/credentials/ssl/ssl_credentials.cc - - src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc - - src/core/lib/security/credentials/tls/tls_credentials.cc - - src/core/lib/security/security_connector/alts/alts_security_connector.cc - - src/core/lib/security/security_connector/fake/fake_security_connector.cc - - src/core/lib/security/security_connector/load_system_roots_fallback.cc - - src/core/lib/security/security_connector/load_system_roots_linux.cc - - src/core/lib/security/security_connector/local/local_security_connector.cc - - src/core/lib/security/security_connector/security_connector.cc - - src/core/lib/security/security_connector/ssl/ssl_security_connector.cc - - src/core/lib/security/security_connector/ssl_utils.cc - - src/core/lib/security/security_connector/ssl_utils_config.cc - - src/core/lib/security/security_connector/tls/tls_security_connector.cc - - src/core/lib/security/transport/client_auth_filter.cc - - src/core/lib/security/transport/secure_endpoint.cc - - src/core/lib/security/transport/security_handshaker.cc - - src/core/lib/security/transport/server_auth_filter.cc - - src/core/lib/security/transport/target_authority_table.cc - - src/core/lib/security/transport/tsi_error.cc - - src/core/lib/security/util/json_util.cc - - src/core/lib/surface/init_secure.cc - uses: - - alts_tsi - - grpc_base - - grpc_transport_chttp2_alpn - - tsi - - grpc_shadow_boringssl -- name: grpc_server_backward_compatibility - headers: - - src/core/ext/filters/workarounds/workaround_utils.h - src: - - src/core/ext/filters/workarounds/workaround_utils.cc - uses: - - grpc_base -- name: grpc_shadow_boringssl - headers: - - src/core/tsi/grpc_shadow_boringssl.h -- name: grpc_test_util_base - headers: - - src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h - - test/core/end2end/cq_verifier.h - - test/core/end2end/fixtures/http_proxy_fixture.h - - test/core/end2end/fixtures/local_util.h - - test/core/end2end/fixtures/proxy.h - - test/core/iomgr/endpoint_tests.h - - test/core/util/debugger_macros.h - - test/core/util/fuzzer_util.h - - test/core/util/grpc_profiler.h - - test/core/util/histogram.h - - test/core/util/memory_counters.h - - test/core/util/mock_endpoint.h - - test/core/util/parse_hexstring.h - - test/core/util/passthru_endpoint.h - - test/core/util/port.h - - test/core/util/port_server_client.h - - test/core/util/slice_splitter.h - - test/core/util/subprocess.h - - test/core/util/test_config.h - - test/core/util/test_lb_policies.h - - test/core/util/tracer_util.h - - test/core/util/trickle_endpoint.h - src: - - src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc - - test/core/end2end/cq_verifier.cc - - test/core/end2end/fixtures/http_proxy_fixture.cc - - test/core/end2end/fixtures/local_util.cc - - test/core/end2end/fixtures/proxy.cc - - test/core/iomgr/endpoint_tests.cc - - test/core/util/debugger_macros.cc - - test/core/util/fuzzer_util.cc - - test/core/util/grpc_profiler.cc - - test/core/util/histogram.cc - - test/core/util/memory_counters.cc - - test/core/util/mock_endpoint.cc - - test/core/util/parse_hexstring.cc - - test/core/util/passthru_endpoint.cc - - test/core/util/port.cc - - test/core/util/port_isolated_runtime_environment.cc - - test/core/util/port_server_client.cc - - test/core/util/slice_splitter.cc - - test/core/util/subprocess_posix.cc - - test/core/util/subprocess_windows.cc - - test/core/util/test_config.cc - - test/core/util/test_lb_policies.cc - - test/core/util/tracer_util.cc - - test/core/util/trickle_endpoint.cc - deps: - - gpr - uses: - - cmdline - - grpc_base - - grpc_client_channel - - grpc_transport_chttp2 -- name: grpc_trace - src: - - src/core/lib/debug/trace.cc - deps: - - gpr -- name: grpc_trace_headers - headers: - - src/core/lib/debug/trace.h - deps: - - gpr -- name: grpc_transport_chttp2 - headers: - - src/core/ext/transport/chttp2/transport/bin_decoder.h - - src/core/ext/transport/chttp2/transport/bin_encoder.h - - src/core/ext/transport/chttp2/transport/chttp2_transport.h - - src/core/ext/transport/chttp2/transport/context_list.h - - src/core/ext/transport/chttp2/transport/flow_control.h - - src/core/ext/transport/chttp2/transport/frame.h - - src/core/ext/transport/chttp2/transport/frame_data.h - - src/core/ext/transport/chttp2/transport/frame_goaway.h - - src/core/ext/transport/chttp2/transport/frame_ping.h - - src/core/ext/transport/chttp2/transport/frame_rst_stream.h - - src/core/ext/transport/chttp2/transport/frame_settings.h - - src/core/ext/transport/chttp2/transport/frame_window_update.h - - src/core/ext/transport/chttp2/transport/hpack_encoder.h - - src/core/ext/transport/chttp2/transport/hpack_parser.h - - src/core/ext/transport/chttp2/transport/hpack_table.h - - src/core/ext/transport/chttp2/transport/http2_settings.h - - src/core/ext/transport/chttp2/transport/huffsyms.h - - src/core/ext/transport/chttp2/transport/incoming_metadata.h - - src/core/ext/transport/chttp2/transport/internal.h - - src/core/ext/transport/chttp2/transport/stream_map.h - - src/core/ext/transport/chttp2/transport/varint.h - src: - - src/core/ext/transport/chttp2/transport/bin_decoder.cc - - src/core/ext/transport/chttp2/transport/bin_encoder.cc - - src/core/ext/transport/chttp2/transport/chttp2_plugin.cc - - src/core/ext/transport/chttp2/transport/chttp2_transport.cc - - src/core/ext/transport/chttp2/transport/context_list.cc - - src/core/ext/transport/chttp2/transport/flow_control.cc - - src/core/ext/transport/chttp2/transport/frame_data.cc - - src/core/ext/transport/chttp2/transport/frame_goaway.cc - - src/core/ext/transport/chttp2/transport/frame_ping.cc - - src/core/ext/transport/chttp2/transport/frame_rst_stream.cc - - src/core/ext/transport/chttp2/transport/frame_settings.cc - - src/core/ext/transport/chttp2/transport/frame_window_update.cc - - src/core/ext/transport/chttp2/transport/hpack_encoder.cc - - src/core/ext/transport/chttp2/transport/hpack_parser.cc - - src/core/ext/transport/chttp2/transport/hpack_table.cc - - src/core/ext/transport/chttp2/transport/http2_settings.cc - - src/core/ext/transport/chttp2/transport/huffsyms.cc - - src/core/ext/transport/chttp2/transport/incoming_metadata.cc - - src/core/ext/transport/chttp2/transport/parsing.cc - - src/core/ext/transport/chttp2/transport/stream_lists.cc - - src/core/ext/transport/chttp2/transport/stream_map.cc - - src/core/ext/transport/chttp2/transport/varint.cc - - src/core/ext/transport/chttp2/transport/writing.cc - plugin: grpc_chttp2_plugin - uses: - - grpc_base - - grpc_transport_chttp2_alpn - - grpc_http_filters -- name: grpc_transport_chttp2_alpn - headers: - - src/core/ext/transport/chttp2/alpn/alpn.h - src: - - src/core/ext/transport/chttp2/alpn/alpn.cc - deps: - - gpr -- name: grpc_transport_chttp2_client_connector - headers: - - src/core/ext/transport/chttp2/client/authority.h - - src/core/ext/transport/chttp2/client/chttp2_connector.h - src: - - src/core/ext/transport/chttp2/client/authority.cc - - src/core/ext/transport/chttp2/client/chttp2_connector.cc - uses: - - grpc_transport_chttp2 - - grpc_base - - grpc_client_channel -- name: grpc_transport_chttp2_client_insecure - src: - - src/core/ext/transport/chttp2/client/insecure/channel_create.cc - - src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc - uses: - - grpc_transport_chttp2_client_connector - - grpc_transport_chttp2 - - grpc_base - - grpc_client_channel -- name: grpc_transport_chttp2_client_secure - src: - - src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc - uses: - - grpc_transport_chttp2 - - grpc_base - - grpc_client_channel - - grpc_secure - - grpc_transport_chttp2_client_connector -- name: grpc_transport_chttp2_server - headers: - - src/core/ext/transport/chttp2/server/chttp2_server.h - src: - - src/core/ext/transport/chttp2/server/chttp2_server.cc - uses: - - grpc_transport_chttp2 - - grpc_base -- name: grpc_transport_chttp2_server_insecure - src: - - src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc - - src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc - uses: - - grpc_transport_chttp2 - - grpc_base - - grpc_transport_chttp2_server -- name: grpc_transport_chttp2_server_secure - src: - - src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc - uses: - - grpc_transport_chttp2 - - grpc_base - - grpc_secure - - grpc_transport_chttp2_server -- name: grpc_transport_cronet_client_secure - public_headers: - - include/grpc/grpc_cronet.h - - include/grpc/grpc_security.h - - include/grpc/grpc_security_constants.h - headers: - - src/core/ext/transport/cronet/client/secure/cronet_channel_create.h - - src/core/ext/transport/cronet/transport/cronet_transport.h - - third_party/objective_c/Cronet/bidirectional_stream_c.h - src: - - src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc - - src/core/ext/transport/cronet/transport/cronet_api_dummy.cc - - src/core/ext/transport/cronet/transport/cronet_transport.cc -- name: grpc_transport_inproc - src: - - src/core/ext/transport/inproc/inproc_plugin.cc - - src/core/ext/transport/inproc/inproc_transport.cc - plugin: grpc_inproc_plugin - uses: - - grpc_transport_inproc_headers - - grpc_base -- name: grpc_transport_inproc_headers - headers: - - src/core/ext/transport/inproc/inproc_transport.h - uses: - - grpc_base_headers -- name: grpc_workaround_cronet_compression_filter - headers: - - src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h - src: - - src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc - plugin: grpc_workaround_cronet_compression_filter - uses: - - grpc_base - - grpc_server_backward_compatibility -- name: grpc_xds_client - headers: - - src/core/ext/filters/client_channel/xds/xds_api.h - - src/core/ext/filters/client_channel/xds/xds_bootstrap.h - - src/core/ext/filters/client_channel/xds/xds_channel.h - - src/core/ext/filters/client_channel/xds/xds_channel_args.h - - src/core/ext/filters/client_channel/xds/xds_client.h - - src/core/ext/filters/client_channel/xds/xds_client_stats.h - src: - - src/core/ext/filters/client_channel/xds/xds_api.cc - - src/core/ext/filters/client_channel/xds/xds_bootstrap.cc - - src/core/ext/filters/client_channel/xds/xds_channel.cc - - src/core/ext/filters/client_channel/xds/xds_client.cc - - src/core/ext/filters/client_channel/xds/xds_client_stats.cc - uses: - - envoy_ads_upb - - grpc_base - - grpc_client_channel -- name: grpc_xds_client_secure - headers: - - src/core/ext/filters/client_channel/xds/xds_api.h - - src/core/ext/filters/client_channel/xds/xds_bootstrap.h - - src/core/ext/filters/client_channel/xds/xds_channel.h - - src/core/ext/filters/client_channel/xds/xds_channel_args.h - - src/core/ext/filters/client_channel/xds/xds_client.h - - src/core/ext/filters/client_channel/xds/xds_client_stats.h - src: - - src/core/ext/filters/client_channel/xds/xds_api.cc - - src/core/ext/filters/client_channel/xds/xds_bootstrap.cc - - src/core/ext/filters/client_channel/xds/xds_channel_secure.cc - - src/core/ext/filters/client_channel/xds/xds_client.cc - - src/core/ext/filters/client_channel/xds/xds_client_stats.cc - uses: - - envoy_ads_upb - - grpc_base - - grpc_client_channel - - grpc_secure -- name: grpcpp_channelz_proto - src: - - src/proto/grpc/channelz/channelz.proto -- name: proto_gen_validate_upb - headers: - - src/core/ext/upb-generated/gogoproto/gogo.upb.h - - src/core/ext/upb-generated/validate/validate.upb.h - src: - - src/core/ext/upb-generated/gogoproto/gogo.upb.c - - src/core/ext/upb-generated/validate/validate.upb.c - uses: - - google_api_upb -- name: transport_security_test_lib - headers: - - test/core/tsi/transport_security_test_lib.h - src: - - test/core/tsi/transport_security_test_lib.cc - deps: - - grpc -- name: tsi - headers: - - src/core/tsi/fake_transport_security.h - - src/core/tsi/local_transport_security.h - - src/core/tsi/ssl/session_cache/ssl_session.h - - src/core/tsi/ssl/session_cache/ssl_session_cache.h - - src/core/tsi/ssl_transport_security.h - - src/core/tsi/ssl_types.h - - src/core/tsi/transport_security_grpc.h - src: - - src/core/tsi/fake_transport_security.cc - - src/core/tsi/local_transport_security.cc - - src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc - - src/core/tsi/ssl/session_cache/ssl_session_cache.cc - - src/core/tsi/ssl/session_cache/ssl_session_openssl.cc - - src/core/tsi/ssl_transport_security.cc - - src/core/tsi/transport_security_grpc.cc - deps: - - gpr - uses: - - tsi_interface - - grpc_base - - grpc_trace - - grpc_shadow_boringssl -- name: tsi_interface - headers: - - src/core/tsi/transport_security.h - - src/core/tsi/transport_security_interface.h - src: - - src/core/tsi/transport_security.cc - deps: - - gpr - uses: - - grpc_trace -libs: -- name: address_sorting - build: all - language: c - headers: - - third_party/address_sorting/address_sorting_internal.h - - third_party/address_sorting/include/address_sorting/address_sorting.h - src: - - third_party/address_sorting/address_sorting.c - - third_party/address_sorting/address_sorting_posix.c - - third_party/address_sorting/address_sorting_windows.c - secure: false -- name: alts_test_util - build: private - language: c - headers: - - test/core/tsi/alts/crypt/gsec_test_util.h - - test/core/tsi/alts/handshaker/alts_handshaker_service_api_test_lib.h - src: - - test/core/tsi/alts/crypt/gsec_test_util.cc - - test/core/tsi/alts/handshaker/alts_handshaker_service_api_test_lib.cc - deps: - - grpc - filegroups: - - grpc_test_util_base - secure: true -- name: engine_passthrough - build: test - language: c - src: - - test/core/end2end/engine_passthrough.cc - dll: only -- name: gpr - build: all - language: c - filegroups: - - gpr_base - secure: false -- name: grpc - build: all - language: c - src: - - src/core/lib/surface/init.cc - baselib: true - deps_linkage: static - dll: true - filegroups: - - grpc_base - - grpc_transport_chttp2_server_secure - - grpc_transport_chttp2_client_secure - - grpc_transport_chttp2_server_insecure - - grpc_transport_chttp2_client_insecure - - grpc_transport_inproc - - grpc_lb_policy_grpclb_secure - - grpc_lb_policy_cds_secure - - grpc_lb_policy_xds_secure - - grpc_lb_policy_pick_first - - grpc_lb_policy_round_robin - - grpc_resolver_dns_ares - - grpc_resolver_dns_native - - grpc_resolver_sockaddr - - grpc_resolver_fake - - grpc_resolver_xds_secure - - grpc_secure - - census - - grpc_client_idle_filter - - grpc_max_age_filter - - grpc_message_size_filter - - grpc_deadline_filter - - grpc_client_authority_filter - - grpc_workaround_cronet_compression_filter - - grpc_server_backward_compatibility - generate_plugin_registry: true - secure: true -- name: grpc_cronet - build: all - language: c - src: - - src/core/ext/transport/cronet/plugin_registry/grpc_cronet_plugin_registry.cc - - src/core/lib/surface/init.cc - baselib: true - deps_linkage: static - dll: true - filegroups: - - grpc_base - - grpc_transport_cronet_client_secure - - grpc_transport_chttp2_client_secure - platforms: - - linux - secure: true -- name: grpc_test_util - build: private - language: c - headers: - - test/core/end2end/data/ssl_test_data.h - - test/core/security/oauth2_utils.h - src: - - test/core/end2end/data/client_certs.cc - - test/core/end2end/data/server1_cert.cc - - test/core/end2end/data/server1_key.cc - - test/core/end2end/data/test_root_cert.cc - - test/core/security/oauth2_utils.cc - deps: - - gpr - - grpc - filegroups: - - grpc_test_util_base -- name: grpc_test_util_unsecure - build: private - language: c - deps: - - gpr - - grpc_unsecure - filegroups: - - grpc_test_util_base - secure: false -- name: grpc_unsecure - build: all - language: c - src: - - src/core/lib/surface/init.cc - - src/core/lib/surface/init_unsecure.cc - baselib: true - deps_linkage: static - dll: true - filegroups: - - grpc_base - - grpc_transport_chttp2_server_insecure - - grpc_transport_chttp2_client_insecure - - grpc_transport_inproc - - grpc_resolver_dns_ares - - grpc_resolver_dns_native - - grpc_resolver_sockaddr - - grpc_resolver_fake - - grpc_resolver_xds - - grpc_lb_policy_grpclb - - grpc_lb_policy_cds - - grpc_lb_policy_xds - - grpc_lb_policy_pick_first - - grpc_lb_policy_round_robin - - census - - grpc_client_idle_filter - - grpc_max_age_filter - - grpc_message_size_filter - - grpc_deadline_filter - - grpc_client_authority_filter - - grpc_workaround_cronet_compression_filter - - grpc_server_backward_compatibility - generate_plugin_registry: true - secure: false -- name: reconnect_server - build: private - language: c - headers: - - test/core/util/reconnect_server.h - src: - - test/core/util/reconnect_server.cc - deps: - - test_tcp_server - - grpc_test_util - - grpc - - gpr -- name: test_tcp_server - build: private - language: c - headers: - - test/core/util/test_tcp_server.h - src: - - test/core/util/test_tcp_server.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: bm_callback_test_service_impl - build: test - language: c++ - headers: - - test/cpp/microbenchmarks/callback_test_service.h - src: - - src/proto/grpc/testing/echo.proto - - test/cpp/microbenchmarks/callback_test_service.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - defaults: benchmark -- name: dns_test_util - build: private - language: c++ - headers: - - test/cpp/naming/dns_test_util.h - src: - - test/cpp/naming/dns_test_util.cc - deps: - - gpr -- name: grpc++ - build: all - language: c++ - headers: - - include/grpc++/impl/codegen/core_codegen.h - - include/grpcpp/impl/codegen/core_codegen.h - - src/cpp/client/secure_credentials.h - - src/cpp/common/secure_auth_context.h - - src/cpp/common/tls_credentials_options_util.h - - src/cpp/server/secure_server_credentials.h - src: - - src/cpp/client/insecure_credentials.cc - - src/cpp/client/secure_credentials.cc - - src/cpp/common/auth_property_iterator.cc - - src/cpp/common/secure_auth_context.cc - - src/cpp/common/secure_channel_arguments.cc - - src/cpp/common/secure_create_auth_context.cc - - src/cpp/common/tls_credentials_options.cc - - src/cpp/common/tls_credentials_options_util.cc - - src/cpp/server/insecure_server_credentials.cc - - src/cpp/server/secure_server_credentials.cc - deps: - - grpc - baselib: true - dll: true - filegroups: - - grpc++_base - - grpc++_codegen_base - - grpc++_codegen_proto - - grpc++_codegen_base_src - secure: check -- name: grpc++_alts - build: all - language: c++ - public_headers: - - include/grpcpp/impl/codegen/security/auth_context.h - - include/grpcpp/security/alts_context.h - - include/grpcpp/security/alts_util.h - src: - - src/cpp/common/alts_context.cc - - src/cpp/common/alts_util.cc - deps: - - grpc++ - - gpr - baselib: true - filegroups: - - alts_upb -- name: grpc++_core_stats - build: private - language: c++ - headers: - - src/cpp/util/core_stats.h - src: - - src/proto/grpc/core/stats.proto - - src/cpp/util/core_stats.cc - deps: - - grpc++ -- name: grpc++_error_details - build: all - language: c++ - public_headers: - - include/grpc++/support/error_details.h - - include/grpcpp/support/error_details.h - - include/grpcpp/support/error_details_impl.h - src: - - src/proto/grpc/status/status.proto - - src/cpp/util/error_details.cc - deps: - - grpc++ - baselib: true -- name: grpc++_proto_reflection_desc_db - build: private - language: c++ - headers: - - test/cpp/util/proto_reflection_descriptor_database.h - src: - - test/cpp/util/proto_reflection_descriptor_database.cc - deps: - - grpc++ - - grpc - filegroups: - - grpc++_reflection_proto - - grpc++_config_proto -- name: grpc++_reflection - build: all - language: c++ - public_headers: - - include/grpc++/ext/proto_server_reflection_plugin.h - - include/grpcpp/ext/proto_server_reflection_plugin.h - - include/grpcpp/ext/proto_server_reflection_plugin_impl.h - headers: - - src/cpp/ext/proto_server_reflection.h - src: - - src/cpp/ext/proto_server_reflection.cc - - src/cpp/ext/proto_server_reflection_plugin.cc - deps: - - grpc++ - - grpc - filegroups: - - grpc++_reflection_proto -- name: grpc++_test_config - build: private - language: c++ - headers: - - test/cpp/util/test_config.h - src: - - test/cpp/util/test_config_cc.cc -- name: grpc++_test_util - build: private - language: c++ - headers: - - test/cpp/end2end/test_health_check_service_impl.h - - test/cpp/end2end/test_service_impl.h - - test/cpp/util/byte_buffer_proto_helper.h - - test/cpp/util/channel_trace_proto_helper.h - - test/cpp/util/create_test_channel.h - - test/cpp/util/string_ref_helper.h - - test/cpp/util/subprocess.h - - test/cpp/util/test_credentials_provider.h - src: - - src/proto/grpc/channelz/channelz.proto - - src/proto/grpc/health/v1/health.proto - - src/proto/grpc/testing/echo_messages.proto - - src/proto/grpc/testing/echo.proto - - src/proto/grpc/testing/duplicate/echo_duplicate.proto - - src/proto/grpc/testing/simple_messages.proto - - test/cpp/end2end/test_health_check_service_impl.cc - - test/cpp/end2end/test_service_impl.cc - - test/cpp/util/byte_buffer_proto_helper.cc - - test/cpp/util/channel_trace_proto_helper.cc - - test/cpp/util/create_test_channel.cc - - test/cpp/util/string_ref_helper.cc - - test/cpp/util/subprocess.cc - - test/cpp/util/test_credentials_provider.cc - deps: - - grpc++ - - grpc_test_util - - grpc - filegroups: - - grpc++_codegen_base - - grpc++_codegen_base_src - - grpc++_codegen_proto - - grpc++_config_proto -- name: grpc++_test_util_unsecure - build: private - language: c++ - headers: - - test/cpp/end2end/test_health_check_service_impl.h - - test/cpp/end2end/test_service_impl.h - - test/cpp/util/byte_buffer_proto_helper.h - - test/cpp/util/string_ref_helper.h - - test/cpp/util/subprocess.h - src: - - src/proto/grpc/health/v1/health.proto - - src/proto/grpc/testing/echo_messages.proto - - src/proto/grpc/testing/echo.proto - - src/proto/grpc/testing/duplicate/echo_duplicate.proto - - src/proto/grpc/testing/simple_messages.proto - - test/cpp/end2end/test_health_check_service_impl.cc - - test/cpp/end2end/test_service_impl.cc - - test/cpp/util/byte_buffer_proto_helper.cc - - test/cpp/util/string_ref_helper.cc - - test/cpp/util/subprocess.cc - deps: - - grpc++_unsecure - - grpc_test_util_unsecure - - grpc_unsecure - filegroups: - - grpc++_codegen_base - - grpc++_codegen_base_src - - grpc++_codegen_proto - - grpc++_config_proto -- name: grpc++_unsecure - build: all - language: c++ - src: - - src/cpp/client/insecure_credentials.cc - - src/cpp/common/insecure_create_auth_context.cc - - src/cpp/server/insecure_server_credentials.cc - deps: - - gpr - - grpc_unsecure - baselib: true - dll: true - filegroups: - - grpc++_base_unsecure - - grpc++_codegen_base - - grpc++_codegen_base_src - secure: false -- name: grpc_benchmark - build: test - language: c++ - headers: - - test/cpp/microbenchmarks/fullstack_context_mutators.h - - test/cpp/microbenchmarks/fullstack_fixtures.h - - test/cpp/microbenchmarks/helpers.h - src: - - test/cpp/microbenchmarks/helpers.cc - deps: - - benchmark - - grpc++_unsecure - - grpc_test_util_unsecure - - grpc_unsecure - defaults: benchmark -- name: grpc_cli_libs - build: private - language: c++ - headers: - - test/cpp/util/cli_call.h - - test/cpp/util/cli_credentials.h - - test/cpp/util/config_grpc_cli.h - - test/cpp/util/grpc_tool.h - - test/cpp/util/proto_file_parser.h - - test/cpp/util/service_describer.h - src: - - test/cpp/util/cli_call.cc - - test/cpp/util/cli_credentials.cc - - test/cpp/util/grpc_tool.cc - - test/cpp/util/proto_file_parser.cc - - test/cpp/util/service_describer.cc - deps: - - grpc++_proto_reflection_desc_db - - grpc++ - - grpc - filegroups: - - grpc++_reflection_proto - - grpc++_config_proto -- name: grpc_plugin_support - build: protoc - language: c++ - headers: - - src/compiler/config.h - - src/compiler/config_protobuf.h - - src/compiler/cpp_generator.h - - src/compiler/cpp_generator_helpers.h - - src/compiler/csharp_generator.h - - src/compiler/csharp_generator_helpers.h - - src/compiler/generator_helpers.h - - src/compiler/node_generator.h - - src/compiler/node_generator_helpers.h - - src/compiler/objective_c_generator.h - - src/compiler/objective_c_generator_helpers.h - - src/compiler/php_generator.h - - src/compiler/php_generator_helpers.h - - src/compiler/protobuf_plugin.h - - src/compiler/python_generator.h - - src/compiler/python_generator_helpers.h - - src/compiler/python_private_generator.h - - src/compiler/ruby_generator.h - - src/compiler/ruby_generator_helpers-inl.h - - src/compiler/ruby_generator_map-inl.h - - src/compiler/ruby_generator_string-inl.h - - src/compiler/schema_interface.h - src: - - src/compiler/cpp_generator.cc - - src/compiler/csharp_generator.cc - - src/compiler/node_generator.cc - - src/compiler/objective_c_generator.cc - - src/compiler/php_generator.cc - - src/compiler/python_generator.cc - - src/compiler/ruby_generator.cc - filegroups: - - grpc++_config_proto - secure: false -- name: grpcpp_channelz - build: all - language: c++ - public_headers: - - include/grpcpp/ext/channelz_service_plugin.h - - include/grpcpp/ext/channelz_service_plugin_impl.h - headers: - - src/cpp/server/channelz/channelz_service.h - src: - - src/cpp/server/channelz/channelz_service.cc - - src/cpp/server/channelz/channelz_service_plugin.cc - deps: - - grpc++ - - grpc - filegroups: - - grpcpp_channelz_proto -- name: http2_client_main - build: private - language: c++ - headers: - - test/cpp/interop/http2_client.h - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/http2_client.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - grpc++_test_config -- name: interop_client_helper - build: private - language: c++ - headers: - - test/cpp/interop/client_helper.h - src: - - src/proto/grpc/testing/messages.proto - - test/cpp/interop/client_helper.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: interop_client_main - build: private - language: c++ - headers: - - test/cpp/interop/interop_client.h - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/client.cc - - test/cpp/interop/interop_client.cc - deps: - - interop_client_helper - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: interop_server_helper - build: private - language: c++ - headers: - - test/cpp/interop/server_helper.h - src: - - test/cpp/interop/server_helper.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: interop_server_lib - build: private - language: c++ - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/interop_server.cc - deps: - - interop_server_helper - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: interop_server_main - build: private - language: c++ - src: - - test/cpp/interop/interop_server_bootstrap.cc - deps: - - interop_server_lib -- name: qps - build: private - language: c++ - headers: - - test/cpp/qps/benchmark_config.h - - test/cpp/qps/client.h - - test/cpp/qps/driver.h - - test/cpp/qps/histogram.h - - test/cpp/qps/interarrival.h - - test/cpp/qps/parse_json.h - - test/cpp/qps/qps_server_builder.h - - test/cpp/qps/qps_worker.h - - test/cpp/qps/report.h - - test/cpp/qps/server.h - - test/cpp/qps/stats.h - - test/cpp/qps/usage_timer.h - src: - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/payloads.proto - - src/proto/grpc/testing/stats.proto - - src/proto/grpc/testing/control.proto - - src/proto/grpc/testing/benchmark_service.proto - - src/proto/grpc/testing/report_qps_scenario_service.proto - - src/proto/grpc/testing/worker_service.proto - - test/cpp/qps/benchmark_config.cc - - test/cpp/qps/client_async.cc - - test/cpp/qps/client_callback.cc - - test/cpp/qps/client_sync.cc - - test/cpp/qps/driver.cc - - test/cpp/qps/parse_json.cc - - test/cpp/qps/qps_server_builder.cc - - test/cpp/qps/qps_worker.cc - - test/cpp/qps/report.cc - - test/cpp/qps/server_async.cc - - test/cpp/qps/server_callback.cc - - test/cpp/qps/server_sync.cc - - test/cpp/qps/usage_timer.cc - deps: - - grpc_test_util - - grpc++_test_util - - grpc++_core_stats - - grpc++ - - grpc -- name: grpc_csharp_ext - build: all - language: csharp - src: - - src/csharp/ext/grpc_csharp_ext.c - deps: - - grpc - - gpr - LDFLAGS: $(if $(subst Linux,,$(SYSTEM)),,-Wl$(comma)-wrap$(comma)memcpy) - deps_linkage: static - dll: only -targets: -- name: algorithm_test - build: test - language: c - src: - - test/core/compression/algorithm_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: alloc_test - build: test - language: c - src: - - test/core/gpr/alloc_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: alpn_test - build: test - language: c - src: - - test/core/transport/chttp2/alpn_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: alts_credentials_fuzzer - build: fuzzer - language: c - src: - - test/core/security/alts_credentials_fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/security/corpus/alts_credentials_corpus - maxlen: 2048 -- name: arena_test - cpu_cost: 10 - build: test - language: c - src: - - test/core/gpr/arena_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: avl_test - build: test - language: c - src: - - test/core/avl/avl_test.cc - deps: - - gpr - - grpc_test_util - - grpc - uses_polling: false -- name: bad_server_response_test - build: test - language: c - src: - - test/core/end2end/bad_server_response_test.cc - deps: - - test_tcp_server - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: bin_decoder_test - build: test - language: c - src: - - test/core/transport/chttp2/bin_decoder_test.cc - deps: - - grpc_test_util - - grpc - uses_polling: false -- name: bin_encoder_test - build: test - language: c - src: - - test/core/transport/chttp2/bin_encoder_test.cc - deps: - - grpc_test_util - - grpc - uses_polling: false -- name: buffer_list_test - build: test - language: c - src: - - test/core/iomgr/buffer_list_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - linux -- name: channel_create_test - build: test - language: c - src: - - test/core/surface/channel_create_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: check_epollexclusive - build: tool - language: c - src: - - test/build/check_epollexclusive.c - deps: - - grpc - - gpr -- name: chttp2_hpack_encoder_test - build: test - language: c - src: - - test/core/transport/chttp2/hpack_encoder_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: chttp2_stream_map_test - build: test - language: c - src: - - test/core/transport/chttp2/stream_map_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: chttp2_varint_test - build: test - language: c - src: - - test/core/transport/chttp2/varint_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: client_fuzzer - build: fuzzer - language: c - src: - - test/core/end2end/fuzzers/client_fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/end2end/fuzzers/client_fuzzer_corpus - dict: test/core/end2end/fuzzers/hpack.dictionary - maxlen: 2048 -- name: close_fd_test - build: test - language: c - src: - - test/core/bad_connection/close_fd_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_configs: - - tsan - platforms: - - mac - - linux - - posix -- name: cmdline_test - build: test - language: c - src: - - test/core/util/cmdline_test.cc - deps: - - gpr - - grpc_test_util - - grpc - uses_polling: false -- name: combiner_test - cpu_cost: 10 - build: test - language: c - src: - - test/core/iomgr/combiner_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: compression_test - build: test - language: c - src: - - test/core/compression/compression_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: concurrent_connectivity_test - cpu_cost: 2.0 - build: test - language: c - src: - - test/core/surface/concurrent_connectivity_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: connection_refused_test - cpu_cost: 0.1 - build: test - language: c - src: - - test/core/end2end/connection_refused_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: dns_resolver_connectivity_test - cpu_cost: 0.1 - build: test - language: c - src: - - test/core/client_channel/resolvers/dns_resolver_connectivity_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: dns_resolver_cooldown_using_ares_resolver_test - build: test - language: c - src: - - test/core/client_channel/resolvers/dns_resolver_cooldown_test.cc - deps: - - grpc_test_util - - grpc - - gpr - args: - - --resolver=ares -- name: dns_resolver_cooldown_using_native_resolver_test - build: test - language: c - src: - - test/core/client_channel/resolvers/dns_resolver_cooldown_test.cc - deps: - - grpc_test_util - - grpc - - gpr - args: - - --resolver=native -- name: dns_resolver_test - build: test - language: c - src: - - test/core/client_channel/resolvers/dns_resolver_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: dualstack_socket_test - cpu_cost: 0.1 - build: test - language: c - src: - - test/core/end2end/dualstack_socket_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: endpoint_pair_test - build: test - language: c - src: - - test/core/iomgr/endpoint_pair_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: error_test - cpu_cost: 30 - build: test - language: c - src: - - test/core/iomgr/error_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: ev_epollex_linux_test - cpu_cost: 3 - build: test - language: c - src: - - test/core/iomgr/ev_epollex_linux_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - linux -- name: fake_resolver_test - build: test - language: c - src: - - test/core/client_channel/resolvers/fake_resolver_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: fake_transport_security_test - build: test - language: c - src: - - test/core/tsi/fake_transport_security_test.cc - deps: - - gpr - - grpc_test_util - - grpc - filegroups: - - transport_security_test_lib - platforms: - - linux - - posix - - mac -- name: fd_conservation_posix_test - build: test - language: c - src: - - test/core/iomgr/fd_conservation_posix_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: fd_posix_test - build: test - language: c - src: - - test/core/iomgr/fd_posix_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: fling_client - build: test - run: false - language: c - src: - - test/core/fling/client.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: fling_server - build: test - run: false - language: c - src: - - test/core/fling/server.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: fling_stream_test - cpu_cost: 1.5 - build: test - language: c - src: - - test/core/fling/fling_stream_test.cc - deps: - - grpc_test_util - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: fling_test - cpu_cost: 1.5 - build: test - language: c - src: - - test/core/fling/fling_test.cc - deps: - - grpc_test_util - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: fork_test - build: test - language: c - src: - - test/core/gprpp/fork_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - platforms: - - mac - - linux - uses_polling: false -- name: goaway_server_test - cpu_cost: 0.1 - build: test - language: c - src: - - test/core/end2end/goaway_server_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: gpr_cpu_test - cpu_cost: 30 - build: test - language: c - src: - - test/core/gpr/cpu_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_env_test - build: test - language: c - src: - - test/core/gpr/env_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_host_port_test - build: test - language: c - src: - - test/core/gprpp/host_port_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_log_test - build: test - language: c - src: - - test/core/gpr/log_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_manual_constructor_test - cpu_cost: 3 - build: test - language: c - src: - - test/core/gprpp/manual_constructor_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_spinlock_test - cpu_cost: 3 - build: test - language: c - src: - - test/core/gpr/spinlock_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_string_test - build: test - language: c - src: - - test/core/gpr/string_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_sync_test - cpu_cost: 10 - build: test - language: c - src: - - test/core/gpr/sync_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_thd_test - cpu_cost: 10 - build: test - language: c - src: - - test/core/gprpp/thd_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_time_test - build: test - language: c - src: - - test/core/gpr/time_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_tls_test - build: test - language: c - src: - - test/core/gpr/tls_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: gpr_useful_test - build: test - language: c - src: - - test/core/gpr/useful_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: grpc_auth_context_test - build: test - language: c - src: - - test/core/security/auth_context_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: grpc_b64_test - build: test - language: c - src: - - test/core/slice/b64_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: grpc_byte_buffer_reader_test - build: test - language: c - src: - - test/core/surface/byte_buffer_reader_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: grpc_channel_args_test - build: test - language: c - src: - - test/core/channel/channel_args_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: grpc_channel_stack_builder_test - build: test - language: c - src: - - test/core/channel/channel_stack_builder_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: grpc_channel_stack_test - build: test - language: c - src: - - test/core/channel/channel_stack_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: grpc_completion_queue_test - build: test - language: c - src: - - test/core/surface/completion_queue_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: grpc_completion_queue_threading_test - build: test - language: c - src: - - test/core/surface/completion_queue_threading_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: grpc_control_plane_credentials_test - build: test - language: c - src: - - test/core/security/control_plane_credentials_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: grpc_create_jwt - build: tool - language: c - src: - - test/core/security/create_jwt.cc - deps: - - grpc - - gpr - filegroups: - - cmdline - secure: true - uses_polling: false -- name: grpc_credentials_test - build: test - language: c - src: - - test/core/security/credentials_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: grpc_ipv6_loopback_available_test - build: test - language: c - src: - - test/core/iomgr/grpc_ipv6_loopback_available_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: grpc_json_token_test - build: test - language: c - src: - - test/core/security/json_token_test.cc - deps: - - grpc_test_util - - grpc - - gpr - platforms: - - linux - - posix - - mac - uses_polling: false -- name: grpc_jwt_verifier_test - build: test - language: c - src: - - test/core/security/jwt_verifier_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: grpc_print_google_default_creds_token - build: tool - language: c - src: - - test/core/security/print_google_default_creds_token.cc - deps: - - grpc - - gpr - filegroups: - - cmdline - uses_polling: false -- name: grpc_security_connector_test - build: test - language: c - src: - - test/core/security/security_connector_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: grpc_ssl_credentials_test - build: test - language: c - src: - - test/core/security/ssl_credentials_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: grpc_verify_jwt - build: tool - language: c - src: - - test/core/security/verify_jwt.cc - deps: - - grpc - - gpr - filegroups: - - cmdline - uses_polling: false -- name: handshake_client_ssl - build: test - language: c - src: - - test/core/handshake/client_ssl.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - linux - secure: true -- name: handshake_server_ssl - build: test - language: c - headers: - - test/core/handshake/server_ssl_common.h - src: - - test/core/handshake/server_ssl.cc - - test/core/handshake/server_ssl_common.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - linux - secure: true -- name: handshake_server_with_readahead_handshaker - build: test - language: c - headers: - - test/core/handshake/server_ssl_common.h - src: - - test/core/handshake/readahead_handshaker_server_ssl.cc - - test/core/handshake/server_ssl_common.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - linux - secure: true -- name: handshake_verify_peer_options - build: test - language: c - src: - - test/core/handshake/verify_peer_options.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - linux - secure: true -- name: histogram_test - build: test - language: c - src: - - test/core/util/histogram_test.cc - deps: - - grpc_test_util - - gpr - uses_polling: false -- name: hpack_parser_fuzzer_test - build: fuzzer - language: c - src: - - test/core/transport/chttp2/hpack_parser_fuzzer_test.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/transport/chttp2/hpack_parser_corpus - dict: test/core/end2end/fuzzers/hpack.dictionary - maxlen: 512 -- name: hpack_parser_test - build: test - language: c - src: - - test/core/transport/chttp2/hpack_parser_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: hpack_table_test - build: test - language: c - src: - - test/core/transport/chttp2/hpack_table_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: http_parser_test - build: test - language: c - src: - - test/core/http/parser_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: http_request_fuzzer_test - build: fuzzer - language: c - src: - - test/core/http/request_fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/http/request_corpus - maxlen: 2048 -- name: http_response_fuzzer_test - build: fuzzer - language: c - src: - - test/core/http/response_fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/http/response_corpus - maxlen: 2048 -- name: httpcli_format_request_test - build: test - language: c - src: - - test/core/http/format_request_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: httpcli_test - cpu_cost: 0.5 - build: test - language: c - src: - - test/core/http/httpcli_test.cc - deps: - - grpc_test_util - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: httpscli_test - cpu_cost: 0.5 - build: test - language: c - src: - - test/core/http/httpscli_test.cc - deps: - - grpc_test_util - - grpc - - gpr - platforms: - - linux -- name: init_test - build: test - language: c - src: - - test/core/surface/init_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: inproc_callback_test - build: test - language: c - headers: - - test/core/end2end/end2end_tests.h - src: - - test/core/end2end/inproc_callback_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: invalid_call_argument_test - cpu_cost: 0.1 - build: test - language: c - src: - - test/core/end2end/invalid_call_argument_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: json_fuzzer_test - build: fuzzer - language: c - src: - - test/core/json/fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/json/corpus - maxlen: 512 -- name: lame_client_test - build: test - language: c - src: - - test/core/surface/lame_client_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: load_file_test - build: test - language: c - src: - - test/core/iomgr/load_file_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: low_level_ping_pong_benchmark - build: benchmark - language: c - src: - - test/core/network_benchmarks/low_level_ping_pong.cc - deps: - - grpc_test_util - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: message_compress_test - build: test - language: c - src: - - test/core/compression/message_compress_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: minimal_stack_is_minimal_test - build: test - language: c - src: - - test/core/channel/minimal_stack_is_minimal_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: mpmcqueue_test - build: test - language: c - src: - - test/core/iomgr/mpmcqueue_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: multiple_server_queues_test - build: test - language: c - src: - - test/core/end2end/multiple_server_queues_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: murmur_hash_test - build: test - language: c - src: - - test/core/gpr/murmur_hash_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: nanopb_fuzzer_response_test - build: fuzzer - language: c - src: - - test/core/nanopb/fuzzer_response.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/nanopb/corpus_response - maxlen: 128 -- name: nanopb_fuzzer_serverlist_test - build: fuzzer - language: c - src: - - test/core/nanopb/fuzzer_serverlist.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/nanopb/corpus_serverlist - maxlen: 128 -- name: no_server_test - cpu_cost: 0.1 - build: test - language: c - src: - - test/core/end2end/no_server_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: num_external_connectivity_watchers_test - build: test - language: c - src: - - test/core/surface/num_external_connectivity_watchers_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: parse_address_test - build: test - language: c - src: - - test/core/client_channel/parse_address_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: parse_address_with_named_scope_id_test - build: test - language: c - src: - - test/core/client_channel/parse_address_with_named_scope_id_test.cc - deps: - - grpc_test_util - - grpc - - gpr - platforms: - - mac - - linux - - posix - uses_polling: false -- name: percent_decode_fuzzer - build: fuzzer - language: c - src: - - test/core/slice/percent_decode_fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/slice/percent_decode_corpus - maxlen: 32 -- name: percent_encode_fuzzer - build: fuzzer - language: c - src: - - test/core/slice/percent_encode_fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/slice/percent_encode_corpus - maxlen: 32 -- name: percent_encoding_test - build: test - language: c - src: - - test/core/slice/percent_encoding_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: resolve_address_using_ares_resolver_posix_test - build: test - language: c - src: - - test/core/iomgr/resolve_address_posix_test.cc - deps: - - grpc_test_util - - grpc - - gpr - args: - - --resolver=ares - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: resolve_address_using_ares_resolver_test - build: test - language: c - src: - - test/core/iomgr/resolve_address_test.cc - deps: - - grpc_test_util - - grpc - - gpr - args: - - --resolver=ares -- name: resolve_address_using_native_resolver_posix_test - build: test - language: c - src: - - test/core/iomgr/resolve_address_posix_test.cc - deps: - - grpc_test_util - - grpc - - gpr - args: - - --resolver=native - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: resolve_address_using_native_resolver_test - build: test - language: c - src: - - test/core/iomgr/resolve_address_test.cc - deps: - - grpc_test_util - - grpc - - gpr - args: - - --resolver=native -- name: resource_quota_test - cpu_cost: 30 - build: test - language: c - src: - - test/core/iomgr/resource_quota_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: secure_channel_create_test - build: test - language: c - src: - - test/core/surface/secure_channel_create_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: secure_endpoint_test - build: test - language: c - src: - - test/core/security/secure_endpoint_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: sequential_connectivity_test - build: test - language: c - src: - - test/core/surface/sequential_connectivity_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv -- name: server_chttp2_test - build: test - language: c - src: - - test/core/surface/server_chttp2_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: server_fuzzer - build: fuzzer - language: c - src: - - test/core/end2end/fuzzers/server_fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/end2end/fuzzers/server_fuzzer_corpus - dict: test/core/end2end/fuzzers/hpack.dictionary - maxlen: 2048 -- name: server_test - build: test - language: c - src: - - test/core/surface/server_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: slice_buffer_test - build: test - language: c - src: - - test/core/slice/slice_buffer_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: slice_string_helpers_test - build: test - language: c - src: - - test/core/slice/slice_string_helpers_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: slice_test - build: test - language: c - src: - - test/core/slice/slice_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: sockaddr_resolver_test - build: test - language: c - src: - - test/core/client_channel/resolvers/sockaddr_resolver_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: sockaddr_utils_test - build: test - language: c - src: - - test/core/iomgr/sockaddr_utils_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: socket_utils_test - build: test - language: c - src: - - test/core/iomgr/socket_utils_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: ssl_server_fuzzer - build: fuzzer - language: c - src: - - test/core/security/ssl_server_fuzzer.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/security/corpus/ssl_server_corpus - maxlen: 2048 -- name: ssl_transport_security_test - build: test - language: c - src: - - test/core/tsi/ssl_transport_security_test.cc - deps: - - gpr - - grpc_test_util - - grpc - filegroups: - - transport_security_test_lib - platforms: - - linux - - posix - - mac -- name: status_conversion_test - build: test - language: c - src: - - test/core/transport/status_conversion_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: stream_compression_test - build: test - language: c - src: - - test/core/compression/stream_compression_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: stream_owned_slice_test - build: test - language: c - src: - - test/core/transport/stream_owned_slice_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: tcp_client_posix_test - cpu_cost: 0.5 - build: test - language: c - src: - - test/core/iomgr/tcp_client_posix_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: tcp_client_uv_test - cpu_cost: 0.5 - build: test - language: c - src: - - test/core/iomgr/tcp_client_uv_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - native -- name: tcp_posix_test - cpu_cost: 0.2 - build: test - language: c - src: - - test/core/iomgr/tcp_posix_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: tcp_server_posix_test - build: test - language: c - src: - - test/core/iomgr/tcp_server_posix_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: tcp_server_uv_test - build: test - language: c - src: - - test/core/iomgr/tcp_server_uv_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - native -- name: threadpool_test - build: test - language: c - src: - - test/core/iomgr/threadpool_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: time_averaged_stats_test - build: test - language: c - src: - - test/core/iomgr/time_averaged_stats_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: timeout_encoding_test - build: test - language: c - src: - - test/core/transport/timeout_encoding_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: timer_heap_test - build: test - language: c - src: - - test/core/iomgr/timer_heap_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - uses_polling: false -- name: timer_list_test - build: test - language: c - src: - - test/core/iomgr/timer_list_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - uses_polling: false -- name: transport_metadata_test - build: test - language: c - src: - - test/core/transport/metadata_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: transport_security_test - build: test - language: c - src: - - test/core/tsi/transport_security_test.cc - deps: - - grpc_test_util - - grpc - - gpr - platforms: - - linux - - posix - - mac -- name: udp_server_test - build: test - language: c - src: - - test/core/iomgr/udp_server_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - mac - - linux - - posix -- name: uri_fuzzer_test - build: fuzzer - language: c - src: - - test/core/client_channel/uri_fuzzer_test.cc - deps: - - grpc_test_util - - grpc - - gpr - corpus_dirs: - - test/core/client_channel/uri_corpus - maxlen: 128 -- name: uri_parser_test - build: test - language: c - src: - - test/core/client_channel/uri_parser_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: alarm_test - gtest: true - build: test - language: c++ - src: - - test/cpp/common/alarm_test.cc - deps: - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr -- name: alts_concurrent_connectivity_test - build: test - language: c++ - headers: - - test/core/tsi/alts/fake_handshaker/fake_handshaker_server.h - src: - - test/core/tsi/alts/fake_handshaker/handshaker.proto - - test/core/tsi/alts/fake_handshaker/transport_security_common.proto - - test/core/tsi/alts/fake_handshaker/fake_handshaker_server.cc - - test/core/tsi/alts/handshaker/alts_concurrent_connectivity_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - linux -- name: alts_counter_test - build: test - language: c++ - src: - - test/core/tsi/alts/frame_protector/alts_counter_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: alts_crypt_test - build: test - language: c++ - src: - - test/core/tsi/alts/crypt/aes_gcm_test.cc - deps: - - alts_test_util - - gpr - - grpc_test_util - - grpc -- name: alts_crypter_test - build: test - language: c++ - src: - - test/core/tsi/alts/frame_protector/alts_crypter_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: alts_frame_handler_test - build: test - language: c++ - src: - - test/core/tsi/alts/frame_protector/frame_handler_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: alts_frame_protector_test - build: test - language: c++ - src: - - test/core/tsi/alts/frame_protector/alts_frame_protector_test.cc - deps: - - alts_test_util - - gpr - - grpc - filegroups: - - transport_security_test_lib -- name: alts_grpc_record_protocol_test - build: test - language: c++ - src: - - test/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: alts_handshaker_client_test - build: test - language: c++ - src: - - test/core/tsi/alts/handshaker/alts_handshaker_client_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: alts_iovec_record_protocol_test - build: test - language: c++ - src: - - test/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: alts_security_connector_test - build: test - language: c++ - src: - - test/core/security/alts_security_connector_test.cc - deps: - - gpr - - grpc -- name: alts_tsi_handshaker_test - build: test - language: c++ - src: - - test/core/tsi/alts/handshaker/alts_tsi_handshaker_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: alts_tsi_utils_test - build: test - language: c++ - src: - - test/core/tsi/alts/handshaker/alts_tsi_utils_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: alts_util_test - build: test - language: c++ - src: - - test/cpp/common/alts_util_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++_alts - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: alts_zero_copy_grpc_protector_test - build: test - language: c++ - src: - - test/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: async_end2end_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/async_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: auth_property_iterator_test - gtest: true - build: test - language: c++ - src: - - test/cpp/common/auth_property_iterator_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - uses_polling: false -- name: backoff_test - build: test - language: c++ - src: - - test/core/backoff/backoff_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: bdp_estimator_test - build: test - language: c++ - src: - - test/core/transport/bdp_estimator_test.cc - deps: - - grpc++_test_util - - grpc++ - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: bm_alarm - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_alarm.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix -- name: bm_arena - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_arena.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_byte_buffer - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_byte_buffer.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_call_create - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_call_create.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_callback_streaming_ping_pong - build: test - language: c++ - headers: - - test/cpp/microbenchmarks/callback_streaming_ping_pong.h - src: - - test/cpp/microbenchmarks/bm_callback_streaming_ping_pong.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - - bm_callback_test_service_impl - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix -- name: bm_callback_unary_ping_pong - build: test - language: c++ - headers: - - test/cpp/microbenchmarks/callback_unary_ping_pong.h - src: - - test/cpp/microbenchmarks/bm_callback_unary_ping_pong.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - - bm_callback_test_service_impl - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix -- name: bm_channel - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_channel.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_chttp2_hpack - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_chttp2_hpack.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_chttp2_transport - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_chttp2_transport.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix -- name: bm_closure - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_closure.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix -- name: bm_cq - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_cq.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix -- name: bm_cq_multiple_threads - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_cq_multiple_threads.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_error - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_error.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_fullstack_streaming_ping_pong - build: test - language: c++ - headers: - - test/cpp/microbenchmarks/fullstack_streaming_ping_pong.h - src: - - test/cpp/microbenchmarks/bm_fullstack_streaming_ping_pong.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - excluded_poll_engines: - - poll - platforms: - - mac - - linux - - posix - timeout_seconds: 1200 -- name: bm_fullstack_streaming_pump - build: test - language: c++ - headers: - - test/cpp/microbenchmarks/fullstack_streaming_pump.h - src: - - test/cpp/microbenchmarks/bm_fullstack_streaming_pump.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - excluded_poll_engines: - - poll - platforms: - - mac - - linux - - posix - timeout_seconds: 1200 -- name: bm_fullstack_trickle - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_fullstack_trickle.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - exclude_configs: - - tsan - excluded_poll_engines: - - poll - platforms: - - mac - - linux - - posix - timeout_seconds: 1200 -- name: bm_fullstack_unary_ping_pong - build: test - language: c++ - headers: - - test/cpp/microbenchmarks/fullstack_unary_ping_pong.h - src: - - test/cpp/microbenchmarks/bm_fullstack_unary_ping_pong.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - excluded_poll_engines: - - poll - platforms: - - mac - - linux - - posix - timeout_seconds: 1200 -- name: bm_metadata - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_metadata.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_pollset - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_pollset.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix -- name: bm_threadpool - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_threadpool.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: bm_timer - build: test - language: c++ - src: - - test/cpp/microbenchmarks/bm_timer.cc - deps: - - grpc_benchmark - - benchmark - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_config - benchmark: true - defaults: benchmark - platforms: - - mac - - linux - - posix - uses_polling: false -- name: byte_stream_test - gtest: true - build: test - language: c++ - src: - - test/core/transport/byte_stream_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: channel_arguments_test - gtest: true - build: test - language: c++ - src: - - test/cpp/common/channel_arguments_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr - uses_polling: false -- name: channel_filter_test - gtest: true - build: test - language: c++ - src: - - test/cpp/common/channel_filter_test.cc - deps: - - grpc++ - - grpc - - gpr - uses_polling: false -- name: channel_trace_test - gtest: true - build: test - language: c++ - src: - - test/core/channel/channel_trace_test.cc - deps: - - grpc_test_util - - grpc++_test_util - - grpc++ - - grpc - - gpr - filegroups: - - grpcpp_channelz_proto -- name: channelz_registry_test - gtest: true - build: test - language: c++ - src: - - test/core/channel/channelz_registry_test.cc - deps: - - grpc_test_util - - grpc++_test_util - - grpc++ - - grpc - - gpr - uses_polling: false -- name: channelz_service_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/channelz_service_test.cc - deps: - - grpcpp_channelz - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - filegroups: - - grpcpp_channelz_proto -- name: channelz_test - gtest: true - build: test - language: c++ - src: - - test/core/channel/channelz_test.cc - deps: - - grpc_test_util - - grpc++_test_util - - grpc++ - - grpc - - gpr - filegroups: - - grpcpp_channelz_proto -- name: check_gcp_environment_linux_test - build: test - language: c++ - src: - - test/core/security/check_gcp_environment_linux_test.cc - deps: - - grpc - - gpr -- name: check_gcp_environment_windows_test - build: test - language: c++ - src: - - test/core/security/check_gcp_environment_windows_test.cc - deps: - - grpc - - gpr -- name: chttp2_settings_timeout_test - gtest: true - build: test - language: c++ - src: - - test/core/transport/chttp2/settings_timeout_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: true -- name: cli_call_test - gtest: true - build: test - language: c++ - src: - - test/cpp/util/cli_call_test.cc - deps: - - grpc_cli_libs - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: client_callback_end2end_test - gtest: true - cpu_cost: 0.5 - build: test - language: c++ - src: - - test/cpp/end2end/client_callback_end2end_test.cc - - test/cpp/end2end/interceptors_util.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: client_channel_stress_test - gtest: false - cpu_cost: 10.0 - build: test - language: c++ - src: - - src/proto/grpc/lb/v1/load_balancer.proto - - test/cpp/client/client_channel_stress_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: client_crash_test - gtest: true - cpu_cost: 0.1 - build: test - language: c++ - src: - - test/cpp/end2end/client_crash_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: client_crash_test_server - build: test - run: false - language: c++ - src: - - test/cpp/end2end/client_crash_test_server.cc - deps: - - grpc++_test_config - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: client_interceptors_end2end_test - gtest: true - cpu_cost: 0.5 - build: test - language: c++ - headers: - - test/cpp/end2end/interceptors_util.h - src: - - test/cpp/end2end/client_interceptors_end2end_test.cc - - test/cpp/end2end/interceptors_util.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: client_lb_end2end_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/xds/orca_load_report_for_test.proto - - test/cpp/end2end/client_lb_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: codegen_test_full - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/control.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/payloads.proto - - src/proto/grpc/testing/benchmark_service.proto - - src/proto/grpc/testing/report_qps_scenario_service.proto - - src/proto/grpc/testing/worker_service.proto - - src/proto/grpc/testing/stats.proto - - test/cpp/codegen/codegen_test_full.cc - deps: - - grpc++_core_stats - - grpc++ - - grpc - - gpr - filegroups: - - grpc++_codegen_base - uses_polling: false -- name: codegen_test_minimal - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/control.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/payloads.proto - - src/proto/grpc/testing/benchmark_service.proto - - src/proto/grpc/testing/report_qps_scenario_service.proto - - src/proto/grpc/testing/worker_service.proto - - src/proto/grpc/testing/stats.proto - - test/cpp/codegen/codegen_test_minimal.cc - deps: - - grpc++_core_stats - - grpc - - gpr - filegroups: - - grpc++_codegen_base - - grpc++_codegen_base_src - uses_polling: false -- name: context_list_test - gtest: true - build: test - language: c++ - src: - - test/core/transport/chttp2/context_list_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: credentials_test - gtest: true - build: test - language: c++ - src: - - test/cpp/client/credentials_test.cc - deps: - - grpc++ - - grpc - - gpr -- name: cxx_byte_buffer_test - gtest: true - build: test - language: c++ - src: - - test/cpp/util/byte_buffer_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr - uses_polling: false -- name: cxx_slice_test - gtest: true - build: test - language: c++ - src: - - test/cpp/util/slice_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr - uses_polling: false -- name: cxx_string_ref_test - gtest: true - build: test - language: c++ - src: - - test/cpp/util/string_ref_test.cc - deps: - - grpc++ - - grpc - uses_polling: false -- name: cxx_time_test - gtest: true - build: test - language: c++ - src: - - test/cpp/util/time_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr - uses_polling: false -- name: delegating_channel_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/delegating_channel_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: end2end_test - gtest: true - cpu_cost: 0.5 - build: test - language: c++ - headers: - - test/cpp/end2end/interceptors_util.h - src: - - test/cpp/end2end/end2end_test.cc - - test/cpp/end2end/interceptors_util.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: error_details_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/echo_messages.proto - - test/cpp/util/error_details_test.cc - deps: - - grpc++_error_details - - grpc++ -- name: eventmanager_libuv_test - gtest: true - build: test - language: c++ - src: - - test/core/iomgr/poller/eventmanager_libuv_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: exception_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/exception_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: filter_end2end_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/filter_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: gen_hpack_tables - build: tool - language: c++ - src: - - tools/codegen/core/gen_hpack_tables.cc - deps: - - gpr - - grpc - uses_polling: false -- name: gen_legal_metadata_characters - build: tool - language: c++ - src: - - tools/codegen/core/gen_legal_metadata_characters.cc - deps: [] -- name: gen_percent_encoding_tables - build: tool - language: c++ - src: - - tools/codegen/core/gen_percent_encoding_tables.cc - deps: [] - uses_polling: false -- name: generic_end2end_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/generic_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: global_config_env_test - build: test - language: c++ - src: - - test/core/gprpp/global_config_env_test.cc - deps: - - gpr - - grpc_test_util_unsecure - uses_polling: false -- name: global_config_test - build: test - language: c++ - src: - - test/core/gprpp/global_config_test.cc - deps: - - gpr - - grpc_test_util_unsecure - uses_polling: false -- name: golden_file_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/compiler_test.proto - - test/cpp/codegen/golden_file_test.cc - deps: - - grpc++_test_config - - grpc++ - - grpc - - gpr - args: - - --generated_file_path=gens/src/proto/grpc/testing/ - uses_polling: false -- name: gprpp_mpscq_test - cpu_cost: 30 - build: test - language: c++ - src: - - test/core/gprpp/mpscq_test.cc - deps: - - gpr - - grpc_test_util_unsecure - - grpc_unsecure - uses_polling: false -- name: grpc_alts_credentials_options_test - build: test - language: c++ - src: - - test/core/security/grpc_alts_credentials_options_test.cc - deps: - - grpc - - gpr -- name: grpc_cli - build: test - run: false - language: c++ - src: - - test/cpp/util/grpc_cli.cc - deps: - - grpc_cli_libs - - grpc++_proto_reflection_desc_db - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: grpc_cpp_plugin - build: protoc - language: c++ - src: - - src/compiler/cpp_plugin.cc - deps: - - grpc_plugin_support - secure: false -- name: grpc_csharp_plugin - build: protoc - language: c++ - src: - - src/compiler/csharp_plugin.cc - deps: - - grpc_plugin_support - secure: false -- name: grpc_fetch_oauth2 - build: test - run: false - language: c++ - src: - - test/core/security/fetch_oauth2.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: grpc_linux_system_roots_test - gtest: true - build: test - language: c++ - src: - - test/core/security/linux_system_roots_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: grpc_node_plugin - build: protoc - language: c++ - src: - - src/compiler/node_plugin.cc - deps: - - grpc_plugin_support - secure: false -- name: grpc_objective_c_plugin - build: protoc - language: c++ - src: - - src/compiler/objective_c_plugin.cc - deps: - - grpc_plugin_support - secure: false -- name: grpc_php_plugin - build: protoc - language: c++ - src: - - src/compiler/php_plugin.cc - deps: - - grpc_plugin_support - secure: false -- name: grpc_python_plugin - build: protoc - language: c++ - src: - - src/compiler/python_plugin.cc - deps: - - grpc_plugin_support - secure: false -- name: grpc_ruby_plugin - build: protoc - language: c++ - src: - - src/compiler/ruby_plugin.cc - deps: - - grpc_plugin_support - secure: false -- name: grpc_tls_security_connector_test - gtest: true - build: test - language: c++ - src: - - test/core/security/tls_security_connector_test.cc - deps: - - grpc_test_util - - grpc++_test_util - - grpc++ - - grpc - - gpr -- name: grpc_tool_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/echo.proto - - src/proto/grpc/testing/echo_messages.proto - - test/cpp/util/grpc_tool_test.cc - deps: - - grpc_cli_libs - - grpc++_proto_reflection_desc_db - - grpc++_reflection - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - filegroups: - - grpc++_codegen_proto -- name: grpclb_api_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/lb/v1/load_balancer.proto - - test/cpp/grpclb/grpclb_api_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc -- name: grpclb_end2end_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/lb/v1/load_balancer.proto - - test/cpp/end2end/grpclb_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: grpclb_fallback_test - build: test - run: false - language: c++ - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/grpclb_fallback_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - linux -- name: h2_ssl_cert_test - gtest: true - build: test - language: c++ - headers: - - test/core/end2end/end2end_tests.h - src: - - test/core/end2end/h2_ssl_cert_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: h2_ssl_session_reuse_test - gtest: true - build: test - language: c++ - headers: - - test/core/end2end/end2end_tests.h - src: - - test/core/end2end/h2_ssl_session_reuse_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: health_service_end2end_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/health_service_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: http2_client - build: test - run: false - language: c++ - src: [] - deps: - - http2_client_main - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - grpc++_test_config - platforms: - - mac - - linux - - posix -- name: hybrid_end2end_test - flaky: true - build: test - language: c++ - src: - - test/cpp/end2end/hybrid_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: inlined_vector_test - gtest: true - build: test - language: c++ - src: - - test/core/gprpp/inlined_vector_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: inproc_sync_unary_ping_pong_test - build: test - language: c++ - src: - - test/cpp/qps/inproc_sync_unary_ping_pong_test.cc - deps: - - qps - - grpc++_core_stats - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - mac - - linux - - posix -- name: interop_client - build: test - run: false - language: c++ - src: [] - deps: - - interop_client_main - - interop_client_helper - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - mac - - linux - - posix -- name: interop_server - build: test - run: false - language: c++ - src: [] - deps: - - interop_server_main - - interop_server_helper - - interop_server_lib - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - mac - - linux - - posix -- name: interop_test - cpu_cost: 0.1 - build: test - language: c++ - src: - - test/cpp/interop/interop_test.cc - deps: - - grpc_test_util - - grpc - - gpr - - grpc++_test_config - platforms: - - mac - - linux - - posix -- name: json_run_localhost - build: test - run: false - language: c++ - src: - - test/cpp/qps/json_run_localhost.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - mac - - linux - - posix -- name: json_test - gtest: true - build: test - language: c++ - src: - - test/core/json/json_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: message_allocator_end2end_test - gtest: true - cpu_cost: 0.5 - build: test - language: c++ - src: - - test/cpp/end2end/message_allocator_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: metrics_client - build: test - run: false - language: c++ - headers: - - test/cpp/util/metrics_server.h - src: - - src/proto/grpc/testing/metrics.proto - - test/cpp/interop/metrics_client.cc - deps: - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: mock_test - gtest: true - build: test - language: c++ - headers: - - include/grpc++/test/mock_stream.h - - include/grpcpp/test/mock_stream.h - src: - - test/cpp/end2end/mock_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: nonblocking_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/nonblocking_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: noop-benchmark - build: test - language: c++ - src: - - test/cpp/microbenchmarks/noop-benchmark.cc - deps: - - benchmark - defaults: benchmark -- name: optional_test - gtest: true - build: test - language: c++ - src: - - test/core/gprpp/optional_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: orphanable_test - gtest: true - build: test - language: c++ - src: - - test/core/gprpp/orphanable_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: pollset_windows_starvation_test.cc - cpu_cost: 0.5 - build: test - language: c++ - src: - - test/core/iomgr/pollset_windows_starvation_test.cc - deps: - - grpc_test_util - - grpc - - gpr - exclude_iomgrs: - - uv - platforms: - - windows -- name: port_sharing_end2end_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/port_sharing_end2end_test.cc - deps: - - test_tcp_server - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: proto_server_reflection_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/proto_server_reflection_test.cc - deps: - - grpc++_proto_reflection_desc_db - - grpc++_reflection - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: proto_utils_test - gtest: true - build: test - language: c++ - src: - - test/cpp/codegen/proto_utils_test.cc - deps: - - grpc++ - - grpc - filegroups: - - grpc++_codegen_base - - grpc++_codegen_proto - uses_polling: false -- name: qps_interarrival_test - build: test - run: false - language: c++ - src: - - test/cpp/qps/qps_interarrival_test.cc - deps: - - qps - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - mac - - linux - - posix - uses_polling: false -- name: qps_json_driver - build: test - run: false - language: c++ - src: - - test/cpp/qps/qps_json_driver.cc - deps: - - qps - - grpc++_core_stats - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: qps_openloop_test - cpu_cost: 0.5 - build: test - language: c++ - src: - - test/cpp/qps/qps_openloop_test.cc - deps: - - qps - - grpc++_core_stats - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - mac - - linux - - posix -- name: qps_worker - build: test - run: false - language: c++ - headers: - - test/cpp/qps/client.h - - test/cpp/qps/server.h - src: - - test/cpp/qps/worker.cc - deps: - - qps - - grpc++_core_stats - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: raw_end2end_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/raw_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: reconnect_interop_client - build: test - run: false - language: c++ - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/reconnect_interop_client.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: reconnect_interop_server - build: test - run: false - language: c++ - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/reconnect_interop_server.cc - deps: - - reconnect_server - - test_tcp_server - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: ref_counted_ptr_test - gtest: true - build: test - language: c++ - src: - - test/core/gprpp/ref_counted_ptr_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: ref_counted_test - gtest: true - build: test - language: c++ - src: - - test/core/gprpp/ref_counted_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: retry_throttle_test - gtest: true - build: test - language: c++ - src: - - test/core/client_channel/retry_throttle_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: secure_auth_context_test - gtest: true - build: test - language: c++ - src: - - test/cpp/common/secure_auth_context_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: secure_sync_unary_ping_pong_test - build: test - language: c++ - src: - - test/cpp/qps/secure_sync_unary_ping_pong_test.cc - deps: - - qps - - grpc++_core_stats - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config - platforms: - - mac - - linux - - posix -- name: server_builder_plugin_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/server_builder_plugin_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: server_builder_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/echo_messages.proto - - src/proto/grpc/testing/echo.proto - - test/cpp/server/server_builder_test.cc - deps: - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr -- name: server_builder_with_socket_mutator_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/echo_messages.proto - - src/proto/grpc/testing/echo.proto - - test/cpp/server/server_builder_with_socket_mutator_test.cc - deps: - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr - platforms: - - posix -- name: server_context_test_spouse_test - gtest: true - build: test - language: c++ - src: - - test/cpp/test/server_context_test_spouse_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: server_crash_test - gtest: true - cpu_cost: 0.1 - build: test - language: c++ - src: - - test/cpp/end2end/server_crash_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: server_crash_test_client - build: test - run: false - language: c++ - src: - - test/cpp/end2end/server_crash_test_client.cc - deps: - - grpc++_test_config - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: server_early_return_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/server_early_return_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: server_interceptors_end2end_test - gtest: true - cpu_cost: 0.5 - build: test - language: c++ - headers: - - test/cpp/end2end/interceptors_util.h - src: - - test/cpp/end2end/interceptors_util.cc - - test/cpp/end2end/server_interceptors_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: server_request_call_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/echo_messages.proto - - src/proto/grpc/testing/echo.proto - - test/cpp/server/server_request_call_test.cc - deps: - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr -- name: service_config_end2end_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/service_config_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: service_config_test - gtest: true - build: test - language: c++ - src: - - test/core/client_channel/service_config_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: shutdown_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/shutdown_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: slice_hash_table_test - gtest: true - build: test - language: c++ - src: - - test/core/slice/slice_hash_table_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: slice_weak_hash_table_test - gtest: true - build: test - language: c++ - src: - - test/core/slice/slice_weak_hash_table_test.cc - deps: - - grpc_test_util - - grpc - - gpr - uses_polling: false -- name: stats_test - gtest: true - build: test - language: c++ - src: - - test/core/debug/stats_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc - - gpr - exclude_configs: - - tsan - timeout_seconds: 1200 - uses_polling: false -- name: status_metadata_test - gtest: true - build: test - language: c++ - src: - - test/core/transport/status_metadata_test.cc - deps: - - grpc - uses_polling: false -- name: status_util_test - gtest: true - cpu_cost: 0.1 - build: test - language: c++ - src: - - test/core/channel/status_util_test.cc - deps: - - grpc - uses_polling: false -- name: streaming_throughput_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/streaming_throughput_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: stress_test - build: test - run: false - language: c++ - headers: - - test/cpp/interop/client_helper.h - - test/cpp/interop/interop_client.h - - test/cpp/interop/stress_interop_client.h - - test/cpp/util/create_test_channel.h - - test/cpp/util/metrics_server.h - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/metrics.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/interop_client.cc - - test/cpp/interop/stress_interop_client.cc - - test/cpp/interop/stress_test.cc - - test/cpp/util/metrics_server.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - - grpc++_test_config -- name: string_view_test - gtest: true - build: test - language: c++ - src: - - test/core/gprpp/string_view_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: thread_manager_test - gtest: true - cpu_cost: 20 - build: test - language: c++ - src: - - test/cpp/thread_manager/thread_manager_test.cc - deps: - - grpc++_unsecure - - grpc_unsecure - - gpr - - grpc++_test_util - - grpc_test_util - - grpc++_test_config -- name: thread_stress_test - gtest: true - cpu_cost: 100 - build: test - language: c++ - src: - - test/cpp/end2end/thread_stress_test.cc - deps: - - grpc++_test_util_unsecure - - grpc_test_util_unsecure - - grpc++_unsecure - - grpc_unsecure - - gpr -- name: time_change_test - gtest: true - build: test - language: c++ - src: - - test/cpp/end2end/time_change_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: timer_test - gtest: true - build: test - language: c++ - src: - - test/cpp/common/timer_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: transport_connectivity_state_test - gtest: true - build: test - language: c++ - src: - - test/core/transport/connectivity_state_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: transport_pid_controller_test - build: test - language: c++ - src: - - test/core/transport/pid_controller_test.cc - deps: - - grpc++_test_util - - grpc++ - - grpc_test_util - - grpc - - gpr -- name: transport_security_common_api_test - build: test - language: c++ - src: - - test/core/tsi/alts/handshaker/transport_security_common_api_test.cc - deps: - - alts_test_util - - gpr - - grpc -- name: work_serializer_test - cpu_cost: 10 - build: test - language: c++ - src: - - test/core/iomgr/work_serializer_test.cc - deps: - - grpc_test_util - - grpc - - gpr -- name: writes_per_rpc_test - gtest: true - cpu_cost: 0.5 - build: test - language: c++ - src: - - test/cpp/performance/writes_per_rpc_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr - platforms: - - mac - - linux - - posix -- name: xds_bootstrap_test - gtest: true - build: test - language: c++ - src: - - test/core/client_channel/xds_bootstrap_test.cc - deps: - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: xds_end2end_test - gtest: true - build: test - language: c++ - src: - - src/proto/grpc/testing/xds/ads_for_test.proto - - src/proto/grpc/testing/xds/cds_for_test.proto - - src/proto/grpc/testing/xds/eds_for_test.proto - - src/proto/grpc/testing/xds/lds_rds_for_test.proto - - src/proto/grpc/testing/xds/lrs_for_test.proto - - test/cpp/end2end/xds_end2end_test.cc - deps: - - grpc++_test_util - - grpc_test_util - - grpc++ - - grpc - - gpr -- name: xds_interop_client - build: test - run: false - language: c++ - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/xds_interop_client.cc - deps: - - grpc++_test_config - - grpc_test_util - - grpc++ - - grpc - - gpr - platforms: - - linux -- name: xds_interop_server - build: test - run: false - language: c++ - src: - - src/proto/grpc/testing/empty.proto - - src/proto/grpc/testing/messages.proto - - src/proto/grpc/testing/test.proto - - test/cpp/interop/xds_interop_server.cc - deps: - - grpc++_test_config - - grpc_test_util - - grpc++ - - grpc - - gpr - platforms: - - linux -- name: public_headers_must_be_c89 - build: test - language: c89 - src: - - test/core/surface/public_headers_must_be_c89.c - deps: - - grpc - - gpr -vspackages: -- linkage: static - name: grpc.dependencies.zlib - props: false - redist: true - version: 1.2.8.10 -- linkage: static - name: grpc.dependencies.openssl - props: true - redist: true - version: 1.0.204.1 -- name: gflags - props: false - redist: false - version: 2.1.2.1 -- name: gtest - props: false - redist: false - version: 1.7.0.1 -configs: - asan: - CC: clang - CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize=address -fno-omit-frame-pointer - -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS - CXX: clang++ - LD: clang++ - LDFLAGS: -fsanitize=address - LDXX: clang++ - compile_the_world: true - test_environ: - ASAN_OPTIONS: detect_leaks=1:color=always - LSAN_OPTIONS: suppressions=test/core/util/lsan_suppressions.txt:report_objects=1 - asan-noleaks: - CC: clang - CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize=address -fno-omit-frame-pointer - -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS - CXX: clang++ - LD: clang++ - LDFLAGS: fsanitize=address - LDXX: clang++ - compile_the_world: true - test_environ: - ASAN_OPTIONS: detect_leaks=0:color=always - asan-trace-cmp: - CC: clang - CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize-coverage=trace-cmp - -fsanitize=address -fno-omit-frame-pointer -Wno-unused-command-line-argument - -DGPR_NO_DIRECT_SYSCALLS - CXX: clang++ - LD: clang++ - LDFLAGS: -fsanitize=address - LDXX: clang++ - compile_the_world: true - test_environ: - ASAN_OPTIONS: detect_leaks=1:color=always - LSAN_OPTIONS: suppressions=test/core/util/lsan_suppressions.txt:report_objects=1 - basicprof: - CPPFLAGS: -O2 -DGRPC_BASIC_PROFILER -DGRPC_TIMERS_RDTSC - DEFINES: NDEBUG - c++-compat: - CFLAGS: -Wc++-compat - CPPFLAGS: -O0 - DEFINES: _DEBUG DEBUG - counters: - CPPFLAGS: -O2 -DGPR_LOW_LEVEL_COUNTERS - DEFINES: NDEBUG - counters_with_memory_counter: - CPPFLAGS: -O2 -DGPR_LOW_LEVEL_COUNTERS -DGPR_WRAP_MEMORY_COUNTER - DEFINES: NDEBUG - LDFLAGS: -Wl,--wrap=malloc -Wl,--wrap=calloc -Wl,--wrap=realloc -Wl,--wrap=free - dbg: - CPPFLAGS: -O0 - DEFINES: _DEBUG DEBUG - gcov: - CC: gcc - CPPFLAGS: -O0 -fprofile-arcs -ftest-coverage -Wno-return-type - CXX: g++ - DEFINES: _DEBUG DEBUG GPR_GCOV - LD: gcc - LDFLAGS: -fprofile-arcs -ftest-coverage -rdynamic -lstdc++ - LDXX: g++ - helgrind: - CPPFLAGS: -O0 - DEFINES: _DEBUG DEBUG - LDFLAGS: -rdynamic - valgrind: --tool=helgrind - lto: - CPPFLAGS: -O2 - DEFINES: NDEBUG - memcheck: - CPPFLAGS: -O0 - DEFINES: _DEBUG DEBUG - LDFLAGS: -rdynamic - valgrind: --tool=memcheck --leak-check=full - msan: - CC: clang - CPPFLAGS: -O0 -stdlib=libc++ -fsanitize-coverage=edge,trace-pc-guard -fsanitize=memory - -fsanitize-memory-track-origins -fsanitize-memory-use-after-dtor -fno-omit-frame-pointer - -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 -Wno-unused-command-line-argument - -fPIE -pie -DGPR_NO_DIRECT_SYSCALLS - CXX: clang++ - DEFINES: NDEBUG - LD: clang++ - LDFLAGS: -stdlib=libc++ -fsanitize=memory -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 - -fPIE -pie $(if $(JENKINS_BUILD),-Wl$(comma)-Ttext-segment=0x7e0000000000,) - LDXX: clang++ - compile_the_world: true - test_environ: - MSAN_OPTIONS: poison_in_dtor=1 - mutrace: - CPPFLAGS: -O3 -fno-omit-frame-pointer - DEFINES: NDEBUG - LDFLAGS: -rdynamic - noexcept: - CPPFLAGS: -O2 -Wframe-larger-than=16384 - CXXFLAGS: -fno-exceptions - DEFINES: NDEBUG - opt: - CPPFLAGS: -O2 -Wframe-larger-than=16384 - DEFINES: NDEBUG - stapprof: - CPPFLAGS: -O2 -DGRPC_STAP_PROFILER - DEFINES: NDEBUG - tsan: - CC: clang - CPPFLAGS: -O0 -fsanitize=thread -fno-omit-frame-pointer -Wno-unused-command-line-argument - -DGPR_NO_DIRECT_SYSCALLS - CXX: clang++ - DEFINES: GRPC_TSAN - LD: clang++ - LDFLAGS: -fsanitize=thread - LDXX: clang++ - compile_the_world: true - test_environ: - TSAN_OPTIONS: suppressions=test/core/util/tsan_suppressions.txt:halt_on_error=1:second_deadlock_stack=1 - ubsan: - CC: clang - CPPFLAGS: -O0 -stdlib=libc++ -fsanitize-coverage=edge,trace-pc-guard -fsanitize=undefined - -fno-omit-frame-pointer -Wno-unused-command-line-argument -Wvarargs - CXX: clang++ - DEFINES: NDEBUG GRPC_UBSAN - LD: clang++ - LDFLAGS: -stdlib=libc++ -fsanitize=undefined,unsigned-integer-overflow - LDXX: clang++ - compile_the_world: true - test_environ: - UBSAN_OPTIONS: halt_on_error=1:print_stacktrace=1:suppressions=test/core/util/ubsan_suppressions.txt -defaults: - ares: - CFLAGS: -g - CPPFLAGS: -Ithird_party/cares -Ithird_party/cares/cares -fvisibility=hidden -D_GNU_SOURCE - $(if $(subst Darwin,,$(SYSTEM)),,-Ithird_party/cares/config_darwin) $(if $(subst - FreeBSD,,$(SYSTEM)),,-Ithird_party/cares/config_freebsd) $(if $(subst Linux,,$(SYSTEM)),,-Ithird_party/cares/config_linux) - $(if $(subst OpenBSD,,$(SYSTEM)),,-Ithird_party/cares/config_openbsd) -DWIN32_LEAN_AND_MEAN - -D_HAS_EXCEPTIONS=0 -DNOMINMAX $(if $(subst MINGW32,,$(SYSTEM)),-DHAVE_CONFIG_H,) - benchmark: - CPPFLAGS: -Ithird_party/benchmark/include -DHAVE_POSIX_REGEX - boringssl: - CFLAGS: -g - CPPFLAGS: -Ithird_party/boringssl-with-bazel/src/include -fvisibility=hidden -DOPENSSL_NO_ASM - -D_GNU_SOURCE -DWIN32_LEAN_AND_MEAN -D_HAS_EXCEPTIONS=0 -DNOMINMAX - CXXFLAGS: -fno-exceptions - global: - CFLAGS: -g - COREFLAGS: -fno-exceptions - CPPFLAGS: -g -Wall -Wextra -DOSATOMIC_USE_INLINED=1 -Ithird_party/abseil-cpp -Ithird_party/upb - -Isrc/core/ext/upb-generated - LDFLAGS: -g - zlib: - CFLAGS: -fvisibility=hidden -php_config_m4: - deps: - - grpc - - address_sorting - - boringssl - - z - headers: - - src/php/ext/grpc/byte_buffer.h - - src/php/ext/grpc/call.h - - src/php/ext/grpc/call_credentials.h - - src/php/ext/grpc/channel.h - - src/php/ext/grpc/channel_credentials.h - - src/php/ext/grpc/completion_queue.h - - src/php/ext/grpc/php7_wrapper.h - - src/php/ext/grpc/php_grpc.h - - src/php/ext/grpc/server.h - - src/php/ext/grpc/server_credentials.h - - src/php/ext/grpc/timeval.h - - src/php/ext/grpc/version.h - src: - - src/php/ext/grpc/byte_buffer.c - - src/php/ext/grpc/call.c - - src/php/ext/grpc/call_credentials.c - - src/php/ext/grpc/channel.c - - src/php/ext/grpc/channel_credentials.c - - src/php/ext/grpc/completion_queue.c - - src/php/ext/grpc/php_grpc.c - - src/php/ext/grpc/server.c - - src/php/ext/grpc/server_credentials.c - - src/php/ext/grpc/timeval.c -python_dependencies: - deps: - - grpc - - address_sorting - - ares - - boringssl - - z -ruby_gem: - deps: - - grpc - - address_sorting - - ares - - boringssl - - z diff --git a/build_handwritten.yaml b/build_handwritten.yaml new file mode 100644 index 00000000000..3e0ea11094b --- /dev/null +++ b/build_handwritten.yaml @@ -0,0 +1,263 @@ +'#1': This file describes the list of targets and dependencies. +'#2': It is used among other things to generate all of our project files. +'#3': Please refer to the templates directory for more information. +settings: + '#01': The public version number of the library. + '#02': === + '#03': Please update the 'g_stands_for' field periodically with a new g word + '#04': not listed in doc/g_stands_for.md - and update that document to list the + '#05': new word. When doing so, please also update BUILD. + '#06': === + '#07': Master always has a "-dev" suffix + '#08': Use "-preN" suffixes to identify pre-release versions + '#09': Per-language overrides are possible with (eg) ruby_version tag here + '#10': See the expand_version.py for all the quirks here + core_version: 9.0.0 + csharp_major_version: 2 + g_stands_for: gringotts + version: 1.29.0-dev +targets: +- name: check_epollexclusive + build: tool + language: c + src: + - test/build/check_epollexclusive.c + deps: + - grpc + - gpr +- name: gen_hpack_tables + build: tool + language: c++ + src: + - tools/codegen/core/gen_hpack_tables.cc + deps: + - grpc + - gpr + uses_polling: false +- name: gen_legal_metadata_characters + build: tool + language: c++ + src: + - tools/codegen/core/gen_legal_metadata_characters.cc + deps: [] +- name: gen_percent_encoding_tables + build: tool + language: c++ + src: + - tools/codegen/core/gen_percent_encoding_tables.cc + deps: [] + uses_polling: false +vspackages: +- linkage: static + name: grpc.dependencies.zlib + props: false + redist: true + version: 1.2.8.10 +- linkage: static + name: grpc.dependencies.openssl + props: true + redist: true + version: 1.0.204.1 +- name: gflags + props: false + redist: false + version: 2.1.2.1 +- name: gtest + props: false + redist: false + version: 1.7.0.1 +configs: + asan: + CC: clang + CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize=address -fno-omit-frame-pointer + -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS + CXX: clang++ + LD: clang++ + LDFLAGS: -fsanitize=address + LDXX: clang++ + compile_the_world: true + test_environ: + ASAN_OPTIONS: detect_leaks=1:color=always + LSAN_OPTIONS: suppressions=test/core/util/lsan_suppressions.txt:report_objects=1 + asan-noleaks: + CC: clang + CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize=address -fno-omit-frame-pointer + -Wno-unused-command-line-argument -DGPR_NO_DIRECT_SYSCALLS + CXX: clang++ + LD: clang++ + LDFLAGS: fsanitize=address + LDXX: clang++ + compile_the_world: true + test_environ: + ASAN_OPTIONS: detect_leaks=0:color=always + asan-trace-cmp: + CC: clang + CPPFLAGS: -O0 -fsanitize-coverage=edge,trace-pc-guard -fsanitize-coverage=trace-cmp + -fsanitize=address -fno-omit-frame-pointer -Wno-unused-command-line-argument + -DGPR_NO_DIRECT_SYSCALLS + CXX: clang++ + LD: clang++ + LDFLAGS: -fsanitize=address + LDXX: clang++ + compile_the_world: true + test_environ: + ASAN_OPTIONS: detect_leaks=1:color=always + LSAN_OPTIONS: suppressions=test/core/util/lsan_suppressions.txt:report_objects=1 + basicprof: + CPPFLAGS: -O2 -DGRPC_BASIC_PROFILER -DGRPC_TIMERS_RDTSC + DEFINES: NDEBUG + c++-compat: + CFLAGS: -Wc++-compat + CPPFLAGS: -O0 + DEFINES: _DEBUG DEBUG + counters: + CPPFLAGS: -O2 -DGPR_LOW_LEVEL_COUNTERS + DEFINES: NDEBUG + counters_with_memory_counter: + CPPFLAGS: -O2 -DGPR_LOW_LEVEL_COUNTERS -DGPR_WRAP_MEMORY_COUNTER + DEFINES: NDEBUG + LDFLAGS: -Wl,--wrap=malloc -Wl,--wrap=calloc -Wl,--wrap=realloc -Wl,--wrap=free + dbg: + CPPFLAGS: -O0 + DEFINES: _DEBUG DEBUG + gcov: + CC: gcc + CPPFLAGS: -O0 -fprofile-arcs -ftest-coverage -Wno-return-type + CXX: g++ + DEFINES: _DEBUG DEBUG GPR_GCOV + LD: gcc + LDFLAGS: -fprofile-arcs -ftest-coverage -rdynamic -lstdc++ + LDXX: g++ + helgrind: + CPPFLAGS: -O0 + DEFINES: _DEBUG DEBUG + LDFLAGS: -rdynamic + valgrind: --tool=helgrind + lto: + CPPFLAGS: -O2 + DEFINES: NDEBUG + memcheck: + CPPFLAGS: -O0 + DEFINES: _DEBUG DEBUG + LDFLAGS: -rdynamic + valgrind: --tool=memcheck --leak-check=full + msan: + CC: clang + CPPFLAGS: -O0 -stdlib=libc++ -fsanitize-coverage=edge,trace-pc-guard -fsanitize=memory + -fsanitize-memory-track-origins -fsanitize-memory-use-after-dtor -fno-omit-frame-pointer + -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 -Wno-unused-command-line-argument + -fPIE -pie -DGPR_NO_DIRECT_SYSCALLS + CXX: clang++ + DEFINES: NDEBUG + LD: clang++ + LDFLAGS: -stdlib=libc++ -fsanitize=memory -DGTEST_HAS_TR1_TUPLE=0 -DGTEST_USE_OWN_TR1_TUPLE=1 + -fPIE -pie $(if $(JENKINS_BUILD),-Wl$(comma)-Ttext-segment=0x7e0000000000,) + LDXX: clang++ + compile_the_world: true + test_environ: + MSAN_OPTIONS: poison_in_dtor=1 + mutrace: + CPPFLAGS: -O3 -fno-omit-frame-pointer + DEFINES: NDEBUG + LDFLAGS: -rdynamic + noexcept: + CPPFLAGS: -O2 -Wframe-larger-than=16384 + CXXFLAGS: -fno-exceptions + DEFINES: NDEBUG + opt: + CPPFLAGS: -O2 -Wframe-larger-than=16384 + DEFINES: NDEBUG + stapprof: + CPPFLAGS: -O2 -DGRPC_STAP_PROFILER + DEFINES: NDEBUG + tsan: + CC: clang + CPPFLAGS: -O0 -fsanitize=thread -fno-omit-frame-pointer -Wno-unused-command-line-argument + -DGPR_NO_DIRECT_SYSCALLS + CXX: clang++ + DEFINES: GRPC_TSAN + LD: clang++ + LDFLAGS: -fsanitize=thread + LDXX: clang++ + compile_the_world: true + test_environ: + TSAN_OPTIONS: suppressions=test/core/util/tsan_suppressions.txt:halt_on_error=1:second_deadlock_stack=1 + ubsan: + CC: clang + CPPFLAGS: -O0 -stdlib=libc++ -fsanitize-coverage=edge,trace-pc-guard -fsanitize=undefined + -fno-omit-frame-pointer -Wno-unused-command-line-argument -Wvarargs + CXX: clang++ + DEFINES: NDEBUG GRPC_UBSAN + LD: clang++ + LDFLAGS: -stdlib=libc++ -fsanitize=undefined,unsigned-integer-overflow + LDXX: clang++ + compile_the_world: true + test_environ: + UBSAN_OPTIONS: halt_on_error=1:print_stacktrace=1:suppressions=test/core/util/ubsan_suppressions.txt +defaults: + ares: + CFLAGS: -g + CPPFLAGS: -Ithird_party/cares -Ithird_party/cares/cares -fvisibility=hidden -D_GNU_SOURCE + $(if $(subst Darwin,,$(SYSTEM)),,-Ithird_party/cares/config_darwin) $(if $(subst + FreeBSD,,$(SYSTEM)),,-Ithird_party/cares/config_freebsd) $(if $(subst Linux,,$(SYSTEM)),,-Ithird_party/cares/config_linux) + $(if $(subst OpenBSD,,$(SYSTEM)),,-Ithird_party/cares/config_openbsd) -DWIN32_LEAN_AND_MEAN + -D_HAS_EXCEPTIONS=0 -DNOMINMAX $(if $(subst MINGW32,,$(SYSTEM)),-DHAVE_CONFIG_H,) + benchmark: + CPPFLAGS: -Ithird_party/benchmark/include -DHAVE_POSIX_REGEX + boringssl: + CFLAGS: -g + CPPFLAGS: -Ithird_party/boringssl-with-bazel/src/include -fvisibility=hidden -DOPENSSL_NO_ASM + -D_GNU_SOURCE -DWIN32_LEAN_AND_MEAN -D_HAS_EXCEPTIONS=0 -DNOMINMAX + CXXFLAGS: -fno-exceptions + global: + CFLAGS: -g + COREFLAGS: -fno-exceptions + CPPFLAGS: -g -Wall -Wextra -DOSATOMIC_USE_INLINED=1 -Ithird_party/abseil-cpp -Ithird_party/upb + -Isrc/core/ext/upb-generated + LDFLAGS: -g + zlib: + CFLAGS: -fvisibility=hidden +php_config_m4: + deps: + - grpc + - address_sorting + - boringssl + - z + headers: + - src/php/ext/grpc/byte_buffer.h + - src/php/ext/grpc/call.h + - src/php/ext/grpc/call_credentials.h + - src/php/ext/grpc/channel.h + - src/php/ext/grpc/channel_credentials.h + - src/php/ext/grpc/completion_queue.h + - src/php/ext/grpc/php7_wrapper.h + - src/php/ext/grpc/php_grpc.h + - src/php/ext/grpc/server.h + - src/php/ext/grpc/server_credentials.h + - src/php/ext/grpc/timeval.h + - src/php/ext/grpc/version.h + src: + - src/php/ext/grpc/byte_buffer.c + - src/php/ext/grpc/call.c + - src/php/ext/grpc/call_credentials.c + - src/php/ext/grpc/channel.c + - src/php/ext/grpc/channel_credentials.c + - src/php/ext/grpc/completion_queue.c + - src/php/ext/grpc/php_grpc.c + - src/php/ext/grpc/server.c + - src/php/ext/grpc/server_credentials.c + - src/php/ext/grpc/timeval.c +python_dependencies: + deps: + - grpc + - address_sorting + - ares + - boringssl + - z +ruby_gem: + deps: + - grpc + - address_sorting + - ares + - boringssl + - z diff --git a/templates/gRPC-C++.podspec.template b/templates/gRPC-C++.podspec.template index 64d639a7399..3c98a519c46 100644 --- a/templates/gRPC-C++.podspec.template +++ b/templates/gRPC-C++.podspec.template @@ -60,42 +60,43 @@ files.update(lib.get(field, [])) return list(sorted(files)) - def list_filegroup_files(expect_filegroups, groups): - out = [] - for filegroup_name in expect_filegroups: - filegroup = filegroup_maps[filegroup_name] - for group in groups: - out += filegroup.get(group, []) - return list(sorted(set(out))) - def filter_grpcpp(files): return sorted([file for file in files if not file.startswith("include/grpc++")]) - grpc_private_files = list_lib_files("grpc", ("headers", "src")) - grpc_public_headers = list_lib_files("grpc", ("public_headers",)) - grpc_private_headers = list_lib_files("grpc", ("headers",)) + # ObjectiveC doesn't use c-ares so we don't need address_sorting files at all + address_sorting_unwanted_files = list_lib_files("address_sorting", ("public_headers", "headers", "src")) + + grpc_private_files = list(sorted(set(list_lib_files("grpc", ("headers", "src"))) - set(address_sorting_unwanted_files))) + grpc_public_headers = list(sorted(set(list_lib_files("grpc", ("public_headers",))) - set(address_sorting_unwanted_files))) + grpc_private_headers = list(sorted(set(list_lib_files("grpc", ("headers",))) - set(address_sorting_unwanted_files))) + + # TODO(jtattermusch): build.yaml no longer has filegroups, so the files here are just hand-listed + # This template shouldn't be touching the filegroups anyway, so this is only a bit more fragile. + grpcpp_proto_files = ['include/grpcpp/impl/codegen/config_protobuf.h', + 'include/grpcpp/impl/codegen/proto_buffer_reader.h', + 'include/grpcpp/impl/codegen/proto_buffer_writer.h', + 'include/grpcpp/impl/codegen/proto_utils.h'] - grpcpp_proto_files = filter_grpcpp( - set(list_filegroup_files(("grpc++_codegen_proto", "grpc++_config_proto"), ("headers", "src", "public_headers"))) - - set(list_filegroup_files(("grpc++_codegen_base",), ("headers", "src", "public_headers"))) - ) grpcpp_private_files = filter_grpcpp( set(list_lib_files("grpc++", ("headers", "src"))) - set(grpc_private_files) # We exclude proto related files in this particular podspec so that we can provide a protobuf-independent lib - set(grpcpp_proto_files) + - set(address_sorting_unwanted_files) ) grpcpp_private_headers = filter_grpcpp( set(list_lib_files("grpc++", ("headers",))) - set(grpc_private_headers) # We exclude proto related files in this particular podspec so that we can provide a protobuf-independent lib - set(grpcpp_proto_files) + - set(address_sorting_unwanted_files) ) grpcpp_public_headers = filter_grpcpp( set(list_lib_files("grpc++", ("public_headers",))) - set(grpc_public_headers) # We exclude proto related files in this particular podspec so that we can provide a protobuf-independent lib - set(grpcpp_proto_files) + - set(address_sorting_unwanted_files) ) grpcpp_abseil_specs = list_abseil_specs("grpc++") %> diff --git a/templates/gRPC-Core.podspec.template b/templates/gRPC-Core.podspec.template index 40359f8ed3f..6beb74beb11 100644 --- a/templates/gRPC-Core.podspec.template +++ b/templates/gRPC-Core.podspec.template @@ -59,27 +59,35 @@ files.update(lib.get(field, [])) return list(sorted(files)) - grpc_private_files = list_lib_files("grpc", ("headers", "src")) - grpc_public_headers = list_lib_files("grpc", ("public_headers",)) - grpc_private_headers = list_lib_files("grpc", ("headers",)) + # ObjectiveC doesn't use c-ares so we don't need address_sorting files at all + address_sorting_unwanted_files = list_lib_files("address_sorting", ("public_headers", "headers", "src")) + + grpc_private_files = list(sorted(set(list_lib_files("grpc", ("headers", "src"))) - set(address_sorting_unwanted_files))) + grpc_public_headers = list(sorted(set(list_lib_files("grpc", ("public_headers",))) - set(address_sorting_unwanted_files))) + grpc_private_headers = list(sorted(set(list_lib_files("grpc", ("headers",))) - set(address_sorting_unwanted_files))) grpc_abseil_specs = list_abseil_specs("grpc") - grpc_cronet_files = list(sorted( - set(list_lib_files("grpc_cronet", ("src", "headers"))) - - set(grpc_private_files) - - set([ - # We do not need cronet dedicated plugin registry - "src/core/ext/transport/cronet/plugin_registry/grpc_cronet_plugin_registry.cc", - # We do not need dummy cronet API for ObjC - "src/core/ext/transport/cronet/transport/cronet_api_dummy.cc", - ]))) - grpc_cronet_public_headers = list(sorted( - set(list_lib_files("grpc_cronet", ("public_headers",))) - - set(grpc_public_headers))) + + # TODO(jtattermusch): build.yaml is now generated from bazel build + # which doesn't have an explicit "grpc_cronet" target. Until it exists + # we construct the list of files by taking what's in the "grpc" target + # and adding a few files on top of that. + grpc_cronet_extra_public_headers = ['include/grpc/grpc_cronet.h'] + grpc_cronet_extra_impl_files = [ + 'src/core/ext/transport/cronet/client/secure/cronet_channel_create.cc', + 'src/core/ext/transport/cronet/client/secure/cronet_channel_create.h', + 'src/core/ext/transport/cronet/transport/cronet_transport.cc', + 'src/core/ext/transport/cronet/transport/cronet_transport.h', + 'third_party/objective_c/Cronet/bidirectional_stream_c.h' + ] + + grpc_cronet_files = list(sorted(grpc_cronet_extra_impl_files)) + grpc_cronet_public_headers = list(sorted(grpc_cronet_extra_public_headers)) grpc_test_util_files = list(sorted( set(list_lib_files("end2end_tests", ("src", "headers"))) - set(grpc_private_files) + - set(address_sorting_unwanted_files) - set([ # Subprocess is not supported in tvOS and not needed by our tests. "test/core/util/subprocess_posix.cc", diff --git a/templates/src/core/plugin_registry.template b/templates/src/core/plugin_registry.template deleted file mode 100644 index a00d204a46c..00000000000 --- a/templates/src/core/plugin_registry.template +++ /dev/null @@ -1,39 +0,0 @@ -%YAML 1.2 ---- -foreach: libs -cond: selected.get('generate_plugin_registry', False) -output_name: ${selected.name}_plugin_registry.cc -template: | - /* - * - * Copyright 2016 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. - * - */ - - #include - - #include - - %for plugin in selected.plugins: - void ${plugin}_init(void); - void ${plugin}_shutdown(void); - %endfor - - void grpc_register_built_in_plugins(void) { - %for plugin in selected.plugins: - grpc_register_plugin(${plugin}_init, - ${plugin}_shutdown); - %endfor - } diff --git a/test/core/bad_client/gen_build_yaml.py b/test/core/bad_client/gen_build_yaml.py deleted file mode 100755 index c4f95654724..00000000000 --- a/test/core/bad_client/gen_build_yaml.py +++ /dev/null @@ -1,80 +0,0 @@ -#!/usr/bin/env python2.7 -# Copyright 2015 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. -"""Generates the appropriate build.json data for all the bad_client tests.""" - -from __future__ import print_function -import collections -import yaml - -TestOptions = collections.namedtuple('TestOptions', 'flaky cpu_cost') -default_test_options = TestOptions(False, 1.0) - -# maps test names to options -BAD_CLIENT_TESTS = { - 'badreq': default_test_options, - 'bad_streaming_id': default_test_options, - 'connection_prefix': default_test_options._replace(cpu_cost=0.2), - 'duplicate_header': default_test_options, - 'headers': default_test_options._replace(cpu_cost=0.2), - 'initial_settings_frame': default_test_options._replace(cpu_cost=0.2), - 'head_of_line_blocking': default_test_options, - 'large_metadata': default_test_options, - 'out_of_bounds': default_test_options, - 'server_registered_method': default_test_options, - 'simple_request': default_test_options, - 'window_overflow': default_test_options, - 'unknown_frame': default_test_options, -} - - -def main(): - json = { - '#': - 'generated with test/bad_client/gen_build_json.py', - 'libs': [{ - 'name': 'bad_client_test', - 'build': 'private', - 'language': 'c++', - 'src': ['test/core/bad_client/bad_client.cc'], - 'headers': ['test/core/bad_client/bad_client.h'], - 'vs_proj_dir': 'test/bad_client', - 'deps': ['grpc_test_util_unsecure', 'grpc_unsecure', 'gpr'] - }], - 'targets': [{ - 'name': - '%s_bad_client_test' % t, - 'cpu_cost': - BAD_CLIENT_TESTS[t].cpu_cost, - 'build': - 'test', - 'language': - 'c++', - 'secure': - False, - 'src': ['test/core/bad_client/tests/%s.cc' % t], - 'vs_proj_dir': - 'test', - 'exclude_iomgrs': ['uv'], - 'deps': [ - 'bad_client_test', 'grpc_test_util_unsecure', 'grpc_unsecure', - 'gpr' - ] - } for t in sorted(BAD_CLIENT_TESTS.keys())] - } - print(yaml.dump(json)) - - -if __name__ == '__main__': - main() diff --git a/test/core/bad_ssl/gen_build_yaml.py b/test/core/bad_ssl/gen_build_yaml.py deleted file mode 100755 index 12ec838b4e6..00000000000 --- a/test/core/bad_ssl/gen_build_yaml.py +++ /dev/null @@ -1,69 +0,0 @@ -#!/usr/bin/env python2.7 -# Copyright 2015 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. -"""Generates the appropriate build.json data for all the end2end tests.""" - -import collections -import yaml - -TestOptions = collections.namedtuple('TestOptions', 'flaky cpu_cost') -default_test_options = TestOptions(False, 1.0) - -# maps test names to options -BAD_CLIENT_TESTS = { - 'cert': default_test_options._replace(cpu_cost=0.1), - # Disabling this test because it does not link correctly as written - # 'alpn': default_test_options._replace(cpu_cost=0.1), -} - - -def main(): - json = { - '#': - 'generated with test/bad_ssl/gen_build_json.py', - 'libs': [{ - 'name': 'bad_ssl_test_server', - 'build': 'private', - 'language': 'c', - 'src': ['test/core/bad_ssl/server_common.cc'], - 'headers': ['test/core/bad_ssl/server_common.h'], - 'vs_proj_dir': 'test', - 'platforms': ['linux', 'posix', 'mac'], - 'deps': ['grpc_test_util', 'grpc', 'gpr'] - }], - 'targets': [{ - 'name': 'bad_ssl_%s_server' % t, - 'build': 'test', - 'language': 'c', - 'run': False, - 'src': ['test/core/bad_ssl/servers/%s.cc' % t], - 'vs_proj_dir': 'test/bad_ssl', - 'platforms': ['linux', 'posix', 'mac'], - 'deps': ['bad_ssl_test_server', 'grpc_test_util', 'grpc', 'gpr'] - } for t in sorted(BAD_CLIENT_TESTS.keys())] + [{ - 'name': 'bad_ssl_%s_test' % t, - 'cpu_cost': BAD_CLIENT_TESTS[t].cpu_cost, - 'build': 'test', - 'language': 'c', - 'src': ['test/core/bad_ssl/bad_ssl_test.cc'], - 'vs_proj_dir': 'test', - 'platforms': ['linux', 'posix', 'mac'], - 'deps': ['grpc_test_util', 'grpc', 'gpr'] - } for t in sorted(BAD_CLIENT_TESTS.keys())] - } - print yaml.dump(json) - - -if __name__ == '__main__': - main() diff --git a/test/core/end2end/gen_build_yaml.py b/test/core/end2end/gen_build_yaml.py index 889015bed40..d1e78cc6490 100755 --- a/test/core/end2end/gen_build_yaml.py +++ b/test/core/end2end/gen_build_yaml.py @@ -401,140 +401,16 @@ def without(l, e): return l +# Originally, this method was used to generate end2end test cases for build.yaml, +# but since the test cases are now extracted from bazel BUILD file, +# this is not used for generating run_tests.py test cases anymore. +# Nevertheless, subset of the output is still used by end2end_tests.cc.template +# and end2end_nosec_tests.cc.template +# TODO(jtattermusch): cleanup this file, so that it only generates the data we need. +# Right now there's some duplication between generate_tests.bzl and this file. def main(): - sec_deps = ['grpc_test_util', 'grpc', 'gpr'] - unsec_deps = ['grpc_test_util_unsecure', 'grpc_unsecure', 'gpr'] json = { - '#': - 'generated with test/end2end/gen_build_json.py', - 'libs': [{ - 'name': - 'end2end_tests', - 'build': - 'private', - 'language': - 'c', - 'secure': - True, - 'src': [ - 'test/core/end2end/end2end_tests.cc', - 'test/core/end2end/end2end_test_utils.cc' - ] + [ - 'test/core/end2end/tests/%s.cc' % t - for t in sorted(END2END_TESTS.keys()) - ], - 'headers': [ - 'test/core/end2end/tests/cancel_test_helpers.h', - 'test/core/end2end/end2end_tests.h' - ], - 'deps': - sec_deps, - 'vs_proj_dir': - 'test/end2end/tests', - }] + [{ - 'name': - 'end2end_nosec_tests', - 'build': - 'private', - 'language': - 'c', - 'secure': - False, - 'src': [ - 'test/core/end2end/end2end_nosec_tests.cc', - 'test/core/end2end/end2end_test_utils.cc' - ] + [ - 'test/core/end2end/tests/%s.cc' % t - for t in sorted(END2END_TESTS.keys()) - if not END2END_TESTS[t].secure - ], - 'headers': [ - 'test/core/end2end/tests/cancel_test_helpers.h', - 'test/core/end2end/end2end_tests.h' - ], - 'deps': - unsec_deps, - 'vs_proj_dir': - 'test/end2end/tests', - }], - 'targets': [{ - 'name': '%s_test' % f, - 'build': 'test', - 'language': 'c', - 'run': False, - 'src': ['test/core/end2end/fixtures/%s.cc' % f], - 'platforms': END2END_FIXTURES[f].platforms, - 'ci_platforms': - (END2END_FIXTURES[f].platforms if END2END_FIXTURES[f].ci_mac - else without(END2END_FIXTURES[f].platforms, 'mac')), - 'deps': ['end2end_tests'] + sec_deps, - 'vs_proj_dir': 'test/end2end/fixtures', - } for f in sorted(END2END_FIXTURES.keys())] + [{ - 'name': '%s_nosec_test' % f, - 'build': 'test', - 'language': 'c', - 'secure': False, - 'src': ['test/core/end2end/fixtures/%s.cc' % f], - 'run': False, - 'platforms': END2END_FIXTURES[f].platforms, - 'ci_platforms': - (END2END_FIXTURES[f].platforms if END2END_FIXTURES[f].ci_mac - else without(END2END_FIXTURES[f].platforms, 'mac')), - 'deps': ['end2end_nosec_tests'] + unsec_deps, - 'vs_proj_dir': 'test/end2end/fixtures', - } for f in sorted( - END2END_FIXTURES.keys()) if not END2END_FIXTURES[f].secure], - 'tests': [{ - 'name': - '%s_test' % f, - 'args': [t], - 'exclude_configs': - END2END_FIXTURES[f].exclude_configs, - 'exclude_iomgrs': - list( - set(END2END_FIXTURES[f].exclude_iomgrs) | - set(END2END_TESTS[t].exclude_iomgrs)), - 'platforms': - END2END_FIXTURES[f].platforms, - 'ci_platforms': - (END2END_FIXTURES[f].platforms if END2END_FIXTURES[f].ci_mac - else without(END2END_FIXTURES[f].platforms, 'mac')), - 'flaky': - END2END_TESTS[t].flaky, - 'language': - 'c', - 'cpu_cost': - END2END_TESTS[t].cpu_cost, - } - for f in sorted(END2END_FIXTURES.keys()) - for t in sorted(END2END_TESTS.keys()) - if compatible(f, t)] + - [{ - 'name': - '%s_nosec_test' % f, - 'args': [t], - 'exclude_configs': - END2END_FIXTURES[f].exclude_configs, - 'exclude_iomgrs': - list( - set(END2END_FIXTURES[f].exclude_iomgrs) | - set(END2END_TESTS[t].exclude_iomgrs)), - 'platforms': - END2END_FIXTURES[f].platforms, - 'ci_platforms': - (END2END_FIXTURES[f].platforms - if END2END_FIXTURES[f].ci_mac else without( - END2END_FIXTURES[f].platforms, 'mac')), - 'flaky': - END2END_TESTS[t].flaky, - 'language': - 'c', - 'cpu_cost': - END2END_TESTS[t].cpu_cost, - } for f in sorted(END2END_FIXTURES.keys()) - if not END2END_FIXTURES[f].secure - for t in sorted(END2END_TESTS.keys()) - if compatible(f, t) and not END2END_TESTS[t].secure], + # needed by end2end_tests.cc.template and end2end_nosec_tests.cc.template 'core_end2end_tests': dict((t, END2END_TESTS[t].secure) for t in END2END_TESTS.keys()) } diff --git a/test/cpp/naming/gen_build_yaml.py b/test/cpp/naming/gen_build_yaml.py index dfc84d35d05..9829116c2e6 100755 --- a/test/cpp/naming/gen_build_yaml.py +++ b/test/cpp/naming/gen_build_yaml.py @@ -68,104 +68,9 @@ def main(): json = { 'resolver_tests_common_zone_name': resolver_component_data['resolver_tests_common_zone_name'], + # this data is required by the resolver_component_tests_runner.py.template 'resolver_component_test_cases': _resolver_test_cases(resolver_component_data), - 'targets': [{ - 'name': - 'resolver_component_test' + unsecure_build_config_suffix, - 'build': - 'test', - 'language': - 'c++', - 'gtest': - False, - 'run': - False, - 'src': ['test/cpp/naming/resolver_component_test.cc'], - 'platforms': ['linux', 'posix', 'mac', 'windows'], - 'deps': [ - 'dns_test_util', - 'grpc++_test_util' + unsecure_build_config_suffix, - 'grpc_test_util' + unsecure_build_config_suffix, - 'grpc++' + unsecure_build_config_suffix, - 'grpc' + unsecure_build_config_suffix, - 'gpr', - 'grpc++_test_config', - ], - } for unsecure_build_config_suffix in ['_unsecure', '']] + [{ - 'name': - 'resolver_component_tests_runner_invoker' + - unsecure_build_config_suffix, - 'build': - 'test', - 'language': - 'c++', - 'gtest': - False, - 'run': - True, - 'src': - ['test/cpp/naming/resolver_component_tests_runner_invoker.cc'], - 'platforms': ['linux', 'posix', 'mac'], - 'deps': [ - 'grpc++_test_util', - 'grpc_test_util', - 'grpc++', - 'grpc', - 'gpr', - 'grpc++_test_config', - ], - 'args': [ - '--test_bin_name=resolver_component_test%s' % - unsecure_build_config_suffix, - '--running_under_bazel=false', - ], - } for unsecure_build_config_suffix in ['_unsecure', '']] + [{ - 'name': - 'address_sorting_test' + unsecure_build_config_suffix, - 'build': - 'test', - 'language': - 'c++', - 'gtest': - True, - 'run': - True, - 'src': ['test/cpp/naming/address_sorting_test.cc'], - 'platforms': ['linux', 'posix', 'mac', 'windows'], - 'deps': [ - 'grpc++_test_util' + unsecure_build_config_suffix, - 'grpc_test_util' + unsecure_build_config_suffix, - 'grpc++' + unsecure_build_config_suffix, - 'grpc' + unsecure_build_config_suffix, - 'gpr', - 'grpc++_test_config', - ], - } for unsecure_build_config_suffix in ['_unsecure', '']] + [ - { - 'name': - 'cancel_ares_query_test', - 'build': - 'test', - 'language': - 'c++', - 'gtest': - True, - 'run': - True, - 'src': ['test/cpp/naming/cancel_ares_query_test.cc'], - 'platforms': ['linux', 'posix', 'mac', 'windows'], - 'deps': [ - 'dns_test_util', - 'grpc++_test_util', - 'grpc_test_util', - 'grpc++', - 'grpc', - 'gpr', - 'grpc++_test_config', - ], - }, - ] } print(yaml.dump(json)) diff --git a/test/cpp/qps/gen_build_yaml.py b/test/cpp/qps/gen_build_yaml.py index b69d8dbc932..8163d7f6ae0 100755 --- a/test/cpp/qps/gen_build_yaml.py +++ b/test/cpp/qps/gen_build_yaml.py @@ -29,8 +29,9 @@ sys.path.append(run_tests_root) import performance.scenario_config as scenario_config configs_from_yaml = yaml.load( - open(os.path.join(os.path.dirname(sys.argv[0]), - '../../../build.yaml')))['configs'].keys() + open( + os.path.join(os.path.dirname(sys.argv[0]), + '../../../build_handwritten.yaml')))['configs'].keys() def mutate_scenario(scenario_json, is_tsan): @@ -87,6 +88,13 @@ def maybe_exclude_gcov(scenario_json): return [] +# Originally, this method was used to generate qps test cases for build.yaml, +# but since the test cases are now extracted from bazel BUILD file, +# this is not used for generating run_tests.py test cases anymore. +# Nevertheless, the output is still used by json_run_localhost_scenario_gen.py +# and qps_json_driver_scenario_gen.py to generate the scenario list for bazel. +# TODO(jtattermusch): cleanup this file, so that it only generates data needed +# by bazel. def generate_yaml(): return { 'tests': @@ -187,6 +195,3 @@ def generate_yaml(): for scenario_json in scenario_config.CXXLanguage().scenarios() if 'scalable' in scenario_json.get('CATEGORIES', [])] } - - -print(yaml.dump(generate_yaml())) diff --git a/tools/buildgen/build-cleaner.py b/tools/buildgen/build_cleaner.py similarity index 71% rename from tools/buildgen/build-cleaner.py rename to tools/buildgen/build_cleaner.py index 061ad7a3e21..4be078f1a04 100755 --- a/tools/buildgen/build-cleaner.py +++ b/tools/buildgen/build_cleaner.py @@ -38,7 +38,7 @@ def repr_ordered_dict(dumper, odict): yaml.add_representer(collections.OrderedDict, repr_ordered_dict) -def rebuild_as_ordered_dict(indict, special_keys): +def _rebuild_as_ordered_dict(indict, special_keys): outdict = collections.OrderedDict() for key in sorted(indict.keys()): if '#' in key: @@ -53,23 +53,22 @@ def rebuild_as_ordered_dict(indict, special_keys): return outdict -def clean_elem(indict): +def _clean_elem(indict): for name in ['public_headers', 'headers', 'src']: if name not in indict: continue inlist = indict[name] protos = list(x for x in inlist if os.path.splitext(x)[1] == '.proto') others = set(x for x in inlist if x not in protos) indict[name] = protos + sorted(others) - return rebuild_as_ordered_dict(indict, _ELEM_KEYS) + return _rebuild_as_ordered_dict(indict, _ELEM_KEYS) -for filename in sys.argv[1:]: - with open(filename) as f: - js = yaml.load(f) - js = rebuild_as_ordered_dict(js, _TOP_LEVEL_KEYS) +def cleaned_build_yaml_dict_as_string(indict): + """Takes dictionary which represents yaml file and returns the cleaned-up yaml string""" + js = _rebuild_as_ordered_dict(indict, _TOP_LEVEL_KEYS) for grp in ['filegroups', 'libs', 'targets']: if grp not in js: continue - js[grp] = sorted([clean_elem(x) for x in js[grp]], + js[grp] = sorted([_clean_elem(x) for x in js[grp]], key=lambda x: (x.get('language', '_'), x['name'])) output = yaml.dump(js, indent=2, width=80, default_flow_style=False) # massage out trailing whitespace @@ -77,9 +76,20 @@ for filename in sys.argv[1:]: for line in output.splitlines(): lines.append(line.rstrip() + '\n') output = ''.join(lines) - if TEST: + return output + + +if __name__ == '__main__': + for filename in sys.argv[1:]: with open(filename) as f: - assert f.read() == output - else: - with open(filename, 'w') as f: - f.write(output) + js = yaml.load(f) + output = cleaned_build_yaml_dict_as_string(js) + if TEST: + with open(filename) as f: + if not f.read() == output: + raise Exception( + 'Looks like build-cleaner.py has not been run for file "%s"?' + % filename) + else: + with open(filename, 'w') as f: + f.write(output) diff --git a/tools/buildgen/extract_metadata_from_bazel_xml.py b/tools/buildgen/extract_metadata_from_bazel_xml.py new file mode 100755 index 00000000000..00355fc3956 --- /dev/null +++ b/tools/buildgen/extract_metadata_from_bazel_xml.py @@ -0,0 +1,943 @@ +#!/usr/bin/env python +# Copyright 2020 The 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. + +import subprocess +import yaml +import xml.etree.ElementTree as ET +import os +import sys +import build_cleaner + +_ROOT = os.path.abspath(os.path.join(os.path.dirname(sys.argv[0]), '../..')) +os.chdir(_ROOT) + + +def _bazel_query_xml_tree(query): + """Get xml output of bazel query invocation, parsed as XML tree""" + output = subprocess.check_output( + ['tools/bazel', 'query', '--noimplicit_deps', '--output', 'xml', query]) + return ET.fromstring(output) + + +def _rule_dict_from_xml_node(rule_xml_node): + result = { + 'class': rule_xml_node.attrib.get('class'), + 'name': rule_xml_node.attrib.get('name'), + 'srcs': [], + 'hdrs': [], + 'deps': [], + 'data': [], + 'tags': [], + 'args': [], + 'generator_function': None, + 'size': None, + } + for child in rule_xml_node: + # all the metadata we want is stored under "list" tags + if child.tag == 'list': + list_name = child.attrib['name'] + if list_name in ['srcs', 'hdrs', 'deps', 'data', 'tags', 'args']: + result[list_name] += [item.attrib['value'] for item in child] + if child.tag == 'string': + string_name = child.attrib['name'] + if string_name in ['generator_function', 'size']: + result[string_name] = child.attrib['value'] + return result + + +def _extract_rules_from_bazel_xml(xml_tree): + result = {} + for child in xml_tree: + if child.tag == 'rule': + rule_dict = _rule_dict_from_xml_node(child) + rule_clazz = rule_dict['class'] + rule_name = rule_dict['name'] + if rule_clazz in [ + 'cc_library', 'cc_binary', 'cc_test', 'cc_proto_library', + 'proto_library' + ]: + if rule_name in result: + raise Exception('Rule %s already present' % rule_name) + result[rule_name] = rule_dict + return result + + +def _get_bazel_label(target_name): + if ':' in target_name: + return '//%s' % target_name + else: + return '//:%s' % target_name + + +def _extract_source_file_path(label): + """Gets relative path to source file from bazel deps listing""" + if label.startswith('//'): + label = label[len('//'):] + # labels in form //:src/core/lib/surface/call_test_only.h + if label.startswith(':'): + label = label[len(':'):] + # labels in form //test/core/util:port.cc + label = label.replace(':', '/') + return label + + +def _extract_public_headers(bazel_rule): + """Gets list of public headers from a bazel rule""" + result = [] + for dep in bazel_rule['hdrs']: + if dep.startswith('//:include/') and dep.endswith('.h'): + result.append(_extract_source_file_path(dep)) + return list(sorted(result)) + + +def _extract_nonpublic_headers(bazel_rule): + """Gets list of non-public headers from a bazel rule""" + result = [] + for dep in bazel_rule['hdrs']: + if dep.startswith('//') and not dep.startswith( + '//:include/') and dep.endswith('.h'): + result.append(_extract_source_file_path(dep)) + return list(sorted(result)) + + +def _extract_sources(bazel_rule): + """Gets list of source files from a bazel rule""" + result = [] + for dep in bazel_rule['srcs']: + if dep.startswith('//') and (dep.endswith('.cc') or dep.endswith('.c') + or dep.endswith('.proto')): + result.append(_extract_source_file_path(dep)) + return list(sorted(result)) + + +def _extract_deps(bazel_rule): + """Gets list of deps from from a bazel rule""" + return list(sorted(bazel_rule['deps'])) + + +def _create_target_from_bazel_rule(target_name, bazel_rules): + # extract the deps from bazel + bazel_rule = bazel_rules[_get_bazel_label(target_name)] + result = { + 'name': target_name, + '_PUBLIC_HEADERS_BAZEL': _extract_public_headers(bazel_rule), + '_HEADERS_BAZEL': _extract_nonpublic_headers(bazel_rule), + '_SRC_BAZEL': _extract_sources(bazel_rule), + '_DEPS_BAZEL': _extract_deps(bazel_rule), + } + return result + + +def _sort_by_build_order(lib_names, lib_dict, deps_key_name, verbose=False): + """Sort library names to form correct build order. Use metadata from lib_dict""" + # we find correct build order by performing a topological sort + # expected output: if library B depends on A, A should be listed first + + # all libs that are not in the dictionary are considered external. + external_deps = list( + sorted(filter(lambda lib_name: lib_name not in lib_dict, lib_names))) + if verbose: + print('topo_ordering ' + str(lib_names)) + print(' external_deps ' + str(external_deps)) + + result = list(external_deps) # external deps will be listed first + while len(result) < len(lib_names): + more_results = [] + for lib in lib_names: + if lib not in result: + dep_set = set(lib_dict[lib].get(deps_key_name, [])) + dep_set = dep_set.intersection(lib_names) + # if lib only depends on what's already built, add it to the results + if not dep_set.difference(set(result)): + more_results.append(lib) + if not more_results: + raise Exception( + 'Cannot sort topologically, there seems to be a cyclic dependency' + ) + if verbose: + print(' adding ' + str(more_results)) + result = result + list( + sorted(more_results + )) # when build order doesn't matter, sort lexicographically + return result + + +# TODO(jtattermusch): deduplicate with transitive_dependencies.py (which has a slightly different logic) +def _populate_transitive_deps(bazel_rules): + """Add 'transitive_deps' field for each of the rules""" + transitive_deps = {} + for rule_name in bazel_rules.iterkeys(): + transitive_deps[rule_name] = set(bazel_rules[rule_name]['deps']) + + while True: + deps_added = 0 + for rule_name in bazel_rules.iterkeys(): + old_deps = transitive_deps[rule_name] + new_deps = set(old_deps) + for dep_name in old_deps: + new_deps.update(transitive_deps.get(dep_name, set())) + deps_added += len(new_deps) - len(old_deps) + transitive_deps[rule_name] = new_deps + # if none of the transitive dep sets has changed, we're done + if deps_added == 0: + break + + for rule_name, bazel_rule in bazel_rules.iteritems(): + bazel_rule['transitive_deps'] = list(sorted(transitive_deps[rule_name])) + + +def _external_dep_name_from_bazel_dependency(bazel_dep): + """Returns name of dependency if external bazel dependency is provided or None""" + if bazel_dep.startswith('@com_google_absl//'): + # special case for add dependency on one of the absl libraries (there is not just one absl library) + prefixlen = len('@com_google_absl//') + return bazel_dep[prefixlen:] + elif bazel_dep == '//external:upb_lib': + return 'upb' + elif bazel_dep == '//external:benchmark': + return 'benchmark' + else: + # all the other external deps such as gflags, protobuf, cares, zlib + # don't need to be listed explicitly, they are handled automatically + # by the build system (make, cmake) + return None + + +def _expand_intermediate_deps(target_dict, public_dep_names, bazel_rules): + # Some of the libraries defined by bazel won't be exposed in build.yaml + # We call these "intermediate" dependencies. This method expands + # the intermediate deps for given target (populates library's + # headers, sources and dicts as if the intermediate dependency never existed) + + # use this dictionary to translate from bazel labels to dep names + bazel_label_to_dep_name = {} + for dep_name in public_dep_names: + bazel_label_to_dep_name[_get_bazel_label(dep_name)] = dep_name + + target_name = target_dict['name'] + bazel_deps = target_dict['_DEPS_BAZEL'] + + # initial values + public_headers = set(target_dict['_PUBLIC_HEADERS_BAZEL']) + headers = set(target_dict['_HEADERS_BAZEL']) + src = set(target_dict['_SRC_BAZEL']) + deps = set() + + expansion_blacklist = set() + to_expand = set(bazel_deps) + while to_expand: + + # start with the last dependency to be built + build_order = _sort_by_build_order(list(to_expand), bazel_rules, + 'transitive_deps') + + bazel_dep = build_order[-1] + to_expand.remove(bazel_dep) + + is_public = bazel_dep in bazel_label_to_dep_name + external_dep_name_maybe = _external_dep_name_from_bazel_dependency( + bazel_dep) + + if is_public: + # this is not an intermediate dependency we so we add it + # to the list of public dependencies to the list, in the right format + deps.add(bazel_label_to_dep_name[bazel_dep]) + + # we do not want to expand any intermediate libraries that are already included + # by the dependency we just added + expansion_blacklist.update( + bazel_rules[bazel_dep]['transitive_deps']) + + elif external_dep_name_maybe: + deps.add(external_dep_name_maybe) + + elif bazel_dep.startswith( + '//external:') or not bazel_dep.startswith('//'): + # all the other external deps can be skipped + pass + + elif bazel_dep in expansion_blacklist: + # do not expand if a public dependency that depends on this has already been expanded + pass + + else: + if bazel_dep in bazel_rules: + # this is an intermediate library, expand it + public_headers.update( + _extract_public_headers(bazel_rules[bazel_dep])) + headers.update( + _extract_nonpublic_headers(bazel_rules[bazel_dep])) + src.update(_extract_sources(bazel_rules[bazel_dep])) + + new_deps = _extract_deps(bazel_rules[bazel_dep]) + to_expand.update(new_deps) + else: + raise Exception(bazel_dep + ' not in bazel_rules') + + # make the 'deps' field transitive, but only list non-intermediate deps and selected external deps + bazel_transitive_deps = bazel_rules[_get_bazel_label( + target_name)]['transitive_deps'] + for transitive_bazel_dep in bazel_transitive_deps: + public_name = bazel_label_to_dep_name.get(transitive_bazel_dep, None) + if public_name: + deps.add(public_name) + external_dep_name_maybe = _external_dep_name_from_bazel_dependency( + transitive_bazel_dep) + if external_dep_name_maybe: + # expanding all absl libraries is technically correct but creates too much noise + if not external_dep_name_maybe.startswith('absl'): + deps.add(external_dep_name_maybe) + + target_dict['public_headers'] = list(sorted(public_headers)) + target_dict['headers'] = list(sorted(headers)) + target_dict['src'] = list(sorted(src)) + target_dict['deps'] = list(sorted(deps)) + + +def _generate_build_metadata(build_extra_metadata, bazel_rules): + lib_names = build_extra_metadata.keys() + result = {} + + for lib_name in lib_names: + lib_dict = _create_target_from_bazel_rule(lib_name, bazel_rules) + + _expand_intermediate_deps(lib_dict, lib_names, bazel_rules) + + # populate extra properties from build metadata + lib_dict.update(build_extra_metadata.get(lib_name, {})) + + # store to results + result[lib_name] = lib_dict + + # rename some targets to something else + # this needs to be made after we're done with most of processing logic + # otherwise the already-renamed libraries will have different names than expected + for lib_name in lib_names: + to_name = build_extra_metadata.get(lib_name, {}).get('_RENAME', None) + if to_name: + # store lib under the new name and also change its 'name' property + if to_name in result: + raise Exception('Cannot rename target ' + lib_name + ', ' + + to_name + ' already exists.') + lib_dict = result.pop(lib_name) + lib_dict['name'] = to_name + result[to_name] = lib_dict + + # dep names need to be updated as well + for lib_dict_to_update in result.values(): + lib_dict_to_update['deps'] = list( + map(lambda dep: to_name if dep == lib_name else dep, + lib_dict_to_update['deps'])) + + # make sure deps are listed in reverse topological order (e.g. "grpc gpr" and not "gpr grpc") + for lib_dict in result.itervalues(): + lib_dict['deps'] = list( + reversed(_sort_by_build_order(lib_dict['deps'], result, 'deps'))) + + return result + + +def _convert_to_build_yaml_like(lib_dict): + lib_names = list( + filter( + lambda lib_name: lib_dict[lib_name].get('_TYPE', 'library') == + 'library', lib_dict.keys())) + target_names = list( + filter( + lambda lib_name: lib_dict[lib_name].get('_TYPE', 'library') == + 'target', lib_dict.keys())) + test_names = list( + filter( + lambda lib_name: lib_dict[lib_name].get('_TYPE', 'library') == + 'test', lib_dict.keys())) + + # list libraries and targets in predefined order + lib_list = list(map(lambda lib_name: lib_dict[lib_name], lib_names)) + target_list = list(map(lambda lib_name: lib_dict[lib_name], target_names)) + test_list = list(map(lambda lib_name: lib_dict[lib_name], test_names)) + + # get rid of temporary private fields prefixed with "_" and some other useless fields + for lib in lib_list: + for field_to_remove in filter(lambda k: k.startswith('_'), lib.keys()): + lib.pop(field_to_remove, None) + for target in target_list: + for field_to_remove in filter(lambda k: k.startswith('_'), + target.keys()): + target.pop(field_to_remove, None) + target.pop('public_headers', + None) # public headers make no sense for targets + for test in test_list: + for field_to_remove in filter(lambda k: k.startswith('_'), test.keys()): + test.pop(field_to_remove, None) + test.pop('public_headers', + None) # public headers make no sense for tests + + build_yaml_like = { + 'libs': lib_list, + 'filegroups': [], + 'targets': target_list, + 'tests': test_list, + } + return build_yaml_like + + +def _extract_cc_tests(bazel_rules): + """Gets list of cc_test tests from bazel rules""" + result = [] + for bazel_rule in bazel_rules.itervalues(): + if bazel_rule['class'] == 'cc_test': + test_name = bazel_rule['name'] + if test_name.startswith('//'): + prefixlen = len('//') + result.append(test_name[prefixlen:]) + return list(sorted(result)) + + +def _filter_cc_tests(tests): + """Filters out tests that we don't want or we cannot build them reasonably""" + + # most qps tests are autogenerated, we are fine without them + tests = list( + filter(lambda test: not test.startswith('test/cpp/qps:'), tests)) + + # we have trouble with census dependency outside of bazel + tests = list( + filter(lambda test: not test.startswith('test/cpp/ext/filters/census:'), + tests)) + tests = list( + filter( + lambda test: not test.startswith( + 'test/cpp/microbenchmarks:bm_opencensus_plugin'), tests)) + + # missing opencensus/stats/stats.h + tests = list( + filter( + lambda test: not test.startswith( + 'test/cpp/end2end:server_load_reporting_end2end_test'), tests)) + tests = list( + filter( + lambda test: not test.startswith( + 'test/cpp/server/load_reporter:lb_load_reporter_test'), tests)) + + # The test uses --running_under_bazel cmdline argument + # To avoid the trouble needing to adjust it, we just skip the test + tests = list( + filter( + lambda test: not test.startswith( + 'test/cpp/naming:resolver_component_tests_runner_invoker'), + tests)) + + # the test requires 'client_crash_test_server' to be built + tests = list( + filter( + lambda test: not test.startswith('test/cpp/end2end:time_change_test' + ), tests)) + + # the test requires 'client_crash_test_server' to be built + tests = list( + filter( + lambda test: not test.startswith( + 'test/cpp/end2end:client_crash_test'), tests)) + + # the test requires 'server_crash_test_client' to be built + tests = list( + filter( + lambda test: not test.startswith( + 'test/cpp/end2end:server_crash_test'), tests)) + + # test never existed under build.yaml and it fails -> skip it + tests = list( + filter( + lambda test: not test.startswith( + 'test/core/tsi:ssl_session_cache_test'), tests)) + + return tests + + +def _generate_build_extra_metadata_for_tests(tests, bazel_rules): + test_metadata = {} + for test in tests: + test_dict = {'build': 'test', '_TYPE': 'target'} + + bazel_rule = bazel_rules[_get_bazel_label(test)] + + bazel_tags = bazel_rule['tags'] + if 'manual' in bazel_tags: + # don't run the tests marked as "manual" + test_dict['run'] = False + + if 'no_uses_polling' in bazel_tags: + test_dict['uses_polling'] = False + + if 'grpc_fuzzer' == bazel_rule['generator_function']: + # currently we hand-list fuzzers instead of generating them automatically + # because there's no way to obtain maxlen property from bazel BUILD file. + print('skipping fuzzer ' + test) + continue + + # if any tags that restrict platform compatibility are present, + # generate the "platforms" field accordingly + # TODO(jtattermusch): there is also a "no_linux" tag, but we cannot take + # it into account as it is applied by grpc_cc_test when poller expansion + # is made (for tests where uses_polling=True). So for now, we just + # assume all tests are compatible with linux and ignore the "no_linux" tag + # completely. + known_platform_tags = set(['no_windows', 'no_mac']) + if set(bazel_tags).intersection(known_platform_tags): + platforms = [] + # assume all tests are compatible with linux and posix + platforms.append('linux') + platforms.append( + 'posix') # there is no posix-specific tag in bazel BUILD + if not 'no_mac' in bazel_tags: + platforms.append('mac') + if not 'no_windows' in bazel_tags: + platforms.append('windows') + test_dict['platforms'] = platforms + + if '//external:benchmark' in bazel_rule['transitive_deps']: + test_dict['benchmark'] = True + test_dict['defaults'] = 'benchmark' + + cmdline_args = bazel_rule['args'] + if cmdline_args: + test_dict['args'] = list(cmdline_args) + + uses_gtest = '//external:gtest' in bazel_rule['transitive_deps'] + if uses_gtest: + test_dict['gtest'] = True + + if test.startswith('test/cpp') or uses_gtest: + test_dict['language'] = 'c++' + + elif test.startswith('test/core'): + test_dict['language'] = 'c' + else: + raise Exception('wrong test' + test) + + # short test name without the path. + # There can be name collisions, but we will resolve them later + simple_test_name = os.path.basename(_extract_source_file_path(test)) + test_dict['_RENAME'] = simple_test_name + + test_metadata[test] = test_dict + + # detect duplicate test names + tests_by_simple_name = {} + for test_name, test_dict in test_metadata.iteritems(): + simple_test_name = test_dict['_RENAME'] + if not simple_test_name in tests_by_simple_name: + tests_by_simple_name[simple_test_name] = [] + tests_by_simple_name[simple_test_name].append(test_name) + + # choose alternative names for tests with a name collision + for collision_list in tests_by_simple_name.itervalues(): + if len(collision_list) > 1: + for test_name in collision_list: + long_name = test_name.replace('/', '_').replace(':', '_') + print( + 'short name of "%s" collides with another test, renaming to %s' + % (test_name, long_name)) + test_metadata[test_name]['_RENAME'] = long_name + + # TODO(jtattermusch): in bazel, add "_test" suffix to the test names + # test does not have "_test" suffix: fling + # test does not have "_test" suffix: fling_stream + # test does not have "_test" suffix: client_ssl + # test does not have "_test" suffix: handshake_server_with_readahead_handshaker + # test does not have "_test" suffix: handshake_verify_peer_options + # test does not have "_test" suffix: server_ssl + + return test_metadata + + +# extra metadata that will be used to construct build.yaml +# there are mostly extra properties that we weren't able to obtain from the bazel build +# _TYPE: whether this is library, target or test +# _RENAME: whether this target should be renamed to a different name (to match expectations of make and cmake builds) +# NOTE: secure is 'check' by default, so setting secure = False below does matter +_BUILD_EXTRA_METADATA = { + 'third_party/address_sorting:address_sorting': { + 'language': 'c', + 'build': 'all', + 'secure': False, + '_RENAME': 'address_sorting' + }, + 'gpr': { + 'language': 'c', + 'build': 'all', + 'secure': False + }, + 'grpc': { + 'language': 'c', + 'build': 'all', + 'baselib': True, + 'secure': True, + 'dll': True, + 'generate_plugin_registry': True + }, + 'grpc++': { + 'language': 'c++', + 'build': 'all', + 'baselib': True, + 'dll': True + }, + 'grpc++_alts': { + 'language': 'c++', + 'build': 'all', + 'baselib': True + }, + 'grpc++_error_details': { + 'language': 'c++', + 'build': 'all' + }, + 'grpc++_reflection': { + 'language': 'c++', + 'build': 'all' + }, + 'grpc++_unsecure': { + 'language': 'c++', + 'build': 'all', + 'baselib': True, + 'secure': False, + 'dll': True + }, + # TODO(jtattermusch): do we need to set grpc_csharp_ext's LDFLAGS for wrapping memcpy in the same way as in build.yaml? + 'grpc_csharp_ext': { + 'language': 'c', + 'build': 'all', + 'dll': 'only' + }, + 'grpc_unsecure': { + 'language': 'c', + 'build': 'all', + 'baselib': True, + 'secure': False, + 'dll': True, + 'generate_plugin_registry': True + }, + 'grpcpp_channelz': { + 'language': 'c++', + 'build': 'all' + }, + 'src/compiler:grpc_plugin_support': { + 'language': 'c++', + 'build': 'protoc', + 'secure': False, + '_RENAME': 'grpc_plugin_support' + }, + 'src/compiler:grpc_cpp_plugin': { + 'language': 'c++', + 'build': 'protoc', + 'secure': False, + '_TYPE': 'target', + '_RENAME': 'grpc_cpp_plugin' + }, + 'src/compiler:grpc_csharp_plugin': { + 'language': 'c++', + 'build': 'protoc', + 'secure': False, + '_TYPE': 'target', + '_RENAME': 'grpc_csharp_plugin' + }, + 'src/compiler:grpc_node_plugin': { + 'language': 'c++', + 'build': 'protoc', + 'secure': False, + '_TYPE': 'target', + '_RENAME': 'grpc_node_plugin' + }, + 'src/compiler:grpc_objective_c_plugin': { + 'language': 'c++', + 'build': 'protoc', + 'secure': False, + '_TYPE': 'target', + '_RENAME': 'grpc_objective_c_plugin' + }, + 'src/compiler:grpc_php_plugin': { + 'language': 'c++', + 'build': 'protoc', + 'secure': False, + '_TYPE': 'target', + '_RENAME': 'grpc_php_plugin' + }, + 'src/compiler:grpc_python_plugin': { + 'language': 'c++', + 'build': 'protoc', + 'secure': False, + '_TYPE': 'target', + '_RENAME': 'grpc_python_plugin' + }, + 'src/compiler:grpc_ruby_plugin': { + 'language': 'c++', + 'build': 'protoc', + 'secure': False, + '_TYPE': 'target', + '_RENAME': 'grpc_ruby_plugin' + }, + + # TODO(jtattermusch): consider adding grpc++_core_stats + + # test support libraries + 'test/core/util:grpc_test_util': { + 'language': 'c', + 'build': 'private', + '_RENAME': 'grpc_test_util' + }, + 'test/core/util:grpc_test_util_unsecure': { + 'language': 'c', + 'build': 'private', + 'secure': False, + '_RENAME': 'grpc_test_util_unsecure' + }, + # TODO(jtattermusch): consider adding grpc++_test_util_unsecure - it doesn't seem to be used by bazel build (don't forget to set secure: False) + 'test/cpp/util:test_config': { + 'language': 'c++', + 'build': 'private', + '_RENAME': 'grpc++_test_config' + }, + 'test/cpp/util:test_util': { + 'language': 'c++', + 'build': 'private', + '_RENAME': 'grpc++_test_util' + }, + + # end2end test support libraries + 'test/core/end2end:end2end_tests': { + 'language': 'c', + 'build': 'private', + 'secure': True, + '_RENAME': 'end2end_tests' + }, + 'test/core/end2end:end2end_nosec_tests': { + 'language': 'c', + 'build': 'private', + 'secure': False, + '_RENAME': 'end2end_nosec_tests' + }, + + # benchmark support libraries + 'test/cpp/microbenchmarks:helpers': { + 'language': 'c++', + 'build': 'test', + 'defaults': 'benchmark', + '_RENAME': 'benchmark_helpers' + }, + 'test/cpp/interop:interop_client': { + 'language': 'c++', + 'build': 'test', + 'run': False, + '_TYPE': 'target', + '_RENAME': 'interop_client' + }, + 'test/cpp/interop:interop_server': { + 'language': 'c++', + 'build': 'test', + 'run': False, + '_TYPE': 'target', + '_RENAME': 'interop_server' + }, + 'test/cpp/interop:http2_client': { + 'language': 'c++', + 'build': 'test', + 'run': False, + '_TYPE': 'target', + '_RENAME': 'http2_client' + }, + 'test/cpp/qps:qps_json_driver': { + 'language': 'c++', + 'build': 'test', + 'run': False, + '_TYPE': 'target', + '_RENAME': 'qps_json_driver' + }, + 'test/cpp/qps:qps_worker': { + 'language': 'c++', + 'build': 'test', + 'run': False, + '_TYPE': 'target', + '_RENAME': 'qps_worker' + }, + 'test/cpp/util:grpc_cli': { + 'language': 'c++', + 'build': 'test', + 'run': False, + '_TYPE': 'target', + '_RENAME': 'grpc_cli' + }, + + # TODO(jtattermusch): create_jwt and verify_jwt breaks distribtests because it depends on grpc_test_utils and thus requires tests to be built + # For now it's ok to disable them as these binaries aren't very useful anyway. + #'test/core/security:create_jwt': { 'language': 'c', 'build': 'tool', '_TYPE': 'target', '_RENAME': 'grpc_create_jwt' }, + #'test/core/security:verify_jwt': { 'language': 'c', 'build': 'tool', '_TYPE': 'target', '_RENAME': 'grpc_verify_jwt' }, + + # TODO(jtattermusch): add remaining tools such as grpc_print_google_default_creds_token (they are not used by bazel build) + + # Fuzzers + 'test/core/security:alts_credentials_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/security/corpus/alts_credentials_corpus'], + 'maxlen': 2048, + '_TYPE': 'target', + '_RENAME': 'alts_credentials_fuzzer' + }, + 'test/core/end2end/fuzzers:client_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/end2end/fuzzers/client_fuzzer_corpus'], + 'maxlen': 2048, + 'dict': 'test/core/end2end/fuzzers/hpack.dictionary', + '_TYPE': 'target', + '_RENAME': 'client_fuzzer' + }, + 'test/core/transport/chttp2:hpack_parser_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/transport/chttp2/hpack_parser_corpus'], + 'maxlen': 512, + 'dict': 'test/core/end2end/fuzzers/hpack.dictionary', + '_TYPE': 'target', + '_RENAME': 'hpack_parser_fuzzer_test' + }, + 'test/core/http:request_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/http/request_corpus'], + 'maxlen': 2048, + '_TYPE': 'target', + '_RENAME': 'http_request_fuzzer_test' + }, + 'test/core/http:response_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/http/response_corpus'], + 'maxlen': 2048, + '_TYPE': 'target', + '_RENAME': 'http_response_fuzzer_test' + }, + 'test/core/json:json_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/json/corpus'], + 'maxlen': 512, + '_TYPE': 'target', + '_RENAME': 'json_fuzzer_test' + }, + 'test/core/nanopb:fuzzer_response': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/nanopb/corpus_response'], + 'maxlen': 128, + '_TYPE': 'target', + '_RENAME': 'nanopb_fuzzer_response_test' + }, + 'test/core/nanopb:fuzzer_serverlist': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/nanopb/corpus_serverlist'], + 'maxlen': 128, + '_TYPE': 'target', + '_RENAME': 'nanopb_fuzzer_serverlist_test' + }, + 'test/core/slice:percent_decode_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/slice/percent_decode_corpus'], + 'maxlen': 32, + '_TYPE': 'target', + '_RENAME': 'percent_decode_fuzzer' + }, + 'test/core/slice:percent_encode_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/slice/percent_encode_corpus'], + 'maxlen': 32, + '_TYPE': 'target', + '_RENAME': 'percent_encode_fuzzer' + }, + 'test/core/end2end/fuzzers:server_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/end2end/fuzzers/server_fuzzer_corpus'], + 'maxlen': 2048, + 'dict': 'test/core/end2end/fuzzers/hpack.dictionary', + '_TYPE': 'target', + '_RENAME': 'server_fuzzer' + }, + 'test/core/security:ssl_server_fuzzer': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/security/corpus/ssl_server_corpus'], + 'maxlen': 2048, + '_TYPE': 'target', + '_RENAME': 'ssl_server_fuzzer' + }, + 'test/core/client_channel:uri_fuzzer_test': { + 'language': 'c++', + 'build': 'fuzzer', + 'corpus_dirs': ['test/core/client_channel/uri_corpus'], + 'maxlen': 128, + '_TYPE': 'target', + '_RENAME': 'uri_fuzzer_test' + }, + + # TODO(jtattermusch): these fuzzers had no build.yaml equivalent + # test/core/compression:message_compress_fuzzer + # test/core/compression:message_decompress_fuzzer + # test/core/compression:stream_compression_fuzzer + # test/core/compression:stream_decompression_fuzzer + # test/core/slice:b64_decode_fuzzer + # test/core/slice:b64_encode_fuzzer +} + +# We need a complete picture of all the targets and dependencies we're interested in +# so we run multiple bazel queries and merge the results. +_BAZEL_DEPS_QUERIES = [ + 'deps("//test/...")', + 'deps("//:all")', + 'deps("//src/compiler/...")', + 'deps("//src/proto/...")', +] + +bazel_rules = {} +for query in _BAZEL_DEPS_QUERIES: + bazel_rules.update( + _extract_rules_from_bazel_xml(_bazel_query_xml_tree(query))) + +_populate_transitive_deps(bazel_rules) + +tests = _filter_cc_tests(_extract_cc_tests(bazel_rules)) +test_metadata = _generate_build_extra_metadata_for_tests(tests, bazel_rules) + +all_metadata = {} +all_metadata.update(_BUILD_EXTRA_METADATA) +all_metadata.update(test_metadata) + +all_targets_dict = _generate_build_metadata(all_metadata, bazel_rules) +build_yaml_like = _convert_to_build_yaml_like(all_targets_dict) + +# if a test uses source files from src/ directly, it's a little bit suspicious +for tgt in build_yaml_like['targets']: + if tgt['build'] == 'test': + for src in tgt['src']: + if src.startswith('src/') and not src.endswith('.proto'): + print('source file from under "src/" tree used in test ' + + tgt['name'] + ': ' + src) + +build_yaml_string = build_cleaner.cleaned_build_yaml_dict_as_string( + build_yaml_like) +with open('build_autogenerated.yaml', 'w') as file: + file.write(build_yaml_string) diff --git a/tools/buildgen/generate_build_additions.sh b/tools/buildgen/generate_build_additions.sh index b1246c13fbe..01d839284fc 100755 --- a/tools/buildgen/generate_build_additions.sh +++ b/tools/buildgen/generate_build_additions.sh @@ -23,12 +23,11 @@ gen_build_yaml_dirs=" \ src/upb \ src/zlib \ src/c-ares \ - test/core/bad_client \ - test/core/bad_ssl \ - test/core/end2end \ + test/core/end2end \ test/cpp/naming \ - test/cpp/qps \ tools/run_tests/lb_interop_tests" + + gen_build_files="" for gen_build_yaml in $gen_build_yaml_dirs do diff --git a/tools/buildgen/generate_projects.py b/tools/buildgen/generate_projects.py index bedb2aa626c..88183f8024d 100755 --- a/tools/buildgen/generate_projects.py +++ b/tools/buildgen/generate_projects.py @@ -39,7 +39,7 @@ args = argp.parse_args() json = args.build_files -test = {} if 'TEST' in os.environ else None +test = {} if os.environ.get('TEST', 'false') == 'true' else None plugins = sorted(glob.glob('tools/buildgen/plugins/*.py')) diff --git a/tools/buildgen/generate_projects.sh b/tools/buildgen/generate_projects.sh index fa0a4d82092..872af701aea 100755 --- a/tools/buildgen/generate_projects.sh +++ b/tools/buildgen/generate_projects.sh @@ -16,20 +16,25 @@ set -e -if [ "x$TEST" = "x" ] ; then - TEST=false -fi +export TEST=${TEST:-false} +echo "Generating build_autogenerated.yaml from bazel BUILD file" +rm -f build_autogenerated.yaml +python tools/buildgen/extract_metadata_from_bazel_xml.py cd `dirname $0`/../.. mako_renderer=tools/buildgen/mako_renderer.py -if [ "x$TEST" != "x" ] ; then - tools/buildgen/build-cleaner.py build.yaml -fi +tools/buildgen/build_cleaner.py build_handwritten.yaml + +# check build_autogenerated.yaml is already in its "clean" form +TEST=true tools/buildgen/build_cleaner.py build_autogenerated.yaml . tools/buildgen/generate_build_additions.sh -python tools/buildgen/generate_projects.py build.yaml $gen_build_files $* +# Instead of generating from a single build.yaml, we've split it into +# - build_handwritten.yaml: manually written metadata +# - build_autogenerated.yaml: generated from bazel BUILD file +python tools/buildgen/generate_projects.py build_handwritten.yaml build_autogenerated.yaml $gen_build_files $* rm $gen_build_files diff --git a/tools/buildgen/plugins/make_fuzzer_tests.py b/tools/buildgen/plugins/make_fuzzer_tests.py index f644a7c272e..4c8ffb0f947 100644 --- a/tools/buildgen/plugins/make_fuzzer_tests.py +++ b/tools/buildgen/plugins/make_fuzzer_tests.py @@ -30,6 +30,14 @@ def mako_plugin(dictionary): 'test/core/util/one_corpus_entry_fuzzer.cc') new_target['own_src'].append( 'test/core/util/one_corpus_entry_fuzzer.cc') + + # avoid having two main() methods + to_remove = 'test/core/util/fuzzer_corpus_test.cc' + if to_remove in new_target['src']: + new_target['src'].remove(to_remove) + if to_remove in new_target['own_src']: + new_target['own_src'].remove(to_remove) + targets.append(new_target) for corpus in new_target['corpus_dirs']: for fn in sorted(glob.glob('%s/*' % corpus)): diff --git a/tools/distrib/sanitize.sh b/tools/distrib/sanitize.sh index 13488b1e235..01385820d36 100755 --- a/tools/distrib/sanitize.sh +++ b/tools/distrib/sanitize.sh @@ -20,7 +20,7 @@ cd $(dirname $0)/../.. DIFF_COMMAND="git diff --name-only HEAD | grep -v ^third_party/" if [ "x$1" == 'x--pre-commit' ]; then - if eval $DIFF_COMMAND | grep '^build.yaml$'; then + if eval $DIFF_COMMAND | grep '^build_handwritten.yaml$'; then ./tools/buildgen/generate_projects.sh else templates=$(eval $DIFF_COMMAND | grep '\.template$' || true) diff --git a/tools/internal_ci/linux/grpc_publish_packages.sh b/tools/internal_ci/linux/grpc_publish_packages.sh index db5c9d0b03b..1aa66bcf931 100755 --- a/tools/internal_ci/linux/grpc_publish_packages.sh +++ b/tools/internal_ci/linux/grpc_publish_packages.sh @@ -19,7 +19,7 @@ shopt -s nullglob cd "$(dirname "$0")/../../.." -GRPC_VERSION=$(grep -e "^ *version: " build.yaml | head -n 1 | sed 's/.*: //') +GRPC_VERSION=$(grep -e "^ *version: " build_handwritten.yaml | head -n 1 | sed 's/.*: //') INPUT_ARTIFACTS=$KOKORO_GFILE_DIR/github/grpc/artifacts INDEX_FILENAME=index.xml diff --git a/tools/run_tests/sanity/check_version.py b/tools/run_tests/sanity/check_version.py index dfe9a759b38..d53fa094aa6 100755 --- a/tools/run_tests/sanity/check_version.py +++ b/tools/run_tests/sanity/check_version.py @@ -56,7 +56,7 @@ if branch_name is not None: else: check_version = lambda version: True -with open('build.yaml', 'r') as f: +with open('build_handwritten.yaml', 'r') as f: build_yaml = yaml.load(f.read()) settings = build_yaml['settings']