commit 1c32f89c9362ae61d44c4c2ef438725c392489a8 from: Sergey Bronnikov date: Thu May 04 10:26:48 2023 UTC lua: implement stub for etcd source To enable etcd source support in builtin conf module, set the following CMake variables: - ENABLE_CONF_SOURCE_ETCD: ON - ENABLE_ETCD_CLIENT: ON - CONF_SOURCE_ETCD_LUA_SOURCE: etcd client Lua source files - ETCD_CLIENT_DIR: path to a directory with etcd client Lua source files If ENABLE_CONF_SOURCE_ETCD is unset, then a stub implementation is built, which spits an error on attempt require "conf.source.etcd". Closes #XXXX NO_CHANGELOG=internal NO_DOC=internal NO_TEST=internal commit - 1e242024ee7a547943355b11398c686c52cf4c98 commit + 1c32f89c9362ae61d44c4c2ef438725c392489a8 blob - 0c63213f74bc0fe50c3b1b81ce4630a577537f8c blob + b2ddb32f3e0ba3829f4d67f0214e31e4385ff195 --- src/CMakeLists.txt +++ src/CMakeLists.txt @@ -103,6 +103,10 @@ lua_source(lua_sources lua/conf/conf/mainloop.lua conf lua_source(lua_sources lua/conf/conf/utils/schema.lua conf_utils_schema_lua) lua_source(lua_sources lua/conf/conf/source/env.lua conf_source_env_lua) lua_source(lua_sources lua/conf/conf/source/yaml_file.lua conf_source_yaml_file_lua) +if(ENABLE_CONF_SOURCE_ETCD) + lua_source(lua_sources ${CONF_SOURCE_ETCD_LUA_SOURCE} conf_source_etcd_lua) +endif() + # 3rd party lua sources lua_source(lua_sources ../third_party/luafun/fun.lua fun_lua) lua_source(lua_sources ../third_party/lua/luadebug.lua luadebug_lua) blob - 5148475d6d7ab1a8d3b717c9bb47618e4c40bdaa blob + d22694b66adb85486013b7d5398c84345c7d84c0 --- src/box/lua/init.c +++ src/box/lua/init.c @@ -173,6 +173,9 @@ extern char session_lua[], metrics_tarantool_lua[], metrics_utils_lua[], metrics_version_lua[], +#if ENABLE_CONF_SOURCE_ETCD + conf_source_etcd_lua[], +#endif conf_source_yaml_file_lua[], conf_source_env_lua[], conf_section_config_lua[], @@ -356,6 +359,10 @@ static const char *lua_sources[] = { "conf.source.env", conf_source_env_lua, "lua/conf/conf/source/yaml_file", "conf.source.yaml_file", conf_source_yaml_file_lua, +#if ENABLE_CONF_SOURCE_ETCD + "lua/conf_source_etcd", + "conf.source.etcd", conf_source_etcd_lua, +#endif "lua/conf/conf/mainloop", "conf.mainloop", conf_mainloop_lua, "lua/conf/init", blob - 213c235e0a293c479590808369577780d80fcac6 blob + 90a0775fdfa0d2c95e94af2e4d90ab43c78d3841 --- src/trivia/config.h.cmake +++ src/trivia/config.h.cmake @@ -292,6 +292,7 @@ #cmakedefine ENABLE_SECURITY 1 #cmakedefine ENABLE_COMPRESS_MODULE 1 #cmakedefine ENABLE_ETCD_CLIENT 1 +#cmakedefine ENABLE_CONF_SOURCE_ETCD 1 #cmakedefine EXPORT_LIBCURL_SYMBOLS 1