Структура командного проекта Swagger-codegen

Я использую swagger для разработки нового API, написанного на Go. Это мой первый сваггер-проект. Я установил и использовал эту команду для создания своего проекта из файла swagger.yaml. Я стремлюсь сделать реконфигурации, которые я помещаю в файл swagger.yaml, частью моих конвейерных задач — помещая задачу для выполнения чего-то вроде swagger-codegen generate -i ./api/swagger.yaml -l go-server, стратегически настраивая игнорирование в моем .swagger-codegen-ignore файле. Есть одна вещь, которая мне не обязательно нравится, но я не могу понять, как это изменить. Любой совет? Мне нужно с этим жить?

сгенерированная структура каталогов выглядит так для go-server

.
├── api
│   └──swagger.yaml
├── go                      #everyting in this directory is part of the "swagger" package
│   ├── a_handler_function_file.go
│   ├── logger.go              
│   ├── model_struct_file.go
│   ├── routers.go               
│   └── ...
├── Dockerfile                 
└── main.go

Мне не нравится каталог с именем go или создаваемый им пакет с именем swagger. Я хочу что-то более значимое для проекта.

Противоречит ли соглашение переименование каталога?

Есть ли способ настроить swagger-codegen, чтобы переименовать их так, как я хочу? - Я провожу исследование, чтобы узнать, есть ли способ, но я не могу его найти.

Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
API ввода вопросов - это полезный инструмент для интеграции моделей машинного обучения, таких как ChatGPT, в приложения, требующие обработки...
1
0
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Похоже, магия SEO на самом деле не смогла эффективно попасть на эту страницу в репозитории git swagger-codegen https://github.com/swagger-api/swagger-codegen#customizing-the-generator. возможно, этот вопрос и ответ помогут.

Можно либо добавить -D<configParameterName> к команде генерации, либо создать файл config.json и добавить его в команду генерации, используя -c config.yaml.

для go-server доступны только два параметра: packageName и hideGenerationTimestamp.

Так что я попробовал swagger-codegen generate -i ./swagger.yaml -l go-server -DpackageName = "myPackageName" и это сработало!!!

Я также попытался создать файл config.json, который выглядит так:

{
  "packageName": "myPackageName"
}

а затем сгенерируйте команду, которая выглядит так swagger-codegen generate -i ./swagger.yaml -l go-server -c config.json

и это тоже работает.

Что касается изменения каталога go - похоже, мне придется с этим смириться.

Другие вопросы по теме