Swagger UI를 CircleCI로 호스팅
Swagger, CircleCI 정보
이하의 기사 등 참고.
htps : // 이 m/g 버렸다/있어 ms/342073 7607fd4082bd
htps : // m / go ld / ms / 4c7 62434 a f455 977c2
개요
하고 싶었던 일
Github의 리포지토리에 있는 Swagger(혹은 OpenAPI)의 정의 파일을 문서로서 팀에서 공유하고 싶었지만, 몇 가지 방법을 검토해 실제로 시도해봤지만 모두가 불필요한 커뮤니케이션이나 작업 없이 할 수 있는 것이 없었다.
그런 가운데 아래의 기사를 발견했으므로, 이것을 CircleCI의 Artifacts에 업로드하면 좋다고 생각했기 때문에 시험해 보았습니다.
했던 일
Swagger UI를 CircleCI의 Artifacts에 업로드하여 빌드별로 볼 수 있도록 한 다음 단계.
Swagger UI를 Artifacts에 저장하기 Step 추가
- run:
name: swagger-ui
command: |
git clone https://github.com/swagger-api/swagger-ui ~/swagger-ui
mkdir swagger-ui
cp -R ~/swagger-ui/dist/ swagger-ui
cp doc/openapi.yml swagger-ui/dist/
export DEFAULT_URL='https:\/\/petstore.swagger.io\/v2\/swagger.json'
export DOCUMENT_URL='openapi.yml'
sed -i -e "s/$DEFAULT_URL/$DOCUMENT_URL/g" ./swagger-ui/dist/index.html
- store_artifacts:
path: swagger-ui/dist
앞서 든 기사에도 있듯이 swagger-ui의 dist를 두면 그대로 Swagger UI를 볼 수 있다.
또 이번은 doc/openapi.yml에 정의 파일을 두고 있으므로 그것도 같은 디렉토리에 카피해 둔다.
원래 정의 파일의 위치는 프로젝트에 따라 다르다고 생각하므로 적절하게 읽어보십시오.
git clone https://github.com/swagger-api/swagger-ui ~/swagger-ui
mkdir swagger-ui
cp -R ~/swagger-ui/dist/ swagger-ui
cp doc/openapi.yml swagger-ui/dist/
그대로도 문제는 없지만, 디폴트에서는 문서의 URL이 https://petstore.swagger.io/v2/swagger.json
로 되어 있으므로, openapi.yml
에 재기록해 둔다.
이렇게 하면 매번 문서의 URL을 바꿀 필요가 없어진다.
export DEFAULT_URL='https:\/\/petstore.swagger.io\/v2\/swagger.json'
export DOCUMENT_URL='openapi.yml'
sed -i -e "s/$DEFAULT_URL/$DOCUMENT_URL/g" ./swagger-ui/dist/index.html
Artifacts 방문
빌드가 성공하고 Artifacts가 업로드되면 빌드 화면의 Artifacts에 다음과 같이 표시된다.
index.html을 열면 리포지토리 정의 파일이 로드된 상태에서 Swagger UI를 볼 수 있습니다.
인증 방법을 생각할 필요도 없고(CircleCI의 계정 베이스로 좋으면), 서버의 관리등도 필요 없기 때문에 즐거울 것이라고 생각했습니다.
이상.
Reference
이 문제에 관하여(Swagger UI를 CircleCI로 호스팅), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/t2h5/items/9e74212ce55057ed75b3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
하고 싶었던 일
Github의 리포지토리에 있는 Swagger(혹은 OpenAPI)의 정의 파일을 문서로서 팀에서 공유하고 싶었지만, 몇 가지 방법을 검토해 실제로 시도해봤지만 모두가 불필요한 커뮤니케이션이나 작업 없이 할 수 있는 것이 없었다.
그런 가운데 아래의 기사를 발견했으므로, 이것을 CircleCI의 Artifacts에 업로드하면 좋다고 생각했기 때문에 시험해 보았습니다.
했던 일
Swagger UI를 CircleCI의 Artifacts에 업로드하여 빌드별로 볼 수 있도록 한 다음 단계.
Swagger UI를 Artifacts에 저장하기 Step 추가
- run:
name: swagger-ui
command: |
git clone https://github.com/swagger-api/swagger-ui ~/swagger-ui
mkdir swagger-ui
cp -R ~/swagger-ui/dist/ swagger-ui
cp doc/openapi.yml swagger-ui/dist/
export DEFAULT_URL='https:\/\/petstore.swagger.io\/v2\/swagger.json'
export DOCUMENT_URL='openapi.yml'
sed -i -e "s/$DEFAULT_URL/$DOCUMENT_URL/g" ./swagger-ui/dist/index.html
- store_artifacts:
path: swagger-ui/dist
앞서 든 기사에도 있듯이 swagger-ui의 dist를 두면 그대로 Swagger UI를 볼 수 있다.
또 이번은 doc/openapi.yml에 정의 파일을 두고 있으므로 그것도 같은 디렉토리에 카피해 둔다.
원래 정의 파일의 위치는 프로젝트에 따라 다르다고 생각하므로 적절하게 읽어보십시오.
git clone https://github.com/swagger-api/swagger-ui ~/swagger-ui
mkdir swagger-ui
cp -R ~/swagger-ui/dist/ swagger-ui
cp doc/openapi.yml swagger-ui/dist/
그대로도 문제는 없지만, 디폴트에서는 문서의 URL이
https://petstore.swagger.io/v2/swagger.json
로 되어 있으므로, openapi.yml
에 재기록해 둔다.이렇게 하면 매번 문서의 URL을 바꿀 필요가 없어진다.
export DEFAULT_URL='https:\/\/petstore.swagger.io\/v2\/swagger.json'
export DOCUMENT_URL='openapi.yml'
sed -i -e "s/$DEFAULT_URL/$DOCUMENT_URL/g" ./swagger-ui/dist/index.html
Artifacts 방문
빌드가 성공하고 Artifacts가 업로드되면 빌드 화면의 Artifacts에 다음과 같이 표시된다.
index.html을 열면 리포지토리 정의 파일이 로드된 상태에서 Swagger UI를 볼 수 있습니다.
인증 방법을 생각할 필요도 없고(CircleCI의 계정 베이스로 좋으면), 서버의 관리등도 필요 없기 때문에 즐거울 것이라고 생각했습니다.
이상.
Reference
이 문제에 관하여(Swagger UI를 CircleCI로 호스팅), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/t2h5/items/9e74212ce55057ed75b3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)