/images/profile_no_background.png

김영천 블로그

go swagger 서버파일 구조 분석

Intro


지난번 포스트에서 만든 hello world 프로젝트의 구성요소들을 분석해보자.

폴더 구조


├── cmd
│   └── helloworld-server
│         └── main.go
├── github.com
├── golang.org
├── gopkg.in
├── models
│    └── item.go
├── restapi
│    ├── configure_helloworld.go
│    ├── doc.go
│    ├── embedded_spec.go
│    ├── operations
│    │   ├── get.go
│    │   ├── get_parameters.go
│    │   ├── get_responses.go
│    │   ├── get_urlbuilder.go
│    │   └── helloworld_api.go
│    └── server.go
└── swagger.yml

지난번 포스트를 처음부터 끝까지 다 따라했다면 $GOPATH/src 폴더가 위와 같은 구조로 이루어져 있을 것이다. 위의 구조에서 swagger generate server 명령어로 인해 생긴 폴더는 cmd, models, restapi 이렇게 세 개로 구성되어 있으며 이번에 주로 살펴볼 폴더들이다. 나머지 폴더들은 go get 명령어로 인해 생성된 외부 라이브러리 관련 폴더들이다.