Merge pull request #1526 from urfave/genflags-mod
Build and run `urfave-cli-genflags` via its `Makefile`
This commit is contained in:
commit
89e331ff27
2
cli.go
2
cli.go
@ -22,4 +22,4 @@
|
||||
// }
|
||||
package cli
|
||||
|
||||
//go:generate go run cmd/urfave-cli-genflags/main.go
|
||||
//go:generate make -C cmd/urfave-cli-genflags run
|
||||
|
@ -1,6 +1,9 @@
|
||||
GOIMPORTS_BIN ?= $(shell which goimports || true)
|
||||
GOTEST_FLAGS ?= -v --coverprofile main.coverprofile --covermode count --cover github.com/urfave/cli/v2/cmd/urfave-cli-genflags
|
||||
GOBUILD_FLAGS ?= -x
|
||||
|
||||
export GOIMPORTS_BIN
|
||||
|
||||
.PHONY: all
|
||||
all: test build smoke-test
|
||||
|
||||
@ -19,3 +22,7 @@ smoke-test: build
|
||||
.PHONY: show-cover
|
||||
show-cover:
|
||||
go tool cover -func main.coverprofile
|
||||
|
||||
.PHONY: run
|
||||
run: build
|
||||
./urfave-cli-genflags
|
||||
|
@ -4,6 +4,7 @@ import (
|
||||
"bytes"
|
||||
"context"
|
||||
_ "embed"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
"os/exec"
|
||||
@ -37,6 +38,9 @@ var (
|
||||
func sh(ctx context.Context, exe string, args ...string) (string, error) {
|
||||
cmd := exec.CommandContext(ctx, exe, args...)
|
||||
cmd.Stderr = os.Stderr
|
||||
|
||||
fmt.Fprintf(os.Stderr, "# ---> %s\n", cmd)
|
||||
|
||||
outBytes, err := cmd.Output()
|
||||
return string(outBytes), err
|
||||
}
|
||||
@ -89,10 +93,19 @@ func main() {
|
||||
Aliases: []string{"N"},
|
||||
Value: "cli.",
|
||||
},
|
||||
&cli.PathFlag{
|
||||
Name: "goimports",
|
||||
EnvVars: []string{"GOIMPORTS_BIN"},
|
||||
Value: filepath.Join(top, ".local/bin/goimports"),
|
||||
},
|
||||
},
|
||||
Action: runGenFlags,
|
||||
}
|
||||
|
||||
if err := os.Chdir(top); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
if err := app.RunContext(ctx, os.Args); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
@ -163,11 +176,11 @@ func runGenFlags(cCtx *cli.Context) error {
|
||||
return err
|
||||
}
|
||||
|
||||
if _, err := sh(cCtx.Context, "goimports", "-w", cCtx.Path("generated-output")); err != nil {
|
||||
if _, err := sh(cCtx.Context, cCtx.Path("goimports"), "-w", cCtx.Path("generated-output")); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if _, err := sh(cCtx.Context, "goimports", "-w", cCtx.Path("generated-test-output")); err != nil {
|
||||
if _, err := sh(cCtx.Context, cCtx.Path("goimports"), "-w", cCtx.Path("generated-test-output")); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user