doc.dev1x.org

opai-codegenを用いたスキーマ駆動開発

1. インストール

go install github.com/deepmap/oapi-codegen/v2/cmd/oapi-codegen@latest

2. 事前準備

config.yaml

package: oapi
output: ./oapi/openapi.gen.go
generate:
  gin-server: true
  models: true
output-options:
  skip-prune: true

openapi.yaml

TODO: コード書く

3. 生成

oapi-codegen -config config.yaml openapi.yaml

4. 組み込み

handler.go

TODO: コード書く

main.go

import (
    "<生成したコードのパッケージ>/oapi"
    "github.com/gin-gonic/gin"
)

func main() {
    server := oapi.NewServer()
    r := gin.Default()
    oapi.RegisterHandlers(r, server)
    r.Run(:8080)
}

参考資料