From ac0f5c5556ca2f185d5d35ccfc6530f356b782e4 Mon Sep 17 00:00:00 2001 From: Dimitris Sotirakis Date: Tue, 13 Sep 2022 13:26:24 +0300 Subject: [PATCH] CI: Add `export-version` command (#55072) * Add export-version command * Fix lint * 1-line cleanup --- pkg/build/cmd/exportversion.go | 30 ++++++++++++++++++++++++++++++ pkg/build/cmd/main.go | 5 +++++ 2 files changed, 35 insertions(+) create mode 100644 pkg/build/cmd/exportversion.go diff --git a/pkg/build/cmd/exportversion.go b/pkg/build/cmd/exportversion.go new file mode 100644 index 00000000000..afbe05114af --- /dev/null +++ b/pkg/build/cmd/exportversion.go @@ -0,0 +1,30 @@ +package main + +import ( + "os" + "path/filepath" + + "github.com/urfave/cli/v2" +) + +func ExportVersion(c *cli.Context) error { + metadata, err := GenerateMetadata(c) + if err != nil { + return err + } + + const distDir = "dist" + if err := os.RemoveAll(distDir); err != nil { + return err + } + if err := os.Mkdir(distDir, 0750); err != nil { + return err + } + + // nolint:gosec + if err := os.WriteFile(filepath.Join(distDir, "grafana.version"), []byte(metadata.GrafanaVersion), 0664); err != nil { + return err + } + + return nil +} diff --git a/pkg/build/cmd/main.go b/pkg/build/cmd/main.go index c2f6e731c79..d063d4a97d2 100644 --- a/pkg/build/cmd/main.go +++ b/pkg/build/cmd/main.go @@ -114,6 +114,11 @@ func main() { ArgsUsage: "", Action: ArgCountWrapper(1, PublishMetrics), }, + { + Name: "export-version", + Usage: "Exports version in dist/grafana.version", + Action: ExportVersion, + }, } if err := app.Run(os.Args); err != nil {