-
Notifications
You must be signed in to change notification settings - Fork 18
01. Spectral로 OpenAPI 규칙 검사하기
박태영 edited this page Sep 15, 2024
·
1 revision
- VSCode, VisualStudio에서 Spectral extension을 설치
- 해당 extension은 프로젝트 루트 경로의
.spectral.yaml을 자동으로 인식함 - AppHost 또는 ApiApp을 구동후 swagger 페이지 상단의
.../swagger.json링크 클릭 - 해당 파일을 로컬에 다운받아 열면
.spectral.yaml에 정의된 규칙으로 검사됨 - error, warn 뜨는 항목을 swashbuckle을 사용해서 코드단에서 수정!
- 수정이 끝나면
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