--keep-files argv flag

Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
Jeff Carr 2024-11-06 15:18:23 -06:00
parent a8b538c14b
commit ea894bdfe0
2 changed files with 14 additions and 9 deletions

11
argv.go
View File

@ -15,11 +15,12 @@ import (
var argv args
type args struct {
NoGui bool `arg:"--no-gui" help:"don't open the gui, just make the .deb"`
Ldflags []string `arg:"--ldflags" help:"flags to pass to go build"`
Repo string `arg:"--repo" help:"go get path to the repo"`
PkgDir string `arg:"--pkg-dir" help:"set default directory (~/incoming/)"`
Release bool `arg:"--release" help:"build a release from the last git tag"`
NoGui bool `arg:"--no-gui" help:"don't open the gui, just make the .deb"`
Ldflags []string `arg:"--ldflags" help:"flags to pass to go build"`
Repo string `arg:"--repo" help:"go get path to the repo"`
PkgDir string `arg:"--pkg-dir" help:"set default directory (~/incoming/)"`
Release bool `arg:"--release" help:"build a release from the last git tag"`
KeepFiles bool `arg:"--keep-files" help:"keep the build files/"`
}
func init() {

View File

@ -81,7 +81,7 @@ func (c *controlBox) buildPackage() (bool, error) {
// add any flags from the command line
for _, flag := range argv.Ldflags {
cmd = append(cmd, "-ldflags", "-X " + flag)
cmd = append(cmd, "-ldflags", "-X "+flag)
}
if shell.Run(cmd) {
@ -174,9 +174,13 @@ func (c *controlBox) buildPackage() (bool, error) {
// cleanup files
if shell.Exists("files") {
if shell.Run([]string{"rm", "-rf", "files"}) {
log.Warn("rm failed")
return false, errors.New("rm files/")
if argv.KeepFiles {
log.Info("keeping the build files/")
} else {
if shell.Run([]string{"rm", "-rf", "files"}) {
log.Warn("rm failed")
return false, errors.New("rm files/")
}
}
}
return true, nil