PARA/03_Resources/R001_개발_레퍼런스(참고문서)/업무 시스템/swagger-hub 관련 문제점 정리.md

swagger-hub 관련 문제점 정리

문제점

  • 현재 backend spec이 변경되면 bff 레포에서 yaml파일을 통해 관리하고 있음
    • yaml파일 변경 후 동일한 내용을 swagger-hub에 올리면 개발, 운영에서 배포 시 해당 내용을 다운로드 받아서 사용함.
  • 즉, api 추가 후 이를 클라이언트에서 사용하고 협업을위해 공유하기 위해서는 swagger-hub에 반드시 올려야함.
  • 그러나 spec을 올리는 방법이 번거로움
    • spec은 1만줄이 넘는 매우 긴 코드를 가짐.
    • 개발자는 spec이 변경되면 파일을 한번에 올리는게 아니라, swagger-hub 웹사이트에 변경된 부분을 하나하나 복사하여 변경된 Line만 추가함
      • 한번에 복사해서 붙여넣기하는건 대량의 데이터를 클립보드에 복사하지 못하도록 막는 그룹사 정책에 막힘
  • 이 방식의 문제는
    • 텍스트파일을 하나하나 바꾸는 경우 human error의 가능성
    • 버전관리가 안됨
    • 웹사이트에서 직접 변경하여 느리며 브라우저가 자주 다운됨.
  • 이러한 문제가 있음.

Best preactice

  • swagger-hub에 업로드하는 것도 REST API를 통해 반자동 처리
  • pre-stage 브랜치에 commit되면 webhook을 통해 자동 업로드 처리

안전하고 점진적으로 개선할 수 있는 아이디어

  • 웹 인터페이스를 통해 파일을 한번에 업데이트 할 수 있는 방법 찾기
    • 없어보임

나중에 추가한 결론

  • rest api로 put 가능한지 다시 한번 확인해보자.
    • 안되면 어쩔 수 없지만 delete가 되는데 put이 안되는건 좀 이해가 안됨
      • delete는 진짜 되는게 맞나 확인 해봐야함

댓글

첫 번째 댓글을 남겨보세요.