Add swagger-drogon generator
This commit is contained in:
@@ -73,18 +73,32 @@ target_link_libraries(${PROJECT_NAME}
|
||||
file(GLOB CONTROLLER_HEADERS CONFIGURE_DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/controllers/*.h
|
||||
)
|
||||
file(GLOB OPENAPI_SOURCE_FILES CONFIGURE_DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/controllers/*.cc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/services/*.cc
|
||||
)
|
||||
file(GLOB_RECURSE SWAGGER_DROGON_FILES CONFIGURE_DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/swagger-drogon/*.py
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/swagger-drogon/*.toml
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/swagger-drogon/*.md
|
||||
)
|
||||
set(OPENAPI_OUTPUT ${CMAKE_BINARY_DIR}/openapi/visione.openapi.json)
|
||||
add_custom_command(
|
||||
OUTPUT ${OPENAPI_OUTPUT}
|
||||
COMMAND ${Python3_EXECUTABLE}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/generate_openapi.py
|
||||
--controllers ${CMAKE_CURRENT_SOURCE_DIR}/controllers
|
||||
--sources ${CMAKE_CURRENT_SOURCE_DIR}/controllers ${CMAKE_CURRENT_SOURCE_DIR}/services
|
||||
--contract ${CMAKE_CURRENT_SOURCE_DIR}/docs/openapi/visione.yaml
|
||||
--out ${OPENAPI_OUTPUT}
|
||||
--title "Visione API"
|
||||
--version ${PROJECT_VERSION}
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/generate_openapi.py
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/docs/openapi/visione.yaml
|
||||
${SWAGGER_DROGON_FILES}
|
||||
${CONTROLLER_HEADERS}
|
||||
${OPENAPI_SOURCE_FILES}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
VERBATIM
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user