mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
build: introduce -dev flag optimal for building in development mode
Fix performance issue with running bra run for go run build.go build
This commit is contained in:
parent
54b7846eb6
commit
b7b0ca2b90
@ -1,6 +1,6 @@
|
|||||||
[run]
|
[run]
|
||||||
init_cmds = [
|
init_cmds = [
|
||||||
["go", "run", "build.go", "build-server"],
|
["go", "run", "build.go", "-dev", "build-server"],
|
||||||
["./bin/grafana-server", "cfg:app_mode=development"]
|
["./bin/grafana-server", "cfg:app_mode=development"]
|
||||||
]
|
]
|
||||||
watch_all = true
|
watch_all = true
|
||||||
@ -12,6 +12,6 @@ watch_dirs = [
|
|||||||
watch_exts = [".go", ".ini", ".toml"]
|
watch_exts = [".go", ".ini", ".toml"]
|
||||||
build_delay = 1500
|
build_delay = 1500
|
||||||
cmds = [
|
cmds = [
|
||||||
["go", "run", "build.go", "build"],
|
["go", "run", "build.go", "-dev", "build"],
|
||||||
["./bin/grafana-server", "cfg:app_mode=development"]
|
["./bin/grafana-server", "cfg:app_mode=development"]
|
||||||
]
|
]
|
||||||
|
15
build.go
15
build.go
@ -41,6 +41,7 @@ var (
|
|||||||
includeBuildNumber bool = true
|
includeBuildNumber bool = true
|
||||||
buildNumber int = 0
|
buildNumber int = 0
|
||||||
binaries []string = []string{"grafana-server", "grafana-cli"}
|
binaries []string = []string{"grafana-server", "grafana-cli"}
|
||||||
|
isDev bool = false
|
||||||
)
|
)
|
||||||
|
|
||||||
const minGoVersion = 1.8
|
const minGoVersion = 1.8
|
||||||
@ -61,6 +62,7 @@ func main() {
|
|||||||
flag.BoolVar(&race, "race", race, "Use race detector")
|
flag.BoolVar(&race, "race", race, "Use race detector")
|
||||||
flag.BoolVar(&includeBuildNumber, "includeBuildNumber", includeBuildNumber, "IncludeBuildNumber in package name")
|
flag.BoolVar(&includeBuildNumber, "includeBuildNumber", includeBuildNumber, "IncludeBuildNumber in package name")
|
||||||
flag.IntVar(&buildNumber, "buildNumber", 0, "Build number from CI system")
|
flag.IntVar(&buildNumber, "buildNumber", 0, "Build number from CI system")
|
||||||
|
flag.BoolVar(&isDev, "dev", isDev, "optimal for development, skips certain steps")
|
||||||
flag.Parse()
|
flag.Parse()
|
||||||
|
|
||||||
readVersionFromPackageJson()
|
readVersionFromPackageJson()
|
||||||
@ -394,7 +396,9 @@ func build(binaryName, pkg string, tags []string) {
|
|||||||
binary += ".exe"
|
binary += ".exe"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if !isDev {
|
||||||
rmr(binary, binary+".md5")
|
rmr(binary, binary+".md5")
|
||||||
|
}
|
||||||
args := []string{"build", "-ldflags", ldflags()}
|
args := []string{"build", "-ldflags", ldflags()}
|
||||||
if len(tags) > 0 {
|
if len(tags) > 0 {
|
||||||
args = append(args, "-tags", strings.Join(tags, ","))
|
args = append(args, "-tags", strings.Join(tags, ","))
|
||||||
@ -405,11 +409,15 @@ func build(binaryName, pkg string, tags []string) {
|
|||||||
|
|
||||||
args = append(args, "-o", binary)
|
args = append(args, "-o", binary)
|
||||||
args = append(args, pkg)
|
args = append(args, pkg)
|
||||||
setBuildEnv()
|
|
||||||
|
|
||||||
|
if !isDev {
|
||||||
|
setBuildEnv()
|
||||||
runPrint("go", "version")
|
runPrint("go", "version")
|
||||||
|
}
|
||||||
|
|
||||||
runPrint("go", args...)
|
runPrint("go", args...)
|
||||||
|
|
||||||
|
if !isDev {
|
||||||
// Create an md5 checksum of the binary, to be included in the archive for
|
// Create an md5 checksum of the binary, to be included in the archive for
|
||||||
// automatic upgrades.
|
// automatic upgrades.
|
||||||
err := md5File(binary)
|
err := md5File(binary)
|
||||||
@ -417,6 +425,7 @@ func build(binaryName, pkg string, tags []string) {
|
|||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func ldflags() string {
|
func ldflags() string {
|
||||||
var b bytes.Buffer
|
var b bytes.Buffer
|
||||||
@ -435,6 +444,10 @@ func rmr(paths ...string) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func clean() {
|
func clean() {
|
||||||
|
if isDev {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
rmr("dist")
|
rmr("dist")
|
||||||
rmr("tmp")
|
rmr("tmp")
|
||||||
rmr(filepath.Join(os.Getenv("GOPATH"), fmt.Sprintf("pkg/%s_%s/github.com/grafana", goos, goarch)))
|
rmr(filepath.Join(os.Getenv("GOPATH"), fmt.Sprintf("pkg/%s_%s/github.com/grafana", goos, goarch)))
|
||||||
|
Loading…
Reference in New Issue
Block a user