1184c6a509
Co-authored-by: Alejandro R Mosteo <amosteo@unizar.es>
84 lines
2.8 KiB
TOML
84 lines
2.8 KiB
TOML
description = "OpenAPI library to build REST server applications"
|
|
tags = ["rest", "web", "api", "openapi"]
|
|
name = "openapi_server"
|
|
version = "0.8.0"
|
|
licenses = "Apache-2.0"
|
|
authors = ["Stephane.Carrez@gmail.com"]
|
|
maintainers = ["Stephane.Carrez@gmail.com"]
|
|
maintainers-logins = ["stcarrez"]
|
|
project-files = ["openapi_server.gpr"]
|
|
website = "https://gitlab.com/stcarrez/openapi-ada"
|
|
long-description = """
|
|
|
|
[](https://porion.vacs.fr/porion/projects/view/openapi-ada/summary)
|
|
[](https://porion.vacs.fr/porion/projects/view/openapi-ada/xunits)
|
|
[](https://porion.vacs.fr/porion/projects/view/openapi-ada/summary)
|
|
|
|
[OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator) is a code generator that supports generation of
|
|
API client libraries, server stubs and documentation automatically
|
|
given an [OpenAPI Spec](https://github.com/OAI/OpenAPI-Specification).
|
|
|
|
The Ada server support has been integrated in [OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator).
|
|
|
|
The OpenAPI Ada library is a small support library for the Ada code generator
|
|
provided by OpenAPI Generator. The library provides support to serialize the data,
|
|
make HTTP requests and support the [OpenAPI Spec](https://github.com/OAI/OpenAPI-Specification).
|
|
specific operations or types.
|
|
|
|
## Alire setup
|
|
|
|
```
|
|
alr with openapi_server
|
|
```
|
|
|
|
For the server part, you must choose a servlet web container that will handle the requests.
|
|
Two web server implementations are provided:
|
|
|
|
* [AWS](https://github.com/AdaCore/aws)
|
|
* [EWS](https://github.com/simonjwright/ews)
|
|
|
|
and you should run one of the following `alr` command depending on your choice:
|
|
|
|
```
|
|
alr with servletada_aws
|
|
alr with servletada_ews
|
|
```
|
|
|
|
## Generation
|
|
|
|
Example of server generation with OpenAPI file `my-api.yaml` and use of CURL support:
|
|
|
|
```
|
|
alr exec -- openapi-generate-server -i my-api.yaml \
|
|
--additional-properties projectName=MyProject \
|
|
--additional-properties openApiName=OpenAPI \
|
|
--additional-properties httpSupport=Curl \
|
|
--model-package MyProject.MyModule -o .
|
|
```
|
|
|
|
"""
|
|
|
|
[[depends-on]]
|
|
utilada = "^2.6.0"
|
|
utilada_xml = "^2.6.0"
|
|
security = "^1.5.0"
|
|
servletada = "^1.7.0"
|
|
openapi = "^0.7.0"
|
|
|
|
[configuration]
|
|
disabled = true
|
|
|
|
[[actions]]
|
|
type = "post-fetch"
|
|
command = ["gnatprep", "-DWEB_DIR=\"$(CRATE_ROOT)\"",
|
|
"src/openapi-servers-config.gpb",
|
|
"src/openapi-servers-config.ads"
|
|
]
|
|
|
|
|
|
[origin]
|
|
commit = "0ea881bcced127bb0d5ec23a086ceb368e578571"
|
|
subdir = "./server/"
|
|
url = "git+https://gitlab.com/stcarrez/openapi-ada.git"
|
|
|