From fe0d85804ab535cb1e4b12d5f18ded500ed87fe1 Mon Sep 17 00:00:00 2001 From: Aravind K P Date: Mon, 22 Feb 2021 18:12:17 +0530 Subject: [PATCH] cli: fix tls config of api client GitOrigin-RevId: 5fb26450aae3062b0b96093e7884f6277ed846f0 --- cli/cli.go | 10 +++++++++- .../scripts_upgrade_multiple_sources.go | 17 +++++++++++++++++ cli/internal/scripts/update-project-v3.go | 1 + 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/cli/cli.go b/cli/cli.go index 95d5d5b0712de..05b8f757e6302 100644 --- a/cli/cli.go +++ b/cli/cli.go @@ -640,7 +640,15 @@ func (ec *ExecutionContext) Validate() error { if !strings.HasSuffix(ec.Config.Endpoint, "/") { ec.Config.Endpoint = fmt.Sprintf("%s/", ec.Config.Endpoint) } - httpClient, err := httpc.New(nil, ec.Config.Endpoint, headers) + httpClient, err := httpc.New( + &http.Client{ + Transport: &http.Transport{ + TLSClientConfig: ec.Config.TLSConfig, + }, + }, + ec.Config.Endpoint, + headers, + ) if err != nil { return err } diff --git a/cli/commands/scripts_upgrade_multiple_sources.go b/cli/commands/scripts_upgrade_multiple_sources.go index 81716242571f8..0bd25f9bf90e2 100644 --- a/cli/commands/scripts_upgrade_multiple_sources.go +++ b/cli/commands/scripts_upgrade_multiple_sources.go @@ -2,6 +2,7 @@ package commands import ( "github.com/hasura/graphql-engine/cli/internal/scripts" + "github.com/hasura/graphql-engine/cli/util" "github.com/spf13/afero" "github.com/hasura/graphql-engine/cli" @@ -38,5 +39,21 @@ func newUpdateMultipleSources(ec *cli.ExecutionContext) *cobra.Command { return scripts.UpdateProjectV3(opts) }, } + + f := cmd.Flags() + + f.String("endpoint", "", "http(s) endpoint for Hasura GraphQL Engine") + f.String("admin-secret", "", "admin secret for Hasura GraphQL Engine") + f.String("access-key", "", "access key for Hasura GraphQL Engine") + f.MarkDeprecated("access-key", "use --admin-secret instead") + f.Bool("insecure-skip-tls-verify", false, "skip TLS verification and disable cert checking (default: false)") + f.String("certificate-authority", "", "path to a cert file for the certificate authority") + + // need to create a new viper because https://github.com/spf13/viper/issues/233 + util.BindPFlag(v, "endpoint", f.Lookup("endpoint")) + util.BindPFlag(v, "admin_secret", f.Lookup("admin-secret")) + util.BindPFlag(v, "access_key", f.Lookup("access-key")) + util.BindPFlag(v, "insecure_skip_tls_verify", f.Lookup("insecure-skip-tls-verify")) + util.BindPFlag(v, "certificate_authority", f.Lookup("certificate-authority")) return cmd } diff --git a/cli/internal/scripts/update-project-v3.go b/cli/internal/scripts/update-project-v3.go index 0c502c0b5f57b..e4f30bbb92352 100644 --- a/cli/internal/scripts/update-project-v3.go +++ b/cli/internal/scripts/update-project-v3.go @@ -56,6 +56,7 @@ func UpdateProjectV3(opts UpgradeToMuUpgradeProjectToMultipleSourcesOpts) error } opts.Logger.Warn("The upgrade process will make some changes to your project directory, It is advised to create a backup project directory before continuing") + opts.Logger.Warn("This script will rewrite the project metadata with metadata on server") response, err := util.GetYesNoPrompt("continue?") if err != nil { return err