From 4c8a0d91c6339977fb7fe9fbbcd29ea4f356a2c7 Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Wed, 18 Aug 2021 08:39:08 -0700 Subject: [PATCH] Call into plugin registry from config code (#27041) * Call into plugin registry from config code * Automated change: Fix sanity tests * Remove unused name * Remove unused name Co-authored-by: ctiller --- BUILD | 2 ++ CMakeLists.txt | 2 ++ Makefile | 2 ++ build_autogenerated.yaml | 4 ++++ config.m4 | 2 ++ config.w32 | 2 ++ gRPC-C++.podspec | 2 ++ gRPC-Core.podspec | 3 +++ grpc.gemspec | 2 ++ grpc.gyp | 2 ++ package.xml | 2 ++ src/core/plugin_registry/grpc_plugin_registry.cc | 10 ++++++++++ .../plugin_registry/grpc_unsecure_plugin_registry.cc | 10 ++++++++++ src/python/grpcio/grpc_core_dependencies.py | 1 + tools/doxygen/Doxyfile.c++.internal | 2 ++ tools/doxygen/Doxyfile.core.internal | 2 ++ 16 files changed, 50 insertions(+) diff --git a/BUILD b/BUILD index 1281cda5214..8058475cd5f 100644 --- a/BUILD +++ b/BUILD @@ -342,6 +342,7 @@ grpc_cc_library( standalone = True, visibility = ["@grpc:public"], deps = [ + "config", "gpr_base", "grpc_base_c", "grpc_common", @@ -379,6 +380,7 @@ grpc_cc_library( "@grpc:public", ], deps = [ + "config", "gpr_base", "grpc_base_c", "grpc_common", diff --git a/CMakeLists.txt b/CMakeLists.txt index 6bbdc77feb5..7eff7c1e408 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1854,6 +1854,7 @@ add_library(grpc 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/config/core_configuration.cc src/core/lib/debug/stats.cc src/core/lib/debug/stats_data.cc src/core/lib/debug/trace.cc @@ -2492,6 +2493,7 @@ add_library(grpc_unsecure 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/config/core_configuration.cc src/core/lib/debug/stats.cc src/core/lib/debug/stats_data.cc src/core/lib/debug/trace.cc diff --git a/Makefile b/Makefile index c3cd053bb89..0f0fb13108e 100644 --- a/Makefile +++ b/Makefile @@ -1374,6 +1374,7 @@ LIBGRPC_SRC = \ 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/config/core_configuration.cc \ src/core/lib/debug/stats.cc \ src/core/lib/debug/stats_data.cc \ src/core/lib/debug/trace.cc \ @@ -1862,6 +1863,7 @@ LIBGRPC_UNSECURE_SRC = \ 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/config/core_configuration.cc \ src/core/lib/debug/stats.cc \ src/core/lib/debug/stats_data.cc \ src/core/lib/debug/trace.cc \ diff --git a/build_autogenerated.yaml b/build_autogenerated.yaml index 50e85275298..2958f65df92 100644 --- a/build_autogenerated.yaml +++ b/build_autogenerated.yaml @@ -732,6 +732,7 @@ libs: - 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/config/core_configuration.h - src/core/lib/debug/stats.h - src/core/lib/debug/stats_data.h - src/core/lib/debug/trace.h @@ -1269,6 +1270,7 @@ libs: - 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/config/core_configuration.cc - src/core/lib/debug/stats.cc - src/core/lib/debug/stats_data.cc - src/core/lib/debug/trace.cc @@ -1773,6 +1775,7 @@ libs: - 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/config/core_configuration.h - src/core/lib/debug/stats.h - src/core/lib/debug/stats_data.h - src/core/lib/debug/trace.h @@ -2037,6 +2040,7 @@ libs: - 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/config/core_configuration.cc - src/core/lib/debug/stats.cc - src/core/lib/debug/stats_data.cc - src/core/lib/debug/trace.cc diff --git a/config.m4 b/config.m4 index 40245441bae..e6fbad30372 100644 --- a/config.m4 +++ b/config.m4 @@ -382,6 +382,7 @@ if test "$PHP_GRPC" != "no"; then 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/config/core_configuration.cc \ src/core/lib/debug/stats.cc \ src/core/lib/debug/stats_data.cc \ src/core/lib/debug/trace.cc \ @@ -1185,6 +1186,7 @@ if test "$PHP_GRPC" != "no"; then PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/backoff) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/channel) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/compression) + PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/config) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/debug) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/event_engine) PHP_ADD_BUILD_DIR($ext_builddir/src/core/lib/gpr) diff --git a/config.w32 b/config.w32 index ca17dc52a82..5a034e0bce7 100644 --- a/config.w32 +++ b/config.w32 @@ -348,6 +348,7 @@ if (PHP_GRPC != "no") { "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\\config\\core_configuration.cc " + "src\\core\\lib\\debug\\stats.cc " + "src\\core\\lib\\debug\\stats_data.cc " + "src\\core\\lib\\debug\\trace.cc " + @@ -1286,6 +1287,7 @@ if (PHP_GRPC != "no") { FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\backoff"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\channel"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\compression"); + FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\config"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\debug"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\event_engine"); FSO.CreateFolder(base_dir+"\\ext\\grpc\\src\\core\\lib\\gpr"); diff --git a/gRPC-C++.podspec b/gRPC-C++.podspec index cd55c4dbc56..cd8dee7eb33 100644 --- a/gRPC-C++.podspec +++ b/gRPC-C++.podspec @@ -527,6 +527,7 @@ Pod::Spec.new do |s| '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/config/core_configuration.h', 'src/core/lib/debug/stats.h', 'src/core/lib/debug/stats_data.h', 'src/core/lib/debug/trace.h', @@ -1191,6 +1192,7 @@ Pod::Spec.new do |s| '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/config/core_configuration.h', 'src/core/lib/debug/stats.h', 'src/core/lib/debug/stats_data.h', 'src/core/lib/debug/trace.h', diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec index 2fde596a132..e0504861622 100644 --- a/gRPC-Core.podspec +++ b/gRPC-Core.podspec @@ -860,6 +860,8 @@ Pod::Spec.new do |s| 'src/core/lib/compression/stream_compression_gzip.h', 'src/core/lib/compression/stream_compression_identity.cc', 'src/core/lib/compression/stream_compression_identity.h', + 'src/core/lib/config/core_configuration.cc', + 'src/core/lib/config/core_configuration.h', 'src/core/lib/debug/stats.cc', 'src/core/lib/debug/stats.h', 'src/core/lib/debug/stats_data.cc', @@ -1778,6 +1780,7 @@ Pod::Spec.new do |s| '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/config/core_configuration.h', 'src/core/lib/debug/stats.h', 'src/core/lib/debug/stats_data.h', 'src/core/lib/debug/trace.h', diff --git a/grpc.gemspec b/grpc.gemspec index 6041c3b4b80..294d1a7765e 100644 --- a/grpc.gemspec +++ b/grpc.gemspec @@ -773,6 +773,8 @@ Gem::Specification.new do |s| s.files += %w( src/core/lib/compression/stream_compression_gzip.h ) s.files += %w( src/core/lib/compression/stream_compression_identity.cc ) s.files += %w( src/core/lib/compression/stream_compression_identity.h ) + s.files += %w( src/core/lib/config/core_configuration.cc ) + s.files += %w( src/core/lib/config/core_configuration.h ) s.files += %w( src/core/lib/debug/stats.cc ) s.files += %w( src/core/lib/debug/stats.h ) s.files += %w( src/core/lib/debug/stats_data.cc ) diff --git a/grpc.gyp b/grpc.gyp index 53cca3613ac..965529952cd 100644 --- a/grpc.gyp +++ b/grpc.gyp @@ -807,6 +807,7 @@ '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/config/core_configuration.cc', 'src/core/lib/debug/stats.cc', 'src/core/lib/debug/stats_data.cc', 'src/core/lib/debug/trace.cc', @@ -1268,6 +1269,7 @@ '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/config/core_configuration.cc', 'src/core/lib/debug/stats.cc', 'src/core/lib/debug/stats_data.cc', 'src/core/lib/debug/trace.cc', diff --git a/package.xml b/package.xml index 4607cde4b82..f40d90b8b03 100644 --- a/package.xml +++ b/package.xml @@ -753,6 +753,8 @@ + + diff --git a/src/core/plugin_registry/grpc_plugin_registry.cc b/src/core/plugin_registry/grpc_plugin_registry.cc index 271b0103d0f..c6a99c707dd 100644 --- a/src/core/plugin_registry/grpc_plugin_registry.cc +++ b/src/core/plugin_registry/grpc_plugin_registry.cc @@ -20,6 +20,8 @@ #include +#include "src/core/lib/config/core_configuration.h" + void grpc_http_filters_init(void); void grpc_http_filters_shutdown(void); void grpc_chttp2_plugin_init(void); @@ -160,3 +162,11 @@ void grpc_register_built_in_plugins(void) { grpc_core::GoogleCloud2ProdResolverShutdown); #endif } + +namespace grpc_core { + +void BuildCoreConfiguration(CoreConfiguration::Builder*) { + // TODO(ctiller): Incrementally call out to plugins as we require them to register things with builder. +} + +} diff --git a/src/core/plugin_registry/grpc_unsecure_plugin_registry.cc b/src/core/plugin_registry/grpc_unsecure_plugin_registry.cc index b58ab32838e..e4b7c0a1824 100644 --- a/src/core/plugin_registry/grpc_unsecure_plugin_registry.cc +++ b/src/core/plugin_registry/grpc_unsecure_plugin_registry.cc @@ -20,6 +20,8 @@ #include +#include "src/core/lib/config/core_configuration.h" + void grpc_http_filters_init(void); void grpc_http_filters_shutdown(void); void grpc_chttp2_plugin_init(void); @@ -113,3 +115,11 @@ void grpc_register_built_in_plugins(void) { grpc_register_plugin(grpc_workaround_cronet_compression_filter_init, grpc_workaround_cronet_compression_filter_shutdown); } + +namespace grpc_core { + +void BuildCoreConfiguration(CoreConfiguration::Builder*) { + // TODO(ctiller): Incrementally call out to plugins as we require them to register things with builder. +} + +} diff --git a/src/python/grpcio/grpc_core_dependencies.py b/src/python/grpcio/grpc_core_dependencies.py index 24f2d5c1fa9..eb27cc4adf9 100644 --- a/src/python/grpcio/grpc_core_dependencies.py +++ b/src/python/grpcio/grpc_core_dependencies.py @@ -357,6 +357,7 @@ CORE_SOURCE_FILES = [ '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/config/core_configuration.cc', 'src/core/lib/debug/stats.cc', 'src/core/lib/debug/stats_data.cc', 'src/core/lib/debug/trace.cc', diff --git a/tools/doxygen/Doxyfile.c++.internal b/tools/doxygen/Doxyfile.c++.internal index 9e4e9eb03f9..af644aae25f 100644 --- a/tools/doxygen/Doxyfile.c++.internal +++ b/tools/doxygen/Doxyfile.c++.internal @@ -1706,6 +1706,8 @@ src/core/lib/compression/stream_compression_gzip.cc \ src/core/lib/compression/stream_compression_gzip.h \ src/core/lib/compression/stream_compression_identity.cc \ src/core/lib/compression/stream_compression_identity.h \ +src/core/lib/config/core_configuration.cc \ +src/core/lib/config/core_configuration.h \ src/core/lib/debug/stats.cc \ src/core/lib/debug/stats.h \ src/core/lib/debug/stats_data.cc \ diff --git a/tools/doxygen/Doxyfile.core.internal b/tools/doxygen/Doxyfile.core.internal index 51a94671565..1e041530823 100644 --- a/tools/doxygen/Doxyfile.core.internal +++ b/tools/doxygen/Doxyfile.core.internal @@ -1543,6 +1543,8 @@ src/core/lib/compression/stream_compression_gzip.cc \ src/core/lib/compression/stream_compression_gzip.h \ src/core/lib/compression/stream_compression_identity.cc \ src/core/lib/compression/stream_compression_identity.h \ +src/core/lib/config/core_configuration.cc \ +src/core/lib/config/core_configuration.h \ src/core/lib/debug/stats.cc \ src/core/lib/debug/stats.h \ src/core/lib/debug/stats_data.cc \