istio
54 строки · 1.5 Кб
1// Copyright Istio Authors
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package options
16
17// ProxyArgs provides all of the configuration parameters for the Pilot proxy.
18type ProxyArgs struct {
19DNSDomain string
20StsPort int
21TokenManagerPlugin string
22
23MeshConfigFile string
24
25// proxy config flags (named identically)
26ServiceCluster string
27ProxyLogLevel string
28ProxyComponentLogLevel string
29Concurrency int
30TemplateFile string
31OutlierLogPath string
32
33PodName string
34PodNamespace string
35
36// enableProfiling enables profiling via web interface host:port/debug/pprof/
37EnableProfiling bool
38}
39
40// NewProxyArgs constructs proxyArgs with default values.
41func NewProxyArgs() ProxyArgs {
42p := ProxyArgs{}
43
44// Apply Default Values.
45p.applyDefaults()
46
47return p
48}
49
50// applyDefaults apply default value to ProxyArgs
51func (p *ProxyArgs) applyDefaults() {
52p.PodName = PodNameVar.Get()
53p.PodNamespace = PodNamespaceVar.Get()
54}
55