influx-cli/cmd/influx/server_config.go
William Baker 178c7546b1
feat: add server-config command (#346)
* feat: added server-config command

* chore: update openapi to latest
2021-12-23 09:32:31 -05:00

44 lines
1.1 KiB
Go

package main
import (
"errors"
"github.com/influxdata/influx-cli/v2/clients/server_config"
"github.com/influxdata/influx-cli/v2/pkg/cli/middleware"
"github.com/urfave/cli"
)
func newServerConfigCommand() cli.Command {
var params server_config.ListParams
return cli.Command{
Name: "server-config",
Usage: "Display server config",
Flags: append(
commonFlags(),
&cli.BoolFlag{
Name: "toml",
Usage: "Output configuration as TOML instead of JSON",
Destination: &params.TOML,
},
&cli.BoolFlag{
Name: "yaml",
Usage: "Output configuration as YAML instead of JSON",
Destination: &params.YAML,
},
),
Before: middleware.WithBeforeFns(withCli(), withApi(true), middleware.NoArgs),
Action: func(ctx *cli.Context) error {
if params.TOML && params.YAML {
return errors.New("cannot specify both TOML and YAML simultaneously")
}
api := getAPI(ctx)
client := server_config.Client{
CLI: getCLI(ctx),
ConfigApi: api.ConfigApi,
}
return client.List(getContext(ctx), &params)
},
}
}