|
|
@@ -48,6 +48,7 @@ var (
|
|
|
enterprise bool = false
|
|
|
skipRpmGen bool = false
|
|
|
skipDebGen bool = false
|
|
|
+ printGenVersion bool = false
|
|
|
)
|
|
|
|
|
|
func main() {
|
|
|
@@ -71,6 +72,7 @@ func main() {
|
|
|
flag.BoolVar(&isDev, "dev", isDev, "optimal for development, skips certain steps")
|
|
|
flag.BoolVar(&skipRpmGen, "skipRpm", skipRpmGen, "skip rpm package generation (default: false)")
|
|
|
flag.BoolVar(&skipDebGen, "skipDeb", skipDebGen, "skip deb package generation (default: false)")
|
|
|
+ flag.BoolVar(&printGenVersion, "gen-version", printGenVersion, "generate Grafana version and output (default: false)")
|
|
|
flag.Parse()
|
|
|
|
|
|
buildId = shortenBuildId(buildIdRaw)
|
|
|
@@ -81,6 +83,11 @@ func main() {
|
|
|
pkgArch = goarch
|
|
|
}
|
|
|
|
|
|
+ if printGenVersion {
|
|
|
+ printGeneratedVersion()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
log.Printf("Version: %s, Linux Version: %s, Package Iteration: %s\n", version, linuxPackageVersion, linuxPackageIteration)
|
|
|
|
|
|
if flag.NArg() == 0 {
|
|
|
@@ -221,6 +228,7 @@ func readVersionFromPackageJson() {
|
|
|
|
|
|
type linuxPackageOptions struct {
|
|
|
packageType string
|
|
|
+ packageArch string
|
|
|
homeDir string
|
|
|
binPath string
|
|
|
serverBinPath string
|
|
|
@@ -241,14 +249,14 @@ type linuxPackageOptions struct {
|
|
|
}
|
|
|
|
|
|
func createDebPackages() {
|
|
|
- previousPkgArch := pkgArch
|
|
|
- if pkgArch == "armv7" {
|
|
|
- pkgArch = "armhf"
|
|
|
- } else if pkgArch == "armv6" {
|
|
|
- pkgArch = "armel"
|
|
|
+ debPkgArch := pkgArch
|
|
|
+ if pkgArch == "armv7" || pkgArch == "armv6" {
|
|
|
+ debPkgArch = "armhf"
|
|
|
}
|
|
|
+
|
|
|
createPackage(linuxPackageOptions{
|
|
|
packageType: "deb",
|
|
|
+ packageArch: debPkgArch,
|
|
|
homeDir: "/usr/share/grafana",
|
|
|
binPath: "/usr/sbin",
|
|
|
configDir: "/etc/grafana",
|
|
|
@@ -264,19 +272,19 @@ func createDebPackages() {
|
|
|
|
|
|
depends: []string{"adduser", "libfontconfig"},
|
|
|
})
|
|
|
- pkgArch = previousPkgArch
|
|
|
}
|
|
|
|
|
|
func createRpmPackages() {
|
|
|
- previousPkgArch := pkgArch
|
|
|
+ rpmPkgArch := pkgArch
|
|
|
switch {
|
|
|
case pkgArch == "armv7":
|
|
|
- pkgArch = "armhfp"
|
|
|
+ rpmPkgArch = "armhfp"
|
|
|
case pkgArch == "arm64":
|
|
|
- pkgArch = "aarch64"
|
|
|
+ rpmPkgArch = "aarch64"
|
|
|
}
|
|
|
createPackage(linuxPackageOptions{
|
|
|
packageType: "rpm",
|
|
|
+ packageArch: rpmPkgArch,
|
|
|
homeDir: "/usr/share/grafana",
|
|
|
binPath: "/usr/sbin",
|
|
|
configDir: "/etc/grafana",
|
|
|
@@ -292,7 +300,6 @@ func createRpmPackages() {
|
|
|
|
|
|
depends: []string{"/sbin/service", "fontconfig", "freetype", "urw-fonts"},
|
|
|
})
|
|
|
- pkgArch = previousPkgArch
|
|
|
}
|
|
|
|
|
|
func createLinuxPackages() {
|
|
|
@@ -351,6 +358,10 @@ func createPackage(options linuxPackageOptions) {
|
|
|
name += "-enterprise"
|
|
|
args = append(args, "--replaces", "grafana")
|
|
|
}
|
|
|
+ fmt.Printf("pkgArch is set to '%s', generated arch is '%s'\n", pkgArch, options.packageArch)
|
|
|
+ if pkgArch == "armv6" {
|
|
|
+ name += "-rpi"
|
|
|
+ }
|
|
|
args = append(args, "--name", name)
|
|
|
|
|
|
description := "Grafana"
|
|
|
@@ -371,8 +382,8 @@ func createPackage(options linuxPackageOptions) {
|
|
|
args = append(args, "--deb-no-default-config-files")
|
|
|
}
|
|
|
|
|
|
- if pkgArch != "" {
|
|
|
- args = append(args, "-a", pkgArch)
|
|
|
+ if options.packageArch != "" {
|
|
|
+ args = append(args, "-a", options.packageArch)
|
|
|
}
|
|
|
|
|
|
if linuxPackageIteration != "" {
|
|
|
@@ -437,6 +448,16 @@ func setup() {
|
|
|
runPrint("go", "install", "-v", "./pkg/cmd/grafana-server")
|
|
|
}
|
|
|
|
|
|
+func printGeneratedVersion() {
|
|
|
+ var genVersion string
|
|
|
+ if includeBuildId {
|
|
|
+ genVersion = fmt.Sprintf("%v-%v", linuxPackageVersion, linuxPackageIteration)
|
|
|
+ } else {
|
|
|
+ genVersion = version
|
|
|
+ }
|
|
|
+ fmt.Print(genVersion)
|
|
|
+}
|
|
|
+
|
|
|
func test(pkg string) {
|
|
|
setBuildEnv()
|
|
|
runPrint("go", "test", "-short", "-timeout", "60s", pkg)
|