From 50ba6730283436c882db2e42d7125805f003a0b4 Mon Sep 17 00:00:00 2001 From: Shahidh K Muhammed Date: Wed, 25 Dec 2019 13:06:59 +0530 Subject: [PATCH 1/2] add directory-name as an argument to init command --- cli/commands/init.go | 11 ++++++++--- cli/commands/root.go | 5 +++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/cli/commands/init.go b/cli/commands/init.go index a9a7dcd595901..d05db4d2328db 100644 --- a/cli/commands/init.go +++ b/cli/commands/init.go @@ -25,23 +25,27 @@ func NewInitCmd(ec *cli.ExecutionContext) *cobra.Command { EC: ec, } initCmd := &cobra.Command{ - Use: "init", + Use: "init [directory-name]", Short: "Initialize directory for Hasura GraphQL Engine migrations", Long: "Create directories and files required for enabling migrations on Hasura GraphQL Engine", Example: ` # Create a directory to store migrations - hasura init + hasura init [directory-name] # Now, edit /config.yaml to add endpoint and admin secret # Create a directory with endpoint and admin secret configured: - hasura init --directory --endpoint https://my-graphql-engine.com --admin-secret adminsecretkey + hasura init --endpoint https://my-graphql-engine.com --admin-secret adminsecretkey # See https://docs.hasura.io/1.0/graphql/manual/migrations/index.html for more details`, SilenceUsage: true, + Args: cobra.MaximumNArgs(1), PreRun: func(cmd *cobra.Command, args []string) { ec.Viper = viper.New() }, RunE: func(cmd *cobra.Command, args []string) error { + if len(args) == 1 { + opts.InitDir = args[0] + } return opts.run() }, } @@ -52,6 +56,7 @@ func NewInitCmd(ec *cli.ExecutionContext) *cobra.Command { f.StringVar(&opts.AdminSecret, "admin-secret", "", "admin secret for Hasura GraphQL Engine") f.StringVar(&opts.AdminSecret, "access-key", "", "access key for Hasura GraphQL Engine") f.MarkDeprecated("access-key", "use --admin-secret instead") + f.MarkDeprecated("directory", "use directory-name argument instead") return initCmd } diff --git a/cli/commands/root.go b/cli/commands/root.go index c9517f58b06ad..51758bf2e47dd 100644 --- a/cli/commands/root.go +++ b/cli/commands/root.go @@ -5,6 +5,7 @@ package commands import ( "github.com/hasura/graphql-engine/cli" "github.com/hasura/graphql-engine/cli/update" + "github.com/hasura/graphql-engine/cli/version" "github.com/pkg/errors" "github.com/spf13/cobra" ) @@ -37,8 +38,8 @@ var rootCmd = &cobra.Command{ EC: ec, } err := u.run(true) - if err != nil { - ec.Logger.WithError(err).Error("auto-update failed, run 'hasura update-cli' to update manually") + if err != nil && u.EC.Version.GetCLIVersion() != version.DevVersion { + ec.Logger.WithError(err).Warn("auto-update failed, run 'hasura update-cli' to update manually") } } } From 424c3d5c2a7ff3e8078195fc8968f5814e66a06a Mon Sep 17 00:00:00 2001 From: Shahidh K Muhammed Date: Wed, 25 Dec 2019 13:07:13 +0530 Subject: [PATCH 2/2] change dev version to a const string --- cli/telemetry/telemetry_test.go | 3 ++- cli/version/compatibility.go | 2 +- cli/version/version.go | 5 ++++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/cli/telemetry/telemetry_test.go b/cli/telemetry/telemetry_test.go index d6d426b67ab05..5a6085841d28d 100644 --- a/cli/telemetry/telemetry_test.go +++ b/cli/telemetry/telemetry_test.go @@ -4,11 +4,12 @@ import ( "testing" "github.com/hasura/graphql-engine/cli/telemetry" + "github.com/hasura/graphql-engine/cli/version" ) func TestBeamDev(t *testing.T) { tm := telemetry.BuildEvent() - tm.Version = "dev" + tm.Version = version.DevVersion tm.Command = "TEST" tm.CanBeam = true tm.Beam() diff --git a/cli/version/compatibility.go b/cli/version/compatibility.go index cd0ba8b0e69b4..369632648727a 100644 --- a/cli/version/compatibility.go +++ b/cli/version/compatibility.go @@ -14,7 +14,7 @@ const ( // a message which states the reason for the result. func (v *Version) CheckCLIServerCompatibility() (compatible bool, reason string) { // mark dev builds as compatible - if v.CLI == "dev" { + if v.CLI == DevVersion { return true, devCLI } // empty cli version diff --git a/cli/version/version.go b/cli/version/version.go index fe7269c05a5fd..2a7cb661774ec 100644 --- a/cli/version/version.go +++ b/cli/version/version.go @@ -7,9 +7,12 @@ import ( "github.com/Masterminds/semver" ) +// DevVersion is the version string for development versions. +const DevVersion = "dev" + // BuildVersion is the versin string with which CLI is built. Set during // the build time. -var BuildVersion = "dev" +var BuildVersion = DevVersion // Version defines the version object. type Version struct {