swagger
Gradle Swagger Generator Plugin 2.10.0をリリースしました。 github.com 新しいリリースではSwagger UI 3に対応しました。Swagger UI 3になってから使い勝手が大きく改善されています。 このプラグインを利用すると、下記のようなビルドスクリプトを書くだ…
第二十回 #渋谷java で、複数チームの並行開発におけるSwagger(OpenAPI)の活用についてお話しさせていただきました。 speakerdeck.com TL;DR 複数チームが並行開発を行う場合はインクリメンタルなAPI設計は避けられない。 OpenAPI YAMLからAPI Server, Cli…
Gradle Swagger Generator Plugin 2.6.0をリリースしました。OpenAPI YAMLのバリデーション、コード生成、Swagger UI生成を行うためのプラグインです。 github.com New features 複数のOpenAPI YAMLを扱う場合に簡潔に記述できるようになりました。これまで…
OpenAPIで同じキーのパラメータを複数受け取りたい場合は collectionFormat: multi を使います。 collectionFormat Determines the format of the array if type array is used. Possible values are: csv - comma separated values foo,bar. ssv - space se…
Swagger(OpenAPI)では必須チェック(required: true)や数値型チェック(type: integer)などが用意されており、コード生成時にバリデーションコードを出力できます。しかし、複雑なバリデーションルールを定義するには正規表現に頼らざるを得ないため、YA…
Swagger Codegenが生成するPHPクライアントを使う機会があったので、使い方を記事に残しておきます。 Swagger Codegenが生成するファイル Swagger CodegenでPHPテンプレートを指定すると、以下のファイル群が生成されます。 SwaggerClient-php/ autoload.php…
Swagger YAMLを書いていると間違いに気づかないことがよくあります。リポジトリにpushした時にJenkinsやCircle CIなどで構文チェックできるとミスを防げるます。そこで、GradleのプラグインにSwagger YAMLのバリデーションを追加してみました。 使い方 build…
Swagger Codegenではコード生成のテンプレートをカスタマイズできますが、ライブラリに spring-cloud を選んだ場合はカスタマイズの仕方に注意が必要です。 springのテンプレート構造は以下になります。 template/ api.mustache ←すべてのライブラリで共通の…
Gradle Swagger Generator PluginでSwagger UIを生成できるようになりました。 以下のビルドスクリプトで generateSwaggerUI タスクを実行すると、 build/swagger-ui フォルダにSwagger UIが出力されます。 plugins { id 'org.hidetake.swagger.generator' v…
GradleでSwagger YAMLからAPIサーバやAPIクライアント、APIドキュメントを生成するプラグインを作りました。 github.com もともとはGradle Swagger Codegen Pluginという名前でしたが、コードだけでなくドキュメントの生成もできるようになったので名前を変…
GradleでSwagger Code Generatorを利用するためのプラグインをリリースしました。 github.com バージョン1.1.0では、自動生成の対象を components オプションで選べるようになりました。下記のビルドスクリプトではモデルクラスとAPIクラスを生成しています…
Swaggerのソースコード生成をGradleで利用するためのプラグインを書きました。 github.com 以下のようなビルドスクリプトを実行すると、SwaggerでAPIサーバを自動生成できます。 plugins { id 'org.hidetake.swagger.codegen' version '1.0.0' } repositorie…
SwaggerにはYAMLからAPIクライアントやAPIサーバのコードを自動生成する機能があります。コードの自動生成を利用することでドメインの実装に集中でき、また、スタブを利用することでチーム開発を円滑に進められるといったメリットがあります。 しかし、コー…