This repository has been archived by the owner on Dec 22, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.go
59 lines (48 loc) · 1.63 KB
/
app.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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package app
import (
"github.com/spf13/pflag"
)
const Name = "scaleid"
const (
PrefixPath = "path."
PrefixGRPCServer = "grpc-server."
PrefixTLS = "tls."
PrefixPlugin = "plugin."
PrefixInternal = "internal."
PrefixShared = "shared."
)
const (
PrefixGRPCServerTLS = PrefixGRPCServer + PrefixTLS
PrefixPluginInternal = PrefixPlugin + PrefixInternal
PrefixPluginShared = PrefixPlugin + PrefixShared
)
const (
SuffixPlugin = "plugin"
SuffixAddress = "address"
SuffixNetwork = "network"
SuffixCertPath = "cert-path"
SuffixKeyPath = "key-path"
SuffixClientCAPath = "client-ca-path"
SuffixEnabled = "enabled"
)
const (
DefaultGRPCServerAddress = ":50051"
DefaultGRPCServerNetwork = "tcp"
DefaultGRPCServerTLSEnabled = false
DefaultPluginSharedEnabled = false
)
func FlagSet() *pflag.FlagSet {
f := new(pflag.FlagSet)
// path
f.String(PrefixPath+SuffixPlugin, "", "Path to shared plugins")
// grpc server
f.String(PrefixGRPCServer+SuffixAddress, DefaultGRPCServerAddress, "gRPC server address")
f.String(PrefixGRPCServer+SuffixNetwork, DefaultGRPCServerNetwork, "gRPC server network")
f.Bool(PrefixGRPCServerTLS+SuffixEnabled, DefaultGRPCServerTLSEnabled, "Enable TLS for gRPC server")
f.String(PrefixGRPCServerTLS+SuffixCertPath, "", "gRPC server TLS certificate path")
f.String(PrefixGRPCServerTLS+SuffixKeyPath, "", "gRPC server TLS private key path")
f.String(PrefixGRPCServerTLS+SuffixClientCAPath, "", "gRPC server TLS client CA certificate path")
// plugin
f.Bool(PrefixPluginShared+SuffixEnabled, DefaultPluginSharedEnabled, "Enable shared plugins")
return f
}