teodorescuserban opened a new issue, #11501: URL: https://github.com/apache/apisix/issues/11501
### Description I would like to use standard yaml anchors ans aliases to not repeat myself too much in the config. The only reference to anchors i found is https://github.com/apache/apisix/issues/10468 Example: `include/variables.yaml`: ``` variables: common_methods: &common_methods - GET - POST - PUT - DELETE ... ``` `apisix.yaml`: ``` include include/variables.yaml routes: - uri: /inbound/api/* name: API Route methods: *common_methods service_id: 'service_api' upstream_id: 'upstream_api' labels: API_VERSION: '1' api_name: api api_type: inbound status: 1 ``` This config will result in this error: ``` [error] 34#34: *3 [lua] config_yaml.lua:210: failed to check item data of [routes] err:property "methods" validation failed: wrong type: expected array, got string ,val: {"priority":0,"labels":{"api_type":"inbound","API_VERSION":"1","api_name":"api"},"name":"API Route","uri":"/inbound/api/*","upstream_id":"upstream_api","methods":"*common_methods","service_id":"service_api","status":1}, context: init_worker_by_lua* ``` I also tried: ``` include include/variables.yaml routes: - uri: /inbound/api/* name: API Route methods: <<: *common_methods service_id: 'service_api' upstream_id: 'upstream_api' labels: API_VERSION: '1' api_name: api api_type: inbound status: 1 ``` which results in: ``` [error] 35#35: *1 [lua] config_yaml.lua:210: failed to check item data of [routes] err:property "methods" validation failed: wrong type: expected array, got table ,val: {"priority":0,"service_id":"service_api","status":1,"name":"API Route","methods":{"<<":"*common_methods"},"uri":"/inbound/api/*","upstream_id":"upstream_api","labels":{"API_VERSION":"1","api_name":"api","api_type":"inbound"}}, context: init_worker_by_lua* ``` Any ideas? Thank you! ### Environment Using the official docker image from DockerHub: apache/apisix:3.9.1-debian - APISIX version (run `apisix version`): 3.9.1 - Operating system (run `uname -a`): Linux 3a2a54d2c5fc 6.1.41-63.114.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Aug 1 20:47:25 UTC 2023 x86_64 GNU/Linux - OpenResty / Nginx version (run `openresty -V` or `nginx -V`): nginx version: openresty/1.25.3.1 built by gcc 10.2.1 20210110 (Debian 10.2.1-6) built with OpenSSL 3.2.0 23 Nov 2023 TLS SNI support enabled configure arguments: --prefix=/usr/local/openresty/nginx --with-cc-opt='-O2 -DAPISIX_RUNTIME_VER=1.2.0 -DNGX_GRPC_CLI_ENGINE_PATH=/usr/local/openresty/libgrpc_engine.so -DNGX_HTTP_GRPC_CLI_ENGINE_PATH=/usr/local/openresty/libgrpc_engine.so -DNGX_LUA_ABORT_AT_PANIC -I/usr/local/openresty/zlib/include -I/usr/local/openresty/pcre/include -I/usr/local/openresty/openssl3/include' --add-module=../ngx_devel_kit-0.3.3 --add-module=../echo-nginx-module-0.63 --add-module=../xss-nginx-module-0.06 --add-module=../ngx_coolkit-0.2 --add-module=../set-misc-nginx-module-0.33 --add-module=../form-input-nginx-module-0.12 --add-module=../encrypted-session-nginx-module-0.09 --add-module=../srcache-nginx-module-0.33 --add-module=../ngx_lua-0.10.26 --add-module=../ngx_lua_upstream-0.07 --add-module=../headers-more-nginx-module-0.37 --add-module=../array-var-nginx-module-0.06 --add-module=../memc-nginx-module-0.20 --add-module=../redis2-nginx-module-0.15 --add-module=../redis-nginx-module-0.3.9 --add-mo dule=../ngx_stream_lua-0.0.14 --with-ld-opt='-Wl,-rpath,/usr/local/openresty/luajit/lib -Wl,-rpath,/usr/local/openresty/wasmtime-c-api/lib -L/usr/local/openresty/zlib/lib -L/usr/local/openresty/pcre/lib -L/usr/local/openresty/openssl3/lib -Wl,-rpath,/usr/local/openresty/zlib/lib:/usr/local/openresty/pcre/lib:/usr/local/openresty/openssl3/lib' --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../mod_dubbo-1.0.2 --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../ngx_multi_upstream_module-1.2.0 --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../apisix-nginx-module-1.16.0 --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../apisix-nginx-module-1.16.0/src/stream --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../apisix-nginx-module-1.16.0/src/meta --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../wasm-nginx-module-0.7.0 --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../lua-var-nginx-module-v0.5.3 --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../grpc-client -nginx-module-v0.5.0 --add-module=/tmp/tmp.EQbG5FbABp/openresty-1.25.3.1/../lua-resty-events-0.2.0 --with-poll_module --with-pcre-jit --with-stream --with-stream_ssl_module --with-stream_ssl_preread_module --with-http_v2_module --with-http_v3_module --without-mail_pop3_module --without-mail_imap_module --without-mail_smtp_module --with-http_stub_status_module --with-http_realip_module --with-http_addition_module --with-http_auth_request_module --with-http_secure_link_module --with-http_random_index_module --with-http_gzip_static_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-threads --with-compat --with-stream --without-pcre2 --with-http_ssl_module -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
