使用 $ref 将 Openapi YAML 配置部署到 Google 端点
Deploy Openapi YAML config to Google Endpoint with $ref
是否可以将 Openapi YAML 配置部署到 Google 端点,如果它从多个文件引用,并将文件存储在文件夹结构中?
例如:
-\ openapi.yaml
--\service1\service1.yaml
--\service2\service2.yaml
.
.
.
假设 openapi.yaml 对 service1.yaml 和 service2.yaml 中的一个或多个定义有 $ref。
请注意,我有大量的文件夹和 YAML,以上只是我正在尝试实现的示例。
如何使用服务管理按原样将此结构部署到 Google 个端点?
不幸的是,Endpoints 支持 OpenAPI doesn't handle 外部类型引用。即使是这样,在 gcloud endpoints services deploy
.
中的 OpenAPI 上传期间也不会保留路径结构
作为解决方法,您可以使用 speccy 来完成此任务。它将您的 api 描述与您的所有引用合并到一个可部署的 yaml 文件中。
speccy resolve openapi-template.yaml -j -o openapi.yaml
您甚至可以通过添加 -j
标志将 json 引用合并到您的 yaml 文件中。
Speccy 是一个 npm 包,因此,您显然需要 node.js 环境才能使用它。
是否可以将 Openapi YAML 配置部署到 Google 端点,如果它从多个文件引用,并将文件存储在文件夹结构中?
例如:
-\ openapi.yaml
--\service1\service1.yaml
--\service2\service2.yaml
.
.
.
假设 openapi.yaml 对 service1.yaml 和 service2.yaml 中的一个或多个定义有 $ref。
请注意,我有大量的文件夹和 YAML,以上只是我正在尝试实现的示例。
如何使用服务管理按原样将此结构部署到 Google 个端点?
不幸的是,Endpoints 支持 OpenAPI doesn't handle 外部类型引用。即使是这样,在 gcloud endpoints services deploy
.
作为解决方法,您可以使用 speccy 来完成此任务。它将您的 api 描述与您的所有引用合并到一个可部署的 yaml 文件中。
speccy resolve openapi-template.yaml -j -o openapi.yaml
您甚至可以通过添加 -j
标志将 json 引用合并到您的 yaml 文件中。
Speccy 是一个 npm 包,因此,您显然需要 node.js 环境才能使用它。