Skip to content
Snippets Groups Projects
Commit d8faca69 authored by Sergey Bronnikov's avatar Sergey Bronnikov Committed by Vladimir Davydov
Browse files

lua: implement stubs for etcd client

To enable etcd client set the following CMake variables:

 - ENABLE_ETCD_CLIENT: ON
 - ETCD_CLIENT_DIR: path to a directory with etcd client Lua source
   files

If ENABLE_ETCD_CLIENT is unset, then a stub implementation is built,
which spits an error on attempt require etcd-client.

Needed for https://github.com/tarantool/tarantool-ee/issues/443

MSG="stubs for enterprise version, no user-visible changes"

NO_CHANGELOG=MSG
NO_DOC=MSG
NO_TEST=MSG
parent b71fa1a7
No related branches found
No related tags found
No related merge requests found
......@@ -73,6 +73,23 @@ lua_source(lua_sources lua/compat.lua compat_lua)
if (ENABLE_COMPRESS_MODULE)
lua_source(lua_sources ${COMPRESS_MODULE_LUA_SOURCE} compress_lua)
endif()
if (ENABLE_ETCD_CLIENT)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/client/auth_http.lua etcd_client_client_auth_http_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/client/http.lua etcd_client_client_http_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/client/jsstream.lua etcd_client_client_jsstream_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/client/pool.lua etcd_client_client_pool_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/error/etcd.lua etcd_client_error_etcd_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/error/http.lua etcd_client_error_http_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/grpc_json.lua etcd_client_grpc_json_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/init.lua etcd_client_init_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/math.lua etcd_client_math_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/protocol.lua etcd_client_protocol_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/subscribe/auto.lua etcd_client_subscribe_auto_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/subscribe/once.lua etcd_client_subscribe_once_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/txn.lua etcd_client_txn_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/utils.lua etcd_client_utils_lua)
lua_source(lua_sources ${ETCD_CLIENT_DIR}/etcd-client/version.lua etcd_client_version_lua)
endif()
# 3rd party lua sources
lua_source(lua_sources ../third_party/luafun/fun.lua fun_lua)
......
......@@ -271,6 +271,23 @@ extern char minifio_lua[],
luarocks_util_lua[],
luarocks_core_util_lua[]
#endif /* defined(EMBED_LUAROCKS) */
#if ENABLE_ETCD_CLIENT
, etcd_client_client_auth_http_lua[],
etcd_client_client_http_lua[],
etcd_client_client_jsstream_lua[],
etcd_client_client_pool_lua[],
etcd_client_error_etcd_lua[],
etcd_client_error_http_lua[],
etcd_client_grpc_json_lua[],
etcd_client_init_lua[],
etcd_client_math_lua[],
etcd_client_protocol_lua[],
etcd_client_subscribe_auto_lua[],
etcd_client_subscribe_once_lua[],
etcd_client_txn_lua[],
etcd_client_utils_lua[],
etcd_client_version_lua[]
#endif
;
static const char *lua_modules[] = {
......@@ -340,6 +357,27 @@ static const char *lua_modules[] = {
"internal.print", print_lua,
"internal.pairs", pairs_lua,
"luadebug", luadebug_lua,
#if ENABLE_ETCD_CLIENT
/*
* Module components order is important here: components that required
* other modules must be loaded first.
*/
"etcd-client.version", etcd_client_version_lua,
"etcd-client.utils", etcd_client_utils_lua,
"etcd-client.math", etcd_client_math_lua,
"etcd-client.txn", etcd_client_txn_lua,
"etcd-client.grpc_json", etcd_client_grpc_json_lua,
"etcd-client.protocol", etcd_client_protocol_lua,
"etcd-client.subscribe.auto", etcd_client_subscribe_auto_lua,
"etcd-client.subscribe.once", etcd_client_subscribe_once_lua,
"etcd-client.error.etcd", etcd_client_error_etcd_lua,
"etcd-client.error.http", etcd_client_error_http_lua,
"etcd-client.client.pool", etcd_client_client_pool_lua,
"etcd-client.client.jsstream", etcd_client_client_jsstream_lua,
"etcd-client.client.http", etcd_client_client_http_lua,
"etcd-client.client.auth_http", etcd_client_client_auth_http_lua,
"etcd-client", etcd_client_init_lua,
#endif
NULL
};
......
......@@ -291,6 +291,7 @@
#cmakedefine ENABLE_READ_VIEW 1
#cmakedefine ENABLE_SECURITY 1
#cmakedefine ENABLE_COMPRESS_MODULE 1
#cmakedefine ENABLE_ETCD_CLIENT 1
#cmakedefine EXPORT_LIBCURL_SYMBOLS 1
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment