aboutsummaryrefslogtreecommitdiff
path: root/cmd/resolver/resolver.go
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2022-04-16 01:06:38 +0700
committerShulhan <ms@kilabit.info>2022-04-16 18:32:36 +0700
commitdfc441b32458d204dae6498867f08e7da483c815 (patch)
tree5348dbd28424e24719fdc582f8881551c390f3d7 /cmd/resolver/resolver.go
parentf9338965943247d124174c79392033518dc06a5b (diff)
downloadrescached-dfc441b32458d204dae6498867f08e7da483c815.tar.xz
cmd/resolver: implement command to fetch and print server environment
The "env" command fetch the current server environment and print as ini format to stdout.
Diffstat (limited to 'cmd/resolver/resolver.go')
-rw-r--r--cmd/resolver/resolver.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/cmd/resolver/resolver.go b/cmd/resolver/resolver.go
index 1985981..b7129cc 100644
--- a/cmd/resolver/resolver.go
+++ b/cmd/resolver/resolver.go
@@ -4,6 +4,7 @@
package main
import (
+ "encoding/json"
"fmt"
"log"
"math/rand"
@@ -103,6 +104,30 @@ func (rsol *resolver) doCmdCachesSearch(q string) {
printMessages(listMsg)
}
+func (rsol *resolver) doCmdEnv() {
+ var (
+ resc = rsol.newRescachedClient()
+
+ env *rescached.Environment
+ envJson []byte
+ err error
+ )
+
+ env, err = resc.Env()
+ if err != nil {
+ log.Printf("resolver: %s: %s", rsol.cmd, err)
+ return
+ }
+
+ envJson, err = json.MarshalIndent(env, "", " ")
+ if err != nil {
+ log.Printf("resolver: %s: %s", rsol.cmd, err)
+ return
+ }
+
+ fmt.Printf("%s\n", envJson)
+}
+
func (rsol *resolver) doCmdQuery(args []string) {
var (
maxAttempts = defAttempts