-
Notifications
You must be signed in to change notification settings - Fork 100
/
ping.go
37 lines (29 loc) · 818 Bytes
/
ping.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package admin
import (
"github.com/rilldata/rill/cli/pkg/cmdutil"
adminv1 "github.com/rilldata/rill/proto/gen/rill/admin/v1"
"github.com/spf13/cobra"
)
func PingCmd(ch *cmdutil.Helper) *cobra.Command {
var adminURL string
pingCmd := &cobra.Command{
Use: "ping",
Short: "Ping",
RunE: func(cmd *cobra.Command, args []string) error {
// Must set here to avoid flag parser overriding it globally
ch.AdminURL = adminURL
client, err := ch.Client()
if err != nil {
return err
}
pong, err := client.Ping(cmd.Context(), &adminv1.PingRequest{})
if err != nil {
return err
}
ch.Printf("Pong: %s\n", pong.Time.AsTime().String())
return nil
},
}
pingCmd.Flags().StringVar(&adminURL, "url", "https://admin.rilldata.com", "Base URL for the admin API")
return pingCmd
}