53
53
"debug" , false , "use debug log level" )
54
54
55
55
version = flag .Bool ("version" , false , "displays olm version" )
56
+
57
+ tlsKeyPath = flag .String (
58
+ "tls-key" , "" , "Path to use for private key (requires tls-cert)" )
59
+
60
+ tlsCertPath = flag .String (
61
+ "tls-cert" , "" , "Path to use for certificate key (requires tls-key)" )
56
62
)
57
63
58
64
func init () {
@@ -83,17 +89,33 @@ func main() {
83
89
}
84
90
}
85
91
92
+ logger := log .New ()
93
+ if * debug {
94
+ logger .SetLevel (log .DebugLevel )
95
+ }
96
+ logger .Infof ("log level %s" , logger .Level )
97
+
98
+ var useTLS bool
99
+ if * tlsCertPath != "" && * tlsKeyPath == "" || * tlsCertPath == "" && * tlsKeyPath != "" {
100
+ logger .Warn ("both --tls-key and --tls-crt must be provided for TLS to be enabled, falling back to non-https" )
101
+ } else if * tlsCertPath == "" && * tlsKeyPath == "" {
102
+ logger .Info ("TLS keys not set, using non-https" )
103
+ } else {
104
+ useTLS = true
105
+ }
106
+
86
107
// Serve a health check.
87
108
http .HandleFunc ("/healthz" , func (w http.ResponseWriter , r * http.Request ) {
88
109
w .WriteHeader (http .StatusOK )
89
110
})
90
111
go http .ListenAndServe (":8080" , nil )
91
112
92
- logger := log .New ()
93
- if * debug {
94
- logger .SetLevel (log .DebugLevel )
113
+ http .Handle ("/metrics" , promhttp .Handler ())
114
+ if useTLS {
115
+ go http .ListenAndServeTLS (":8081" , * tlsCertPath , * tlsKeyPath , nil )
116
+ } else {
117
+ go http .ListenAndServe (":8081" , nil )
95
118
}
96
- logger .Infof ("log level %s" , logger .Level )
97
119
98
120
// create a config client for operator status
99
121
config , err := clientcmd .BuildConfigFromFlags ("" , * kubeConfigPath )
@@ -112,9 +134,6 @@ func main() {
112
134
log .Panicf ("error configuring operator: %s" , err .Error ())
113
135
}
114
136
115
- http .Handle ("/metrics" , promhttp .Handler ())
116
- go http .ListenAndServe (":8081" , nil )
117
-
118
137
ready , done , sync := catalogOperator .Run (stopCh )
119
138
<- ready
120
139
0 commit comments