Skip to content

01. Spectral로 OpenAPI 규칙 검사하기

박태영 edited this page Sep 15, 2024 · 1 revision

extension 설치 및 검사방법

  1. VSCode, VisualStudio에서 Spectral extension을 설치
  2. 해당 extension은 프로젝트 루트 경로의 .spectral.yaml을 자동으로 인식함
  3. AppHost 또는 ApiApp을 구동후 swagger 페이지 상단의 .../swagger.json 링크 클릭
  4. 해당 파일을 로컬에 다운받아 열면 .spectral.yaml에 정의된 규칙으로 검사됨
  5. error, warn 뜨는 항목을 swashbuckle을 사용해서 코드단에서 수정!
  6. 수정이 끝나면 swagger.json은 빼고 코드만 제출!

만약 조금만더 편하게 하려면..

# .NET 프로젝트를 백그라운드에서 실행
dotnet run --project src/AzureOpenAIProxy.AppHost &

# .NET 프로젝트의 PID를 저장
DOTNET_PID=$!

# .NET 프로젝트가 완전히 기동될 때까지 대기 (필요에 따라 조정)
sleep 10

# Swagger 파일 다운로드 (curl이 localhost 보안 연결에 실패할 경우 주소 앞에 -k를 붙여주세요)
rm -f swagger.json
curl https://localhost:7001/swagger/v1.0.0/swagger.json -O

# .NET 프로젝트 종료
kill $DOTNET_PID

# Spectral로 린트 수행
spectral lint swagger.json

# 현재 파이프라인은 아래 커맨드로 실행되고 있습니다. 
spectral lint -f json -F warn -D -q swagger.json | ConvertFrom-Json

Clone this wiki locally