Closed3
CDK Days 2022 / Schema-driven OpenAPI Development with CDK
OpenAPI (a.k.a. "Swagger") is a language-agnostic definition for RESTful APIs. There's already a vast ecosystem of tooling built around OpenAPI schemas but using it with CDK has not been "an optimal experience" so far – I want to change that!
なにかしら、開発体験が悪い部分があったらしい。
"API Gateway における、すべてのリソースとメソッドはすべて、 OpenAPI Specification file の一部として定義される必要がある。そして、CDK 経由では追加できない"
と言っている。
OpenAPI + CDK が辛い理由
- Build a solution to pass data (Token valus) from CDK code to OpenAPI definition
- We need to have a lot of ugly
x-amazon-apoigateway-
extensions within the OpenAPI YAML definition (exposing implementation detail) - Duplicate (copy-paste) lot of configuration values all over the place in OpenAPI YAML
lambda.LambdaIntegration で使っている IntegrationProps を x-amazon-apigateway-
にマップするためのユーティリティを作ったらしい。
どうやら、 OpenApiX という名前で公開している模様
- Lambda Integrations
- Mock integrations
- HTTP Integrations
- AWS Service Integrations
をサポートしていて、 SFn Express workflow Integations への対応を計画している。
他、次のような機能もある
- Request validations
- Cognito Authorizers
- Lambda Authrizers
- CORS Configuration
- Inject / Reject Fields
- Inline Definition or (upload) S3 Definition
# try it out
$ npm i -D @alma-cdk/openapix
このスクラップは2022/05/27にクローズされました