energy/cmd/internal/command/command.go

73 lines
2.9 KiB
Go
Raw Normal View History

//----------------------------------------
//
// Copyright © yanghy. All Rights Reserved.
//
// Licensed under Apache License Version 2.0, January 2004
//
// https://www.apache.org/licenses/LICENSE-2.0
//
//----------------------------------------
2023-09-03 18:40:44 +08:00
package command
2022-11-09 11:50:59 +08:00
2023-09-03 18:40:44 +08:00
type Config struct {
2022-11-09 12:12:40 +08:00
Index int
Wd string
Install Install `command:"install" description:"install energy development dependency environment"`
Package Package `command:"package" description:"energy application production and installation package"`
Version Version `command:"version" description:"list all release version numbers of energy"`
Setenv Setenv `command:"setenv" description:"set ENERGY_ HOME framework environment"`
Env Env `command:"env" description:"display ENERGY_ HOME framework environment directory"`
Init Init `command:"init" description:"initialize the energy application project"`
Build Build `command:"build" description:"building an energy project"`
2023-08-20 21:51:12 +08:00
}
type Command struct {
2023-09-03 18:40:44 +08:00
Run func(c *Config) error
2023-08-20 21:51:12 +08:00
UsageLine, Short, Long string
2022-11-09 11:50:59 +08:00
}
type Install struct {
2022-11-18 12:15:47 +08:00
Path string `short:"p" long:"path" description:"Installation directory Default current directory"`
Version string `short:"v" long:"version" description:"Specifying a version number"`
Name string `short:"n" long:"name" description:"Name of the framework directory after installation" default:"EnergyFramework"`
2023-08-21 12:22:08 +08:00
Download string `short:"d" long:"download" description:"Download Source, 0:gitee or 1:github, Default empty" default:""`
All bool `short:"a" long:"all" description:"Install all, skip installation prompts (Y/n)"`
2023-08-18 18:20:52 +08:00
CEF string `short:"c" long:"cef" description:"Install system supports CEF version, provide 4 options, default empty. default, windows7, gtk2, flash" default:""`
IGolang bool
ICEF bool
INSIS bool
IUPX bool
2022-11-09 11:50:59 +08:00
}
type Package struct {
Path string `short:"p" long:"path" description:"Project path, default current path. Can be configured in energy.json" default:""`
Clean bool `short:"c" long:"clean" description:"Clear configuration and regenerate the default configuration"`
2022-11-09 11:50:59 +08:00
}
2022-11-09 12:12:40 +08:00
type Env struct {
}
type Setenv struct {
Path string `short:"p" long:"path" description:"Energy framework dir"`
}
2022-11-18 12:56:27 +08:00
type Version struct {
All bool `short:"a" long:"all" description:"show all"`
}
type Init struct {
Name string `short:"n" long:"name" description:"Initialized project name"`
ResLoad string `short:"r" long:"resload" description:"Resource loading method, 1: HTTP, 2: Local Load, default 1 HTTP"`
IGo bool
INSIS bool
IEnv bool
INpm bool
2022-11-09 12:12:40 +08:00
}
2023-08-18 18:20:52 +08:00
2023-08-20 21:51:12 +08:00
type Build struct {
Path string `short:"p" long:"path" description:"Project path, default current path. Can be configured in energy.json" default:""`
Upx bool `short:"u" long:"upx" description:"Set this parameter and install upx. Use upx to compress the execution file. windows"`
UpxFlag string `long:"upxFlag" description:"Upx command line parameters" default:""`
2023-08-18 18:20:52 +08:00
}