Closed1

StoplightStudio linter(Spectral)まとめ

yagi_engyagi_eng

Stoplight Studio

openapiのエディタ。lintなどもしてくれる
https://stoplight.io/studio/

lint errorへの対応

ERROR(赤)

  • 明確な理由がある場合を除き、基本的に解消する
  • 不正なpropertyがある、modelとexampleに差分がある、などが代表的なエラー内容

WARN(黄色)

以下の警告は無視しても問題ないが、これら以外の警告は解消するのが望ましい。

  • OpenAPI "servers" must be present and non-empty array.
    • 通常はDEVやSTG環境のAPIのURLを記載する
  • Info object must have "contact" object.
    • 通常はOpenAPIドキュメントの問い合わせ先を記載する
  • Info object must have "license" object.
    • MITライセンスなどを明示する場合に記載する
  • License object must include "url".
    • 同上
  • Operation must have "operationId".
    • operationIdがあると自動生成されるコードのメソッド名の命名に使われたりするが、そのままの命名で問題ない

INFO, HINT(青、緑)

  • 現状まだ表示されたことがない
  • おそらくないことが望ましいのでなるべく解消する

エラーを非表示

無視したいエラーは(PJRootDir)/.spectral.ymlにてoffに設定しておくことにより、StoplightStudio上で非表示にする。
StoplightStudioに読み込ませるため、このファイルはPJRoot直下に配置する。

.spectral.yml sample
extends: [[spectral:oas, recommended]]
rules:
  operation-operationId: off
  info-contact: off
  info-license: off
  license-url: off
  oas3-api-servers: off

rulesに記載する名前はOpenAPI Rules | Spectralを参照のこと。

このスクラップは2021/12/16にクローズされました