mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
43 lines
1.3 KiB
Go
43 lines
1.3 KiB
Go
package frontend
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/blang/semver/v4"
|
|
"github.com/grafana/grafana/pkg/build/config"
|
|
"github.com/urfave/cli/v2"
|
|
)
|
|
|
|
const GrafanaDir = "."
|
|
|
|
func GetConfig(c *cli.Context, metadata config.Metadata) (config.Config, config.Edition, error) {
|
|
cfg := config.Config{
|
|
NumWorkers: c.Int("jobs"),
|
|
GitHubToken: c.String("github-token"),
|
|
}
|
|
|
|
mode := config.Edition(c.String("edition"))
|
|
|
|
if metadata.ReleaseMode.Mode == config.TagMode && !metadata.ReleaseMode.IsTest {
|
|
packageJSONVersion, err := config.GetPackageJSONVersion(GrafanaDir)
|
|
if err != nil {
|
|
return config.Config{}, "", err
|
|
}
|
|
semverGrafanaVersion, err := semver.Parse(metadata.GrafanaVersion)
|
|
if err != nil {
|
|
return config.Config{}, "", err
|
|
}
|
|
semverPackageJSONVersion, err := semver.Parse(packageJSONVersion)
|
|
if err != nil {
|
|
return config.Config{}, "", err
|
|
}
|
|
// Check if the semver digits of the tag are not equal
|
|
if semverGrafanaVersion.FinalizeVersion() != semverPackageJSONVersion.FinalizeVersion() {
|
|
return config.Config{}, "", cli.Exit(fmt.Errorf("package.json version and input tag version differ %s != %s.\nPlease update package.json", packageJSONVersion, metadata.GrafanaVersion), 1)
|
|
}
|
|
}
|
|
|
|
cfg.PackageVersion = metadata.GrafanaVersion
|
|
return cfg, mode, nil
|
|
}
|