Перевод парсинга параметров на другой модуль

This commit is contained in:
ymnuk 2023-11-04 15:44:09 +03:00
parent f0dada88f8
commit dfc5cb10df
3 changed files with 28 additions and 12 deletions

3
go.mod
View File

@ -3,7 +3,10 @@ module git.ymnuktech.ru/ymnuk/yt-gen-app
go 1.21
require (
github.com/alexflint/go-arg v1.4.3
github.com/creasty/defaults v1.7.0
github.com/satori/go.uuid v1.2.0
gopkg.in/yaml.v3 v3.0.1
)
require github.com/alexflint/go-scalar v1.2.0 // indirect

13
go.sum
View File

@ -1,7 +1,20 @@
github.com/alexflint/go-arg v1.4.3 h1:9rwwEBpMXfKQKceuZfYcwuc/7YY7tWJbFsgG5cAU/uo=
github.com/alexflint/go-arg v1.4.3/go.mod h1:3PZ/wp/8HuqRZMUUgu7I+e1qcpUbvmS258mRXkFH4IA=
github.com/alexflint/go-scalar v1.1.0 h1:aaAouLLzI9TChcPXotr6gUhq+Scr8rl0P9P4PnltbhM=
github.com/alexflint/go-scalar v1.1.0/go.mod h1:LoFvNMqS1CPrMVltza4LvnGKhaSpc3oyLEBUZVhhS2o=
github.com/alexflint/go-scalar v1.2.0 h1:WR7JPKkeNpnYIOfHRa7ivM21aWAdHD0gEWHCx+WQBRw=
github.com/alexflint/go-scalar v1.2.0/go.mod h1:LoFvNMqS1CPrMVltza4LvnGKhaSpc3oyLEBUZVhhS2o=
github.com/creasty/defaults v1.7.0 h1:eNdqZvc5B509z18lD8yc212CAqJNvfT1Jq6L8WowdBA=
github.com/creasty/defaults v1.7.0/go.mod h1:iGzKe6pbEHnpMPtfDXZEr0NVxWnPTjb1bbDy08fPzYM=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/satori/go.uuid v1.2.0 h1:0uYX9dsZ2yD7q2RtLRtPSdGDWzjeM3TbMJP9utgA0ww=
github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

View File

@ -1,31 +1,31 @@
package lib
import (
"flag"
"fmt"
"os"
"git.ymnuktech.ru/ymnuk/yt-gen-app/structs"
"github.com/alexflint/go-arg"
)
var AppConfig struct {
IsYaml bool
IsJson bool
IsHelp bool
IsYaml bool `arg:"-"`
IsJson bool `arg:"-"`
IsHelp bool `arg:"-"`
Help bool // Вывести справку на экран
Filename string // Файл с метоописанием в формате YAML или JSON
OutdirBackend string // Директория для сохранения кода сервера
OutdirFrontend string // Директория для сохранения кода клиента
Help bool `arg:"-h,--help" help:"Отобразить текущую справку"` // Вывести справку на экран
Filename string `arg:"-m,--metafile" help:"Файл с метоописанием в формате YAML или JSON"` // Файл с метоописанием в формате YAML или JSON
OutdirBackend string `arg:"-b,--outdir-backend" help:"Директория для сохранения кода сервера"` // Директория для сохранения кода сервера
OutdirFrontend string `arg:"-f,--outdir-frontend" help:"Директория для сохранения кода клиента"` // Директория для сохранения кода клиента
}
var Project *structs.Project
func PrepareParams() {
parseArgs()
//parseArgs()
arg.MustParse(&AppConfig)
}
func parseArgs() {
/*func parseArgs() {
flag.StringVar(&AppConfig.Filename, "metafile", "", "Путь к файлу с описанием для генерации кода")
flag.StringVar(&AppConfig.OutdirBackend, "outdir-backend", "", "Путь к директории для сохранения генерируемого кода сервера")
flag.StringVar(&AppConfig.OutdirFrontend, "outdir-frontend", "", "Путь к директории для сохранения генерируемого кода клиенат")
@ -36,7 +36,7 @@ func parseArgs() {
flag.PrintDefaults()
}
}
}*/
func HelpPrint() {
fmt.Println(`Утилита предназначена для генерирования некоторых частей кода на основе файла с описанием для облегчения и ускорения написания приложений. Использование: