aboutsummaryrefslogtreecommitdiffstats
path: root/client/go/internal/cli/cmd/curl.go
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2023-08-17 14:55:28 +0200
committerMartin Polden <mpolden@mpolden.no>2023-08-21 14:26:36 +0200
commitb1863768b512a7200496f8646fe239d3786d4443 (patch)
treedd21c88008f42506560b0e034769207d751f4cc3 /client/go/internal/cli/cmd/curl.go
parent873350caf5e984b5a580e2e0585dfd521eb493c0 (diff)
Support cluster discovery for all target types
Diffstat (limited to 'client/go/internal/cli/cmd/curl.go')
-rw-r--r--client/go/internal/cli/cmd/curl.go22
1 files changed, 14 insertions, 8 deletions
diff --git a/client/go/internal/cli/cmd/curl.go b/client/go/internal/cli/cmd/curl.go
index 3009cab2b5e..500a2a75663 100644
--- a/client/go/internal/cli/cmd/curl.go
+++ b/client/go/internal/cli/cmd/curl.go
@@ -39,7 +39,17 @@ $ vespa curl -- -v --data-urlencode "yql=select * from music where album contain
if err != nil {
return err
}
- service, err := target.Service(curlService, time.Duration(waitSecs)*time.Second, 0, cli.config.cluster())
+ var service *vespa.Service
+ useDeploy := curlService == "deploy"
+ timeout := time.Duration(waitSecs) * time.Second
+ if useDeploy {
+ if cli.config.cluster() != "" {
+ return fmt.Errorf("cannot specify cluster for service %s", curlService)
+ }
+ service, err = target.DeployService(timeout)
+ } else {
+ service, err = cli.service(target, cli.config.cluster(), time.Duration(waitSecs)*time.Second)
+ }
if err != nil {
return err
}
@@ -49,19 +59,15 @@ $ vespa curl -- -v --data-urlencode "yql=select * from music where album contain
if err != nil {
return err
}
- switch curlService {
- case vespa.DeployService:
+ if useDeploy {
if err := addAccessToken(c, target); err != nil {
return err
}
- case vespa.DocumentService, vespa.QueryService:
+ } else {
c.CaCertificate = service.TLSOptions.CACertificateFile
c.PrivateKey = service.TLSOptions.PrivateKeyFile
c.Certificate = service.TLSOptions.CertificateFile
- default:
- return fmt.Errorf("service not found: %s", curlService)
}
-
if dryRun {
log.Print(c.String())
} else {
@@ -73,7 +79,7 @@ $ vespa curl -- -v --data-urlencode "yql=select * from music where album contain
},
}
cmd.Flags().BoolVarP(&dryRun, "dry-run", "n", false, "Print the curl command that would be executed")
- cmd.Flags().StringVarP(&curlService, "service", "s", "query", "Which service to query. Must be \"deploy\", \"document\" or \"query\"")
+ cmd.Flags().StringVarP(&curlService, "service", "s", "container", "Which service to query. Must be \"deploy\" or \"container\"")
cli.bindWaitFlag(cmd, 60, &waitSecs)
return cmd
}