OpenAPI to KCL
To convert from models defined in the OpenAPI spec file to KCL schema, we could run the following script:
kcl-openapi generate model -f ${your_open_api_spec.yaml} -t ${the_kcl_files_output_dir}
For example:
There is the OpenAPI spec file that we need to convert:
test_open_api_spec.yaml
definitions:
v1.TestInt:
type: object
properties:
name:
type: string
format: int-or-string
required:
- name
x-kcl-type:
import:
package: v1.test_int
alias: test_int
type: TestInt
swagger: "2.0"
info:
title: KCL
version: v0.0.2
paths: {}The script will be:
kcl-openapi generate model -f test_open_api_spec.yaml -t ~/
Then we can find the generated file here:
~/models/v1/test_int.k
"""
This is the test_int module in v1 package.
amytestThis file was generated by the KCL auto-gen tool. DO NOT EDIT.
Editing this file might prove futile when you re-run the KCL auto-gen generate command.
"""
schema TestInt: """v1 test int """
name: int | str
"""name
"""