diff --git a/go.mod b/go.mod index 4825bce05af7..49d10ee52724 100644 --- a/go.mod +++ b/go.mod @@ -122,8 +122,6 @@ require ( github.com/ryanuber/go-glob v0.0.0-20160226084822-572520ed46db // indirect github.com/satori/go.uuid v1.2.0 github.com/sethgrid/pester v0.0.0-20180227223404-ed9870dad317 // indirect - github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749 // indirect - github.com/shurcooL/vfsgen v0.0.0-20181202132449-6a9ea43bcacd // indirect github.com/signalfx/com_signalfx_metrics_protobuf v0.0.0-20170330202426-93e507b42f43 github.com/signalfx/gohistogram v0.0.0-20160107210732-1ccfd2ff5083 // indirect github.com/signalfx/golib v1.1.6 @@ -167,5 +165,6 @@ require ( k8s.io/cli-runtime v0.0.0-20190221101700-11047e25a94a k8s.io/client-go v10.0.0+incompatible k8s.io/helm v2.13.1+incompatible + k8s.io/kubernetes v1.13.1 sigs.k8s.io/yaml v1.1.0 ) diff --git a/go.sum b/go.sum index cd1af6c2c338..98542a8c4026 100644 --- a/go.sum +++ b/go.sum @@ -514,8 +514,6 @@ github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 h1:nn5Wsu0esKSJiIVhscUt github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/sethgrid/pester v0.0.0-20180227223404-ed9870dad317 h1:nZdAthMCwjEnQNMZDxhEVWPWAxeBMvHRka6A8oFPk78= github.com/sethgrid/pester v0.0.0-20180227223404-ed9870dad317/go.mod h1:Ad7IjTpvzZO8Fl0vh9AzQ+j/jYZfyp2diGwI8m5q+ns= -github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749/go.mod h1:ZY1cvUeJuFPAdZ/B6v7RHavJWZn2YPVFQ1OSXhCGOkg= -github.com/shurcooL/vfsgen v0.0.0-20181202132449-6a9ea43bcacd/go.mod h1:TrYk7fJVaAttu97ZZKrO9UbRa8izdowaMIZcxYMbVaw= github.com/signalfx/com_signalfx_metrics_protobuf v0.0.0-20170330202426-93e507b42f43 h1:JRmIUcy6IKEDUV0SHg7393Fh8DomnKRfz6qDto43hx8= github.com/signalfx/com_signalfx_metrics_protobuf v0.0.0-20170330202426-93e507b42f43/go.mod h1:muYA2clvwCdj7nzAJ5vJIXYpJsUumhAl4Uu1wUNpWzA= github.com/signalfx/gohistogram v0.0.0-20160107210732-1ccfd2ff5083 h1:WsShHmu12ZztYPfh9b+I+VjYD1o8iOHhB67WZCMEEE8= @@ -763,8 +761,6 @@ istio.io/api v0.0.0-20190827203453-55bf99d69a1f h1:hdbHcdj0Hmsjdqu8mNQFuNe/KY3EI istio.io/api v0.0.0-20190827203453-55bf99d69a1f/go.mod h1:42cBjnu/rTJcCaKi8nLdIvq0n71RcLrkgZ9IQSvDdSQ= istio.io/gogo-genproto v0.0.0-20190731221249-06e20ada0df2 h1:AZ+aTgKSBmBc6KtZU+P+Wr2dOdPriJu09cU8wGMG+/M= istio.io/gogo-genproto v0.0.0-20190731221249-06e20ada0df2/go.mod h1:IjvrbUlRbbw4JCpsgvgihcz9USUwEoNTL/uwMtyV5yk= -istio.io/operator v0.0.0-20190813061052-3b21fa19e418 h1:Qbm6mVyr2VswO7bS2fS7ouoZTl+gARRds+dsBeulPH8= -istio.io/operator v0.0.0-20190813061052-3b21fa19e418/go.mod h1:WudeDwe5Tdj+6dSLiK8gDQJr07vJgyNM2DVRGOWbn8M= istio.io/operator v0.0.0-20190827173952-af847b66d2f9 h1:lXYXdziz/jPdLue45aGwStjKR1hxU1ufCVT4v7adJPk= istio.io/operator v0.0.0-20190827173952-af847b66d2f9/go.mod h1:ENQMBbrqipefx/BuRqZirIiMDfkdVa2l562+kWDY3Gs= istio.io/pkg v0.0.0-20190515193414-9332430ad747/go.mod h1:0EkPwmR0tESYjN4Ilq1D52nTBurXaQvny3r2VY4j4tw= diff --git a/vendor/istio.io/operator/cmd/mesh/manifest-apply.go b/vendor/istio.io/operator/cmd/mesh/manifest-apply.go index 18a24311f774..48cbbadad73d 100644 --- a/vendor/istio.io/operator/cmd/mesh/manifest-apply.go +++ b/vendor/istio.io/operator/cmd/mesh/manifest-apply.go @@ -57,12 +57,12 @@ func manifestApplyCmd(rootArgs *rootArgs, maArgs *manifestApplyArgs) *cobra.Comm Long: "The apply subcommand is used to generate an Istio install manifest and apply it to a cluster.", Args: cobra.ExactArgs(0), Run: func(cmd *cobra.Command, args []string) { - manifestApply(rootArgs, maArgs) + l := newLogger(rootArgs.logToStdErr, cmd.OutOrStdout(), cmd.OutOrStderr()) + manifestApply(rootArgs, maArgs, l) }} - } -func manifestApply(args *rootArgs, maArgs *manifestApplyArgs) { +func manifestApply(args *rootArgs, maArgs *manifestApplyArgs, l *logger) { if err := configLogs(args); err != nil { _, _ = fmt.Fprintf(os.Stderr, "Could not configure logs: %s", err) os.Exit(1) @@ -70,32 +70,32 @@ func manifestApply(args *rootArgs, maArgs *manifestApplyArgs) { overlayFromSet, err := makeTreeFromSetList(maArgs.set) if err != nil { - logAndFatalf(args, err.Error()) + l.logAndFatal(err.Error()) } manifests, err := genManifests(maArgs.inFilename, overlayFromSet) if err != nil { - logAndFatalf(args, "Could not generate manifest: %v", err) + l.logAndFatal("Could not generate manifest: ", err) } out, err := manifest.ApplyAll(manifests, opversion.OperatorBinaryVersion, args.dryRun, args.verbose, maArgs.wait, maArgs.readinessTimeout) if err != nil { - logAndFatalf(args, "Failed to apply manifest with kubectl client: %v", err) + l.logAndFatal("Failed to apply manifest with kubectl client: ", err) } for cn := range manifests { cs := fmt.Sprintf("Output for component %s:", cn) - logAndPrintf(args, "\n%s\n%s", cs, strings.Repeat("=", len(cs))) + l.logAndPrint("\n", cs, "\n", strings.Repeat("=", len(cs))) if out[cn].Err != nil { - logAndPrintf(args, "Error: %s\n", out[cn].Err) + l.logAndPrint("Error: ", out[cn].Err, "\n") } if strings.TrimSpace(out[cn].Stderr) != "" { - logAndPrintf(args, "Error detail:\n%s\n", out[cn].Stderr) + l.logAndPrint("Error detail:\n", out[cn].Stderr, "\n") } if strings.TrimSpace(out[cn].Stdout) != "" { - logAndPrintf(args, "Stdout:\n%s\n", out[cn].Stdout) + l.logAndPrint("Stdout:\n", out[cn].Stdout, "\n") } if args.verbose { - logAndPrintf(args, "Manifest:\n\n%s\n", out[cn].Manifest) + l.logAndPrint("Manifest:\n\n", out[cn].Manifest, "\n") } } } diff --git a/vendor/istio.io/operator/cmd/mesh/manifest-diff.go b/vendor/istio.io/operator/cmd/mesh/manifest-diff.go index 2e6bbe9023a4..793f45670aad 100644 --- a/vendor/istio.io/operator/cmd/mesh/manifest-diff.go +++ b/vendor/istio.io/operator/cmd/mesh/manifest-diff.go @@ -74,7 +74,7 @@ func manifestDiffCmd(rootArgs *rootArgs, diffArgs *manifestDiffArgs) *cobra.Comm //compareManifestsFromFiles compares two manifest files func compareManifestsFromFiles(rootArgs *rootArgs, args []string, selectResources, ignoreResources string) { - checkLogsOrExit(rootArgs) + initLogsOrExit(rootArgs) a, err := ioutil.ReadFile(args[0]) if err != nil { @@ -106,14 +106,14 @@ func yamlFileFilter(path string) bool { //compareManifestsFromDirs compares manifests from two directories func compareManifestsFromDirs(rootArgs *rootArgs, dirName1, dirName2, selectResources, ignoreResources string) { - checkLogsOrExit(rootArgs) + initLogsOrExit(rootArgs) - mf1, err := util.ReadFiles(dirName1, yamlFileFilter) + mf1, err := util.ReadFilesWithFilter(dirName1, yamlFileFilter) if err != nil { log.Error(err.Error()) os.Exit(1) } - mf2, err := util.ReadFiles(dirName2, yamlFileFilter) + mf2, err := util.ReadFilesWithFilter(dirName2, yamlFileFilter) if err != nil { log.Error(err.Error()) os.Exit(1) diff --git a/vendor/istio.io/operator/cmd/mesh/manifest-generate.go b/vendor/istio.io/operator/cmd/mesh/manifest-generate.go index 46422497e63e..95ab9618d131 100644 --- a/vendor/istio.io/operator/cmd/mesh/manifest-generate.go +++ b/vendor/istio.io/operator/cmd/mesh/manifest-generate.go @@ -19,11 +19,10 @@ import ( "os" "sort" - "istio.io/operator/pkg/name" - "github.com/spf13/cobra" "istio.io/operator/pkg/manifest" + "istio.io/operator/pkg/name" ) type manifestGenerateArgs struct { @@ -49,12 +48,13 @@ func manifestGenerateCmd(rootArgs *rootArgs, mgArgs *manifestGenerateArgs) *cobr Long: "The generate subcommand is used to generate an Istio install manifest.", Args: cobra.ExactArgs(0), Run: func(cmd *cobra.Command, args []string) { - manifestGenerate(rootArgs, mgArgs) + l := newLogger(rootArgs.logToStdErr, cmd.OutOrStdout(), cmd.OutOrStderr()) + manifestGenerate(rootArgs, mgArgs, l) }} } -func manifestGenerate(args *rootArgs, mgArgs *manifestGenerateArgs) { +func manifestGenerate(args *rootArgs, mgArgs *manifestGenerateArgs, l *logger) { if err := configLogs(args); err != nil { _, _ = fmt.Fprintf(os.Stderr, "Could not configure logs: %s", err) os.Exit(1) @@ -62,23 +62,23 @@ func manifestGenerate(args *rootArgs, mgArgs *manifestGenerateArgs) { overlayFromSet, err := makeTreeFromSetList(mgArgs.set) if err != nil { - logAndFatalf(args, err.Error()) + l.logAndFatal(err.Error()) } manifests, err := genManifests(mgArgs.inFilename, overlayFromSet) if err != nil { - logAndFatalf(args, err.Error()) + l.logAndFatal(err.Error()) } if mgArgs.outFilename == "" { for _, m := range orderedManifests(manifests) { - fmt.Println(m) + l.print(m + "\n") } } else { if err := os.MkdirAll(mgArgs.outFilename, os.ModePerm); err != nil { - logAndFatalf(args, err.Error()) + l.logAndFatal(err.Error()) } if err := manifest.RenderToDir(manifests, mgArgs.outFilename, args.dryRun, args.verbose); err != nil { - logAndFatalf(args, err.Error()) + l.logAndFatal(err.Error()) } } } diff --git a/vendor/istio.io/operator/cmd/mesh/manifest-migrate.go b/vendor/istio.io/operator/cmd/mesh/manifest-migrate.go index 7570967fdb0e..c17e1b74ae65 100644 --- a/vendor/istio.io/operator/cmd/mesh/manifest-migrate.go +++ b/vendor/istio.io/operator/cmd/mesh/manifest-migrate.go @@ -16,14 +16,12 @@ package mesh import ( "encoding/json" - "fmt" "path/filepath" "github.com/ghodss/yaml" "github.com/gogo/protobuf/jsonpb" "github.com/spf13/cobra" - "istio.io/operator/pkg/apis/istio/v1alpha2" "istio.io/operator/pkg/kubectlcmd" "istio.io/operator/pkg/translate" "istio.io/operator/pkg/util" @@ -50,10 +48,11 @@ func manifestMigrateCmd(rootArgs *rootArgs, mmArgs *manifestMigrateArgs) *cobra. Short: "Migrates a file containing Helm values to IstioControlPlane format.", Long: "The migrate subcommand is used to migrate a configuration in Helm values format to IstioControlPlane format.", Run: func(cmd *cobra.Command, args []string) { + l := newLogger(rootArgs.logToStdErr, cmd.OutOrStdout(), cmd.OutOrStderr()) if len(args) == 0 { - migrateFromClusterConfig(rootArgs, mmArgs) + migrateFromClusterConfig(rootArgs, mmArgs, l) } else { - migrateFromFiles(rootArgs, args) + migrateFromFiles(rootArgs, args, l) } }} } @@ -63,59 +62,55 @@ func valueFileFilter(path string) bool { } // migrateFromFiles handles migration for local values.yaml files -func migrateFromFiles(rootArgs *rootArgs, args []string) { - checkLogsOrExit(rootArgs) - - logAndPrintf(rootArgs, "translating input values.yaml file at: %s to new API", args[0]) - value, err := util.ReadFiles(args[0], valueFileFilter) +func migrateFromFiles(rootArgs *rootArgs, args []string, l *logger) { + initLogsOrExit(rootArgs) + value, err := util.ReadFilesWithFilter(args[0], valueFileFilter) if err != nil { - logAndFatalf(rootArgs, err.Error()) + l.logAndFatal(err.Error()) + } + if value == "" { + l.logAndPrint("no valid value.yaml file specified") + return } - translateFunc(rootArgs, []byte(value)) + translateFunc([]byte(value), l) } // translateFunc translates the input values and output the result -func translateFunc(rootArgs *rootArgs, values []byte) { +func translateFunc(values []byte, l *logger) { ts, err := translate.NewReverseTranslator(version.NewMinorVersion(1, 3)) if err != nil { - logAndFatalf(rootArgs, "error creating values.yaml translator: %s", err.Error()) - } - - valueStruct := v1alpha2.Values{} - err = yaml.Unmarshal(values, &valueStruct) - if err != nil { - logAndFatalf(rootArgs, "error unmarshalling values.yaml into value struct : %s", err.Error()) + l.logAndFatal("error creating values.yaml translator: ", err.Error()) } - isCPSpec, err := ts.TranslateFromValueToSpec(&valueStruct) + isCPSpec, err := ts.TranslateFromValueToSpec(values) if err != nil { - logAndFatalf(rootArgs, "error translating values.yaml: %s", err.Error()) + l.logAndFatal("error translating values.yaml: ", err.Error()) } ms := jsonpb.Marshaler{} gotString, err := ms.MarshalToString(isCPSpec) if err != nil { - logAndFatalf(rootArgs, "error marshalling translated IstioControlPlaneSpec: %s", err.Error()) + l.logAndFatal("error marshalling translated IstioControlPlaneSpec: ", err.Error()) } cpYaml, _ := yaml.JSONToYAML([]byte(gotString)) if err != nil { - logAndFatalf(rootArgs, "error converting json: %s\n%s", gotString, err.Error()) + l.logAndFatal("error converting json: ", gotString, "\n", err.Error()) } - fmt.Println(string(cpYaml)) + l.print(string(cpYaml) + "\n") } // migrateFromClusterConfig handles migration for in cluster config. -func migrateFromClusterConfig(rootArgs *rootArgs, mmArgs *manifestMigrateArgs) { - checkLogsOrExit(rootArgs) +func migrateFromClusterConfig(rootArgs *rootArgs, mmArgs *manifestMigrateArgs, l *logger) { + initLogsOrExit(rootArgs) - logAndPrintf(rootArgs, "translating in cluster specs") + l.logAndPrint("translating in cluster specs") c := kubectlcmd.New() output, stderr, err := c.GetConfig("istio-sidecar-injector", mmArgs.namespace, "jsonpath='{.data.values}'") if err != nil { - logAndFatalf(rootArgs, err.Error()) + l.logAndFatal(err.Error()) } if stderr != "" { - logAndPrintf(rootArgs, "error: %s\n", stderr) + l.logAndPrint("error: ", stderr, "\n") } var value map[string]interface{} if len(output) > 1 { @@ -123,11 +118,11 @@ func migrateFromClusterConfig(rootArgs *rootArgs, mmArgs *manifestMigrateArgs) { } err = json.Unmarshal([]byte(output), &value) if err != nil { - logAndFatalf(rootArgs, "error unmarshalling JSON to untyped map %s", err.Error()) + l.logAndFatal("error unmarshalling JSON to untyped map ", err.Error()) } res, err := yaml.Marshal(value) if err != nil { - logAndFatalf(rootArgs, "error marshalling untyped map to YAML: %s", err.Error()) + l.logAndFatal("error marshalling untyped map to YAML: ", err.Error()) } - translateFunc(rootArgs, res) + translateFunc(res, l) } diff --git a/vendor/istio.io/operator/cmd/mesh/manifest-versions.go b/vendor/istio.io/operator/cmd/mesh/manifest-versions.go index 71f1afd5c8ba..ab40f497b263 100644 --- a/vendor/istio.io/operator/cmd/mesh/manifest-versions.go +++ b/vendor/istio.io/operator/cmd/mesh/manifest-versions.go @@ -48,13 +48,13 @@ func manifestVersionsCmd(rootArgs *rootArgs, versionsArgs *manifestVersionsArgs) Long: "List the version of Istio recommended for and supported by this version of the operator binary.", Args: cobra.ExactArgs(0), Run: func(cmd *cobra.Command, args []string) { - manifestVersions(rootArgs, versionsArgs) + l := newLogger(rootArgs.logToStdErr, cmd.OutOrStdout(), cmd.OutOrStderr()) + manifestVersions(rootArgs, versionsArgs, l) }} - } -func manifestVersions(args *rootArgs, mvArgs *manifestVersionsArgs) { - checkLogsOrExit(args) +func manifestVersions(args *rootArgs, mvArgs *manifestVersionsArgs, l *logger) { + initLogsOrExit(args) var b []byte var err error @@ -63,17 +63,17 @@ func manifestVersions(args *rootArgs, mvArgs *manifestVersionsArgs) { if strings.HasPrefix(uri, "http") { b, err = httprequest.Get(uri) if err != nil { - logAndFatalf(args, err.Error()) + l.logAndFatal(err.Error()) } } else { b, err = ioutil.ReadFile(uri) if err != nil { - logAndFatalf(args, err.Error()) + l.logAndFatal(err.Error()) } } var versions []*version.CompatibilityMapping if err = yaml.Unmarshal(b, &versions); err != nil { - logAndFatalf(args, err.Error()) + l.logAndFatal(err.Error()) } var myVersionMap *version.CompatibilityMapping @@ -84,10 +84,10 @@ func manifestVersions(args *rootArgs, mvArgs *manifestVersionsArgs) { } if myVersionMap == nil { - logAndFatalf(args, "This operator version (%s) was not found in the global manifestVersions map.", binversion.OperatorBinaryGoVersion.String()) + l.logAndFatal("This operator version ", binversion.OperatorBinaryGoVersion.String(), " was not found in the global manifestVersions map.") } - fmt.Printf("\nOperator version is %s.\n\n", binversion.OperatorBinaryGoVersion.String()) + fmt.Print("\nOperator version is ", binversion.OperatorBinaryGoVersion.String(), ".\n\n") fmt.Println("The following installation package versions are recommended for use with this version of the operator:") for _, v := range myVersionMap.RecommendedIstioVersions { fmt.Printf(" %s\n", v.String()) diff --git a/vendor/istio.io/operator/cmd/mesh/manifest.go b/vendor/istio.io/operator/cmd/mesh/manifest.go index c35cef90cc30..3fa2c1d7b6cb 100644 --- a/vendor/istio.io/operator/cmd/mesh/manifest.go +++ b/vendor/istio.io/operator/cmd/mesh/manifest.go @@ -16,6 +16,8 @@ package mesh import ( "fmt" + "path" + "path/filepath" "strings" "github.com/ghodss/yaml" @@ -23,6 +25,7 @@ import ( "istio.io/operator/pkg/apis/istio/v1alpha2" "istio.io/operator/pkg/component/controlplane" + "istio.io/operator/pkg/helm" "istio.io/operator/pkg/name" "istio.io/operator/pkg/tpath" "istio.io/operator/pkg/translate" @@ -89,6 +92,11 @@ func genManifests(inFilename string, setOverlayYAML string) (name.ManifestMap, e if err != nil { return nil, err } + + if err := fetchInstallPackageFromURL(mergedICPS); err != nil { + return nil, err + } + cp := controlplane.NewIstioControlPlane(mergedICPS, t) if err := cp.Run(); err != nil { return nil, fmt.Errorf("failed to create Istio control plane with spec: \n%v\nerror: %s", mergedICPS, err) @@ -101,6 +109,25 @@ func genManifests(inFilename string, setOverlayYAML string) (name.ManifestMap, e return manifests, nil } +// fetchInstallPackageFromURL downloads installation packages from specified URL. +func fetchInstallPackageFromURL(mergedICPS *v1alpha2.IstioControlPlaneSpec) error { + if util.IsHTTPURL(mergedICPS.InstallPackagePath) { + uf, err := helm.NewURLFetcher(mergedICPS.InstallPackagePath, "") + if err != nil { + return err + } + if err := uf.FetchBundles().ToError(); err != nil { + return err + } + isp := path.Base(mergedICPS.InstallPackagePath) + // get rid of the suffix, installation package is untared to folder name istio-{version}, e.g. istio-1.3.0 + idx := strings.LastIndex(isp, "-") + // TODO: replace with more robust logic to set local file path + mergedICPS.InstallPackagePath = filepath.Join(uf.DestDir(), isp[:idx], helm.ChartsFilePath) + } + return nil +} + // makeTreeFromSetList creates a YAML tree from a string slice containing key-value pairs in the format key=value. func makeTreeFromSetList(setOverlay []string) (string, error) { if len(setOverlay) == 0 { @@ -117,7 +144,7 @@ func makeTreeFromSetList(setOverlay []string) (string, error) { return "", fmt.Errorf("bad argument %s: expect format key=value", kv) } k := kvv[0] - v := kvv[1] + v := util.ParseValue(kvv[1]) if err := tpath.WriteNode(tree, util.PathFromString(k), v); err != nil { return "", err } diff --git a/vendor/istio.io/operator/cmd/mesh/profile-diff.go b/vendor/istio.io/operator/cmd/mesh/profile-diff.go index 8d59870c76c5..317981a5fd86 100644 --- a/vendor/istio.io/operator/cmd/mesh/profile-diff.go +++ b/vendor/istio.io/operator/cmd/mesh/profile-diff.go @@ -39,7 +39,7 @@ func profileDiffCmd(rootArgs *rootArgs) *cobra.Command { // profileDiff compare two profile files. func profileDiff(rootArgs *rootArgs, args []string) { - checkLogsOrExit(rootArgs) + initLogsOrExit(rootArgs) a, err := helm.ReadValuesYAML(args[0]) if err != nil { diff --git a/vendor/istio.io/operator/cmd/mesh/profile-dump.go b/vendor/istio.io/operator/cmd/mesh/profile-dump.go index bccaba08fb40..0f0a47c1f7f6 100644 --- a/vendor/istio.io/operator/cmd/mesh/profile-dump.go +++ b/vendor/istio.io/operator/cmd/mesh/profile-dump.go @@ -56,40 +56,29 @@ func profileDumpCmd(rootArgs *rootArgs, pdArgs *profileDumpArgs) *cobra.Command Long: "The dump subcommand is used to dump the values in an Istio configuration profile.", Args: cobra.MaximumNArgs(1), Run: func(cmd *cobra.Command, args []string) { - profileDump(args, rootArgs, pdArgs) + l := newLogger(rootArgs.logToStdErr, cmd.OutOrStdout(), cmd.OutOrStderr()) + profileDump(args, rootArgs, pdArgs, l) }} } -func profileDump(args []string, rootArgs *rootArgs, pdArgs *profileDumpArgs) { - checkLogsOrExit(rootArgs) +func profileDump(args []string, rootArgs *rootArgs, pdArgs *profileDumpArgs, l *logger) { + initLogsOrExit(rootArgs) if len(args) == 1 && pdArgs.inFilename != "" { - logAndFatalf(rootArgs, "Cannot specify both profile name and filename flag.") + l.logAndFatal("Cannot specify both profile name and filename flag.") } - writer, err := getWriter("") - if err != nil { - logAndFatalf(rootArgs, err.Error()) - } - defer func() { - if err := writer.Close(); err != nil { - logAndFatalf(rootArgs, "Did not close output successfully: %v", err) - } - }() - profile := "" if len(args) == 1 { profile = args[0] } y, err := genProfile(pdArgs.helmValues, pdArgs.inFilename, profile, "", pdArgs.configPath) if err != nil { - logAndFatalf(rootArgs, err.Error()) + l.logAndFatal(err.Error()) } - if _, err := writer.WriteString(y); err != nil { - logAndFatalf(rootArgs, "Could not write values; %s", err) - } + l.print(y + "\n") } func genProfile(helmValues bool, inFilename, profile, setOverlayYAML, configPath string) (string, error) { diff --git a/vendor/istio.io/operator/cmd/mesh/profile-list.go b/vendor/istio.io/operator/cmd/mesh/profile-list.go index ae440a05ac72..1d5a1cb7dd38 100644 --- a/vendor/istio.io/operator/cmd/mesh/profile-list.go +++ b/vendor/istio.io/operator/cmd/mesh/profile-list.go @@ -36,7 +36,7 @@ func profileListCmd(rootArgs *rootArgs) *cobra.Command { // profileList list all the builtin profiles. func profileList(args *rootArgs) { - checkLogsOrExit(args) + initLogsOrExit(args) profiles := helm.ListBuiltinProfiles() if len(profiles) == 0 { fmt.Println("No profiles available.") diff --git a/vendor/istio.io/operator/cmd/mesh/root.go b/vendor/istio.io/operator/cmd/mesh/root.go index 7a92ee638f14..5e775a93ae37 100644 --- a/vendor/istio.io/operator/cmd/mesh/root.go +++ b/vendor/istio.io/operator/cmd/mesh/root.go @@ -43,7 +43,7 @@ func addFlags(cmd *cobra.Command, rootArgs *rootArgs) { cmd.PersistentFlags().BoolVarP(&rootArgs.logToStdErr, "logtostderr", "", false, "Send logs to stderr.") cmd.PersistentFlags().BoolVarP(&rootArgs.dryRun, "dry-run", "", - true, "Console/log output only, make no changes.") + false, "Console/log output only, make no changes.") cmd.PersistentFlags().BoolVarP(&rootArgs.verbose, "verbose", "", false, "Verbose output.") } diff --git a/vendor/istio.io/operator/cmd/mesh/shared.go b/vendor/istio.io/operator/cmd/mesh/shared.go index 843f05381033..816946a28fc1 100644 --- a/vendor/istio.io/operator/cmd/mesh/shared.go +++ b/vendor/istio.io/operator/cmd/mesh/shared.go @@ -18,34 +18,26 @@ package mesh import ( "fmt" + "io" "os" "istio.io/pkg/log" ) const ( - logFilePath = "./mesh-cli.log" + logFilePath = "./.mesh-cli.log" ) -func getWriter(outFilename string) (*os.File, error) { - writer := os.Stdout - if outFilename != "" { - file, err := os.Create(outFilename) - if err != nil { - return nil, err - } - - writer = file - } - return writer, nil -} - -func checkLogsOrExit(args *rootArgs) { +func initLogsOrExit(args *rootArgs) { + // Only the logs for the last command are of interest. + // Remove any previous log to avoid indefinite accumulation. + _ = os.Remove(logFilePath) if err := configLogs(args); err != nil { _, _ = fmt.Fprintf(os.Stderr, "Could not configure logs: %s", err) os.Exit(1) } } + func configLogs(args *rootArgs) error { opt := log.DefaultOptions() if !args.logToStdErr { @@ -55,16 +47,42 @@ func configLogs(args *rootArgs) error { return log.Configure(opt) } +type logger struct { + logToStdErr bool + stdOut io.Writer + stdErr io.Writer +} + +func newLogger(logToStdErr bool, stdOut, stdErr io.Writer) *logger { + return &logger{ + logToStdErr: logToStdErr, + stdOut: stdOut, + stdErr: stdErr, + } +} + // TODO: this really doesn't belong here. Figure out if it's generally needed and possibly move to istio.io/pkg/log. -func logAndPrintf(args *rootArgs, v ...interface{}) { - s := fmt.Sprintf(v[0].(string), v[1:]...) - if !args.logToStdErr { - fmt.Println(s) +func (l *logger) logAndPrint(v ...interface{}) { + if len(v) == 0 { + return + } + s := "" + if fmtStr, ok := v[0].(string); ok { + s = fmt.Sprintf(fmtStr, v[1:]...) + } else { + s = fmt.Sprint(v...) + } + if !l.logToStdErr { + l.print(s) } log.Infof(s) } -func logAndFatalf(args *rootArgs, v ...interface{}) { - logAndPrintf(args, v...) +func (l *logger) logAndFatal(v ...interface{}) { + l.logAndPrint(v...) os.Exit(-1) } + +func (l *logger) print(s string) { + _, _ = l.stdOut.Write([]byte(s)) +} diff --git a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/README.md b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/README.md new file mode 100644 index 000000000000..5b811fd35b21 --- /dev/null +++ b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/README.md @@ -0,0 +1,18 @@ +### proto file patch instruction +Currently there are two proto files defined temporarily in istio/operator: istiocontrolplane_types.proto and values.types.proto, which would be moved to istio/api after 1.3 + +There are some type of fields in the original proto files, e.g. []map[string]interface{}, cannot be handled properly by protoc, +so we comment out this fields and patch them back in the generated pb.go files + +#### patch the generated pb.go files +``patch pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go < pkg/apis/istio/v1alpha2/fixup_go_structs.patch`` + +#### generate new patch file +```` +# Generate the original *.pb.go file and copy to new file named *.pb.go.orig + +# Then Update the pb.go file manually + +# Generate the new patch file + +diff -u pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go.orig pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go > pkg/apis/istio/v1alpha2/fixup_go_structs.patch || true diff --git a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/fixup_go_structs.patch b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/fixup_go_structs.patch index 41f780f9285f..f874d0299e2e 100644 --- a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/fixup_go_structs.patch +++ b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/fixup_go_structs.patch @@ -1,29 +1,17 @@ ---- pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go.orig 2019-07-16 23:54:05.946555219 -0700 -+++ pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go 2019-07-17 00:29:40.578006785 -0700 -@@ -248,9 +248,9 @@ - ConfigManagement *ConfigManagementFeatureSpec `protobuf:"bytes,29,opt,name=config_management,json=configManagement,proto3" json:"config_management,omitempty"` - AutoInjection *AutoInjectionFeatureSpec `protobuf:"bytes,30,opt,name=auto_injection,json=autoInjection,proto3" json:"auto_injection,omitempty"` - Gateways *GatewayFeatureSpec `protobuf:"bytes,31,opt,name=gateways,proto3" json:"gateways,omitempty"` - // Overrides for default global values.yaml. +--- pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go.orig 2019-08-26 22:57:50.731329334 -0700 ++++ pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go 2019-08-26 23:05:09.508609092 -0700 +@@ -123,8 +123,8 @@ + AutoInjection *AutoInjectionFeatureSpec `protobuf:"bytes,30,opt,name=auto_injection,json=autoInjection,proto3" json:"auto_injection,omitempty"` + Gateways *GatewayFeatureSpec `protobuf:"bytes,31,opt,name=gateways,proto3" json:"gateways,omitempty"` + // Overrides for default global values.yaml. - // Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` -+ Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` - // Path or name for the profile e.g. - // minimal (looks in profiles dir for a file called minimal.yaml) - // /tmp/istio/install/values/custom/custom-install.yaml (local file path) - // default profile is used if this field is unset. -@@ -1726,8 +1726,10 @@ - Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` - Debug CommonComponentSpec_LogLevel `protobuf:"varint,3,opt,name=debug,proto3,enum=v1alpha2.CommonComponentSpec_LogLevel" json:"debug,omitempty"` - // Kubernetes resource spec. - K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` -+ Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` -+ UnvalidatedValues map[string]interface{} `protobuf:"bytes,6,opt,name=unvalidatedValues" json:"unvalidatedValues,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` - } -@@ -2439,8 +2441,9 @@ - // Path of the form a.b:c.e.:f +- // UnvalidatedValues map[string]interface{} `protobuf:"bytes,6,opt,name=unvalidatedValues" json:"unvalidatedValues,omitempty"` ++ Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` ++ UnvalidatedValues map[string]interface{} `protobuf:"bytes,6,opt,name=unvalidatedValues" json:"unvalidatedValues,omitempty"` + // Path or name for the profile e.g. + // minimal (looks in profiles dir for a file called minimal.yaml) + // /tmp/istio/install/values/custom/custom-install.yaml (local file path) +@@ -1837,6 +1837,7 @@ // Where b:c is a list element selector of the form key:value and :f is a list selector of the form :value. // All path intermediate nodes must exist. Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` @@ -31,9 +19,7 @@ XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` - } -@@ -2838,8 +2841,9 @@ - +@@ -2188,6 +2189,7 @@ // Mirrors k8s.io.api.core.v1.HTTPGetAction for unmarshaling type HTTPGetAction struct { Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` @@ -41,14 +27,20 @@ Host string `protobuf:"bytes,3,opt,name=host,proto3" json:"host,omitempty"` Scheme string `protobuf:"bytes,4,opt,name=scheme,proto3" json:"scheme,omitempty"` HttpHeaders []*HTTPHeader `protobuf:"bytes,5,rep,name=httpHeaders,proto3" json:"httpHeaders,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` -@@ -2965,8 +2969,9 @@ - } - +@@ -2299,6 +2301,7 @@ + // Mirrors k8s.io.api.core.v1.TCPSocketAction for unmarshaling type TCPSocketAction struct { + Port IntOrStringForPB `protobuf:"bytes,1,opt,name=port,proto3" json:"port,omitempty"` Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` +@@ -2443,6 +2446,8 @@ + + // Mirrors k8s.io.api.apps.v1.RollingUpdateDeployment for unmarshaling. + type RollingUpdateDeployment struct { ++ MaxUnavailable IntOrStringForPB `protobuf:"bytes,1,opt,name=maxUnavailable,proto3" json:"maxUnavailable,omitempty"` ++ MaxSurge IntOrStringForPB `protobuf:"bytes,1,opt,name=maxSurge,proto3" json:"maxSurge,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` diff --git a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go index 10520418a14a..71bd4ba04dd5 100644 --- a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go +++ b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/istiocontrolplane_types.pb.go @@ -1,5 +1,5 @@ -// Code generated by protoc-gen-gogo. DO NOT EDIT. -// source: istiocontrolplane_types.proto +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: pkg/apis/istio/v1alpha2/istiocontrolplane_types.proto package v1alpha2 @@ -7,7 +7,7 @@ import ( fmt "fmt" protobuf "github.com/gogo/protobuf/types" proto "github.com/golang/protobuf/proto" - io "io" + _ "k8s.io/api/apps/v1" v2beta1 "k8s.io/api/autoscaling/v2beta1" v1 "k8s.io/api/core/v1" v11 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -23,128 +23,7 @@ var _ = math.Inf // is compatible with the proto package it is being compiled against. // A compilation error at this line likely means your copy of the // proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package - -// Default behavior of the sidecar for handling outbound traffic from the application. -type PolicyFeatureSpec_OutboundPolicy int32 - -const ( - // Outbound traffic to unknown destinations will be allowed, in case there are no - // services or ServiceEntries for the destination port - PolicyFeatureSpec_ALLOW_ANY PolicyFeatureSpec_OutboundPolicy = 0 - // Restrict outbound traffic to services defined in the service registry as well - // as those defined through ServiceEntries - PolicyFeatureSpec_REGISTRY_ONLY PolicyFeatureSpec_OutboundPolicy = 1 -) - -var PolicyFeatureSpec_OutboundPolicy_name = map[int32]string{ - 0: "ALLOW_ANY", - 1: "REGISTRY_ONLY", -} - -var PolicyFeatureSpec_OutboundPolicy_value = map[string]int32{ - "ALLOW_ANY": 0, - "REGISTRY_ONLY": 1, -} - -func (x PolicyFeatureSpec_OutboundPolicy) String() string { - return proto.EnumName(PolicyFeatureSpec_OutboundPolicy_name, int32(x)) -} - -func (PolicyFeatureSpec_OutboundPolicy) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{3, 0} -} - -// LogLevel sets the component log level. Mappings to underlying log levels are not necessarily 1:1 and depend on -// component support of these levels e.g. DEBUG or INFO may result in the same log verbosity. -type CommonComponentSpec_LogLevel int32 - -const ( - CommonComponentSpec_NONE CommonComponentSpec_LogLevel = 0 - CommonComponentSpec_ERROR CommonComponentSpec_LogLevel = 1 - CommonComponentSpec_WARN CommonComponentSpec_LogLevel = 2 - CommonComponentSpec_DEBUG CommonComponentSpec_LogLevel = 3 - CommonComponentSpec_INFO CommonComponentSpec_LogLevel = 4 -) - -var CommonComponentSpec_LogLevel_name = map[int32]string{ - 0: "NONE", - 1: "ERROR", - 2: "WARN", - 3: "DEBUG", - 4: "INFO", -} - -var CommonComponentSpec_LogLevel_value = map[string]int32{ - "NONE": 0, - "ERROR": 1, - "WARN": 2, - "DEBUG": 3, - "INFO": 4, -} - -func (x CommonComponentSpec_LogLevel) String() string { - return proto.EnumName(CommonComponentSpec_LogLevel_name, int32(x)) -} - -func (CommonComponentSpec_LogLevel) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{18, 0} -} - -type IngressGatewayComponentSpec_IngressType int32 - -const ( - IngressGatewayComponentSpec_ISTIO IngressGatewayComponentSpec_IngressType = 0 - IngressGatewayComponentSpec_KUBERNETES IngressGatewayComponentSpec_IngressType = 1 -) - -var IngressGatewayComponentSpec_IngressType_name = map[int32]string{ - 0: "ISTIO", - 1: "KUBERNETES", -} - -var IngressGatewayComponentSpec_IngressType_value = map[string]int32{ - "ISTIO": 0, - "KUBERNETES": 1, -} - -func (x IngressGatewayComponentSpec_IngressType) String() string { - return proto.EnumName(IngressGatewayComponentSpec_IngressType_name, int32(x)) -} - -func (IngressGatewayComponentSpec_IngressType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{20, 0} -} - -// External traffic policy. -type IngressGatewayComponentSpec_ExternalTrafficPolicy int32 - -const ( - IngressGatewayComponentSpec_NONE IngressGatewayComponentSpec_ExternalTrafficPolicy = 0 - // Preserves source IP. - IngressGatewayComponentSpec_LOCAL IngressGatewayComponentSpec_ExternalTrafficPolicy = 1 - IngressGatewayComponentSpec_CLUSTER IngressGatewayComponentSpec_ExternalTrafficPolicy = 2 -) - -var IngressGatewayComponentSpec_ExternalTrafficPolicy_name = map[int32]string{ - 0: "NONE", - 1: "LOCAL", - 2: "CLUSTER", -} - -var IngressGatewayComponentSpec_ExternalTrafficPolicy_value = map[string]int32{ - "NONE": 0, - "LOCAL": 1, - "CLUSTER": 2, -} - -func (x IngressGatewayComponentSpec_ExternalTrafficPolicy) String() string { - return proto.EnumName(IngressGatewayComponentSpec_ExternalTrafficPolicy_name, int32(x)) -} - -func (IngressGatewayComponentSpec_ExternalTrafficPolicy) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{20, 1} -} +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package type InstallStatus_Status int32 @@ -174,7 +53,7 @@ func (x InstallStatus_Status) String() string { } func (InstallStatus_Status) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{25, 0} + return fileDescriptor_daac92937abd81a4, []int{22, 0} } // IstioControlPlane is a CustomResourceDefinition (CRD) describing an Istio control plane. @@ -192,28 +71,20 @@ func (m *IstioControlPlane) Reset() { *m = IstioControlPlane{} } func (m *IstioControlPlane) String() string { return proto.CompactTextString(m) } func (*IstioControlPlane) ProtoMessage() {} func (*IstioControlPlane) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{0} + return fileDescriptor_daac92937abd81a4, []int{0} } + func (m *IstioControlPlane) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_IstioControlPlane.Unmarshal(m, b) } func (m *IstioControlPlane) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_IstioControlPlane.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_IstioControlPlane.Marshal(b, m, deterministic) } func (m *IstioControlPlane) XXX_Merge(src proto.Message) { xxx_messageInfo_IstioControlPlane.Merge(m, src) } func (m *IstioControlPlane) XXX_Size() int { - return m.Size() + return xxx_messageInfo_IstioControlPlane.Size(m) } func (m *IstioControlPlane) XXX_DiscardUnknown() { xxx_messageInfo_IstioControlPlane.DiscardUnknown(m) @@ -252,21 +123,16 @@ type IstioControlPlaneSpec struct { AutoInjection *AutoInjectionFeatureSpec `protobuf:"bytes,30,opt,name=auto_injection,json=autoInjection,proto3" json:"auto_injection,omitempty"` Gateways *GatewayFeatureSpec `protobuf:"bytes,31,opt,name=gateways,proto3" json:"gateways,omitempty"` // Overrides for default global values.yaml. - Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` + Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` + UnvalidatedValues map[string]interface{} `protobuf:"bytes,6,opt,name=unvalidatedValues" json:"unvalidatedValues,omitempty"` // Path or name for the profile e.g. // minimal (looks in profiles dir for a file called minimal.yaml) // /tmp/istio/install/values/custom/custom-install.yaml (local file path) // default profile is used if this field is unset. Profile string `protobuf:"bytes,100,opt,name=profile,proto3" json:"profile,omitempty"` // Path for the install package. e.g. - // https://github.com/istio/istio/releases/tags/1.3.2 - // https://github.com/istio/istio/releases/tags/1.3-latest // /tmp/istio-installer/nightly (local file path) InstallPackagePath string `protobuf:"bytes,102,opt,name=install_package_path,json=installPackagePath,proto3" json:"install_package_path,omitempty"` - // An alias for installPackagePath: https://github.com/istio/istio/releases/tags/ - // e.g. version: 1.3.2 points to https://github.com/istio/istio/releases/tags/1.3.2 - // installPackagePath and version cannot both be set. - Version string `protobuf:"bytes,103,opt,name=version,proto3" json:"version,omitempty"` // Root for docker image paths e.g. docker.io/istio-release. // Releases are published to docker hub under 'istio' project. // Daily builds from prow are on gcr.io, and nightly builds from circle on docker.io/istionightly @@ -282,28 +148,20 @@ func (m *IstioControlPlaneSpec) Reset() { *m = IstioControlPlaneSpec{} } func (m *IstioControlPlaneSpec) String() string { return proto.CompactTextString(m) } func (*IstioControlPlaneSpec) ProtoMessage() {} func (*IstioControlPlaneSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{1} + return fileDescriptor_daac92937abd81a4, []int{1} } + func (m *IstioControlPlaneSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_IstioControlPlaneSpec.Unmarshal(m, b) } func (m *IstioControlPlaneSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_IstioControlPlaneSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_IstioControlPlaneSpec.Marshal(b, m, deterministic) } func (m *IstioControlPlaneSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_IstioControlPlaneSpec.Merge(m, src) } func (m *IstioControlPlaneSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_IstioControlPlaneSpec.Size(m) } func (m *IstioControlPlaneSpec) XXX_DiscardUnknown() { xxx_messageInfo_IstioControlPlaneSpec.DiscardUnknown(m) @@ -381,13 +239,6 @@ func (m *IstioControlPlaneSpec) GetInstallPackagePath() string { return "" } -func (m *IstioControlPlaneSpec) GetVersion() string { - if m != nil { - return m.Version - } - return "" -} - func (m *IstioControlPlaneSpec) GetHub() string { if m != nil { return m.Hub @@ -417,28 +268,20 @@ func (m *TrafficManagementFeatureSpec) Reset() { *m = TrafficManagementF func (m *TrafficManagementFeatureSpec) String() string { return proto.CompactTextString(m) } func (*TrafficManagementFeatureSpec) ProtoMessage() {} func (*TrafficManagementFeatureSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{2} + return fileDescriptor_daac92937abd81a4, []int{2} } + func (m *TrafficManagementFeatureSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_TrafficManagementFeatureSpec.Unmarshal(m, b) } func (m *TrafficManagementFeatureSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_TrafficManagementFeatureSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_TrafficManagementFeatureSpec.Marshal(b, m, deterministic) } func (m *TrafficManagementFeatureSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_TrafficManagementFeatureSpec.Merge(m, src) } func (m *TrafficManagementFeatureSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_TrafficManagementFeatureSpec.Size(m) } func (m *TrafficManagementFeatureSpec) XXX_DiscardUnknown() { xxx_messageInfo_TrafficManagementFeatureSpec.DiscardUnknown(m) @@ -477,28 +320,20 @@ func (m *TrafficManagementFeatureSpec_Components) Reset() { func (m *TrafficManagementFeatureSpec_Components) String() string { return proto.CompactTextString(m) } func (*TrafficManagementFeatureSpec_Components) ProtoMessage() {} func (*TrafficManagementFeatureSpec_Components) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{2, 0} + return fileDescriptor_daac92937abd81a4, []int{2, 0} } + func (m *TrafficManagementFeatureSpec_Components) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_TrafficManagementFeatureSpec_Components.Unmarshal(m, b) } func (m *TrafficManagementFeatureSpec_Components) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_TrafficManagementFeatureSpec_Components.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_TrafficManagementFeatureSpec_Components.Marshal(b, m, deterministic) } func (m *TrafficManagementFeatureSpec_Components) XXX_Merge(src proto.Message) { xxx_messageInfo_TrafficManagementFeatureSpec_Components.Merge(m, src) } func (m *TrafficManagementFeatureSpec_Components) XXX_Size() int { - return m.Size() + return xxx_messageInfo_TrafficManagementFeatureSpec_Components.Size(m) } func (m *TrafficManagementFeatureSpec_Components) XXX_DiscardUnknown() { xxx_messageInfo_TrafficManagementFeatureSpec_Components.DiscardUnknown(m) @@ -531,43 +366,31 @@ func (m *TrafficManagementFeatureSpec_Components) GetProxy() *ProxyComponentSpec type PolicyFeatureSpec struct { // Selects whether policy is installed. // Must be enabled to enable any sub-component. - Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` - // If set, allows traffic in cases when the mixer policy service cannot be reached. - PolicyCheckFailOpen *protobuf.BoolValue `protobuf:"bytes,10,opt,name=policy_check_fail_open,json=policyCheckFailOpen,proto3" json:"policy_check_fail_open,omitempty"` - // Selects the outbound traffic policy mode. - OutboundTrafficPolicyMode PolicyFeatureSpec_OutboundPolicy `protobuf:"varint,11,opt,name=outbound_traffic_policy_mode,json=outboundTrafficPolicyMode,proto3,enum=v1alpha2.PolicyFeatureSpec_OutboundPolicy" json:"outbound_traffic_policy_mode,omitempty"` - Components *PolicyFeatureSpec_Components `protobuf:"bytes,50,opt,name=components,proto3" json:"components,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Components *PolicyFeatureSpec_Components `protobuf:"bytes,50,opt,name=components,proto3" json:"components,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *PolicyFeatureSpec) Reset() { *m = PolicyFeatureSpec{} } func (m *PolicyFeatureSpec) String() string { return proto.CompactTextString(m) } func (*PolicyFeatureSpec) ProtoMessage() {} func (*PolicyFeatureSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{3} + return fileDescriptor_daac92937abd81a4, []int{3} } + func (m *PolicyFeatureSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_PolicyFeatureSpec.Unmarshal(m, b) } func (m *PolicyFeatureSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_PolicyFeatureSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_PolicyFeatureSpec.Marshal(b, m, deterministic) } func (m *PolicyFeatureSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_PolicyFeatureSpec.Merge(m, src) } func (m *PolicyFeatureSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_PolicyFeatureSpec.Size(m) } func (m *PolicyFeatureSpec) XXX_DiscardUnknown() { xxx_messageInfo_PolicyFeatureSpec.DiscardUnknown(m) @@ -582,20 +405,6 @@ func (m *PolicyFeatureSpec) GetEnabled() *protobuf.BoolValue { return nil } -func (m *PolicyFeatureSpec) GetPolicyCheckFailOpen() *protobuf.BoolValue { - if m != nil { - return m.PolicyCheckFailOpen - } - return nil -} - -func (m *PolicyFeatureSpec) GetOutboundTrafficPolicyMode() PolicyFeatureSpec_OutboundPolicy { - if m != nil { - return m.OutboundTrafficPolicyMode - } - return PolicyFeatureSpec_ALLOW_ANY -} - func (m *PolicyFeatureSpec) GetComponents() *PolicyFeatureSpec_Components { if m != nil { return m.Components @@ -617,28 +426,20 @@ func (m *PolicyFeatureSpec_Components) Reset() { *m = PolicyFeatureSpec_ func (m *PolicyFeatureSpec_Components) String() string { return proto.CompactTextString(m) } func (*PolicyFeatureSpec_Components) ProtoMessage() {} func (*PolicyFeatureSpec_Components) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{3, 0} + return fileDescriptor_daac92937abd81a4, []int{3, 0} } + func (m *PolicyFeatureSpec_Components) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_PolicyFeatureSpec_Components.Unmarshal(m, b) } func (m *PolicyFeatureSpec_Components) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_PolicyFeatureSpec_Components.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_PolicyFeatureSpec_Components.Marshal(b, m, deterministic) } func (m *PolicyFeatureSpec_Components) XXX_Merge(src proto.Message) { xxx_messageInfo_PolicyFeatureSpec_Components.Merge(m, src) } func (m *PolicyFeatureSpec_Components) XXX_Size() int { - return m.Size() + return xxx_messageInfo_PolicyFeatureSpec_Components.Size(m) } func (m *PolicyFeatureSpec_Components) XXX_DiscardUnknown() { xxx_messageInfo_PolicyFeatureSpec_Components.DiscardUnknown(m) @@ -675,28 +476,20 @@ func (m *TelemetryFeatureSpec) Reset() { *m = TelemetryFeatureSpec{} } func (m *TelemetryFeatureSpec) String() string { return proto.CompactTextString(m) } func (*TelemetryFeatureSpec) ProtoMessage() {} func (*TelemetryFeatureSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{4} + return fileDescriptor_daac92937abd81a4, []int{4} } + func (m *TelemetryFeatureSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_TelemetryFeatureSpec.Unmarshal(m, b) } func (m *TelemetryFeatureSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_TelemetryFeatureSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_TelemetryFeatureSpec.Marshal(b, m, deterministic) } func (m *TelemetryFeatureSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_TelemetryFeatureSpec.Merge(m, src) } func (m *TelemetryFeatureSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_TelemetryFeatureSpec.Size(m) } func (m *TelemetryFeatureSpec) XXX_DiscardUnknown() { xxx_messageInfo_TelemetryFeatureSpec.DiscardUnknown(m) @@ -732,28 +525,20 @@ func (m *TelemetryFeatureSpec_Components) Reset() { *m = TelemetryFeatur func (m *TelemetryFeatureSpec_Components) String() string { return proto.CompactTextString(m) } func (*TelemetryFeatureSpec_Components) ProtoMessage() {} func (*TelemetryFeatureSpec_Components) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{4, 0} + return fileDescriptor_daac92937abd81a4, []int{4, 0} } + func (m *TelemetryFeatureSpec_Components) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_TelemetryFeatureSpec_Components.Unmarshal(m, b) } func (m *TelemetryFeatureSpec_Components) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_TelemetryFeatureSpec_Components.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_TelemetryFeatureSpec_Components.Marshal(b, m, deterministic) } func (m *TelemetryFeatureSpec_Components) XXX_Merge(src proto.Message) { xxx_messageInfo_TelemetryFeatureSpec_Components.Merge(m, src) } func (m *TelemetryFeatureSpec_Components) XXX_Size() int { - return m.Size() + return xxx_messageInfo_TelemetryFeatureSpec_Components.Size(m) } func (m *TelemetryFeatureSpec_Components) XXX_DiscardUnknown() { xxx_messageInfo_TelemetryFeatureSpec_Components.DiscardUnknown(m) @@ -778,12 +563,7 @@ func (m *TelemetryFeatureSpec_Components) GetTelemetry() *TelemetryComponentSpec // Configuration options for security feature. type SecurityFeatureSpec struct { // Selects whether security feature is installed. Must be set for any sub-component to be installed. - Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` - // Enables MTLS for control plane. - // Will result in delays starting the pods while secrets are propagated, not recommended for tests. - ControlPlaneMtls *protobuf.BoolValue `protobuf:"bytes,13,opt,name=control_plane_mtls,json=controlPlaneMtls,proto3" json:"control_plane_mtls,omitempty"` - // Enables strict MTLS for service to service traffic, or permissive mode MTLS if unset. - DataPlaneMtlsStrict *protobuf.BoolValue `protobuf:"bytes,14,opt,name=data_plane_mtls_strict,json=dataPlaneMtlsStrict,proto3" json:"data_plane_mtls_strict,omitempty"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` Components *SecurityFeatureSpec_Components `protobuf:"bytes,50,opt,name=components,proto3" json:"components,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -794,28 +574,20 @@ func (m *SecurityFeatureSpec) Reset() { *m = SecurityFeatureSpec{} } func (m *SecurityFeatureSpec) String() string { return proto.CompactTextString(m) } func (*SecurityFeatureSpec) ProtoMessage() {} func (*SecurityFeatureSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{5} + return fileDescriptor_daac92937abd81a4, []int{5} } + func (m *SecurityFeatureSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_SecurityFeatureSpec.Unmarshal(m, b) } func (m *SecurityFeatureSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_SecurityFeatureSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_SecurityFeatureSpec.Marshal(b, m, deterministic) } func (m *SecurityFeatureSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_SecurityFeatureSpec.Merge(m, src) } func (m *SecurityFeatureSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_SecurityFeatureSpec.Size(m) } func (m *SecurityFeatureSpec) XXX_DiscardUnknown() { xxx_messageInfo_SecurityFeatureSpec.DiscardUnknown(m) @@ -830,20 +602,6 @@ func (m *SecurityFeatureSpec) GetEnabled() *protobuf.BoolValue { return nil } -func (m *SecurityFeatureSpec) GetControlPlaneMtls() *protobuf.BoolValue { - if m != nil { - return m.ControlPlaneMtls - } - return nil -} - -func (m *SecurityFeatureSpec) GetDataPlaneMtlsStrict() *protobuf.BoolValue { - if m != nil { - return m.DataPlaneMtlsStrict - } - return nil -} - func (m *SecurityFeatureSpec) GetComponents() *SecurityFeatureSpec_Components { if m != nil { return m.Components @@ -866,28 +624,20 @@ func (m *SecurityFeatureSpec_Components) Reset() { *m = SecurityFeatureS func (m *SecurityFeatureSpec_Components) String() string { return proto.CompactTextString(m) } func (*SecurityFeatureSpec_Components) ProtoMessage() {} func (*SecurityFeatureSpec_Components) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{5, 0} + return fileDescriptor_daac92937abd81a4, []int{5, 0} } + func (m *SecurityFeatureSpec_Components) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_SecurityFeatureSpec_Components.Unmarshal(m, b) } func (m *SecurityFeatureSpec_Components) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_SecurityFeatureSpec_Components.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_SecurityFeatureSpec_Components.Marshal(b, m, deterministic) } func (m *SecurityFeatureSpec_Components) XXX_Merge(src proto.Message) { xxx_messageInfo_SecurityFeatureSpec_Components.Merge(m, src) } func (m *SecurityFeatureSpec_Components) XXX_Size() int { - return m.Size() + return xxx_messageInfo_SecurityFeatureSpec_Components.Size(m) } func (m *SecurityFeatureSpec_Components) XXX_DiscardUnknown() { xxx_messageInfo_SecurityFeatureSpec_Components.DiscardUnknown(m) @@ -937,28 +687,20 @@ func (m *ConfigManagementFeatureSpec) Reset() { *m = ConfigManagementFea func (m *ConfigManagementFeatureSpec) String() string { return proto.CompactTextString(m) } func (*ConfigManagementFeatureSpec) ProtoMessage() {} func (*ConfigManagementFeatureSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{6} + return fileDescriptor_daac92937abd81a4, []int{6} } + func (m *ConfigManagementFeatureSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_ConfigManagementFeatureSpec.Unmarshal(m, b) } func (m *ConfigManagementFeatureSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ConfigManagementFeatureSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_ConfigManagementFeatureSpec.Marshal(b, m, deterministic) } func (m *ConfigManagementFeatureSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_ConfigManagementFeatureSpec.Merge(m, src) } func (m *ConfigManagementFeatureSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_ConfigManagementFeatureSpec.Size(m) } func (m *ConfigManagementFeatureSpec) XXX_DiscardUnknown() { xxx_messageInfo_ConfigManagementFeatureSpec.DiscardUnknown(m) @@ -995,28 +737,20 @@ func (m *ConfigManagementFeatureSpec_Components) Reset() { func (m *ConfigManagementFeatureSpec_Components) String() string { return proto.CompactTextString(m) } func (*ConfigManagementFeatureSpec_Components) ProtoMessage() {} func (*ConfigManagementFeatureSpec_Components) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{6, 0} + return fileDescriptor_daac92937abd81a4, []int{6, 0} } + func (m *ConfigManagementFeatureSpec_Components) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_ConfigManagementFeatureSpec_Components.Unmarshal(m, b) } func (m *ConfigManagementFeatureSpec_Components) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ConfigManagementFeatureSpec_Components.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_ConfigManagementFeatureSpec_Components.Marshal(b, m, deterministic) } func (m *ConfigManagementFeatureSpec_Components) XXX_Merge(src proto.Message) { xxx_messageInfo_ConfigManagementFeatureSpec_Components.Merge(m, src) } func (m *ConfigManagementFeatureSpec_Components) XXX_Size() int { - return m.Size() + return xxx_messageInfo_ConfigManagementFeatureSpec_Components.Size(m) } func (m *ConfigManagementFeatureSpec_Components) XXX_DiscardUnknown() { xxx_messageInfo_ConfigManagementFeatureSpec_Components.DiscardUnknown(m) @@ -1052,28 +786,20 @@ func (m *AutoInjectionFeatureSpec) Reset() { *m = AutoInjectionFeatureSp func (m *AutoInjectionFeatureSpec) String() string { return proto.CompactTextString(m) } func (*AutoInjectionFeatureSpec) ProtoMessage() {} func (*AutoInjectionFeatureSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{7} + return fileDescriptor_daac92937abd81a4, []int{7} } + func (m *AutoInjectionFeatureSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_AutoInjectionFeatureSpec.Unmarshal(m, b) } func (m *AutoInjectionFeatureSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_AutoInjectionFeatureSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_AutoInjectionFeatureSpec.Marshal(b, m, deterministic) } func (m *AutoInjectionFeatureSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_AutoInjectionFeatureSpec.Merge(m, src) } func (m *AutoInjectionFeatureSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_AutoInjectionFeatureSpec.Size(m) } func (m *AutoInjectionFeatureSpec) XXX_DiscardUnknown() { xxx_messageInfo_AutoInjectionFeatureSpec.DiscardUnknown(m) @@ -1108,28 +834,20 @@ func (m *AutoInjectionFeatureSpec_Components) Reset() { *m = AutoInjecti func (m *AutoInjectionFeatureSpec_Components) String() string { return proto.CompactTextString(m) } func (*AutoInjectionFeatureSpec_Components) ProtoMessage() {} func (*AutoInjectionFeatureSpec_Components) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{7, 0} + return fileDescriptor_daac92937abd81a4, []int{7, 0} } + func (m *AutoInjectionFeatureSpec_Components) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_AutoInjectionFeatureSpec_Components.Unmarshal(m, b) } func (m *AutoInjectionFeatureSpec_Components) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_AutoInjectionFeatureSpec_Components.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_AutoInjectionFeatureSpec_Components.Marshal(b, m, deterministic) } func (m *AutoInjectionFeatureSpec_Components) XXX_Merge(src proto.Message) { xxx_messageInfo_AutoInjectionFeatureSpec_Components.Merge(m, src) } func (m *AutoInjectionFeatureSpec_Components) XXX_Size() int { - return m.Size() + return xxx_messageInfo_AutoInjectionFeatureSpec_Components.Size(m) } func (m *AutoInjectionFeatureSpec_Components) XXX_DiscardUnknown() { xxx_messageInfo_AutoInjectionFeatureSpec_Components.DiscardUnknown(m) @@ -1165,28 +883,20 @@ func (m *GatewayFeatureSpec) Reset() { *m = GatewayFeatureSpec{} } func (m *GatewayFeatureSpec) String() string { return proto.CompactTextString(m) } func (*GatewayFeatureSpec) ProtoMessage() {} func (*GatewayFeatureSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{8} + return fileDescriptor_daac92937abd81a4, []int{8} } + func (m *GatewayFeatureSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_GatewayFeatureSpec.Unmarshal(m, b) } func (m *GatewayFeatureSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_GatewayFeatureSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_GatewayFeatureSpec.Marshal(b, m, deterministic) } func (m *GatewayFeatureSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_GatewayFeatureSpec.Merge(m, src) } func (m *GatewayFeatureSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_GatewayFeatureSpec.Size(m) } func (m *GatewayFeatureSpec) XXX_DiscardUnknown() { xxx_messageInfo_GatewayFeatureSpec.DiscardUnknown(m) @@ -1223,28 +933,20 @@ func (m *GatewayFeatureSpec_Components) Reset() { *m = GatewayFeatureSpe func (m *GatewayFeatureSpec_Components) String() string { return proto.CompactTextString(m) } func (*GatewayFeatureSpec_Components) ProtoMessage() {} func (*GatewayFeatureSpec_Components) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{8, 0} + return fileDescriptor_daac92937abd81a4, []int{8, 0} } + func (m *GatewayFeatureSpec_Components) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_GatewayFeatureSpec_Components.Unmarshal(m, b) } func (m *GatewayFeatureSpec_Components) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_GatewayFeatureSpec_Components.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_GatewayFeatureSpec_Components.Marshal(b, m, deterministic) } func (m *GatewayFeatureSpec_Components) XXX_Merge(src proto.Message) { xxx_messageInfo_GatewayFeatureSpec_Components.Merge(m, src) } func (m *GatewayFeatureSpec_Components) XXX_Size() int { - return m.Size() + return xxx_messageInfo_GatewayFeatureSpec_Components.Size(m) } func (m *GatewayFeatureSpec_Components) XXX_DiscardUnknown() { xxx_messageInfo_GatewayFeatureSpec_Components.DiscardUnknown(m) @@ -1275,40 +977,32 @@ func (m *GatewayFeatureSpec_Components) GetEgressGateway() *EgressGatewayCompone // Configuration options for the pilot component. type PilotComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - // Enables sidecar in the pilot pod. - Sidecar *protobuf.BoolValue `protobuf:"bytes,10,opt,name=sidecar,proto3" json:"sidecar,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *PilotComponentSpec) Reset() { *m = PilotComponentSpec{} } func (m *PilotComponentSpec) String() string { return proto.CompactTextString(m) } func (*PilotComponentSpec) ProtoMessage() {} func (*PilotComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{9} + return fileDescriptor_daac92937abd81a4, []int{9} } + func (m *PilotComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_PilotComponentSpec.Unmarshal(m, b) } func (m *PilotComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_PilotComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_PilotComponentSpec.Marshal(b, m, deterministic) } func (m *PilotComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_PilotComponentSpec.Merge(m, src) } func (m *PilotComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_PilotComponentSpec.Size(m) } func (m *PilotComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_PilotComponentSpec.DiscardUnknown(m) @@ -1316,54 +1010,55 @@ func (m *PilotComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_PilotComponentSpec proto.InternalMessageInfo -func (m *PilotComponentSpec) GetCommon() *CommonComponentSpec { +func (m *PilotComponentSpec) GetEnabled() *protobuf.BoolValue { if m != nil { - return m.Common + return m.Enabled } return nil } -func (m *PilotComponentSpec) GetSidecar() *protobuf.BoolValue { +func (m *PilotComponentSpec) GetNamespace() string { if m != nil { - return m.Sidecar + return m.Namespace + } + return "" +} + +func (m *PilotComponentSpec) GetK8S() *KubernetesResourcesSpec { + if m != nil { + return m.K8S } return nil } // Configuration options for the proxy. type ProxyComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *ProxyComponentSpec) Reset() { *m = ProxyComponentSpec{} } func (m *ProxyComponentSpec) String() string { return proto.CompactTextString(m) } func (*ProxyComponentSpec) ProtoMessage() {} func (*ProxyComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{10} + return fileDescriptor_daac92937abd81a4, []int{10} } + func (m *ProxyComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_ProxyComponentSpec.Unmarshal(m, b) } func (m *ProxyComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ProxyComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_ProxyComponentSpec.Marshal(b, m, deterministic) } func (m *ProxyComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_ProxyComponentSpec.Merge(m, src) } func (m *ProxyComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_ProxyComponentSpec.Size(m) } func (m *ProxyComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_ProxyComponentSpec.DiscardUnknown(m) @@ -1371,47 +1066,55 @@ func (m *ProxyComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_ProxyComponentSpec proto.InternalMessageInfo -func (m *ProxyComponentSpec) GetCommon() *CommonComponentSpec { +func (m *ProxyComponentSpec) GetEnabled() *protobuf.BoolValue { + if m != nil { + return m.Enabled + } + return nil +} + +func (m *ProxyComponentSpec) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *ProxyComponentSpec) GetK8S() *KubernetesResourcesSpec { if m != nil { - return m.Common + return m.K8S } return nil } // Configuration options for the sidecar injector component. type SidecarInjectorComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *SidecarInjectorComponentSpec) Reset() { *m = SidecarInjectorComponentSpec{} } func (m *SidecarInjectorComponentSpec) String() string { return proto.CompactTextString(m) } func (*SidecarInjectorComponentSpec) ProtoMessage() {} func (*SidecarInjectorComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{11} + return fileDescriptor_daac92937abd81a4, []int{11} } + func (m *SidecarInjectorComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_SidecarInjectorComponentSpec.Unmarshal(m, b) } func (m *SidecarInjectorComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_SidecarInjectorComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_SidecarInjectorComponentSpec.Marshal(b, m, deterministic) } func (m *SidecarInjectorComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_SidecarInjectorComponentSpec.Merge(m, src) } func (m *SidecarInjectorComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_SidecarInjectorComponentSpec.Size(m) } func (m *SidecarInjectorComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_SidecarInjectorComponentSpec.DiscardUnknown(m) @@ -1419,47 +1122,55 @@ func (m *SidecarInjectorComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_SidecarInjectorComponentSpec proto.InternalMessageInfo -func (m *SidecarInjectorComponentSpec) GetCommon() *CommonComponentSpec { +func (m *SidecarInjectorComponentSpec) GetEnabled() *protobuf.BoolValue { + if m != nil { + return m.Enabled + } + return nil +} + +func (m *SidecarInjectorComponentSpec) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *SidecarInjectorComponentSpec) GetK8S() *KubernetesResourcesSpec { if m != nil { - return m.Common + return m.K8S } return nil } // Configuration options for the policy enforcement component. type PolicyComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *PolicyComponentSpec) Reset() { *m = PolicyComponentSpec{} } func (m *PolicyComponentSpec) String() string { return proto.CompactTextString(m) } func (*PolicyComponentSpec) ProtoMessage() {} func (*PolicyComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{12} + return fileDescriptor_daac92937abd81a4, []int{12} } + func (m *PolicyComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_PolicyComponentSpec.Unmarshal(m, b) } func (m *PolicyComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_PolicyComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_PolicyComponentSpec.Marshal(b, m, deterministic) } func (m *PolicyComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_PolicyComponentSpec.Merge(m, src) } func (m *PolicyComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_PolicyComponentSpec.Size(m) } func (m *PolicyComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_PolicyComponentSpec.DiscardUnknown(m) @@ -1467,47 +1178,55 @@ func (m *PolicyComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_PolicyComponentSpec proto.InternalMessageInfo -func (m *PolicyComponentSpec) GetCommon() *CommonComponentSpec { +func (m *PolicyComponentSpec) GetEnabled() *protobuf.BoolValue { + if m != nil { + return m.Enabled + } + return nil +} + +func (m *PolicyComponentSpec) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *PolicyComponentSpec) GetK8S() *KubernetesResourcesSpec { if m != nil { - return m.Common + return m.K8S } return nil } // Configuration options for the telemetry component. type TelemetryComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *TelemetryComponentSpec) Reset() { *m = TelemetryComponentSpec{} } func (m *TelemetryComponentSpec) String() string { return proto.CompactTextString(m) } func (*TelemetryComponentSpec) ProtoMessage() {} func (*TelemetryComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{13} + return fileDescriptor_daac92937abd81a4, []int{13} } + func (m *TelemetryComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_TelemetryComponentSpec.Unmarshal(m, b) } func (m *TelemetryComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_TelemetryComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_TelemetryComponentSpec.Marshal(b, m, deterministic) } func (m *TelemetryComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_TelemetryComponentSpec.Merge(m, src) } func (m *TelemetryComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_TelemetryComponentSpec.Size(m) } func (m *TelemetryComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_TelemetryComponentSpec.DiscardUnknown(m) @@ -1515,49 +1234,55 @@ func (m *TelemetryComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_TelemetryComponentSpec proto.InternalMessageInfo -func (m *TelemetryComponentSpec) GetCommon() *CommonComponentSpec { +func (m *TelemetryComponentSpec) GetEnabled() *protobuf.BoolValue { + if m != nil { + return m.Enabled + } + return nil +} + +func (m *TelemetryComponentSpec) GetNamespace() string { if m != nil { - return m.Common + return m.Namespace + } + return "" +} + +func (m *TelemetryComponentSpec) GetK8S() *KubernetesResourcesSpec { + if m != nil { + return m.K8S } return nil } // Configuration options for Citadel component. type CitadelComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - SelfSigned bool `protobuf:"varint,11,opt,name=self_signed,json=selfSigned,proto3" json:"self_signed,omitempty"` - CreateMeshPolicy bool `protobuf:"varint,12,opt,name=create_mesh_policy,json=createMeshPolicy,proto3" json:"create_mesh_policy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *CitadelComponentSpec) Reset() { *m = CitadelComponentSpec{} } func (m *CitadelComponentSpec) String() string { return proto.CompactTextString(m) } func (*CitadelComponentSpec) ProtoMessage() {} func (*CitadelComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{14} + return fileDescriptor_daac92937abd81a4, []int{14} } + func (m *CitadelComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_CitadelComponentSpec.Unmarshal(m, b) } func (m *CitadelComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_CitadelComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_CitadelComponentSpec.Marshal(b, m, deterministic) } func (m *CitadelComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_CitadelComponentSpec.Merge(m, src) } func (m *CitadelComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_CitadelComponentSpec.Size(m) } func (m *CitadelComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_CitadelComponentSpec.DiscardUnknown(m) @@ -1565,61 +1290,55 @@ func (m *CitadelComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_CitadelComponentSpec proto.InternalMessageInfo -func (m *CitadelComponentSpec) GetCommon() *CommonComponentSpec { +func (m *CitadelComponentSpec) GetEnabled() *protobuf.BoolValue { if m != nil { - return m.Common + return m.Enabled } return nil } -func (m *CitadelComponentSpec) GetSelfSigned() bool { +func (m *CitadelComponentSpec) GetNamespace() string { if m != nil { - return m.SelfSigned + return m.Namespace } - return false + return "" } -func (m *CitadelComponentSpec) GetCreateMeshPolicy() bool { +func (m *CitadelComponentSpec) GetK8S() *KubernetesResourcesSpec { if m != nil { - return m.CreateMeshPolicy + return m.K8S } - return false + return nil } // Configuration options for certificate manager component. type CertManagerComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *CertManagerComponentSpec) Reset() { *m = CertManagerComponentSpec{} } func (m *CertManagerComponentSpec) String() string { return proto.CompactTextString(m) } func (*CertManagerComponentSpec) ProtoMessage() {} func (*CertManagerComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{15} + return fileDescriptor_daac92937abd81a4, []int{15} } + func (m *CertManagerComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_CertManagerComponentSpec.Unmarshal(m, b) } func (m *CertManagerComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_CertManagerComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_CertManagerComponentSpec.Marshal(b, m, deterministic) } func (m *CertManagerComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_CertManagerComponentSpec.Merge(m, src) } func (m *CertManagerComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_CertManagerComponentSpec.Size(m) } func (m *CertManagerComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_CertManagerComponentSpec.DiscardUnknown(m) @@ -1627,47 +1346,55 @@ func (m *CertManagerComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_CertManagerComponentSpec proto.InternalMessageInfo -func (m *CertManagerComponentSpec) GetCommon() *CommonComponentSpec { +func (m *CertManagerComponentSpec) GetEnabled() *protobuf.BoolValue { if m != nil { - return m.Common + return m.Enabled } return nil } -// Configuration options for node agent component. -type NodeAgentComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (m *CertManagerComponentSpec) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" } -func (m *NodeAgentComponentSpec) Reset() { *m = NodeAgentComponentSpec{} } -func (m *NodeAgentComponentSpec) String() string { return proto.CompactTextString(m) } -func (*NodeAgentComponentSpec) ProtoMessage() {} -func (*NodeAgentComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{16} +func (m *CertManagerComponentSpec) GetK8S() *KubernetesResourcesSpec { + if m != nil { + return m.K8S + } + return nil } + +// Configuration options for node agent component. +type NodeAgentComponentSpec struct { + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *NodeAgentComponentSpec) Reset() { *m = NodeAgentComponentSpec{} } +func (m *NodeAgentComponentSpec) String() string { return proto.CompactTextString(m) } +func (*NodeAgentComponentSpec) ProtoMessage() {} +func (*NodeAgentComponentSpec) Descriptor() ([]byte, []int) { + return fileDescriptor_daac92937abd81a4, []int{16} +} + func (m *NodeAgentComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_NodeAgentComponentSpec.Unmarshal(m, b) } func (m *NodeAgentComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_NodeAgentComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_NodeAgentComponentSpec.Marshal(b, m, deterministic) } func (m *NodeAgentComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_NodeAgentComponentSpec.Merge(m, src) } func (m *NodeAgentComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_NodeAgentComponentSpec.Size(m) } func (m *NodeAgentComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_NodeAgentComponentSpec.DiscardUnknown(m) @@ -1675,47 +1402,55 @@ func (m *NodeAgentComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_NodeAgentComponentSpec proto.InternalMessageInfo -func (m *NodeAgentComponentSpec) GetCommon() *CommonComponentSpec { +func (m *NodeAgentComponentSpec) GetEnabled() *protobuf.BoolValue { if m != nil { - return m.Common + return m.Enabled + } + return nil +} + +func (m *NodeAgentComponentSpec) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *NodeAgentComponentSpec) GetK8S() *KubernetesResourcesSpec { + if m != nil { + return m.K8S } return nil } // Configuration options for node agent component. type GalleyComponentSpec struct { - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *GalleyComponentSpec) Reset() { *m = GalleyComponentSpec{} } func (m *GalleyComponentSpec) String() string { return proto.CompactTextString(m) } func (*GalleyComponentSpec) ProtoMessage() {} func (*GalleyComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{17} + return fileDescriptor_daac92937abd81a4, []int{17} } + func (m *GalleyComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_GalleyComponentSpec.Unmarshal(m, b) } func (m *GalleyComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_GalleyComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_GalleyComponentSpec.Marshal(b, m, deterministic) } func (m *GalleyComponentSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_GalleyComponentSpec.Merge(m, src) } func (m *GalleyComponentSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_GalleyComponentSpec.Size(m) } func (m *GalleyComponentSpec) XXX_DiscardUnknown() { xxx_messageInfo_GalleyComponentSpec.DiscardUnknown(m) @@ -1723,86 +1458,133 @@ func (m *GalleyComponentSpec) XXX_DiscardUnknown() { var xxx_messageInfo_GalleyComponentSpec proto.InternalMessageInfo -func (m *GalleyComponentSpec) GetCommon() *CommonComponentSpec { +func (m *GalleyComponentSpec) GetEnabled() *protobuf.BoolValue { + if m != nil { + return m.Enabled + } + return nil +} + +func (m *GalleyComponentSpec) GetNamespace() string { + if m != nil { + return m.Namespace + } + return "" +} + +func (m *GalleyComponentSpec) GetK8S() *KubernetesResourcesSpec { if m != nil { - return m.Common + return m.K8S } return nil } -// Configuration common to all components. -// +k8s:deepcopy-gen=false -type CommonComponentSpec struct { - // Selects whether this component is installed. - Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` - // Namespace that all resources for this component are installed into. Overrides the parent feature namespace and - // IstioControlPlaneSpec.DefaultNamespace. - Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` - Debug CommonComponentSpec_LogLevel `protobuf:"varint,3,opt,name=debug,proto3,enum=v1alpha2.CommonComponentSpec_LogLevel" json:"debug,omitempty"` - // Kubernetes resource spec. +// Configuration options for ingress gateways. +type IngressGatewayComponentSpec struct { + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` - Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` - UnvalidatedValues map[string]interface{} `protobuf:"bytes,6,opt,name=unvalidatedValues" json:"unvalidatedValues,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` } -func (m *CommonComponentSpec) Reset() { *m = CommonComponentSpec{} } -func (m *CommonComponentSpec) String() string { return proto.CompactTextString(m) } -func (*CommonComponentSpec) ProtoMessage() {} -func (*CommonComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{18} +func (m *IngressGatewayComponentSpec) Reset() { *m = IngressGatewayComponentSpec{} } +func (m *IngressGatewayComponentSpec) String() string { return proto.CompactTextString(m) } +func (*IngressGatewayComponentSpec) ProtoMessage() {} +func (*IngressGatewayComponentSpec) Descriptor() ([]byte, []int) { + return fileDescriptor_daac92937abd81a4, []int{18} } -func (m *CommonComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + +func (m *IngressGatewayComponentSpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_IngressGatewayComponentSpec.Unmarshal(m, b) } -func (m *CommonComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_CommonComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } +func (m *IngressGatewayComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_IngressGatewayComponentSpec.Marshal(b, m, deterministic) } -func (m *CommonComponentSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_CommonComponentSpec.Merge(m, src) +func (m *IngressGatewayComponentSpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_IngressGatewayComponentSpec.Merge(m, src) } -func (m *CommonComponentSpec) XXX_Size() int { - return m.Size() +func (m *IngressGatewayComponentSpec) XXX_Size() int { + return xxx_messageInfo_IngressGatewayComponentSpec.Size(m) } -func (m *CommonComponentSpec) XXX_DiscardUnknown() { - xxx_messageInfo_CommonComponentSpec.DiscardUnknown(m) +func (m *IngressGatewayComponentSpec) XXX_DiscardUnknown() { + xxx_messageInfo_IngressGatewayComponentSpec.DiscardUnknown(m) } -var xxx_messageInfo_CommonComponentSpec proto.InternalMessageInfo +var xxx_messageInfo_IngressGatewayComponentSpec proto.InternalMessageInfo -func (m *CommonComponentSpec) GetEnabled() *protobuf.BoolValue { +func (m *IngressGatewayComponentSpec) GetEnabled() *protobuf.BoolValue { if m != nil { return m.Enabled } return nil } -func (m *CommonComponentSpec) GetNamespace() string { +func (m *IngressGatewayComponentSpec) GetNamespace() string { if m != nil { return m.Namespace } return "" } -func (m *CommonComponentSpec) GetDebug() CommonComponentSpec_LogLevel { +func (m *IngressGatewayComponentSpec) GetK8S() *KubernetesResourcesSpec { + if m != nil { + return m.K8S + } + return nil +} + +// Configuration options for egress gateways. +type EgressGatewayComponentSpec struct { + Enabled *protobuf.BoolValue `protobuf:"bytes,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` + K8S *KubernetesResourcesSpec `protobuf:"bytes,80,opt,name=k8s,proto3" json:"k8s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *EgressGatewayComponentSpec) Reset() { *m = EgressGatewayComponentSpec{} } +func (m *EgressGatewayComponentSpec) String() string { return proto.CompactTextString(m) } +func (*EgressGatewayComponentSpec) ProtoMessage() {} +func (*EgressGatewayComponentSpec) Descriptor() ([]byte, []int) { + return fileDescriptor_daac92937abd81a4, []int{19} +} + +func (m *EgressGatewayComponentSpec) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_EgressGatewayComponentSpec.Unmarshal(m, b) +} +func (m *EgressGatewayComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_EgressGatewayComponentSpec.Marshal(b, m, deterministic) +} +func (m *EgressGatewayComponentSpec) XXX_Merge(src proto.Message) { + xxx_messageInfo_EgressGatewayComponentSpec.Merge(m, src) +} +func (m *EgressGatewayComponentSpec) XXX_Size() int { + return xxx_messageInfo_EgressGatewayComponentSpec.Size(m) +} +func (m *EgressGatewayComponentSpec) XXX_DiscardUnknown() { + xxx_messageInfo_EgressGatewayComponentSpec.DiscardUnknown(m) +} + +var xxx_messageInfo_EgressGatewayComponentSpec proto.InternalMessageInfo + +func (m *EgressGatewayComponentSpec) GetEnabled() *protobuf.BoolValue { + if m != nil { + return m.Enabled + } + return nil +} + +func (m *EgressGatewayComponentSpec) GetNamespace() string { if m != nil { - return m.Debug + return m.Namespace } - return CommonComponentSpec_NONE + return "" } -func (m *CommonComponentSpec) GetK8S() *KubernetesResourcesSpec { +func (m *EgressGatewayComponentSpec) GetK8S() *KubernetesResourcesSpec { if m != nil { return m.K8S } @@ -1845,6 +1627,12 @@ type KubernetesResourcesSpec struct { // k8s resources settings. // https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container Resources *Resources `protobuf:"bytes,11,opt,name=resources,proto3" json:"resources,omitempty"` + // k8s Service settings. + // https://kubernetes.io/docs/concepts/services-networking/service/ + Service *v1.ServiceSpec `protobuf:"bytes,12,opt,name=service,proto3" json:"service,omitempty"` + // k8s deployment strategy. + // https://kubernetes.io/docs/concepts/workloads/controllers/deployment/ + Strategy *DeploymentStrategy `protobuf:"bytes,13,opt,name=strategy,proto3" json:"strategy,omitempty"` // Overlays for k8s resources in rendered manifests. Overlays []*K8SObjectOverlay `protobuf:"bytes,100,rep,name=overlays,proto3" json:"overlays,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` @@ -1856,28 +1644,20 @@ func (m *KubernetesResourcesSpec) Reset() { *m = KubernetesResourcesSpec func (m *KubernetesResourcesSpec) String() string { return proto.CompactTextString(m) } func (*KubernetesResourcesSpec) ProtoMessage() {} func (*KubernetesResourcesSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{19} + return fileDescriptor_daac92937abd81a4, []int{20} } + func (m *KubernetesResourcesSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_KubernetesResourcesSpec.Unmarshal(m, b) } func (m *KubernetesResourcesSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_KubernetesResourcesSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_KubernetesResourcesSpec.Marshal(b, m, deterministic) } func (m *KubernetesResourcesSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_KubernetesResourcesSpec.Merge(m, src) } func (m *KubernetesResourcesSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_KubernetesResourcesSpec.Size(m) } func (m *KubernetesResourcesSpec) XXX_DiscardUnknown() { xxx_messageInfo_KubernetesResourcesSpec.DiscardUnknown(m) @@ -1962,353 +1742,27 @@ func (m *KubernetesResourcesSpec) GetResources() *Resources { return nil } -func (m *KubernetesResourcesSpec) GetOverlays() []*K8SObjectOverlay { - if m != nil { - return m.Overlays - } - return nil -} - -// Configuration options for ingress gateways. -type IngressGatewayComponentSpec struct { - // Common gateway configuration. - Common *CommonComponentSpec `protobuf:"bytes,10,opt,name=common,proto3" json:"common,omitempty"` - IngressType IngressGatewayComponentSpec_IngressType `protobuf:"varint,11,opt,name=ingress_type,json=ingressType,proto3,enum=v1alpha2.IngressGatewayComponentSpec_IngressType" json:"ingress_type,omitempty"` - LoadBalancer *LoadBalancerConfig `protobuf:"bytes,13,opt,name=load_balancer,json=loadBalancer,proto3" json:"load_balancer,omitempty"` - // If true, ingress gateway fetches credentials from SDS server to handle TLS connections. - SdsEnabled *protobuf.BoolValue `protobuf:"bytes,16,opt,name=sds_enabled,json=sdsEnabled,proto3" json:"sds_enabled,omitempty"` - ExternalTrafficPolicy IngressGatewayComponentSpec_ExternalTrafficPolicy `protobuf:"varint,17,opt,name=externalTrafficPolicy,proto3,enum=v1alpha2.IngressGatewayComponentSpec_ExternalTrafficPolicy" json:"externalTrafficPolicy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *IngressGatewayComponentSpec) Reset() { *m = IngressGatewayComponentSpec{} } -func (m *IngressGatewayComponentSpec) String() string { return proto.CompactTextString(m) } -func (*IngressGatewayComponentSpec) ProtoMessage() {} -func (*IngressGatewayComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{20} -} -func (m *IngressGatewayComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *IngressGatewayComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_IngressGatewayComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *IngressGatewayComponentSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_IngressGatewayComponentSpec.Merge(m, src) -} -func (m *IngressGatewayComponentSpec) XXX_Size() int { - return m.Size() -} -func (m *IngressGatewayComponentSpec) XXX_DiscardUnknown() { - xxx_messageInfo_IngressGatewayComponentSpec.DiscardUnknown(m) -} - -var xxx_messageInfo_IngressGatewayComponentSpec proto.InternalMessageInfo - -func (m *IngressGatewayComponentSpec) GetCommon() *CommonComponentSpec { - if m != nil { - return m.Common - } - return nil -} - -func (m *IngressGatewayComponentSpec) GetIngressType() IngressGatewayComponentSpec_IngressType { - if m != nil { - return m.IngressType - } - return IngressGatewayComponentSpec_ISTIO -} - -func (m *IngressGatewayComponentSpec) GetLoadBalancer() *LoadBalancerConfig { - if m != nil { - return m.LoadBalancer - } - return nil -} - -func (m *IngressGatewayComponentSpec) GetSdsEnabled() *protobuf.BoolValue { - if m != nil { - return m.SdsEnabled - } - return nil -} - -func (m *IngressGatewayComponentSpec) GetExternalTrafficPolicy() IngressGatewayComponentSpec_ExternalTrafficPolicy { - if m != nil { - return m.ExternalTrafficPolicy - } - return IngressGatewayComponentSpec_NONE -} - -// Configuration options for egress gateways. -type EgressGatewayComponentSpec struct { - // Common gateway configuration. - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *EgressGatewayComponentSpec) Reset() { *m = EgressGatewayComponentSpec{} } -func (m *EgressGatewayComponentSpec) String() string { return proto.CompactTextString(m) } -func (*EgressGatewayComponentSpec) ProtoMessage() {} -func (*EgressGatewayComponentSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{21} -} -func (m *EgressGatewayComponentSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *EgressGatewayComponentSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_EgressGatewayComponentSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *EgressGatewayComponentSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_EgressGatewayComponentSpec.Merge(m, src) -} -func (m *EgressGatewayComponentSpec) XXX_Size() int { - return m.Size() -} -func (m *EgressGatewayComponentSpec) XXX_DiscardUnknown() { - xxx_messageInfo_EgressGatewayComponentSpec.DiscardUnknown(m) -} - -var xxx_messageInfo_EgressGatewayComponentSpec proto.InternalMessageInfo - -func (m *EgressGatewayComponentSpec) GetCommon() *CommonComponentSpec { - if m != nil { - return m.Common - } - return nil -} - -// Configuration options for internal load balancer gateways. -type LoadBalancingGatewayConfig struct { - // Common gateway configuration. - Common *CommonComponentSpec `protobuf:"bytes,1,opt,name=common,proto3" json:"common,omitempty"` - // Load balancer config. - LoadBalancer *LoadBalancerConfig `protobuf:"bytes,11,opt,name=load_balancer,json=loadBalancer,proto3" json:"load_balancer,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *LoadBalancingGatewayConfig) Reset() { *m = LoadBalancingGatewayConfig{} } -func (m *LoadBalancingGatewayConfig) String() string { return proto.CompactTextString(m) } -func (*LoadBalancingGatewayConfig) ProtoMessage() {} -func (*LoadBalancingGatewayConfig) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{22} -} -func (m *LoadBalancingGatewayConfig) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *LoadBalancingGatewayConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_LoadBalancingGatewayConfig.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *LoadBalancingGatewayConfig) XXX_Merge(src proto.Message) { - xxx_messageInfo_LoadBalancingGatewayConfig.Merge(m, src) -} -func (m *LoadBalancingGatewayConfig) XXX_Size() int { - return m.Size() -} -func (m *LoadBalancingGatewayConfig) XXX_DiscardUnknown() { - xxx_messageInfo_LoadBalancingGatewayConfig.DiscardUnknown(m) -} - -var xxx_messageInfo_LoadBalancingGatewayConfig proto.InternalMessageInfo - -func (m *LoadBalancingGatewayConfig) GetCommon() *CommonComponentSpec { - if m != nil { - return m.Common - } - return nil -} - -func (m *LoadBalancingGatewayConfig) GetLoadBalancer() *LoadBalancerConfig { +func (m *KubernetesResourcesSpec) GetService() *v1.ServiceSpec { if m != nil { - return m.LoadBalancer - } - return nil -} - -// Configuration options for internal load balancer gateways. -// Subset of k8s.io/api/core/v1 ServiceSpec. -type LoadBalancerConfig struct { - // The list of ports that are exposed by this service. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies - Ports []*v1.ServicePort `protobuf:"bytes,1,rep,name=ports,proto3" json:"ports,omitempty"` - // clusterIP is the IP address of the service and is usually assigned - // randomly by the master. If an address is specified manually and is not in - // use by others, it will be allocated to the service; otherwise, creation - // of the service will fail. This field can not be changed through updates. - // Valid values are "None", empty string (""), or a valid IP address. "None" - // can be specified for headless services when proxying is not required. - // Only applies to types ClusterIP, NodePort, and LoadBalancer. Ignored if - // type is ExternalName. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies - // +optional - ClusterIP string `protobuf:"bytes,3,opt,name=clusterIP,proto3" json:"clusterIP,omitempty"` - // externalIPs is a list of IP addresses for which nodes in the cluster - // will also accept traffic for this service. These IPs are not managed by - // Kubernetes. The user is responsible for ensuring that traffic arrives - // at a node with this IP. A common example is external load-balancers - // that are not part of the Kubernetes system. - // +optional - ExternalIPs []string `protobuf:"bytes,5,rep,name=externalIPs,proto3" json:"externalIPs,omitempty"` - // Supports "ClientIP" and "None". Used to maintain session affinity. - // Enable client IP based session affinity. - // Must be ClientIP or None. - // Defaults to None. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies - // +optional - SessionAffinity string `protobuf:"bytes,7,opt,name=sessionAffinity,proto3" json:"sessionAffinity,omitempty"` - // LoadBalancer will get created with the IP specified in this field. - // This feature depends on whether the underlying cloud-provider supports specifying - // the loadBalancerIP when a load balancer is created. - // This field will be ignored if the cloud-provider does not support the feature. - // +optional - LoadBalancerIP string `protobuf:"bytes,8,opt,name=loadBalancerIP,proto3" json:"loadBalancerIP,omitempty"` - // If specified and supported by the platform, this will restrict traffic through the cloud-provider - // load-balancer will be restricted to the specified client IPs. This field will be ignored if the - // cloud-provider does not support the feature." - // More info: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/ - // +optional - LoadBalancerSourceRanges []string `protobuf:"bytes,9,rep,name=loadBalancerSourceRanges,proto3" json:"loadBalancerSourceRanges,omitempty"` - // externalName is the external reference that kubedns or equivalent will - // return as a CNAME record for this service. No proxying will be involved. - // Must be a valid RFC-1123 hostname (https://tools.ietf.org/html/rfc1123) - // and requires Type to be ExternalName. - // +optional - ExternalName string `protobuf:"bytes,10,opt,name=externalName,proto3" json:"externalName,omitempty"` - // externalTrafficPolicy denotes if this Service desires to route external - // traffic to node-local or cluster-wide endpoints. "Local" preserves the - // client source IP and avoids a second hop for LoadBalancer and Nodeport - // type services, but risks potentially imbalanced traffic spreading. - // "Cluster" obscures the client source IP and may cause a second hop to - // another node, but should have good overall load-spreading. - // +optional - ExternalTrafficPolicy string `protobuf:"bytes,11,opt,name=externalTrafficPolicy,proto3" json:"externalTrafficPolicy,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *LoadBalancerConfig) Reset() { *m = LoadBalancerConfig{} } -func (m *LoadBalancerConfig) String() string { return proto.CompactTextString(m) } -func (*LoadBalancerConfig) ProtoMessage() {} -func (*LoadBalancerConfig) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{23} -} -func (m *LoadBalancerConfig) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *LoadBalancerConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_LoadBalancerConfig.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *LoadBalancerConfig) XXX_Merge(src proto.Message) { - xxx_messageInfo_LoadBalancerConfig.Merge(m, src) -} -func (m *LoadBalancerConfig) XXX_Size() int { - return m.Size() -} -func (m *LoadBalancerConfig) XXX_DiscardUnknown() { - xxx_messageInfo_LoadBalancerConfig.DiscardUnknown(m) -} - -var xxx_messageInfo_LoadBalancerConfig proto.InternalMessageInfo - -func (m *LoadBalancerConfig) GetPorts() []*v1.ServicePort { - if m != nil { - return m.Ports + return m.Service } return nil } -func (m *LoadBalancerConfig) GetClusterIP() string { +func (m *KubernetesResourcesSpec) GetStrategy() *DeploymentStrategy { if m != nil { - return m.ClusterIP - } - return "" -} - -func (m *LoadBalancerConfig) GetExternalIPs() []string { - if m != nil { - return m.ExternalIPs + return m.Strategy } return nil } -func (m *LoadBalancerConfig) GetSessionAffinity() string { - if m != nil { - return m.SessionAffinity - } - return "" -} - -func (m *LoadBalancerConfig) GetLoadBalancerIP() string { - if m != nil { - return m.LoadBalancerIP - } - return "" -} - -func (m *LoadBalancerConfig) GetLoadBalancerSourceRanges() []string { +func (m *KubernetesResourcesSpec) GetOverlays() []*K8SObjectOverlay { if m != nil { - return m.LoadBalancerSourceRanges + return m.Overlays } return nil } -func (m *LoadBalancerConfig) GetExternalName() string { - if m != nil { - return m.ExternalName - } - return "" -} - -func (m *LoadBalancerConfig) GetExternalTrafficPolicy() string { - if m != nil { - return m.ExternalTrafficPolicy - } - return "" -} - // Patch for an existing k8s resource. type K8SObjectOverlay struct { // Resource API version. @@ -2329,28 +1783,20 @@ func (m *K8SObjectOverlay) Reset() { *m = K8SObjectOverlay{} } func (m *K8SObjectOverlay) String() string { return proto.CompactTextString(m) } func (*K8SObjectOverlay) ProtoMessage() {} func (*K8SObjectOverlay) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{24} + return fileDescriptor_daac92937abd81a4, []int{21} } + func (m *K8SObjectOverlay) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_K8SObjectOverlay.Unmarshal(m, b) } func (m *K8SObjectOverlay) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_K8SObjectOverlay.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_K8SObjectOverlay.Marshal(b, m, deterministic) } func (m *K8SObjectOverlay) XXX_Merge(src proto.Message) { xxx_messageInfo_K8SObjectOverlay.Merge(m, src) } func (m *K8SObjectOverlay) XXX_Size() int { - return m.Size() + return xxx_messageInfo_K8SObjectOverlay.Size(m) } func (m *K8SObjectOverlay) XXX_DiscardUnknown() { xxx_messageInfo_K8SObjectOverlay.DiscardUnknown(m) @@ -2401,28 +1847,20 @@ func (m *K8SObjectOverlay_PathValue) Reset() { *m = K8SObjectOverlay_Pat func (m *K8SObjectOverlay_PathValue) String() string { return proto.CompactTextString(m) } func (*K8SObjectOverlay_PathValue) ProtoMessage() {} func (*K8SObjectOverlay_PathValue) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{24, 0} + return fileDescriptor_daac92937abd81a4, []int{21, 0} } + func (m *K8SObjectOverlay_PathValue) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_K8SObjectOverlay_PathValue.Unmarshal(m, b) } func (m *K8SObjectOverlay_PathValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_K8SObjectOverlay_PathValue.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_K8SObjectOverlay_PathValue.Marshal(b, m, deterministic) } func (m *K8SObjectOverlay_PathValue) XXX_Merge(src proto.Message) { xxx_messageInfo_K8SObjectOverlay_PathValue.Merge(m, src) } func (m *K8SObjectOverlay_PathValue) XXX_Size() int { - return m.Size() + return xxx_messageInfo_K8SObjectOverlay_PathValue.Size(m) } func (m *K8SObjectOverlay_PathValue) XXX_DiscardUnknown() { xxx_messageInfo_K8SObjectOverlay_PathValue.DiscardUnknown(m) @@ -2454,28 +1892,20 @@ func (m *InstallStatus) Reset() { *m = InstallStatus{} } func (m *InstallStatus) String() string { return proto.CompactTextString(m) } func (*InstallStatus) ProtoMessage() {} func (*InstallStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{25} + return fileDescriptor_daac92937abd81a4, []int{22} } + func (m *InstallStatus) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_InstallStatus.Unmarshal(m, b) } func (m *InstallStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_InstallStatus.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_InstallStatus.Marshal(b, m, deterministic) } func (m *InstallStatus) XXX_Merge(src proto.Message) { xxx_messageInfo_InstallStatus.Merge(m, src) } func (m *InstallStatus) XXX_Size() int { - return m.Size() + return xxx_messageInfo_InstallStatus.Size(m) } func (m *InstallStatus) XXX_DiscardUnknown() { xxx_messageInfo_InstallStatus.DiscardUnknown(m) @@ -2537,28 +1967,20 @@ func (m *InstallStatus_VersionStatus) Reset() { *m = InstallStatus_Versi func (m *InstallStatus_VersionStatus) String() string { return proto.CompactTextString(m) } func (*InstallStatus_VersionStatus) ProtoMessage() {} func (*InstallStatus_VersionStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{25, 0} + return fileDescriptor_daac92937abd81a4, []int{22, 0} } + func (m *InstallStatus_VersionStatus) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_InstallStatus_VersionStatus.Unmarshal(m, b) } func (m *InstallStatus_VersionStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_InstallStatus_VersionStatus.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_InstallStatus_VersionStatus.Marshal(b, m, deterministic) } func (m *InstallStatus_VersionStatus) XXX_Merge(src proto.Message) { xxx_messageInfo_InstallStatus_VersionStatus.Merge(m, src) } func (m *InstallStatus_VersionStatus) XXX_Size() int { - return m.Size() + return xxx_messageInfo_InstallStatus_VersionStatus.Size(m) } func (m *InstallStatus_VersionStatus) XXX_DiscardUnknown() { xxx_messageInfo_InstallStatus_VersionStatus.DiscardUnknown(m) @@ -2593,28 +2015,20 @@ func (m *Resources) Reset() { *m = Resources{} } func (m *Resources) String() string { return proto.CompactTextString(m) } func (*Resources) ProtoMessage() {} func (*Resources) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{26} + return fileDescriptor_daac92937abd81a4, []int{23} } + func (m *Resources) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_Resources.Unmarshal(m, b) } func (m *Resources) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_Resources.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_Resources.Marshal(b, m, deterministic) } func (m *Resources) XXX_Merge(src proto.Message) { xxx_messageInfo_Resources.Merge(m, src) } func (m *Resources) XXX_Size() int { - return m.Size() + return xxx_messageInfo_Resources.Size(m) } func (m *Resources) XXX_DiscardUnknown() { xxx_messageInfo_Resources.DiscardUnknown(m) @@ -2655,28 +2069,20 @@ func (m *ReadinessProbe) Reset() { *m = ReadinessProbe{} } func (m *ReadinessProbe) String() string { return proto.CompactTextString(m) } func (*ReadinessProbe) ProtoMessage() {} func (*ReadinessProbe) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{27} + return fileDescriptor_daac92937abd81a4, []int{24} } + func (m *ReadinessProbe) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_ReadinessProbe.Unmarshal(m, b) } func (m *ReadinessProbe) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ReadinessProbe.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_ReadinessProbe.Marshal(b, m, deterministic) } func (m *ReadinessProbe) XXX_Merge(src proto.Message) { xxx_messageInfo_ReadinessProbe.Merge(m, src) } func (m *ReadinessProbe) XXX_Size() int { - return m.Size() + return xxx_messageInfo_ReadinessProbe.Size(m) } func (m *ReadinessProbe) XXX_DiscardUnknown() { xxx_messageInfo_ReadinessProbe.DiscardUnknown(m) @@ -2752,28 +2158,20 @@ func (m *ExecAction) Reset() { *m = ExecAction{} } func (m *ExecAction) String() string { return proto.CompactTextString(m) } func (*ExecAction) ProtoMessage() {} func (*ExecAction) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{28} + return fileDescriptor_daac92937abd81a4, []int{25} } + func (m *ExecAction) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_ExecAction.Unmarshal(m, b) } func (m *ExecAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ExecAction.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_ExecAction.Marshal(b, m, deterministic) } func (m *ExecAction) XXX_Merge(src proto.Message) { xxx_messageInfo_ExecAction.Merge(m, src) } func (m *ExecAction) XXX_Size() int { - return m.Size() + return xxx_messageInfo_ExecAction.Size(m) } func (m *ExecAction) XXX_DiscardUnknown() { xxx_messageInfo_ExecAction.DiscardUnknown(m) @@ -2804,28 +2202,20 @@ func (m *HTTPGetAction) Reset() { *m = HTTPGetAction{} } func (m *HTTPGetAction) String() string { return proto.CompactTextString(m) } func (*HTTPGetAction) ProtoMessage() {} func (*HTTPGetAction) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{29} + return fileDescriptor_daac92937abd81a4, []int{26} } + func (m *HTTPGetAction) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_HTTPGetAction.Unmarshal(m, b) } func (m *HTTPGetAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_HTTPGetAction.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_HTTPGetAction.Marshal(b, m, deterministic) } func (m *HTTPGetAction) XXX_Merge(src proto.Message) { xxx_messageInfo_HTTPGetAction.Merge(m, src) } func (m *HTTPGetAction) XXX_Size() int { - return m.Size() + return xxx_messageInfo_HTTPGetAction.Size(m) } func (m *HTTPGetAction) XXX_DiscardUnknown() { xxx_messageInfo_HTTPGetAction.DiscardUnknown(m) @@ -2874,28 +2264,20 @@ func (m *HTTPHeader) Reset() { *m = HTTPHeader{} } func (m *HTTPHeader) String() string { return proto.CompactTextString(m) } func (*HTTPHeader) ProtoMessage() {} func (*HTTPHeader) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{30} + return fileDescriptor_daac92937abd81a4, []int{27} } + func (m *HTTPHeader) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_HTTPHeader.Unmarshal(m, b) } func (m *HTTPHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_HTTPHeader.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_HTTPHeader.Marshal(b, m, deterministic) } func (m *HTTPHeader) XXX_Merge(src proto.Message) { xxx_messageInfo_HTTPHeader.Merge(m, src) } func (m *HTTPHeader) XXX_Size() int { - return m.Size() + return xxx_messageInfo_HTTPHeader.Size(m) } func (m *HTTPHeader) XXX_DiscardUnknown() { xxx_messageInfo_HTTPHeader.DiscardUnknown(m) @@ -2930,28 +2312,20 @@ func (m *TCPSocketAction) Reset() { *m = TCPSocketAction{} } func (m *TCPSocketAction) String() string { return proto.CompactTextString(m) } func (*TCPSocketAction) ProtoMessage() {} func (*TCPSocketAction) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{31} + return fileDescriptor_daac92937abd81a4, []int{28} } + func (m *TCPSocketAction) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_TCPSocketAction.Unmarshal(m, b) } func (m *TCPSocketAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_TCPSocketAction.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_TCPSocketAction.Marshal(b, m, deterministic) } func (m *TCPSocketAction) XXX_Merge(src proto.Message) { xxx_messageInfo_TCPSocketAction.Merge(m, src) } func (m *TCPSocketAction) XXX_Size() int { - return m.Size() + return xxx_messageInfo_TCPSocketAction.Size(m) } func (m *TCPSocketAction) XXX_DiscardUnknown() { xxx_messageInfo_TCPSocketAction.DiscardUnknown(m) @@ -2980,28 +2354,20 @@ func (m *PodDisruptionBudgetSpec) Reset() { *m = PodDisruptionBudgetSpec func (m *PodDisruptionBudgetSpec) String() string { return proto.CompactTextString(m) } func (*PodDisruptionBudgetSpec) ProtoMessage() {} func (*PodDisruptionBudgetSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{32} + return fileDescriptor_daac92937abd81a4, []int{29} } + func (m *PodDisruptionBudgetSpec) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_PodDisruptionBudgetSpec.Unmarshal(m, b) } func (m *PodDisruptionBudgetSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_PodDisruptionBudgetSpec.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_PodDisruptionBudgetSpec.Marshal(b, m, deterministic) } func (m *PodDisruptionBudgetSpec) XXX_Merge(src proto.Message) { xxx_messageInfo_PodDisruptionBudgetSpec.Merge(m, src) } func (m *PodDisruptionBudgetSpec) XXX_Size() int { - return m.Size() + return xxx_messageInfo_PodDisruptionBudgetSpec.Size(m) } func (m *PodDisruptionBudgetSpec) XXX_DiscardUnknown() { xxx_messageInfo_PodDisruptionBudgetSpec.DiscardUnknown(m) @@ -3030,6 +2396,88 @@ func (m *PodDisruptionBudgetSpec) GetMaxUnavailable() uint32 { return 0 } +// Mirrors k8s.io.api.apps.v1.DeploymentStrategy for unmarshaling. +type DeploymentStrategy struct { + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` + RollingUpdate *RollingUpdateDeployment `protobuf:"bytes,2,opt,name=rollingUpdate,proto3" json:"rollingUpdate,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *DeploymentStrategy) Reset() { *m = DeploymentStrategy{} } +func (m *DeploymentStrategy) String() string { return proto.CompactTextString(m) } +func (*DeploymentStrategy) ProtoMessage() {} +func (*DeploymentStrategy) Descriptor() ([]byte, []int) { + return fileDescriptor_daac92937abd81a4, []int{30} +} + +func (m *DeploymentStrategy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DeploymentStrategy.Unmarshal(m, b) +} +func (m *DeploymentStrategy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DeploymentStrategy.Marshal(b, m, deterministic) +} +func (m *DeploymentStrategy) XXX_Merge(src proto.Message) { + xxx_messageInfo_DeploymentStrategy.Merge(m, src) +} +func (m *DeploymentStrategy) XXX_Size() int { + return xxx_messageInfo_DeploymentStrategy.Size(m) +} +func (m *DeploymentStrategy) XXX_DiscardUnknown() { + xxx_messageInfo_DeploymentStrategy.DiscardUnknown(m) +} + +var xxx_messageInfo_DeploymentStrategy proto.InternalMessageInfo + +func (m *DeploymentStrategy) GetType() string { + if m != nil { + return m.Type + } + return "" +} + +func (m *DeploymentStrategy) GetRollingUpdate() *RollingUpdateDeployment { + if m != nil { + return m.RollingUpdate + } + return nil +} + +// Mirrors k8s.io.api.apps.v1.RollingUpdateDeployment for unmarshaling. +type RollingUpdateDeployment struct { + MaxUnavailable IntOrStringForPB `protobuf:"bytes,1,opt,name=maxUnavailable,proto3" json:"maxUnavailable,omitempty"` + MaxSurge IntOrStringForPB `protobuf:"bytes,1,opt,name=maxSurge,proto3" json:"maxSurge,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *RollingUpdateDeployment) Reset() { *m = RollingUpdateDeployment{} } +func (m *RollingUpdateDeployment) String() string { return proto.CompactTextString(m) } +func (*RollingUpdateDeployment) ProtoMessage() {} +func (*RollingUpdateDeployment) Descriptor() ([]byte, []int) { + return fileDescriptor_daac92937abd81a4, []int{31} +} + +func (m *RollingUpdateDeployment) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RollingUpdateDeployment.Unmarshal(m, b) +} +func (m *RollingUpdateDeployment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RollingUpdateDeployment.Marshal(b, m, deterministic) +} +func (m *RollingUpdateDeployment) XXX_Merge(src proto.Message) { + xxx_messageInfo_RollingUpdateDeployment.Merge(m, src) +} +func (m *RollingUpdateDeployment) XXX_Size() int { + return xxx_messageInfo_RollingUpdateDeployment.Size(m) +} +func (m *RollingUpdateDeployment) XXX_DiscardUnknown() { + xxx_messageInfo_RollingUpdateDeployment.DiscardUnknown(m) +} + +var xxx_messageInfo_RollingUpdateDeployment proto.InternalMessageInfo + type ObjectMeta struct { // From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` @@ -3043,28 +2491,20 @@ func (m *ObjectMeta) Reset() { *m = ObjectMeta{} } func (m *ObjectMeta) String() string { return proto.CompactTextString(m) } func (*ObjectMeta) ProtoMessage() {} func (*ObjectMeta) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{33} + return fileDescriptor_daac92937abd81a4, []int{32} } + func (m *ObjectMeta) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_ObjectMeta.Unmarshal(m, b) } func (m *ObjectMeta) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ObjectMeta.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_ObjectMeta.Marshal(b, m, deterministic) } func (m *ObjectMeta) XXX_Merge(src proto.Message) { xxx_messageInfo_ObjectMeta.Merge(m, src) } func (m *ObjectMeta) XXX_Size() int { - return m.Size() + return xxx_messageInfo_ObjectMeta.Size(m) } func (m *ObjectMeta) XXX_DiscardUnknown() { xxx_messageInfo_ObjectMeta.DiscardUnknown(m) @@ -3108,28 +2548,20 @@ func (m *TestKube) Reset() { *m = TestKube{} } func (m *TestKube) String() string { return proto.CompactTextString(m) } func (*TestKube) ProtoMessage() {} func (*TestKube) Descriptor() ([]byte, []int) { - return fileDescriptor_8776058379b6174d, []int{34} + return fileDescriptor_daac92937abd81a4, []int{33} } + func (m *TestKube) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) + return xxx_messageInfo_TestKube.Unmarshal(m, b) } func (m *TestKube) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_TestKube.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalTo(b) - if err != nil { - return nil, err - } - return b[:n], nil - } + return xxx_messageInfo_TestKube.Marshal(b, m, deterministic) } func (m *TestKube) XXX_Merge(src proto.Message) { xxx_messageInfo_TestKube.Merge(m, src) } func (m *TestKube) XXX_Size() int { - return m.Size() + return xxx_messageInfo_TestKube.Size(m) } func (m *TestKube) XXX_DiscardUnknown() { xxx_messageInfo_TestKube.DiscardUnknown(m) @@ -3201,10 +2633,6 @@ func (m *TestKube) GetOverlays() []*K8SObjectOverlay { } func init() { - proto.RegisterEnum("v1alpha2.PolicyFeatureSpec_OutboundPolicy", PolicyFeatureSpec_OutboundPolicy_name, PolicyFeatureSpec_OutboundPolicy_value) - proto.RegisterEnum("v1alpha2.CommonComponentSpec_LogLevel", CommonComponentSpec_LogLevel_name, CommonComponentSpec_LogLevel_value) - proto.RegisterEnum("v1alpha2.IngressGatewayComponentSpec_IngressType", IngressGatewayComponentSpec_IngressType_name, IngressGatewayComponentSpec_IngressType_value) - proto.RegisterEnum("v1alpha2.IngressGatewayComponentSpec_ExternalTrafficPolicy", IngressGatewayComponentSpec_ExternalTrafficPolicy_name, IngressGatewayComponentSpec_ExternalTrafficPolicy_value) proto.RegisterEnum("v1alpha2.InstallStatus_Status", InstallStatus_Status_name, InstallStatus_Status_value) proto.RegisterType((*IstioControlPlane)(nil), "v1alpha2.IstioControlPlane") proto.RegisterType((*IstioControlPlaneSpec)(nil), "v1alpha2.IstioControlPlaneSpec") @@ -3231,14 +2659,11 @@ func init() { proto.RegisterType((*CertManagerComponentSpec)(nil), "v1alpha2.CertManagerComponentSpec") proto.RegisterType((*NodeAgentComponentSpec)(nil), "v1alpha2.NodeAgentComponentSpec") proto.RegisterType((*GalleyComponentSpec)(nil), "v1alpha2.GalleyComponentSpec") - proto.RegisterType((*CommonComponentSpec)(nil), "v1alpha2.CommonComponentSpec") + proto.RegisterType((*IngressGatewayComponentSpec)(nil), "v1alpha2.IngressGatewayComponentSpec") + proto.RegisterType((*EgressGatewayComponentSpec)(nil), "v1alpha2.EgressGatewayComponentSpec") proto.RegisterType((*KubernetesResourcesSpec)(nil), "v1alpha2.KubernetesResourcesSpec") proto.RegisterMapType((map[string]string)(nil), "v1alpha2.KubernetesResourcesSpec.NodeSelectorEntry") proto.RegisterMapType((map[string]string)(nil), "v1alpha2.KubernetesResourcesSpec.PodAnnotationsEntry") - proto.RegisterType((*IngressGatewayComponentSpec)(nil), "v1alpha2.IngressGatewayComponentSpec") - proto.RegisterType((*EgressGatewayComponentSpec)(nil), "v1alpha2.EgressGatewayComponentSpec") - proto.RegisterType((*LoadBalancingGatewayConfig)(nil), "v1alpha2.LoadBalancingGatewayConfig") - proto.RegisterType((*LoadBalancerConfig)(nil), "v1alpha2.LoadBalancerConfig") proto.RegisterType((*K8SObjectOverlay)(nil), "v1alpha2.k8sObjectOverlay") proto.RegisterType((*K8SObjectOverlay_PathValue)(nil), "v1alpha2.k8sObjectOverlay.PathValue") proto.RegisterType((*InstallStatus)(nil), "v1alpha2.InstallStatus") @@ -3252,6 +2677,8 @@ func init() { proto.RegisterType((*HTTPHeader)(nil), "v1alpha2.HTTPHeader") proto.RegisterType((*TCPSocketAction)(nil), "v1alpha2.TCPSocketAction") proto.RegisterType((*PodDisruptionBudgetSpec)(nil), "v1alpha2.PodDisruptionBudgetSpec") + proto.RegisterType((*DeploymentStrategy)(nil), "v1alpha2.DeploymentStrategy") + proto.RegisterType((*RollingUpdateDeployment)(nil), "v1alpha2.RollingUpdateDeployment") proto.RegisterType((*ObjectMeta)(nil), "v1alpha2.ObjectMeta") proto.RegisterType((*TestKube)(nil), "v1alpha2.TestKube") proto.RegisterMapType((map[string]string)(nil), "v1alpha2.TestKube.EnvEntry") @@ -3259,11369 +2686,159 @@ func init() { proto.RegisterMapType((map[string]string)(nil), "v1alpha2.TestKube.PodAnnotationsEntry") } -func init() { proto.RegisterFile("istiocontrolplane_types.proto", fileDescriptor_8776058379b6174d) } - -var fileDescriptor_8776058379b6174d = []byte{ - // 2900 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x5a, 0xcf, 0x6f, 0x1b, 0xc7, - 0xf5, 0x37, 0xa9, 0x5f, 0xe4, 0x93, 0x28, 0x51, 0x23, 0xd9, 0xd9, 0xc8, 0x3f, 0xb3, 0xdf, 0xc4, - 0xf1, 0x37, 0x4d, 0xa8, 0x58, 0x4e, 0x1c, 0x27, 0x4e, 0x9d, 0xd2, 0x32, 0x2d, 0x09, 0x96, 0x45, - 0x66, 0x29, 0x39, 0x75, 0x51, 0x94, 0x18, 0xed, 0x8e, 0xc8, 0x8d, 0x96, 0x3b, 0x9b, 0x9d, 0xa1, - 0x62, 0xf6, 0xd6, 0xf6, 0xd0, 0xf6, 0x54, 0xa0, 0x87, 0xa2, 0x87, 0x16, 0xbd, 0xf6, 0xd0, 0x3f, - 0xa0, 0x87, 0xdc, 0xdb, 0x63, 0xff, 0x81, 0x02, 0x45, 0x0a, 0xf4, 0xd4, 0x5b, 0x8f, 0x05, 0x8a, - 0x62, 0x7e, 0x2c, 0x77, 0x49, 0x2e, 0x25, 0x91, 0x0e, 0x7a, 0xe3, 0xbe, 0xf7, 0x79, 0x6f, 0x67, - 0xde, 0x9b, 0x79, 0xbf, 0x96, 0x70, 0xd5, 0x65, 0xdc, 0xa5, 0x36, 0xf5, 0x79, 0x48, 0xbd, 0xc0, - 0xc3, 0x3e, 0x69, 0xf0, 0x6e, 0x40, 0x58, 0x29, 0x08, 0x29, 0xa7, 0x28, 0x77, 0x72, 0x1b, 0x7b, - 0x41, 0x0b, 0x6f, 0xac, 0x99, 0xc7, 0xf7, 0x58, 0xc9, 0xa5, 0xeb, 0x38, 0x70, 0xd7, 0x6d, 0x1a, - 0x92, 0xf5, 0x93, 0xdb, 0xeb, 0x4d, 0xe2, 0x93, 0x10, 0x73, 0xe2, 0x28, 0xf4, 0x5a, 0x29, 0x81, - 0xc1, 0x1d, 0x4e, 0x99, 0x8d, 0x3d, 0xd7, 0x6f, 0xae, 0x9f, 0x6c, 0x1c, 0x12, 0x8e, 0x87, 0xf1, - 0xef, 0xc5, 0xf8, 0x36, 0xb6, 0x5b, 0xae, 0x4f, 0xc2, 0xee, 0x7a, 0x70, 0xdc, 0x14, 0x04, 0xb6, - 0xde, 0x26, 0x1c, 0xa7, 0xbd, 0xe5, 0x3b, 0x4d, 0x97, 0xb7, 0x3a, 0x87, 0x25, 0x9b, 0xb6, 0xd7, - 0x9b, 0xb4, 0x49, 0xd7, 0x25, 0xf9, 0xb0, 0x73, 0x14, 0xff, 0x68, 0x52, 0xda, 0xf4, 0x48, 0xfc, - 0xfc, 0x65, 0x88, 0x83, 0x80, 0x84, 0x7a, 0x57, 0x66, 0x17, 0x96, 0x77, 0xc4, 0xb6, 0x37, 0xd5, - 0xb6, 0x6b, 0x62, 0xdb, 0xe8, 0x0e, 0x4c, 0xb3, 0x80, 0xd8, 0xc6, 0xd4, 0x8d, 0xcc, 0xad, 0xf9, - 0x8d, 0xeb, 0xa5, 0x68, 0xe7, 0xa5, 0x21, 0x68, 0x3d, 0x20, 0xb6, 0x25, 0xc1, 0x68, 0x1d, 0x66, - 0x19, 0xc7, 0xbc, 0xc3, 0x8c, 0x69, 0x29, 0xf6, 0x4a, 0x42, 0xcc, 0x67, 0x1c, 0x7b, 0x5e, 0x5d, - 0xb2, 0x2d, 0x0d, 0x33, 0xff, 0x30, 0x03, 0x17, 0x53, 0x15, 0xa2, 0x6f, 0xc1, 0xb2, 0x43, 0x8e, - 0x70, 0xc7, 0xe3, 0x0d, 0x1f, 0xb7, 0x09, 0x0b, 0xb0, 0x4d, 0x8c, 0x99, 0x1b, 0x99, 0x5b, 0x79, - 0xab, 0xa8, 0x19, 0x7b, 0x11, 0x1d, 0x1d, 0x00, 0xe2, 0x21, 0x3e, 0x3a, 0x72, 0xed, 0x46, 0x1b, - 0xfb, 0xb8, 0x49, 0xda, 0xc4, 0xe7, 0xc6, 0xab, 0x72, 0x0d, 0x37, 0xe3, 0x35, 0xec, 0x2b, 0xcc, - 0xd3, 0x1e, 0xe4, 0x31, 0xc1, 0xbc, 0x13, 0xaa, 0x1d, 0x2c, 0xf3, 0x41, 0x2e, 0xba, 0x03, 0xb3, - 0x01, 0xf5, 0x5c, 0xbb, 0x6b, 0xac, 0x49, 0x55, 0x97, 0x63, 0x55, 0x35, 0x49, 0x4f, 0xca, 0x6b, - 0x28, 0xfa, 0x18, 0xf2, 0x9c, 0x78, 0xa4, 0x4d, 0x78, 0xd8, 0x35, 0x2e, 0x4b, 0xb9, 0x6b, 0x89, - 0x25, 0x44, 0xac, 0xa4, 0x68, 0x2c, 0x80, 0x3e, 0x84, 0x1c, 0x23, 0x76, 0x27, 0x74, 0x79, 0xd7, - 0xb8, 0x22, 0x85, 0xaf, 0xc6, 0xc2, 0x75, 0xcd, 0x49, 0xca, 0xf6, 0xe0, 0xc8, 0x82, 0x65, 0x9b, - 0xfa, 0x47, 0x6e, 0x33, 0x69, 0x83, 0xab, 0x52, 0xc7, 0x1b, 0xb1, 0x8e, 0x4d, 0x09, 0x49, 0x37, - 0x41, 0xd1, 0x1e, 0x60, 0xa2, 0x1d, 0x58, 0x14, 0x27, 0xb7, 0xe1, 0xfa, 0x9f, 0x13, 0x9b, 0xbb, - 0xd4, 0x37, 0xae, 0x49, 0x85, 0x66, 0xac, 0xb0, 0xdc, 0xe1, 0x74, 0x27, 0x62, 0x27, 0xb5, 0x15, - 0x70, 0x92, 0x83, 0xee, 0x41, 0xae, 0x89, 0x39, 0xf9, 0x12, 0x77, 0x99, 0x71, 0x5d, 0x2a, 0xb9, - 0x12, 0x2b, 0xd9, 0x52, 0x9c, 0xbe, 0x8d, 0x45, 0x68, 0x64, 0xc0, 0x5c, 0x10, 0xd2, 0x23, 0xd7, - 0x23, 0x86, 0x23, 0x0f, 0x40, 0xf4, 0x88, 0xde, 0x85, 0x55, 0x57, 0x9d, 0xab, 0x46, 0x80, 0xed, - 0x63, 0xdc, 0x24, 0x8d, 0x00, 0xf3, 0x96, 0x71, 0x24, 0x61, 0x48, 0xf3, 0x6a, 0x8a, 0x55, 0xc3, - 0xbc, 0x25, 0x74, 0x9d, 0x90, 0x90, 0x89, 0x9d, 0x34, 0x95, 0x2e, 0xfd, 0x88, 0x8a, 0x30, 0xd5, - 0xea, 0x1c, 0x1a, 0xbe, 0xa4, 0x8a, 0x9f, 0x82, 0xc2, 0x71, 0xd3, 0xa0, 0x8a, 0xc2, 0x71, 0xd3, - 0xfc, 0x2a, 0x0b, 0x57, 0x4e, 0x3b, 0x44, 0xe8, 0x3d, 0x98, 0x23, 0x3e, 0x3e, 0xf4, 0x88, 0x63, - 0x64, 0xe4, 0x1e, 0xd7, 0x4a, 0xea, 0xf2, 0x95, 0xa2, 0xcb, 0x57, 0x7a, 0x48, 0xa9, 0xf7, 0x0c, - 0x7b, 0x1d, 0x62, 0x45, 0x50, 0xf4, 0x29, 0x80, 0x4d, 0xdb, 0x01, 0xf5, 0x89, 0xcf, 0x99, 0xb1, - 0x21, 0x05, 0x6f, 0x9f, 0xef, 0xd8, 0x96, 0x36, 0x7b, 0x82, 0x56, 0x42, 0xc9, 0xda, 0x2f, 0x33, - 0x00, 0x31, 0x0b, 0x5d, 0x81, 0x7c, 0x7c, 0x8b, 0x32, 0x72, 0x43, 0x31, 0x01, 0x6d, 0xc0, 0x4c, - 0xe0, 0x7a, 0x94, 0x1b, 0xab, 0x83, 0x7e, 0xa9, 0x09, 0x72, 0x4f, 0x8f, 0xf4, 0x8b, 0x82, 0x4a, - 0x99, 0x90, 0xbe, 0xe8, 0x1a, 0x17, 0x87, 0x64, 0x04, 0x79, 0x50, 0x46, 0xd0, 0xcc, 0x7f, 0x4c, - 0xc1, 0xf2, 0xd0, 0xc5, 0x99, 0xd0, 0x66, 0x55, 0xb8, 0xa4, 0x2e, 0x5c, 0xc3, 0x6e, 0x11, 0xfb, - 0xb8, 0x71, 0x84, 0x5d, 0xaf, 0x41, 0x03, 0xe2, 0x1b, 0x70, 0xa6, 0x92, 0x15, 0x25, 0xb9, 0x29, - 0x04, 0x1f, 0x63, 0xd7, 0xab, 0x06, 0xc4, 0x47, 0xc7, 0x70, 0x85, 0x76, 0xf8, 0x21, 0xed, 0xf8, - 0x4e, 0x23, 0x0a, 0x26, 0xfa, 0x0d, 0x6d, 0xea, 0x10, 0x63, 0xfe, 0x46, 0xe6, 0xd6, 0xe2, 0xc6, - 0x5b, 0xa7, 0x84, 0x80, 0x52, 0x55, 0xcb, 0x2b, 0x8e, 0xf5, 0x6a, 0xa4, 0x4f, 0x3b, 0x50, 0x91, - 0x9f, 0x52, 0x87, 0xa0, 0xc7, 0x29, 0x1e, 0xbf, 0x79, 0x9a, 0xea, 0x11, 0x6e, 0xc6, 0x63, 0x78, - 0xf9, 0xfd, 0x5e, 0x34, 0x5b, 0x1d, 0x0c, 0x2c, 0xea, 0x7d, 0xfd, 0x3e, 0xd3, 0x60, 0x73, 0x03, - 0x16, 0xfb, 0xf7, 0x85, 0x0a, 0x90, 0x2f, 0xef, 0xee, 0x56, 0x3f, 0x6b, 0x94, 0xf7, 0x9e, 0x17, - 0x2f, 0xa0, 0x65, 0x28, 0x58, 0x95, 0xad, 0x9d, 0xfa, 0xbe, 0xf5, 0xbc, 0x51, 0xdd, 0xdb, 0x7d, - 0x5e, 0xcc, 0x98, 0x3f, 0xc9, 0xc2, 0x6a, 0x5a, 0xa4, 0x9b, 0xd0, 0xd7, 0x3b, 0x29, 0xd6, 0xfa, - 0xff, 0xd3, 0x63, 0xea, 0x28, 0x83, 0x7d, 0x3e, 0x86, 0xc1, 0x1e, 0x24, 0x23, 0xb9, 0xb2, 0xd9, - 0x8d, 0x94, 0xb7, 0xf6, 0x9b, 0x2d, 0x16, 0x31, 0x7f, 0x37, 0x0d, 0x2b, 0x29, 0x21, 0x7b, 0x42, - 0x23, 0x6c, 0x03, 0xd2, 0x75, 0x49, 0x43, 0x15, 0x26, 0x6d, 0xee, 0x31, 0xa3, 0x70, 0xa6, 0x82, - 0xa2, 0x9d, 0x48, 0xad, 0x4f, 0xb9, 0xc7, 0xc4, 0xd5, 0x71, 0x30, 0xc7, 0x09, 0x35, 0x0d, 0xc6, - 0x43, 0xd7, 0xe6, 0xc6, 0xe2, 0xd9, 0x57, 0x47, 0x48, 0xf6, 0x54, 0xd5, 0xa5, 0x18, 0xda, 0x4e, - 0xf1, 0xcf, 0xad, 0x53, 0xd3, 0xd6, 0x28, 0xf7, 0xfc, 0x73, 0x9c, 0xb0, 0x75, 0x0f, 0xe6, 0x6c, - 0x97, 0x63, 0x87, 0x78, 0xda, 0x3b, 0x89, 0x3c, 0xbb, 0xa9, 0x18, 0xfd, 0xbe, 0x89, 0xe0, 0xa8, - 0x02, 0x0b, 0x36, 0x09, 0xb9, 0x4e, 0x94, 0xa1, 0x8e, 0x61, 0x89, 0xa4, 0xb6, 0x49, 0x42, 0xae, - 0xe2, 0x6d, 0xd8, 0xaf, 0x62, 0xde, 0x8e, 0x39, 0xe8, 0x13, 0x00, 0x9f, 0x3a, 0xa4, 0x81, 0x9b, - 0x22, 0xd5, 0x5e, 0x1a, 0x3c, 0x21, 0x7b, 0xd4, 0x21, 0x65, 0xc1, 0x1a, 0x38, 0x21, 0x7e, 0x44, - 0x37, 0x7f, 0x96, 0x85, 0xcb, 0xa7, 0x24, 0xe4, 0x09, 0x4f, 0x4a, 0x2d, 0xc5, 0x1d, 0xef, 0x9e, - 0xab, 0x02, 0xf8, 0x86, 0xc2, 0x4c, 0x13, 0x7b, 0x1e, 0x49, 0x09, 0x33, 0x5b, 0x92, 0x3e, 0x10, - 0x66, 0x14, 0xd8, 0xfc, 0x45, 0x16, 0x8c, 0x51, 0xa5, 0xc4, 0x84, 0x76, 0x78, 0x9a, 0x62, 0x87, - 0x77, 0xce, 0x2e, 0x5c, 0x46, 0x19, 0xc1, 0x1f, 0xc3, 0x08, 0x0f, 0x21, 0xa7, 0x4a, 0x26, 0x1a, - 0x6a, 0x33, 0x24, 0xa2, 0x7b, 0xdd, 0x75, 0x88, 0x8d, 0xc3, 0x1d, 0x0d, 0xe8, 0xb7, 0x47, 0x4f, - 0xce, 0xfc, 0x6b, 0x16, 0xd0, 0x70, 0x5d, 0x34, 0xa1, 0x2d, 0xb6, 0x52, 0x6c, 0xf1, 0xe6, 0x69, - 0xf5, 0xd7, 0x28, 0x2b, 0xfc, 0x69, 0x9c, 0x1b, 0xba, 0x07, 0x4b, 0xae, 0xdf, 0x0c, 0x09, 0x63, - 0x0d, 0x5d, 0xcd, 0xe9, 0xd2, 0xef, 0x8d, 0x64, 0x63, 0x20, 0x01, 0x7a, 0x05, 0xfd, 0xc6, 0x58, - 0x74, 0xfb, 0x98, 0xe8, 0x09, 0x2c, 0x92, 0x7e, 0x75, 0x37, 0xa4, 0xba, 0xd7, 0x63, 0x75, 0x95, - 0xd1, 0xda, 0x0a, 0x24, 0xc9, 0x33, 0x7f, 0x94, 0x01, 0x34, 0x5c, 0xdf, 0x88, 0xf3, 0x6b, 0xd3, - 0x76, 0x9b, 0xfa, 0xda, 0xbc, 0x57, 0x93, 0x37, 0x47, 0xd0, 0x07, 0xce, 0xaf, 0x02, 0x0b, 0xb7, - 0x30, 0xe5, 0xd7, 0x73, 0x14, 0x20, 0x11, 0xd4, 0x7c, 0x02, 0x68, 0xb8, 0x5c, 0x9a, 0x70, 0x09, - 0xe6, 0x01, 0x5c, 0x39, 0xed, 0x68, 0x4d, 0xaa, 0x76, 0x17, 0x56, 0x52, 0xea, 0x83, 0x49, 0xb5, - 0x55, 0xe1, 0x52, 0x7a, 0xe6, 0x9c, 0x54, 0xe1, 0x6f, 0x32, 0xb0, 0x9a, 0x16, 0xed, 0x27, 0x75, - 0xe4, 0x75, 0x98, 0x67, 0xc4, 0x3b, 0x6a, 0x30, 0xb7, 0xe9, 0x13, 0x47, 0x96, 0x7d, 0x39, 0x0b, - 0x04, 0xa9, 0x2e, 0x29, 0xe8, 0x6d, 0x40, 0x76, 0x48, 0x30, 0x27, 0x8d, 0x36, 0x61, 0x2d, 0x5d, - 0x23, 0x1a, 0x0b, 0x12, 0x57, 0x54, 0x9c, 0xa7, 0x84, 0xb5, 0x94, 0xcd, 0xcc, 0x4f, 0xc1, 0x18, - 0x95, 0x4c, 0x5e, 0xc2, 0x84, 0xe9, 0xa9, 0xe5, 0x25, 0x3c, 0x9c, 0x12, 0x9a, 0x27, 0x76, 0x48, - 0x16, 0x56, 0x52, 0xf8, 0x13, 0x06, 0xae, 0xbe, 0x00, 0x93, 0x1d, 0x0c, 0x30, 0x1f, 0xc3, 0x8c, - 0x43, 0x0e, 0x3b, 0x4d, 0x39, 0xa6, 0x58, 0x4c, 0x06, 0xd9, 0x94, 0x15, 0x94, 0x76, 0x69, 0x73, - 0x97, 0x9c, 0x10, 0xcf, 0x52, 0x42, 0xe8, 0x0e, 0x4c, 0x1d, 0xdf, 0x63, 0x46, 0x4d, 0xae, 0xe6, - 0xb5, 0x58, 0xf6, 0x49, 0xe7, 0x90, 0x84, 0x3e, 0xe1, 0x84, 0x59, 0x84, 0xd1, 0x4e, 0x68, 0x13, - 0x26, 0x77, 0x28, 0xd0, 0xe6, 0x03, 0xc8, 0x45, 0x7a, 0x50, 0x0e, 0xa6, 0xf7, 0xaa, 0x7b, 0x95, - 0xe2, 0x05, 0x94, 0x87, 0x99, 0x8a, 0x65, 0x55, 0xad, 0x62, 0x46, 0x10, 0x3f, 0x2b, 0x5b, 0x7b, - 0xc5, 0xac, 0x20, 0x3e, 0xaa, 0x3c, 0x3c, 0xd8, 0x2a, 0x4e, 0x09, 0xe2, 0xce, 0xde, 0xe3, 0x6a, - 0x71, 0xda, 0xfc, 0xed, 0x1c, 0xbc, 0x32, 0xe2, 0x05, 0xa2, 0x47, 0x16, 0x9d, 0x82, 0x2f, 0xba, - 0xff, 0x8c, 0xee, 0xab, 0xd4, 0x50, 0xa8, 0x84, 0x03, 0xb7, 0x64, 0xd3, 0x90, 0x94, 0x4e, 0x6e, - 0x97, 0xca, 0x1a, 0x63, 0xf5, 0xd0, 0xe8, 0x6d, 0x98, 0x22, 0xfe, 0x89, 0x91, 0xbd, 0x31, 0x25, - 0x0d, 0x9b, 0x22, 0x54, 0xf1, 0x4f, 0x9e, 0xe1, 0xd0, 0x12, 0x30, 0xf4, 0x0c, 0x72, 0xad, 0x00, - 0x37, 0x12, 0x03, 0x9e, 0xfb, 0x49, 0x91, 0xc4, 0xb0, 0xaa, 0xa4, 0x87, 0x55, 0xa5, 0x6d, 0x1a, - 0xba, 0x3f, 0xa4, 0x3e, 0xc7, 0x5e, 0x8d, 0x3a, 0x65, 0x0d, 0x20, 0xa1, 0xaa, 0xab, 0x5a, 0x01, - 0x96, 0xeb, 0x7f, 0x0b, 0x96, 0xdd, 0xb6, 0xec, 0xc2, 0x3b, 0xa2, 0x25, 0x57, 0x37, 0x63, 0x5a, - 0x3a, 0x6d, 0x49, 0x32, 0x6a, 0x1d, 0xcf, 0xd3, 0x5d, 0xc4, 0x77, 0xa1, 0x20, 0x8b, 0x27, 0x46, - 0x3c, 0x95, 0x27, 0x67, 0xe4, 0xda, 0xef, 0x9c, 0xe9, 0x06, 0x59, 0x57, 0xd5, 0xb5, 0x54, 0xc5, - 0xe7, 0x61, 0xd7, 0x5a, 0xf0, 0x13, 0x24, 0x74, 0x00, 0x17, 0x03, 0xea, 0x34, 0x1c, 0x97, 0x85, - 0x9d, 0x40, 0x24, 0xf7, 0xc6, 0x61, 0xc7, 0x69, 0x12, 0x6e, 0xcc, 0x0e, 0x3a, 0xba, 0x46, 0x9d, - 0x47, 0x3d, 0xd4, 0x43, 0x09, 0x92, 0x1b, 0x5a, 0x09, 0x86, 0x19, 0xe8, 0x07, 0xb0, 0x24, 0xd4, - 0x62, 0xdf, 0xa7, 0x1c, 0x0b, 0x3a, 0x33, 0xe6, 0xe4, 0x92, 0xdf, 0x3f, 0x7b, 0xc9, 0xc2, 0x66, - 0xb1, 0x9c, 0x5a, 0xf4, 0x62, 0xd0, 0x47, 0x44, 0x25, 0x58, 0x09, 0x42, 0x97, 0x8a, 0x4a, 0xb9, - 0x61, 0x7b, 0x98, 0x31, 0x39, 0xf8, 0x32, 0x72, 0xd2, 0x7c, 0xcb, 0x11, 0x6b, 0x53, 0x70, 0xf6, - 0x70, 0x9b, 0xa0, 0x32, 0x2c, 0x85, 0x04, 0x3b, 0xae, 0x2f, 0xf2, 0x61, 0x10, 0xd2, 0x43, 0x62, - 0xe4, 0xe5, 0x06, 0x8d, 0x78, 0x3d, 0x56, 0x04, 0xa8, 0x09, 0xbe, 0xb5, 0x18, 0xf6, 0x3d, 0xa3, - 0xff, 0x83, 0x42, 0x48, 0x02, 0xcf, 0xb5, 0x71, 0xc3, 0xa6, 0x1d, 0x9f, 0xcb, 0xd4, 0x55, 0xb0, - 0x16, 0x34, 0x71, 0x53, 0xd0, 0xd0, 0x6d, 0xc8, 0x87, 0xd1, 0x66, 0x64, 0x38, 0x9c, 0xdf, 0x58, - 0x49, 0xbe, 0x41, 0xb3, 0xac, 0x18, 0x85, 0xee, 0x42, 0x8e, 0x9e, 0x90, 0xd0, 0xc3, 0x5d, 0x66, - 0x38, 0xfa, 0x48, 0xf6, 0x24, 0x8e, 0xef, 0xb1, 0xea, 0xa1, 0xc8, 0x4f, 0x55, 0x05, 0xb1, 0x7a, - 0xd8, 0xb5, 0x4f, 0x60, 0x79, 0xc8, 0xb9, 0xa8, 0x08, 0x53, 0xc7, 0xa4, 0xab, 0x8b, 0x0b, 0xf1, - 0x13, 0xad, 0xc2, 0xcc, 0x89, 0x88, 0x12, 0x3a, 0x1e, 0xa8, 0x87, 0x8f, 0xb2, 0xf7, 0x32, 0x6b, - 0x65, 0x91, 0xab, 0x86, 0x4c, 0x3d, 0x8e, 0x0a, 0xf3, 0xc7, 0xd3, 0x70, 0xf9, 0x94, 0x9a, 0x24, - 0x11, 0x15, 0x61, 0x9c, 0xb4, 0xb2, 0x0f, 0x0b, 0x51, 0x29, 0xc4, 0xbb, 0x41, 0x34, 0x4e, 0xb8, - 0x7d, 0xae, 0x3a, 0x28, 0xe2, 0xed, 0x77, 0x03, 0x62, 0xcd, 0xbb, 0xf1, 0x03, 0x2a, 0x43, 0xc1, - 0xa3, 0xd8, 0x69, 0x1c, 0x62, 0x0f, 0xfb, 0x36, 0x09, 0x75, 0x3f, 0x98, 0x98, 0xc6, 0xec, 0x52, - 0xec, 0x3c, 0xd4, 0x5c, 0x55, 0xf9, 0x5b, 0x0b, 0x5e, 0x82, 0x86, 0xee, 0xc3, 0x3c, 0x73, 0x58, - 0x23, 0x0a, 0xcd, 0xc5, 0x33, 0x43, 0x33, 0x30, 0x87, 0x55, 0x74, 0x74, 0xfe, 0x02, 0x2e, 0x92, - 0x17, 0x9c, 0x84, 0x3e, 0xf6, 0xfa, 0x86, 0x1c, 0xc6, 0xb2, 0xdc, 0xde, 0xfd, 0xf3, 0x6d, 0xaf, - 0x92, 0xa6, 0xc2, 0x4a, 0xd7, 0x6c, 0xde, 0x82, 0xf9, 0x84, 0x39, 0x44, 0x8c, 0xdd, 0xa9, 0xef, - 0xef, 0x54, 0x8b, 0x17, 0xd0, 0x22, 0xc0, 0x93, 0x83, 0x87, 0x15, 0x6b, 0xaf, 0xb2, 0x5f, 0xa9, - 0x17, 0x33, 0xe6, 0x87, 0x70, 0x31, 0x55, 0x73, 0x7f, 0xd8, 0xde, 0xad, 0x6e, 0x96, 0x77, 0x8b, - 0x19, 0x34, 0x0f, 0x73, 0x9b, 0xbb, 0x07, 0xf5, 0xfd, 0x8a, 0x55, 0xcc, 0x9a, 0x75, 0x58, 0xab, - 0x9c, 0xe7, 0x08, 0x8c, 0x95, 0x18, 0x7f, 0x95, 0x81, 0xb5, 0xd8, 0x1d, 0xae, 0xdf, 0xec, 0x29, - 0x17, 0x6e, 0x99, 0xb4, 0x5e, 0x19, 0x3a, 0x02, 0xf3, 0xe3, 0x1e, 0x01, 0xf3, 0x5f, 0x59, 0x40, - 0xc3, 0x20, 0xf4, 0x3e, 0xcc, 0x04, 0x34, 0xe4, 0xcc, 0xc8, 0xc8, 0x2b, 0x7c, 0x3d, 0x2d, 0xab, - 0xd4, 0x49, 0x78, 0xe2, 0xda, 0xa4, 0x46, 0x43, 0x6e, 0x29, 0xb4, 0xc8, 0xd8, 0xb6, 0xd7, 0x61, - 0x9c, 0x84, 0x3b, 0x35, 0x99, 0x5d, 0xf2, 0x56, 0x4c, 0x40, 0x37, 0x60, 0x3e, 0xf2, 0xeb, 0x4e, - 0x8d, 0xc9, 0xa0, 0x9f, 0xb7, 0x92, 0x24, 0x74, 0x0b, 0x96, 0x18, 0x61, 0xcc, 0xa5, 0x7e, 0x94, - 0xe7, 0x8c, 0x39, 0x95, 0x42, 0x06, 0xc8, 0xe8, 0x26, 0x2c, 0x26, 0xf7, 0xb1, 0x53, 0xd3, 0xc1, - 0x72, 0x80, 0x8a, 0x3e, 0x02, 0x23, 0x49, 0xa9, 0xcb, 0x28, 0x65, 0x61, 0xbf, 0x49, 0x98, 0x91, - 0x97, 0x0b, 0x18, 0xc9, 0x47, 0x26, 0x2c, 0x44, 0x8b, 0x13, 0x51, 0x57, 0x5e, 0xfa, 0xbc, 0xd5, - 0x47, 0x43, 0xef, 0x8d, 0xba, 0x05, 0xf3, 0x12, 0x3c, 0xe2, 0x20, 0x7f, 0x95, 0x81, 0xe2, 0x60, - 0x2c, 0x14, 0xd5, 0x27, 0x0e, 0xdc, 0x46, 0x34, 0xa3, 0x56, 0x11, 0x0b, 0x70, 0xe0, 0x3e, 0xd3, - 0x63, 0x6a, 0x04, 0xd3, 0xc7, 0xae, 0xef, 0xe8, 0xb8, 0x25, 0x7f, 0x0b, 0x9a, 0x4c, 0x15, 0xca, - 0xd8, 0xf2, 0x37, 0x7a, 0x00, 0x73, 0x01, 0xe6, 0x76, 0x8b, 0x30, 0x63, 0x5a, 0xba, 0xef, 0xf5, - 0xd1, 0x11, 0xb8, 0x54, 0xc3, 0xbc, 0xa5, 0xeb, 0x2e, 0x2d, 0xb4, 0x76, 0x1d, 0xf2, 0x3d, 0xaa, - 0x78, 0x81, 0x9c, 0xab, 0xab, 0xe5, 0xc8, 0xdf, 0xe6, 0xcf, 0x67, 0xa0, 0xd0, 0xf7, 0x51, 0x07, - 0xed, 0xa7, 0x7e, 0x85, 0xc9, 0x0c, 0x37, 0x7c, 0x09, 0xa1, 0x92, 0xde, 0x97, 0xfe, 0x2e, 0x94, - 0xf2, 0x11, 0xa6, 0x06, 0x45, 0x3d, 0x86, 0x8d, 0x87, 0x71, 0xd9, 0x71, 0x74, 0x2e, 0x29, 0xf1, - 0x5e, 0xd7, 0x81, 0xca, 0x89, 0x6f, 0x2c, 0x53, 0xe3, 0x68, 0x3a, 0xe3, 0x5b, 0xcb, 0xf4, 0x38, - 0xba, 0x86, 0xbf, 0xb5, 0xa4, 0x34, 0xcb, 0xaa, 0x24, 0x3a, 0xa7, 0xc6, 0xc1, 0x66, 0x79, 0x77, - 0xa8, 0x59, 0x9e, 0x1d, 0x47, 0x5d, 0x7f, 0xb7, 0xbc, 0x86, 0xa1, 0xd0, 0xc7, 0x4f, 0x7e, 0x49, - 0xc9, 0xf4, 0x7f, 0x49, 0xb9, 0xdb, 0xfb, 0x0a, 0x98, 0x95, 0x59, 0xe0, 0xda, 0xa8, 0x17, 0x0e, - 0x7c, 0x0c, 0xbc, 0x07, 0xb3, 0x5a, 0x77, 0x1c, 0xa0, 0x17, 0x20, 0x77, 0x50, 0x7b, 0x54, 0xde, - 0xdf, 0xd9, 0xdb, 0x52, 0x31, 0x7a, 0xbb, 0x52, 0xde, 0xdd, 0xdf, 0x7e, 0xae, 0xaa, 0x6b, 0x55, - 0x72, 0x4f, 0x99, 0xff, 0xce, 0x40, 0xbe, 0x57, 0x88, 0xa0, 0x0f, 0x60, 0xd6, 0x73, 0xdb, 0x6e, - 0x22, 0x70, 0x0d, 0x57, 0x2b, 0xa5, 0x5d, 0x89, 0x50, 0x95, 0x98, 0x86, 0xa3, 0x6f, 0x43, 0x2e, - 0x24, 0x5f, 0x74, 0x08, 0xe3, 0x4c, 0x57, 0xd2, 0xaf, 0xa5, 0x89, 0x5a, 0x1a, 0xa3, 0x84, 0x7b, - 0x22, 0x6b, 0x1f, 0xc2, 0x7c, 0x42, 0xeb, 0x58, 0x75, 0xcb, 0x7d, 0x28, 0xf4, 0x69, 0x1d, 0xab, - 0x62, 0xf9, 0x4f, 0x16, 0x16, 0xfb, 0x0b, 0x3d, 0x74, 0x0b, 0xa6, 0xc9, 0x0b, 0x62, 0xeb, 0xcb, - 0xb7, 0x9a, 0x18, 0x8f, 0xbc, 0x20, 0x76, 0x59, 0x4e, 0xbc, 0x2c, 0x89, 0x40, 0xb7, 0x61, 0xae, - 0xc5, 0x79, 0xb0, 0x45, 0xb8, 0xbe, 0x55, 0x89, 0x6f, 0xb6, 0xdb, 0xfb, 0xfb, 0xb5, 0x2d, 0xc2, - 0x35, 0x3e, 0xc2, 0xa1, 0x0f, 0x20, 0xcf, 0xed, 0xa0, 0x4e, 0xed, 0x63, 0xc2, 0xf5, 0x05, 0x7a, - 0x35, 0x31, 0x17, 0xdf, 0xac, 0x29, 0x96, 0x16, 0x8b, 0xb1, 0xe8, 0x5d, 0x58, 0x11, 0x81, 0xdb, - 0xc5, 0xde, 0x23, 0xe2, 0xe1, 0x6e, 0x9d, 0xd8, 0xd4, 0x77, 0xd4, 0xb7, 0xe2, 0x19, 0x2b, 0x8d, - 0x25, 0x22, 0x3c, 0x77, 0xdb, 0x84, 0x76, 0x78, 0x04, 0x9e, 0x91, 0xe0, 0x01, 0x2a, 0x7a, 0x1d, - 0x0a, 0x01, 0x09, 0x5d, 0xea, 0x44, 0xb0, 0x59, 0x09, 0xeb, 0x27, 0xa2, 0xb7, 0xa0, 0xc8, 0x3a, - 0xb6, 0x2d, 0x4a, 0x87, 0x56, 0x48, 0x58, 0x8b, 0x7a, 0x8e, 0x4c, 0x2d, 0x33, 0xd6, 0x10, 0x5d, - 0x60, 0x8f, 0xb0, 0xeb, 0x75, 0x42, 0x12, 0x63, 0x73, 0x0a, 0x3b, 0x48, 0x37, 0x6f, 0x02, 0xc4, - 0x76, 0x15, 0x17, 0x43, 0xa4, 0x66, 0xec, 0x3b, 0xf2, 0xfc, 0xe5, 0xad, 0xe8, 0xd1, 0xfc, 0x69, - 0x06, 0x0a, 0x7d, 0x36, 0x4d, 0x0b, 0xac, 0x82, 0xd6, 0xa2, 0x8c, 0x47, 0xd1, 0x5c, 0xfc, 0x46, - 0x97, 0x60, 0x96, 0xd9, 0x2d, 0xd2, 0x26, 0xba, 0x9b, 0xd2, 0x4f, 0xe8, 0x2e, 0xcc, 0x0b, 0xaf, - 0x6c, 0x13, 0xec, 0x90, 0x90, 0xe9, 0x78, 0xb1, 0xda, 0xef, 0x41, 0xc5, 0xb4, 0x92, 0x40, 0xf3, - 0x2e, 0x40, 0xcc, 0xea, 0xe5, 0x8f, 0x4c, 0x22, 0x7f, 0xa4, 0x1e, 0x37, 0xf3, 0x0d, 0x58, 0x1a, - 0xf0, 0x6f, 0x6f, 0xb9, 0xd9, 0x78, 0xb9, 0xe6, 0x1f, 0x33, 0xf0, 0xca, 0x88, 0xde, 0x4a, 0xf4, - 0x1c, 0x6d, 0xd7, 0x6f, 0xe0, 0x13, 0xec, 0x7a, 0xa2, 0x88, 0x94, 0x6f, 0x2d, 0x58, 0x0b, 0x6d, - 0xd7, 0x2f, 0x47, 0x34, 0x54, 0x15, 0x21, 0x5a, 0xf7, 0x85, 0xea, 0x58, 0xde, 0x49, 0x54, 0x1f, - 0xbd, 0x7f, 0x47, 0x94, 0x82, 0xe3, 0xa6, 0x20, 0xb0, 0x52, 0x9b, 0x70, 0x2c, 0xea, 0x91, 0x5d, - 0x7c, 0x48, 0xbc, 0xa8, 0x7f, 0xb0, 0x7a, 0x4a, 0xd0, 0x9b, 0xb0, 0xd4, 0xc6, 0x2f, 0x1a, 0x1d, - 0x3f, 0x7e, 0xef, 0x94, 0x7c, 0xef, 0x62, 0x1b, 0xbf, 0x38, 0x88, 0xa9, 0xe6, 0x03, 0x00, 0x95, - 0x1b, 0x9f, 0x12, 0x8e, 0x7b, 0x96, 0x99, 0x49, 0x58, 0xa6, 0x6f, 0x22, 0x31, 0x3b, 0x30, 0x91, - 0x30, 0x7f, 0x3f, 0x0b, 0xb9, 0x7d, 0xc2, 0xb8, 0xe8, 0x04, 0xd1, 0x3b, 0xaa, 0x2b, 0xff, 0x58, - 0xba, 0xe5, 0x72, 0xf2, 0xdb, 0x91, 0x02, 0x88, 0xa6, 0x5c, 0x45, 0x11, 0xd9, 0x96, 0xf7, 0x75, - 0x5a, 0xb5, 0x73, 0x75, 0x5a, 0x29, 0x4d, 0xe0, 0xa7, 0x63, 0x36, 0x81, 0xc9, 0x61, 0xc0, 0xb3, - 0x6f, 0x70, 0x18, 0x30, 0xb2, 0x0d, 0xff, 0xec, 0xa5, 0xda, 0xf0, 0xe4, 0x8c, 0x24, 0x37, 0xd6, - 0x8c, 0xa4, 0x3a, 0xdc, 0xc0, 0x7f, 0x4f, 0x7a, 0xe6, 0x66, 0x8a, 0x67, 0xce, 0xd3, 0xb1, 0xef, - 0x0c, 0x8e, 0x30, 0xbe, 0x3f, 0x58, 0x69, 0xf5, 0xd4, 0x9d, 0x35, 0xb3, 0x98, 0xb4, 0x63, 0xbe, - 0x0b, 0xb9, 0xe8, 0x0c, 0xfd, 0x8f, 0x1b, 0xe5, 0x97, 0x6e, 0xd6, 0x1f, 0x16, 0xff, 0xfc, 0xf5, - 0xb5, 0xcc, 0x5f, 0xbe, 0xbe, 0x96, 0xf9, 0xdb, 0xd7, 0xd7, 0x32, 0xbf, 0xfe, 0xfb, 0xb5, 0x0b, - 0x87, 0xb3, 0xb2, 0xdd, 0xbc, 0xf3, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf1, 0x4e, 0xd0, 0x35, - 0x87, 0x25, 0x00, 0x00, -} - -func (m *IstioControlPlane) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *IstioControlPlane) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Spec != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Spec.Size())) - n1, err := m.Spec.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n1 - } - if m.Status != nil { - dAtA[i] = 0x22 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Status.Size())) - n2, err := m.Status.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n2 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *IstioControlPlaneSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *IstioControlPlaneSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.DefaultNamespace) > 0 { - dAtA[i] = 0x2a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.DefaultNamespace))) - i += copy(dAtA[i:], m.DefaultNamespace) - } - if m.TrafficManagement != nil { - dAtA[i] = 0xca - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.TrafficManagement.Size())) - n3, err := m.TrafficManagement.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n3 - } - if m.Policy != nil { - dAtA[i] = 0xd2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Policy.Size())) - n4, err := m.Policy.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n4 - } - if m.Telemetry != nil { - dAtA[i] = 0xda - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Telemetry.Size())) - n5, err := m.Telemetry.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n5 - } - if m.Security != nil { - dAtA[i] = 0xe2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Security.Size())) - n6, err := m.Security.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n6 - } - if m.ConfigManagement != nil { - dAtA[i] = 0xea - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.ConfigManagement.Size())) - n7, err := m.ConfigManagement.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n7 - } - if m.AutoInjection != nil { - dAtA[i] = 0xf2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.AutoInjection.Size())) - n8, err := m.AutoInjection.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n8 - } - if m.Gateways != nil { - dAtA[i] = 0xfa - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Gateways.Size())) - n9, err := m.Gateways.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n9 - } - if len(m.Profile) > 0 { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x6 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Profile))) - i += copy(dAtA[i:], m.Profile) - } - if len(m.InstallPackagePath) > 0 { - dAtA[i] = 0xb2 - i++ - dAtA[i] = 0x6 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.InstallPackagePath))) - i += copy(dAtA[i:], m.InstallPackagePath) - } - if len(m.Version) > 0 { - dAtA[i] = 0xba - i++ - dAtA[i] = 0x6 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Version))) - i += copy(dAtA[i:], m.Version) - } - if len(m.Hub) > 0 { - dAtA[i] = 0xf2 - i++ - dAtA[i] = 0x6 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Hub))) - i += copy(dAtA[i:], m.Hub) - } - if len(m.Tag) > 0 { - dAtA[i] = 0xfa - i++ - dAtA[i] = 0x6 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Tag))) - i += copy(dAtA[i:], m.Tag) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *TrafficManagementFeatureSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *TrafficManagementFeatureSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Enabled != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Enabled.Size())) - n10, err := m.Enabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n10 - } - if m.Components != nil { - dAtA[i] = 0x92 - i++ - dAtA[i] = 0x3 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Components.Size())) - n11, err := m.Components.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n11 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *TrafficManagementFeatureSpec_Components) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *TrafficManagementFeatureSpec_Components) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Namespace) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.Pilot != nil { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Pilot.Size())) - n12, err := m.Pilot.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n12 - } - if m.Proxy != nil { - dAtA[i] = 0xaa - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Proxy.Size())) - n13, err := m.Proxy.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n13 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *PolicyFeatureSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *PolicyFeatureSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Enabled != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Enabled.Size())) - n14, err := m.Enabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n14 - } - if m.PolicyCheckFailOpen != nil { - dAtA[i] = 0x52 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.PolicyCheckFailOpen.Size())) - n15, err := m.PolicyCheckFailOpen.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n15 - } - if m.OutboundTrafficPolicyMode != 0 { - dAtA[i] = 0x58 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.OutboundTrafficPolicyMode)) - } - if m.Components != nil { - dAtA[i] = 0x92 - i++ - dAtA[i] = 0x3 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Components.Size())) - n16, err := m.Components.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n16 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *PolicyFeatureSpec_Components) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *PolicyFeatureSpec_Components) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Namespace) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.Policy != nil { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Policy.Size())) - n17, err := m.Policy.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n17 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *TelemetryFeatureSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *TelemetryFeatureSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Enabled != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Enabled.Size())) - n18, err := m.Enabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n18 - } - if m.Components != nil { - dAtA[i] = 0x92 - i++ - dAtA[i] = 0x3 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Components.Size())) - n19, err := m.Components.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n19 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *TelemetryFeatureSpec_Components) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *TelemetryFeatureSpec_Components) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Namespace) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.Telemetry != nil { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Telemetry.Size())) - n20, err := m.Telemetry.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n20 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *SecurityFeatureSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *SecurityFeatureSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Enabled != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Enabled.Size())) - n21, err := m.Enabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n21 - } - if m.ControlPlaneMtls != nil { - dAtA[i] = 0x6a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.ControlPlaneMtls.Size())) - n22, err := m.ControlPlaneMtls.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n22 - } - if m.DataPlaneMtlsStrict != nil { - dAtA[i] = 0x72 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.DataPlaneMtlsStrict.Size())) - n23, err := m.DataPlaneMtlsStrict.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n23 - } - if m.Components != nil { - dAtA[i] = 0x92 - i++ - dAtA[i] = 0x3 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Components.Size())) - n24, err := m.Components.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n24 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *SecurityFeatureSpec_Components) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *SecurityFeatureSpec_Components) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Namespace) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.Citadel != nil { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Citadel.Size())) - n25, err := m.Citadel.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n25 - } - if m.CertManager != nil { - dAtA[i] = 0xaa - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.CertManager.Size())) - n26, err := m.CertManager.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n26 - } - if m.NodeAgent != nil { - dAtA[i] = 0xb2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.NodeAgent.Size())) - n27, err := m.NodeAgent.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n27 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *ConfigManagementFeatureSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ConfigManagementFeatureSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Enabled != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Enabled.Size())) - n28, err := m.Enabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n28 - } - if m.Components != nil { - dAtA[i] = 0x92 - i++ - dAtA[i] = 0x3 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Components.Size())) - n29, err := m.Components.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n29 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *ConfigManagementFeatureSpec_Components) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ConfigManagementFeatureSpec_Components) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Namespace) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.Galley != nil { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Galley.Size())) - n30, err := m.Galley.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n30 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *AutoInjectionFeatureSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *AutoInjectionFeatureSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Enabled != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Enabled.Size())) - n31, err := m.Enabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n31 - } - if m.Components != nil { - dAtA[i] = 0x92 - i++ - dAtA[i] = 0x3 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Components.Size())) - n32, err := m.Components.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n32 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *AutoInjectionFeatureSpec_Components) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *AutoInjectionFeatureSpec_Components) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Namespace) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.Injector != nil { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Injector.Size())) - n33, err := m.Injector.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n33 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *GatewayFeatureSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *GatewayFeatureSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Enabled != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Enabled.Size())) - n34, err := m.Enabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n34 - } - if m.Components != nil { - dAtA[i] = 0x92 - i++ - dAtA[i] = 0x3 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Components.Size())) - n35, err := m.Components.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n35 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *GatewayFeatureSpec_Components) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *GatewayFeatureSpec_Components) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Namespace) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.IngressGateway != nil { - dAtA[i] = 0xfa - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.IngressGateway.Size())) - n36, err := m.IngressGateway.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n36 - } - if m.EgressGateway != nil { - dAtA[i] = 0x82 - i++ - dAtA[i] = 0x2 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.EgressGateway.Size())) - n37, err := m.EgressGateway.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n37 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *PilotComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *PilotComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n38, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n38 - } - if m.Sidecar != nil { - dAtA[i] = 0x52 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Sidecar.Size())) - n39, err := m.Sidecar.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n39 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *ProxyComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ProxyComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n40, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n40 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *SidecarInjectorComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *SidecarInjectorComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n41, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n41 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *PolicyComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *PolicyComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n42, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n42 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *TelemetryComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *TelemetryComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n43, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n43 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *CitadelComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *CitadelComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n44, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n44 - } - if m.SelfSigned { - dAtA[i] = 0x58 - i++ - if m.SelfSigned { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i++ - } - if m.CreateMeshPolicy { - dAtA[i] = 0x60 - i++ - if m.CreateMeshPolicy { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } - i++ - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *CertManagerComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *CertManagerComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n45, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n45 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *NodeAgentComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *NodeAgentComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n46, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n46 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *GalleyComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *GalleyComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n47, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n47 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *CommonComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *CommonComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Enabled != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Enabled.Size())) - n48, err := m.Enabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n48 - } - if len(m.Namespace) > 0 { - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.Debug != 0 { - dAtA[i] = 0x18 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Debug)) - } - if m.K8S != nil { - dAtA[i] = 0x82 - i++ - dAtA[i] = 0x5 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.K8S.Size())) - n49, err := m.K8S.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n49 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *KubernetesResourcesSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *KubernetesResourcesSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Affinity != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Affinity.Size())) - n50, err := m.Affinity.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n50 - } - if len(m.Env) > 0 { - for _, msg := range m.Env { - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(msg.Size())) - n, err := msg.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n - } - } - if m.HpaSpec != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.HpaSpec.Size())) - n51, err := m.HpaSpec.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n51 - } - if len(m.ImagePullPolicy) > 0 { - dAtA[i] = 0x22 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.ImagePullPolicy))) - i += copy(dAtA[i:], m.ImagePullPolicy) - } - if len(m.NodeSelector) > 0 { - for k, _ := range m.NodeSelector { - dAtA[i] = 0x2a - i++ - v := m.NodeSelector[k] - mapSize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(v))) - i += copy(dAtA[i:], v) - } - } - if m.PodDisruptionBudget != nil { - dAtA[i] = 0x32 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.PodDisruptionBudget.Size())) - n52, err := m.PodDisruptionBudget.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n52 - } - if len(m.PodAnnotations) > 0 { - for k, _ := range m.PodAnnotations { - dAtA[i] = 0x3a - i++ - v := m.PodAnnotations[k] - mapSize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(v))) - i += copy(dAtA[i:], v) - } - } - if len(m.PriorityClassName) > 0 { - dAtA[i] = 0x42 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.PriorityClassName))) - i += copy(dAtA[i:], m.PriorityClassName) - } - if m.ReadinessProbe != nil { - dAtA[i] = 0x4a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.ReadinessProbe.Size())) - n53, err := m.ReadinessProbe.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n53 - } - if m.ReplicaCount != 0 { - dAtA[i] = 0x50 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.ReplicaCount)) - } - if m.Resources != nil { - dAtA[i] = 0x5a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Resources.Size())) - n54, err := m.Resources.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n54 - } - if len(m.Overlays) > 0 { - for _, msg := range m.Overlays { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x6 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(msg.Size())) - n, err := msg.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n - } - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *IngressGatewayComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *IngressGatewayComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0x52 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n55, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n55 - } - if m.IngressType != 0 { - dAtA[i] = 0x58 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.IngressType)) - } - if m.LoadBalancer != nil { - dAtA[i] = 0x6a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.LoadBalancer.Size())) - n56, err := m.LoadBalancer.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n56 - } - if m.SdsEnabled != nil { - dAtA[i] = 0x82 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.SdsEnabled.Size())) - n57, err := m.SdsEnabled.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n57 - } - if m.ExternalTrafficPolicy != 0 { - dAtA[i] = 0x88 - i++ - dAtA[i] = 0x1 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.ExternalTrafficPolicy)) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *EgressGatewayComponentSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *EgressGatewayComponentSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n58, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n58 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *LoadBalancingGatewayConfig) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *LoadBalancingGatewayConfig) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Common != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Common.Size())) - n59, err := m.Common.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n59 - } - if m.LoadBalancer != nil { - dAtA[i] = 0x5a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.LoadBalancer.Size())) - n60, err := m.LoadBalancer.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n60 - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *LoadBalancerConfig) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *LoadBalancerConfig) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Ports) > 0 { - for _, msg := range m.Ports { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(msg.Size())) - n, err := msg.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n - } - } - if len(m.ClusterIP) > 0 { - dAtA[i] = 0x1a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.ClusterIP))) - i += copy(dAtA[i:], m.ClusterIP) - } - if len(m.ExternalIPs) > 0 { - for _, s := range m.ExternalIPs { - dAtA[i] = 0x2a - i++ - l = len(s) - for l >= 1<<7 { - dAtA[i] = uint8(uint64(l)&0x7f | 0x80) - l >>= 7 - i++ - } - dAtA[i] = uint8(l) - i++ - i += copy(dAtA[i:], s) - } - } - if len(m.SessionAffinity) > 0 { - dAtA[i] = 0x3a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.SessionAffinity))) - i += copy(dAtA[i:], m.SessionAffinity) - } - if len(m.LoadBalancerIP) > 0 { - dAtA[i] = 0x42 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.LoadBalancerIP))) - i += copy(dAtA[i:], m.LoadBalancerIP) - } - if len(m.LoadBalancerSourceRanges) > 0 { - for _, s := range m.LoadBalancerSourceRanges { - dAtA[i] = 0x4a - i++ - l = len(s) - for l >= 1<<7 { - dAtA[i] = uint8(uint64(l)&0x7f | 0x80) - l >>= 7 - i++ - } - dAtA[i] = uint8(l) - i++ - i += copy(dAtA[i:], s) - } - } - if len(m.ExternalName) > 0 { - dAtA[i] = 0x52 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.ExternalName))) - i += copy(dAtA[i:], m.ExternalName) - } - if len(m.ExternalTrafficPolicy) > 0 { - dAtA[i] = 0x5a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.ExternalTrafficPolicy))) - i += copy(dAtA[i:], m.ExternalTrafficPolicy) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *K8SObjectOverlay) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *K8SObjectOverlay) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.ApiVersion) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.ApiVersion))) - i += copy(dAtA[i:], m.ApiVersion) - } - if len(m.Kind) > 0 { - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Kind))) - i += copy(dAtA[i:], m.Kind) - } - if len(m.Name) > 0 { - dAtA[i] = 0x1a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Name))) - i += copy(dAtA[i:], m.Name) - } - if len(m.Patches) > 0 { - for _, msg := range m.Patches { - dAtA[i] = 0x22 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(msg.Size())) - n, err := msg.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n - } - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *K8SObjectOverlay_PathValue) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *K8SObjectOverlay_PathValue) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Path) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Path))) - i += copy(dAtA[i:], m.Path) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *InstallStatus) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *InstallStatus) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.TrafficManagement != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.TrafficManagement.Size())) - n61, err := m.TrafficManagement.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n61 - } - if m.PolicyTelemetry != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.PolicyTelemetry.Size())) - n62, err := m.PolicyTelemetry.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n62 - } - if m.Security != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Security.Size())) - n63, err := m.Security.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n63 - } - if m.ConfigManagement != nil { - dAtA[i] = 0x22 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.ConfigManagement.Size())) - n64, err := m.ConfigManagement.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n64 - } - if len(m.IngressGateway) > 0 { - for _, msg := range m.IngressGateway { - dAtA[i] = 0x2a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(msg.Size())) - n, err := msg.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n - } - } - if len(m.EgressGateway) > 0 { - for _, msg := range m.EgressGateway { - dAtA[i] = 0x32 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(msg.Size())) - n, err := msg.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n - } - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *InstallStatus_VersionStatus) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *InstallStatus_VersionStatus) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Version) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Version))) - i += copy(dAtA[i:], m.Version) - } - if m.Status != 0 { - dAtA[i] = 0x10 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Status)) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *Resources) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *Resources) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Limits) > 0 { - for k, _ := range m.Limits { - dAtA[i] = 0xa - i++ - v := m.Limits[k] - mapSize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(v))) - i += copy(dAtA[i:], v) - } - } - if len(m.Requests) > 0 { - for k, _ := range m.Requests { - dAtA[i] = 0x12 - i++ - v := m.Requests[k] - mapSize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(v))) - i += copy(dAtA[i:], v) - } - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *ReadinessProbe) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ReadinessProbe) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Exec != nil { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Exec.Size())) - n65, err := m.Exec.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n65 - } - if m.HttpGet != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.HttpGet.Size())) - n66, err := m.HttpGet.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n66 - } - if m.TcpSocket != nil { - dAtA[i] = 0x1a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.TcpSocket.Size())) - n67, err := m.TcpSocket.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n67 - } - if m.InitialDelaySeconds != 0 { - dAtA[i] = 0x20 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.InitialDelaySeconds)) - } - if m.TimeoutSeconds != 0 { - dAtA[i] = 0x28 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.TimeoutSeconds)) - } - if m.PeriodSeconds != 0 { - dAtA[i] = 0x30 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.PeriodSeconds)) - } - if m.SuccessThreshold != 0 { - dAtA[i] = 0x38 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.SuccessThreshold)) - } - if m.FailureThreshold != 0 { - dAtA[i] = 0x40 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.FailureThreshold)) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *ExecAction) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ExecAction) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Command) > 0 { - for _, s := range m.Command { - dAtA[i] = 0xa - i++ - l = len(s) - for l >= 1<<7 { - dAtA[i] = uint8(uint64(l)&0x7f | 0x80) - l >>= 7 - i++ - } - dAtA[i] = uint8(l) - i++ - i += copy(dAtA[i:], s) - } - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *HTTPGetAction) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *HTTPGetAction) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Path) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Path))) - i += copy(dAtA[i:], m.Path) - } - if len(m.Host) > 0 { - dAtA[i] = 0x1a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Host))) - i += copy(dAtA[i:], m.Host) - } - if len(m.Scheme) > 0 { - dAtA[i] = 0x22 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Scheme))) - i += copy(dAtA[i:], m.Scheme) - } - if len(m.HttpHeaders) > 0 { - for _, msg := range m.HttpHeaders { - dAtA[i] = 0x2a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(msg.Size())) - n, err := msg.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n - } - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *HTTPHeader) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *HTTPHeader) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Name) > 0 { - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Name))) - i += copy(dAtA[i:], m.Name) - } - if len(m.Value) > 0 { - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Value))) - i += copy(dAtA[i:], m.Value) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *TCPSocketAction) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *TCPSocketAction) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Host) > 0 { - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Host))) - i += copy(dAtA[i:], m.Host) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *PodDisruptionBudgetSpec) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *PodDisruptionBudgetSpec) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.MinAvailable != 0 { - dAtA[i] = 0x8 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.MinAvailable)) - } - if m.Selector != nil { - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Selector.Size())) - n68, err := m.Selector.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n68 - } - if m.MaxUnavailable != 0 { - dAtA[i] = 0x18 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.MaxUnavailable)) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *ObjectMeta) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ObjectMeta) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if len(m.Name) > 0 { - dAtA[i] = 0x2a - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Name))) - i += copy(dAtA[i:], m.Name) - } - if len(m.Namespace) > 0 { - dAtA[i] = 0x32 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(m.Namespace))) - i += copy(dAtA[i:], m.Namespace) - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func (m *TestKube) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalTo(dAtA) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *TestKube) MarshalTo(dAtA []byte) (int, error) { - var i int - _ = i - var l int - _ = l - if m.Affinity != nil { - dAtA[i] = 0x42 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Affinity.Size())) - n69, err := m.Affinity.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n69 - } - if len(m.Env) > 0 { - for k, _ := range m.Env { - dAtA[i] = 0xe2 - i++ - dAtA[i] = 0x3 - i++ - v := m.Env[k] - mapSize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(v))) - i += copy(dAtA[i:], v) - } - } - if m.Resources != nil { - dAtA[i] = 0x82 - i++ - dAtA[i] = 0x5 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.Resources.Size())) - n70, err := m.Resources.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n70 - } - if m.ReadinessProbe != nil { - dAtA[i] = 0x8a - i++ - dAtA[i] = 0x5 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.ReadinessProbe.Size())) - n71, err := m.ReadinessProbe.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n71 - } - if m.HpaSpec != nil { - dAtA[i] = 0xb2 - i++ - dAtA[i] = 0x5 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.HpaSpec.Size())) - n72, err := m.HpaSpec.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n72 - } - if m.PodDisruptionBudget != nil { - dAtA[i] = 0xba - i++ - dAtA[i] = 0x5 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(m.PodDisruptionBudget.Size())) - n73, err := m.PodDisruptionBudget.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n73 - } - if len(m.PodAnnotations) > 0 { - for k, _ := range m.PodAnnotations { - dAtA[i] = 0xd2 - i++ - dAtA[i] = 0x5 - i++ - v := m.PodAnnotations[k] - mapSize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(v))) - i += copy(dAtA[i:], v) - } - } - if len(m.NodeSelector) > 0 { - for k, _ := range m.NodeSelector { - dAtA[i] = 0xe2 - i++ - dAtA[i] = 0x5 - i++ - v := m.NodeSelector[k] - mapSize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(mapSize)) - dAtA[i] = 0xa - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(k))) - i += copy(dAtA[i:], k) - dAtA[i] = 0x12 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(len(v))) - i += copy(dAtA[i:], v) - } - } - if len(m.Overlays) > 0 { - for _, msg := range m.Overlays { - dAtA[i] = 0xa2 - i++ - dAtA[i] = 0x6 - i++ - i = encodeVarintIstiocontrolplaneTypes(dAtA, i, uint64(msg.Size())) - n, err := msg.MarshalTo(dAtA[i:]) - if err != nil { - return 0, err - } - i += n - } - } - if m.XXX_unrecognized != nil { - i += copy(dAtA[i:], m.XXX_unrecognized) - } - return i, nil -} - -func encodeVarintIstiocontrolplaneTypes(dAtA []byte, offset int, v uint64) int { - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return offset + 1 -} -func (m *IstioControlPlane) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Spec != nil { - l = m.Spec.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Status != nil { - l = m.Status.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *IstioControlPlaneSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.DefaultNamespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.TrafficManagement != nil { - l = m.TrafficManagement.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Policy != nil { - l = m.Policy.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Telemetry != nil { - l = m.Telemetry.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Security != nil { - l = m.Security.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.ConfigManagement != nil { - l = m.ConfigManagement.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.AutoInjection != nil { - l = m.AutoInjection.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Gateways != nil { - l = m.Gateways.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Profile) - if l > 0 { - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.InstallPackagePath) - if l > 0 { - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Version) - if l > 0 { - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Hub) - if l > 0 { - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Tag) - if l > 0 { - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *TrafficManagementFeatureSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Enabled != nil { - l = m.Enabled.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Components != nil { - l = m.Components.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *TrafficManagementFeatureSpec_Components) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Pilot != nil { - l = m.Pilot.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Proxy != nil { - l = m.Proxy.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *PolicyFeatureSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Enabled != nil { - l = m.Enabled.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.PolicyCheckFailOpen != nil { - l = m.PolicyCheckFailOpen.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.OutboundTrafficPolicyMode != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.OutboundTrafficPolicyMode)) - } - if m.Components != nil { - l = m.Components.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *PolicyFeatureSpec_Components) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Policy != nil { - l = m.Policy.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *TelemetryFeatureSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Enabled != nil { - l = m.Enabled.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Components != nil { - l = m.Components.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *TelemetryFeatureSpec_Components) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Telemetry != nil { - l = m.Telemetry.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *SecurityFeatureSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Enabled != nil { - l = m.Enabled.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.ControlPlaneMtls != nil { - l = m.ControlPlaneMtls.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.DataPlaneMtlsStrict != nil { - l = m.DataPlaneMtlsStrict.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Components != nil { - l = m.Components.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *SecurityFeatureSpec_Components) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Citadel != nil { - l = m.Citadel.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.CertManager != nil { - l = m.CertManager.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.NodeAgent != nil { - l = m.NodeAgent.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *ConfigManagementFeatureSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Enabled != nil { - l = m.Enabled.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Components != nil { - l = m.Components.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *ConfigManagementFeatureSpec_Components) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Galley != nil { - l = m.Galley.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *AutoInjectionFeatureSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Enabled != nil { - l = m.Enabled.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Components != nil { - l = m.Components.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *AutoInjectionFeatureSpec_Components) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Injector != nil { - l = m.Injector.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *GatewayFeatureSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Enabled != nil { - l = m.Enabled.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Components != nil { - l = m.Components.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *GatewayFeatureSpec_Components) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.IngressGateway != nil { - l = m.IngressGateway.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.EgressGateway != nil { - l = m.EgressGateway.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *PilotComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Sidecar != nil { - l = m.Sidecar.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *ProxyComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *SidecarInjectorComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *PolicyComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *TelemetryComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *CitadelComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.SelfSigned { - n += 2 - } - if m.CreateMeshPolicy { - n += 2 - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *CertManagerComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *NodeAgentComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *GalleyComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *CommonComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Enabled != nil { - l = m.Enabled.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Debug != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.Debug)) - } - if m.K8S != nil { - l = m.K8S.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *KubernetesResourcesSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Affinity != nil { - l = m.Affinity.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.Env) > 0 { - for _, e := range m.Env { - l = e.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - if m.HpaSpec != nil { - l = m.HpaSpec.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.ImagePullPolicy) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.NodeSelector) > 0 { - for k, v := range m.NodeSelector { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - n += mapEntrySize + 1 + sovIstiocontrolplaneTypes(uint64(mapEntrySize)) - } - } - if m.PodDisruptionBudget != nil { - l = m.PodDisruptionBudget.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.PodAnnotations) > 0 { - for k, v := range m.PodAnnotations { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - n += mapEntrySize + 1 + sovIstiocontrolplaneTypes(uint64(mapEntrySize)) - } - } - l = len(m.PriorityClassName) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.ReadinessProbe != nil { - l = m.ReadinessProbe.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.ReplicaCount != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.ReplicaCount)) - } - if m.Resources != nil { - l = m.Resources.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.Overlays) > 0 { - for _, e := range m.Overlays { - l = e.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *IngressGatewayComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.IngressType != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.IngressType)) - } - if m.LoadBalancer != nil { - l = m.LoadBalancer.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.SdsEnabled != nil { - l = m.SdsEnabled.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.ExternalTrafficPolicy != 0 { - n += 2 + sovIstiocontrolplaneTypes(uint64(m.ExternalTrafficPolicy)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *EgressGatewayComponentSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *LoadBalancingGatewayConfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Common != nil { - l = m.Common.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.LoadBalancer != nil { - l = m.LoadBalancer.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *LoadBalancerConfig) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Ports) > 0 { - for _, e := range m.Ports { - l = e.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - l = len(m.ClusterIP) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.ExternalIPs) > 0 { - for _, s := range m.ExternalIPs { - l = len(s) - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - l = len(m.SessionAffinity) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.LoadBalancerIP) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.LoadBalancerSourceRanges) > 0 { - for _, s := range m.LoadBalancerSourceRanges { - l = len(s) - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - l = len(m.ExternalName) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.ExternalTrafficPolicy) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *K8SObjectOverlay) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.ApiVersion) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Kind) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Name) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.Patches) > 0 { - for _, e := range m.Patches { - l = e.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *K8SObjectOverlay_PathValue) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Path) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *InstallStatus) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.TrafficManagement != nil { - l = m.TrafficManagement.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.PolicyTelemetry != nil { - l = m.PolicyTelemetry.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Security != nil { - l = m.Security.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.ConfigManagement != nil { - l = m.ConfigManagement.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.IngressGateway) > 0 { - for _, e := range m.IngressGateway { - l = e.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - if len(m.EgressGateway) > 0 { - for _, e := range m.EgressGateway { - l = e.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *InstallStatus_VersionStatus) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Version) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.Status != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.Status)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *Resources) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Limits) > 0 { - for k, v := range m.Limits { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - n += mapEntrySize + 1 + sovIstiocontrolplaneTypes(uint64(mapEntrySize)) - } - } - if len(m.Requests) > 0 { - for k, v := range m.Requests { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - n += mapEntrySize + 1 + sovIstiocontrolplaneTypes(uint64(mapEntrySize)) - } - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *ReadinessProbe) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Exec != nil { - l = m.Exec.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.HttpGet != nil { - l = m.HttpGet.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.TcpSocket != nil { - l = m.TcpSocket.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.InitialDelaySeconds != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.InitialDelaySeconds)) - } - if m.TimeoutSeconds != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.TimeoutSeconds)) - } - if m.PeriodSeconds != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.PeriodSeconds)) - } - if m.SuccessThreshold != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.SuccessThreshold)) - } - if m.FailureThreshold != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.FailureThreshold)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *ExecAction) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Command) > 0 { - for _, s := range m.Command { - l = len(s) - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *HTTPGetAction) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Path) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Host) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Scheme) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.HttpHeaders) > 0 { - for _, e := range m.HttpHeaders { - l = e.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *HTTPHeader) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Value) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *TCPSocketAction) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Host) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *PodDisruptionBudgetSpec) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.MinAvailable != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.MinAvailable)) - } - if m.Selector != nil { - l = m.Selector.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.MaxUnavailable != 0 { - n += 1 + sovIstiocontrolplaneTypes(uint64(m.MaxUnavailable)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *ObjectMeta) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Name) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - l = len(m.Namespace) - if l > 0 { - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func (m *TestKube) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Affinity != nil { - l = m.Affinity.Size() - n += 1 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.Env) > 0 { - for k, v := range m.Env { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - n += mapEntrySize + 2 + sovIstiocontrolplaneTypes(uint64(mapEntrySize)) - } - } - if m.Resources != nil { - l = m.Resources.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.ReadinessProbe != nil { - l = m.ReadinessProbe.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.HpaSpec != nil { - l = m.HpaSpec.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if m.PodDisruptionBudget != nil { - l = m.PodDisruptionBudget.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - if len(m.PodAnnotations) > 0 { - for k, v := range m.PodAnnotations { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - n += mapEntrySize + 2 + sovIstiocontrolplaneTypes(uint64(mapEntrySize)) - } - } - if len(m.NodeSelector) > 0 { - for k, v := range m.NodeSelector { - _ = k - _ = v - mapEntrySize := 1 + len(k) + sovIstiocontrolplaneTypes(uint64(len(k))) + 1 + len(v) + sovIstiocontrolplaneTypes(uint64(len(v))) - n += mapEntrySize + 2 + sovIstiocontrolplaneTypes(uint64(mapEntrySize)) - } - } - if len(m.Overlays) > 0 { - for _, e := range m.Overlays { - l = e.Size() - n += 2 + l + sovIstiocontrolplaneTypes(uint64(l)) - } - } - if m.XXX_unrecognized != nil { - n += len(m.XXX_unrecognized) - } - return n -} - -func sovIstiocontrolplaneTypes(x uint64) (n int) { - for { - n++ - x >>= 7 - if x == 0 { - break - } - } - return n -} -func sozIstiocontrolplaneTypes(x uint64) (n int) { - return sovIstiocontrolplaneTypes(uint64((x << 1) ^ uint64((int64(x) >> 63)))) -} -func (m *IstioControlPlane) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: IstioControlPlane: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: IstioControlPlane: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Spec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Spec == nil { - m.Spec = &IstioControlPlaneSpec{} - } - if err := m.Spec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Status == nil { - m.Status = &InstallStatus{} - } - if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *IstioControlPlaneSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: IstioControlPlaneSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: IstioControlPlaneSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DefaultNamespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.DefaultNamespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 25: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TrafficManagement", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.TrafficManagement == nil { - m.TrafficManagement = &TrafficManagementFeatureSpec{} - } - if err := m.TrafficManagement.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 26: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Policy == nil { - m.Policy = &PolicyFeatureSpec{} - } - if err := m.Policy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 27: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Telemetry", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Telemetry == nil { - m.Telemetry = &TelemetryFeatureSpec{} - } - if err := m.Telemetry.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 28: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Security", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Security == nil { - m.Security = &SecurityFeatureSpec{} - } - if err := m.Security.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 29: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConfigManagement", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ConfigManagement == nil { - m.ConfigManagement = &ConfigManagementFeatureSpec{} - } - if err := m.ConfigManagement.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 30: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AutoInjection", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.AutoInjection == nil { - m.AutoInjection = &AutoInjectionFeatureSpec{} - } - if err := m.AutoInjection.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 31: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Gateways", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Gateways == nil { - m.Gateways = &GatewayFeatureSpec{} - } - if err := m.Gateways.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 100: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Profile", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Profile = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 102: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field InstallPackagePath", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.InstallPackagePath = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 103: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Version = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 110: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Hub", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Hub = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 111: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Tag", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Tag = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *TrafficManagementFeatureSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: TrafficManagementFeatureSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: TrafficManagementFeatureSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Enabled == nil { - m.Enabled = &protobuf.BoolValue{} - } - if err := m.Enabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 50: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Components", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Components == nil { - m.Components = &TrafficManagementFeatureSpec_Components{} - } - if err := m.Components.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *TrafficManagementFeatureSpec_Components) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Components: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Components: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Pilot", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Pilot == nil { - m.Pilot = &PilotComponentSpec{} - } - if err := m.Pilot.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 21: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Proxy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Proxy == nil { - m.Proxy = &ProxyComponentSpec{} - } - if err := m.Proxy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *PolicyFeatureSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: PolicyFeatureSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: PolicyFeatureSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Enabled == nil { - m.Enabled = &protobuf.BoolValue{} - } - if err := m.Enabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PolicyCheckFailOpen", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.PolicyCheckFailOpen == nil { - m.PolicyCheckFailOpen = &protobuf.BoolValue{} - } - if err := m.PolicyCheckFailOpen.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 11: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field OutboundTrafficPolicyMode", wireType) - } - m.OutboundTrafficPolicyMode = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.OutboundTrafficPolicyMode |= PolicyFeatureSpec_OutboundPolicy(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 50: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Components", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Components == nil { - m.Components = &PolicyFeatureSpec_Components{} - } - if err := m.Components.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *PolicyFeatureSpec_Components) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Components: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Components: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Policy", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Policy == nil { - m.Policy = &PolicyComponentSpec{} - } - if err := m.Policy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *TelemetryFeatureSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: TelemetryFeatureSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: TelemetryFeatureSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Enabled == nil { - m.Enabled = &protobuf.BoolValue{} - } - if err := m.Enabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 50: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Components", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Components == nil { - m.Components = &TelemetryFeatureSpec_Components{} - } - if err := m.Components.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *TelemetryFeatureSpec_Components) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Components: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Components: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Telemetry", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Telemetry == nil { - m.Telemetry = &TelemetryComponentSpec{} - } - if err := m.Telemetry.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SecurityFeatureSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SecurityFeatureSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SecurityFeatureSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Enabled == nil { - m.Enabled = &protobuf.BoolValue{} - } - if err := m.Enabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 13: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ControlPlaneMtls", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ControlPlaneMtls == nil { - m.ControlPlaneMtls = &protobuf.BoolValue{} - } - if err := m.ControlPlaneMtls.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 14: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DataPlaneMtlsStrict", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.DataPlaneMtlsStrict == nil { - m.DataPlaneMtlsStrict = &protobuf.BoolValue{} - } - if err := m.DataPlaneMtlsStrict.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 50: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Components", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Components == nil { - m.Components = &SecurityFeatureSpec_Components{} - } - if err := m.Components.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SecurityFeatureSpec_Components) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Components: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Components: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Citadel", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Citadel == nil { - m.Citadel = &CitadelComponentSpec{} - } - if err := m.Citadel.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 21: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CertManager", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.CertManager == nil { - m.CertManager = &CertManagerComponentSpec{} - } - if err := m.CertManager.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 22: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NodeAgent", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.NodeAgent == nil { - m.NodeAgent = &NodeAgentComponentSpec{} - } - if err := m.NodeAgent.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ConfigManagementFeatureSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ConfigManagementFeatureSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ConfigManagementFeatureSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Enabled == nil { - m.Enabled = &protobuf.BoolValue{} - } - if err := m.Enabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 50: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Components", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Components == nil { - m.Components = &ConfigManagementFeatureSpec_Components{} - } - if err := m.Components.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ConfigManagementFeatureSpec_Components) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Components: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Components: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Galley", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Galley == nil { - m.Galley = &GalleyComponentSpec{} - } - if err := m.Galley.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AutoInjectionFeatureSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AutoInjectionFeatureSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AutoInjectionFeatureSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Enabled == nil { - m.Enabled = &protobuf.BoolValue{} - } - if err := m.Enabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 50: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Components", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Components == nil { - m.Components = &AutoInjectionFeatureSpec_Components{} - } - if err := m.Components.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AutoInjectionFeatureSpec_Components) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Components: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Components: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Injector", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Injector == nil { - m.Injector = &SidecarInjectorComponentSpec{} - } - if err := m.Injector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *GatewayFeatureSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: GatewayFeatureSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: GatewayFeatureSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Enabled == nil { - m.Enabled = &protobuf.BoolValue{} - } - if err := m.Enabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 50: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Components", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Components == nil { - m.Components = &GatewayFeatureSpec_Components{} - } - if err := m.Components.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *GatewayFeatureSpec_Components) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Components: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Components: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 31: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IngressGateway", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.IngressGateway == nil { - m.IngressGateway = &IngressGatewayComponentSpec{} - } - if err := m.IngressGateway.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 32: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EgressGateway", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.EgressGateway == nil { - m.EgressGateway = &EgressGatewayComponentSpec{} - } - if err := m.EgressGateway.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *PilotComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: PilotComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: PilotComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Sidecar", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Sidecar == nil { - m.Sidecar = &protobuf.BoolValue{} - } - if err := m.Sidecar.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ProxyComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ProxyComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ProxyComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SidecarInjectorComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SidecarInjectorComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SidecarInjectorComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *PolicyComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: PolicyComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: PolicyComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *TelemetryComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: TelemetryComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: TelemetryComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *CitadelComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CitadelComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CitadelComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 11: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field SelfSigned", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.SelfSigned = bool(v != 0) - case 12: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field CreateMeshPolicy", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.CreateMeshPolicy = bool(v != 0) - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *CertManagerComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CertManagerComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CertManagerComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *NodeAgentComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: NodeAgentComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: NodeAgentComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *GalleyComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: GalleyComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: GalleyComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *CommonComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: CommonComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: CommonComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Enabled == nil { - m.Enabled = &protobuf.BoolValue{} - } - if err := m.Enabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Debug", wireType) - } - m.Debug = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Debug |= CommonComponentSpec_LogLevel(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 80: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field K8S", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.K8S == nil { - m.K8S = &KubernetesResourcesSpec{} - } - if err := m.K8S.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *KubernetesResourcesSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: KubernetesResourcesSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: KubernetesResourcesSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Affinity", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Affinity == nil { - m.Affinity = &v1.Affinity{} - } - if err := m.Affinity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Env", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Env = append(m.Env, &v1.EnvVar{}) - if err := m.Env[len(m.Env)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HpaSpec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.HpaSpec == nil { - m.HpaSpec = &v2beta1.HorizontalPodAutoscalerSpec{} - } - if err := m.HpaSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ImagePullPolicy", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ImagePullPolicy = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NodeSelector", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.NodeSelector == nil { - m.NodeSelector = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.NodeSelector[mapkey] = mapvalue - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PodDisruptionBudget", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.PodDisruptionBudget == nil { - m.PodDisruptionBudget = &PodDisruptionBudgetSpec{} - } - if err := m.PodDisruptionBudget.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PodAnnotations", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.PodAnnotations == nil { - m.PodAnnotations = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.PodAnnotations[mapkey] = mapvalue - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PriorityClassName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.PriorityClassName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReadinessProbe", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ReadinessProbe == nil { - m.ReadinessProbe = &ReadinessProbe{} - } - if err := m.ReadinessProbe.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 10: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ReplicaCount", wireType) - } - m.ReplicaCount = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.ReplicaCount |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Resources", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Resources == nil { - m.Resources = &Resources{} - } - if err := m.Resources.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 100: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Overlays", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Overlays = append(m.Overlays, &K8SObjectOverlay{}) - if err := m.Overlays[len(m.Overlays)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *IngressGatewayComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: IngressGatewayComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: IngressGatewayComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 11: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field IngressType", wireType) - } - m.IngressType = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.IngressType |= IngressGatewayComponentSpec_IngressType(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 13: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LoadBalancer", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.LoadBalancer == nil { - m.LoadBalancer = &LoadBalancerConfig{} - } - if err := m.LoadBalancer.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 16: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SdsEnabled", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.SdsEnabled == nil { - m.SdsEnabled = &protobuf.BoolValue{} - } - if err := m.SdsEnabled.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 17: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ExternalTrafficPolicy", wireType) - } - m.ExternalTrafficPolicy = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.ExternalTrafficPolicy |= IngressGatewayComponentSpec_ExternalTrafficPolicy(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *EgressGatewayComponentSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: EgressGatewayComponentSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: EgressGatewayComponentSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *LoadBalancingGatewayConfig) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: LoadBalancingGatewayConfig: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: LoadBalancingGatewayConfig: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Common", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Common == nil { - m.Common = &CommonComponentSpec{} - } - if err := m.Common.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LoadBalancer", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.LoadBalancer == nil { - m.LoadBalancer = &LoadBalancerConfig{} - } - if err := m.LoadBalancer.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *LoadBalancerConfig) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: LoadBalancerConfig: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: LoadBalancerConfig: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Ports", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Ports = append(m.Ports, &v1.ServicePort{}) - if err := m.Ports[len(m.Ports)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterIP", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ClusterIP = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExternalIPs", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ExternalIPs = append(m.ExternalIPs, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 7: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionAffinity", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SessionAffinity = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LoadBalancerIP", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.LoadBalancerIP = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 9: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LoadBalancerSourceRanges", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.LoadBalancerSourceRanges = append(m.LoadBalancerSourceRanges, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 10: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExternalName", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ExternalName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 11: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ExternalTrafficPolicy", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ExternalTrafficPolicy = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *K8SObjectOverlay) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: k8sObjectOverlay: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: k8sObjectOverlay: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ApiVersion", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ApiVersion = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Kind", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Kind = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Name = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Patches", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Patches = append(m.Patches, &K8SObjectOverlay_PathValue{}) - if err := m.Patches[len(m.Patches)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *K8SObjectOverlay_PathValue) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: PathValue: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: PathValue: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Path = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *InstallStatus) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: InstallStatus: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: InstallStatus: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TrafficManagement", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.TrafficManagement == nil { - m.TrafficManagement = &InstallStatus_VersionStatus{} - } - if err := m.TrafficManagement.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PolicyTelemetry", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.PolicyTelemetry == nil { - m.PolicyTelemetry = &InstallStatus_VersionStatus{} - } - if err := m.PolicyTelemetry.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Security", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Security == nil { - m.Security = &InstallStatus_VersionStatus{} - } - if err := m.Security.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConfigManagement", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ConfigManagement == nil { - m.ConfigManagement = &InstallStatus_VersionStatus{} - } - if err := m.ConfigManagement.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IngressGateway", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.IngressGateway = append(m.IngressGateway, &InstallStatus_VersionStatus{}) - if err := m.IngressGateway[len(m.IngressGateway)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field EgressGateway", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.EgressGateway = append(m.EgressGateway, &InstallStatus_VersionStatus{}) - if err := m.EgressGateway[len(m.EgressGateway)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *InstallStatus_VersionStatus) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: VersionStatus: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: VersionStatus: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Version = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) - } - m.Status = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Status |= InstallStatus_Status(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *Resources) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Resources: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Resources: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Limits", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Limits == nil { - m.Limits = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.Limits[mapkey] = mapvalue - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Requests", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Requests == nil { - m.Requests = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.Requests[mapkey] = mapvalue - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ReadinessProbe) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ReadinessProbe: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ReadinessProbe: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Exec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Exec == nil { - m.Exec = &ExecAction{} - } - if err := m.Exec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpGet", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.HttpGet == nil { - m.HttpGet = &HTTPGetAction{} - } - if err := m.HttpGet.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TcpSocket", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.TcpSocket == nil { - m.TcpSocket = &TCPSocketAction{} - } - if err := m.TcpSocket.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field InitialDelaySeconds", wireType) - } - m.InitialDelaySeconds = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.InitialDelaySeconds |= int32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TimeoutSeconds", wireType) - } - m.TimeoutSeconds = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TimeoutSeconds |= int32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field PeriodSeconds", wireType) - } - m.PeriodSeconds = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.PeriodSeconds |= int32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 7: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field SuccessThreshold", wireType) - } - m.SuccessThreshold = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.SuccessThreshold |= int32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 8: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field FailureThreshold", wireType) - } - m.FailureThreshold = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.FailureThreshold |= int32(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ExecAction) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ExecAction: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ExecAction: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Command", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Command = append(m.Command, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *HTTPGetAction) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: HTTPGetAction: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: HTTPGetAction: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Path = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Host", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Host = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Scheme", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Scheme = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HttpHeaders", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.HttpHeaders = append(m.HttpHeaders, &HTTPHeader{}) - if err := m.HttpHeaders[len(m.HttpHeaders)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *HTTPHeader) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: HTTPHeader: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: HTTPHeader: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Name = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Value = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *TCPSocketAction) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: TCPSocketAction: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: TCPSocketAction: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Host", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Host = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *PodDisruptionBudgetSpec) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: PodDisruptionBudgetSpec: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: PodDisruptionBudgetSpec: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MinAvailable", wireType) - } - m.MinAvailable = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.MinAvailable |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Selector", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Selector == nil { - m.Selector = &v11.LabelSelector{} - } - if err := m.Selector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field MaxUnavailable", wireType) - } - m.MaxUnavailable = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.MaxUnavailable |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ObjectMeta) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ObjectMeta: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ObjectMeta: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Name = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Namespace = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *TestKube) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: TestKube: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: TestKube: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 8: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Affinity", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Affinity == nil { - m.Affinity = &v1.Affinity{} - } - if err := m.Affinity.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 60: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Env", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Env == nil { - m.Env = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.Env[mapkey] = mapvalue - iNdEx = postIndex - case 80: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Resources", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Resources == nil { - m.Resources = &Resources{} - } - if err := m.Resources.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 81: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ReadinessProbe", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.ReadinessProbe == nil { - m.ReadinessProbe = &ReadinessProbe{} - } - if err := m.ReadinessProbe.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 86: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field HpaSpec", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.HpaSpec == nil { - m.HpaSpec = &v2beta1.HorizontalPodAutoscalerSpec{} - } - if err := m.HpaSpec.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 87: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PodDisruptionBudget", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.PodDisruptionBudget == nil { - m.PodDisruptionBudget = &PodDisruptionBudgetSpec{} - } - if err := m.PodDisruptionBudget.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 90: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PodAnnotations", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.PodAnnotations == nil { - m.PodAnnotations = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.PodAnnotations[mapkey] = mapvalue - iNdEx = postIndex - case 92: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field NodeSelector", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.NodeSelector == nil { - m.NodeSelector = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.NodeSelector[mapkey] = mapvalue - iNdEx = postIndex - case 100: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Overlays", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Overlays = append(m.Overlays, &K8SObjectOverlay{}) - if err := m.Overlays[len(m.Overlays)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipIstiocontrolplaneTypes(dAtA[iNdEx:]) - if err != nil { - return err - } - if skippy < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) < 0 { - return ErrInvalidLengthIstiocontrolplaneTypes - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil +func init() { + proto.RegisterFile("pkg/apis/istio/v1alpha2/istiocontrolplane_types.proto", fileDescriptor_daac92937abd81a4) +} + +var fileDescriptor_daac92937abd81a4 = []byte{ + // 2371 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x59, 0xdd, 0x6f, 0xdc, 0xc6, + 0x11, 0x2f, 0x4f, 0x5f, 0xa7, 0x91, 0x4e, 0x1f, 0x2b, 0xd9, 0xa6, 0x65, 0x25, 0x56, 0x58, 0xdb, + 0x71, 0xd3, 0x86, 0xb2, 0xac, 0xd8, 0x91, 0x9b, 0xd4, 0xa9, 0x2c, 0x2b, 0x92, 0x10, 0x5b, 0xba, + 0x50, 0xb2, 0xfb, 0x81, 0xa2, 0x87, 0x15, 0xb9, 0xba, 0x63, 0xc4, 0xe3, 0x32, 0xcb, 0xe5, 0xc5, + 0xd7, 0xd7, 0x16, 0x68, 0xfb, 0x54, 0xc0, 0xef, 0x6d, 0x51, 0x14, 0xfd, 0xf8, 0x13, 0xfa, 0x90, + 0xf7, 0xfe, 0x15, 0xfd, 0x0f, 0xfa, 0xd8, 0xb7, 0x02, 0x45, 0xb1, 0xcb, 0xe5, 0xd7, 0x1d, 0x4f, + 0xf6, 0x29, 0x41, 0xa1, 0xbe, 0x91, 0x33, 0xbf, 0x19, 0xce, 0xce, 0xee, 0xcc, 0xce, 0x0c, 0xe1, + 0x5e, 0x70, 0xda, 0x5c, 0xc5, 0x81, 0x1b, 0xae, 0xba, 0x21, 0x77, 0xe9, 0x6a, 0x67, 0x0d, 0x7b, + 0x41, 0x0b, 0xdf, 0x8d, 0x5f, 0x6d, 0xea, 0x73, 0x46, 0xbd, 0xc0, 0xc3, 0x3e, 0x69, 0xf0, 0x6e, + 0x40, 0x42, 0x33, 0x60, 0x94, 0x53, 0x54, 0x4d, 0x70, 0x4b, 0xc6, 0xe9, 0x46, 0x68, 0xba, 0x54, + 0xe8, 0x58, 0xb5, 0x29, 0x23, 0xab, 0x9d, 0xb5, 0xd5, 0x26, 0xf1, 0x09, 0xc3, 0x9c, 0x38, 0x31, + 0xba, 0x80, 0xc1, 0x41, 0x10, 0x96, 0x61, 0xcc, 0x3c, 0x26, 0xe2, 0x34, 0xb4, 0xb1, 0xe7, 0xfa, + 0xcd, 0xd5, 0xce, 0xdd, 0x63, 0xc2, 0x71, 0x3f, 0xfe, 0xbd, 0x0c, 0xdf, 0xc6, 0x76, 0xcb, 0xf5, + 0x09, 0xeb, 0xae, 0xa6, 0x8b, 0x69, 0x13, 0x8e, 0xcb, 0xbe, 0xf2, 0xfd, 0xa6, 0xcb, 0x5b, 0xd1, + 0xb1, 0x69, 0xd3, 0xf6, 0x6a, 0x93, 0x36, 0xe9, 0xaa, 0x24, 0x1f, 0x47, 0x27, 0xd9, 0x43, 0x93, + 0xd2, 0xa6, 0x47, 0xb2, 0xf7, 0x2f, 0x18, 0x0e, 0x02, 0xc2, 0xd4, 0xca, 0x8d, 0x2e, 0xcc, 0xef, + 0x09, 0xd7, 0x6c, 0xc5, 0xae, 0xa9, 0x0b, 0xd7, 0xa0, 0x75, 0x18, 0x0d, 0x03, 0x62, 0xeb, 0x23, + 0x2b, 0xda, 0xed, 0xa9, 0xbb, 0xd7, 0xcd, 0xc4, 0x3b, 0x66, 0x1f, 0xf4, 0x30, 0x20, 0xb6, 0x25, + 0xc1, 0x68, 0x15, 0xc6, 0x43, 0x8e, 0x79, 0x14, 0xea, 0xa3, 0x52, 0xec, 0x4a, 0x4e, 0xcc, 0x0f, + 0x39, 0xf6, 0xbc, 0x43, 0xc9, 0xb6, 0x14, 0xcc, 0x78, 0x39, 0x06, 0x97, 0x4a, 0x15, 0xa2, 0x6f, + 0xc3, 0xbc, 0x43, 0x4e, 0x70, 0xe4, 0xf1, 0x86, 0x8f, 0xdb, 0x24, 0x0c, 0xb0, 0x4d, 0xf4, 0xb1, + 0x15, 0xed, 0xf6, 0xa4, 0x35, 0xa7, 0x18, 0xfb, 0x09, 0x1d, 0x3d, 0x03, 0xc4, 0x19, 0x3e, 0x39, + 0x71, 0xed, 0x46, 0x1b, 0xfb, 0xb8, 0x49, 0xda, 0xc4, 0xe7, 0xfa, 0x55, 0x69, 0xc3, 0xad, 0xcc, + 0x86, 0xa3, 0x18, 0xf3, 0x34, 0x85, 0x7c, 0x4c, 0x30, 0x8f, 0x58, 0xbc, 0x82, 0x79, 0xde, 0xcb, + 0x45, 0xeb, 0x30, 0x1e, 0x50, 0xcf, 0xb5, 0xbb, 0xfa, 0x92, 0x54, 0x75, 0x2d, 0x53, 0x55, 0x97, + 0xf4, 0xbc, 0xbc, 0x82, 0xa2, 0x0f, 0x61, 0x92, 0x13, 0x8f, 0xb4, 0x09, 0x67, 0x5d, 0xfd, 0x9a, + 0x94, 0x7b, 0x33, 0x67, 0x42, 0xc2, 0xca, 0x8b, 0x66, 0x02, 0xe8, 0x01, 0x54, 0x43, 0x62, 0x47, + 0xcc, 0xe5, 0x5d, 0x7d, 0x59, 0x0a, 0xbf, 0x91, 0x09, 0x1f, 0x2a, 0x4e, 0x5e, 0x36, 0x85, 0x23, + 0x0b, 0xe6, 0x6d, 0xea, 0x9f, 0xb8, 0xcd, 0xbc, 0x0f, 0xde, 0x90, 0x3a, 0x6e, 0x66, 0x3a, 0xb6, + 0x24, 0xa4, 0xdc, 0x05, 0x73, 0x76, 0x0f, 0x13, 0xed, 0xc1, 0x8c, 0x38, 0xb9, 0x0d, 0xd7, 0xff, + 0x8c, 0xd8, 0xdc, 0xa5, 0xbe, 0xfe, 0xa6, 0x54, 0x68, 0x64, 0x0a, 0x37, 0x23, 0x4e, 0xf7, 0x12, + 0x76, 0x5e, 0x5b, 0x0d, 0xe7, 0x39, 0x68, 0x03, 0xaa, 0x4d, 0xcc, 0xc9, 0x17, 0xb8, 0x1b, 0xea, + 0xd7, 0xa5, 0x92, 0xe5, 0x4c, 0xc9, 0x4e, 0xcc, 0x29, 0x2c, 0x2c, 0x41, 0x23, 0x1d, 0x26, 0x02, + 0x46, 0x4f, 0x5c, 0x8f, 0xe8, 0x8e, 0x3c, 0x00, 0xc9, 0x2b, 0xba, 0x03, 0x8b, 0x6e, 0x7c, 0xae, + 0x1a, 0x01, 0xb6, 0x4f, 0x71, 0x93, 0x34, 0x02, 0xcc, 0x5b, 0xfa, 0x89, 0x84, 0x21, 0xc5, 0xab, + 0xc7, 0xac, 0x3a, 0xe6, 0x2d, 0x34, 0x07, 0x23, 0xad, 0xe8, 0x58, 0xf7, 0x25, 0x40, 0x3c, 0x0a, + 0x0a, 0xc7, 0x4d, 0x9d, 0xc6, 0x14, 0x8e, 0x9b, 0xc6, 0x97, 0x15, 0x58, 0x3e, 0xeb, 0xa8, 0xa0, + 0xf7, 0x60, 0x82, 0xf8, 0xf8, 0xd8, 0x23, 0x8e, 0xae, 0xc9, 0x95, 0x2c, 0x99, 0x71, 0x88, 0x99, + 0x49, 0x88, 0x99, 0x8f, 0x28, 0xf5, 0x9e, 0x63, 0x2f, 0x22, 0x56, 0x02, 0x45, 0x9f, 0x02, 0xd8, + 0xb4, 0x1d, 0x50, 0x9f, 0xf8, 0x3c, 0xd4, 0xef, 0x4a, 0xc1, 0xb5, 0xd7, 0x3b, 0x9c, 0xe6, 0x56, + 0x2a, 0x68, 0xe5, 0x94, 0x2c, 0xbd, 0xd4, 0x00, 0x32, 0x16, 0x5a, 0x86, 0xc9, 0x2c, 0x56, 0x34, + 0xb9, 0xa0, 0x8c, 0x80, 0xee, 0xc2, 0x58, 0xe0, 0x7a, 0x94, 0xeb, 0x8b, 0xbd, 0xde, 0xaf, 0x0b, + 0x72, 0xaa, 0x47, 0x7a, 0x3f, 0x86, 0x4a, 0x19, 0x46, 0x5f, 0x74, 0xf5, 0x4b, 0x7d, 0x32, 0x82, + 0xdc, 0x2b, 0x23, 0x68, 0xc6, 0xbf, 0x34, 0x98, 0xef, 0x0b, 0x8f, 0x73, 0xfa, 0xec, 0xe3, 0x12, + 0x9f, 0xdd, 0x3a, 0x23, 0x0a, 0x07, 0x39, 0x0a, 0x0f, 0xe1, 0xa7, 0x7b, 0x69, 0xd4, 0x2f, 0xf6, + 0x06, 0x60, 0xfc, 0xbd, 0xe2, 0xaa, 0x15, 0xd8, 0xf8, 0x79, 0x05, 0x16, 0xcb, 0xa2, 0xfb, 0x9c, + 0x2b, 0xdf, 0x2b, 0x59, 0xf9, 0xb7, 0xce, 0xce, 0x23, 0x83, 0x16, 0xff, 0xd9, 0x10, 0x8b, 0x7f, + 0x98, 0xcf, 0x5e, 0xf1, 0xfa, 0x57, 0x4a, 0xbe, 0x5a, 0x74, 0x41, 0x26, 0x62, 0xfc, 0x62, 0x04, + 0x16, 0x4a, 0xd2, 0xd4, 0x39, 0x9d, 0xb0, 0x5b, 0xe2, 0x84, 0xdb, 0x67, 0xe6, 0xc3, 0x41, 0x3e, + 0xf8, 0xe7, 0x30, 0x91, 0xb2, 0x01, 0x13, 0xb6, 0xcb, 0xb1, 0x43, 0x3c, 0xe5, 0x82, 0x5c, 0x02, + 0xdf, 0x8a, 0x19, 0x45, 0x07, 0x24, 0x70, 0xb4, 0x0d, 0xd3, 0x36, 0x61, 0x5c, 0x65, 0x60, 0xa6, + 0xc2, 0x26, 0x97, 0x2d, 0xb7, 0x08, 0xe3, 0x71, 0x88, 0xb3, 0xa2, 0x8a, 0x29, 0x3b, 0xe3, 0xa0, + 0x8f, 0x00, 0x7c, 0xea, 0x90, 0x06, 0x6e, 0x8a, 0x1c, 0x7e, 0xb9, 0x77, 0x1b, 0xf6, 0xa9, 0x43, + 0x36, 0x05, 0xab, 0x67, 0x1b, 0xfc, 0x84, 0x6e, 0xfc, 0xaa, 0x02, 0xd7, 0xce, 0xc8, 0xf4, 0xe7, + 0xdc, 0x8e, 0x7a, 0xc9, 0x76, 0xdc, 0x79, 0xad, 0xab, 0xe5, 0x6b, 0x8a, 0xcb, 0x26, 0xf6, 0x3c, + 0x52, 0x12, 0x97, 0x3b, 0x92, 0xde, 0x13, 0x97, 0x31, 0xd8, 0xf8, 0x4d, 0x05, 0xf4, 0x41, 0x77, + 0xd4, 0x39, 0xfd, 0xf0, 0xb4, 0xc4, 0x0f, 0xef, 0xbe, 0xfa, 0x46, 0x1c, 0xe4, 0x04, 0x7f, 0x08, + 0x27, 0x3c, 0x82, 0x6a, 0x7c, 0x17, 0x53, 0xa6, 0xdc, 0x90, 0x4b, 0x87, 0x87, 0xae, 0x43, 0x6c, + 0xcc, 0xf6, 0x14, 0xa0, 0xe8, 0x8f, 0x54, 0xce, 0xf8, 0x47, 0x05, 0x50, 0xff, 0x85, 0x7b, 0x4e, + 0x5f, 0xec, 0x94, 0xf8, 0xe2, 0xed, 0xb3, 0x2e, 0xf6, 0x41, 0x5e, 0xf8, 0xfb, 0x30, 0x11, 0xba, + 0x0f, 0xb3, 0xae, 0xdf, 0x64, 0x24, 0x0c, 0x1b, 0xaa, 0x4c, 0x50, 0x35, 0xc5, 0xcd, 0x7c, 0xc5, + 0x29, 0x01, 0xca, 0x82, 0xa2, 0x33, 0x66, 0xdc, 0x02, 0x13, 0x7d, 0x02, 0x33, 0xa4, 0xa8, 0x6e, + 0x45, 0xaa, 0xbb, 0x91, 0xa9, 0xdb, 0x1e, 0xac, 0xad, 0x46, 0xf2, 0x3c, 0xe3, 0xb7, 0x1a, 0xa0, + 0xfe, 0x2b, 0xf5, 0x9c, 0xfe, 0x2d, 0xf8, 0xa1, 0xd2, 0xeb, 0x87, 0x75, 0x18, 0x39, 0xdd, 0x08, + 0xf5, 0xba, 0xd4, 0xf7, 0x56, 0x66, 0xec, 0x27, 0xd1, 0x31, 0x61, 0x3e, 0xe1, 0x24, 0xb4, 0x48, + 0x48, 0x23, 0x66, 0x93, 0x50, 0x5a, 0x2a, 0xd0, 0xb1, 0x7d, 0x7d, 0xd7, 0xf7, 0xc5, 0xb1, 0xef, + 0x2f, 0x1a, 0x2c, 0x9f, 0x75, 0x94, 0x2f, 0x8e, 0xa5, 0xbf, 0xd3, 0x60, 0xa1, 0xa4, 0x26, 0xb8, + 0x38, 0x06, 0xfe, 0x41, 0x83, 0xcb, 0xe5, 0x97, 0xf6, 0xc5, 0xb1, 0xf1, 0xf7, 0x1a, 0x2c, 0x96, + 0xdd, 0xaa, 0x17, 0xc7, 0xc2, 0x3f, 0x6a, 0xa0, 0x0f, 0xba, 0xb8, 0x2f, 0xd6, 0x5e, 0x97, 0x57, + 0x06, 0x17, 0x2b, 0x60, 0x4a, 0x2e, 0xeb, 0x8b, 0x63, 0xe0, 0x9f, 0x35, 0xb8, 0x76, 0xc6, 0xc5, + 0x71, 0x71, 0x0c, 0xfd, 0x93, 0x06, 0x4b, 0xdb, 0xff, 0x07, 0x76, 0xbe, 0xac, 0xc2, 0x95, 0x01, + 0x00, 0xb4, 0x01, 0x55, 0xd1, 0xf3, 0xfa, 0x2e, 0xef, 0x2a, 0x2b, 0x97, 0xd5, 0xcc, 0xcc, 0xc4, + 0x81, 0x6b, 0xda, 0x94, 0x11, 0xb3, 0xb3, 0x66, 0x6e, 0x2a, 0x8c, 0x95, 0xa2, 0xd1, 0x77, 0x60, + 0x84, 0xf8, 0x1d, 0xbd, 0xb2, 0x32, 0x22, 0x97, 0x56, 0x22, 0xb4, 0xed, 0x77, 0x9e, 0x63, 0x66, + 0x09, 0x18, 0x7a, 0x0e, 0xd5, 0x56, 0x80, 0x1b, 0xb9, 0x79, 0xd6, 0x07, 0x79, 0x91, 0xdc, 0x6c, + 0xce, 0x54, 0xb3, 0x39, 0x73, 0x97, 0x32, 0xf7, 0x67, 0xd4, 0xe7, 0xd8, 0xab, 0x53, 0x67, 0x53, + 0x01, 0x08, 0x8b, 0xab, 0xfd, 0x56, 0x80, 0xa5, 0xfd, 0xef, 0xc0, 0xbc, 0xdb, 0x96, 0x43, 0x87, + 0xc8, 0xf3, 0x1a, 0xaa, 0x69, 0x1c, 0x95, 0x6e, 0x9b, 0x95, 0x8c, 0x7a, 0xe4, 0x79, 0xf1, 0xfd, + 0x80, 0x7e, 0x08, 0x35, 0x59, 0xd2, 0x87, 0xc4, 0x8b, 0xab, 0xb7, 0x31, 0x69, 0xfb, 0xfa, 0x2b, + 0xdd, 0x28, 0xab, 0xfd, 0x43, 0x25, 0xb5, 0xed, 0x73, 0xd6, 0xb5, 0xa6, 0xfd, 0x1c, 0x09, 0x3d, + 0x83, 0x4b, 0x01, 0x75, 0x1a, 0x8e, 0x1b, 0xb2, 0x28, 0x10, 0x25, 0x67, 0xe3, 0x38, 0x72, 0x9a, + 0x84, 0xeb, 0xe3, 0xbd, 0x1b, 0x55, 0xa7, 0xce, 0xe3, 0x14, 0xf5, 0x48, 0x82, 0xe4, 0x82, 0x16, + 0x82, 0x7e, 0x06, 0xfa, 0x29, 0xcc, 0x0a, 0xb5, 0xd8, 0xf7, 0x29, 0xc7, 0x82, 0x1e, 0xea, 0x13, + 0xd2, 0xe4, 0x7b, 0xaf, 0x36, 0x59, 0xf8, 0x2c, 0x93, 0x8b, 0x8d, 0x9e, 0x09, 0x0a, 0x44, 0x64, + 0xc2, 0x42, 0xc0, 0x5c, 0x2a, 0xfa, 0xb7, 0x86, 0xed, 0xe1, 0x30, 0x94, 0x73, 0x3e, 0xbd, 0x2a, + 0xdd, 0x37, 0x9f, 0xb0, 0xb6, 0x04, 0x67, 0x1f, 0xb7, 0x09, 0xda, 0x84, 0x59, 0x46, 0xb0, 0xe3, + 0xfa, 0xa2, 0x4a, 0x0b, 0x18, 0x3d, 0x26, 0xfa, 0xa4, 0x5c, 0xa0, 0x9e, 0xd9, 0x63, 0x25, 0x80, + 0xba, 0xe0, 0x5b, 0x33, 0xac, 0xf0, 0x8e, 0xbe, 0x09, 0x35, 0x46, 0x02, 0xcf, 0xb5, 0x71, 0xc3, + 0xa6, 0x91, 0xcf, 0x75, 0x58, 0xd1, 0x6e, 0xd7, 0xac, 0x69, 0x45, 0xdc, 0x12, 0x34, 0xb4, 0x06, + 0x93, 0x2c, 0x59, 0x8c, 0x3e, 0x25, 0xbf, 0xb0, 0x90, 0xff, 0x82, 0x62, 0x59, 0x19, 0x0a, 0x3d, + 0x80, 0x89, 0x90, 0xb0, 0x8e, 0x6b, 0x13, 0x7d, 0x5a, 0x8d, 0x4b, 0x4b, 0x4e, 0xe4, 0x61, 0x0c, + 0x89, 0x8f, 0x90, 0xc2, 0x8b, 0x10, 0x08, 0x39, 0xc3, 0x9c, 0x34, 0xbb, 0x7a, 0xad, 0x77, 0xc6, + 0xf2, 0x98, 0x04, 0x1e, 0xed, 0x8a, 0x56, 0xea, 0x50, 0x61, 0xac, 0x14, 0x8d, 0xee, 0x43, 0x95, + 0x76, 0x08, 0xf3, 0x70, 0x37, 0xd4, 0x1d, 0x15, 0x07, 0xa9, 0xe4, 0xe9, 0x46, 0x78, 0x70, 0x2c, + 0x4a, 0xa7, 0x83, 0x18, 0x62, 0xa5, 0xd8, 0xa5, 0x8f, 0x60, 0xbe, 0xef, 0x44, 0xa1, 0x39, 0x18, + 0x39, 0x25, 0x5d, 0x55, 0x67, 0x8b, 0x47, 0xb4, 0x08, 0x63, 0x1d, 0x91, 0x1c, 0x54, 0x1a, 0x88, + 0x5f, 0xbe, 0x5b, 0xd9, 0xd0, 0x96, 0x36, 0x45, 0xcd, 0xd3, 0xb7, 0xbf, 0xc3, 0xa8, 0x30, 0xbe, + 0xd4, 0x60, 0xae, 0xd7, 0x44, 0x74, 0x1d, 0xa6, 0x70, 0xe0, 0x36, 0x3a, 0x84, 0x85, 0x2e, 0xf5, + 0x95, 0x22, 0xc0, 0x81, 0xfb, 0x3c, 0xa6, 0x20, 0x04, 0xa3, 0xa7, 0xae, 0xef, 0x28, 0x75, 0xf2, + 0x59, 0xd0, 0xe4, 0xb1, 0x19, 0x89, 0x69, 0xe2, 0x19, 0x3d, 0x84, 0x89, 0x00, 0x73, 0xbb, 0x45, + 0x42, 0x7d, 0x54, 0x3a, 0xe6, 0xc6, 0x60, 0xc7, 0x98, 0x75, 0xcc, 0x5b, 0x2a, 0x0b, 0x2a, 0xa1, + 0xa5, 0xeb, 0x30, 0x99, 0x52, 0xc5, 0x07, 0xe4, 0x48, 0x31, 0x36, 0x47, 0x3e, 0x1b, 0xbf, 0x1e, + 0x83, 0x5a, 0x61, 0x9e, 0x8d, 0x8e, 0x4a, 0x07, 0xd0, 0x5a, 0x7f, 0x4b, 0x92, 0x13, 0x32, 0xd5, + 0xba, 0xd4, 0x48, 0xbc, 0x64, 0xfe, 0x5c, 0x87, 0xb9, 0x38, 0xa9, 0x34, 0xb2, 0x99, 0x4c, 0x65, + 0x18, 0x9d, 0xb3, 0xb1, 0x78, 0x5a, 0x01, 0xa2, 0xcd, 0xdc, 0x78, 0x79, 0x64, 0x18, 0x4d, 0xaf, + 0x18, 0x33, 0x8f, 0x0e, 0xa3, 0xab, 0x7f, 0xcc, 0x5c, 0xd2, 0xce, 0xc5, 0xe9, 0xf1, 0x35, 0x35, + 0xf6, 0xb6, 0x73, 0x4f, 0xfa, 0xda, 0xb9, 0xf1, 0x61, 0xd4, 0x15, 0xfb, 0xb9, 0x25, 0x0c, 0xb5, + 0x02, 0x1f, 0xe9, 0x30, 0x51, 0x3c, 0xa5, 0xc9, 0x2b, 0xba, 0x9f, 0xfe, 0x00, 0x11, 0xfb, 0x34, + 0x93, 0x1f, 0x1c, 0x15, 0x3f, 0xd8, 0xf3, 0x1f, 0x64, 0x03, 0xc6, 0x95, 0xee, 0x2a, 0x8c, 0xee, + 0x1f, 0xec, 0x6f, 0xcf, 0x7d, 0x03, 0x4d, 0x43, 0xf5, 0x59, 0xfd, 0xf1, 0xe6, 0xd1, 0xde, 0xfe, + 0xce, 0x9c, 0x86, 0xa6, 0x60, 0x62, 0x77, 0x7b, 0xf3, 0xc9, 0xd1, 0xee, 0x8f, 0xe6, 0x2a, 0x68, + 0x12, 0xc6, 0xb6, 0x2d, 0xeb, 0xc0, 0x9a, 0x1b, 0x31, 0xfe, 0xad, 0xc1, 0x64, 0x9a, 0x94, 0xd0, + 0xfb, 0x30, 0xee, 0xb9, 0x6d, 0x97, 0x87, 0xba, 0x26, 0x17, 0x7c, 0xbd, 0x24, 0x73, 0x99, 0x4f, + 0x24, 0x22, 0xce, 0xca, 0x0a, 0x8e, 0xbe, 0x07, 0x55, 0x46, 0x3e, 0x8f, 0x48, 0xc8, 0x43, 0x75, + 0xab, 0xbe, 0x55, 0x26, 0x6a, 0x29, 0x4c, 0x2c, 0x9c, 0x8a, 0x2c, 0x3d, 0x80, 0xa9, 0x9c, 0xd6, + 0xa1, 0xd2, 0xc9, 0x07, 0x50, 0x2b, 0x68, 0x1d, 0x2a, 0x91, 0xfc, 0xa7, 0x02, 0x33, 0xc5, 0xa4, + 0x8f, 0x6e, 0xc3, 0x28, 0x79, 0x41, 0x6c, 0x15, 0x7c, 0x8b, 0xb9, 0x06, 0xfe, 0x05, 0xb1, 0x37, + 0xe5, 0x4c, 0xc6, 0x92, 0x08, 0xb4, 0x06, 0x13, 0x2d, 0xce, 0x83, 0x1d, 0xc2, 0x55, 0x54, 0xe5, + 0x7e, 0x57, 0xed, 0x1e, 0x1d, 0xd5, 0x77, 0x08, 0x57, 0xf8, 0x04, 0x87, 0xde, 0x87, 0x49, 0x6e, + 0x07, 0x87, 0xd4, 0x3e, 0x25, 0x5c, 0x05, 0xd0, 0xd5, 0xdc, 0x78, 0x74, 0xab, 0x1e, 0xb3, 0x94, + 0x58, 0x86, 0x45, 0x77, 0x60, 0x41, 0x54, 0x2e, 0x2e, 0xf6, 0x1e, 0x13, 0x0f, 0x77, 0x0f, 0x89, + 0x4d, 0x7d, 0x27, 0xfe, 0x4d, 0x36, 0x66, 0x95, 0xb1, 0xd0, 0x2d, 0x98, 0xe1, 0x6e, 0x9b, 0xd0, + 0x88, 0x27, 0xe0, 0x31, 0x09, 0xee, 0xa1, 0xa2, 0x1b, 0x50, 0x0b, 0x08, 0x73, 0xa9, 0x93, 0xc0, + 0xc6, 0x25, 0xac, 0x48, 0x44, 0xef, 0xc0, 0x5c, 0x18, 0xd9, 0x36, 0x09, 0xc3, 0xa3, 0x16, 0x23, + 0x61, 0x8b, 0x7a, 0x8e, 0x3e, 0x21, 0x81, 0x7d, 0x74, 0x81, 0x3d, 0xc1, 0xae, 0x17, 0x31, 0x92, + 0x61, 0xab, 0x31, 0xb6, 0x97, 0x6e, 0xdc, 0x02, 0xc8, 0xfc, 0x2a, 0x02, 0xc3, 0xa6, 0xed, 0x36, + 0xf6, 0x1d, 0x79, 0xfe, 0x26, 0xad, 0xe4, 0xd5, 0xf8, 0xa5, 0x06, 0xb5, 0x82, 0x4f, 0xcb, 0x12, + 0xab, 0xa0, 0xb5, 0x68, 0xc8, 0x93, 0x6c, 0x2e, 0x9e, 0xd1, 0x65, 0x18, 0x0f, 0xed, 0x16, 0x69, + 0x13, 0x55, 0x59, 0xa9, 0x37, 0x74, 0x1f, 0xa6, 0xc4, 0xae, 0xec, 0x12, 0xec, 0x10, 0x16, 0xaa, + 0x7c, 0xb1, 0x58, 0xdc, 0xc1, 0x98, 0x69, 0xe5, 0x81, 0xc6, 0x7d, 0x80, 0x8c, 0x95, 0xde, 0x1f, + 0x5a, 0xee, 0xfe, 0x28, 0x3d, 0x6e, 0xc6, 0x4d, 0x98, 0xed, 0xd9, 0xdf, 0xd4, 0xdc, 0x4a, 0x66, + 0xae, 0xf1, 0x37, 0x0d, 0xae, 0x0c, 0xa8, 0xb3, 0x44, 0xfd, 0xd1, 0x76, 0xfd, 0x06, 0xee, 0x60, + 0xd7, 0x13, 0x05, 0xb7, 0xfc, 0x6a, 0xcd, 0x9a, 0x6e, 0xbb, 0xfe, 0x66, 0x42, 0x43, 0x07, 0x22, + 0x45, 0xab, 0x1a, 0x31, 0x3e, 0x96, 0xeb, 0xb9, 0x6a, 0x22, 0xfd, 0x31, 0x6c, 0x06, 0xa7, 0x4d, + 0x41, 0x08, 0xcd, 0x36, 0xe1, 0x58, 0xd4, 0x17, 0x4f, 0xf0, 0x31, 0xf1, 0x92, 0x6b, 0xdd, 0x4a, + 0x95, 0xa0, 0xb7, 0x61, 0xb6, 0x8d, 0x5f, 0x34, 0x22, 0x3f, 0xfb, 0xee, 0x88, 0xfc, 0xee, 0x4c, + 0x1b, 0xbf, 0x78, 0x96, 0x51, 0x8d, 0xcf, 0x01, 0xf5, 0x57, 0x1c, 0x62, 0x91, 0xbc, 0x1b, 0xa4, + 0x1e, 0x12, 0xcf, 0x68, 0x07, 0x6a, 0x8c, 0x7a, 0xa2, 0x60, 0x7e, 0x16, 0x38, 0x98, 0x13, 0x65, + 0x68, 0x3e, 0x65, 0xe4, 0xd9, 0x99, 0x56, 0xab, 0x28, 0x67, 0x5c, 0x85, 0x2b, 0x03, 0x90, 0xc6, + 0x43, 0x80, 0xf8, 0xa6, 0x7e, 0x4a, 0x38, 0x4e, 0xf7, 0x69, 0x2c, 0xb7, 0x4f, 0x85, 0x6e, 0x65, + 0xbc, 0xa7, 0x5b, 0x31, 0xfe, 0x3a, 0x0e, 0xd5, 0x23, 0x12, 0x72, 0x51, 0xa3, 0xa2, 0x77, 0xe3, + 0x7e, 0xe1, 0x43, 0x79, 0x48, 0xae, 0xe5, 0x7f, 0x68, 0xc4, 0x00, 0xd1, 0x2e, 0xc4, 0x39, 0x4d, + 0x36, 0x0c, 0x85, 0x1a, 0xb0, 0xfe, 0x5a, 0x35, 0x60, 0x49, 0x79, 0xfa, 0xe9, 0x90, 0xe5, 0x69, + 0xbe, 0x4d, 0x79, 0xfe, 0x35, 0xb6, 0x29, 0x03, 0x1b, 0x84, 0x1f, 0x7c, 0xa5, 0x06, 0x21, 0xdf, + 0xbd, 0x55, 0x87, 0xea, 0xde, 0x0e, 0xfa, 0x5b, 0x8b, 0x1f, 0xcb, 0x9d, 0xb9, 0x55, 0xb2, 0x33, + 0xaf, 0xd3, 0x4b, 0xec, 0xf5, 0x36, 0x57, 0x3f, 0xe9, 0xad, 0xfb, 0x52, 0x75, 0xaf, 0xea, 0xa6, + 0xce, 0x5b, 0x56, 0xdf, 0x87, 0x6a, 0x72, 0x86, 0xfe, 0xc7, 0xd5, 0xf4, 0x57, 0xae, 0xe8, 0x8f, + 0xc7, 0xe5, 0x4c, 0x60, 0xfd, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xe9, 0x8f, 0xd5, 0xdd, 0x3a, + 0x23, 0x00, 0x00, } -func skipIstiocontrolplaneTypes(dAtA []byte) (n int, err error) { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - wireType := int(wire & 0x7) - switch wireType { - case 0: - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - iNdEx++ - if dAtA[iNdEx-1] < 0x80 { - break - } - } - return iNdEx, nil - case 1: - iNdEx += 8 - return iNdEx, nil - case 2: - var length int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - length |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if length < 0 { - return 0, ErrInvalidLengthIstiocontrolplaneTypes - } - iNdEx += length - if iNdEx < 0 { - return 0, ErrInvalidLengthIstiocontrolplaneTypes - } - return iNdEx, nil - case 3: - for { - var innerWire uint64 - var start int = iNdEx - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowIstiocontrolplaneTypes - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - innerWire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - innerWireType := int(innerWire & 0x7) - if innerWireType == 4 { - break - } - next, err := skipIstiocontrolplaneTypes(dAtA[start:]) - if err != nil { - return 0, err - } - iNdEx = start + next - if iNdEx < 0 { - return 0, ErrInvalidLengthIstiocontrolplaneTypes - } - } - return iNdEx, nil - case 4: - return iNdEx, nil - case 5: - iNdEx += 4 - return iNdEx, nil - default: - return 0, fmt.Errorf("proto: illegal wireType %d", wireType) - } - } - panic("unreachable") -} - -var ( - ErrInvalidLengthIstiocontrolplaneTypes = fmt.Errorf("proto: negative length found during unmarshaling") - ErrIntOverflowIstiocontrolplaneTypes = fmt.Errorf("proto: integer overflow") -) diff --git a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/istiocontrolplane_types.proto b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/istiocontrolplane_types.proto index 2c6f230769ed..18638e4004fa 100644 --- a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/istiocontrolplane_types.proto +++ b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/istiocontrolplane_types.proto @@ -17,6 +17,7 @@ syntax = "proto3"; package v1alpha2; import "k8s.io/api/core/v1/generated.proto"; +import "k8s.io/api/apps/v1/generated.proto"; import "k8s.io/api/autoscaling/v2beta1/generated.proto"; import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto"; import "github.com/gogo/protobuf/protobuf/google/protobuf/wrappers.proto"; @@ -166,22 +167,17 @@ message IstioControlPlaneSpec { ConfigManagementFeatureSpec config_management = 29; AutoInjectionFeatureSpec auto_injection = 30; GatewayFeatureSpec gateways = 31; - // Overrides for default global values.yaml. - // Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` + // Overrides for default global values.yaml. + // Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` + // UnvalidatedValues map[string]interface{} `protobuf:"bytes,6,opt,name=unvalidatedValues" json:"unvalidatedValues,omitempty"` // Path or name for the profile e.g. // minimal (looks in profiles dir for a file called minimal.yaml) // /tmp/istio/install/values/custom/custom-install.yaml (local file path) // default profile is used if this field is unset. string profile = 100; // Path for the install package. e.g. - // https://github.com/istio/istio/releases/tags/1.3.2 - // https://github.com/istio/istio/releases/tags/1.3-latest // /tmp/istio-installer/nightly (local file path) string install_package_path = 102; - // An alias for installPackagePath: https://github.com/istio/istio/releases/tags/ - // e.g. version: 1.3.2 points to https://github.com/istio/istio/releases/tags/1.3.2 - // installPackagePath and version cannot both be set. - string version = 103; // Root for docker image paths e.g. docker.io/istio-release. // Releases are published to docker hub under 'istio' project. // Daily builds from prow are on gcr.io, and nightly builds from circle on docker.io/istionightly @@ -214,21 +210,6 @@ message PolicyFeatureSpec { // Must be enabled to enable any sub-component. google.protobuf.BoolValue enabled = 1; - // Default behavior of the sidecar for handling outbound traffic from the application. - enum OutboundPolicy { - // Outbound traffic to unknown destinations will be allowed, in case there are no - // services or ServiceEntries for the destination port - ALLOW_ANY = 0; - // Restrict outbound traffic to services defined in the service registry as well - // as those defined through ServiceEntries - REGISTRY_ONLY = 1; - } - - // If set, allows traffic in cases when the mixer policy service cannot be reached. - google.protobuf.BoolValue policy_check_fail_open = 10; - // Selects the outbound traffic policy mode. - OutboundPolicy outbound_traffic_policy_mode = 11; - // Component specific config. message Components { // Namespace that all policy components are installed into. @@ -262,13 +243,6 @@ message SecurityFeatureSpec { // Selects whether security feature is installed. Must be set for any sub-component to be installed. google.protobuf.BoolValue enabled = 1; - // Enables MTLS for control plane. - // Will result in delays starting the pods while secrets are propagated, not recommended for tests. - google.protobuf.BoolValue control_plane_mtls = 13; - - // Enables strict MTLS for service to service traffic, or permissive mode MTLS if unset. - google.protobuf.BoolValue data_plane_mtls_strict = 14; - message Components { // Namespace that security components are installed into. string namespace = 1; @@ -328,84 +302,93 @@ message GatewayFeatureSpec { Components components = 50; } +// Configuration common to all components. + +// Selects whether this component is installed. +// google.protobuf.BoolValue enabled = 1; + +// Namespace that all resources for this component are installed into. Overrides the parent feature namespace and +// IstioControlPlaneSpec.DefaultNamespace. +// string namespace = 2; + +// Kubernetes resource spec. +// KubernetesResourcesSpec k8s = 80; + // Configuration options for the pilot component. message PilotComponentSpec { - CommonComponentSpec common = 1; - - // Enables sidecar in the pilot pod. - google.protobuf.BoolValue sidecar = 10; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // Configuration options for the proxy. message ProxyComponentSpec { - CommonComponentSpec common = 1; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // Configuration options for the sidecar injector component. message SidecarInjectorComponentSpec { - CommonComponentSpec common = 1; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // Configuration options for the policy enforcement component. message PolicyComponentSpec { - CommonComponentSpec common = 1; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // Configuration options for the telemetry component. message TelemetryComponentSpec { - CommonComponentSpec common = 1; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // Configuration options for Citadel component. message CitadelComponentSpec { - CommonComponentSpec common = 1; - - bool self_signed = 11; - bool create_mesh_policy = 12; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // Configuration options for certificate manager component. message CertManagerComponentSpec { - CommonComponentSpec common = 1; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // Configuration options for node agent component. message NodeAgentComponentSpec { - CommonComponentSpec common = 1; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // Configuration options for node agent component. message GalleyComponentSpec { - CommonComponentSpec common = 1; + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } -// Configuration common to all components. -// +k8s:deepcopy-gen=false -message CommonComponentSpec { - // Selects whether this component is installed. +// Configuration options for ingress gateways. +message IngressGatewayComponentSpec { google.protobuf.BoolValue enabled = 1; - // Namespace that all resources for this component are installed into. Overrides the parent feature namespace and - // IstioControlPlaneSpec.DefaultNamespace. string namespace = 2; - // LogLevel sets the component log level. Mappings to underlying log levels are not necessarily 1:1 and depend on - // component support of these levels e.g. DEBUG or INFO may result in the same log verbosity. - enum LogLevel { - NONE = 0; - ERROR = 1; - WARN = 2; - DEBUG = 3; - INFO = 4; - } - LogLevel debug = 3; - - // Kubernetes resource spec. KubernetesResourcesSpec k8s = 80; +} - // Kustomize style overrides for default values.yaml. - // Values map[string]interface{} `protobuf:"bytes,6,opt,name=values" json:"values,omitempty"` - // Kustomize style overrides for default values.yaml, without validation i.e. items here do not have to conform to - // built-in values schema. Used for cases where forked templates are used with added parameters. - // UnvalidatedValues map[string]interface{} `protobuf:"bytes,6,opt,name=data" json:"unvalidatedValues,omitempty"` +// Configuration options for egress gateways. +message EgressGatewayComponentSpec { + google.protobuf.BoolValue enabled = 1; + string namespace = 2; + KubernetesResourcesSpec k8s = 80; } // KubernetesResourcesConfig is a common set of k8s resource configs for components. @@ -444,118 +427,17 @@ message KubernetesResourcesSpec { // k8s resources settings. // https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container Resources resources = 11; + // k8s Service settings. + // https://kubernetes.io/docs/concepts/services-networking/service/ + k8s.io.api.core.v1.ServiceSpec service = 12; + // k8s deployment strategy. + // https://kubernetes.io/docs/concepts/workloads/controllers/deployment/ + DeploymentStrategy strategy = 13; // Overlays for k8s resources in rendered manifests. repeated k8sObjectOverlay overlays = 100; } -// Configuration options for ingress gateways. -message IngressGatewayComponentSpec { - // Common gateway configuration. - CommonComponentSpec common = 10; - - enum IngressType { - ISTIO = 0; - KUBERNETES = 1; - } - IngressType ingress_type = 11; - - LoadBalancerConfig load_balancer = 13; - - // If true, ingress gateway fetches credentials from SDS server to handle TLS connections. - google.protobuf.BoolValue sds_enabled = 16; - - // External traffic policy. - enum ExternalTrafficPolicy { - NONE = 0; - // Preserves source IP. - LOCAL = 1; - CLUSTER = 2; - } - ExternalTrafficPolicy externalTrafficPolicy = 17; -} - -// Configuration options for egress gateways. -message EgressGatewayComponentSpec { - // Common gateway configuration. - CommonComponentSpec common = 1; -} - -// Configuration options for internal load balancer gateways. -message LoadBalancingGatewayConfig { - // Common gateway configuration. - CommonComponentSpec common = 1; - - // Load balancer config. - LoadBalancerConfig load_balancer = 11; -} - -// Configuration options for internal load balancer gateways. -// Subset of k8s.io/api/core/v1 ServiceSpec. -message LoadBalancerConfig { - // The list of ports that are exposed by this service. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies - repeated k8s.io.api.core.v1.ServicePort ports = 1; - - // clusterIP is the IP address of the service and is usually assigned - // randomly by the master. If an address is specified manually and is not in - // use by others, it will be allocated to the service; otherwise, creation - // of the service will fail. This field can not be changed through updates. - // Valid values are "None", empty string (""), or a valid IP address. "None" - // can be specified for headless services when proxying is not required. - // Only applies to types ClusterIP, NodePort, and LoadBalancer. Ignored if - // type is ExternalName. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies - // +optional - string clusterIP = 3; - - // externalIPs is a list of IP addresses for which nodes in the cluster - // will also accept traffic for this service. These IPs are not managed by - // Kubernetes. The user is responsible for ensuring that traffic arrives - // at a node with this IP. A common example is external load-balancers - // that are not part of the Kubernetes system. - // +optional - repeated string externalIPs = 5; - - // Supports "ClientIP" and "None". Used to maintain session affinity. - // Enable client IP based session affinity. - // Must be ClientIP or None. - // Defaults to None. - // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies - // +optional - string sessionAffinity = 7; - - // LoadBalancer will get created with the IP specified in this field. - // This feature depends on whether the underlying cloud-provider supports specifying - // the loadBalancerIP when a load balancer is created. - // This field will be ignored if the cloud-provider does not support the feature. - // +optional - string loadBalancerIP = 8; - - // If specified and supported by the platform, this will restrict traffic through the cloud-provider - // load-balancer will be restricted to the specified client IPs. This field will be ignored if the - // cloud-provider does not support the feature." - // More info: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/ - // +optional - repeated string loadBalancerSourceRanges = 9; - - // externalName is the external reference that kubedns or equivalent will - // return as a CNAME record for this service. No proxying will be involved. - // Must be a valid RFC-1123 hostname (https://tools.ietf.org/html/rfc1123) - // and requires Type to be ExternalName. - // +optional - string externalName = 10; - - // externalTrafficPolicy denotes if this Service desires to route external - // traffic to node-local or cluster-wide endpoints. "Local" preserves the - // client source IP and avoids a second hop for LoadBalancer and Nodeport - // type services, but risks potentially imbalanced traffic spreading. - // "Cluster" obscures the client source IP and may cause a second hop to - // another node, but should have good overall load-spreading. - // +optional - string externalTrafficPolicy = 11; -} - // Patch for an existing k8s resource. message k8sObjectOverlay { message PathValue { @@ -654,6 +536,16 @@ message PodDisruptionBudgetSpec { uint32 max_unavailable = 3; } +// Mirrors k8s.io.api.apps.v1.DeploymentStrategy for unmarshaling. +message DeploymentStrategy { + string type = 1; + RollingUpdateDeployment rollingUpdate = 2; +} + +// Mirrors k8s.io.api.apps.v1.RollingUpdateDeployment for unmarshaling. +message RollingUpdateDeployment { +} + message ObjectMeta { // From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta string name = 5; diff --git a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/v1alpha2.pb.html b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/v1alpha2.pb.html new file mode 100644 index 000000000000..17ece284dbae --- /dev/null +++ b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/v1alpha2.pb.html @@ -0,0 +1,2053 @@ +--- +title: v1alpha2 +layout: protoc-gen-docs +generator: protoc-gen-docs +number_of_entries: 49 +--- +

AutoInjectionFeatureSpec

+
+

Configuration options for auto injection feature.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +

Selects whether auto injection feature is installed. Must be set for any sub-component to be installed.

+ +
componentsAutoInjectionFeatureSpec.Components +
+
+

AutoInjectionFeatureSpec.Components

+
+ + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namespacestring +

Namespace that auto injections components are installed into.

+ +
injectorSidecarInjectorComponentSpec +
+
+

CertManagerComponentSpec

+
+

Configuration options for certificate manager component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

CitadelComponentSpec

+
+

Configuration options for Citadel component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

ConfigManagementFeatureSpec

+
+

Configuration options for configuration management feature.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +

Selects whether config management feature is installed. Must be set for any sub-component to be installed.

+ +
componentsConfigManagementFeatureSpec.Components +
+
+

ConfigManagementFeatureSpec.Components

+
+ + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namespacestring +

Namespace that security components are installed into.

+ +
galleyGalleyComponentSpec +
+
+

DeploymentStrategy

+
+

Mirrors k8s.io.api.apps.v1.DeploymentStrategy for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
typestring +
rollingUpdateRollingUpdateDeployment +
+
+

EgressGatewayComponentSpec

+
+

Configuration options for egress gateways.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

ExecAction

+
+

Mirrors k8s.io.api.core.v1.ExecAction for unmarshaling

+ + + + + + + + + + + + + + + + +
FieldTypeDescription
commandstring[] +
+
+

GalleyComponentSpec

+
+

Configuration options for node agent component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

GatewayFeatureSpec

+
+

Configuration options for gateway feature.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +

Selects whether gateway feature is installed. Must be set for any sub-component to be installed.

+ +
componentsGatewayFeatureSpec.Components +
+
+

GatewayFeatureSpec.Components

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namespacestring +

Namespace that auto injections components are installed into.

+ +
ingressGatewayIngressGatewayComponentSpec +

Ingress/egress gateway configuration.

+ +
egressGatewayEgressGatewayComponentSpec +
+
+

HTTPGetAction

+
+

Mirrors k8s.io.api.core.v1.HTTPGetAction for unmarshaling

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
pathstring +
hoststring +
schemestring +
httpHeadersHTTPHeader[] +
+
+

HTTPHeader

+
+

Mirrors k8s.io.api.core.v1.HTTPHeader for unmarshaling

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namestring +
valuestring +
+
+

IngressGatewayComponentSpec

+
+

Configuration options for ingress gateways.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

InstallStatus

+
+

Observed state of IstioControlPlane.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
trafficManagementInstallStatus.VersionStatus +
policyTelemetryInstallStatus.VersionStatus +
securityInstallStatus.VersionStatus +
configManagementInstallStatus.VersionStatus +
ingressGatewayInstallStatus.VersionStatus[] +
egressGatewayInstallStatus.VersionStatus[] +
+
+

InstallStatus.Status

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescription
NONE +
UPDATING +
HEALTHY +
ERROR +
+
+

InstallStatus.VersionStatus

+
+ + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
versionstring +
statusInstallStatus.Status +
+
+

IstioControlPlane

+
+

IstioControlPlane is a CustomResourceDefinition (CRD) describing an Istio control plane.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
specIstioControlPlaneSpec +

Spec defines the desired state of IstioControlPlane.

+ +
statusInstallStatus +

Status reports the status of the Istio control plane.

+ +
+
+

IstioControlPlaneSpec

+
+

IstioControlPlaneSpec defines the desired state of IstioControlPlane. +The spec is a used to define a customization of the default profile values that are supplied with each Istio release. +It is grouped at the top level by feature, where behavior of Istio functional areas is specified. +Each feature contains components, where k8s resource level defaults can be overridden. +Because the spec is a customization API, specifying an empty InstallSpec results in a default Istio control plane.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
defaultNamespacestring +

Default namespace if feature or component namespaces are not set.

+ +
trafficManagementTrafficManagementFeatureSpec +

Selection and configuration of core Istio features.

+ +
policyPolicyFeatureSpec +
telemetryTelemetryFeatureSpec +
securitySecurityFeatureSpec +
configManagementConfigManagementFeatureSpec +
autoInjectionAutoInjectionFeatureSpec +
gatewaysGatewayFeatureSpec +
profilestring +

Overrides for default global values.yaml. +Values map[string]interface{} protobuf:"bytes,6,opt,name=values" json:"values,omitempty" +UnvalidatedValues map[string]interface{} protobuf:"bytes,6,opt,name=unvalidatedValues" json:"unvalidatedValues,omitempty" +Path or name for the profile e.g. + minimal (looks in profiles dir for a file called minimal.yaml) + /tmp/istio/install/values/custom/custom-install.yaml (local file path) +default profile is used if this field is unset.

+ +
installPackagePathstring +

Path for the install package. e.g. + /tmp/istio-installer/nightly (local file path)

+ +
hubstring +

Root for docker image paths e.g. docker.io/istio-release. +Releases are published to docker hub under ‘istio’ project. +Daily builds from prow are on gcr.io, and nightly builds from circle on docker.io/istionightly

+ +
tagstring +

Version tag for docker images e.g. 1.0.6

+ +
+
+

KubernetesResourcesSpec

+
+

KubernetesResourcesConfig is a common set of k8s resource configs for components.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
affinityk8s.io.api.core.v1.Affinity +

k8s affinity. +https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity

+ +
envk8s.io.api.core.v1.EnvVar[] +

Deployment environment variables. +https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/

+ +
hpaSpeck8s.io.api.autoscaling.v2beta1.HorizontalPodAutoscalerSpec +

k8s HorizontalPodAutoscaler settings. +https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/

+ +
imagePullPolicystring +

k8s imagePullPolicy. +https://kubernetes.io/docs/concepts/containers/images/

+ +
nodeSelectormap<string, string> +

k8s nodeSelector. +https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector

+ +
podDisruptionBudgetPodDisruptionBudgetSpec +

k8s PodDisruptionBudget settings. +https://kubernetes.io/docs/concepts/workloads/pods/disruptions/#how-disruption-budgets-work

+ +
podAnnotationsmap<string, string> +

k8s pod annotations. +https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/

+ +
priorityClassNamestring +

k8s priorityclassname. Default for all resources unless overridden. +https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass

+ +
readinessProbeReadinessProbe +

k8s readinessProbe settings. +https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/ +k8s.io.api.core.v1.Probe readiness_probe = 9;

+ +
replicaCountuint32 +

k8s Deployment replicas setting. +https://kubernetes.io/docs/concepts/workloads/controllers/deployment/

+ +
resourcesResources +

k8s resources settings. +https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container

+ +
servicek8s.io.api.core.v1.ServiceSpec +

k8s Service settings. +https://kubernetes.io/docs/concepts/services-networking/service/

+ +
strategyDeploymentStrategy +

k8s deployment strategy. +https://kubernetes.io/docs/concepts/workloads/controllers/deployment/

+ +
overlaysk8sObjectOverlay[] +

Overlays for k8s resources in rendered manifests.

+ +
+
+

NodeAgentComponentSpec

+
+

Configuration options for node agent component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

ObjectMeta

+
+ + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namestring +

From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta

+ +
namespacestring +
+
+

PilotComponentSpec

+
+

Configuration options for the pilot component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

PodDisruptionBudgetSpec

+
+

Mirrors k8s.io.api.policy.v1beta1.PodDisruptionBudget for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
minAvailableuint32 +
selectork8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector +
maxUnavailableuint32 +
+
+

PolicyComponentSpec

+
+

Configuration options for the policy enforcement component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

PolicyFeatureSpec

+
+

Configuration options for the policy feature.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +

Selects whether policy is installed. +Must be enabled to enable any sub-component.

+ +
componentsPolicyFeatureSpec.Components +
+
+

PolicyFeatureSpec.Components

+
+

Component specific config.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namespacestring +

Namespace that all policy components are installed into.

+ +
policyPolicyComponentSpec +
+
+

ProxyComponentSpec

+
+

Configuration options for the proxy.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

ReadinessProbe

+
+

Mirrors k8s.io.api.core.v1.Probe for unmarshaling

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
execExecAction +
httpGetHTTPGetAction +
tcpSocketTCPSocketAction +
initialDelaySecondsint32 +
timeoutSecondsint32 +
periodSecondsint32 +
successThresholdint32 +
failureThresholdint32 +
+
+

Resources

+
+

Mirrors k8s.io.api.core.v1.ResourceRequirements for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
limitsmap<string, string> +
requestsmap<string, string> +
+
+

RollingUpdateDeployment

+
+

Mirrors k8s.io.api.apps.v1.RollingUpdateDeployment for unmarshaling.

+ +
+

SecurityFeatureSpec

+
+

Configuration options for security feature.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +

Selects whether security feature is installed. Must be set for any sub-component to be installed.

+ +
componentsSecurityFeatureSpec.Components +
+
+

SecurityFeatureSpec.Components

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namespacestring +

Namespace that security components are installed into.

+ +
citadelCitadelComponentSpec +
certManagerCertManagerComponentSpec +
nodeAgentNodeAgentComponentSpec +
+
+

SidecarInjectorComponentSpec

+
+

Configuration options for the sidecar injector component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

TCPSocketAction

+
+

Mirrors k8s.io.api.core.v1.TCPSocketAction for unmarshaling

+ + + + + + + + + + + + + + + + +
FieldTypeDescription
hoststring +
+
+

TelemetryComponentSpec

+
+

Configuration options for the telemetry component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +
namespacestring +
k8sKubernetesResourcesSpec +
+
+

TelemetryFeatureSpec

+
+

Configuration options for the telemetry feature.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +

Selects whether telemetry is installed. +Must be enabled to enable any sub-component.

+ +
componentsTelemetryFeatureSpec.Components +
+
+

TelemetryFeatureSpec.Components

+
+

Component specific config.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namespacestring +

Namespace that all telemetry components are installed into.

+ +
telemetryTelemetryComponentSpec +
+
+

TestKube

+
+

TESTING ONLY

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
envmap<string, string> +
resourcesResources +
readinessProbeReadinessProbe +

k8s.io.api.core.v1.Probe readiness_probe = 81;

+ +
hpaSpeck8s.io.api.autoscaling.v2beta1.HorizontalPodAutoscalerSpec +
podDisruptionBudgetPodDisruptionBudgetSpec +
affinityk8s.io.api.core.v1.Affinity +
podAnnotationsmap<string, string> +
nodeSelectormap<string, string> +
overlaysk8sObjectOverlay[] +

Kustomize style overrides for k8s resources in rendered manifests.

+ +
+
+

TrafficManagementFeatureSpec

+
+

Configuration options for traffic management.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
enabledgoogle.protobuf.BoolValue +

Selects whether traffic management is installed. +Must be enabled to enable any sub-component.

+ +
componentsTrafficManagementFeatureSpec.Components +
+
+

TrafficManagementFeatureSpec.Components

+
+

Component specific config.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namespacestring +

Namespace that all traffic management components are installed into.

+ +
pilotPilotComponentSpec +
proxyProxyComponentSpec +
+
+

k8s.io.api.autoscaling.v2beta1.HorizontalPodAutoscalerSpec

+
+

HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
scaleTargetRefk8s.io.api.autoscaling.v2beta1.CrossVersionObjectReference +

scaleTargetRef points to the target resource to scale, and is used to the pods for which metrics +should be collected, as well as to actually change the replica count.

+ +
minReplicasint32 +

minReplicas is the lower limit for the number of replicas to which the autoscaler +can scale down. It defaults to 1 pod. minReplicas is allowed to be 0 if the +alpha feature gate HPAScaleToZero is enabled and at least one Object or External +metric is configured. Scaling is active as long as at least one metric value is +available. ++optional

+ +
maxReplicasint32 +

maxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. +It cannot be less that minReplicas.

+ +
metricsk8s.io.api.autoscaling.v2beta1.MetricSpec[] +

metrics contains the specifications for which to use to calculate the +desired replica count (the maximum replica count across all metrics will +be used). The desired replica count is calculated multiplying the +ratio between the target value and the current value by the current +number of pods. Ergo, metrics used must decrease as the pod count is +increased, and vice-versa. See the individual metric source types for +more information about how each type of metric must respond. ++optional

+ +
+
+

k8s.io.api.core.v1.Affinity

+
+

Affinity is a group of affinity scheduling rules.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
nodeAffinityk8s.io.api.core.v1.NodeAffinity +

Describes node affinity scheduling rules for the pod. ++optional

+ +
podAffinityk8s.io.api.core.v1.PodAffinity +

Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). ++optional

+ +
podAntiAffinityk8s.io.api.core.v1.PodAntiAffinity +

Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). ++optional

+ +
+
+

k8s.io.api.core.v1.EnvVar

+
+

EnvVar represents an environment variable present in a Container.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
namestring +

Name of the environment variable. Must be a C_IDENTIFIER.

+ +
valuestring +

Variable references $(VARNAME) are expanded +using the previous defined environment variables in the container and +any service environment variables. If a variable cannot be resolved, +the reference in the input string will be unchanged. The $(VARNAME) +syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped +references will never be expanded, regardless of whether the variable +exists or not. +Defaults to “”. ++optional

+ +
valueFromk8s.io.api.core.v1.EnvVarSource +

Source for the environment variable’s value. Cannot be used if value is not empty. ++optional

+ +
+
+

k8s.io.api.core.v1.ServiceSpec

+
+

ServiceSpec describes the attributes that a user creates on a service.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
portsk8s.io.api.core.v1.ServicePort[] +

The list of ports that are exposed by this service. +More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies ++patchMergeKey=port ++patchStrategy=merge ++listType=map ++listMapKey=port ++listMapKey=protocol

+ +
selectormap<string, string> +

Route service traffic to pods with label keys and values matching this +selector. If empty or not present, the service is assumed to have an +external process managing its endpoints, which Kubernetes will not +modify. Only applies to types ClusterIP, NodePort, and LoadBalancer. +Ignored if type is ExternalName. +More info: https://kubernetes.io/docs/concepts/services-networking/service/ ++optional

+ +
clusterIPstring +

clusterIP is the IP address of the service and is usually assigned +randomly by the master. If an address is specified manually and is not in +use by others, it will be allocated to the service; otherwise, creation +of the service will fail. This field can not be changed through updates. +Valid values are “None”, empty string (“”), or a valid IP address. “None” +can be specified for headless services when proxying is not required. +Only applies to types ClusterIP, NodePort, and LoadBalancer. Ignored if +type is ExternalName. +More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies ++optional

+ +
typestring +

type determines how the Service is exposed. Defaults to ClusterIP. Valid +options are ExternalName, ClusterIP, NodePort, and LoadBalancer. +“ExternalName” maps to the specified externalName. +“ClusterIP” allocates a cluster-internal IP address for load-balancing to +endpoints. Endpoints are determined by the selector or if that is not +specified, by manual construction of an Endpoints object. If clusterIP is +“None”, no virtual IP is allocated and the endpoints are published as a +set of endpoints rather than a stable IP. +“NodePort” builds on ClusterIP and allocates a port on every node which +routes to the clusterIP. +“LoadBalancer” builds on NodePort and creates an +external load-balancer (if supported in the current cloud) which routes +to the clusterIP. +More info: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types ++optional

+ +
externalIPsstring[] +

externalIPs is a list of IP addresses for which nodes in the cluster +will also accept traffic for this service. These IPs are not managed by +Kubernetes. The user is responsible for ensuring that traffic arrives +at a node with this IP. A common example is external load-balancers +that are not part of the Kubernetes system. ++optional

+ +
sessionAffinitystring +

Supports “ClientIP” and “None”. Used to maintain session affinity. +Enable client IP based session affinity. +Must be ClientIP or None. +Defaults to None. +More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies ++optional

+ +
loadBalancerIPstring +

Only applies to Service Type: LoadBalancer +LoadBalancer will get created with the IP specified in this field. +This feature depends on whether the underlying cloud-provider supports specifying +the loadBalancerIP when a load balancer is created. +This field will be ignored if the cloud-provider does not support the feature. ++optional

+ +
loadBalancerSourceRangesstring[] +

If specified and supported by the platform, this will restrict traffic through the cloud-provider +load-balancer will be restricted to the specified client IPs. This field will be ignored if the +cloud-provider does not support the feature.” +More info: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/ ++optional

+ +
externalNamestring +

externalName is the external reference that kubedns or equivalent will +return as a CNAME record for this service. No proxying will be involved. +Must be a valid RFC-1123 hostname (https://tools.ietf.org/html/rfc1123) +and requires Type to be ExternalName. ++optional

+ +
externalTrafficPolicystring +

externalTrafficPolicy denotes if this Service desires to route external +traffic to node-local or cluster-wide endpoints. “Local” preserves the +client source IP and avoids a second hop for LoadBalancer and Nodeport +type services, but risks potentially imbalanced traffic spreading. +“Cluster” obscures the client source IP and may cause a second hop to +another node, but should have good overall load-spreading. ++optional

+ +
healthCheckNodePortint32 +

healthCheckNodePort specifies the healthcheck nodePort for the service. +If not specified, HealthCheckNodePort is created by the service api +backend with the allocated nodePort. Will use user-specified nodePort value +if specified by the client. Only effects when Type is set to LoadBalancer +and ExternalTrafficPolicy is set to Local. ++optional

+ +
publishNotReadyAddressesbool +

publishNotReadyAddresses, when set to true, indicates that DNS implementations +must publish the notReadyAddresses of subsets for the Endpoints associated with +the Service. The default value is false. +The primary use case for setting this field is to use a StatefulSet’s Headless Service +to propagate SRV records for its Pods without respect to their readiness for purpose +of peer discovery. ++optional

+ +
sessionAffinityConfigk8s.io.api.core.v1.SessionAffinityConfig +

sessionAffinityConfig contains the configurations of session affinity. ++optional

+ +
+
+

k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector

+
+

A label selector is a label query over a set of resources. The result of matchLabels and +matchExpressions are ANDed. An empty label selector matches all objects. A null +label selector matches no objects.

+ + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
matchLabelsmap<string, string> +

matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels +map is equivalent to an element of matchExpressions, whose key field is “key”, the +operator is “In”, and the values array contains only “value”. The requirements are ANDed. ++optional

+ +
matchExpressionsk8s.io.apimachinery.pkg.apis.meta.v1.LabelSelectorRequirement[] +

matchExpressions is a list of label selector requirements. The requirements are ANDed. ++optional

+ +
+
+

k8sObjectOverlay

+
+

Patch for an existing k8s resource.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescription
apiVersionstring +

Resource API version.

+ +
kindstring +

Resource kind.

+ +
namestring +

Name of resource. +Namespace is always the component namespace.

+ +
patchesk8sObjectOverlay.PathValue[] +

List of patches to apply to resource.

+ +
+
+

k8sObjectOverlay.PathValue

+
+ + + + + + + + + + + + + + + +
FieldTypeDescription
pathstring +

Path of the form a.b:c.e.:f +Where b:c is a list element selector of the form key:value and :f is a list selector of the form :value. +All path intermediate nodes must exist.

+ +
+
diff --git a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/values_types.go b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/values_types.go index 3ac2d3d24f78..e15b7065b2ae 100644 --- a/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/values_types.go +++ b/vendor/istio.io/operator/pkg/apis/istio/v1alpha2/values_types.go @@ -18,9 +18,10 @@ package v1alpha2 import ( "github.com/gogo/protobuf/jsonpb" - corev1 "k8s.io/api/core/v1" intstr "k8s.io/apimachinery/pkg/util/intstr" + + "istio.io/operator/pkg/util" ) // Values is described in istio.io documentation. @@ -644,3 +645,21 @@ func FromInt(val int) IntOrStringForPB { func FromString(val string) IntOrStringForPB { return IntOrStringForPB{intstr.FromString(val)} } + +// Validate checks +func (t *PilotConfig) Validate(failOnMissingValidation bool, values *Values, icpls *IstioControlPlaneSpec) util.Errors { + var validationErrors util.Errors + // Exmple + // validationErrors = util.AppendErr(validationErrors, fmt.Errorf("pilotconfig has not been yet implemented")) + + return validationErrors +} + +// Validate checks CNIConfig confiugration +func (t *CNIConfig) Validate(failOnMissingValidation bool, values *Values, icpls *IstioControlPlaneSpec) util.Errors { + var validationErrors util.Errors + // Example + // validationErrors = util.AppendErr(validationErrors, fmt.Errorf("cniconfig has not been yet implemented")) + + return validationErrors +} diff --git a/vendor/istio.io/operator/pkg/compare/compare.go b/vendor/istio.io/operator/pkg/compare/compare.go new file mode 100644 index 000000000000..c8f506263727 --- /dev/null +++ b/vendor/istio.io/operator/pkg/compare/compare.go @@ -0,0 +1,121 @@ +// Copyright 2019 Istio Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package compare + +import ( + "fmt" + "path/filepath" + "strings" + + "github.com/google/go-cmp/cmp" + "sigs.k8s.io/yaml" + + "istio.io/operator/pkg/tpath" +) + +// YAMLCmpReporter is a custom reporter to generate tree based diff for YAMLs, used by cmp.Equal(). +type YAMLCmpReporter struct { + path cmp.Path + diffTree map[string]interface{} +} + +// PushStep implements interface to keep track of current path by pushing. +// a step into YAMLCmpReporter.path +func (r *YAMLCmpReporter) PushStep(ps cmp.PathStep) { + r.path = append(r.path, ps) +} + +// PopStep implements interface to keep track of current path by popping a step out. +// of YAMLCmpReporter.path +func (r *YAMLCmpReporter) PopStep() { + r.path = r.path[:len(r.path)-1] +} + +// Report implements interface to add diff path into YAMLCmpReporter.diffTree. +func (r *YAMLCmpReporter) Report(rs cmp.Result) { + if !rs.Equal() { + vx, vy := r.path.Last().Values() + var dm string + if vx.IsValid() && !vy.IsValid() { + dm = fmt.Sprintf("%v ->", vx) + } else if !vx.IsValid() && vy.IsValid() { + dm = fmt.Sprintf("-> %v", vy) + } else if vx.IsValid() && vy.IsValid() { + dm = fmt.Sprintf("%v -> %v", vx, vy) + } + if r.diffTree == nil { + r.diffTree = make(map[string]interface{}) + } + if err := tpath.WriteNode(r.diffTree, pathToStringList(r.path), dm); err != nil { + panic(err) + } + } +} + +// String returns a text representation of diff tree. +func (r *YAMLCmpReporter) String() string { + if len(r.diffTree) == 0 { + return "" + } + y, err := yaml.Marshal(r.diffTree) + if err != nil { + return err.Error() + } + return string(y) +} + +// YAMLCmp compares two yaml texts, return a tree based diff text. +func YAMLCmp(a, b string) string { + return YAMLCmpWithIgnore(a, b, nil) +} + +// YAMLCmpWithIgnore compares two yaml texts, and ignores paths in ignorePaths. +func YAMLCmpWithIgnore(a, b string, ignorePaths []string) string { + ao, bo := make(map[string]interface{}), make(map[string]interface{}) + if err := yaml.Unmarshal([]byte(a), &ao); err != nil { + return err.Error() + } + if err := yaml.Unmarshal([]byte(b), &bo); err != nil { + return err.Error() + } + var r YAMLCmpReporter + cmp.Equal(ao, bo, cmp.Reporter(&r), genPathIgnoreOpt(ignorePaths)) + return r.String() +} + +// genPathIgnoreOpt returns a cmp.Option to ignore paths specified in parameter ignorePaths. +func genPathIgnoreOpt(ignorePaths []string) cmp.Option { + return cmp.FilterPath(func(curPath cmp.Path) bool { + cp := strings.Join(pathToStringList(curPath), ".") + for _, ip := range ignorePaths { + if res, err := filepath.Match(ip, cp); err == nil && res { + return true + } + } + return false + }, cmp.Ignore()) +} + +func pathToStringList(path cmp.Path) (up []string) { + for _, step := range path { + switch t := step.(type) { + case cmp.MapIndex: + up = append(up, fmt.Sprintf("%v", t.Key())) + case cmp.SliceIndex: + up = append(up, fmt.Sprintf("%v", t.String())) + } + } + return +} diff --git a/vendor/istio.io/operator/pkg/component/component/component.go b/vendor/istio.io/operator/pkg/component/component/component.go index 7f43443a8d14..0d7bdbf10885 100644 --- a/vendor/istio.io/operator/pkg/component/component/component.go +++ b/vendor/istio.io/operator/pkg/component/component/component.go @@ -683,7 +683,7 @@ func runComponent(c *CommonComponentFields) error { // TranslateHelmValues creates a Helm values.yaml config data tree from icp using the given translator. func TranslateHelmValues(icp *v1alpha2.IstioControlPlaneSpec, translator *translate.Translator, componentName name.ComponentName) (string, error) { - globalVals, apiVals := make(map[string]interface{}), make(map[string]interface{}) + globalVals, globalUnvalidatedVals, apiVals := make(map[string]interface{}), make(map[string]interface{}), make(map[string]interface{}) // First, translate the IstioControlPlane API to helm Values. apiValsStr, err := translator.ProtoToValues(icp) @@ -701,48 +701,20 @@ func TranslateHelmValues(icp *v1alpha2.IstioControlPlaneSpec, translator *transl if err != nil { return "", err } + _, err = name.SetFromPath(icp, "UnvalidatedValues", &globalUnvalidatedVals) + if err != nil { + return "", err + } log.Infof("Values from IstioControlPlaneSpec.Values:\n%s", util.ToYAML(globalVals)) + log.Infof("Values from IstioControlPlaneSpec.UnvalidatedValues:\n%s", util.ToYAML(globalUnvalidatedVals)) mergedVals, err := overlayTrees(globalVals, apiVals) if err != nil { return "", err } - - cns := []name.ComponentName{componentName} - if componentName == "" { - cns = translator.AllComponentsNames() - } - - for _, cn := range cns { - componentVals, componentValsUnvalidated := make(map[string]interface{}), make(map[string]interface{}) - // Add overlay from IstioControlPlaneSpec..Components..Common.ValuesOverrides. - pathToValues := fmt.Sprintf("%s.Components.%s.Common.Values", translator.ToFeature[cn], cn) - _, err = name.SetFromPath(icp, pathToValues, &componentVals) - if err != nil { - return "", err - } - - // Add overlay from IstioControlPlaneSpec..Components..Common.UnvalidatedValuesOverrides. - pathToUnvalidatedValues := fmt.Sprintf("%s.Components.%s.Common.UnvalidatedValues", translator.ToFeature[cn], cn) - _, err = name.SetFromPath(icp, pathToUnvalidatedValues, &componentValsUnvalidated) - if err != nil { - return "", err - } - - log.Infof("Untranslated values from %s:\n%s", pathToValues, util.ToYAML(componentVals)) - log.Infof("Untranslated values from %s:\n%s", pathToUnvalidatedValues, util.ToYAML(componentValsUnvalidated)) - - // Translate from path in the API to helm paths. - componentVals = translator.ValuesOverlaysToHelmValues(componentVals, cn) - componentValsUnvalidated = translator.ValuesOverlaysToHelmValues(componentValsUnvalidated, cn) - - log.Infof("Translated values from %s:\n%s", pathToValues, util.ToYAML(componentVals)) - log.Infof("Translated values from %s:\n%s", pathToUnvalidatedValues, util.ToYAML(componentValsUnvalidated)) - - mergedVals, err = overlayTrees(mergedVals, componentVals, componentValsUnvalidated) - if err != nil { - return "", err - } + mergedVals, err = overlayTrees(globalUnvalidatedVals, mergedVals) + if err != nil { + return "", err } mergedYAML, err := yaml.Marshal(mergedVals) @@ -787,7 +759,7 @@ func renderManifest(c *CommonComponentFields) (string, error) { log.Infof("Manifest after k8s API settings:\n%s\n", my) // Add the k8s resource overlays from IstioControlPlaneSpec. - pathToK8sOverlay := fmt.Sprintf("%s.Components.%s.Common.K8S.Overlays", c.FeatureName, c.name) + pathToK8sOverlay := fmt.Sprintf("%s.Components.%s.K8S.Overlays", c.FeatureName, c.name) var overlays []*v1alpha2.K8SObjectOverlay found, err := name.SetFromPath(c.InstallSpec, pathToK8sOverlay, &overlays) if err != nil { diff --git a/vendor/istio.io/operator/pkg/helm/urlfetcher.go b/vendor/istio.io/operator/pkg/helm/urlfetcher.go index 71778b9a908b..29d29772c421 100644 --- a/vendor/istio.io/operator/pkg/helm/urlfetcher.go +++ b/vendor/istio.io/operator/pkg/helm/urlfetcher.go @@ -15,29 +15,34 @@ package helm import ( - "bytes" "crypto/sha256" "encoding/hex" "fmt" "io" "io/ioutil" - "net/http" "net/url" "os" + "path" "path/filepath" "strings" "github.com/mholt/archiver" + "istio.io/operator/pkg/httprequest" "istio.io/operator/pkg/util" "istio.io/pkg/log" ) -// FileDownloader is wrapper of HTTP client to download files -type FileDownloader struct { - // client is a HTTP/HTTPS client. - client *http.Client -} +const ( + // installationPathTemplate is used to construct installation url based on version + installationPathTemplate = "https://github.com/istio/istio/releases/download/%s/istio-%s-linux.tar.gz" + // InstallationDirectory is temporary folder name for caching downloaded installation packages. + InstallationDirectory = "istio-install-packages" + // ChartsFilePath is file path of installation packages to helm charts. + ChartsFilePath = "install/kubernetes/operator/charts" + // SHAFileSuffix is the default SHA file suffix + SHAFileSuffix = ".sha256" +) // URLFetcher is used to fetch and manipulate charts from remote url type URLFetcher struct { @@ -45,53 +50,55 @@ type URLFetcher struct { url string // verifyURL is url to download the verification file verifyURL string - // versionsURL is url to download version file - versionsURL string // verify indicates whether the downloaded tar should be verified verify bool // destDir is path of charts downloaded to, empty as default to temp dir destDir string - // downloader downloads files from remote url - downloader *FileDownloader } -// NewURLFetcher creates an URLFetcher pointing to urls and destination -func NewURLFetcher(repoURL string, destDir string, chartName string, shaName string) *URLFetcher { +// NewURLFetcher creates an URLFetcher pointing to installation package URL and destination, +// and returns a pointer to it. +func NewURLFetcher(insPackageURL string, destDir string) (*URLFetcher, error) { if destDir == "" { - destDir = filepath.Join(os.TempDir(), ChartsTempFilePrefix) + destDir = filepath.Join(os.TempDir(), InstallationDirectory) + } + if _, err := os.Stat(destDir); os.IsNotExist(err) { + err := os.Mkdir(destDir, os.ModeDir|os.ModePerm) + if err != nil { + return nil, err + } } uf := &URLFetcher{ - url: repoURL + "/" + chartName, - verifyURL: repoURL + "/" + shaName, - versionsURL: repoURL + "/" + VersionsFileName, - verify: true, - destDir: destDir, - downloader: NewFileDownloader(), + url: insPackageURL, + verifyURL: insPackageURL + SHAFileSuffix, + verify: true, + destDir: destDir, } - return uf + return uf, nil +} + +// DestDir returns path of destination dir. +func (f *URLFetcher) DestDir() string { + return f.destDir } // FetchBundles fetches the charts, sha and version file -func (f *URLFetcher) FetchBundles() error { +func (f *URLFetcher) FetchBundles() util.Errors { errs := util.Errors{} - + // check whether install package already cached locally at destDir, skip downloading if yes. + fn := path.Base(f.url) + _, err := os.Stat(filepath.Join(f.destDir, fn)) + if err == nil { + return errs + } shaF, err := f.fetchSha() errs = util.AppendErr(errs, err) - - err = f.fetchChart(shaF) - errs = util.AppendErr(errs, err) - - _, err = f.fetchVersion() - errs = util.AppendErr(errs, err) - - return errs + return util.AppendErr(errs, f.fetchChart(shaF)) } // fetchChart fetches the charts and verifies charts against SHA file if required func (f *URLFetcher) fetchChart(shaF string) error { - c := f.downloader - - saved, err := c.DownloadTo(f.url, f.destDir) + saved, err := DownloadTo(f.url, f.destDir) if err != nil { return err } @@ -113,7 +120,8 @@ func (f *URLFetcher) fetchChart(shaF string) error { if err != nil { return fmt.Errorf("failed to read sha file: %s", err) } - hash := string(hashAll) + // SHA file has structure of "sha_value filename" + hash := strings.Split(string(hashAll), " ")[0] h := sha256.New() if _, err := io.Copy(h, file); err != nil { log.Error(err.Error()) @@ -124,8 +132,8 @@ func (f *URLFetcher) fetchChart(shaF string) error { return fmt.Errorf("checksum of charts file located at: %s does not match expected SHA file: %s", saved, shaF) } } - - return archiver.Unarchive(saved, f.destDir) + targz := archiver.TarGz{Tar: &archiver.Tar{OverwriteExisting: true}} + return targz.Unarchive(saved, f.destDir) } // fetchsha downloads the SHA file from url @@ -133,72 +141,34 @@ func (f *URLFetcher) fetchSha() (string, error) { if f.verifyURL == "" { return "", fmt.Errorf("SHA file url is empty") } - shaF, err := f.downloader.DownloadTo(f.verifyURL, f.destDir) + shaF, err := DownloadTo(f.verifyURL, f.destDir) if err != nil { return "", err } return shaF, nil } -func (f *URLFetcher) fetchVersion() (string, error) { - if f.versionsURL == "" { - return "", fmt.Errorf("SHA file url is empty") - } - vF, err := f.downloader.DownloadTo(f.versionsURL, f.destDir) - if err != nil { - return "", err - } - return vF, nil -} - -// NewFileDownloader creates a wrapper for download files. -func NewFileDownloader() *FileDownloader { - return &FileDownloader{ - client: &http.Client{ - Transport: &http.Transport{ - DisableCompression: true, - Proxy: http.ProxyFromEnvironment, - }}, - } -} - -// SendGet sends an HTTP GET request to href. -func (c *FileDownloader) SendGet(url string) (*bytes.Buffer, error) { - buf := bytes.NewBuffer(nil) - - req, err := http.NewRequest("GET", url, nil) - if err != nil { - return nil, err - } - resp, err := c.client.Do(req) - if err != nil { - return nil, err - } - defer resp.Body.Close() - if resp.StatusCode != 200 { - return nil, fmt.Errorf("failed to fetch URL %s : %s", url, resp.Status) - } - - _, err = io.Copy(buf, resp.Body) - return buf, err -} - // DownloadTo downloads from remote url to dest local file path -func (c *FileDownloader) DownloadTo(ref, dest string) (string, error) { +func DownloadTo(ref, dest string) (string, error) { u, err := url.Parse(ref) if err != nil { return "", fmt.Errorf("invalid chart URL: %s", ref) } - data, err := c.SendGet(u.String()) + data, err := httprequest.Get(u.String()) if err != nil { return "", err } name := filepath.Base(u.Path) destFile := filepath.Join(dest, name) - if err := ioutil.WriteFile(destFile, data.Bytes(), 0644); err != nil { + if err := ioutil.WriteFile(destFile, data, 0666); err != nil { return destFile, err } return destFile, nil } + +// InstallURLFromVersion generates default installation url from version number. +func InstallURLFromVersion(version string) string { + return fmt.Sprintf(installationPathTemplate, version, version) +} diff --git a/vendor/istio.io/operator/pkg/helm/urlwatcher.go b/vendor/istio.io/operator/pkg/helm/urlwatcher.go index fabfc2639733..83441d716eb6 100644 --- a/vendor/istio.io/operator/pkg/helm/urlwatcher.go +++ b/vendor/istio.io/operator/pkg/helm/urlwatcher.go @@ -24,8 +24,8 @@ import ( "istio.io/pkg/log" ) -// Poller is used to poll files from remote url at specific internal -type Poller struct { +// URLPoller is used to poll files from remote url at specific internal +type URLPoller struct { // url is remote target url to poll from url string // existingHash records last sha value of polled files @@ -36,71 +36,71 @@ type Poller struct { urlFetcher *URLFetcher } -const ( - // InstallationChartsFileName is the name of the installation package to fetch. - InstallationChartsFileName = "istio-installer.tar.gz" - // InstallationShaFileName is Sha filename to verify - InstallationShaFileName = "istio-installer.tar.gz.sha256" - // VersionsFileName is version file's name - VersionsFileName = "VERSIONS.yaml" - // ChartsTempFilePrefix is temporary Files prefix - ChartsTempFilePrefix = "istio-install-package-" -) - // checkUpdate checks a SHA URL to determine if the installation package has been updated // and fetches the new version if necessary. -func (p *Poller) checkUpdate() error { +func (p *URLPoller) checkUpdate() (bool, error) { uf := p.urlFetcher shaF, err := uf.fetchSha() if err != nil { - return err + return false, err } hashAll, err := ioutil.ReadFile(shaF) if err != nil { - return fmt.Errorf("failed to read sha file: %s", err) + return false, fmt.Errorf("failed to read sha file: %s", err) } // Original sha file name is formatted with "HashValue filename" newHash := strings.Fields(string(hashAll))[0] if !strings.EqualFold(newHash, p.existingHash) { p.existingHash = newHash - return uf.fetchChart(shaF) + return true, uf.fetchChart(shaF) } - return nil + return false, nil } -func (p *Poller) poll() { +func (p *URLPoller) poll(notify chan<- struct{}) { for t := range p.ticker.C { // When the ticker fires log.Debugf("Tick at: %s", t) - if err := p.checkUpdate(); err != nil { + updated, err := p.checkUpdate() + if err != nil { log.Errorf("Error polling charts: %v", err) } + if updated { + notify <- struct{}{} + } } } // NewPoller returns a poller pointing to given url with specified interval -func NewPoller(dirURL string, destDir string, interval time.Duration) *Poller { - uf := NewURLFetcher(dirURL, destDir, InstallationChartsFileName, InstallationShaFileName) - return &Poller{ - url: dirURL, +func NewPoller(installationURL string, destDir string, interval time.Duration) (*URLPoller, error) { + uf, err := NewURLFetcher(installationURL, destDir) + if err != nil { + return nil, err + } + return &URLPoller{ + url: installationURL, ticker: time.NewTicker(time.Minute * interval), urlFetcher: uf, - } + }, nil } //PollURL continuously polls the given url, which points to a directory containing an //installation package at the given interval and fetches a new copy if it is updated. -func PollURL(dirURL string, interval time.Duration) error { - destDir, err := ioutil.TempDir("", ChartsTempFilePrefix) +func PollURL(installationURL string, interval time.Duration) (chan<- struct{}, error) { + destDir, err := ioutil.TempDir("", InstallationDirectory) if err != nil { log.Error("failed to create temp directory for charts") - return err + return nil, err } - po := NewPoller(dirURL, destDir, interval) - po.poll() + po, err := NewPoller(installationURL, destDir, interval) + if err != nil { + log.Fatalf("failed to create new poller for: %s", err) + } + updated := make(chan struct{}, 1) + go po.poll(updated) os.RemoveAll(destDir) - return nil + return updated, nil } diff --git a/vendor/istio.io/operator/pkg/helm/vfs_renderer.go b/vendor/istio.io/operator/pkg/helm/vfs_renderer.go index fac26516c791..a455cbcae816 100644 --- a/vendor/istio.io/operator/pkg/helm/vfs_renderer.go +++ b/vendor/istio.io/operator/pkg/helm/vfs_renderer.go @@ -23,7 +23,7 @@ import ( "k8s.io/helm/pkg/proto/hapi/chart" "istio.io/operator/pkg/util" - "istio.io/operator/pkg/vfsgen" + "istio.io/operator/pkg/vfs" "istio.io/pkg/log" ) @@ -32,8 +32,8 @@ const ( // DefaultProfileFilename is the name of the default profile yaml file. DefaultProfileFilename = "default.yaml" - chartsRoot = "/charts" - profilesRoot = "/profiles" + chartsRoot = "charts" + profilesRoot = "profiles" ) var ( @@ -42,7 +42,7 @@ var ( ) func init() { - profilePaths, err := vfsgen.ReadDir(profilesRoot) + profilePaths, err := vfs.ReadDir(profilesRoot) if err != nil { panic(err) } @@ -95,7 +95,7 @@ func (h *VFSRenderer) RenderManifest(values string) (string, error) { func LoadValuesVFS(profileName string) (string, error) { path := filepath.Join(profilesRoot, BuiltinProfileToFilename(profileName)) log.Infof("Loading values from compiled in VFS at path %s", path) - b, err := vfsgen.ReadFile(path) + b, err := vfs.ReadFile(path) return string(b), err } @@ -109,13 +109,13 @@ func isBuiltinProfileName(name string) bool { // loadChart implements the TemplateRenderer interface. func (h *VFSRenderer) loadChart() error { prefix := filepath.Join(chartsRoot, h.helmChartDirPath) - fnames, err := vfsgen.GetFilesRecursive(prefix) + fnames, err := vfs.GetFilesRecursive(prefix) if err != nil { return err } var bfs []*chartutil.BufferedFile for _, fname := range fnames { - b, err := vfsgen.ReadFile(fname) + b, err := vfs.ReadFile(fname) if err != nil { return err } diff --git a/vendor/istio.io/operator/pkg/name/name.go b/vendor/istio.io/operator/pkg/name/name.go index 7a592b9be2e7..cf80d94960d1 100644 --- a/vendor/istio.io/operator/pkg/name/name.go +++ b/vendor/istio.io/operator/pkg/name/name.go @@ -155,7 +155,7 @@ func IsComponentEnabledInSpec(featureName FeatureName, componentName ComponentNa return false, nil } - componentNodeI, found, err := GetFromStructPath(controlPlaneSpec, string(featureName)+".Components."+string(componentName)+".Common.Enabled") + componentNodeI, found, err := GetFromStructPath(controlPlaneSpec, string(featureName)+".Components."+string(componentName)+".Enabled") if err != nil { return false, fmt.Errorf("error in IsComponentEnabledInSpec GetFromStructPath componentEnabled for feature=%s, component=%s: %s", featureName, componentName, err) @@ -282,7 +282,7 @@ func Namespace(featureName FeatureName, componentName ComponentName, controlPlan } } - componentNodeI, found, err := GetFromStructPath(controlPlaneSpec, string(featureName)+".Components."+string(componentName)+".Common.Namespace") + componentNodeI, found, err := GetFromStructPath(controlPlaneSpec, string(featureName)+".Components."+string(componentName)+".Namespace") if err != nil { return "", fmt.Errorf("error in Namepsace GetFromStructPath componentNamespace for feature=%s, component=%s: %s", featureName, componentName, err) } diff --git a/vendor/istio.io/operator/pkg/object/objects.go b/vendor/istio.io/operator/pkg/object/objects.go index 4ad5eb1e6b1f..9b61297e6050 100644 --- a/vendor/istio.io/operator/pkg/object/objects.go +++ b/vendor/istio.io/operator/pkg/object/objects.go @@ -32,7 +32,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" k8syaml "k8s.io/apimachinery/pkg/util/yaml" - "istio.io/operator/pkg/util" + "istio.io/operator/pkg/compare" "istio.io/pkg/log" ) @@ -379,56 +379,52 @@ func ManifestDiff(a, b string) (string, error) { } aom, bom := ao.ToMap(), bo.ToMap() - return manifestDiff(aom, bom) + return manifestDiff(aom, bom, nil) } // ManifestDiffWithSelect checks the manifest differences with selected and ignored resources. // The selected filter will apply before the ignored filter. func ManifestDiffWithSelectAndIgnore(a, b, selectResources, ignoreResources string) (string, error) { - aosm, err := filterResourceWithSelectAndIgnore(a, selectResources, ignoreResources) + sm := getObjPathMap(selectResources) + im := getObjPathMap(ignoreResources) + aosm, err := filterResourceWithSelectAndIgnore(a, sm, im) if err != nil { return "", err } - bosm, err := filterResourceWithSelectAndIgnore(b, selectResources, ignoreResources) + bosm, err := filterResourceWithSelectAndIgnore(b, sm, im) if err != nil { return "", err } - return manifestDiff(aosm, bosm) + return manifestDiff(aosm, bosm, im) } // filterResourceWithSelectAndIgnore filter the input resources with selected and ignored filter. -func filterResourceWithSelectAndIgnore(a, selectResources, ignoreResources string) (map[string]*K8sObject, error) { +func filterResourceWithSelectAndIgnore(a string, sm, im map[string]string) (map[string]*K8sObject, error) { ao, err := ParseK8sObjectsFromYAMLManifest(a) if err != nil { return nil, err } aom := ao.ToMap() aosm := make(map[string]*K8sObject) - selections := strings.Split(selectResources, ",") - ignores := strings.Split(ignoreResources, ",") for ak, av := range aom { - if strings.Compare(selectResources, "") != 0 { - for _, selected := range selections { - re, err := buildResourceRegexp(selected) - if err != nil { - return nil, fmt.Errorf("error building the resource regexp: %v", err) - } - if re.MatchString(ak) { - aosm[ak] = av - } + for selected := range sm { + re, err := buildResourceRegexp(strings.TrimSpace(selected)) + if err != nil { + return nil, fmt.Errorf("error building the resource regexp: %v", err) + } + if re.MatchString(ak) { + aosm[ak] = av } } - if strings.Compare(ignoreResources, "") != 0 { - for _, ignored := range ignores { - re, err := buildResourceRegexp(ignored) - if err != nil { - return nil, fmt.Errorf("error building the resource regexp: %v", err) - } - if re.MatchString(ak) { - if _, ok := aosm[ak]; ok { - delete(aosm, ak) - } + for ignored := range im { + re, err := buildResourceRegexp(strings.TrimSpace(ignored)) + if err != nil { + return nil, fmt.Errorf("error building the resource regexp: %v", err) + } + if re.MatchString(ak) { + if _, ok := aosm[ak]; ok { + delete(aosm, ak) } } } @@ -448,7 +444,7 @@ func buildResourceRegexp(s string) (*regexp.Regexp, error) { } // manifestDiff an internal function to compare the manifests difference specified in the input. -func manifestDiff(aom, bom map[string]*K8sObject) (string, error) { +func manifestDiff(aom, bom map[string]*K8sObject, im map[string]string) (string, error) { var sb strings.Builder for ak, av := range aom { ay, err := av.YAML() @@ -464,7 +460,10 @@ func manifestDiff(aom, bom map[string]*K8sObject) (string, error) { if err != nil { return "", err } - diff := util.YAMLDiff(string(ay), string(by)) + + ignorePaths := objectIgnorePaths(ak, im) + diff := compare.YAMLCmpWithIgnore(string(ay), string(by), ignorePaths) + if diff != "" { writeStringSafe(&sb, "\n\nObject "+ak+" has diffs:\n\n") writeStringSafe(&sb, diff) @@ -480,6 +479,43 @@ func manifestDiff(aom, bom map[string]*K8sObject) (string, error) { return sb.String(), nil } +func getObjPathMap(rs string) map[string]string { + rm := make(map[string]string) + if len(rs) == 0 { + return rm + } + for _, r := range strings.Split(rs, ",") { + split := strings.Split(r, ":") + if len(split) < 4 { + rm[r] = "" + continue + } + kind, namespace, name, path := split[0], split[1], split[2], split[3] + obj := fmt.Sprintf("%v:%v:%v", kind, namespace, name) + rm[obj] = path + } + return rm +} + +func objectIgnorePaths(objectName string, im map[string]string) (ignorePaths []string) { + if im == nil { + im = make(map[string]string) + } + for obj, path := range im { + if path == "" { + continue + } + re, err := buildResourceRegexp(strings.TrimSpace(obj)) + if err != nil { + continue + } + if re.MatchString(objectName) { + ignorePaths = append(ignorePaths, path) + } + } + return ignorePaths +} + func writeStringSafe(sb io.StringWriter, s string) { _, err := sb.WriteString(s) if err != nil { diff --git a/vendor/istio.io/operator/pkg/translate/translate.go b/vendor/istio.io/operator/pkg/translate/translate.go index 2bd24a1f5455..e330d4a6f689 100644 --- a/vendor/istio.io/operator/pkg/translate/translate.go +++ b/vendor/istio.io/operator/pkg/translate/translate.go @@ -34,6 +34,10 @@ import ( ) const ( + // K8sDeploymentResourceType is the resource type of kubernetes deployment. + K8sDeploymentResourceType = "Deployment" + // K8sDaemonSetResourceType is the resource type of kubernetes daemonset. + K8sDaemonSetResourceType = "DaemonSet" // HelmValuesEnabledSubpath is the subpath from the component root to the enabled parameter. HelmValuesEnabledSubpath = "enabled" // HelmValuesNamespaceSubpath is the subpath from the component root to the namespace parameter. @@ -77,6 +81,8 @@ type FeatureMap struct { // ComponentMaps is a set of mappings for an Istio component. type ComponentMaps struct { + // ResourceType maps a ComponentName to the type of the rendered k8s resource. + ResourceType string // ResourceName maps a ComponentName to the name of the rendered k8s resource. ResourceName string // ContainerName maps a ComponentName to the name of the container in a Deployment. @@ -109,63 +115,60 @@ var ( "K8SDefaults": {"global.resources", nil}, "DefaultNamespace": {"global.istioNamespace", nil}, - "TrafficManagement.Components.Proxy.Common.Values": {"global.proxy", nil}, + "Values.Proxy": {"global.proxy", nil}, "ConfigManagement.Components.Namespace": {"global.configNamespace", nil}, - - "Policy.PolicyCheckFailOpen": {"global.policyCheckFailOpen", nil}, - "Policy.OutboundTrafficPolicyMode": {"global.outboundTrafficPolicy.mode", nil}, - "Policy.Components.Namespace": {"global.policyNamespace", nil}, - - "Telemetry.Components.Namespace": {"global.telemetryNamespace", nil}, - - "Security.ControlPlaneMtls.Value": {"global.controlPlaneSecurityEnabled", nil}, - "Security.DataPlaneMtlsStrict.Value": {"global.mtls.enabled", nil}, - "Security.Components.Namespace": {"global.securityNamespace", nil}, + "Policy.Components.Namespace": {"global.policyNamespace", nil}, + "Telemetry.Components.Namespace": {"global.telemetryNamespace", nil}, + "Security.Components.Namespace": {"global.securityNamespace", nil}, }, KubernetesMapping: map[string]*Translation{ - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.Affinity": { - "[Deployment:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].affinity", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.Affinity": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].affinity", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.Env": { - "[Deployment:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].env", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.Env": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].env", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.HpaSpec": { + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.HpaSpec": { "[HorizontalPodAutoscaler:{{.ResourceName}}].spec", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.ImagePullPolicy": { - "[Deployment:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].imagePullPolicy", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.ImagePullPolicy": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].imagePullPolicy", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.NodeSelector": { - "[Deployment:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].nodeSelector", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.NodeSelector": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].nodeSelector", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.PodDisruptionBudget": { + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.PodDisruptionBudget": { "[PodDisruptionBudget:{{.ResourceName}}].spec", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.PodAnnotations": { - "[Deployment:{{.ResourceName}}].spec.template.metadata.annotations", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.PodAnnotations": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.template.metadata.annotations", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.PriorityClassName": { - "[Deployment:{{.ResourceName}}].spec.template.spec.priorityClassName.", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.PriorityClassName": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.template.spec.priorityClassName.", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.ReadinessProbe": { - "[Deployment:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].readinessProbe", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.ReadinessProbe": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].readinessProbe", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.ReplicaCount": { - "[Deployment:{{.ResourceName}}].spec.replicas", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.ReplicaCount": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.replicas", nil, }, - "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8S.Resources": { - "[Deployment:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].resources", + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.Resources": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.template.spec.containers.[name:{{.ContainerName}}].resources", + nil, + }, + "{{.FeatureName}}.Components.{{.ComponentName}}.K8S.Strategy": { + "[{{.ResourceType}}:{{.ResourceName}}].spec.strategy", nil, }, }, @@ -234,60 +237,70 @@ var ( AlwaysEnabled: true, }, name.PilotComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "istio-pilot", ContainerName: "discovery", HelmSubdir: "istio-control/istio-discovery", ToHelmValuesTreeRoot: "pilot", }, name.GalleyComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "istio-galley", ContainerName: "galley", HelmSubdir: "istio-control/istio-config", ToHelmValuesTreeRoot: "galley", }, name.SidecarInjectorComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "istio-sidecar-injector", ContainerName: "sidecar-injector-webhook", HelmSubdir: "istio-control/istio-autoinject", ToHelmValuesTreeRoot: "sidecarInjectorWebhook", }, name.PolicyComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "istio-policy", ContainerName: "mixer", HelmSubdir: "istio-policy", ToHelmValuesTreeRoot: "mixer.policy", }, name.TelemetryComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "istio-telemetry", ContainerName: "mixer", HelmSubdir: "istio-telemetry/mixer-telemetry", ToHelmValuesTreeRoot: "mixer.telemetry", }, name.CitadelComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "istio-citadel", ContainerName: "citadel", HelmSubdir: "security/citadel", - ToHelmValuesTreeRoot: "citadel", + ToHelmValuesTreeRoot: "security", }, name.NodeAgentComponentName: { + ResourceType: K8sDaemonSetResourceType, ResourceName: "istio-nodeagent", ContainerName: "nodeagent", HelmSubdir: "security/nodeagent", ToHelmValuesTreeRoot: "nodeagent", }, name.CertManagerComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "certmanager", ContainerName: "certmanager", HelmSubdir: "security/certmanager", ToHelmValuesTreeRoot: "certmanager", }, name.IngressComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "istio-ingressgateway", ContainerName: "istio-proxy", HelmSubdir: "gateways/istio-ingress", ToHelmValuesTreeRoot: "gateways.istio-ingressgateway", }, name.EgressComponentName: { + ResourceType: K8sDeploymentResourceType, ResourceName: "istio-egressgateway", ContainerName: "istio-proxy", HelmSubdir: "gateways/istio-egress", @@ -367,7 +380,9 @@ func (t *Translator) OverlayK8sSettings(yml string, icp *v1alpha2.IstioControlPl pe, _ = util.RemoveBrackets(pe) oo, ok := om[pe] if !ok { - return "", fmt.Errorf("resource Kind:name %s doesn't exist in the output manifest:\n%s", pe, yml) + // skip to overlay the K8s settings if the corresponding resource doesn't exist. + log.Infof("resource Kind:name %s doesn't exist in the output manifest, skip overlay.", pe) + continue } baseYAML, err := oo.YAML() @@ -637,9 +652,11 @@ func renderFeatureComponentPathTemplate(tmpl string, featureName name.FeatureNam // the supplied parameters. func (t *Translator) renderResourceComponentPathTemplate(tmpl string, componentName name.ComponentName) (string, error) { ts := struct { + ResourceType string ResourceName string ContainerName string }{ + ResourceType: t.ComponentMaps[componentName].ResourceType, ResourceName: t.ComponentMaps[componentName].ResourceName, ContainerName: t.ComponentMaps[componentName].ContainerName, } diff --git a/vendor/istio.io/operator/pkg/translate/translate_value.go b/vendor/istio.io/operator/pkg/translate/translate_value.go index a08f41b4296e..fcd708a0a6d9 100644 --- a/vendor/istio.io/operator/pkg/translate/translate_value.go +++ b/vendor/istio.io/operator/pkg/translate/translate_value.go @@ -49,20 +49,22 @@ var ( version.NewMinorVersion(1, 3): { APIMapping: map[string]*Translation{}, KubernetesPatternMapping: map[string]string{ - "{{.ValueComponentName}}.podAntiAffinityLabelSelector": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s." + + "{{.ValueComponentName}}.podAntiAffinityLabelSelector": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s." + "Affinity.PodAntiAffinity.RequiredDuringSchedulingIgnoredDuringExecution", - "{{.ValueComponentName}}.podAntiAffinityTermLabelSelector": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s." + + "{{.ValueComponentName}}.podAntiAffinityTermLabelSelector": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s." + "Affinity.PodAntiAffinity.PreferredDuringSchedulingIgnoredDuringExecution", - "{{.ValueComponentName}}.env": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.Env", - "{{.ValueComponentName}}.autoscaleEnabled": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.HpaSpec", - "{{.ValueComponentName}}.imagePullPolicy": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.ImagePullPolicy", - "{{.ValueComponentName}}.nodeSelector": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.NodeSelector", - "{{.ValueComponentName}}.podDisruptionBudget": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.PodDisruptionBudget", - "{{.ValueComponentName}}.podAnnotations": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.PodAnnotations", - "{{.ValueComponentName}}.priorityClassName": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.PriorityClassName", - "{{.ValueComponentName}}.readinessProbe": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.ReadinessProbe", - "{{.ValueComponentName}}.replicaCount": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.ReplicaCount", - "{{.ValueComponentName}}.resources": "{{.FeatureName}}.Components.{{.ComponentName}}.Common.K8s.Resources", + "{{.ValueComponentName}}.env": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.Env", + "{{.ValueComponentName}}.autoscaleEnabled": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.HpaSpec", + "{{.ValueComponentName}}.imagePullPolicy": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.ImagePullPolicy", + "{{.ValueComponentName}}.nodeSelector": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.NodeSelector", + "{{.ValueComponentName}}.podDisruptionBudget": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.PodDisruptionBudget", + "{{.ValueComponentName}}.podAnnotations": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.PodAnnotations", + "{{.ValueComponentName}}.priorityClassName": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.PriorityClassName", + "{{.ValueComponentName}}.readinessProbe": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.ReadinessProbe", + "{{.ValueComponentName}}.replicaCount": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.ReplicaCount", + "{{.ValueComponentName}}.resources": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.Resources", + "{{.ValueComponentName}}.rollingMaxSurge": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.Strategy", + "{{.ValueComponentName}}.rollingMaxUnavailable": "{{.FeatureName}}.Components.{{.ComponentName}}.K8s.Strategy", }, KubernetesMapping: map[string]*Translation{}, ValuesToComponentName: map[string]name.ComponentName{}, @@ -74,10 +76,9 @@ var ( }, }, } - // Component enablement mapping. Ex "{{.ValueComponent}}.enabled": {"{{.FeatureName}}.Components.{{.ComponentName}}.Common.enabled}", nil}, + // Component enablement mapping. Ex "{{.ValueComponent}}.enabled": {"{{.FeatureName}}.Components.{{.ComponentName}}.enabled}", nil}, // Feature enablement mapping. Ex: "{{.ValueComponent}}.enabled": {"{{.FeatureName}}.enabled}", nil}, - componentEnablementPattern = "{{.FeatureName}}.Components.{{.ComponentName}}.Common.Enabled" - componentValuesPattern = "{{.FeatureName}}.Components.{{.ComponentName}}.Common.Values" + componentEnablementPattern = "{{.FeatureName}}.Components.{{.ComponentName}}.Enabled" ) // initAPIMapping generate the reverse mapping from original translator apiMapping. @@ -142,15 +143,11 @@ func NewReverseTranslator(minorVersion version.MinorVersion) (*ReverseTranslator return t, nil } -// TranslateFromValueToSpec translates from values struct to IstioControlPlaneSpec. -func (t *ReverseTranslator) TranslateFromValueToSpec(values *v1alpha2.Values) (controlPlaneSpec *v1alpha2.IstioControlPlaneSpec, err error) { - valueYaml, err := yaml.Marshal(values) - if err != nil { - return nil, fmt.Errorf("error when marshalling value struct %v", err) - } +// TranslateFromValueToSpec translates from values.yaml value to IstioControlPlaneSpec. +func (t *ReverseTranslator) TranslateFromValueToSpec(values []byte) (controlPlaneSpec *v1alpha2.IstioControlPlaneSpec, err error) { var yamlTree = make(map[string]interface{}) - err = yaml.Unmarshal(valueYaml, &yamlTree) + err = yaml.Unmarshal(values, &yamlTree) if err != nil { return nil, fmt.Errorf("error when unmarshalling into untype tree %v", err) } @@ -169,7 +166,7 @@ func (t *ReverseTranslator) TranslateFromValueToSpec(values *v1alpha2.Values) (c err = util.UnmarshalWithJSONPB(string(outputVal), cpSpec) if err != nil { - return nil, fmt.Errorf("error when unmarshalling into control plane spec %v, \nyaml: %s", err, outputVal) + return nil, fmt.Errorf("error when unmarshalling into control plane spec %v, \nyaml:\n %s", err, outputVal) } return cpSpec, nil @@ -238,6 +235,10 @@ func (t *ReverseTranslator) setEnablementAndNamespacesFromValue(valueSpec map[st return err } } + //vep := util.ToYAMLPath(cnv + ".enabled") + //if _, err := tpath.DeleteFromTree(valueSpec, vep, vep); err != nil { + // return err + //} } // set namespace @@ -255,6 +256,25 @@ func (t *ReverseTranslator) setEnablementAndNamespacesFromValue(valueSpec map[st return nil } +// translateStrategy translates Deployment Strategy related configurations from helm values.yaml tree. +func translateStrategy(fieldName string, outPath string, value interface{}, cpSpecTree map[string]interface{}) error { + fieldMap := map[string]string{ + "rollingMaxSurge": "maxSurge", + "rollingMaxUnavailable": "maxUnavailable", + } + newFieldName, ok := fieldMap[fieldName] + if !ok { + return fmt.Errorf("expected field name found in values.yaml: %s", fieldName) + } + outPath += ".rollingUpdate." + newFieldName + + log.Infof("path has value in helm Value.yaml tree, mapping to output path %s", outPath) + if err := tpath.WriteNode(cpSpecTree, util.ToYAMLPath(outPath), value); err != nil { + return err + } + return nil +} + // translateHPASpec translates HPA related configurations from helm values.yaml tree. func translateHPASpec(inPath string, outPath string, value interface{}, valueTree map[string]interface{}, cpSpecTree map[string]interface{}) error { asEnabled, ok := value.(bool) @@ -264,26 +284,70 @@ func translateHPASpec(inPath string, outPath string, value interface{}, valueTre if !asEnabled { return nil } - newP := util.PathFromString(inPath)[0] - minPath := newP + ".autoscaleMin" - asMin, found, err := name.GetFromTreePath(valueTree, util.ToYAMLPath(minPath)) + + newP := util.PathFromString(inPath) + // last path element is k8s setting name + newPS := newP[:len(newP)-1].String() + valMap := map[string]string{ + ".autoscaleMin": ".minReplicas", + ".autoscaleMax": ".maxReplicas", + } + for key, newVal := range valMap { + valPath := newPS + key + asVal, found, err := name.GetFromTreePath(valueTree, util.ToYAMLPath(valPath)) + if found && err == nil { + if err := setOutputAndClean(valPath, outPath+newVal, asVal, valueTree, cpSpecTree, true); err != nil { + return err + } + } + } + valPath := newPS + ".cpu.targetAverageUtilization" + asVal, found, err := name.GetFromTreePath(valueTree, util.ToYAMLPath(valPath)) if found && err == nil { - if err := tpath.WriteNode(cpSpecTree, util.ToYAMLPath(outPath+".minReplicas"), asMin); err != nil { + rs := make([]interface{}, 1) + rsVal := ` +- type: Resource + resource: + name: cpu + targetAverageUtilization: %f` + + rsString := fmt.Sprintf(rsVal, asVal) + if err = yaml.Unmarshal([]byte(rsString), &rs); err != nil { + return err + } + if err := setOutputAndClean(valPath, outPath+".metrics", rs, valueTree, cpSpecTree, true); err != nil { return err } } - if _, err := tpath.DeleteFromTree(valueTree, util.ToYAMLPath(minPath), util.ToYAMLPath(minPath)); err != nil { + + // There is no direct source from value.yaml for scaleTargetRef value, we need to construct from component name + st := make(map[string]interface{}) + stVal := ` +apiVersion: apps/v1 +kind: Deployment +name: istio-%s` + + stString := fmt.Sprintf(stVal, newPS) + if err := yaml.Unmarshal([]byte(stString), &st); err != nil { return err } - maxPath := newP + ".autoscaleMax" - asMax, found, err := name.GetFromTreePath(valueTree, util.ToYAMLPath(maxPath)) - if found && err == nil { - log.Infof("path has value in helm Value.yaml tree, mapping to output path %s", outPath) - if err := tpath.WriteNode(cpSpecTree, util.ToYAMLPath(outPath+".maxReplicas"), asMax); err != nil { - return err - } + if err := setOutputAndClean(valPath, outPath+".scaleTargetRef", st, valueTree, cpSpecTree, false); err != nil { + return err } - if _, err := tpath.DeleteFromTree(valueTree, util.ToYAMLPath(maxPath), util.ToYAMLPath(maxPath)); err != nil { + return nil +} + +// setOutputAndClean is helper function to set value of iscp tree and clean the original value from value.yaml tree. +func setOutputAndClean(valPath, outPath string, outVal interface{}, valueTree, cpSpecTree map[string]interface{}, clean bool) error { + log.Infof("path has value in helm Value.yaml tree, mapping to output path %s", outPath) + + if err := tpath.WriteNode(cpSpecTree, util.ToYAMLPath(outPath), outVal); err != nil { + return err + } + if !clean { + return nil + } + if _, err := tpath.DeleteFromTree(valueTree, util.ToYAMLPath(valPath), util.ToYAMLPath(valPath)); err != nil { return err } return nil @@ -373,6 +437,12 @@ func (t *ReverseTranslator) translateK8sTree(valueTree map[string]interface{}, return fmt.Errorf("error in translating k8s Affinity: %s", err) } + case "rollingMaxSurge", "rollingMaxUnavailable": + err := translateStrategy(k8sSettingName, v.outPath, m, cpSpecTree) + if err != nil { + return fmt.Errorf("error in translating k8s Strategy: %s", err) + } + default: output := util.ToYAMLPath(v.outPath) log.Infof("path has value in helm Value.yaml tree, mapping to output path %s", output) @@ -389,7 +459,7 @@ func (t *ReverseTranslator) translateK8sTree(valueTree map[string]interface{}, return nil } -// translateRemainingPaths translates remaining paths that are not availing in existing mappings. +// translateRemainingPaths translates remaining paths that are not available in existing mappings. func (t *ReverseTranslator) translateRemainingPaths(valueTree map[string]interface{}, cpSpecTree map[string]interface{}, path util.Path) error { for key, val := range valueTree { @@ -407,19 +477,25 @@ func (t *ReverseTranslator) translateRemainingPaths(valueTree map[string]interfa case []interface{}: errs := util.Errors{} for _, newNode := range node { - newMap, ok := newNode.(map[string]interface{}) - if !ok { - return fmt.Errorf("fail to convert node to map[string] interface") + if newMap, ok := newNode.(map[string]interface{}); ok { + errs = util.AppendErr(errs, t.translateRemainingPaths(newMap, cpSpecTree, newPath)) + continue + } + if _, ok := newNode.(string); ok { + errs = util.AppendErr(errs, + tpath.WriteNode(cpSpecTree, util.ToYAMLPath("Values."+newPath.String()), node)) + break } - errs = util.AppendErr(errs, t.translateRemainingPaths(newMap, cpSpecTree, newPath)) } - if errs != nil { - return errs + if err := errs.ToError(); err != nil { + return err } - // remaining leaf need to be put into common.values + // remaining leaf need to be put into root.values default: - err := t.translateToCommonValues(cpSpecTree, newPath, val) - if err != nil { + if t.isEnablementPath(newPath) { + continue + } + if err := tpath.WriteNode(cpSpecTree, util.ToYAMLPath("Values."+newPath.String()), val); err != nil { return err } } @@ -427,40 +503,6 @@ func (t *ReverseTranslator) translateRemainingPaths(valueTree map[string]interfa return nil } -// translateToCommonValues translates paths to common.values -func (t *ReverseTranslator) translateToCommonValues(root map[string]interface{}, path util.Path, value interface{}) error { - if len(path) < 2 { - log.Warn("path is empty or only contains root component node when translating to common.values") - return nil - } - // path starts with ValueComponent name or global - cn := path[0] - // get rid of component name at the root - vp := path[1:] - newCN := t.ValuesToComponentName[cn] - if newCN == "" { - // some components path len is 2, e.g. mixer.policy - if len(path) > 1 { - cn = path[:2].String() - newCN = t.ValuesToComponentName[cn] - vp = path[2:] - } - if newCN == "" { - return nil - } - } - // enabled node value should not be added to common.values path - if path[len(path)-1] == "enabled" { - return nil - } - fn := name.ComponentNameToFeatureName[newCN] - outPath, err := renderCommonComponentValues(componentValuesPattern, string(newCN), string(fn)) - if err != nil { - return err - } - return tpath.WriteNode(root, append(util.ToYAMLPath(outPath), vp...), value) -} - // translateTree is internal method for translating value.yaml tree func (t *ReverseTranslator) translateTree(valueTree map[string]interface{}, cpSpecTree map[string]interface{}) error { @@ -499,6 +541,17 @@ func (t *ReverseTranslator) translateTree(valueTree map[string]interface{}, return nil } +// isEnablementPath is helper function to check whether paths represent enablement of components in values.yaml +func (t *ReverseTranslator) isEnablementPath(path util.Path) bool { + if len(path) < 2 || path[len(path)-1] != "enabled" { + return false + } + pf := path[:len(path)-1].String() + _, exist := t.ValuesToComponentName[pf] + + return exist || path[0] == "gateways" || path[0] == "mixer" +} + // renderComponentName renders a template of the form {{.ComponentName}} with // the supplied parameters. func renderComponentName(tmpl string, componentName string) (string, error) { @@ -507,13 +560,3 @@ func renderComponentName(tmpl string, componentName string) (string, error) { } return renderTemplate(tmpl, temp{componentName}) } - -// renderCommonComponentValues renders a template of the form "{{.FeatureName}}.Components.{{.ComponentName}}.Common.Values" with -// the supplied parameters. -func renderCommonComponentValues(tmpl string, componentName string, featureName string) (string, error) { - type temp struct { - FeatureName string - ComponentName string - } - return renderTemplate(tmpl, temp{FeatureName: featureName, ComponentName: componentName}) -} diff --git a/vendor/istio.io/operator/pkg/util/common.go b/vendor/istio.io/operator/pkg/util/common.go index 7710daa5c514..06f29b4128fd 100644 --- a/vendor/istio.io/operator/pkg/util/common.go +++ b/vendor/istio.io/operator/pkg/util/common.go @@ -15,6 +15,7 @@ package util import ( + "net/url" "strings" "github.com/ghodss/yaml" @@ -42,3 +43,9 @@ func (t Tree) String() string { func IsFilePath(path string) bool { return strings.Contains(path, "/") || strings.Contains(path, ".") } + +// IsHTTPURL checks whether the given URL is a HTTP URL, empty path or relative URLs would be rejected. +func IsHTTPURL(path string) bool { + u, err := url.Parse(path) + return err == nil && u.Host != "" && (u.Scheme == "http" || u.Scheme == "https") +} diff --git a/vendor/istio.io/operator/pkg/util/util.go b/vendor/istio.io/operator/pkg/util/util.go index 11e090bcbcf6..01e03e646556 100644 --- a/vendor/istio.io/operator/pkg/util/util.go +++ b/vendor/istio.io/operator/pkg/util/util.go @@ -22,6 +22,7 @@ import ( "math/rand" "os" "path/filepath" + "strconv" "strings" "time" ) @@ -66,22 +67,30 @@ func StringBoolMapToSlice(m map[string]bool) []string { return s } -// ReadFiles reads a directory recursively or reads single file and filters the results. -// It returns a concatenated output of all matching files' content. -func ReadFiles(dirName string, filter FileFilter) (string, error) { +// ReadFilesWithFilter reads files from path, for a directory it recursively reads files and filters the results +// for single file it directly reads the file. It returns a concatenated output of all matching files' content. +func ReadFilesWithFilter(path string, filter FileFilter) (string, error) { + fi, err := os.Stat(path) + if err != nil { + return "", err + } var fileList []string - err := filepath.Walk(dirName, func(path string, info os.FileInfo, err error) error { - if err != nil { - return err - } - if info.IsDir() || !filter(path) { + if fi.IsDir() { + err := filepath.Walk(path, func(path string, info os.FileInfo, err error) error { + if err != nil { + return err + } + if info.IsDir() || !filter(path) { + return nil + } + fileList = append(fileList, path) return nil + }) + if err != nil { + return "", err } + } else { fileList = append(fileList, path) - return nil - }) - if err != nil { - return "", err } var sb strings.Builder for _, file := range fileList { @@ -95,3 +104,18 @@ func ReadFiles(dirName string, filter FileFilter) (string, error) { } return sb.String(), nil } + +// ParseValue parses string into a value +func ParseValue(valueStr string) interface{} { + var value interface{} + if v, err := strconv.Atoi(valueStr); err == nil { + value = v + } else if v, err := strconv.ParseFloat(valueStr, 64); err == nil { + value = v + } else if v, err := strconv.ParseBool(valueStr); err == nil { + value = v + } else { + value = valueStr + } + return value +} diff --git a/vendor/istio.io/operator/pkg/version/version.go b/vendor/istio.io/operator/pkg/version/version.go index 9bd116f20765..85a12f214d0b 100644 --- a/vendor/istio.io/operator/pkg/version/version.go +++ b/vendor/istio.io/operator/pkg/version/version.go @@ -18,6 +18,8 @@ import ( "fmt" "strings" + "gopkg.in/yaml.v2" + goversion "github.com/hashicorp/go-version" ) @@ -111,6 +113,12 @@ func (v *CompatibilityMapping) UnmarshalYAML(unmarshal func(interface{}) error) return nil } +// IsVersionString checks whether the given string is a version string +func IsVersionString(path string) bool { + vs := Version{} + return yaml.Unmarshal([]byte(path), &vs) == nil +} + // MajorVersion represents a major version. type MajorVersion struct { Major uint32 diff --git a/vendor/istio.io/operator/pkg/vfs/assets.gen.go b/vendor/istio.io/operator/pkg/vfs/assets.gen.go new file mode 100644 index 000000000000..e98663ed0870 --- /dev/null +++ b/vendor/istio.io/operator/pkg/vfs/assets.gen.go @@ -0,0 +1,33301 @@ +// Code generated by go-bindata. +// sources: +// ../../data/charts/crds/Chart.yaml +// ../../data/charts/crds/files/crd-10.yaml +// ../../data/charts/crds/files/crd-11.yaml +// ../../data/charts/crds/files/crd-12.yaml +// ../../data/charts/crds/files/crd-14.yaml +// ../../data/charts/crds/files/crd-certmanager-10.yaml +// ../../data/charts/crds/files/crd-certmanager-11.yaml +// ../../data/charts/crds/kustomization.yaml +// ../../data/charts/crds/templates/crds.yaml +// ../../data/charts/crds/templates/namespaces.yaml +// ../../data/charts/gateways/istio-egress/Chart.yaml +// ../../data/charts/gateways/istio-egress/NOTES.txt +// ../../data/charts/gateways/istio-egress/templates/_affinity.tpl +// ../../data/charts/gateways/istio-egress/templates/_helpers.tpl +// ../../data/charts/gateways/istio-egress/templates/autoscale.yaml +// ../../data/charts/gateways/istio-egress/templates/deployment.yaml +// ../../data/charts/gateways/istio-egress/templates/poddisruptionbudget.yaml +// ../../data/charts/gateways/istio-egress/templates/preconfigured.yaml +// ../../data/charts/gateways/istio-egress/templates/service.yaml +// ../../data/charts/gateways/istio-egress/templates/serviceaccount.yaml +// ../../data/charts/gateways/istio-egress/values.yaml +// ../../data/charts/gateways/istio-ingress/Chart.yaml +// ../../data/charts/gateways/istio-ingress/NOTES.txt +// ../../data/charts/gateways/istio-ingress/templates/_affinity.tpl +// ../../data/charts/gateways/istio-ingress/templates/addongateway.yaml +// ../../data/charts/gateways/istio-ingress/templates/autoscale.yaml +// ../../data/charts/gateways/istio-ingress/templates/certificate.yaml +// ../../data/charts/gateways/istio-ingress/templates/deployment.yaml +// ../../data/charts/gateways/istio-ingress/templates/gateway.yaml +// ../../data/charts/gateways/istio-ingress/templates/hosts.yaml +// ../../data/charts/gateways/istio-ingress/templates/meshexpansion.yaml +// ../../data/charts/gateways/istio-ingress/templates/poddisruptionbudget.yaml +// ../../data/charts/gateways/istio-ingress/templates/preconfigured.yaml +// ../../data/charts/gateways/istio-ingress/templates/role.yaml +// ../../data/charts/gateways/istio-ingress/templates/rolebindings.yaml +// ../../data/charts/gateways/istio-ingress/templates/service.yaml +// ../../data/charts/gateways/istio-ingress/templates/serviceaccount.yaml +// ../../data/charts/gateways/istio-ingress/templates/sidecar.yaml +// ../../data/charts/gateways/istio-ingress/values.yaml +// ../../data/charts/istio-cni/Chart.yaml +// ../../data/charts/istio-cni/templates/clusterrole.yaml +// ../../data/charts/istio-cni/templates/clusterrolebinding.yaml +// ../../data/charts/istio-cni/templates/configmap-cni.yaml +// ../../data/charts/istio-cni/templates/daemonset.yaml +// ../../data/charts/istio-cni/templates/serviceaccount.yaml +// ../../data/charts/istio-cni/values.yaml +// ../../data/charts/istio-cni/values_gke.yaml +// ../../data/charts/istio-control/istio-autoinject/Chart.yaml +// ../../data/charts/istio-control/istio-autoinject/NOTES.txt +// ../../data/charts/istio-control/istio-autoinject/files/injection-template.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/_affinity.tpl +// ../../data/charts/istio-control/istio-autoinject/templates/_helpers.tpl +// ../../data/charts/istio-control/istio-autoinject/templates/clusterrole.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/clusterrolebinding.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/configmap.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/deployment.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/mutatingwebhook.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/poddisruptionbudget.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/service.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/serviceaccount.yaml +// ../../data/charts/istio-control/istio-autoinject/templates/sidecar-injector-configmap.yaml +// ../../data/charts/istio-control/istio-autoinject/values.yaml +// ../../data/charts/istio-control/istio-config/Chart.yaml +// ../../data/charts/istio-control/istio-config/OWNERS +// ../../data/charts/istio-control/istio-config/README.md +// ../../data/charts/istio-control/istio-config/templates/_affinity.tpl +// ../../data/charts/istio-control/istio-config/templates/_helpers.tpl +// ../../data/charts/istio-control/istio-config/templates/clusterrole.yaml +// ../../data/charts/istio-control/istio-config/templates/clusterrolebinding.yaml +// ../../data/charts/istio-control/istio-config/templates/configmap-envoy.yaml +// ../../data/charts/istio-control/istio-config/templates/configmap-mesh.yaml +// ../../data/charts/istio-control/istio-config/templates/configmap.yaml +// ../../data/charts/istio-control/istio-config/templates/deployment.yaml +// ../../data/charts/istio-control/istio-config/templates/poddisruptionbudget.yaml +// ../../data/charts/istio-control/istio-config/templates/service.yaml +// ../../data/charts/istio-control/istio-config/templates/serviceaccount.yaml +// ../../data/charts/istio-control/istio-config/templates/validatingwebhookconfiguration.yaml.tpl +// ../../data/charts/istio-control/istio-config/values.yaml +// ../../data/charts/istio-control/istio-discovery/Chart.yaml +// ../../data/charts/istio-control/istio-discovery/NOTES.txt +// ../../data/charts/istio-control/istio-discovery/templates/_affinity.tpl +// ../../data/charts/istio-control/istio-discovery/templates/_helpers.tpl +// ../../data/charts/istio-control/istio-discovery/templates/autoscale.yaml +// ../../data/charts/istio-control/istio-discovery/templates/clusterrole.yaml +// ../../data/charts/istio-control/istio-discovery/templates/clusterrolebinding.yaml +// ../../data/charts/istio-control/istio-discovery/templates/configmap-envoy.yaml +// ../../data/charts/istio-control/istio-discovery/templates/configmap.yaml +// ../../data/charts/istio-control/istio-discovery/templates/deployment.yaml +// ../../data/charts/istio-control/istio-discovery/templates/enable-mesh-mtls.yaml +// ../../data/charts/istio-control/istio-discovery/templates/poddisruptionbudget.yaml +// ../../data/charts/istio-control/istio-discovery/templates/service.yaml +// ../../data/charts/istio-control/istio-discovery/templates/serviceaccount.yaml +// ../../data/charts/istio-control/istio-discovery/values.yaml +// ../../data/charts/istio-policy/Chart.yaml +// ../../data/charts/istio-policy/templates/_affinity.tpl +// ../../data/charts/istio-policy/templates/_helpers.tpl +// ../../data/charts/istio-policy/templates/autoscale.yaml +// ../../data/charts/istio-policy/templates/clusterrole.yaml +// ../../data/charts/istio-policy/templates/clusterrolebinding.yaml +// ../../data/charts/istio-policy/templates/config.yaml +// ../../data/charts/istio-policy/templates/deployment.yaml +// ../../data/charts/istio-policy/templates/poddisruptionbudget.yaml +// ../../data/charts/istio-policy/templates/service.yaml +// ../../data/charts/istio-policy/templates/serviceaccount.yaml +// ../../data/charts/istio-policy/values.yaml +// ../../data/charts/istio-telemetry/grafana/Chart.yaml +// ../../data/charts/istio-telemetry/grafana/dashboards/citadel-dashboard.json +// ../../data/charts/istio-telemetry/grafana/dashboards/galley-dashboard.json +// ../../data/charts/istio-telemetry/grafana/dashboards/istio-mesh-dashboard.json +// ../../data/charts/istio-telemetry/grafana/dashboards/istio-performance-dashboard.json +// ../../data/charts/istio-telemetry/grafana/dashboards/istio-service-dashboard.json +// ../../data/charts/istio-telemetry/grafana/dashboards/istio-workload-dashboard.json +// ../../data/charts/istio-telemetry/grafana/dashboards/mixer-dashboard.json +// ../../data/charts/istio-telemetry/grafana/dashboards/pilot-dashboard.json +// ../../data/charts/istio-telemetry/grafana/fix_datasources.sh +// ../../data/charts/istio-telemetry/grafana/templates/_affinity.tpl +// ../../data/charts/istio-telemetry/grafana/templates/configmap-dashboards.yaml +// ../../data/charts/istio-telemetry/grafana/templates/configmap.yaml +// ../../data/charts/istio-telemetry/grafana/templates/deployment.yaml +// ../../data/charts/istio-telemetry/grafana/templates/destination-rule.yaml +// ../../data/charts/istio-telemetry/grafana/templates/grafana-policy.yaml +// ../../data/charts/istio-telemetry/grafana/templates/pvc.yaml +// ../../data/charts/istio-telemetry/grafana/templates/service.yaml +// ../../data/charts/istio-telemetry/grafana/templates/tests/test-grafana-connection.yaml +// ../../data/charts/istio-telemetry/grafana/values.yaml +// ../../data/charts/istio-telemetry/kiali/Chart.yaml +// ../../data/charts/istio-telemetry/kiali/templates/_affinity.tpl +// ../../data/charts/istio-telemetry/kiali/templates/clusterrole.yaml +// ../../data/charts/istio-telemetry/kiali/templates/clusterrolebinding.yaml +// ../../data/charts/istio-telemetry/kiali/templates/configmap.yaml +// ../../data/charts/istio-telemetry/kiali/templates/demosecret.yaml +// ../../data/charts/istio-telemetry/kiali/templates/deployment.yaml +// ../../data/charts/istio-telemetry/kiali/templates/service.yaml +// ../../data/charts/istio-telemetry/kiali/templates/serviceaccount.yaml +// ../../data/charts/istio-telemetry/kiali/values.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/Chart.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/_affinity.tpl +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/autoscale.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/clusterrole.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/clusterrolebinding.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/config.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/configmap-envoy.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/deployment.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/poddisruptionbudget.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/service.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/serviceaccount.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/templates/stackdriver.yaml +// ../../data/charts/istio-telemetry/mixer-telemetry/values.yaml +// ../../data/charts/istio-telemetry/prometheus/Chart.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/_affinity.tpl +// ../../data/charts/istio-telemetry/prometheus/templates/clusterrole.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/clusterrolebindings.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/configmap.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/deployment.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/destination-rule.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/inrgess.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/service.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/serviceaccount.yaml +// ../../data/charts/istio-telemetry/prometheus/templates/tests/test-prometheus-connection.yaml +// ../../data/charts/istio-telemetry/prometheus/values.yaml +// ../../data/charts/istio-telemetry/prometheus-operator/Chart.yaml +// ../../data/charts/istio-telemetry/prometheus-operator/templates/_affinity.tpl +// ../../data/charts/istio-telemetry/prometheus-operator/templates/prometheus.yaml +// ../../data/charts/istio-telemetry/prometheus-operator/templates/servicemonitors.yaml +// ../../data/charts/istio-telemetry/prometheus-operator/values.yaml +// ../../data/charts/istio-telemetry/tracing/Chart.yaml +// ../../data/charts/istio-telemetry/tracing/templates/_affinity.tpl +// ../../data/charts/istio-telemetry/tracing/templates/deployment-jaeger.yaml +// ../../data/charts/istio-telemetry/tracing/templates/deployment-opencensus.yaml +// ../../data/charts/istio-telemetry/tracing/templates/deployment-zipkin.yaml +// ../../data/charts/istio-telemetry/tracing/templates/pvc.yaml +// ../../data/charts/istio-telemetry/tracing/templates/service-jaeger.yaml +// ../../data/charts/istio-telemetry/tracing/templates/service.yaml +// ../../data/charts/istio-telemetry/tracing/values.yaml +// ../../data/charts/istiocoredns/Chart.yaml +// ../../data/charts/istiocoredns/templates/_affinity.tpl +// ../../data/charts/istiocoredns/templates/clusterrole.yaml +// ../../data/charts/istiocoredns/templates/clusterrolebinding.yaml +// ../../data/charts/istiocoredns/templates/configmap.yaml +// ../../data/charts/istiocoredns/templates/deployment.yaml +// ../../data/charts/istiocoredns/templates/service.yaml +// ../../data/charts/istiocoredns/templates/serviceaccount.yaml +// ../../data/charts/istiocoredns/values.yaml +// ../../data/charts/security/certmanager/Chart.yaml +// ../../data/charts/security/certmanager/templates/NOTES.txt +// ../../data/charts/security/certmanager/templates/_affinity.tpl +// ../../data/charts/security/certmanager/templates/deployment.yaml +// ../../data/charts/security/certmanager/templates/issuer.yaml +// ../../data/charts/security/certmanager/templates/poddisruptionbudget.yaml +// ../../data/charts/security/certmanager/templates/rbac.yaml +// ../../data/charts/security/certmanager/templates/serviceaccount.yaml +// ../../data/charts/security/certmanager/values.yaml +// ../../data/charts/security/citadel/Chart.yaml +// ../../data/charts/security/citadel/templates/NOTES.txt +// ../../data/charts/security/citadel/templates/_affinity.tpl +// ../../data/charts/security/citadel/templates/_helpers.tpl +// ../../data/charts/security/citadel/templates/clusterrole.yaml +// ../../data/charts/security/citadel/templates/clusterrolebinding.yaml +// ../../data/charts/security/citadel/templates/deployment.yaml +// ../../data/charts/security/citadel/templates/poddisruptionbudget.yaml +// ../../data/charts/security/citadel/templates/service.yaml +// ../../data/charts/security/citadel/templates/serviceaccount.yaml +// ../../data/charts/security/citadel/values.yaml +// ../../data/charts/security/nodeagent/Chart.yaml +// ../../data/charts/security/nodeagent/templates/_affinity.tpl +// ../../data/charts/security/nodeagent/templates/clusterrole.yaml +// ../../data/charts/security/nodeagent/templates/clusterrolebinding.yaml +// ../../data/charts/security/nodeagent/templates/daemonset.yaml +// ../../data/charts/security/nodeagent/templates/serviceaccount.yaml +// ../../data/charts/security/nodeagent/values.yaml +// ../../data/profiles/default.yaml +// ../../data/profiles/demo-auth.yaml +// ../../data/profiles/demo.yaml +// ../../data/profiles/minimal.yaml +// ../../data/profiles/sds.yaml +// DO NOT EDIT! + +package vfs + +import ( + "fmt" + "io/ioutil" + "os" + "path/filepath" + "strings" + "time" +) +type asset struct { + bytes []byte + info os.FileInfo +} + +type bindataFileInfo struct { + name string + size int64 + mode os.FileMode + modTime time.Time +} + +func (fi bindataFileInfo) Name() string { + return fi.name +} +func (fi bindataFileInfo) Size() int64 { + return fi.size +} +func (fi bindataFileInfo) Mode() os.FileMode { + return fi.mode +} +func (fi bindataFileInfo) ModTime() time.Time { + return fi.modTime +} +func (fi bindataFileInfo) IsDir() bool { + return false +} +func (fi bindataFileInfo) Sys() interface{} { + return nil +} + +var _chartsCrdsChartYaml = []byte(`apiVersion: v1 +name: istio-crds +version: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for deploying Istio CRDs +keywords: + - istio +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsCrdsChartYamlBytes() ([]byte, error) { + return _chartsCrdsChartYaml, nil +} + +func chartsCrdsChartYaml() (*asset, error) { + bytes, err := chartsCrdsChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsFilesCrd10Yaml = []byte(`apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: virtualservices.networking.istio.io + labels: + app: istio-pilot + chart: istio + heritage: Tiller + release: istio +spec: + group: networking.istio.io + names: + kind: VirtualService + listKind: VirtualServiceList + plural: virtualservices + singular: virtualservice + shortNames: + - vs + categories: + - istio-io + - networking-istio-io + scope: Namespaced + versions: + - name: v1alpha3 + served: true + storage: true + additionalPrinterColumns: + - JSONPath: .spec.gateways + description: The names of gateways and sidecars that should apply these routes + name: Gateways + type: string + - JSONPath: .spec.hosts + description: The destination hosts to which traffic is being sent + name: Hosts + type: string + - JSONPath: .metadata.creationTimestamp + description: |- + CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. + + Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + name: Age + type: date +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: destinationrules.networking.istio.io + labels: + app: istio-pilot + chart: istio + heritage: Tiller + release: istio +spec: + group: networking.istio.io + names: + kind: DestinationRule + listKind: DestinationRuleList + plural: destinationrules + singular: destinationrule + shortNames: + - dr + categories: + - istio-io + - networking-istio-io + scope: Namespaced + versions: + - name: v1alpha3 + served: true + storage: true + additionalPrinterColumns: + - JSONPath: .spec.host + description: The name of a service from the service registry + name: Host + type: string + - JSONPath: .metadata.creationTimestamp + description: |- + CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. + + Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + name: Age + type: date +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: serviceentries.networking.istio.io + labels: + app: istio-pilot + chart: istio + heritage: Tiller + release: istio +spec: + group: networking.istio.io + names: + kind: ServiceEntry + listKind: ServiceEntryList + plural: serviceentries + singular: serviceentry + shortNames: + - se + categories: + - istio-io + - networking-istio-io + scope: Namespaced + versions: + - name: v1alpha3 + served: true + storage: true + additionalPrinterColumns: + - JSONPath: .spec.hosts + description: The hosts associated with the ServiceEntry + name: Hosts + type: string + - JSONPath: .spec.location + description: Whether the service is external to the mesh or part of the mesh (MESH_EXTERNAL or MESH_INTERNAL) + name: Location + type: string + - JSONPath: .spec.resolution + description: Service discovery mode for the hosts (NONE, STATIC, or DNS) + name: Resolution + type: string + - JSONPath: .metadata.creationTimestamp + description: |- + CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. + + Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + name: Age + type: date +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: gateways.networking.istio.io + labels: + app: istio-pilot + chart: istio + heritage: Tiller + release: istio +spec: + group: networking.istio.io + names: + kind: Gateway + plural: gateways + singular: gateway + shortNames: + - gw + categories: + - istio-io + - networking-istio-io + scope: Namespaced + versions: + - name: v1alpha3 + served: true + storage: true +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: envoyfilters.networking.istio.io + labels: + app: istio-pilot + chart: istio + heritage: Tiller + release: istio +spec: + group: networking.istio.io + names: + kind: EnvoyFilter + plural: envoyfilters + singular: envoyfilter + categories: + - istio-io + - networking-istio-io + scope: Namespaced + versions: + - name: v1alpha3 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: clusterrbacconfigs.rbac.istio.io + labels: + app: istio-pilot + istio: rbac + heritage: Tiller + release: istio +spec: + group: rbac.istio.io + names: + kind: ClusterRbacConfig + plural: clusterrbacconfigs + singular: clusterrbacconfig + categories: + - istio-io + - rbac-istio-io + scope: Cluster + versions: + - name: v1alpha1 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: policies.authentication.istio.io + labels: + app: istio-citadel + chart: istio + heritage: Tiller + release: istio +spec: + group: authentication.istio.io + names: + kind: Policy + plural: policies + singular: policy + categories: + - istio-io + - authentication-istio-io + scope: Namespaced + versions: + - name: v1alpha1 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: meshpolicies.authentication.istio.io + labels: + app: istio-citadel + chart: istio + heritage: Tiller + release: istio +spec: + group: authentication.istio.io + names: + kind: MeshPolicy + listKind: MeshPolicyList + plural: meshpolicies + singular: meshpolicy + categories: + - istio-io + - authentication-istio-io + scope: Cluster + versions: + - name: v1alpha1 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: httpapispecbindings.config.istio.io + labels: + app: istio-mixer + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: HTTPAPISpecBinding + plural: httpapispecbindings + singular: httpapispecbinding + categories: + - istio-io + - apim-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: httpapispecs.config.istio.io + labels: + app: istio-mixer + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: HTTPAPISpec + plural: httpapispecs + singular: httpapispec + categories: + - istio-io + - apim-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: quotaspecbindings.config.istio.io + labels: + app: istio-mixer + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: QuotaSpecBinding + plural: quotaspecbindings + singular: quotaspecbinding + categories: + - istio-io + - apim-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: quotaspecs.config.istio.io + labels: + app: istio-mixer + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: QuotaSpec + plural: quotaspecs + singular: quotaspec + categories: + - istio-io + - apim-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: rules.config.istio.io + labels: + app: mixer + package: istio.io.mixer + istio: core + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: rule + plural: rules + singular: rule + categories: + - istio-io + - policy-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: attributemanifests.config.istio.io + labels: + app: mixer + package: istio.io.mixer + istio: core + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: attributemanifest + plural: attributemanifests + singular: attributemanifest + categories: + - istio-io + - policy-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: rbacconfigs.rbac.istio.io + labels: + app: mixer + package: istio.io.mixer + istio: rbac + chart: istio + heritage: Tiller + release: istio +spec: + group: rbac.istio.io + names: + kind: RbacConfig + plural: rbacconfigs + singular: rbacconfig + categories: + - istio-io + - rbac-istio-io + scope: Namespaced + versions: + - name: v1alpha1 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: serviceroles.rbac.istio.io + labels: + app: mixer + package: istio.io.mixer + istio: rbac + chart: istio + heritage: Tiller + release: istio +spec: + group: rbac.istio.io + names: + kind: ServiceRole + plural: serviceroles + singular: servicerole + categories: + - istio-io + - rbac-istio-io + scope: Namespaced + versions: + - name: v1alpha1 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: servicerolebindings.rbac.istio.io + labels: + app: mixer + package: istio.io.mixer + istio: rbac + chart: istio + heritage: Tiller + release: istio +spec: + group: rbac.istio.io + names: + kind: ServiceRoleBinding + plural: servicerolebindings + singular: servicerolebinding + categories: + - istio-io + - rbac-istio-io + scope: Namespaced + versions: + - name: v1alpha1 + served: true + storage: true + additionalPrinterColumns: + - JSONPath: .spec.roleRef.name + description: The name of the ServiceRole object being referenced + name: Reference + type: string + - JSONPath: .metadata.creationTimestamp + description: |- + CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. + + Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + name: Age + type: date +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: adapters.config.istio.io + labels: + app: mixer + package: adapter + istio: mixer-adapter + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: adapter + plural: adapters + singular: adapter + categories: + - istio-io + - policy-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: instances.config.istio.io + labels: + app: mixer + package: instance + istio: mixer-instance + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: instance + plural: instances + singular: instance + categories: + - istio-io + - policy-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: templates.config.istio.io + labels: + app: mixer + package: template + istio: mixer-template + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: template + plural: templates + singular: template + categories: + - istio-io + - policy-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: handlers.config.istio.io + labels: + app: mixer + package: handler + istio: mixer-handler + chart: istio + heritage: Tiller + release: istio +spec: + group: config.istio.io + names: + kind: handler + plural: handlers + singular: handler + categories: + - istio-io + - policy-istio-io + scope: Namespaced + versions: + - name: v1alpha2 + served: true + storage: true +--- +`) + +func chartsCrdsFilesCrd10YamlBytes() ([]byte, error) { + return _chartsCrdsFilesCrd10Yaml, nil +} + +func chartsCrdsFilesCrd10Yaml() (*asset, error) { + bytes, err := chartsCrdsFilesCrd10YamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/files/crd-10.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsFilesCrd11Yaml = []byte(`apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: sidecars.networking.istio.io + labels: + app: istio-pilot + chart: istio + heritage: Tiller + release: istio +spec: + group: networking.istio.io + names: + kind: Sidecar + plural: sidecars + singular: sidecar + categories: + - istio-io + - networking-istio-io + scope: Namespaced + versions: + - name: v1alpha3 + served: true + storage: true +--- +`) + +func chartsCrdsFilesCrd11YamlBytes() ([]byte, error) { + return _chartsCrdsFilesCrd11Yaml, nil +} + +func chartsCrdsFilesCrd11Yaml() (*asset, error) { + bytes, err := chartsCrdsFilesCrd11YamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/files/crd-11.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsFilesCrd12Yaml = []byte(`kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: authorizationpolicies.rbac.istio.io + labels: + app: istio-pilot + istio: rbac + heritage: Tiller + release: istio +spec: + group: rbac.istio.io + names: + kind: AuthorizationPolicy + plural: authorizationpolicies + singular: authorizationpolicy + categories: + - istio-io + - rbac-istio-io + scope: Namespaced + versions: + - name: v1alpha1 + served: true + storage: true +--- +`) + +func chartsCrdsFilesCrd12YamlBytes() ([]byte, error) { + return _chartsCrdsFilesCrd12Yaml, nil +} + +func chartsCrdsFilesCrd12Yaml() (*asset, error) { + bytes, err := chartsCrdsFilesCrd12YamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/files/crd-12.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsFilesCrd14Yaml = []byte(`kind: CustomResourceDefinition +apiVersion: apiextensions.k8s.io/v1beta1 +metadata: + name: authorizationpolicies.security.istio.io + labels: + app: istio-pilot + istio: security + heritage: Tiller + release: istio +spec: + group: security.istio.io + names: + kind: AuthorizationPolicy + plural: authorizationpolicies + singular: authorizationpolicy + categories: + - istio-io + - security-istio-io + scope: Namespaced + versions: + - name: v1beta1 + served: true + storage: true +--- +`) + +func chartsCrdsFilesCrd14YamlBytes() ([]byte, error) { + return _chartsCrdsFilesCrd14Yaml, nil +} + +func chartsCrdsFilesCrd14Yaml() (*asset, error) { + bytes, err := chartsCrdsFilesCrd14YamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/files/crd-14.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsFilesCrdCertmanager10Yaml = []byte(`apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: clusterissuers.certmanager.k8s.io + labels: + app: certmanager + chart: certmanager + heritage: Tiller + release: istio +spec: + group: certmanager.k8s.io + versions: + - name: v1alpha1 + served: true + storage: true + names: + kind: ClusterIssuer + plural: clusterissuers + scope: Cluster +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: issuers.certmanager.k8s.io + labels: + app: certmanager + chart: certmanager + heritage: Tiller + release: istio +spec: + group: certmanager.k8s.io + versions: + - name: v1alpha1 + served: true + storage: true + names: + kind: Issuer + plural: issuers + scope: Namespaced +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: certificates.certmanager.k8s.io + labels: + app: certmanager + chart: certmanager + heritage: Tiller + release: istio +spec: + additionalPrinterColumns: + - JSONPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - JSONPath: .spec.secretName + name: Secret + type: string + - JSONPath: .spec.issuerRef.name + name: Issuer + type: string + priority: 1 + - JSONPath: .status.conditions[?(@.type=="Ready")].message + name: Status + type: string + priority: 1 + - JSONPath: .metadata.creationTimestamp + description: |- + CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. + + Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + name: Age + type: date + group: certmanager.k8s.io + versions: + - name: v1alpha1 + served: true + storage: true + scope: Namespaced + names: + kind: Certificate + plural: certificates + shortNames: + - cert + - certs +--- +`) + +func chartsCrdsFilesCrdCertmanager10YamlBytes() ([]byte, error) { + return _chartsCrdsFilesCrdCertmanager10Yaml, nil +} + +func chartsCrdsFilesCrdCertmanager10Yaml() (*asset, error) { + bytes, err := chartsCrdsFilesCrdCertmanager10YamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/files/crd-certmanager-10.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsFilesCrdCertmanager11Yaml = []byte(`apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: orders.certmanager.k8s.io + labels: + app: certmanager + chart: certmanager + heritage: Tiller + release: istio +spec: + additionalPrinterColumns: + - JSONPath: .status.state + name: State + type: string + - JSONPath: .spec.issuerRef.name + name: Issuer + type: string + priority: 1 + - JSONPath: .status.reason + name: Reason + type: string + priority: 1 + - JSONPath: .metadata.creationTimestamp + description: |- + CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. + + Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + name: Age + type: date + group: certmanager.k8s.io + versions: + - name: v1alpha1 + served: true + storage: true + names: + kind: Order + plural: orders + scope: Namespaced +--- +apiVersion: apiextensions.k8s.io/v1beta1 +kind: CustomResourceDefinition +metadata: + name: challenges.certmanager.k8s.io + labels: + app: certmanager + chart: certmanager + heritage: Tiller + release: istio +spec: + additionalPrinterColumns: + - JSONPath: .status.state + name: State + type: string + - JSONPath: .spec.dnsName + name: Domain + type: string + - JSONPath: .status.reason + name: Reason + type: string + - JSONPath: .metadata.creationTimestamp + description: |- + CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. + + Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata + name: Age + type: date + group: certmanager.k8s.io + versions: + - name: v1alpha1 + served: true + storage: true + names: + kind: Challenge + plural: challenges + scope: Namespaced +--- +`) + +func chartsCrdsFilesCrdCertmanager11YamlBytes() ([]byte, error) { + return _chartsCrdsFilesCrdCertmanager11Yaml, nil +} + +func chartsCrdsFilesCrdCertmanager11Yaml() (*asset, error) { + bytes, err := chartsCrdsFilesCrdCertmanager11YamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/files/crd-certmanager-11.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsKustomizationYaml = []byte(`apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + - files/crd-10.yaml + - files/crd-11.yaml + - files/crd-12.yaml + - files/crd-14.yaml + - files/crd-certmanager-10.yaml + - files/crd-certmanager-11.yaml +`) + +func chartsCrdsKustomizationYamlBytes() ([]byte, error) { + return _chartsCrdsKustomizationYaml, nil +} + +func chartsCrdsKustomizationYaml() (*asset, error) { + bytes, err := chartsCrdsKustomizationYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/kustomization.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsTemplatesCrdsYaml = []byte(`{{ .Files.Get "files/crd-10.yaml" }} +{{ .Files.Get "files/crd-11.yaml" }} +{{ .Files.Get "files/crd-12.yaml" }} +{{ .Files.Get "files/crd-14.yaml" }} +{{- if .Values.certmanager }} +{{- if .Values.certmanager.enabled }} +{{ .Files.Get "files/crd-certmanager-10.yaml" }} +{{ .Files.Get "files/crd-certmanager-11.yaml" }} +{{- end }} +{{- end }} +`) + +func chartsCrdsTemplatesCrdsYamlBytes() ([]byte, error) { + return _chartsCrdsTemplatesCrdsYaml, nil +} + +func chartsCrdsTemplatesCrdsYaml() (*asset, error) { + bytes, err := chartsCrdsTemplatesCrdsYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/templates/crds.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsCrdsTemplatesNamespacesYaml = []byte(`# To prevent accidental injection into istio control plane namespaces. +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Release.Namespace }} + labels: + istio-operator-managed: Reconcile + istio-injection: disabled +--- + +{{- if ne .Values.global.istioNamespace .Release.Namespace }} +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Values.global.istioNamespace }} + labels: + istio-operator-managed: Reconcile + istio-injection: disabled +--- +{{- end }} + +{{- if and (ne .Values.global.configNamespace .Release.Namespace) (ne .Values.global.configNamespace .Values.global.istioNamespace) }} +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Values.global.configNamespace }} + labels: + istio-operator-managed: Reconcile + istio-injection: disabled +--- +{{- end }} + +{{- if ne .Values.global.telemetryNamespace .Release.Namespace }} +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Values.global.telemetryNamespace }} + labels: + istio-operator-managed: Reconcile + istio-injection: disabled +--- +{{- end }} + +{{- if and (ne .Values.global.prometheusNamespace .Release.Namespace) (ne .Values.global.prometheusNamespace .Values.global.telemetryNamespace) }} +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Values.global.prometheusNamespace }} + labels: + istio-operator-managed: Reconcile + istio-injection: disabled +--- +{{- end }} + +{{- if ne .Values.global.policyNamespace .Release.Namespace }} +apiVersion: v1 +kind: Namespace +metadata: + name: {{ .Values.global.policyNamespace }} + labels: + istio-operator-managed: Reconcile + istio-injection: disabled +--- +{{- end }} +`) + +func chartsCrdsTemplatesNamespacesYamlBytes() ([]byte, error) { + return _chartsCrdsTemplatesNamespacesYaml, nil +} + +func chartsCrdsTemplatesNamespacesYaml() (*asset, error) { + bytes, err := chartsCrdsTemplatesNamespacesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/crds/templates/namespaces.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressChartYaml = []byte(`apiVersion: v1 +name: istio-egress +version: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for deploying Istio gateways +keywords: + - istio + - egressgateway + - gateways +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsGatewaysIstioEgressChartYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressChartYaml, nil +} + +func chartsGatewaysIstioEgressChartYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressNotesTxt = []byte(` +Changes: +- separate namespace allows: +-- easier reconfig of just the gateway +-- TLS secrets and domain name management is isolated, for better security +-- simplified configuration +-- multiple versions of the ingress can be used, to minize upgrade risks + +- the new chart uses the default namespace service account, and doesn't require +additional RBAC permissions. + +- simplified label structure. Label change is not supported on upgrade. + +- for 'internal load balancer' you should deploy a separate gateway, in a different +namespace. + +All ingress gateway have a "app:ingressgateway" label, used to identify it as an +ingress, and an "istio: ingressgateway$SUFFIX" label of Gateway selection. + +The Gateways use "istio: ingressgateway$SUFFIX" selectors. + + +# Multiple gateway versions + + + +# Using different pilot versions + + + +# Migration from istio-system + +Istio 1.0 includes the gateways in istio-system. Since the external IP is associated +with the Service and bound to the namespace, it is recommended to: + +1. Install the new gateway in a new namespace. +2. Copy any TLS certificate to the new namespace, and configure the domains. +3. Checking the new gateway work - for example by overriding the IP in /etc/hosts +4. Modify the DNS server to add the A record of the new namespace +5. Check traffic +6. Delete the A record corresponding to the gateway in istio-system +7. Upgrade istio-system, disabling the ingressgateway +8. Delete the domain TLS certs from istio-system. + +If using certmanager, all Certificate and associated configs must be moved as well. +`) + +func chartsGatewaysIstioEgressNotesTxtBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressNotesTxt, nil +} + +func chartsGatewaysIstioEgressNotesTxt() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressNotesTxtBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/NOTES.txt", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .global.defaultNodeSelector .nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .podAntiAffinityLabelSelector .podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsGatewaysIstioEgressTemplates_affinityTplBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressTemplates_affinityTpl, nil +} + +func chartsGatewaysIstioEgressTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressTemplates_helpersTpl = []byte(`{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "gateway.name" -}} +{{ $gateway := index .Values "gateways" "istio-egressgateway" }} +{{- default .Chart.Name $gateway.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "gateway.fullname" -}} +{{ $gateway := index .Values "gateways" "istio-egressgateway" }} +{{- if $gateway.fullnameOverride -}} +{{- $gateway.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name $gateway.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "gateway.chart" -}} +{{- .Chart.Name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +`) + +func chartsGatewaysIstioEgressTemplates_helpersTplBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressTemplates_helpersTpl, nil +} + +func chartsGatewaysIstioEgressTemplates_helpersTpl() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressTemplates_helpersTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/templates/_helpers.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressTemplatesAutoscaleYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-egressgateway" }} +{{- if and $gateway.autoscaleEnabled $gateway.autoscaleMin $gateway.autoscaleMax }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: egressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-egressgateway + release: {{ .Release.Name }} +spec: + maxReplicas: {{ $gateway.autoscaleMax }} + minReplicas: {{ $gateway.autoscaleMin }} + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-egressgateway + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ $gateway.cpu.targetAverageUtilization }} +--- +{{- end }} +`) + +func chartsGatewaysIstioEgressTemplatesAutoscaleYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressTemplatesAutoscaleYaml, nil +} + +func chartsGatewaysIstioEgressTemplatesAutoscaleYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressTemplatesAutoscaleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/templates/autoscale.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressTemplatesDeploymentYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-egressgateway" }} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-egressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-egressgateway + istio: egressgateway + release: {{ .Release.Name }} +spec: +{{- if not $gateway.autoscaleEnabled }} +{{- if $gateway.replicaCount }} + replicas: {{ $gateway.replicaCount }} +{{- else }} + replicas: 1 +{{- end }} +{{- end }} + selector: + matchLabels: + app: istio-egressgateway + istio: egressgateway + strategy: + rollingUpdate: + maxSurge: {{ $gateway.rollingMaxSurge }} + maxUnavailable: {{ $gateway.rollingMaxUnavailable }} + template: + metadata: + labels: + app: istio-egressgateway + istio: egressgateway +{{- if eq .Release.Namespace "istio-system"}} + heritage: Tiller + release: istio + chart: gateways +{{- end }} + annotations: + sidecar.istio.io/inject: "false" +{{- if $gateway.podAnnotations }} +{{ toYaml $gateway.podAnnotations | indent 8 }} +{{ end }} + spec: +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} +{{- if .Values.global.proxy.enableCoreDump }} + initContainers: + - name: enable-core-dump +{{- if contains "/" .Values.global.proxy_init.image }} + image: "{{ .Values.global.proxy_init.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy_init.image | default "proxy_init" }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + command: + - /bin/sh + args: + - -c + - sysctl -w kernel.core_pattern=/var/lib/istio/core.proxy && ulimit -c unlimited + securityContext: + privileged: true +{{- end }} + containers: + - name: istio-proxy +{{- if contains "/" .Values.global.proxy.image }} + image: "{{ .Values.global.proxy.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy.image }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + {{- range $key, $val := $gateway.ports }} + - containerPort: {{ $val.port }} + {{- end }} + {{- range $key, $val := $gateway.meshExpansionPorts }} + - containerPort: {{ $val.port }} + {{- end }} + - containerPort: 15090 + protocol: TCP + name: http-envoy-prom + args: + - proxy + - router + - --domain + - $(POD_NAMESPACE).svc.{{ .Values.global.proxy.clusterDomain }} + {{- if .Values.global.proxy.logLevel }} + - --proxyLogLevel={{ .Values.global.proxy.logLevel }} + {{- end}} + {{- if .Values.global.proxy.componentLogLevel }} + - --proxyComponentLogLevel={{ .Values.global.proxy.componentLogLevel }} + {{- end}} + {{- if .Values.global.logging.level }} + - --log_output_level={{ .Values.global.logging.level }} + {{- end}} + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + - --drainDuration + - '45s' #drainDuration + - --parentShutdownDuration + - '1m0s' #parentShutdownDuration + - --connectTimeout + - '10s' #connectTimeout + - --serviceCluster + - istio-egressgateway + - --zipkinAddress + {{- if .Values.global.tracer.zipkin.address }} + - {{ .Values.global.tracer.zipkin.address }} + {{- else if .Values.global.telemetryNamespace }} + - zipkin.{{ .Values.global.telemetryNamespace }}:9411 + {{- else }} + - zipkin:9411 + {{- end }} + - --proxyAdminPort + - "15000" + - --statusPort + - "15020" + {{- if .Values.global.controlPlaneSecurityEnabled }} + - --controlPlaneAuthPolicy + - MUTUAL_TLS + - --discoveryAddress + {{- if .Values.global.istioNamespace }} + - istio-pilot.{{ .Values.global.istioNamespace }}:15011 + {{- else }} + - istio-pilot:15011 + {{- end }} + {{- else }} + - --controlPlaneAuthPolicy + - NONE + - --discoveryAddress + {{- if .Values.global.istioNamespace }} + - istio-pilot.{{ .Values.global.istioNamespace }}:15010 + {{- else }} + - istio-pilot:15010 + {{- end }} + {{- end }} + {{- if .Values.global.trustDomain }} + - --trust-domain={{ .Values.global.trustDomain }} + {{- end }} + readinessProbe: + failureThreshold: 30 + httpGet: + path: /healthz/ready + port: 15020 + scheme: HTTP + initialDelaySeconds: 1 + periodSeconds: 2 + successThreshold: 1 + timeoutSeconds: 1 + resources: +{{- if $gateway.resources }} +{{ toYaml $gateway.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + env: + - name: NODE_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: INSTANCE_IP + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: status.podIP + - name: HOST_IP + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: status.hostIP + - name: ISTIO_META_POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: ISTIO_META_CONFIG_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + {{- if $gateway.sds }} + {{- if $gateway.sds.enabled }} + - name: ISTIO_META_USER_SDS + value: "true" + {{- end }} + {{- end }} + {{- if $gateway.env }} + {{- range $key, $val := $gateway.env }} + - name: {{ $key }} + value: {{ $val }} + {{- end }} + {{ end }} +{{- if $gateway.podAnnotations }} + - name: "ISTIO_METAJSON_ANNOTATIONS" + value: | +{{ toJson $gateway.podAnnotations | indent 16}} +{{ end }} + volumeMounts: + {{ if .Values.global.sds.enabled }} + - name: sdsudspath + mountPath: /var/run/sds + readOnly: true + - name: istio-token + mountPath: /var/run/secrets/tokens + {{- end }} + - name: istio-certs + mountPath: /etc/certs + readOnly: true + {{- range $gateway.secretVolumes }} + - name: {{ .name }} + mountPath: {{ .mountPath | quote }} + readOnly: true + {{- end }} +{{- if $gateway.additionalContainers }} +{{ toYaml $gateway.additionalContainers | indent 8 }} +{{- end }} + volumes: + {{- if .Values.global.sds.enabled }} + - name: sdsudspath + hostPath: + path: /var/run/sds + - name: istio-token + projected: + sources: + - serviceAccountToken: + path: istio-token + expirationSeconds: 43200 + audience: {{ .Values.global.trustDomain }} + {{- end }} + {{ if .Values.global.sds.enabled }} + - name: sdsudspath + hostPath: + path: /var/run/sds + {{- end }} + - name: istio-certs + secret: + secretName: istio.default + optional: true + {{- range $gateway.secretVolumes }} + - name: {{ .name }} + secret: + secretName: {{ .secretName | quote }} + optional: true + {{- end }} + {{- range $gateway.configVolumes }} + - name: {{ .name }} + configMap: + name: {{ .configMapName | quote }} + optional: true + {{- end }} + affinity: + {{- include "nodeaffinity" (dict "global" .Values.global "nodeSelector" $gateway.nodeSelector) | indent 6 }} + {{- include "podAntiAffinity" $gateway | indent 6 }} +{{- if $gateway.tolerations }} + tolerations: +{{ toYaml $gateway.tolerations | indent 6 }} +{{- end }} +`) + +func chartsGatewaysIstioEgressTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressTemplatesDeploymentYaml, nil +} + +func chartsGatewaysIstioEgressTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressTemplatesPoddisruptionbudgetYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-egressgateway" }} +{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: istio-egressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-egressgateway + istio: egressgateway + release: {{ .Release.Name }} +spec: + minAvailable: 1 + selector: + matchLabels: + app: istio-egressgateway + istio: egressgateway + release: {{ .Release.Name }} +{{- end }} +`) + +func chartsGatewaysIstioEgressTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsGatewaysIstioEgressTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressTemplatesPreconfiguredYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-egressgateway" }} +{{- if $gateway.zvpn.enabled }} +apiVersion: networking.istio.io/v1alpha3 +kind: Gateway +metadata: + name: istio-multicluster-egressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-egressgateway + release: {{ .Release.Name }} +spec: + selector: + istio: egressgateway + servers: + - hosts: + - "*.{{ $gateway.zvpn.suffix }}" + port: + name: tls + number: 15443 + protocol: TLS + tls: {} +--- +apiVersion: networking.istio.io/v1alpha3 +kind: VirtualService +metadata: + name: istio-multicluster-egressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-egressgateway + release: {{ .Release.Name }} +spec: + gateways: + - istio-multicluster-egressgateway + hosts: + - "*.{{ $gateway.zvpn.suffix }}" + tls: + - match: + - port: 15443 + sniHosts: + - "*.{{ $gateway.zvpn.suffix }}" + route: + - destination: + host: non.existent.cluster + port: + number: 15443 + weight: 100 +--- +apiVersion: networking.istio.io/v1alpha3 +kind: EnvoyFilter +metadata: + name: istio-multicluster-egressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-egressgateway + release: {{ .Release.Name }} +spec: + workloadLabels: + istio: egressgateway + filters: + - listenerMatch: + portNumber: 15443 + listenerType: GATEWAY + filterName: envoy.filters.network.sni_cluster + filterType: NETWORK + filterConfig: {} +--- +## To ensure all traffic to *.global is using mTLS +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: istio-multicluster-destinationrule + namespace: {{ .Release.Namespace }} + labels: + app: istio-egressgateway + release: {{ .Release.Name }} +spec: + host: "*.{{ $gateway.zvpn.suffix }}" + trafficPolicy: + tls: + mode: ISTIO_MUTUAL +--- +{{- end }} +`) + +func chartsGatewaysIstioEgressTemplatesPreconfiguredYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressTemplatesPreconfiguredYaml, nil +} + +func chartsGatewaysIstioEgressTemplatesPreconfiguredYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressTemplatesPreconfiguredYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/templates/preconfigured.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressTemplatesServiceYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-egressgateway" }} +apiVersion: v1 +kind: Service +metadata: + name: istio-egressgateway + namespace: {{ .Release.Namespace }} + annotations: + {{- range $key, $val := $gateway.serviceAnnotations }} + {{ $key }}: {{ $val | quote }} + {{- end }} + labels: + app: istio-egressgateway + release: {{ .Release.Name }} +spec: + type: ClusterIP + selector: + app: istio-egressgateway + ports: + {{- range $key, $val := $gateway.ports }} + - + {{- range $pkey, $pval := $val }} + {{ $pkey}}: {{ $pval }} + {{- end }} + {{- end }} +--- +`) + +func chartsGatewaysIstioEgressTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressTemplatesServiceYaml, nil +} + +func chartsGatewaysIstioEgressTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressTemplatesServiceaccountYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-egressgateway" }} +{{ if ($gateway.sds) and ($gateway.sds.enabled) }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: Role +metadata: + name: istio-egressgateway-sds + namespace: {{ .Release.Namespace }} +rules: +- apiGroups: [""] + resources: ["secrets"] + verbs: ["get", "watch", "list"] +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + name: istio-egressgateway-sds + namespace: {{ .Release.Namespace }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: istio-egressgateway-sds +subjects: +- kind: ServiceAccount + name: istio-egressgateway-service-account +--- +apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-egressgateway-service-account + namespace: {{ .Release.Namespace }} + labels: + app: istio-egressgateway + release: {{ .Release.Name }} +{{ end }}`) + +func chartsGatewaysIstioEgressTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressTemplatesServiceaccountYaml, nil +} + +func chartsGatewaysIstioEgressTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioEgressValuesYaml = []byte(`# Standalone istio egress gateway. +# Should be installed in a separate namespace, to minimize access to config +gateways: + istio-egressgateway: + ports: + - port: 80 + name: http2 + - port: 443 + name: https + # This is the port where sni routing happens + - port: 15443 + targetPort: 15443 + name: tls + + # Enable cross-cluster access using SNI matching. + # Make sure you set suffix if deploying multiple egress gateways. + zvpn: + # Must be different for each egress namespace. + # Used to control the domain name suffix for zero vpn routing. + # Domain names ending with this suffix will be routed to this egress gateway + # automatically. + # This can be a real domain name ( istio.example.com ) + suffix: global + enabled: true + + + # Scalability tunning + # replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + autoscaleEnabled: true + autoscaleMin: 1 + autoscaleMax: 5 + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 2000m + memory: 256Mi + cpu: + targetAverageUtilization: 80 + + drainDuration: 45s + connectTimeout: 10s + + serviceAnnotations: {} + podAnnotations: {} + type: ClusterIP # change to NodePort or LoadBalancer if need be + + secretVolumes: + - name: egressgateway-certs + secretName: istio-egressgateway-certs + mountPath: /etc/istio/egressgateway-certs + - name: egressgateway-ca-certs + secretName: istio-egressgateway-ca-certs + mountPath: /etc/istio/egressgateway-ca-certs + + + ### Advanced options ############ + # TODO: convert to real options, env should not be exposed + env: + # Set this to "external" if and only if you want the egress gateway to + # act as a transparent SNI gateway that routes mTLS/TLS traffic to + # external services defined using service entries, where the service + # entry has resolution set to DNS, has one or more endpoints with + # network field set to "external". By default its set to "" so that + # the egress gateway sees the same set of endpoints as the sidecars + # preserving backward compatibility + # ISTIO_META_REQUESTED_NETWORK_VIEW: "" + # A gateway with this mode ensures that pilot generates an additional + # set of clusters for internal services but without Istio mTLS, to + # enable cross cluster routing. + ISTIO_META_ROUTER_MODE: "sni-dnat" + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsGatewaysIstioEgressValuesYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioEgressValuesYaml, nil +} + +func chartsGatewaysIstioEgressValuesYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioEgressValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-egress/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressChartYaml = []byte(`apiVersion: v1 +name: istio-ingress +version: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for deploying Istio gateways +keywords: + - istio + - ingressgateway + - gateways +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsGatewaysIstioIngressChartYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressChartYaml, nil +} + +func chartsGatewaysIstioIngressChartYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressNotesTxt = []byte(` +Changes: +- separate namespace allows: +-- easier reconfig of just the gateway +-- TLS secrets and domain name management is isolated, for better security +-- simplified configuration +-- multiple versions of the ingress can be used, to minimize upgrade risks + +- the new chart uses the default namespace service account, and doesn't require +additional RBAC permissions. + +- simplified label and chart structure. +- ability to run a pilot dedicated for the gateway, isolated from the main pilot. This is more robust, safer on upgrades +and allows a bit more flexibility. +- the dedicated pilot-per-ingress is required if the gateway needs to support k8s-style ingress. + +# Port and basic host configuration + +In order to configure the Service object, the install/upgrade needs to provide a list of all ports. +In the past, this was done when installing/upgrading full istio, and involved some duplication - ports configured +both in upgrade, Gateway and VirtualService. + +The new Ingress chart uses a 'values.yaml' (see user-example-ingress), which auto-generates Service ports, +Gateways and basic VirtualService. It is still possible to only configure the ports in Service, and do manual +config for the rest. + +All internal services ( telemetry, pilot debug ports, mesh expansion ) can now be configured via the new mechanism. + +# Migration from istio-system + +Istio 1.0 includes the gateways in istio-system. Since the external IP is associated +with the Service and bound to the namespace, it is recommended to: + +1. Install the new gateway in a new namespace. +2. Copy any TLS certificate to the new namespace, and configure the domains. +3. Checking the new gateway work - for example by overriding the IP in /etc/hosts +4. Modify the DNS server to add the A record of the new namespace +5. Check traffic +6. Delete the A record corresponding to the gateway in istio-system +7. Upgrade istio-system, disabling the ingressgateway +8. Delete the domain TLS certs from istio-system. + +If using certmanager, all Certificate and associated configs must be moved as well. +`) + +func chartsGatewaysIstioIngressNotesTxtBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressNotesTxt, nil +} + +func chartsGatewaysIstioIngressNotesTxt() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressNotesTxtBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/NOTES.txt", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .global.defaultNodeSelector .nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .podAntiAffinityLabelSelector .podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplates_affinityTplBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplates_affinityTpl, nil +} + +func chartsGatewaysIstioIngressTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesAddongatewayYaml = []byte(`# Template for telemetry addon gateways +{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +{{ range $addon := $gateway.telemetry_addon_gateways }} +{{ if $addon.enabled }} +apiVersion: networking.istio.io/v1alpha3 +kind: Gateway +metadata: + name: istio-{{ $addon.name }}-gateway + namespace: {{ $.Release.Namespace }} + labels: + app: {{ $addon.name }} + release: {{ $.Release.Name }} +spec: + selector: + istio: ingressgateway + servers: + - port: + number: {{ $addon.port }} + name: https-{{ $addon.name }} + protocol: HTTPS + tls: + mode: SIMPLE + serverCertificate: /etc/istio/ingressgateway-certs/tls.crt + privateKey: /etc/istio/ingressgateway-certs/tls.key + hosts: + - "*" +--- +apiVersion: networking.istio.io/v1alpha3 +kind: VirtualService +metadata: + name: {{ $addon.name }}-virtual-service + namespace: {{ $.Release.Namespace }} + labels: + app: {{ $addon.name }} + release: {{ $.Release.Name }} +spec: + hosts: + - "*" + gateways: + - istio-{{ $addon.name }}-gateway + http: + - match: + - port: {{ $addon.port }} + route: + - destination: + host: {{ $addon.name }}.{{ $.Release.Namespace }}.svc.{{ $.Values.global.proxy.clusterDomain }} + port: + number: {{ $addon.desPort }} +--- +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: {{ $addon.name }} + namespace: {{ $.Release.Namespace }} + labels: + app: {{ $addon.name }} + release: {{ $.Release.Name }} +spec: + host: {{ $addon.name }}.{{ $.Release.Namespace }}.svc.{{ $.Values.global.proxy.clusterDomain }} + trafficPolicy: + tls: + mode: DISABLE +--- +{{- end }} +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesAddongatewayYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesAddongatewayYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesAddongatewayYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesAddongatewayYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/addongateway.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesAutoscaleYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +{{- if and $gateway.autoscaleEnabled $gateway.autoscaleMin $gateway.autoscaleMax }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: istio-ingressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-ingressgateway + release: {{ .Release.Name }} +spec: + maxReplicas: {{ $gateway.autoscaleMax }} + minReplicas: {{ $gateway.autoscaleMin }} + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-ingressgateway + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ $gateway.cpu.targetAverageUtilization }} +--- +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesAutoscaleYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesAutoscaleYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesAutoscaleYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesAutoscaleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/autoscale.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesCertificateYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +{{ if $gateway.certificates }} +--- +# Auto-generate Certmanager Issuer and certificate requests. +# Requires 'email' to be set, for Let's Encrypt use. + +apiVersion: certmanager.k8s.io/v1alpha1 +kind: Issuer +metadata: + name: letsencrypt + namespace: {{ .Release.Namespace }} +spec: + acme: + server: https://acme-v02.api.letsencrypt.org/directory + email: {{ $gateway.email }} + privateKeySecretRef: + name: letsencrypt + http01: {} +--- + +apiVersion: certmanager.k8s.io/v1alpha1 +kind: Certificate +metadata: + name: istio-ingressgateway-certs + namespace: {{ .Release.Namespace }} +spec: + secretName: istio-ingressgateway-certs + issuerRef: + name: letsencrypt + kind: ClusterIssuer + commonName: {{ $gateway.commonName }} + dnsNames: +{{- range $key := $gateway.certificates }} + - {{ $key }} +{{- end }} + acme: + config: + - http01: + ingressClass: istio + domains: +{{- range $key := $gateway.certificates }} + - {{ $key }} +{{- end }} +{{- end }} + +`) + +func chartsGatewaysIstioIngressTemplatesCertificateYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesCertificateYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesCertificateYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesCertificateYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/certificate.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesDeploymentYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-ingressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-ingressgateway + istio: ingressgateway + release: {{ .Release.Name }} +spec: +{{- if not $gateway.autoscaleEnabled }} +{{- if $gateway.replicaCount }} + replicas: {{ $gateway.replicaCount }} +{{- else }} + replicas: 1 +{{- end }} +{{- end }} + selector: + matchLabels: + app: istio-ingressgateway + istio: ingressgateway + strategy: + rollingUpdate: + maxSurge: {{ $gateway.rollingMaxSurge }} + maxUnavailable: {{ $gateway.rollingMaxUnavailable }} + template: + metadata: + labels: + app: istio-ingressgateway + istio: ingressgateway +{{- if eq .Release.Namespace "istio-system"}} + heritage: Tiller + release: istio + chart: gateways +{{- end }} + annotations: + sidecar.istio.io/inject: "false" +{{- if $gateway.podAnnotations }} +{{ toYaml $gateway.podAnnotations | indent 8 }} +{{ end }} + spec: + serviceAccountName: istio-ingressgateway-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} +{{- if .Values.global.proxy.enableCoreDump }} + initContainers: + - name: enable-core-dump +{{- if contains "/" .Values.global.proxy.image }} + image: "{{ .Values.global.proxy.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy.image | default "proxyv2" }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + command: + - /bin/sh + args: + - -c + - sysctl -w kernel.core_pattern=/var/lib/istio/core.proxy && ulimit -c unlimited + securityContext: + privileged: true +{{- end }} + containers: +{{- if $gateway.sds.enabled }} + - name: ingress-sds +{{- if contains "/" $gateway.sds.image }} + image: "{{ $gateway.sds.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ $gateway.sds.image }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + resources: +{{- if $gateway.sds.resources }} +{{ toYaml $gateway.sds.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + env: + - name: "ENABLE_WORKLOAD_SDS" + value: "false" + - name: "ENABLE_INGRESS_GATEWAY_SDS" + value: "true" + - name: "INGRESS_GATEWAY_NAMESPACE" + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + volumeMounts: + - name: ingressgatewaysdsudspath + mountPath: /var/run/ingress_gateway +{{- end }} + - name: istio-proxy +{{- if contains "/" .Values.global.proxy.image }} + image: "{{ .Values.global.proxy.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy.image | default "proxyv2" }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + {{- range $key, $val := $gateway.ports }} + - containerPort: {{ $val.port }} + {{- end }} + {{- range $key, $val := $gateway.meshExpansionPorts }} + - containerPort: {{ $val.port }} + {{- end }} + - containerPort: 15090 + protocol: TCP + name: http-envoy-prom + args: + - proxy + - router + - --domain + - $(POD_NAMESPACE).svc.{{ .Values.global.proxy.clusterDomain }} + {{- if .Values.global.proxy.logLevel }} + - --proxyLogLevel={{ .Values.global.proxy.logLevel }} + {{- end}} + {{- if .Values.global.proxy.componentLogLevel }} + - --proxyComponentLogLevel={{ .Values.global.proxy.componentLogLevel }} + {{- end}} + {{- if .Values.global.logging.level }} + - --log_output_level={{ .Values.global.logging.level }} + {{- end}} + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + - --drainDuration + - '45s' #drainDuration + - --parentShutdownDuration + - '1m0s' #parentShutdownDuration + - --connectTimeout + - '10s' #connectTimeout + - --serviceCluster + - istio-ingressgateway + - --zipkinAddress + {{- if .Values.global.tracer.zipkin.address }} + - {{ .Values.global.tracer.zipkin.address }} + {{- else if .Values.global.telemetryNamespace }} + - zipkin.{{ .Values.global.telemetryNamespace }}:9411 + {{- else }} + - zipkin:9411 + {{- end }} + {{- if $gateway.envoyMetricsService }} + - --envoyMetricsServiceAddress + - {{ $gateway.envoyMetricsService.host }}:{{ $gateway.envoyMetricsService.port }} + {{- end }} + {{- if .Values.global.proxy.envoyAccessLogService.enabled }} + - --envoyAccessLogServiceAddress + - {{ .Values.global.proxy.envoyAccessLogService.host }}:{{ .Values.global.proxy.envoyAccessLogService.port }} + {{- end }} + {{- if $gateway.applicationPorts }} + - --applicationPorts + - "{{ $gateway.applicationPorts }}" + {{- end }} + - --proxyAdminPort + - "15000" + - --statusPort + - "15020" + {{- if .Values.global.controlPlaneSecurityEnabled }} + - --controlPlaneAuthPolicy + - MUTUAL_TLS + - --discoveryAddress + {{- if .Values.global.istioNamespace }} + - istio-pilot.{{ .Values.global.istioNamespace }}:15011 + {{- else }} + - istio-pilot:15011 + {{- end }} + {{- else }} + - --controlPlaneAuthPolicy + - NONE + - --discoveryAddress + {{- if .Values.global.istioNamespace }} + - istio-pilot.{{ .Values.global.istioNamespace }}:15010 + {{- else }} + - istio-pilot:15010 + {{- end }} + {{- end }} + {{- if .Values.global.trustDomain }} + - --trust-domain={{ .Values.global.trustDomain }} + {{- end }} + readinessProbe: + failureThreshold: 30 + httpGet: + path: /healthz/ready + port: 15020 + scheme: HTTP + initialDelaySeconds: 1 + periodSeconds: 2 + successThreshold: 1 + timeoutSeconds: 1 + resources: +{{- if $gateway.resources }} +{{ toYaml $gateway.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + env: + - name: NODE_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: INSTANCE_IP + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: status.podIP + - name: HOST_IP + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: status.hostIP + - name: ISTIO_META_POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: ISTIO_META_CONFIG_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + {{- if $gateway.sds.enabled }} + - name: ISTIO_META_USER_SDS + value: "true" + {{- end }} + {{- if $gateway.env }} + {{- range $key, $val := $gateway.env }} + - name: {{ $key }} + value: {{ $val }} + {{- end }} + {{- end }} +{{- if $gateway.podAnnotations }} + - name: "ISTIO_METAJSON_ANNOTATIONS" + value: | +{{ toJson $gateway.podAnnotations | indent 16}} +{{ end }} + volumeMounts: + {{ if .Values.global.sds.enabled }} + - name: sdsudspath + mountPath: /var/run/sds + readOnly: true + - name: istio-token + mountPath: /var/run/secrets/tokens + {{- end }} + {{- if $gateway.sds.enabled }} + - name: ingressgatewaysdsudspath + mountPath: /var/run/ingress_gateway + {{- end }} + - name: istio-certs + mountPath: /etc/certs + readOnly: true + {{- range $gateway.secretVolumes }} + - name: {{ .name }} + mountPath: {{ .mountPath | quote }} + readOnly: true + {{- end }} +{{- if $gateway.additionalContainers }} +{{ toYaml $gateway.additionalContainers | indent 8 }} +{{- end }} + volumes: + {{- if $gateway.sds.enabled }} + - name: ingressgatewaysdsudspath + emptyDir: {} + {{- end }} + {{- if .Values.global.sds.enabled }} + - name: sdsudspath + hostPath: + path: /var/run/sds + - name: istio-token + projected: + sources: + - serviceAccountToken: + path: istio-token + expirationSeconds: 43200 + audience: {{ .Values.global.trustDomain }} + {{- end }} + - name: istio-certs + secret: + secretName: istio.istio-ingressgateway-service-account + optional: true + {{- range $gateway.secretVolumes }} + - name: {{ .name }} + secret: + secretName: {{ .secretName | quote }} + optional: true + {{- end }} + {{- range $gateway.configVolumes }} + - name: {{ .name }} + configMap: + name: {{ .configMapName | quote }} + optional: true + {{- end }} + affinity: + {{- include "nodeaffinity" (dict "global" .Values.global "nodeSelector" $gateway.nodeSelector) | indent 6 }} + {{- include "podAntiAffinity" $gateway | indent 6 }} +{{- if $gateway.tolerations }} + tolerations: +{{ toYaml $gateway.tolerations | indent 6 }} +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesDeploymentYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesGatewayYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +# Main Gateway. Apps must bind to NAMESPACE/ingressgateway +apiVersion: networking.istio.io/v1alpha3 +kind: Gateway +metadata: + name: ingressgateway + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + selector: + istio: ingressgateway + servers: +{{- if $gateway.tls }} + - port: + number: 443 + name: https-default + protocol: HTTPS + tls: + mode: SIMPLE + serverCertificate: /etc/istio/ingressgateway-certs/tls.crt + privateKey: /etc/istio/ingressgateway-certs/tls.key + hosts: + - "*" + {{- end }} + - port: + number: 80 + name: http + protocol: HTTP + hosts: + - "*" + # Additional ports in gateaway for the ingressPorts - apps using dedicated port instead of hostname +{{ range $app := $gateway.ingressPorts }} + - port: + number: {{ $app.port }} + name: {{ $app.name }} + protocol: HTTP2 + hosts: + - "*" +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesGatewayYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesGatewayYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesGatewayYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesGatewayYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/gateway.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesHostsYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} + +# TODO: range TCP ports, add ports +# {{ $gateway.domain }} +{{ range $app := $gateway.hosts }} +--- +apiVersion: networking.istio.io/v1alpha3 +kind: VirtualService +metadata: + name: {{ $app.name }} + namespace: {{ $.Release.Namespace }} + labels: + release: {{ $.Release.Name }} +spec: + hosts: + - "{{ $app.name }}.{{ $gateway.domain }}" + gateways: + - ingressgateway + http: + - route: + - destination: + host: {{ $app.dest }} + port: + number: {{ $app.destPort }} +{{- end }} + +{{ range $app := $gateway.ingressPorts }} +--- +apiVersion: networking.istio.io/v1alpha3 +kind: VirtualService +metadata: + name: {{ $app.name }} + namespace: {{ $.Release.Namespace }} + labels: + release: {{ $.Release.Name }} +spec: + hosts: + - "*" + gateways: + - ingressgateway + http: + - + match: + - port: {{ $app.port }} + route: + - destination: + host: {{ $app.dest }} + port: + number: {{ $app.destPort }} +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesHostsYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesHostsYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesHostsYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesHostsYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/hosts.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesMeshexpansionYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +{{- if .Values.global.meshExpansion.enabled }} +apiVersion: networking.istio.io/v1alpha3 +kind: Gateway +metadata: + name: meshexpansion-gateway + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + selector: + istio: ingressgateway + servers: + - port: + number: 15011 + protocol: TCP + name: tcp-pilot + hosts: + - "*" + - port: + number: 8060 + protocol: TCP + name: tcp-citadel + hosts: + - "*" +--- + +apiVersion: networking.istio.io/v1alpha3 +kind: VirtualService +metadata: + name: meshexpansion-vs-pilot1 + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + hosts: + - istio-pilot.{{ .Values.global.istioNamespace }}.svc.cluster.local + gateways: + - meshexpansion-gateway + tcp: + - match: + - port: {{ $gateway.externalPort }} + route: + - destination: + host: istio-pilot.{{ .Values.global.istioNamespace }}.svc.cluster.local + port: + number: 15011 + # - match: + # - port: 53 + # route: + # - destination: + # host: kube-dns.kube-system.svc.cluster.local + # port: + # number: 53 +--- + +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: meshexpansion-dr-pilot9 + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + host: istio-pilot.{{ .Release.Namespace }}.svc.cluster.local + trafficPolicy: + portLevelSettings: + - port: + number: 15011 + tls: + mode: DISABLE +--- + + +apiVersion: networking.istio.io/v1alpha3 +kind: VirtualService +metadata: + name: meshexpansion-vs-citadel + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + hosts: + - istio-citadel.{{ $.Release.Namespace }}.svc.cluster.local + gateways: + - meshexpansion-gateway + tcp: + - match: + - port: 8060 + route: + - destination: + host: istio-citadel.{{ $.Release.Namespace }}.svc.cluster.local + port: + number: 8060 + +{{- end }} + +`) + +func chartsGatewaysIstioIngressTemplatesMeshexpansionYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesMeshexpansionYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesMeshexpansionYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesMeshexpansionYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/meshexpansion.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesPoddisruptionbudgetYaml = []byte(`{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: ingressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-ingressgateway + release: {{ .Release.Name }} + istio: ingressgateway +spec: + minAvailable: 1 + selector: + matchLabels: + app: istio-ingressgateway + release: {{ .Release.Name }} + istio: ingressgateway +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesPreconfiguredYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +{{- if .Values.global.k8sIngress.enabled }} +apiVersion: networking.istio.io/v1alpha3 +kind: Gateway +metadata: + name: istio-autogenerated-k8s-ingress + namespace: {{ .Release.Namespace }} + labels: + app: istio-ingressgateway + release: {{ .Release.Name }} +spec: + selector: + istio: {{ .Values.global.k8sIngress.gatewayName }} + servers: + - port: + number: 80 + protocol: HTTP + name: http + hosts: + - "*" +{{ if .Values.global.k8sIngress.enableHttps }} + - port: + number: 443 + protocol: HTTPS + name: https-default + tls: + mode: SIMPLE + serverCertificate: /etc/istio/ingress-certs/tls.crt + privateKey: /etc/istio/ingress-certs/tls.key + hosts: + - "*" +{{ end }} +--- +{{ end }} + + +{{- if .Values.global.multiCluster.enabled }} +apiVersion: networking.istio.io/v1alpha3 +kind: Gateway +metadata: + name: istio-multicluster-ingressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-ingressgateway + release: {{ .Release.Name }} +spec: + selector: + istio: ingressgateway + servers: + - hosts: + - "*.global" + port: + name: tls + number: 15443 + protocol: TLS + tls: + mode: AUTO_PASSTHROUGH +--- +apiVersion: networking.istio.io/v1alpha3 +kind: EnvoyFilter +metadata: + name: istio-multicluster-ingressgateway + namespace: {{ .Release.Namespace }} + labels: + app: istio-ingressgateway + release: {{ .Release.Name }} +spec: + workloadLabels: + istio: ingressgateway + filters: + - listenerMatch: + portNumber: 15443 + listenerType: GATEWAY + insertPosition: + index: AFTER + relativeTo: envoy.filters.network.sni_cluster + filterName: envoy.filters.network.tcp_cluster_rewrite + filterType: NETWORK + filterConfig: + cluster_pattern: "\\.global$" + cluster_replacement: ".svc.{{ .Values.global.proxy.clusterDomain }}" +--- +## To ensure all traffic to *.global is using mTLS +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: istio-multicluster-destinationrule + namespace: {{ .Release.Namespace }} + labels: + app: istio-ingressgateway + release: {{ .Release.Name }} +spec: + host: "*.global" + {{- if .Values.global.defaultConfigVisibilitySettings }} + exportTo: + - '*' + {{- end }} + trafficPolicy: + tls: + mode: ISTIO_MUTUAL +--- +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesPreconfiguredYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesPreconfiguredYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesPreconfiguredYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesPreconfiguredYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/preconfigured.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesRoleYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +{{- if $gateway.sds.enabled }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: Role +metadata: + name: istio-ingressgateway-sds + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +rules: +- apiGroups: [""] + resources: ["secrets"] + verbs: ["get", "watch", "list"] +--- +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesRoleYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesRoleYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesRoleYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesRoleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/role.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesRolebindingsYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +{{- if $gateway.sds.enabled }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + name: istio-ingressgateway-sds + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: istio-ingressgateway-sds +subjects: +- kind: ServiceAccount + name: istio-ingressgateway-service-account +--- +{{- end }} +`) + +func chartsGatewaysIstioIngressTemplatesRolebindingsYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesRolebindingsYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesRolebindingsYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesRolebindingsYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/rolebindings.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesServiceYaml = []byte(`{{ $gateway := index .Values "gateways" "istio-ingressgateway" }} +{{- if not $gateway.customService }} +apiVersion: v1 +kind: Service +metadata: + name: istio-ingressgateway + namespace: {{ .Release.Namespace }} + annotations: + {{- range $key, $val := $gateway.serviceAnnotations }} + {{ $key }}: {{ $val | quote }} + {{- end }} + labels: + app: istio-ingressgateway + release: {{ .Release.Name }} +spec: +{{- if $gateway.loadBalancerIP }} + loadBalancerIP: "{{ $gateway.loadBalancerIP }}" +{{- end }} +{{- if $gateway.loadBalancerSourceRanges }} + loadBalancerSourceRanges: +{{ toYaml $gateway.loadBalancerSourceRanges | indent 4 }} +{{- end }} +{{- if $gateway.externalTrafficPolicy }} + externalTrafficPolicy: {{$gateway.externalTrafficPolicy }} +{{- end }} + type: {{ $gateway.type }} + selector: + app: istio-ingressgateway + ports: + + {{- range $key, $val := $gateway.ports }} + - + {{- range $pkey, $pval := $val }} + {{ $pkey}}: {{ $pval }} + {{- end }} + {{- end }} + + {{- if $.Values.global.meshExpansion.enabled }} + {{- range $key, $val := $gateway.meshExpansionPorts }} + - + {{- range $pkey, $pval := $val }} + {{ $pkey}}: {{ $pval }} + {{- end }} + {{- end }} + {{- end }} + {{ range $app := $gateway.ingressPorts }} + - + port: {{ $app.port }} + name: {{ $app.name }} + {{- end }} +--- +{{ end }} +`) + +func chartsGatewaysIstioIngressTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesServiceYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-ingressgateway-service-account + namespace: {{ .Release.Namespace }} + labels: + app: istio-ingressgateway + release: {{ .Release.Name }}`) + +func chartsGatewaysIstioIngressTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesServiceaccountYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressTemplatesSidecarYaml = []byte(`apiVersion: networking.istio.io/v1alpha3 +kind: Sidecar +metadata: + name: default + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + egress: + - hosts: + - "*/*" +`) + +func chartsGatewaysIstioIngressTemplatesSidecarYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressTemplatesSidecarYaml, nil +} + +func chartsGatewaysIstioIngressTemplatesSidecarYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressTemplatesSidecarYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/templates/sidecar.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsGatewaysIstioIngressValuesYaml = []byte(`# A-la-carte istio ingress gateway. +# Must be installed in a separate namespace, to minimize access to secrets. + +gateways: + istio-ingressgateway: + # + # Secret Discovery Service (SDS) configuration for ingress gateway. + # + sds: + # If true, ingress gateway fetches credentials from SDS server to handle TLS connections. + enabled: false + # SDS server that watches kubernetes secrets and provisions credentials to ingress gateway. + # This server runs in the same pod as ingress gateway. + image: node-agent-k8s + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 2000m + memory: 1024Mi + ports: + ## You can add custom gateway ports in user values overrides, but it must include those ports since helm replaces. + # Note that AWS ELB will by default perform health checks on the first port + # on this list. Setting this to the health check port will ensure that health + # checks always work. https://github.com/istio/istio/issues/12503 + - port: 15020 + targetPort: 15020 + name: status-port + - port: 80 + targetPort: 80 + name: http2 + - port: 443 + name: https + - port: 15029 + targetPort: 15029 + name: kiali + - port: 15030 + targetPort: 15030 + name: prometheus + - port: 15031 + targetPort: 15031 + name: grafana + - port: 15032 + targetPort: 15032 + name: tracing + # This is the port where sni routing happens + - port: 15443 + targetPort: 15443 + name: tls + + # Scalability tunning + # replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + autoscaleEnabled: true + autoscaleMin: 1 + autoscaleMax: 5 + + cpu: + targetAverageUtilization: 80 + + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 2000m + memory: 1024Mi + + # Debug level for envoy. Can be set to 'debug' + debug: info + + loadBalancerIP: "" + loadBalancerSourceRanges: [] + externalIPs: [] + serviceAnnotations: {} + + domain: "" + + # Enable cross-cluster access using SNI matching + zvpn: + enabled: true + suffix: global + + # To generate an internal load balancer: + # --set serviceAnnotations.cloud.google.com/load-balancer-type=internal + #serviceAnnotations: + # cloud.google.com/load-balancer-type: "internal" + + podAnnotations: {} + type: LoadBalancer #change to NodePort, ClusterIP or LoadBalancer if need be + + #### MESH EXPANSION PORTS ######## + # Pilot and Citadel MTLS ports are enabled in gateway - but will only redirect + # to pilot/citadel if global.meshExpansion settings are enabled. + # Delete these ports if mesh expansion is not enabled, to avoid + # exposing unnecessary ports on the web. + # You can remove these ports if you are not using mesh expansion + meshExpansionPorts: + - port: 15011 + targetPort: 15011 + name: tcp-pilot-grpc-tls + - port: 8060 + targetPort: 8060 + name: tcp-citadel-grpc-tls + - port: 853 + targetPort: 853 + name: tcp-dns-tls + ####### end MESH EXPANSION PORTS ###### + + ############## + secretVolumes: + - name: ingressgateway-certs + secretName: istio-ingressgateway-certs + mountPath: /etc/istio/ingressgateway-certs + - name: ingressgateway-ca-certs + secretName: istio-ingressgateway-ca-certs + mountPath: /etc/istio/ingressgateway-ca-certs + + # Domain name for telemetry addons + telemetry_domain_name: "" + + # Ports to explicitly check for readiness. If configured, the readiness check will expect a + # listener on these ports. A comma separated list is expected, such as "80,443". + # + # Warning: If you do not have a gateway configured for the ports provided, this check will always + # fail. This is intended for use cases where you always expect to have a listener on the port, + # such as 80 or 443 in typical setups. + applicationPorts: "" + + # Telemetry addon gateways example config + telemetry_addon_gateways: + tracing_gateway: + name: tracing + port: 15032 + desPort: 80 + enabled: false + tls: false + kiali_gateway: + name: kiali + port: 15029 + desPort: 20001 + enabled: false + tls: false + grafana_gateway: + name: grafana + port: 15031 + desPort: 3000 + enabled: false + tls: false + prometheus_gateway: + name: prometheus + port: 15030 + desPort: 9090 + enabled: false + tls: false + + # For Certmanager Issuer and Certificate generation + # certificates: {} + # email: "" + + ### Advanced options ############ + env: + # A gateway with this mode ensures that pilot generates an additional + # set of clusters for internal services but without Istio mTLS, to + # enable cross cluster routing. + ISTIO_META_ROUTER_MODE: "sni-dnat" + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsGatewaysIstioIngressValuesYamlBytes() ([]byte, error) { + return _chartsGatewaysIstioIngressValuesYaml, nil +} + +func chartsGatewaysIstioIngressValuesYaml() (*asset, error) { + bytes, err := chartsGatewaysIstioIngressValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/gateways/istio-ingress/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioCniChartYaml = []byte(`apiVersion: v1 +name: istio-cni +version: 0.2.0 +appVersion: 0.2.0 +tillerVersion: ">=2.7.2-0" +description: Helm chart for istio-cni components +keywords: + - istio + - cni +sources: + - http://github.com/istio/cni +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsIstioCniChartYamlBytes() ([]byte, error) { + return _chartsIstioCniChartYaml, nil +} + +func chartsIstioCniChartYaml() (*asset, error) { + bytes, err := chartsIstioCniChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-cni/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioCniTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istio-cni + labels: + app: istio-cni + release: {{ .Release.Name }} +rules: +- apiGroups: [""] + resources: + - pods + - nodes + verbs: + - get +`) + +func chartsIstioCniTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstioCniTemplatesClusterroleYaml, nil +} + +func chartsIstioCniTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstioCniTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-cni/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioCniTemplatesClusterrolebindingYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-cni + labels: + app: istio-cni + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istio-cni +subjects: +- kind: ServiceAccount + name: istio-cni + namespace: {{ .Release.Namespace }} +`) + +func chartsIstioCniTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsIstioCniTemplatesClusterrolebindingYaml, nil +} + +func chartsIstioCniTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsIstioCniTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-cni/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioCniTemplatesConfigmapCniYaml = []byte(`kind: ConfigMap +apiVersion: v1 +metadata: + name: istio-cni-config + namespace: {{ .Release.Namespace }} + labels: + app: istio-cni + release: {{ .Release.Name }} +data: + # The CNI network configuration to add to the plugin chain on each node. The special + # values in this config will be automatically populated. + cni_network_config: |- + { + "type": "istio-cni", + "log_level": {{ quote .Values.cni.logLevel }}, + "kubernetes": { + "kubeconfig": "__KUBECONFIG_FILEPATH__", + "cni_bin_dir": {{ quote .Values.cni.cniBinDir }}, + "exclude_namespaces": [ {{ range $idx, $ns := .Values.cni.excludeNamespaces }}{{ if $idx }}, {{ end }}{{ quote $ns }}{{ end }} ] + } + } +`) + +func chartsIstioCniTemplatesConfigmapCniYamlBytes() ([]byte, error) { + return _chartsIstioCniTemplatesConfigmapCniYaml, nil +} + +func chartsIstioCniTemplatesConfigmapCniYaml() (*asset, error) { + bytes, err := chartsIstioCniTemplatesConfigmapCniYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-cni/templates/configmap-cni.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioCniTemplatesDaemonsetYaml = []byte(`# This manifest installs the Istio install-cni container, as well +# as the Istio CNI plugin and config on +# each master and worker node in a Kubernetes cluster. +kind: DaemonSet +apiVersion: extensions/v1beta1 +metadata: + name: istio-cni-node + namespace: {{ .Release.Namespace }} + labels: + k8s-app: istio-cni-node + release: {{ .Release.Name }} +spec: + selector: + matchLabels: + k8s-app: istio-cni-node + updateStrategy: + type: RollingUpdate + rollingUpdate: + maxUnavailable: 1 + template: + metadata: + labels: + k8s-app: istio-cni-node + annotations: + # This, along with the CriticalAddonsOnly toleration below, + # marks the pod as a critical add-on, ensuring it gets + # priority scheduling and that its resources are reserved + # if it ever gets evicted. + scheduler.alpha.kubernetes.io/critical-pod: '' + spec: + nodeSelector: + beta.kubernetes.io/os: linux + hostNetwork: true + tolerations: + # Make sure istio-cni-node gets scheduled on all nodes. + - effect: NoSchedule + operator: Exists + # Mark the pod as a critical add-on for rescheduling. + - key: CriticalAddonsOnly + operator: Exists + - effect: NoExecute + operator: Exists + serviceAccountName: istio-cni + # Minimize downtime during a rolling upgrade or deletion; tell Kubernetes to do a "force + # deletion": https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods. + terminationGracePeriodSeconds: 5 + containers: + # This container installs the Istio CNI binaries + # and CNI network config file on each node. + - name: install-cni + image: {{ .Values.cni.hub }}/{{ .values.cni.image | default "install-cni" }}:{{ .Values.cni.tag }} + imagePullPolicy: {{ .Values.cni.pullPolicy | default .Values.global.imagePullPolicy }} + command: ["/install-cni.sh"] + env: +{{- if .Values.cni.cniConfFileName }} + # Name of the CNI config file to create. + - name: CNI_CONF_NAME + value: "{{ .Values.cni.cniConfFileName }}" +{{- end }} + # The CNI network config to install on each node. + - name: CNI_NETWORK_CONFIG + valueFrom: + configMapKeyRef: + name: istio-cni-config + key: cni_network_config + volumeMounts: + - mountPath: /host/opt/cni/bin + name: cni-bin-dir + - mountPath: /host/etc/cni/net.d + name: cni-net-dir + volumes: + # Used to install CNI. + - name: cni-bin-dir + hostPath: + path: {{ default "/opt/cni/bin" .Values.cni.cniBinDir }} + - name: cni-net-dir + hostPath: + path: {{ default "/etc/cni/net.d" .Values.cni.cniConfDir }} +`) + +func chartsIstioCniTemplatesDaemonsetYamlBytes() ([]byte, error) { + return _chartsIstioCniTemplatesDaemonsetYaml, nil +} + +func chartsIstioCniTemplatesDaemonsetYaml() (*asset, error) { + bytes, err := chartsIstioCniTemplatesDaemonsetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-cni/templates/daemonset.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioCniTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-cni + namespace: {{ .Release.Namespace }} + labels: + app: istio-cni + release: {{ .Release.Name }} +`) + +func chartsIstioCniTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstioCniTemplatesServiceaccountYaml, nil +} + +func chartsIstioCniTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstioCniTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-cni/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioCniValuesYaml = []byte(`cni: + hub: gcr.io/istio-release + tag: master-latest-daily + pullPolicy: Always + + logLevel: info + + # Configuration file to insert istio-cni plugin configuration + # by default this will be the first file found in the cni-conf-dir + # Example + # cniConfFileName: 10-calico.conflist + + # CNI bin and conf dir override settings + # defaults: + cniBinDir: /opt/cni/bin + cniConfDir: /etc/cni/net.d + + excludeNamespaces: + - istio-system +`) + +func chartsIstioCniValuesYamlBytes() ([]byte, error) { + return _chartsIstioCniValuesYaml, nil +} + +func chartsIstioCniValuesYaml() (*asset, error) { + bytes, err := chartsIstioCniValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-cni/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioCniValues_gkeYaml = []byte(`cni: + hub: docker.io/tiswanso + tag: v0.1-dev + pullPolicy: Always + + logLevel: info + + # Configuration file to insert istio-cni plugin configuration + # by default this will be the first file found in the cni-conf-dir + # Example + # cniConfFileName: 10-calico.conflist + + # CNI bin and conf dir override settings + # defaults: + cniBinDir: /home/kubernetes/bin + cniConfDir: /etc/cni/net.d + + excludeNamespaces: + - istio-system +`) + +func chartsIstioCniValues_gkeYamlBytes() ([]byte, error) { + return _chartsIstioCniValues_gkeYaml, nil +} + +func chartsIstioCniValues_gkeYaml() (*asset, error) { + bytes, err := chartsIstioCniValues_gkeYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-cni/values_gke.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectChartYaml = []byte(`apiVersion: v1 +name: istio-autoinject +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for sidecar injector webhook deployment +keywords: + - istio + - sidecarInjectorWebhook + - autoinject +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsIstioControlIstioAutoinjectChartYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectChartYaml, nil +} + +func chartsIstioControlIstioAutoinjectChartYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectNotesTxt = []byte(`Sidecar injector (optional): if disabled, manual injection or other tools need to be used. + +Sidecar injection in each profile can be selected by labeling the namespace with the appropriate profile. + +The new label is 'istio-env' and the value is the namespace where the injector is installed. + +Note that it is possible to install a profile with only the injector app - using remote Pilot and MCP. + +`+"`"+``+"`"+``+"`"+` + # New style, using the istio-pilot11 profile + kubectl create ns fortio + kubectl label ns fortio istio-env=istio-control + + # Second pilot profile + kubectl create ns fortio-test + kubectl label ns fortio istio-env=istio-master + + # Old-style, using istio-system and Istio 1.0 or 1.1 default installations. + kubectl create ns fortio-istio-system + kubectl label ns fortio istio-injection=enabled +`+"`"+``+"`"+``+"`"+` + +# Uninstall + +After uninstalling, you should cleanup the global CRD using: + +`+"`"+``+"`"+``+"`"+`bash + + kubectl delete MutatingWebhookConfiguration istio-sidecar-injector-istio-control + +`+"`"+``+"`"+``+"`"+` + +Any app using the uninstalled istio-env label will no longer be auto-injected once the config is deleted. +`) + +func chartsIstioControlIstioAutoinjectNotesTxtBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectNotesTxt, nil +} + +func chartsIstioControlIstioAutoinjectNotesTxt() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectNotesTxtBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/NOTES.txt", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectFilesInjectionTemplateYaml = []byte(`template: | + rewriteAppHTTPProbe: {{ valueOrDefault .Values.sidecarInjectorWebhook.rewriteAppHTTPProbe false }} + {{- if or (not .Values.istio_cni.enabled) .Values.global.proxy.enableCoreDump }} + initContainers: + {{ if ne (annotation .ObjectMeta `+"`"+`sidecar.istio.io/interceptionMode`+"`"+` .ProxyConfig.InterceptionMode) `+"`"+`NONE`+"`"+` }} + {{- if not .Values.istio_cni.enabled }} + - name: istio-init + {{- if contains "/" .Values.global.proxy_init.image }} + image: "{{ .Values.global.proxy_init.image }}" + {{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy_init.image }}:{{ .Values.global.tag }}" + {{- end }} + command: + - "/usr/local/bin/istio-iptables.sh" + - "-p" + - 15001 + - "-z" + - "15006" + - "-u" + - 1337 + - "-m" + - "{{ annotation .ObjectMeta `+"`"+`sidecar.istio.io/interceptionMode`+"`"+` .ProxyConfig.InterceptionMode }}" + - "-i" + - "{{ annotation .ObjectMeta `+"`"+`traffic.sidecar.istio.io/includeOutboundIPRanges`+"`"+` .Values.global.proxy.includeIPRanges }}" + - "-x" + - "{{ annotation .ObjectMeta `+"`"+`traffic.sidecar.istio.io/excludeOutboundIPRanges`+"`"+` .Values.global.proxy.excludeIPRanges }}" + - "-b" + - "{{ annotation .ObjectMeta `+"`"+`traffic.sidecar.istio.io/includeInboundPorts`+"`"+` (includeInboundPorts .Spec.Containers) }}" + - "-d" + - "{{ excludeInboundPort (annotation .ObjectMeta `+"`"+`status.sidecar.istio.io/port`+"`"+` .Values.global.proxy.statusPort) (annotation .ObjectMeta `+"`"+`traffic.sidecar.istio.io/excludeInboundPorts`+"`"+` .Values.global.proxy.excludeInboundPorts) }}" + {{ if or (isset .ObjectMeta.Annotations `+"`"+`traffic.sidecar.istio.io/excludeOutboundPorts`+"`"+`) (ne (valueOrDefault .Values.global.proxy.excludeOutboundPorts "") "") -}} + - "-o" + - "{{ annotation .ObjectMeta `+"`"+`traffic.sidecar.istio.io/excludeOutboundPorts`+"`"+` .Values.global.proxy.excludeOutboundPorts }}" + {{ end -}} + {{ if (isset .ObjectMeta.Annotations `+"`"+`traffic.sidecar.istio.io/kubevirtInterfaces`+"`"+`) -}} + - "-k" + - "{{ index .ObjectMeta.Annotations `+"`"+`traffic.sidecar.istio.io/kubevirtInterfaces`+"`"+` }}" + {{ end -}} + imagePullPolicy: "{{ valueOrDefault .Values.global.imagePullPolicy `+"`"+`Always`+"`"+` }}" + {{- if .Values.global.proxy_init.resources }} + resources: + {{ toYaml .Values.global.proxy_init.resources | indent 4 }} + {{- else }} + resources: {} + {{- end }} + securityContext: + runAsUser: 0 + runAsNonRoot: false + capabilities: + add: + - NET_ADMIN + {{- if .Values.global.proxy.privileged }} + privileged: true + {{- end }} + restartPolicy: Always + {{- end }} + {{ end -}} + {{- if eq .Values.global.proxy.enableCoreDump true }} + - name: enable-core-dump + args: + - -c + - sysctl -w kernel.core_pattern=/var/lib/istio/core.proxy && ulimit -c unlimited + command: + - /bin/sh + {{- if contains "/" .Values.global.proxy_init.image }} + image: "{{ .Values.global.proxy_init.image }}" + {{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy_init.image }}:{{ .Values.global.tag }}" + {{- end }} + imagePullPolicy: "{{ valueOrDefault .Values.global.imagePullPolicy `+"`"+`Always`+"`"+` }}" + resources: {} + securityContext: + runAsUser: 0 + runAsNonRoot: false + privileged: true + {{ end }} + {{- end }} + containers: + - name: istio-proxy + {{- if contains "/" (annotation .ObjectMeta `+"`"+`sidecar.istio.io/proxyImage`+"`"+` .Values.global.proxy.image) }} + image: "{{ annotation .ObjectMeta `+"`"+`sidecar.istio.io/proxyImage`+"`"+` .Values.global.proxy.image }}" + {{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy.image }}:{{ .Values.global.tag }}" + {{- end }} + ports: + - containerPort: 15090 + protocol: TCP + name: http-envoy-prom + args: + - proxy + - sidecar + - --domain + - $(POD_NAMESPACE).svc.{{ .Values.global.proxy.clusterDomain }} + - --configPath + - "/etc/istio/proxy" + - --binaryPath + - "/usr/local/bin/envoy" + - --serviceCluster + {{ if ne "" (index .ObjectMeta.Labels "app") -}} + - "{{ index .ObjectMeta.Labels `+"`"+`app`+"`"+` }}.$(POD_NAMESPACE)" + {{ else -}} + - "{{ valueOrDefault .DeploymentMeta.Name `+"`"+`istio-proxy`+"`"+` }}.{{ valueOrDefault .DeploymentMeta.Namespace `+"`"+`default`+"`"+` }}" + {{ end -}} + - --drainDuration + - "{{ formatDuration .ProxyConfig.DrainDuration }}" + - --parentShutdownDuration + - "{{ formatDuration .ProxyConfig.ParentShutdownDuration }}" + - --discoveryAddress + - "{{ annotation .ObjectMeta `+"`"+`sidecar.istio.io/discoveryAddress`+"`"+` .ProxyConfig.DiscoveryAddress }}" + {{- if eq .Values.global.proxy.tracer "lightstep" }} + - --lightstepAddress + - "{{ .ProxyConfig.GetTracing.GetLightstep.GetAddress }}" + - --lightstepAccessToken + - "{{ .ProxyConfig.GetTracing.GetLightstep.GetAccessToken }}" + - --lightstepSecure={{ .ProxyConfig.GetTracing.GetLightstep.GetSecure }} + - --lightstepCacertPath + - "{{ .ProxyConfig.GetTracing.GetLightstep.GetCacertPath }}" + {{- else if eq .Values.global.proxy.tracer "zipkin" }} + - --zipkinAddress + - "{{ .ProxyConfig.GetTracing.GetZipkin.GetAddress }}" + {{- else if eq .Values.global.proxy.tracer "datadog" }} + - --datadogAgentAddress + - "{{ .ProxyConfig.GetTracing.GetDatadog.GetAddress }}" + {{- end }} + - --proxyLogLevel={{ annotation .ObjectMeta `+"`"+`sidecar.istio.io/logLevel`+"`"+` .Values.global.proxy.logLevel}} + - --proxyComponentLogLevel={{ annotation .ObjectMeta `+"`"+`sidecar.istio.io/componentLogLevel`+"`"+` .Values.global.proxy.componentLogLevel}} + - --connectTimeout + - "{{ formatDuration .ProxyConfig.ConnectTimeout }}" + {{- if .Values.global.proxy.envoyStatsd.enabled }} + - --statsdUdpAddress + - "{{ .ProxyConfig.StatsdUdpAddress }}" + {{- end }} + {{- if .Values.global.proxy.envoyMetricsService.enabled }} + - --envoyMetricsServiceAddress + - "{{ .ProxyConfig.GetEnvoyMetricsService.GetAddress }}" + {{- end }} + {{- if .Values.global.proxy.envoyAccessLogService.enabled }} + - --envoyAccessLogServiceAddress + - "{{ .ProxyConfig.GetEnvoyAccessLogService.GetAddress }}" + {{- end }} + - --proxyAdminPort + - "{{ .ProxyConfig.ProxyAdminPort }}" + {{ if gt .ProxyConfig.Concurrency 0 -}} + - --concurrency + - "{{ .ProxyConfig.Concurrency }}" + {{ end -}} + {{- if .Values.global.controlPlaneSecurityEnabled }} + - --controlPlaneAuthPolicy + - MUTUAL_TLS + {{- else }} + - --controlPlaneAuthPolicy + - NONE + {{- end }} + - --dnsRefreshRate + - {{ valueOrDefault .Values.global.proxy.dnsRefreshRate "300s" }} + {{- if (ne (annotation .ObjectMeta "status.sidecar.istio.io/port" .Values.global.proxy.statusPort) "0") }} + - --statusPort + - "{{ annotation .ObjectMeta `+"`"+`status.sidecar.istio.io/port`+"`"+` .Values.global.proxy.statusPort }}" + - --applicationPorts + - "{{ annotation .ObjectMeta `+"`"+`readiness.status.sidecar.istio.io/applicationPorts`+"`"+` (applicationPorts .Spec.Containers) }}" + {{- end }} + {{- if .Values.global.trustDomain }} + - --trust-domain={{ .Values.global.trustDomain }} + {{- end }} + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + - --controlPlaneBootstrap=false + {{- if (isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/bootstrapOverride`+"`"+`) }} + - --templateFile=/etc/istio/custom-bootstrap/envoy_bootstrap.json + {{- end }} + env: + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: INSTANCE_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + - name: HOST_IP + valueFrom: + fieldRef: + fieldPath: status.hostIP + - name: ISTIO_META_POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: ISTIO_META_CONFIG_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: ISTIO_META_INTERCEPTION_MODE + value: "{{ or (index .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/interceptionMode`+"`"+`) .ProxyConfig.InterceptionMode.String }}" + - name: ISTIO_META_INCLUDE_INBOUND_PORTS + value: "{{ annotation .ObjectMeta `+"`"+`traffic.sidecar.istio.io/includeInboundPorts`+"`"+` (applicationPorts .Spec.Containers) }}" + {{- if .Values.global.network }} + - name: ISTIO_META_NETWORK + value: "{{ .Values.global.network }}" + {{- end }} + {{ if .ObjectMeta.Annotations }} + - name: ISTIO_METAJSON_ANNOTATIONS + value: | + {{ toJSON .ObjectMeta.Annotations }} + {{ end }} + {{ if .ObjectMeta.Labels }} + - name: ISTIO_METAJSON_LABELS + value: | + {{ toJSON .ObjectMeta.Labels }} + {{ end }} + {{- if (isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/bootstrapOverride`+"`"+`) }} + - name: ISTIO_BOOTSTRAP_OVERRIDE + value: "/etc/istio/custom-bootstrap/custom_bootstrap.json" + {{- end }} + {{- if .Values.global.sds.customTokenDirectory }} + - name: ISTIO_META_SDS_TOKEN_PATH + value: "{{ .Values.global.sds.customTokenDirectory -}}/sdstoken" + {{- end }} + {{- if .Values.global.meshID }} + - name: ISTIO_META_MESH_ID + value: "{{ .Values.global.meshID }}" + {{- else if .Values.global.trustDomain }} + - name: ISTIO_META_MESH_ID + value: "{{ .Values.global.trustDomain }}" + {{- end }} + imagePullPolicy: "{{ valueOrDefault .Values.global.imagePullPolicy `+"`"+`Always`+"`"+` }}" + {{ if ne (annotation .ObjectMeta `+"`"+`status.sidecar.istio.io/port`+"`"+` .Values.global.proxy.statusPort) `+"`"+`0`+"`"+` }} + readinessProbe: + httpGet: + path: /healthz/ready + port: {{ annotation .ObjectMeta `+"`"+`status.sidecar.istio.io/port`+"`"+` .Values.global.proxy.statusPort }} + initialDelaySeconds: {{ annotation .ObjectMeta `+"`"+`readiness.status.sidecar.istio.io/initialDelaySeconds`+"`"+` .Values.global.proxy.readinessInitialDelaySeconds }} + periodSeconds: {{ annotation .ObjectMeta `+"`"+`readiness.status.sidecar.istio.io/periodSeconds`+"`"+` .Values.global.proxy.readinessPeriodSeconds }} + failureThreshold: {{ annotation .ObjectMeta `+"`"+`readiness.status.sidecar.istio.io/failureThreshold`+"`"+` .Values.global.proxy.readinessFailureThreshold }} + {{ end -}} + securityContext: + {{- if .Values.global.proxy.privileged }} + privileged: true + {{- end }} + {{- if ne .Values.global.proxy.enableCoreDump true }} + readOnlyRootFilesystem: true + {{- end }} + {{ if eq (annotation .ObjectMeta `+"`"+`sidecar.istio.io/interceptionMode`+"`"+` .ProxyConfig.InterceptionMode) `+"`"+`TPROXY`+"`"+` -}} + capabilities: + add: + - NET_ADMIN + {{ else -}} + runAsUser: 1337 + {{- end }} + runAsGroup: 1337 + resources: + {{ if or (isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/proxyCPU`+"`"+`) (isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/proxyMemory`+"`"+`) -}} + requests: + {{ if (isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/proxyCPU`+"`"+`) -}} + cpu: "{{ index .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/proxyCPU`+"`"+` }}" + {{ end}} + {{ if (isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/proxyMemory`+"`"+`) -}} + memory: "{{ index .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/proxyMemory`+"`"+` }}" + {{ end }} + {{ else -}} + {{- if .Values.global.proxy.resources }} + {{ toYaml .Values.global.proxy.resources | indent 4 }} + {{- end }} + {{ end -}} + volumeMounts: + {{ if (isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/bootstrapOverride`+"`"+`) }} + - mountPath: /etc/istio/custom-bootstrap + name: custom-bootstrap-volume + {{- end }} + - mountPath: /etc/istio/proxy + name: istio-envoy + {{- if .Values.global.sds.enabled }} + - mountPath: /var/run/sds + name: sds-uds-path + readOnly: true + - mountPath: /var/run/secrets/tokens + name: istio-token + {{- if .Values.global.sds.customTokenDirectory }} + - mountPath: "{{ .Values.global.sds.customTokenDirectory -}}" + name: custom-sds-token + readOnly: true + {{- end }} + {{- else }} + - mountPath: /etc/certs/ + name: istio-certs + readOnly: true + {{- end }} + {{- if and (eq .Values.global.proxy.tracer "lightstep") .Values.global.tracer.lightstep.cacertPath }} + - mountPath: {{ directory .ProxyConfig.GetTracing.GetLightstep.GetCacertPath }} + name: lightstep-certs + readOnly: true + {{- end }} + {{- if isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/userVolumeMount`+"`"+` }} + {{ range $index, $value := fromJSON (index .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/userVolumeMount`+"`"+`) }} + - name: "{{ $index }}" + {{ toYaml $value | indent 4 }} + {{ end }} + {{- end }} + volumes: + {{- if (isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/bootstrapOverride`+"`"+`) }} + - name: custom-bootstrap-volume + configMap: + name: {{ annotation .ObjectMeta `+"`"+`sidecar.istio.io/bootstrapOverride`+"`"+` "" }} + {{- end }} + - emptyDir: + medium: Memory + name: istio-envoy + {{- if .Values.global.sds.enabled }} + - name: sds-uds-path + hostPath: + path: /var/run/sds + - name: istio-token + projected: + sources: + - serviceAccountToken: + path: istio-token + expirationSeconds: 43200 + audience: {{ .Values.global.trustDomain }} + {{- if .Values.global.sds.customTokenDirectory }} + - name: custom-sds-token + secret: + secretName: sdstokensecret + {{- end }} + {{- else }} + - name: istio-certs + secret: + optional: true + {{ if eq .Spec.ServiceAccountName "" }} + secretName: istio.default + {{ else -}} + secretName: {{ printf "istio.%s" .Spec.ServiceAccountName }} + {{ end -}} + {{- if isset .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/userVolume`+"`"+` }} + {{range $index, $value := fromJSON (index .ObjectMeta.Annotations `+"`"+`sidecar.istio.io/userVolume`+"`"+`) }} + - name: "{{ $index }}" + {{ toYaml $value | indent 2 }} + {{ end }} + {{ end }} + {{- end }} + {{- if and (eq .Values.global.proxy.tracer "lightstep") .Values.global.tracer.lightstep.cacertPath }} + - name: lightstep-certs + secret: + optional: true + secretName: lightstep.cacert + {{- end }} + {{- if .Values.global.podDNSSearchNamespaces }} + dnsConfig: + searches: + {{- range .Values.global.podDNSSearchNamespaces }} + - {{ render . }} + {{- end }} + {{- end }} +`) + +func chartsIstioControlIstioAutoinjectFilesInjectionTemplateYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectFilesInjectionTemplateYaml, nil +} + +func chartsIstioControlIstioAutoinjectFilesInjectionTemplateYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectFilesInjectionTemplateYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/files/injection-template.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.sidecarInjectorWebhook.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.sidecarInjectorWebhook.podAntiAffinityLabelSelector .Values.sidecarInjectorWebhook.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.sidecarInjectorWebhook.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.sidecarInjectorWebhook.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.sidecarInjectorWebhook.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.sidecarInjectorWebhook.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioControlIstioAutoinjectTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplates_affinityTpl, nil +} + +func chartsIstioControlIstioAutoinjectTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplates_helpersTpl = []byte(`{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "sidecar-injector.name" -}} +{{- default .Chart.Name .Values.sidecarInjectorWebhook.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "sidecar-injector.fullname" -}} +{{- if .Values.sidecarInjectorWebhook.fullnameOverride -}} +{{- .Values.sidecarInjectorWebhook.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.sidecarInjectorWebhook.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "sidecar-injector.chart" -}} +{{- .Chart.Name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +`) + +func chartsIstioControlIstioAutoinjectTemplates_helpersTplBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplates_helpersTpl, nil +} + +func chartsIstioControlIstioAutoinjectTemplates_helpersTpl() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplates_helpersTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/_helpers.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istio-sidecar-injector-{{ .Release.Namespace }} + labels: + app: sidecar-injector + release: {{ .Release.Name }} + istio: sidecar-injector +rules: +- apiGroups: [""] + resources: ["configmaps"] + resourceNames: ["istio-sidecar-injector"] + verbs: ["get", "list", "watch"] +- apiGroups: ["admissionregistration.k8s.io"] + resources: ["mutatingwebhookconfigurations"] + resourceNames: ["istio-sidecar-injector", "istio-sidecar-injector-{{.Release.Namespace}}"] + verbs: ["get", "list", "watch", "patch"] +`) + +func chartsIstioControlIstioAutoinjectTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesClusterroleYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesClusterrolebindingYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-sidecar-injector-admin-role-binding-{{ .Release.Namespace }} + labels: + app: sidecar-injector + release: {{ .Release.Name }} + istio: sidecar-injector +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istio-sidecar-injector-{{ .Release.Namespace }} +subjects: + - kind: ServiceAccount + name: istio-sidecar-injector-service-account + namespace: {{ .Release.Namespace }} +`) + +func chartsIstioControlIstioAutoinjectTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesClusterrolebindingYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesConfigmapYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + name: injector-mesh + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +data: + # This is the 'mesh' config, loaded by the sidecar injector. + # It is a different configmap from pilot to allow a-la-carte install of the injector and follow the model + # of reducing blast-radius of config changes and avoiding globals. + + # Note that injector uses a subset of the mesh config only - for clarity this is only generating the + # required config, i.e. the defaultConfig section. See injection-template .ProxyConfig settings. + + + mesh: |- + + defaultConfig: + # + # TCP connection timeout between Envoy & the application, and between Envoys. + connectTimeout: 10s + # + ### ADVANCED SETTINGS ############# + # Where should envoy's configuration be stored in the istio-proxy container + configPath: "/etc/istio/proxy" + # The pseudo service name used for Envoy. + serviceCluster: istio-proxy + # These settings that determine how long an old Envoy + # process should be kept alive after an occasional reload. + drainDuration: 45s + parentShutdownDuration: 1m0s + # + # Port where Envoy listens (on local host) for admin commands + # You can exec into the istio-proxy container in a pod and + # curl the admin port (curl http://localhost:15000/) to obtain + # diagnostic information from Envoy. See + # https://lyft.github.io/envoy/docs/operations/admin.html + # for more details + proxyAdminPort: 15000 + # + # Set concurrency to a specific number to control the number of Proxy worker threads. + # If set to 0 (default), then start worker thread for each CPU thread/core. + concurrency: {{ .Values.global.proxy.concurrency }} + # + {{- if eq .Values.global.proxy.tracer "lightstep" }} + tracing: + lightstep: + # Address of the LightStep Satellite pool + address: {{ .Values.global.tracer.lightstep.address }} + # Access Token used to communicate with the Satellite pool + accessToken: {{ .Values.global.tracer.lightstep.accessToken }} + # Whether communication with the Satellite pool should be secure + secure: {{ .Values.global.tracer.lightstep.secure }} + # Path to the file containing the cacert to use when verifying TLS + cacertPath: {{ .Values.global.tracer.lightstep.cacertPath }} + {{- else if eq .Values.global.proxy.tracer "zipkin" }} + tracing: + zipkin: + # Address of the Zipkin collector + {{- if .Values.global.tracer.zipkin.address }} + address: {{ .Values.global.tracer.zipkin.address }} + {{- else }} + address: zipkin.{{ .Values.global.telemetryNamespace }}:9411 + {{- end }} + {{- end }} + + {{- if .Values.global.controlPlaneSecurityEnabled }} + # + # Mutual TLS authentication between sidecars and istio control plane. + controlPlaneAuthPolicy: MUTUAL_TLS + # + # Address where istio Pilot service is running + discoveryAddress: istio-pilot{{ .Values.version }}.{{ .Release.Namespace }}:15011 + {{- else }} + # + # Mutual TLS authentication between sidecars and istio control plane. + controlPlaneAuthPolicy: NONE + # + # Address where istio Pilot service is running + discoveryAddress: istio-pilot{{ .Values.version }}.{{ .Release.Namespace }}:15010 + {{- end }} +--- +`) + +func chartsIstioControlIstioAutoinjectTemplatesConfigmapYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesConfigmapYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesConfigmapYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesConfigmapYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/configmap.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-sidecar-injector + namespace: {{ .Release.Namespace }} + labels: + app: sidecar-injector + release: {{ .Release.Name }} + istio: sidecar-injector +spec: + replicas: {{ .Values.sidecarInjectorWebhook.replicaCount }} + selector: + matchLabels: + istio: sidecar-injector + strategy: + rollingUpdate: + maxSurge: {{ .Values.sidecarInjectorWebhook.rollingMaxSurge }} + maxUnavailable: {{ .Values.sidecarInjectorWebhook.rollingMaxUnavailable }} + template: + metadata: + labels: + app: sidecarInjectorWebhook + istio: sidecar-injector +{{- if eq .Release.Namespace "istio-system"}} + heritage: Tiller + release: istio + chart: sidecarInjectorWebhook +{{- end }} + annotations: + sidecar.istio.io/inject: "false" + checksum/config-volume: {{ .Files.Get "files/injection-template.yaml" | sha256sum }} + spec: + serviceAccountName: istio-sidecar-injector-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: sidecar-injector-webhook +{{- if contains "/" .Values.sidecarInjectorWebhook.image }} + image: "{{ .Values.sidecarInjectorWebhook.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.sidecarInjectorWebhook.image | default "sidecar_injector" }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + args: + - --caCertFile=/etc/istio/certs/root-cert.pem + - --tlsCertFile=/etc/istio/certs/cert-chain.pem + - --tlsKeyFile=/etc/istio/certs/key.pem + - --injectConfig=/etc/istio/inject/config + - --meshConfig=/etc/istio/config/mesh + - --port=9443 + - --healthCheckInterval=2s + - --healthCheckFile=/health + {{- if eq .Release.Namespace "istio-system"}} + - --webhookConfigName=istio-sidecar-injector + {{ else }} + - --webhookConfigName=istio-sidecar-injector-{{ .Release.Namespace }} + {{- end }} + - --log_output_level=debug + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + {{/*securityContext:*/}} + {{/*runAsUser: 1337*/}} + {{/*runAsGroup: 1337*/}} + volumeMounts: + - name: config-volume + mountPath: /etc/istio/config + readOnly: true + - name: certs + mountPath: /etc/istio/certs + readOnly: true + - name: inject-config + mountPath: /etc/istio/inject + readOnly: true + livenessProbe: + exec: + command: + - /usr/local/bin/sidecar-injector + - probe + - --probe-path=/health + - --interval=4s + initialDelaySeconds: 4 + periodSeconds: 4 + readinessProbe: + exec: + command: + - /usr/local/bin/sidecar-injector + - probe + - --probe-path=/health + - --interval=4s + initialDelaySeconds: 4 + periodSeconds: 4 + resources: +{{- if .Values.sidecarInjectorWebhook.resources }} +{{ toYaml .Values.sidecarInjectorWebhook.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + volumes: + - name: config-volume + configMap: + name: injector-mesh + - name: certs + secret: +{{- if .Values.sidecarInjectorWebhook.selfSigned }} + secretName: istio-sidecar-injector-self-signed +{{- else }} + secretName: istio.istio-sidecar-injector-service-account +{{- end }} + - name: inject-config + configMap: + name: istio-sidecar-injector + items: + - key: config + path: config + - key: values + path: values + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.sidecarInjectorWebhook.tolerations }} + tolerations: +{{ toYaml .Values.sidecarInjectorWebhook.tolerations | indent 6 }} +{{- end }} +`) + +func chartsIstioControlIstioAutoinjectTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesDeploymentYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesMutatingwebhookYaml = []byte(`{{- $ca := genCA "istio-sidecar-injector-ca-{{ .Release.Namespace }}" 3650 }} +apiVersion: admissionregistration.k8s.io/v1beta1 +kind: MutatingWebhookConfiguration +metadata: + {{- if eq .Release.Namespace "istio-system"}} + name: istio-sidecar-injector + {{ else }} + name: istio-sidecar-injector-{{ .Release.Namespace }} + {{- end }} + labels: + app: sidecar-injector + release: {{ .Release.Name }} +webhooks: + - name: sidecar-injector.istio.io + clientConfig: + service: + name: istio-sidecar-injector + namespace: {{ .Release.Namespace }} + path: "/inject" +{{- if .Values.sidecarInjectorWebhook.selfSigned }} + caBundle: {{ $ca.Cert | b64enc }} +{{- else }} + caBundle: "" +{{- end }} + rules: + - operations: [ "CREATE" ] + apiGroups: [""] + apiVersions: ["v1"] + resources: ["pods"] + failurePolicy: Fail + namespaceSelector: +{{- if .Values.sidecarInjectorWebhook.enableNamespacesByDefault }} + matchExpressions: + - key: name + operator: NotIn + values: + - {{ .Release.Namespace }} + - key: istio-injection + operator: NotIn + values: + - disabled + - key: istio-env + operator: DoesNotExist +{{- else if eq .Values.sidecarInjectorWebhook.injectLabel "istio-injection" }} + matchLabels: + istio-injection: enabled +{{- else }} + matchLabels: + istio-env: {{ .Release.Namespace }} +{{- end }} +--- +{{- if .Values.sidecarInjectorWebhook.selfSigned }} + {{- $cn := "istio-sidecar-injector" }} + {{- $altName1 := printf "%s.%s" $cn .Release.Namespace }} + {{- $altName2 := printf "%s.%s.svc" $cn .Release.Namespace }} + {{- $altNames := (list $altName1 $altName2) }} + {{- $cert := genSignedCert $cn nil $altNames 3650 $ca }} +apiVersion: v1 +kind: Secret +metadata: + name: istio-sidecar-injector-self-signed + namespace: {{ .Release.Namespace }} + labels: + app: sidecar-injector + release: {{ .Release.Name }} +type: Opaque +data: + root-cert.pem: {{ $ca.Cert | b64enc }} + cert-chain.pem: {{ $cert.Cert | b64enc }} + key.pem: {{ $cert.Key | b64enc }} +{{- end }} +`) + +func chartsIstioControlIstioAutoinjectTemplatesMutatingwebhookYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesMutatingwebhookYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesMutatingwebhookYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesMutatingwebhookYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/mutatingwebhook.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesPoddisruptionbudgetYaml = []byte(`{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: istio-sidecar-injector + namespace: {{ .Release.Namespace }} + labels: + app: sidecar-injector + release: {{ .Release.Name }} + istio: sidecar-injector +spec: + minAvailable: 1 + selector: + matchLabels: + app: sidecar-injector + release: {{ .Release.Name }} + istio: sidecar-injector +{{- end }} +`) + +func chartsIstioControlIstioAutoinjectTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: istio-sidecar-injector + namespace: {{ .Release.Namespace }} + labels: + app: sidecar-injector + release: {{ .Release.Name }} + istio: sidecar-injector +spec: + ports: + - port: 443 + targetPort: 9443 + selector: + istio: sidecar-injector +`) + +func chartsIstioControlIstioAutoinjectTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesServiceYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-sidecar-injector-service-account + namespace: {{ .Release.Namespace }} + labels: + app: sidecar-injector + release: {{ .Release.Name }} + istio: sidecar-injector +`) + +func chartsIstioControlIstioAutoinjectTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesServiceaccountYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectTemplatesSidecarInjectorConfigmapYaml = []byte(`{{- if not .Values.global.omitSidecarInjectorConfigMap }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: istio-sidecar-injector + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} + app: sidecar-injector + istio: sidecar-injector +data: + values: |- + {{ .Values | toJson }} + + config: |- + policy: {{ .Values.global.proxy.autoInject }} + alwaysInjectSelector: +{{ toYaml .Values.sidecarInjectorWebhook.alwaysInjectSelector | indent 6 }} + neverInjectSelector: +{{ toYaml .Values.sidecarInjectorWebhook.neverInjectSelector | indent 6 }} +{{ .Files.Get "files/injection-template.yaml" | indent 4 }} +{{- end }} +`) + +func chartsIstioControlIstioAutoinjectTemplatesSidecarInjectorConfigmapYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectTemplatesSidecarInjectorConfigmapYaml, nil +} + +func chartsIstioControlIstioAutoinjectTemplatesSidecarInjectorConfigmapYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectTemplatesSidecarInjectorConfigmapYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/templates/sidecar-injector-configmap.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioAutoinjectValuesYaml = []byte(`sidecarInjectorWebhook: + # sidecar-injector webhook configuration. + # If down, new pods will fail to start or restart for a short time, but they will + # retry. + replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + + image: sidecar_injector + + # This enables injection of sidecar in all namespaces, + # with the exception of namespaces with "istio-injection:disabled" annotation + # Only one environment should have this enabled. + enableNamespacesByDefault: false + + # If true, webhook or istioctl injector will rewrite PodSpec for liveness + # health check to redirect request to sidecar. This makes liveness check work + # even when mTLS is enabled. + rewriteAppHTTPProbe: false + + # If true, a self-signed CA will created in order to issue a certificate that + # will be used to authenticate the workload respondible for handling + # the sidecar-injector webhook. + selfSigned: false + + nodeSelector: {} + tolerations: [] + + # If set, will use the value as injection label. The value must match the 'release' label of the injector, + # except when 1.2 istio-injection label is used, which must be set to "enabled". + injectLabel: istio-injection + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + + # You can use the field called alwaysInjectSelector and neverInjectSelector which will always inject the sidecar or + # always skip the injection on pods that match that label selector, regardless of the global policy. + # See https://istio.io/docs/setup/kubernetes/additional-setup/sidecar-injection/#more-control-adding-exceptions + + neverInjectSelector: [] + alwaysInjectSelector: [] + +# If set, no iptable init will be added. It assumes CNI is installed. +# TODO: rename to 'enableIptables' or add 'interceptionMode: CNI' +istio_cni: + enabled: false +`) + +func chartsIstioControlIstioAutoinjectValuesYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioAutoinjectValuesYaml, nil +} + +func chartsIstioControlIstioAutoinjectValuesYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioAutoinjectValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-autoinject/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigChartYaml = []byte(`apiVersion: v1 +name: istio-config +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for galley deployment +keywords: + - istio + - galley +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsIstioControlIstioConfigChartYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigChartYaml, nil +} + +func chartsIstioControlIstioConfigChartYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigOwners = []byte(`approvers: + - cmluciano + - geeknoid + - ozevren + - ayj +`) + +func chartsIstioControlIstioConfigOwnersBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigOwners, nil +} + +func chartsIstioControlIstioConfigOwners() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigOwnersBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/OWNERS", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigReadmeMd = []byte(`# Istio Config + +This component handles the configuration, exposing an MCP server. + +The default implementation is Galley, using the K8S apiserver for storage - other MCP providers may be configured. + +It is recommended to run only one production config server - it registers a validation webhook which will apply +to all Istio configs. It is possible to run a second staging/canary config server in a different namespace. + +# Installation + +Galley relies on DNS certificates. Before installing it in a custom namespace you should update Citadel or +create a custom certificate. + +# Validation + +A cluster should have a single galley with validation enabled - usually the prod environment. +It is possible to enable validation on other environments as well - but each Galley will do its own +validation, and a staging version may impact production validation. + +`+"`"+``+"`"+``+"`"+`bash + + +`+"`"+``+"`"+``+"`"+` + +`+"`"+``+"`"+``+"`"+`yamml + +security: + ... + dnsCerts: + ... + istio-galley-service-account.MY_NAMESPACE: istio-galley.MY_NAMESPACE.svc + + +`+"`"+``+"`"+``+"`"+` +`) + +func chartsIstioControlIstioConfigReadmeMdBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigReadmeMd, nil +} + +func chartsIstioControlIstioConfigReadmeMd() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigReadmeMdBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/README.md", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.galley.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.galley.podAntiAffinityLabelSelector .Values.galley.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.galley.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.galley.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.galley.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.galley.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioControlIstioConfigTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplates_affinityTpl, nil +} + +func chartsIstioControlIstioConfigTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplates_helpersTpl = []byte(`{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "pilot.name" -}} +{{- default .Chart.Name .Values.galley.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "pilot.fullname" -}} +{{- if .Values.galley.fullnameOverride -}} +{{- .Values.galley.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.galley.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "pilot.chart" -}} +{{- .Chart.Name | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{- define "istio.configmap.checksum" -}} +{{- print $.Template.BasePath "/configmap.yaml" | sha256sum -}} +{{- end -}} +`) + +func chartsIstioControlIstioConfigTemplates_helpersTplBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplates_helpersTpl, nil +} + +func chartsIstioControlIstioConfigTemplates_helpersTpl() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplates_helpersTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/_helpers.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istio-galley-{{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +rules: +- apiGroups: ["admissionregistration.k8s.io"] + resources: ["validatingwebhookconfigurations"] + verbs: ["*"] +- apiGroups: ["config.istio.io"] # istio mixer CRD watcher + resources: ["*"] + verbs: ["get", "list", "watch"] +- apiGroups: ["networking.istio.io"] + resources: ["*"] + verbs: ["get", "list", "watch"] +- apiGroups: ["authentication.istio.io"] + resources: ["*"] + verbs: ["get", "list", "watch"] +- apiGroups: ["rbac.istio.io"] + resources: ["*"] + verbs: ["get", "list", "watch"] +- apiGroups: ["security.istio.io"] + resources: ["*"] + verbs: ["get", "list", "watch"] +- apiGroups: ["extensions","apps"] + resources: ["deployments"] + resourceNames: ["istio-galley"] + verbs: ["get"] +- apiGroups: [""] + resources: ["pods", "nodes", "services", "endpoints", "namespaces"] + verbs: ["get", "list", "watch"] +- apiGroups: ["extensions"] + resources: ["ingresses"] + verbs: ["get", "list", "watch"] +- apiGroups: ["extensions"] + resources: ["deployments/finalizers"] + resourceNames: ["istio-galley"] + verbs: ["update"] +- apiGroups: ["apiextensions.k8s.io"] + resources: ["customresourcedefinitions"] + verbs: ["get", "list", "watch"] +--- +`) + +func chartsIstioControlIstioConfigTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesClusterroleYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesClusterrolebindingYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-galley-admin-role-binding-{{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istio-galley-{{ .Release.Namespace }} +subjects: + - kind: ServiceAccount + name: istio-galley-service-account + namespace: {{ .Release.Namespace }} +--- +`) + +func chartsIstioControlIstioConfigTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesClusterrolebindingYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesConfigmapEnvoyYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + namespace: {{ .Release.Namespace }} + name: galley-envoy-config + labels: + app: galley + istio: galley + release: {{ .Release.Name }} +data: + envoy.yaml.tmpl: |- + admin: + access_log_path: /dev/null + address: + socket_address: + address: 127.0.0.1 + port_value: 15000 + + static_resources: + + clusters: + - name: in.9901 + http2_protocol_options: {} + connect_timeout: 1.000s + + hosts: + - socket_address: + address: 127.0.0.1 + port_value: 9901 + + circuit_breakers: + thresholds: + - max_connections: 100000 + max_pending_requests: 100000 + max_requests: 100000 + max_retries: 3 + + listeners: + - name: "15019" + address: + socket_address: + address: 0.0.0.0 + port_value: 15019 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: HTTP2 + stat_prefix: "15010" + http2_protocol_options: + max_concurrent_streams: 1073741824 + + access_log: + - name: envoy.file_access_log + config: + path: /dev/stdout + + http_filters: + - name: envoy.router + + route_config: + name: "15019" + + virtual_hosts: + - name: istio-galley + + domains: + - '*' + + routes: + - match: + prefix: / + route: + cluster: in.9901 + timeout: 0.000s + tls_context: + common_tls_context: + alpn_protocols: + - h2 + tls_certificates: + - certificate_chain: + filename: /etc/certs/cert-chain.pem + private_key: + filename: /etc/certs/key.pem + validation_context: + trusted_ca: + filename: /etc/certs/root-cert.pem + require_client_certificate: true +--- + +`) + +func chartsIstioControlIstioConfigTemplatesConfigmapEnvoyYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesConfigmapEnvoyYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesConfigmapEnvoyYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesConfigmapEnvoyYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/configmap-envoy.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesConfigmapMeshYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + name: istio-mesh-galley + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +data: + + + mesh: |- +{{ toYaml .Values.galley.mesh | indent 4 }} +--- +`) + +func chartsIstioControlIstioConfigTemplatesConfigmapMeshYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesConfigmapMeshYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesConfigmapMeshYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesConfigmapMeshYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/configmap-mesh.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesConfigmapYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + name: istio-galley-configuration + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +data: +{{- if .Values.global.configValidation }} + validatingwebhookconfiguration.yaml: |- + {{- include "validatingwebhookconfiguration.yaml.tpl" . | indent 4}} +{{- end}} +--- +`) + +func chartsIstioControlIstioConfigTemplatesConfigmapYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesConfigmapYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesConfigmapYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesConfigmapYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/configmap.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-galley + namespace: {{ .Release.Namespace }} + labels: + app: galley + istio: galley + release: {{ .Release.Name }} +spec: + replicas: {{ .Values.galley.replicaCount }} + selector: + matchLabels: + istio: galley + strategy: + rollingUpdate: + maxSurge: {{ .Values.galley.rollingMaxSurge }} + maxUnavailable: {{ .Values.galley.rollingMaxUnavailable }} + template: + metadata: + labels: + app: galley + istio: galley +{{- if eq .Release.Namespace "istio-system"}} + heritage: Tiller + release: istio + chart: galley +{{- end }} + annotations: + sidecar.istio.io/inject: "false" + spec: + serviceAccountName: istio-galley-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: galley +{{- if contains "/" .Values.galley.image }} + image: "{{ .Values.galley.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.galley.image | default "galley" }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 9443 + - containerPort: 15014 + - containerPort: 15019 + - containerPort: 9901 + command: + - /usr/local/bin/galley + - server + - --meshConfigFile=/etc/mesh-config/mesh + - --livenessProbeInterval=1s + - --livenessProbePath=/healthliveness + - --readinessProbePath=/healthready + - --readinessProbeInterval=1s + - --insecure=true + {{- if .Values.global.configValidation }} + - --enable-validation=true + {{- else }} + - --enable-validation=false + {{- end }} + - --enable-server=true + - --deployment-namespace={{ .Release.Namespace }} + - --validation-webhook-config-file + - /etc/config/validatingwebhookconfiguration.yaml + - --monitoringPort=15014 + - --validation-port=9443 +{{- if $.Values.global.logging.level }} + - --log_output_level={{ $.Values.global.logging.level }} +{{- end}} + volumeMounts: + {{- if .Values.global.configValidation }} + - name: istio-certs + mountPath: /etc/certs + readOnly: true + {{- end }} + - name: config + mountPath: /etc/config + readOnly: true + - name: mesh-config + mountPath: /etc/mesh-config + readOnly: true + livenessProbe: + exec: + command: + - /usr/local/bin/galley + - probe + - --probe-path=/healthliveness + - --interval=10s + initialDelaySeconds: 5 + periodSeconds: 5 + readinessProbe: + exec: + command: + - /usr/local/bin/galley + - probe + - --probe-path=/healthready + - --interval=10s + initialDelaySeconds: 5 + periodSeconds: 5 + resources: +{{- if .Values.galley.resources }} +{{ toYaml .Values.galley.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + +{{- if .Values.global.controlPlaneSecurityEnabled }} + - name: istio-proxy +{{- if contains "/" .Values.global.proxy.image }} + image: "{{ .Values.global.proxy.image }}" +{{- else }} + image: "{{ .Values.global.hub | default "gcr.io/istio-release" }}/{{ .Values.global.proxy.image | default "proxyv2" }}:{{ .Values.global.tag | default "release-1.1-latest-daily" }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 9902 + args: + - proxy + - --serviceCluster + - istio-galley + - --templateFile + - /var/lib/istio/galley/envoy/envoy.yaml.tmpl + - --controlPlaneAuthPolicy + - MUTUAL_TLS + {{- if .Values.global.trustDomain }} + - --trust-domain={{ .Values.global.trustDomain }} + {{- end }} + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + env: + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: INSTANCE_IP + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: status.podIP + resources: +{{- if .Values.global.proxy.resources }} +{{ toYaml .Values.global.proxy.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + + volumeMounts: + - name: istio-certs + mountPath: /etc/certs + readOnly: true + - name: envoy-config + mountPath: /var/lib/istio/galley/envoy + +{{- end }} + + volumes: + {{- if or .Values.global.controlPlaneSecurityEnabled .Values.global.configValidation }} + - name: istio-certs + secret: + secretName: istio.istio-galley-service-account + - name: envoy-config + configMap: + name: galley-envoy-config + {{- end }} + - name: config + configMap: + name: istio-galley-configuration + # Different config map from pilot, to allow independent config and rollout. + # Both are derived from values.yaml. + - name: mesh-config + configMap: + name: istio-mesh-galley + + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.galley.tolerations }} + tolerations: +{{ toYaml .Values.galley.tolerations | indent 6 }} +{{- end }} +--- +`) + +func chartsIstioControlIstioConfigTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesDeploymentYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesPoddisruptionbudgetYaml = []byte(`{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: istio-galley + namespace: {{ .Release.Namespace }} + labels: + app: galley + release: {{ .Release.Name }} + istio: galley +spec: + minAvailable: 1 + selector: + matchLabels: + app: galley + release: {{ .Release.Name }} + istio: galley +--- + +{{- end }} +`) + +func chartsIstioControlIstioConfigTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: istio-galley + namespace: {{ .Release.Namespace }} + labels: + app: galley + istio: galley + release: {{ .Release.Name }} +spec: + ports: + - port: 443 + name: https-validation + targetPort: 9443 + - port: 15014 + name: http-monitoring + - port: 9901 + name: grpc-mcp + - port: 15019 + name: grpc-tls-mcp + selector: + istio: galley +--- +`) + +func chartsIstioControlIstioConfigTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesServiceYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-galley-service-account + namespace: {{ .Release.Namespace }} + labels: + app: galley + release: {{ .Release.Name }} +--- +`) + +func chartsIstioControlIstioConfigTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesServiceaccountYaml, nil +} + +func chartsIstioControlIstioConfigTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigTemplatesValidatingwebhookconfigurationYamlTpl = []byte(`{{ define "validatingwebhookconfiguration.yaml.tpl" }} +apiVersion: admissionregistration.k8s.io/v1beta1 +kind: ValidatingWebhookConfiguration +metadata: + name: istio-galley-{{ .Release.Namespace }} + namespace: {{ .Release.Namespace }} + labels: + app: galley + release: {{ .Release.Name }} + istio: galley +webhooks: + - name: pilot.validation.istio.io + clientConfig: + service: + name: istio-galley + namespace: {{ .Release.Namespace }} + path: "/admitpilot" + caBundle: "" + rules: + - operations: + - CREATE + - UPDATE + apiGroups: + - config.istio.io + apiVersions: + - v1alpha2 + resources: + - httpapispecs + - httpapispecbindings + - quotaspecs + - quotaspecbindings + - operations: + - CREATE + - UPDATE + apiGroups: + - rbac.istio.io + apiVersions: + - "*" + resources: + - "*" + - operations: + - CREATE + - UPDATE + apiGroups: + - security.istio.io + apiVersions: + - "*" + resources: + - "*" + - operations: + - CREATE + - UPDATE + apiGroups: + - authentication.istio.io + apiVersions: + - "*" + resources: + - "*" + - operations: + - CREATE + - UPDATE + apiGroups: + - networking.istio.io + apiVersions: + - "*" + resources: + - destinationrules + - envoyfilters + - gateways + - serviceentries + - sidecars + - virtualservices + failurePolicy: Fail + sideEffects: None + - name: mixer.validation.istio.io + clientConfig: + service: + name: istio-galley + namespace: {{ .Release.Namespace }} + path: "/admitmixer" + caBundle: "" + rules: + - operations: + - CREATE + - UPDATE + apiGroups: + - config.istio.io + apiVersions: + - v1alpha2 + resources: + - rules + - attributemanifests + - circonuses + - deniers + - fluentds + - kubernetesenvs + - listcheckers + - memquotas + - noops + - opas + - prometheuses + - rbacs + - solarwindses + - stackdrivers + - cloudwatches + - dogstatsds + - statsds + - stdios + - apikeys + - authorizations + - checknothings + # - kuberneteses + - listentries + - logentries + - metrics + - quotas + - reportnothings + - tracespans + - adapters + - handlers + - instances + - templates + - zipkins + failurePolicy: Fail + sideEffects: None +{{- end }} +--- +`) + +func chartsIstioControlIstioConfigTemplatesValidatingwebhookconfigurationYamlTplBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigTemplatesValidatingwebhookconfigurationYamlTpl, nil +} + +func chartsIstioControlIstioConfigTemplatesValidatingwebhookconfigurationYamlTpl() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigTemplatesValidatingwebhookconfigurationYamlTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/templates/validatingwebhookconfiguration.yaml.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioConfigValuesYaml = []byte(`galley: + image: galley + replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + + resources: + requests: + cpu: 100m + # memory: 128Mi + # limits: + # cpu: 100m + # memory: 128Mi + + # TODO: Galley appears to use the mesh config - need to find which fields are used and need to be configured. + mesh: {} + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsIstioControlIstioConfigValuesYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioConfigValuesYaml, nil +} + +func chartsIstioControlIstioConfigValuesYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioConfigValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-config/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryChartYaml = []byte(`apiVersion: v1 +name: istio-discovery +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for istio control plane +keywords: + - istio +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsIstioControlIstioDiscoveryChartYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryChartYaml, nil +} + +func chartsIstioControlIstioDiscoveryChartYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryNotesTxt = []byte(`Minimal control plane for Istio. Pilot and mesh config are included. + +MCP and injector should optionally be installed in the same namespace. Alternatively remote +address of an MCP server can be set. + +`) + +func chartsIstioControlIstioDiscoveryNotesTxtBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryNotesTxt, nil +} + +func chartsIstioControlIstioDiscoveryNotesTxt() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryNotesTxtBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/NOTES.txt", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.pilot.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.pilot.podAntiAffinityLabelSelector .Values.pilot.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.pilot.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.pilot.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.pilot.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.pilot.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioControlIstioDiscoveryTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplates_affinityTpl, nil +} + +func chartsIstioControlIstioDiscoveryTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplates_helpersTpl = []byte(`{{/* vim: set filetype=mustache: */}} +{{- define "istio.configmap.checksum" -}} +{{- print $.Template.BasePath "/configmap.yaml" | sha256sum -}} +{{- end -}} +`) + +func chartsIstioControlIstioDiscoveryTemplates_helpersTplBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplates_helpersTpl, nil +} + +func chartsIstioControlIstioDiscoveryTemplates_helpersTpl() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplates_helpersTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/_helpers.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesAutoscaleYaml = []byte(`{{- if and .Values.pilot.autoscaleEnabled .Values.pilot.autoscaleMin .Values.pilot.autoscaleMax }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: istio-pilot{{ .Values.version }} + namespace: {{ .Release.Namespace }} + labels: + app: pilot + release: {{ .Release.Name }} +spec: + maxReplicas: {{ .Values.pilot.autoscaleMax }} + minReplicas: {{ .Values.pilot.autoscaleMin }} + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-pilot{{ .Values.version }} + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.pilot.cpu.targetAverageUtilization }} +--- +{{- end }} +`) + +func chartsIstioControlIstioDiscoveryTemplatesAutoscaleYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesAutoscaleYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesAutoscaleYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesAutoscaleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/autoscale.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesClusterroleYaml = []byte(`{{ if .Values.clusterResources }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istio-pilot-{{ .Release.Namespace }} + labels: + app: pilot + release: {{ .Release.Name }} +rules: +- apiGroups: ["config.istio.io"] + resources: ["*"] + verbs: ["*"] +- apiGroups: ["rbac.istio.io"] + resources: ["*"] + verbs: ["get", "watch", "list"] +- apiGroups: ["security.istio.io"] + resources: ["*"] + verbs: ["get", "watch", "list"] +- apiGroups: ["networking.istio.io"] + resources: ["*"] + verbs: ["*"] +- apiGroups: ["authentication.istio.io"] + resources: ["*"] + verbs: ["*"] +- apiGroups: ["apiextensions.k8s.io"] + resources: ["customresourcedefinitions"] + verbs: ["*"] +- apiGroups: ["extensions"] + resources: ["ingresses", "ingresses/status"] + verbs: ["*"] +- apiGroups: [""] + resources: ["configmaps"] + verbs: ["create", "get", "list", "watch", "update"] +- apiGroups: [""] + resources: ["endpoints", "pods", "services", "namespaces", "nodes", "secrets"] + verbs: ["get", "list", "watch"] +--- +{{ end }} +`) + +func chartsIstioControlIstioDiscoveryTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesClusterroleYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesClusterrolebindingYaml = []byte(`{{ if .Values.clusterResources }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-pilot-{{ .Release.Namespace }} + labels: + app: pilot + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istio-pilot-{{ .Release.Namespace }} +subjects: + - kind: ServiceAccount + name: istio-pilot-service-account + namespace: {{ .Release.Namespace }} +--- +{{ end }} +`) + +func chartsIstioControlIstioDiscoveryTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesClusterrolebindingYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesConfigmapEnvoyYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + namespace: {{ .Release.Namespace }} + name: pilot-envoy-config{{ .Values.version }} + labels: + release: {{ .Release.Name }} +data: + envoy.yaml.tmpl: |- + admin: + access_log_path: /dev/null + address: + socket_address: + address: 127.0.0.1 + port_value: 15000 + + static_resources: + clusters: + - name: in.15010 + http2_protocol_options: {} + connect_timeout: 1.000s + + hosts: + - socket_address: + address: 127.0.0.1 + port_value: 15010 + + circuit_breakers: + thresholds: + - max_connections: 100000 + max_pending_requests: 100000 + max_requests: 100000 + max_retries: 3 + + # TODO: telemetry using EDS + # TODO: other pilots using EDS, load balancing + # TODO: galley using EDS + + - name: out.galley.15019 + http2_protocol_options: {} + connect_timeout: 1.000s + type: STRICT_DNS + + circuit_breakers: + thresholds: + - max_connections: 100000 + max_pending_requests: 100000 + max_requests: 100000 + max_retries: 3 + + tls_context: + common_tls_context: + tls_certificates: + - certificate_chain: + filename: /etc/certs/cert-chain.pem + private_key: + filename: /etc/certs/key.pem + validation_context: + trusted_ca: + filename: /etc/certs/root-cert.pem + verify_subject_alt_name: + - spiffe://cluster.local/ns/{{ .Values.global.configNamespace }}/sa/istio-galley-service-account + + hosts: + - socket_address: + address: istio-galley.{{ .Values.global.configNamespace }} + port_value: 15019 + + + listeners: + - name: "in.15011" + address: + socket_address: + address: 0.0.0.0 + port_value: 15011 + filter_chains: + - filters: + - name: envoy.http_connection_manager + #typed_config + #"@type": "type.googleapis.com/", + config: + codec_type: HTTP2 + stat_prefix: "15011" + http2_protocol_options: + max_concurrent_streams: 1073741824 + + access_log: + - name: envoy.file_access_log + config: + path: /dev/stdout + + http_filters: + - name: envoy.router + + route_config: + name: "15011" + + virtual_hosts: + - name: istio-pilot + + domains: + - '*' + + routes: + - match: + prefix: / + route: + cluster: in.15010 + timeout: 0.000s + decorator: + operation: xDS + + tls_context: + require_client_certificate: true + common_tls_context: + validation_context: + trusted_ca: + filename: /etc/certs/root-cert.pem + + alpn_protocols: + - h2 + + tls_certificates: + - certificate_chain: + filename: /etc/certs/cert-chain.pem + private_key: + filename: /etc/certs/key.pem + + + # Manual 'whitebox' mode + - name: "local.15019" + address: + socket_address: + address: 127.0.0.1 + port_value: 15019 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: HTTP2 + stat_prefix: "15019" + http2_protocol_options: + max_concurrent_streams: 1073741824 + + access_log: + - name: envoy.file_access_log + config: + path: /dev/stdout + + http_filters: + - name: envoy.router + + route_config: + name: "15019" + + virtual_hosts: + - name: istio-galley + + domains: + - '*' + + routes: + - match: + prefix: / + route: + cluster: out.galley.15019 + timeout: 0.000s + +--- + +`) + +func chartsIstioControlIstioDiscoveryTemplatesConfigmapEnvoyYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesConfigmapEnvoyYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesConfigmapEnvoyYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesConfigmapEnvoyYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/configmap-envoy.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesConfigmapYaml = []byte(`{{- if .Values.pilot.configMap }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: istio{{ .Values.version }} + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +data: + + meshNetworks: |- + # Network config +{{ toYaml .Values.pilot.meshNetworks | indent 4 }} + + values.yaml: |- +{{ toYaml .Values.pilot | indent 4 }} + + mesh: |- + {{- if .Values.global.enableTracing }} + # Set enableTracing to false to disable request tracing. + enableTracing: {{ .Values.global.enableTracing }} + {{- end }} + + # Set accessLogFile to empty string to disable access log. + accessLogFile: "{{ .Values.global.proxy.accessLogFile }}" + + enableEnvoyAccessLogService: {{ .Values.global.proxy.envoyAccessLogService.enabled }} + + {{- if .Values.mixer.telemetry.reportBatchMaxEntries }} + # reportBatchMaxEntries is the number of requests that are batched before telemetry data is sent to the mixer server + reportBatchMaxEntries: {{ .Values.mixer.telemetry.reportBatchMaxEntries }} + {{- end }} + + {{- if .Values.mixer.telemetry.reportBatchMaxTime }} + # reportBatchMaxTime is the max waiting time before the telemetry data of a request is sent to the mixer server + reportBatchMaxTime: {{ .Values.mixer.telemetry.reportBatchMaxTime }} + {{- end }} + + {{- if .Values.pilot.telemetry.enabled }} + {{- if .Values.global.controlPlaneSecurityEnabled }} + mixerReportServer: istio-telemetry.{{ .Values.global.telemetryNamespace }}.svc.cluster.local:15004 + {{- else }} + mixerReportServer: istio-telemetry.{{ .Values.global.telemetryNamespace }}.svc.cluster.local:9091 + {{- end }} + {{- end }} + + {{- if .Values.global.controlPlaneSecurityEnabled }} + mixerCheckServer: istio-policy.{{ .Values.global.policyNamespace }}.svc.cluster.local:15004 + {{- else }} + mixerCheckServer: istio-policy.{{ .Values.global.policyNamespace }}.svc.cluster.local:9091 + {{- end }} + + {{- if .Values.pilot.authPolicy }} + authPolicy: {{ .Values.pilot.authPolicy }} + {{- end }} + + {{- if .Values.pilot.policy.enabled }} + + # Set the following variable to true to disable policy checks by the Mixer. + # Note that metrics will still be reported to the Mixer. + disablePolicyChecks: false + + # policyCheckFailOpen allows traffic in cases when the mixer policy service cannot be reached. + # Default is false which means the traffic is denied when the client is unable to connect to Mixer. + policyCheckFailOpen: {{ .Values.global.policyCheckFailOpen }} + + {{- else }} + + disablePolicyChecks: true + + {{- end }} + + + # This is the k8s ingress service name, update if you used a different name + {{- if .Values.pilot.ingress }} + {{- if .Values.pilot.ingress.ingressService }} + ingressService: "{{ .Values.pilot.ingress.ingressService }}" + ingressControllerMode: "{{ .Values.pilot.ingress.ingressControllerMode }}" + ingressClass: "{{ .Values.pilot.ingress.ingressClass }}" + {{- end }} + {{- end }} + + {{- if .Values.global.sds.enabled }} + # Unix Domain Socket through which envoy communicates with NodeAgent SDS to get + # key/cert for mTLS. Use secret-mount files instead of SDS if set to empty. + sdsUdsPath: {{ .Values.global.sds.udsPath }} + + {{- else }} + # Set expected values when SDS is disabled + # Unix Domain Socket through which envoy communicates with NodeAgent SDS to get + # key/cert for mTLS. Use secret-mount files instead of SDS if set to empty. + sdsUdsPath: "" + # This flag is used by secret discovery service(SDS). + # If set to true(prerequisite: https://kubernetes.io/docs/concepts/storage/volumes/#projected), Istio will inject volumes mount + # for k8s service account JWT, so that K8s API server mounts k8s service account JWT to envoy container, which + # will be used to generate key/cert eventually. This isn't supported for non-k8s case. + enableSdsTokenMount: false + # This flag is used by secret discovery service(SDS). + # If set to true, envoy will fetch normal k8s service account JWT from '/var/run/secrets/kubernetes.io/serviceaccount/token' + # (https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/#accessing-the-api-from-a-pod) + # and pass to sds server, which will be used to request key/cert eventually. + # this flag is ignored if enableSdsTokenMount is set. + # This isn't supported for non-k8s case. + sdsUseK8sSaJwt: false + {{- end }} + + {{- if .Values.pilot.useMCP }} + config_sources: + {{- if .Values.global.controlPlaneSecurityEnabled }} + - address: localhost:15019 + {{- else }} + - address: istio-galley:9901 + {{- end }} + {{- end }} + + outboundTrafficPolicy: + mode: {{ .Values.global.outboundTrafficPolicy.mode }} + + {{- if .Values.global.localityLbSetting.enabled }} + localityLbSetting: +{{ toYaml .Values.global.localityLbSetting | indent 6 }} + {{- end }} + + defaultConfig: + # + # TCP connection timeout between Envoy & the application, and between Envoys. + connectTimeout: 10s + # + ### ADVANCED SETTINGS ############# + # Where should envoy's configuration be stored in the istio-proxy container + configPath: "/etc/istio/proxy" + # The pseudo service name used for Envoy. + serviceCluster: istio-proxy + # These settings that determine how long an old Envoy + # process should be kept alive after an occasional reload. + drainDuration: 45s + parentShutdownDuration: 1m0s + # + # Port where Envoy listens (on local host) for admin commands + # You can exec into the istio-proxy container in a pod and + # curl the admin port (curl http://localhost:15000/) to obtain + # diagnostic information from Envoy. See + # https://lyft.github.io/envoy/docs/operations/admin.html + # for more details + proxyAdminPort: 15000 + # + # Set concurrency to a specific number to control the number of Proxy worker threads. + # If set to 0 (default), then start worker thread for each CPU thread/core. + concurrency: {{ .Values.global.proxy.concurrency }} + # + {{- if eq .Values.global.proxy.tracer "lightstep" }} + tracing: + lightstep: + # Address of the LightStep Satellite pool + address: {{ .Values.global.tracer.lightstep.address }} + # Access Token used to communicate with the Satellite pool + accessToken: {{ .Values.global.tracer.lightstep.accessToken }} + # Whether communication with the Satellite pool should be secure + secure: {{ .Values.global.tracer.lightstep.secure }} + # Path to the file containing the cacert to use when verifying TLS + cacertPath: {{ .Values.global.tracer.lightstep.cacertPath }} + {{- else if eq .Values.global.proxy.tracer "zipkin" }} + tracing: + zipkin: + # Address of the Zipkin collector + {{- if .Values.global.tracer.zipkin.address }} + address: {{ .Values.global.tracer.zipkin.address }} + {{- else }} + address: zipkin.{{ .Values.global.telemetryNamespace }}:9411 + {{- end }} + {{- else if eq .Values.global.proxy.tracer "datadog" }} + tracing: + datadog: + # Address of the Datadog Agent + address: {{ .Values.global.tracer.datadog.address }} + {{- else if eq .Values.global.proxy.tracer "stackdriver" }} + tracing: + stackdriver: {} + {{- end }} + + {{- if .Values.global.controlPlaneSecurityEnabled }} + # + # Mutual TLS authentication between sidecars and istio control plane. + controlPlaneAuthPolicy: MUTUAL_TLS + # + # Address where istio Pilot service is running + discoveryAddress: istio-pilot.{{ .Release.Namespace }}:15011 + {{- else }} + # + # Mutual TLS authentication between sidecars and istio control plane. + controlPlaneAuthPolicy: NONE + # + # Address where istio Pilot service is running + discoveryAddress: istio-pilot.{{ .Release.Namespace }}:15010 + {{- end }} + + {{- if .Values.global.proxy.envoyMetricsService.enabled }} + # Envoy's Metrics Service stats sink pushes Envoy metrics to a remote collector via the Metrics Service gRPC API. + envoyMetricsService: + address: {{ .Values.global.proxy.envoyMetricsService.host }}:{{ .Values.global.proxy.envoyMetricsService.port }} + {{- end}} + + + {{- if .Values.global.proxy.envoyAccessLogService.enabled }} + # Envoy's AccessLog Service pushes access logs to a remote collector via the Access Log Service gRPC API. + envoyAccessLogService: + address: {{ .Values.global.proxy.envoyAccessLogService.host }}:{{ .Values.global.proxy.envoyAccessLogService.port }} + {{- end}} +--- +{{- end }} +`) + +func chartsIstioControlIstioDiscoveryTemplatesConfigmapYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesConfigmapYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesConfigmapYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesConfigmapYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/configmap.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-pilot{{ .Values.version }} + namespace: {{ .Release.Namespace }} + # TODO: default template doesn't have this, which one is right ? + labels: + app: pilot + {{- if ne .Values.version ""}} + version: {{ .Values.version }} + {{- end }} + release: {{ .Release.Name }} +{{- range $key, $val := .Values.pilot.deploymentLabels }} + {{ $key }}: "{{ $val }}" +{{- end }} + istio: pilot + annotations: + checksum/config-volume-envoy: {{ include (print $.Template.BasePath "/configmap-envoy.yaml") . | sha256sum }} + checksum/config-volume: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }} +spec: +{{- if not .Values.pilot.autoscaleEnabled }} +{{- if .Values.pilot.replicaCount }} + replicas: {{ .Values.pilot.replicaCount }} +{{- else }} + replicas: 1 +{{- end }} +{{- end }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.pilot.rollingMaxSurge }} + maxUnavailable: {{ .Values.pilot.rollingMaxUnavailable }} + selector: + matchLabels: + {{- if ne .Values.version ""}} + app: pilot + version: {{ .Values.version }} + {{ else }} + istio: pilot + {{- end }} + template: + metadata: + labels: + app: pilot + {{- if ne .Values.version ""}} + version: {{ .Values.version }} + {{ else }} + # Label used by the 'default' service. For versioned deployments we match with app and version. + # This avoids default deployment picking the canary + istio: pilot + {{- end }} +{{- if eq .Release.Namespace "istio-system"}} + heritage: Tiller + release: istio + chart: pilot +{{- end }} + annotations: + sidecar.istio.io/inject: "false" + checksum/config-volume-envoy: {{ print $.Template.BasePath "/configmap-envoy.yaml" | sha256sum }} + checksum/config-volume: {{ print $.Template.BasePath "/configmap.yaml" | sha256sum }} + spec: + serviceAccountName: istio-pilot-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: discovery +{{- if contains "/" .Values.pilot.image }} + image: "{{ .Values.pilot.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.pilot.image | default "pilot" }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + args: + - "discovery" + - --monitoringAddr=:15014 +{{- if .Values.global.logging.level }} + - --log_output_level={{ .Values.global.logging.level }} +{{- end}} +{{- if .Values.global.logAsJson }} + - --log_as_json +{{- end }} + - --domain + - {{ .Values.global.proxy.clusterDomain }} +{{- if .Values.global.oneNamespace }} + - "-a" + - {{ .Release.Namespace }} +{{- end }} + - --secureGrpcAddr + - "" +{{- if .Values.global.trustDomain }} + - --trust-domain={{ .Values.global.trustDomain }} +{{- end }} +{{- if .Values.plugins }} + - --plugins={{ .Values.pilot.plugins }} +{{- end }} + - --keepaliveMaxServerConnectionAge + - "{{ .Values.pilot.keepaliveMaxServerConnectionAge }}" + ports: + - containerPort: 8080 + - containerPort: 15010 + readinessProbe: + httpGet: + path: /ready + port: 8080 + initialDelaySeconds: 5 + periodSeconds: 30 + timeoutSeconds: 5 + env: + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + {{- if .Values.pilot.env }} + {{- range $key, $val := .Values.pilot.env }} + - name: {{ $key }} + value: "{{ $val }}" + {{- end }} + {{- end }} +{{- if .Values.pilot.traceSampling }} + - name: PILOT_TRACE_SAMPLING + value: "{{ .Values.pilot.traceSampling }}" +{{- end }} + - name: CONFIG_NAMESPACE + value: {{ .Values.pilot.configNamespace }} +{{- if .Values.pilot.appNamespaces }} + - name: APP_NAMESPACE + value: {{ join "," .Values.pilot.appNamespaces }} +{{- end }} + resources: +{{- if .Values.pilot.resources }} +{{ toYaml .Values.pilot.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + volumeMounts: + - name: config-volume + mountPath: /etc/istio/config +{{- if .Values.global.controlPlaneSecurityEnabled }} + - name: istio-proxy +{{- if contains "/" .Values.global.proxy.image }} + image: "{{ .Values.global.proxy.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy.image }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 15011 + args: + - proxy + - --domain + - $(POD_NAMESPACE).svc.{{ .Values.global.proxy.clusterDomain }} + - --serviceCluster + - istio-pilot + - --templateFile + - /var/lib/envoy/envoy.yaml.tmpl + {{- if .Values.global.controlPlaneSecurityEnabled}} + - --controlPlaneAuthPolicy + - MUTUAL_TLS + {{- else }} + - --controlPlaneAuthPolicy + - NONE + {{- end }} + {{- if .Values.global.trustDomain }} + - --trust-domain={{ .Values.global.trustDomain }} + {{- end }} + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + env: + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: INSTANCE_IP + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: status.podIP + resources: +{{- if .Values.global.proxy.resources }} +{{ toYaml .Values.global.proxy.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + volumeMounts: + - name: istio-certs + mountPath: /etc/certs + readOnly: true + - name: pilot-envoy-config + mountPath: /var/lib/envoy + {{- if .Values.global.sds.enabled }} + - name: sds-uds-path + mountPath: /var/run/sds + readOnly: true + - name: istio-token + mountPath: /var/run/secrets/tokens + {{- end }} +{{- end }} + volumes: + {{- if .Values.global.sds.enabled }} + - hostPath: + path: /var/run/sds + name: sds-uds-path + - name: istio-token + projected: + sources: + - serviceAccountToken: + audience: {{ .Values.global.trustDomain }} + expirationSeconds: 43200 + path: istio-token + {{- end }} + - name: config-volume + configMap: + name: istio{{ .Values.version }} + - name: pilot-envoy-config + configMap: + name: pilot-envoy-config{{ .Values.version }} + {{- if .Values.global.controlPlaneSecurityEnabled}} + - name: istio-certs + secret: + secretName: istio.istio-pilot-service-account + optional: true + {{- end }} + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.pilot.tolerations }} + tolerations: +{{ toYaml .Values.pilot.tolerations | indent 6 }} +{{- end }} +--- +`) + +func chartsIstioControlIstioDiscoveryTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesDeploymentYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesEnableMeshMtlsYaml = []byte(`{{ if .Values.clusterResources }} +# Destination rule to disable (m)TLS when talking to API server, as API server doesn't have sidecar. +# Customer should add similar destination rules for other services that dont' have sidecar. +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: "api-server" + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + host: "kubernetes.default.svc.cluster.local" + trafficPolicy: + tls: + mode: DISABLE + +--- + +{{- if .Values.global.mtls.enabled }} + +# Corresponding destination rule to configure client side to use mutual TLS when talking to +# any service (host) in the mesh. +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: "default" + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + host: "*.local" + trafficPolicy: + tls: + mode: ISTIO_MUTUAL +--- +{{- else }} + +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: "default" + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + host: "*.local" + trafficPolicy: + tls: + mode: DISABLE +--- + +{{ end }} +{{ end }} +`) + +func chartsIstioControlIstioDiscoveryTemplatesEnableMeshMtlsYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesEnableMeshMtlsYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesEnableMeshMtlsYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesEnableMeshMtlsYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/enable-mesh-mtls.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesPoddisruptionbudgetYaml = []byte(`{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: istio-pilot{{ .Values.version }} + namespace: {{ .Release.Namespace }} + labels: + app: pilot + release: {{ .Release.Name }} + istio: pilot +spec: + minAvailable: 1 + selector: + matchLabels: + app: pilot + {{- if ne .Values.version ""}} + version: {{ .Values.version }} + {{- end }} + release: {{ .Release.Name }} + istio: pilot +--- +{{- end }} +`) + +func chartsIstioControlIstioDiscoveryTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: istio-pilot{{ .Values.version }} + namespace: {{ .Release.Namespace }} + labels: + app: pilot + release: {{ .Release.Name }} + istio: pilot +spec: + ports: + - port: 15010 + name: grpc-xds # direct + - port: 15011 + name: https-xds # mTLS + - port: 8080 + name: http-legacy-discovery # direct + - port: 15014 + name: http-monitoring + selector: + {{- if ne .Values.version ""}} + app: pilot + version: {{ .Values.version }} + {{ else }} + istio: pilot + {{- end }} +--- +`) + +func chartsIstioControlIstioDiscoveryTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesServiceYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryTemplatesServiceaccountYaml = []byte(`{{ if .Values.clusterResources }} +apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-pilot-service-account + namespace: {{ .Release.Namespace }} + labels: + app: pilot + release: {{ .Release.Name }} +--- +{{ end }} +`) + +func chartsIstioControlIstioDiscoveryTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryTemplatesServiceaccountYaml, nil +} + +func chartsIstioControlIstioDiscoveryTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioControlIstioDiscoveryValuesYaml = []byte(`#.Values.pilot for discovery and mesh wide config + +## Discovery Settings +pilot: + autoscaleEnabled: true + autoscaleMin: 1 + autoscaleMax: 5 + replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + + # Can be a full hub/image:tag + image: pilot + traceSampling: 1.0 + + # Resources for a small pilot install + resources: + requests: + cpu: 500m + memory: 2048Mi + + # Namespace for Istio config + configNamespace: istio-config + + # Applications namespace list pilot manages + appNamespaces: [] + + env: + GODEBUG: gctrace=1 + + cpu: + targetAverageUtilization: 80 + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + + # The following is used to limit how long a sidecar can be connected + # to a pilot. It balances out load across pilot instances at the cost of + # increasing system churn. + keepaliveMaxServerConnectionAge: 30m + + # Additional labels to apply to the deployment. + deploymentLabels: + + + ## Mesh config settings + + # Used to override control-plane networs + meshNetworks: + networks: {} + + # Install the mesh config map, generated from values.yaml. + # If false, pilot wil use default values (by default) or user-supplied values. + configMap: true + + # Controls legacy k8s ingress + # Only one pilot profile should enable ingress support !!! + ingress: + # If empty, node-port is assumed. + ingressService: istio-ingressgateway + # DEFAULT: all Ingress resources without annotation or with istio annotation + # STRICT: only with istio annotation + # OFF: no ingress or sync. + ingressControllerMode: "OFF" + + # Value to set on "kubernetes.io/ingress.class" annotations to activate, if mode is STRICT + # This is required to be different than 'istio' if multiple ingresses are present. + ingressClass: istio + + telemetry: + # Will not define mixerCheckServer and mixerReportServer + enabled: true + + policy: + # Will not define mixerCheckServer and mixerReportServer + enabled: false + + # Indicate if Galley is enabled to send MCP queries + useMCP: true + +## Mixer settings +mixer: + telemetry: + # Set reportBatchMaxEntries to 0 to use the default batching behavior (i.e., every 100 requests). + # A positive value indicates the number of requests that are batched before telemetry data + # is sent to the mixer server + reportBatchMaxEntries: 100 + + # Set reportBatchMaxTime to 0 to use the default batching behavior (i.e., every 1 second). + # A positive time value indicates the maximum wait time since the last request will telemetry data + # be batched before being sent to the mixer server + reportBatchMaxTime: 1s +`) + +func chartsIstioControlIstioDiscoveryValuesYamlBytes() ([]byte, error) { + return _chartsIstioControlIstioDiscoveryValuesYaml, nil +} + +func chartsIstioControlIstioDiscoveryValuesYaml() (*asset, error) { + bytes, err := chartsIstioControlIstioDiscoveryValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-control/istio-discovery/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyChartYaml = []byte(`apiVersion: v1 +name: istio-policy +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for mixer policy deployment +keywords: + - istio + - mixer +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsIstioPolicyChartYamlBytes() ([]byte, error) { + return _chartsIstioPolicyChartYaml, nil +} + +func chartsIstioPolicyChartYaml() (*asset, error) { + bytes, err := chartsIstioPolicyChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.mixer.policy.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.mixer.policy.podAntiAffinityLabelSelector .Values.mixer.policy.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.mixer.policy.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.mixer.policy.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.mixer.policy.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.mixer.policy.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioPolicyTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioPolicyTemplates_affinityTpl, nil +} + +func chartsIstioPolicyTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioPolicyTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplates_helpersTpl = []byte(`{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "mixer.name" -}} +{{- default .Chart.Name .Values.mixer.policy.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "mixer.fullname" -}} +{{- if .Values.mixer.policy.fullnameOverride -}} +{{- .Values.mixer.policy.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.mixer.policy.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "mixer.chart" -}} +{{- .Chart.Name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +`) + +func chartsIstioPolicyTemplates_helpersTplBytes() ([]byte, error) { + return _chartsIstioPolicyTemplates_helpersTpl, nil +} + +func chartsIstioPolicyTemplates_helpersTpl() (*asset, error) { + bytes, err := chartsIstioPolicyTemplates_helpersTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/_helpers.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplatesAutoscaleYaml = []byte(`{{- if .Values.mixer.policy.autoscaleMin }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: istio-policy + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +spec: + maxReplicas: {{ .Values.mixer.policy.autoscaleMax }} + minReplicas: {{ .Values.mixer.policy.autoscaleMin }} + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-policy + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.mixer.policy.cpu.targetAverageUtilization }} +--- +{{- end }} +`) + +func chartsIstioPolicyTemplatesAutoscaleYamlBytes() ([]byte, error) { + return _chartsIstioPolicyTemplatesAutoscaleYaml, nil +} + +func chartsIstioPolicyTemplatesAutoscaleYaml() (*asset, error) { + bytes, err := chartsIstioPolicyTemplatesAutoscaleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/autoscale.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istio-policy + labels: + release: {{ .Release.Name }} + app: istio-policy +rules: +- apiGroups: ["config.istio.io"] # istio CRD watcher + resources: ["*"] + verbs: ["create", "get", "list", "watch", "patch"] +- apiGroups: ["apiextensions.k8s.io"] + resources: ["customresourcedefinitions"] + verbs: ["get", "list", "watch"] +- apiGroups: [""] + resources: ["configmaps", "endpoints", "pods", "services", "namespaces", "secrets", "replicationcontrollers"] + verbs: ["get", "list", "watch"] +- apiGroups: ["extensions", "apps"] + resources: ["replicasets"] + verbs: ["get", "list", "watch"] +--- +`) + +func chartsIstioPolicyTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstioPolicyTemplatesClusterroleYaml, nil +} + +func chartsIstioPolicyTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstioPolicyTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplatesClusterrolebindingYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-policy-admin-role-binding-{{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istio-policy +subjects: + - kind: ServiceAccount + name: istio-policy-service-account + namespace: {{ .Release.Namespace }} +--- +`) + +func chartsIstioPolicyTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsIstioPolicyTemplatesClusterrolebindingYaml, nil +} + +func chartsIstioPolicyTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsIstioPolicyTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplatesConfigYaml = []byte(`{{ if not (eq .Release.Namespace "istio-system") }} +apiVersion: "config.istio.io/v1alpha2" +kind: attributemanifest +metadata: + name: istioproxy + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +spec: + attributes: + origin.ip: + valueType: IP_ADDRESS + origin.uid: + valueType: STRING + origin.user: + valueType: STRING + request.headers: + valueType: STRING_MAP + request.id: + valueType: STRING + request.host: + valueType: STRING + request.method: + valueType: STRING + request.path: + valueType: STRING + request.url_path: + valueType: STRING + request.query_params: + valueType: STRING_MAP + request.reason: + valueType: STRING + request.referer: + valueType: STRING + request.scheme: + valueType: STRING + request.total_size: + valueType: INT64 + request.size: + valueType: INT64 + request.time: + valueType: TIMESTAMP + request.useragent: + valueType: STRING + response.code: + valueType: INT64 + response.duration: + valueType: DURATION + response.headers: + valueType: STRING_MAP + response.total_size: + valueType: INT64 + response.size: + valueType: INT64 + response.time: + valueType: TIMESTAMP + response.grpc_status: + valueType: STRING + response.grpc_message: + valueType: STRING + source.uid: + valueType: STRING + source.user: # DEPRECATED + valueType: STRING + source.principal: + valueType: STRING + destination.uid: + valueType: STRING + destination.principal: + valueType: STRING + destination.port: + valueType: INT64 + connection.event: + valueType: STRING + connection.id: + valueType: STRING + connection.received.bytes: + valueType: INT64 + connection.received.bytes_total: + valueType: INT64 + connection.sent.bytes: + valueType: INT64 + connection.sent.bytes_total: + valueType: INT64 + connection.duration: + valueType: DURATION + connection.mtls: + valueType: BOOL + connection.requested_server_name: + valueType: STRING + context.protocol: + valueType: STRING + context.proxy_error_code: + valueType: STRING + context.timestamp: + valueType: TIMESTAMP + context.time: + valueType: TIMESTAMP + # Deprecated, kept for compatibility + context.reporter.local: + valueType: BOOL + context.reporter.kind: + valueType: STRING + context.reporter.uid: + valueType: STRING + context.proxy_version: + valueType: STRING + api.service: + valueType: STRING + api.version: + valueType: STRING + api.operation: + valueType: STRING + api.protocol: + valueType: STRING + request.auth.principal: + valueType: STRING + request.auth.audiences: + valueType: STRING + request.auth.presenter: + valueType: STRING + request.auth.claims: + valueType: STRING_MAP + request.auth.raw_claims: + valueType: STRING + request.api_key: + valueType: STRING + rbac.permissive.response_code: + valueType: STRING + rbac.permissive.effective_policy_id: + valueType: STRING + check.error_code: + valueType: INT64 + check.error_message: + valueType: STRING + check.cache_hit: + valueType: BOOL + quota.cache_hit: + valueType: BOOL + +--- +apiVersion: "config.istio.io/v1alpha2" +kind: attributemanifest +metadata: + name: kubernetes + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +spec: + attributes: + source.ip: + valueType: IP_ADDRESS + source.labels: + valueType: STRING_MAP + source.metadata: + valueType: STRING_MAP + source.name: + valueType: STRING + source.namespace: + valueType: STRING + source.owner: + valueType: STRING + source.serviceAccount: + valueType: STRING + source.services: + valueType: STRING + source.workload.uid: + valueType: STRING + source.workload.name: + valueType: STRING + source.workload.namespace: + valueType: STRING + destination.ip: + valueType: IP_ADDRESS + destination.labels: + valueType: STRING_MAP + destination.metadata: + valueType: STRING_MAP + destination.owner: + valueType: STRING + destination.name: + valueType: STRING + destination.container.name: + valueType: STRING + destination.namespace: + valueType: STRING + destination.service.uid: + valueType: STRING + destination.service.name: + valueType: STRING + destination.service.namespace: + valueType: STRING + destination.service.host: + valueType: STRING + destination.serviceAccount: + valueType: STRING + destination.workload.uid: + valueType: STRING + destination.workload.name: + valueType: STRING + destination.workload.namespace: + valueType: STRING +--- +{{- if .Values.mixer.policy.adapters.kubernetesenv.enabled }} +apiVersion: "config.istio.io/v1alpha2" +kind: handler +metadata: + name: kubernetesenv + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +spec: + compiledAdapter: kubernetesenv + params: + # when running from mixer root, use the following config after adding a + # symbolic link to a kubernetes config file via: + # + # $ ln -s ~/.kube/config mixer/adapter/kubernetes/kubeconfig + # + # kubeconfig_path: "mixer/adapter/kubernetes/kubeconfig" + +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: kubeattrgenrulerule + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +spec: + actions: + - handler: kubernetesenv + instances: + - attributes +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: tcpkubeattrgenrulerule + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +spec: + match: context.protocol == "tcp" + actions: + - handler: kubernetesenv + instances: + - attributes +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: attributes + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +spec: + compiledTemplate: kubernetes + params: + # Pass the required attribute data to the adapter + source_uid: source.uid | "" + source_ip: source.ip | ip("0.0.0.0") # default to unspecified ip addr + destination_uid: destination.uid | "" + destination_port: destination.port | 0 + attributeBindings: + # Fill the new attributes from the adapter produced output. + # $out refers to an instance of OutputTemplate message + source.ip: $out.source_pod_ip | ip("0.0.0.0") + source.uid: $out.source_pod_uid | "unknown" + source.labels: $out.source_labels | emptyStringMap() + source.name: $out.source_pod_name | "unknown" + source.namespace: $out.source_namespace | "default" + source.owner: $out.source_owner | "unknown" + source.serviceAccount: $out.source_service_account_name | "unknown" + source.workload.uid: $out.source_workload_uid | "unknown" + source.workload.name: $out.source_workload_name | "unknown" + source.workload.namespace: $out.source_workload_namespace | "unknown" + destination.ip: $out.destination_pod_ip | ip("0.0.0.0") + destination.uid: $out.destination_pod_uid | "unknown" + destination.labels: $out.destination_labels | emptyStringMap() + destination.name: $out.destination_pod_name | "unknown" + destination.container.name: $out.destination_container_name | "unknown" + destination.namespace: $out.destination_namespace | "default" + destination.owner: $out.destination_owner | "unknown" + destination.serviceAccount: $out.destination_service_account_name | "unknown" + destination.workload.uid: $out.destination_workload_uid | "unknown" + destination.workload.name: $out.destination_workload_name | "unknown" + destination.workload.namespace: $out.destination_workload_namespace | "unknown" +{{- end }} +{{- end }} + +--- +# Configuration needed by Mixer. +# Mixer cluster is delivered via CDS +# Specify mixer cluster settings +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: istio-policy + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +spec: + host: istio-policy.{{ .Release.Namespace }}.svc.{{ .Values.global.proxy.clusterDomain }} + {{- if .Values.global.defaultConfigVisibilitySettings }} + exportTo: + - '*' + {{- end }} + trafficPolicy: + {{- if .Values.global.controlPlaneSecurityEnabled }} + portLevelSettings: + - port: + number: 15004 + tls: + mode: ISTIO_MUTUAL + {{- end}} + connectionPool: + http: + http2MaxRequests: 10000 + maxRequestsPerConnection: 10000 +--- +`) + +func chartsIstioPolicyTemplatesConfigYamlBytes() ([]byte, error) { + return _chartsIstioPolicyTemplatesConfigYaml, nil +} + +func chartsIstioPolicyTemplatesConfigYaml() (*asset, error) { + bytes, err := chartsIstioPolicyTemplatesConfigYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/config.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-policy + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + istio: mixer + release: {{ .Release.Name }} +spec: + replicas: {{ .Values.mixer.policy.replicaCount }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.mixer.policy.rollingMaxSurge }} + maxUnavailable: {{ .Values.mixer.policy.rollingMaxUnavailable }} + selector: + matchLabels: + app: istio-policy + istio: mixer + istio-mixer-type: policy + template: + metadata: + labels: + app: istio-policy + istio: mixer + istio-mixer-type: policy + annotations: + sidecar.istio.io/inject: "false" +{{- with .Values.mixer.policy.podAnnotations }} +{{ toYaml . | indent 8 }} +{{- end }} + spec: + serviceAccountName: istio-policy-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + volumes: + - name: istio-certs + secret: + secretName: istio.istio-policy-service-account + optional: true + {{- if .Values.global.sds.enabled }} + - hostPath: + path: /var/run/sds + name: sds-uds-path + - name: istio-token + projected: + sources: + - serviceAccountToken: + audience: {{ .Values.global.trustDomain }} + expirationSeconds: 43200 + path: istio-token + {{- end }} + - name: uds-socket + emptyDir: {} + - name: policy-adapter-secret + secret: + secretName: policy-adapter-secret + optional: true + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.mixer.policy.tolerations }} + tolerations: +{{ toYaml .Values.mixer.policy.tolerations | indent 6 }} +{{- end }} + containers: + - name: mixer +{{- if contains "/" .Values.mixer.policy.image }} + image: "{{ .Values.mixer.policy.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.mixer.policy.image }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 15014 + - containerPort: 42422 + args: + - --monitoringPort=15014 + - --address + - unix:///sock/mixer.socket +{{- if .Values.global.logging.level }} + - --log_output_level={{ .Values.global.logging.level }} +{{- end}} +{{- if .Values.global.logAsJson }} + - --log_as_json +{{- end }} +{{- if .Values.global.useMCP }} + {{- if .Values.global.controlPlaneSecurityEnabled}} + - --configStoreURL=mcps://istio-galley.{{ .Values.global.configNamespace }}.svc:15019 + {{- else }} + - --configStoreURL=mcp://istio-galley.{{ .Values.global.configNamespace }}.svc:9901 + {{- end }} +{{- else }} + - --configStoreURL=k8s:// +{{- end }} + - --configDefaultNamespace={{ .Values.global.configNamespace }} + {{- if .Values.mixer.policy.adapters.useAdapterCRDs }} + - --useAdapterCRDs=true + {{- else }} + - --useAdapterCRDs=false + {{- end }} + - --useTemplateCRDs=false + {{- if .Values.global.tracer.zipkin.address }} + - --trace_zipkin_url=http://{{- .Values.global.tracer.zipkin.address }}/api/v1/spans + {{- else }} + - --trace_zipkin_url=http://zipkin.{{ .Values.global.telemetryNamespace }}:9411/api/v1/spans + {{- end }} + {{- if .Values.mixer.policy.env }} + env: + {{- range $key, $val := .Values.mixer.policy.env }} + - name: {{ $key }} + value: "{{ $val }}" + {{- end }} + {{- end }} + resources: +{{- if .Values.mixer.policy.resources }} +{{ toYaml .Values.mixer.policy.resources | indent 10 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 10 }} +{{- end }} + volumeMounts: +{{- if .Values.global.useMCP }} + - name: istio-certs + mountPath: /etc/certs + readOnly: true +{{- end }} + - name: uds-socket + mountPath: /sock + - name: policy-adapter-secret + mountPath: /var/run/secrets/istio.io/policy/adapter + readOnly: true + livenessProbe: + httpGet: + path: /version + port: 15014 + initialDelaySeconds: 5 + periodSeconds: 5 + - name: istio-proxy +{{- if contains "/" .Values.global.proxy.image }} + image: "{{ .Values.global.proxy.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy.image }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 9091 + - containerPort: 15004 + - containerPort: 15090 + protocol: TCP + name: http-envoy-prom + args: + - proxy + - --domain + - $(POD_NAMESPACE).svc.{{ .Values.global.proxy.clusterDomain }} + - --serviceCluster + - istio-policy + - --templateFile + - /etc/istio/proxy/envoy_policy.yaml.tmpl + {{- if .Values.global.controlPlaneSecurityEnabled }} + - --controlPlaneAuthPolicy + - MUTUAL_TLS + {{- else }} + - --controlPlaneAuthPolicy + - NONE + {{- end }} + {{- if .Values.global.trustDomain }} + - --trust-domain={{ .Values.global.trustDomain }} + {{- end }} + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + env: + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: INSTANCE_IP + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: status.podIP + resources: +{{- if .Values.global.proxy.resources }} +{{ toYaml .Values.global.proxy.resources | indent 10 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 10 }} +{{- end }} + volumeMounts: + - name: istio-certs + mountPath: /etc/certs + readOnly: true + {{- if .Values.global.sds.enabled }} + - name: sds-uds-path + mountPath: /var/run/sds + readOnly: true + - name: istio-token + mountPath: /var/run/secrets/tokens + {{- end }} + - name: uds-socket + mountPath: /sock +--- + +`) + +func chartsIstioPolicyTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstioPolicyTemplatesDeploymentYaml, nil +} + +func chartsIstioPolicyTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstioPolicyTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplatesPoddisruptionbudgetYaml = []byte(`{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: istio-policy + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} + istio: mixer + istio-mixer-type: policy +spec: + minAvailable: 1 + selector: + matchLabels: + app: istio-policy + release: {{ .Release.Name }} + istio: mixer + istio-mixer-type: policy +--- + +{{- end }} +`) + +func chartsIstioPolicyTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsIstioPolicyTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsIstioPolicyTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsIstioPolicyTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: istio-policy + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + istio: mixer + release: {{ .Release.Name }} +spec: + ports: + - name: grpc-mixer + port: 9091 + - name: grpc-mixer-mtls + port: 15004 + - name: http-policy-monitoring + port: 15014 + selector: + app: istio-policy +{{- if .Values.mixer.policy.sessionAffinityEnabled }} + sessionAffinity: ClientIP +{{- end }} +--- + +`) + +func chartsIstioPolicyTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioPolicyTemplatesServiceYaml, nil +} + +func chartsIstioPolicyTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioPolicyTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-policy-service-account + namespace: {{ .Release.Namespace }} + labels: + app: istio-policy + release: {{ .Release.Name }} +--- +`) + +func chartsIstioPolicyTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstioPolicyTemplatesServiceaccountYaml, nil +} + +func chartsIstioPolicyTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstioPolicyTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioPolicyValuesYaml = []byte(`mixer: + policy: + image: mixer + + replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + autoscaleEnabled: true + autoscaleMin: 1 + autoscaleMax: 5 + cpu: + targetAverageUtilization: 80 + + podAnnotations: {} + + env: + GODEBUG: gctrace=1 + + adapters: + kubernetesenv: + enabled: true + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsIstioPolicyValuesYamlBytes() ([]byte, error) { + return _chartsIstioPolicyValuesYaml, nil +} + +func chartsIstioPolicyValuesYaml() (*asset, error) { + bytes, err := chartsIstioPolicyValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-policy/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaChartYaml = []byte(`apiVersion: v1 +description: A Helm chart for Kubernetes +name: grafana +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +`) + +func chartsIstioTelemetryGrafanaChartYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaChartYaml, nil +} + +func chartsIstioTelemetryGrafanaChartYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaDashboardsCitadelDashboardJson = []byte(`{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "description": "", + "editable": true, + "gnetId": null, + "graphTooltip": 0, + "links": [], + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 8, + "panels": [], + "title": "Performance", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "CPU usage across Citadel instances.", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 1 + }, + "id": 10, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"citadel\", pod_name=~\"istio-citadel-.*\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Citadel CPU usage rate", + "refId": "A" + }, + { + "expr": "irate(process_cpu_seconds_total{job=\"citadel\"}[1m])", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Citadel CPU usage irate", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "CPU", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "Citadel process memory statistics.", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 1 + }, + "id": 12, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_virtual_memory_bytes{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Virtual Memory", + "refId": "A" + }, + { + "expr": "process_resident_memory_bytes{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Resident Memory", + "refId": "B" + }, + { + "expr": "go_memstats_heap_sys_bytes{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Heap Memory Total", + "refId": "C" + }, + { + "expr": "go_memstats_alloc_bytes{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Heap Memory Allocated", + "refId": "E" + }, + { + "expr": "go_memstats_heap_inuse_bytes{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Heap Inuse", + "refId": "F" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Memory", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 1 + }, + "id": 14, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "go_goroutines{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Goroutines", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Goroutines", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 7 + }, + "id": 28, + "panels": [], + "title": "General", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "Total number of CSR requests made to Citadel.", + "fill": 1, + "gridPos": { + "h": 5, + "w": 12, + "x": 0, + "y": 8 + }, + "id": 30, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "citadel_server_csr_count{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "CSR Request Count", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "CSR Requests", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "The number of certificates issuances that have succeeded.", + "fill": 1, + "gridPos": { + "h": 5, + "w": 12, + "x": 12, + "y": 8 + }, + "id": 32, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "citadel_server_success_cert_issuance_count{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Certificates Issued", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Certificates Issued", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 13 + }, + "id": 23, + "panels": [], + "title": "Errors", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "The number of errors occurred when creating the CSR.", + "fill": 1, + "gridPos": { + "h": 5, + "w": 8, + "x": 0, + "y": 14 + }, + "id": 20, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "citadel_secret_controller_csr_err_count{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "CSR Creation Error Count", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "CSR Creation Errors", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "fill": 1, + "gridPos": { + "h": 5, + "w": 8, + "x": 8, + "y": 14 + }, + "id": 24, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "citadel_server_csr_parsing_err_count{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "CSR Parse Error Count", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "CSR Parse Errors", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "The number of authentication failures.", + "fill": 1, + "gridPos": { + "h": 5, + "w": 8, + "x": 16, + "y": 14 + }, + "id": 26, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "citadel_server_authentication_failure_count{job=\"citadel\"}\t", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Authentication Failure Count", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Authentication Failures", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 19 + }, + "id": 4, + "panels": [], + "title": "Secret Controller", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "The number of certificates created due to service account creation.", + "fill": 1, + "gridPos": { + "h": 5, + "w": 8, + "x": 0, + "y": 20 + }, + "id": 2, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": true, + "targets": [ + { + "expr": "citadel_secret_controller_svc_acc_created_cert_count{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "SA Secrets Created", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Service Account Secrets Created (due to SA creation)", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "decimals": null, + "format": "short", + "label": "Certs Created", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "The number of certificates deleted due to service account deletion.", + "fill": 1, + "gridPos": { + "h": 5, + "w": 8, + "x": 8, + "y": 20 + }, + "id": 16, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": true, + "targets": [ + { + "expr": "citadel_secret_controller_svc_acc_deleted_cert_count{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "SA Secrets Deleted", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Service Account Secrets Deleted (due to SA deletion)", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "decimals": null, + "format": "short", + "label": "Certs Created", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "The number of certificates recreated due to secret deletion (service account still exists).", + "fill": 1, + "gridPos": { + "h": 5, + "w": 8, + "x": 16, + "y": 20 + }, + "id": 6, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": true, + "targets": [ + { + "expr": "citadel_secret_controller_secret_deleted_cert_count{job=\"citadel\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "SA Secrets Recreated", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Service Account Secrets Recreated (due to errant deletion)", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "decimals": null, + "format": "short", + "label": "Certs Created", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "refresh": "5s", + "schemaVersion": 18, + "style": "dark", + "tags": [], + "templating": { + "list": [] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "", + "title": "Istio Citadel Dashboard", + "uid": "OOyOqb4Wz", + "version": 1 +}`) + +func chartsIstioTelemetryGrafanaDashboardsCitadelDashboardJsonBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaDashboardsCitadelDashboardJson, nil +} + +func chartsIstioTelemetryGrafanaDashboardsCitadelDashboardJson() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaDashboardsCitadelDashboardJsonBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/dashboards/citadel-dashboard.json", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaDashboardsGalleyDashboardJson = []byte(`{ + "__inputs": [ + { + "name": "DS_PROMETHEUS", + "label": "Prometheus", + "description": "", + "type": "datasource", + "pluginId": "prometheus", + "pluginName": "Prometheus" + } + ], + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": false, + "gnetId": null, + "graphTooltip": 0, + "links": [], + "panels": [ + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 5, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 46, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(istio_build{component=\"galley\"}) by (tag)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ tag }}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Galley Versions", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 5 + }, + "id": 40, + "panels": [], + "title": "Resource Usage", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 8, + "w": 6, + "x": 0, + "y": 6 + }, + "id": 36, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_virtual_memory_bytes{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Virtual Memory", + "refId": "A" + }, + { + "expr": "process_resident_memory_bytes{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Resident Memory", + "refId": "B" + }, + { + "expr": "go_memstats_heap_sys_bytes{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "heap sys", + "refId": "C" + }, + { + "expr": "go_memstats_heap_alloc_bytes{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "heap alloc", + "refId": "D" + }, + { + "expr": "go_memstats_alloc_bytes{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Alloc", + "refId": "F" + }, + { + "expr": "go_memstats_heap_inuse_bytes{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Heap in-use", + "refId": "G" + }, + { + "expr": "go_memstats_stack_inuse_bytes{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Stack in-use", + "refId": "H" + }, + { + "expr": "sum(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",container_name=~\"galley\", pod_name=~\"istio-galley-.*\"})", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Total (kis)", + "refId": "E" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Memory", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 8, + "w": 6, + "x": 6, + "y": 6 + }, + "id": 38, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}[1m]))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Total (k8s)", + "refId": "A" + }, + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}[1m])) by (container_name)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ container_name }} (k8s)", + "refId": "B" + }, + { + "expr": "irate(process_cpu_seconds_total{job=\"galley\"}[1m])", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "galley (self-reported)", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "CPU", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 8, + "w": 6, + "x": 12, + "y": 6 + }, + "id": 42, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_open_fds{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Open FDs (galley)", + "refId": "A" + }, + { + "expr": "container_fs_usage_bytes{job=\"kubernetes-cadvisor\",container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ container_name }} ", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Disk", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 8, + "w": 6, + "x": 18, + "y": 6 + }, + "id": 44, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "go_goroutines{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "goroutines_total", + "refId": "A" + }, + { + "expr": "galley_mcp_source_clients_total", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "clients_total", + "refId": "B" + }, + { + "expr": "go_goroutines{job=\"galley\"}/galley_mcp_source_clients_total", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "avg_goroutines_per_client", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Goroutines", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 14 + }, + "id": 10, + "panels": [], + "title": "Runtime", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 15 + }, + "id": 2, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(galley_runtime_strategy_on_change_total[1m])) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Strategy Change Events", + "refId": "A" + }, + { + "expr": "sum(rate(galley_runtime_processor_events_processed_total[1m])) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Processed Events", + "refId": "B" + }, + { + "expr": "sum(rate(galley_runtime_processor_snapshots_published_total[1m])) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Snapshot Published", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Event Rates", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "Events/min", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 15 + }, + "id": 4, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(galley_runtime_strategy_timer_max_time_reached_total[1m])) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Max Time Reached", + "refId": "A" + }, + { + "expr": "sum(rate(galley_runtime_strategy_timer_quiesce_reached_total[1m])) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Quiesce Reached", + "refId": "B" + }, + { + "expr": "sum(rate(galley_runtime_strategy_timer_resets_total[1m])) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Timer Resets", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Timer Rates", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "Events/min", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 15 + }, + "id": 8, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 3, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": true, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "P50", + "refId": "A" + }, + { + "expr": "histogram_quantile(0.90, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "P90", + "refId": "B" + }, + { + "expr": "histogram_quantile(0.95, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "P95", + "refId": "C" + }, + { + "expr": "histogram_quantile(0.99, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "P99", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Events Per Snapshot", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 21 + }, + "id": 6, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum by (typeURL) (galley_runtime_state_type_instances_total)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ typeURL }}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "State Type Instances", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "Count", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 27 + }, + "id": 34, + "panels": [], + "title": "Validation", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 28 + }, + "id": 28, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "galley_validation_cert_key_updates{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Key Updates", + "refId": "A" + }, + { + "expr": "galley_validation_cert_key_update_errors{job=\"galley\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Key Update Errors: {{ error }}", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Validation Webhook Certificate", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 28 + }, + "id": 30, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(galley_validation_passed{job=\"galley\"}) by (group, version, resource)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Passed: {{ group }}/{{ version }}/{{resource}}", + "refId": "A" + }, + { + "expr": "sum(galley_validation_failed{job=\"galley\"}) by (group, version, resource, reason)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Failed: {{ group }}/{{ version }}/{{resource}} ({{ reason}})", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Resource Validation", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 28 + }, + "id": 32, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(galley_validation_http_error{job=\"galley\"}) by (status)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ status }}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Validation HTTP Errors", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 34 + }, + "id": 12, + "panels": [], + "title": "Kubernetes Source", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 35 + }, + "id": 14, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "rate(galley_source_kube_event_success_total[1m]) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Success", + "refId": "A" + }, + { + "expr": "rate(galley_source_kube_event_error_total[1m]) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Error", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Source Event Rate", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "Events/min", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 35 + }, + "id": 16, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "rate(galley_source_kube_dynamic_converter_success_total[1m]) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{apiVersion=\"{{apiVersion}}\",group=\"{{group}}\",kind=\"{{kind}}\"}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Kubernetes Object Conversion Successes", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "Conversions/min", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 35 + }, + "id": 24, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "rate(galley_source_kube_dynamic_converter_failure_total[1m]) * 60", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Error", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Kubernetes Object Conversion Failures", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "Failures/min", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 41 + }, + "id": 18, + "panels": [], + "title": "Mesh Configuration Protocol", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 42 + }, + "id": 20, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(galley_mcp_source_clients_total)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Clients", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Connected Clients", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 42 + }, + "id": 22, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum by(collection)(irate(galley_mcp_source_request_acks_total[1m]) * 60)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Request ACKs", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "ACKs/min", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 42 + }, + "id": 26, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "rate(galley_mcp_source_request_nacks_total[1m]) * 60", + "format": "time_series", + "intervalFactor": 1, + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Request NACKs", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "NACKs/min", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "refresh": "5s", + "schemaVersion": 16, + "style": "dark", + "tags": [], + "templating": { + "list": [] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "", + "title": "Istio Galley Dashboard", + "uid": "TSEY6jLmk", + "version": 1 +} +`) + +func chartsIstioTelemetryGrafanaDashboardsGalleyDashboardJsonBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaDashboardsGalleyDashboardJson, nil +} + +func chartsIstioTelemetryGrafanaDashboardsGalleyDashboardJson() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaDashboardsGalleyDashboardJsonBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/dashboards/galley-dashboard.json", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaDashboardsIstioMeshDashboardJson = []byte(`{ + "__inputs": [ + { + "name": "DS_PROMETHEUS", + "label": "Prometheus", + "description": "", + "type": "datasource", + "pluginId": "prometheus", + "pluginName": "Prometheus" + } + ], + "__requires": [ + { + "type": "grafana", + "id": "grafana", + "name": "Grafana", + "version": "5.2.3" + }, + { + "type": "panel", + "id": "graph", + "name": "Graph", + "version": "5.0.0" + }, + { + "type": "datasource", + "id": "prometheus", + "name": "Prometheus", + "version": "5.0.0" + }, + { + "type": "panel", + "id": "singlestat", + "name": "Singlestat", + "version": "5.0.0" + }, + { + "type": "panel", + "id": "table", + "name": "Table", + "version": "5.0.0" + }, + { + "type": "panel", + "id": "text", + "name": "Text", + "version": "5.0.0" + } + ], + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": false, + "gnetId": null, + "graphTooltip": 0, + "id": null, + "links": [], + "panels": [ + { + "content": "
\n
\n Istio\n
\n
\n Istio is an open platform that provides a uniform way to connect,\n manage, and \n secure microservices.\n
\n Need help? Join the Istio community.\n
\n
", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 0 + }, + "height": "50px", + "id": 13, + "links": [], + "mode": "html", + "style": { + "font-size": "18pt" + }, + "title": "", + "transparent": true, + "type": "text" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": "Prometheus", + "format": "ops", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 3, + "w": 6, + "x": 0, + "y": 3 + }, + "id": 20, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\"}[1m])), 0.001)", + "intervalFactor": 1, + "refId": "A", + "step": 4 + } + ], + "thresholds": "", + "title": "Global Request Volume", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": "Prometheus", + "format": "percentunit", + "gauge": { + "maxValue": 100, + "minValue": 80, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": false + }, + "gridPos": { + "h": 3, + "w": 6, + "x": 6, + "y": 3 + }, + "id": 21, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(rate(istio_requests_total{reporter=\"destination\", response_code!~\"5.*\"}[1m])) / sum(rate(istio_requests_total{reporter=\"destination\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "refId": "A", + "step": 4 + } + ], + "thresholds": "95, 99, 99.5", + "title": "Global Success Rate (non-5xx responses)", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": "Prometheus", + "format": "ops", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 3, + "w": 6, + "x": 12, + "y": 3 + }, + "id": 22, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"destination\", response_code=~\"4.*\"}[1m])) ", + "format": "time_series", + "intervalFactor": 1, + "refId": "A", + "step": 4 + } + ], + "thresholds": "", + "title": "4xxs", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": "Prometheus", + "format": "ops", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 3, + "w": 6, + "x": 18, + "y": 3 + }, + "id": 23, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"destination\", response_code=~\"5.*\"}[1m])) ", + "format": "time_series", + "intervalFactor": 1, + "refId": "A", + "step": 4 + } + ], + "thresholds": "", + "title": "5xxs", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "columns": [], + "datasource": "Prometheus", + "fontSize": "100%", + "gridPos": { + "h": 21, + "w": 24, + "x": 0, + "y": 6 + }, + "hideTimeOverride": false, + "id": 73, + "links": [], + "pageSize": null, + "repeat": null, + "repeatDirection": "v", + "scroll": true, + "showHeader": true, + "sort": { + "col": 4, + "desc": true + }, + "styles": [ + { + "alias": "Workload", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "link": false, + "linkTargetBlank": false, + "linkTooltip": "Workload dashboard", + "linkUrl": "/dashboard/db/istio-workload-dashboard?var-namespace=$__cell_2&var-workload=$__cell_", + "pattern": "destination_workload", + "preserveFormat": false, + "sanitize": false, + "thresholds": [], + "type": "hidden", + "unit": "short" + }, + { + "alias": "", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Time", + "thresholds": [], + "type": "hidden", + "unit": "short" + }, + { + "alias": "Requests", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Value #A", + "thresholds": [], + "type": "number", + "unit": "ops" + }, + { + "alias": "P50 Latency", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Value #B", + "thresholds": [], + "type": "number", + "unit": "s" + }, + { + "alias": "P90 Latency", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Value #D", + "thresholds": [], + "type": "number", + "unit": "s" + }, + { + "alias": "P99 Latency", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Value #E", + "thresholds": [], + "type": "number", + "unit": "s" + }, + { + "alias": "Success Rate", + "colorMode": "cell", + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Value #F", + "thresholds": [ + ".95", + " 1.00" + ], + "type": "number", + "unit": "percentunit" + }, + { + "alias": "Workload", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "link": true, + "linkTooltip": "$__cell dashboard", + "linkUrl": "/dashboard/db/istio-workload-dashboard?var-workload=$__cell_2&var-namespace=$__cell_3", + "pattern": "destination_workload_var", + "thresholds": [], + "type": "number", + "unit": "short" + }, + { + "alias": "Service", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "link": true, + "linkTooltip": "$__cell dashboard", + "linkUrl": "/dashboard/db/istio-service-dashboard?var-service=$__cell", + "pattern": "destination_service", + "thresholds": [], + "type": "string", + "unit": "short" + }, + { + "alias": "", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "destination_workload_namespace", + "thresholds": [], + "type": "hidden", + "unit": "short" + } + ], + "targets": [ + { + "expr": "label_join(sum(rate(istio_requests_total{reporter=\"destination\", response_code=\"200\"}[1m])) by (destination_workload, destination_workload_namespace, destination_service), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")", + "format": "table", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload}}.{{ destination_workload_namespace }}", + "refId": "A" + }, + { + "expr": "label_join(histogram_quantile(0.50, sum(rate(istio_request_duration_seconds_bucket{reporter=\"destination\"}[1m])) by (le, destination_workload, destination_workload_namespace)), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")", + "format": "table", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload}}.{{ destination_workload_namespace }}", + "refId": "B" + }, + { + "expr": "label_join(histogram_quantile(0.90, sum(rate(istio_request_duration_seconds_bucket{reporter=\"destination\"}[1m])) by (le, destination_workload, destination_workload_namespace)), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")", + "format": "table", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}", + "refId": "D" + }, + { + "expr": "label_join(histogram_quantile(0.99, sum(rate(istio_request_duration_seconds_bucket{reporter=\"destination\"}[1m])) by (le, destination_workload, destination_workload_namespace)), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")", + "format": "table", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}", + "refId": "E" + }, + { + "expr": "label_join((sum(rate(istio_requests_total{reporter=\"destination\", response_code!~\"5.*\"}[1m])) by (destination_workload, destination_workload_namespace) / sum(rate(istio_requests_total{reporter=\"destination\"}[1m])) by (destination_workload, destination_workload_namespace)), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")", + "format": "table", + "hide": false, + "instant": true, + "interval": "", + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}", + "refId": "F" + } + ], + "timeFrom": null, + "title": "HTTP/GRPC Workloads", + "transform": "table", + "transparent": false, + "type": "table" + }, + { + "columns": [], + "datasource": "Prometheus", + "fontSize": "100%", + "gridPos": { + "h": 18, + "w": 24, + "x": 0, + "y": 27 + }, + "hideTimeOverride": false, + "id": 109, + "links": [], + "pageSize": null, + "repeatDirection": "v", + "scroll": true, + "showHeader": true, + "sort": { + "col": 2, + "desc": true + }, + "styles": [ + { + "alias": "Workload", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "link": false, + "linkTargetBlank": false, + "linkTooltip": "$__cell dashboard", + "linkUrl": "/dashboard/db/istio-tcp-workload-dashboard?var-namespace=$__cell_2&&var-workload=$__cell", + "pattern": "destination_workload", + "preserveFormat": false, + "sanitize": false, + "thresholds": [], + "type": "hidden", + "unit": "short" + }, + { + "alias": "Bytes Sent", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Value #A", + "thresholds": [ + "" + ], + "type": "number", + "unit": "Bps" + }, + { + "alias": "Bytes Received", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Value #C", + "thresholds": [], + "type": "number", + "unit": "Bps" + }, + { + "alias": "", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "Time", + "thresholds": [], + "type": "hidden", + "unit": "short" + }, + { + "alias": "Workload", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "link": true, + "linkTooltip": "$__cell dashboard", + "linkUrl": "/dashboard/db/istio-workload-dashboard?var-namespace=$__cell_3&var-workload=$__cell_2", + "pattern": "destination_workload_var", + "thresholds": [], + "type": "string", + "unit": "short" + }, + { + "alias": "", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "pattern": "destination_workload_namespace", + "thresholds": [], + "type": "hidden", + "unit": "short" + }, + { + "alias": "Service", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "link": true, + "linkTooltip": "$__cell dashboard", + "linkUrl": "/dashboard/db/istio-service-dashboard?var-service=$__cell", + "pattern": "destination_service", + "thresholds": [], + "type": "number", + "unit": "short" + } + ], + "targets": [ + { + "expr": "label_join(sum(rate(istio_tcp_received_bytes_total{reporter=\"source\"}[1m])) by (destination_workload, destination_workload_namespace, destination_service), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")", + "format": "table", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}", + "refId": "C" + }, + { + "expr": "label_join(sum(rate(istio_tcp_sent_bytes_total{reporter=\"source\"}[1m])) by (destination_workload, destination_workload_namespace, destination_service), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")", + "format": "table", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}", + "refId": "A" + } + ], + "timeFrom": null, + "title": "TCP Workloads", + "transform": "table", + "transparent": false, + "type": "table" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 9, + "w": 24, + "x": 0, + "y": 45 + }, + "id": 111, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(istio_build) by (component, tag)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ component }}: {{ tag }}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Istio Components by Version", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "transparent": false, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "refresh": "5s", + "schemaVersion": 16, + "style": "dark", + "tags": [], + "templating": { + "list": [] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "browser", + "title": "Istio Mesh Dashboard", + "version": 4 +} +`) + +func chartsIstioTelemetryGrafanaDashboardsIstioMeshDashboardJsonBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaDashboardsIstioMeshDashboardJson, nil +} + +func chartsIstioTelemetryGrafanaDashboardsIstioMeshDashboardJson() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaDashboardsIstioMeshDashboardJsonBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/dashboards/istio-mesh-dashboard.json", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaDashboardsIstioPerformanceDashboardJson = []byte(`{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": false, + "gnetId": null, + "graphTooltip": 0, + "id": 9, + "links": [], + "panels": [ + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 21, + "panels": [ + { + "content": "The charts on this dashboard are intended to show Istio main components cost in terms resources utilization under steady load.\n\n- **vCPU/1k rps:** shows vCPU utilization by the main Istio components normalized by 1000 requests/second. When idle or low traffic, this chart will be blank. The curve for istio-proxy refers to the services sidecars only.\n- **vCPU:** vCPU utilization by Istio components, not normalized.\n- **Memory:** memory footprint for the components. Telemetry and policy are normalized by 1k rps, and no data is shown when there is no traffic. For ingress and istio-proxy, the data is per instance.\n- **Bytes transferred/ sec:** shows the number of bytes flowing through each Istio component.\n\n\n", + "gridPos": { + "h": 6, + "w": 24, + "x": 0, + "y": 1 + }, + "id": 19, + "links": [], + "mode": "markdown", + "timeFrom": null, + "timeShift": null, + "title": "Performance Dashboard README", + "transparent": true, + "type": "text" + } + ], + "title": "Performance Dashboard Notes", + "type": "row" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 1 + }, + "id": 6, + "panels": [], + "title": "vCPU Usage", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "fill": 1, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 2 + }, + "id": 4, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "(sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-telemetry-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))/ (round(sum(irate(istio_requests_total[1m])), 0.001)/1000))/ (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "istio-telemetry", + "refId": "A" + }, + { + "expr": "(sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-ingressgateway-.*\",container_name=\"istio-proxy\"}[1m])) / (round(sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\", reporter=\"source\"}[1m])), 0.001)/1000))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "istio-ingressgateway", + "refId": "B" + }, + { + "expr": "(sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",namespace!=\"istio-system\",container_name=\"istio-proxy\"}[1m]))/ (round(sum(irate(istio_requests_total[1m])), 0.001)/1000))/ (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-proxy", + "refId": "C" + }, + { + "expr": "(sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-policy-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))/ (round(sum(irate(istio_requests_total[1m])), 0.001)/1000))/ (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-policy", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "vCPU / 1k rps", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "fill": 1, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 2 + }, + "id": 7, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-telemetry-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-telemetry", + "refId": "A" + }, + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-ingressgateway-.*\",container_name=\"istio-proxy\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-ingressgateway", + "refId": "B" + }, + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",namespace!=\"istio-system\",container_name=\"istio-proxy\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-proxy", + "refId": "C" + }, + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-policy-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-policy", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "vCPU", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 10 + }, + "id": 13, + "panels": [], + "title": "Memory and Data Rates", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "fill": 1, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 11 + }, + "id": 902, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "(sum(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",pod_name=~\"istio-telemetry-.*\"}) / (sum(irate(istio_requests_total[1m])) / 1000)) / (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-telemetry / 1k rps", + "refId": "A" + }, + { + "expr": "sum(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",pod_name=~\"istio-ingressgateway-.*\"}) / count(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",pod_name=~\"istio-ingressgateway-.*\",container_name!=\"POD\"})", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "per istio-ingressgateway", + "refId": "B" + }, + { + "expr": "sum(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",namespace!=\"istio-system\",container_name=\"istio-proxy\"}) / count(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",namespace!=\"istio-system\",container_name=\"istio-proxy\"})", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "per istio proxy", + "refId": "C" + }, + { + "expr": "(sum(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",pod_name=~\"istio-policy-.*\"}) / (sum(irate(istio_requests_total[1m])) / 1000))/ (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-policy / 1k rps", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Memory Usage", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "fill": 1, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 11 + }, + "id": 11, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(istio_response_bytes_sum{destination_workload=\"istio-telemetry\"}[1m])) + sum(irate(istio_request_bytes_sum{destination_workload=\"istio-telemetry\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-telemetry", + "refId": "A" + }, + { + "expr": "sum(irate(istio_response_bytes_sum{source_workload=\"istio-ingressgateway\", reporter=\"source\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-ingressgateway", + "refId": "B" + }, + { + "expr": "sum(irate(istio_response_bytes_sum{source_workload_namespace!=\"istio-system\", reporter=\"source\"}[1m])) + sum(irate(istio_response_bytes_sum{destination_workload_namespace!=\"istio-system\", reporter=\"destination\"}[1m])) + sum(irate(istio_request_bytes_sum{source_workload_namespace!=\"istio-system\", reporter=\"source\"}[1m])) + sum(irate(istio_request_bytes_sum{destination_workload_namespace!=\"istio-system\", reporter=\"destination\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio-proxy", + "refId": "C" + }, + { + "expr": "sum(irate(istio_response_bytes_sum{destination_workload=\"istio-policy\"}[1m])) + sum(irate(istio_request_bytes_sum{destination_workload=\"istio-policy\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "istio_policy", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Bytes transferred / sec", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 19 + }, + "id": 17, + "panels": [], + "title": "Istio Component Versions", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "fill": 1, + "gridPos": { + "h": 8, + "w": 24, + "x": 0, + "y": 20 + }, + "id": 15, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(istio_build) by (component, tag)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ component }}: {{ tag }}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Istio Components by Version", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 31 + }, + "id": 71, + "panels": [], + "title": "Proxy Resource Usage", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 0, + "y": 32 + }, + "id": 72, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",container_name=\"istio-proxy\"})", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ container_name }} (k8s)", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Memory", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 6, + "y": 32 + }, + "id": 73, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=\"istio-proxy\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Total (k8s)", + "refId": "A", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "vCPU", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 12, + "y": 32 + }, + "id": 702, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(container_fs_usage_bytes{job=\"kubernetes-cadvisor\", container_name=\"istio-proxy\"})", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ container_name }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Disk", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "decimals": null, + "format": "none", + "label": "", + "logBase": 1024, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 39 + }, + "id": 69, + "panels": [], + "title": "Pilot Resource Usage", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 0, + "y": 40 + }, + "id": 5, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_virtual_memory_bytes{job=\"pilot\"}", + "format": "time_series", + "instant": false, + "intervalFactor": 2, + "legendFormat": "Virtual Memory", + "refId": "I", + "step": 2 + }, + { + "expr": "process_resident_memory_bytes{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Resident Memory", + "refId": "H", + "step": 2 + }, + { + "expr": "go_memstats_heap_sys_bytes{job=\"pilot\"}", + "format": "time_series", + "hide": true, + "intervalFactor": 2, + "legendFormat": "heap sys", + "refId": "A" + }, + { + "expr": "go_memstats_heap_alloc_bytes{job=\"pilot\"}", + "format": "time_series", + "hide": true, + "intervalFactor": 2, + "legendFormat": "heap alloc", + "refId": "D" + }, + { + "expr": "go_memstats_alloc_bytes{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Alloc", + "refId": "F", + "step": 2 + }, + { + "expr": "go_memstats_heap_inuse_bytes{job=\"pilot\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Heap in-use", + "refId": "E", + "step": 2 + }, + { + "expr": "go_memstats_stack_inuse_bytes{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Stack in-use", + "refId": "G", + "step": 2 + }, + { + "expr": "sum(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"})", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Total (k8s)", + "refId": "C", + "step": 2 + }, + { + "expr": "container_memory_usage_bytes{job=\"kubernetes-cadvisor\",container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ container_name }} (k8s)", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Memory", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 6, + "y": 40 + }, + "id": 602, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Total (k8s)", + "refId": "A", + "step": 2 + }, + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m])) by (container_name)", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ container_name }} (k8s)", + "refId": "B", + "step": 2 + }, + { + "expr": "irate(process_cpu_seconds_total{job=\"pilot\"}[1m])", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "pilot (self-reported)", + "refId": "C", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "vCPU", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 12, + "y": 40 + }, + "id": 74, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_open_fds{job=\"pilot\"}", + "format": "time_series", + "hide": true, + "instant": false, + "interval": "", + "intervalFactor": 2, + "legendFormat": "Open FDs (pilot)", + "refId": "A" + }, + { + "expr": "container_fs_usage_bytes{job=\"kubernetes-cadvisor\", container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ container_name }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Disk", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "decimals": null, + "format": "none", + "label": "", + "logBase": 1024, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 18, + "y": 40 + }, + "id": 402, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "go_goroutines{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Number of Goroutines", + "refId": "A", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Goroutines", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 47 + }, + "id": 93, + "panels": [], + "title": "Mixer Resource Usage", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 0, + "y": 48 + }, + "id": 94, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_virtual_memory_bytes{job=~\"istio-telemetry|istio-policy\"}", + "format": "time_series", + "instant": false, + "intervalFactor": 2, + "legendFormat": "Virtual Memory", + "refId": "I", + "step": 2 + }, + { + "expr": "process_resident_memory_bytes{job=~\"istio-telemetry|istio-policy\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Resident Memory", + "refId": "H", + "step": 2 + }, + { + "expr": "go_memstats_heap_sys_bytes{job=~\"istio-telemetry|istio-policy\"}", + "format": "time_series", + "hide": true, + "intervalFactor": 2, + "legendFormat": "heap sys", + "refId": "A" + }, + { + "expr": "go_memstats_heap_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}", + "format": "time_series", + "hide": true, + "intervalFactor": 2, + "legendFormat": "heap alloc", + "refId": "D" + }, + { + "expr": "go_memstats_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Alloc", + "refId": "F", + "step": 2 + }, + { + "expr": "go_memstats_heap_inuse_bytes{job=~\"istio-telemetry|istio-policy\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Heap in-use", + "refId": "E", + "step": 2 + }, + { + "expr": "go_memstats_stack_inuse_bytes{job=~\"istio-policy|istio-telemetry\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Stack in-use", + "refId": "G", + "step": 2 + }, + { + "expr": "sum(container_memory_usage_bytes{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"})", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Total (k8s)", + "refId": "C", + "step": 2 + }, + { + "expr": "container_memory_usage_bytes{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ container_name }} (k8s)", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Memory", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 6, + "y": 48 + }, + "id": 95, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Total (k8s)", + "refId": "A", + "step": 2 + }, + { + "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"}[1m])) by (container_name)", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ container_name }} (k8s)", + "refId": "B", + "step": 2 + }, + { + "expr": "irate(process_cpu_seconds_total{job=~\"istio-policy|istio-telemetry\"}[1m])", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "mixer (self-reported)", + "refId": "C", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "vCPU", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 12, + "y": 48 + }, + "id": 96, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_open_fds{job=~\"istio-policy|istio-telemetry\"}", + "format": "time_series", + "hide": true, + "instant": false, + "interval": "", + "intervalFactor": 2, + "legendFormat": "Open FDs (pilot)", + "refId": "A" + }, + { + "expr": "container_fs_usage_bytes{job=\"kubernetes-cadvisor\", container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ container_name }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Disk", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "decimals": null, + "format": "none", + "label": "", + "logBase": 1024, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 18, + "y": 48 + }, + "id": 97, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "go_goroutines{job=\"istio-telemetry\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Number of Goroutines", + "refId": "A", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Goroutines", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "refresh": "10s", + "schemaVersion": 18, + "style": "dark", + "tags": [], + "templating": { + "list": [] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "", + "title": "Istio Performance Dashboard", + "uid": "vu8e0VWZk", + "version": 22 +} +`) + +func chartsIstioTelemetryGrafanaDashboardsIstioPerformanceDashboardJsonBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaDashboardsIstioPerformanceDashboardJson, nil +} + +func chartsIstioTelemetryGrafanaDashboardsIstioPerformanceDashboardJson() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaDashboardsIstioPerformanceDashboardJsonBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/dashboards/istio-performance-dashboard.json", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaDashboardsIstioServiceDashboardJson = []byte(`{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": false, + "gnetId": null, + "graphTooltip": 0, + "iteration": 1536442501501, + "links": [], + "panels": [ + { + "content": "
\nSERVICE: $service\n
", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 89, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": "Prometheus", + "format": "ops", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 4, + "w": 6, + "x": 0, + "y": 3 + }, + "id": 12, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "round(sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\"}[5m])), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "refId": "A", + "step": 4 + } + ], + "thresholds": "", + "title": "Client Request Volume", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "current" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(50, 172, 45, 0.97)", + "rgba(237, 129, 40, 0.89)", + "rgba(245, 54, 54, 0.9)" + ], + "datasource": "Prometheus", + "decimals": null, + "format": "percentunit", + "gauge": { + "maxValue": 100, + "minValue": 80, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": false + }, + "gridPos": { + "h": 4, + "w": 6, + "x": 6, + "y": 3 + }, + "id": 14, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\",response_code!~\"5.*\"}[5m])) / sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\"}[5m]))", + "format": "time_series", + "intervalFactor": 1, + "refId": "B" + } + ], + "thresholds": "95, 99, 99.5", + "title": "Client Success Rate (non-5xx responses)", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 4, + "w": 6, + "x": 12, + "y": 3 + }, + "id": 87, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": true, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "P50", + "refId": "A" + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "P90", + "refId": "B" + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "P99", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Client Request Duration", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "Prometheus", + "format": "Bps", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 4, + "w": 6, + "x": 18, + "y": 3 + }, + "id": 84, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", destination_service=~\"$service\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "", + "title": "TCP Received Bytes", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": "Prometheus", + "format": "ops", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 4, + "w": 6, + "x": 0, + "y": 7 + }, + "id": 97, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\"}[5m])), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "refId": "A", + "step": 4 + } + ], + "thresholds": "", + "title": "Server Request Volume", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "current" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(50, 172, 45, 0.97)", + "rgba(237, 129, 40, 0.89)", + "rgba(245, 54, 54, 0.9)" + ], + "datasource": "Prometheus", + "decimals": null, + "format": "percentunit", + "gauge": { + "maxValue": 100, + "minValue": 80, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": false + }, + "gridPos": { + "h": 4, + "w": 6, + "x": 6, + "y": 7 + }, + "id": 98, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\",response_code!~\"5.*\"}[5m])) / sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\"}[5m]))", + "format": "time_series", + "intervalFactor": 1, + "refId": "B" + } + ], + "thresholds": "95, 99, 99.5", + "title": "Server Success Rate (non-5xx responses)", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 4, + "w": 6, + "x": 12, + "y": 7 + }, + "id": 99, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": true, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "P50", + "refId": "A" + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "P90", + "refId": "B" + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "P99", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Server Request Duration", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "Prometheus", + "format": "Bps", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 4, + "w": 6, + "x": 18, + "y": 7 + }, + "id": 100, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"source\", destination_service=~\"$service\"}[1m])) ", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "", + "title": "TCP Sent Bytes", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "content": "
\nCLIENT WORKLOADS\n
", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 11 + }, + "id": 45, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 0, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 14 + }, + "id": 25, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\",destination_service=~\"$service\",reporter=\"source\",source_workload=~\"$srcwl\",source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }} (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", reporter=\"source\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }}", + "refId": "A", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Requests by Source And Response Code", + "tooltip": { + "shared": false, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ + "total" + ] + }, + "yaxes": [ + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 14 + }, + "id": 26, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Success Rate (non-5xx responses) By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "percentunit", + "label": null, + "logBase": 1, + "max": "1.01", + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "description": "", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 20 + }, + "id": 27, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Request Duration by Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 20 + }, + "id": 28, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Request Size By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "decbytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 20 + }, + "id": 68, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Response Size By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "decbytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 26 + }, + "id": 80, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Bytes Received from Incoming TCP Connection", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 26 + }, + "id": 82, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Bytes Sent to Incoming TCP Connection", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "content": "
\nSERVICE WORKLOADS\n
", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 32 + }, + "id": 69, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 0, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 35 + }, + "id": 90, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\",destination_service=~\"$service\",reporter=\"destination\",destination_workload=~\"$dstwl\",destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace, response_code), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} : {{ response_code }} (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", reporter=\"destination\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace, response_code), 0.001)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} : {{ response_code }}", + "refId": "A", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Requests by Destination And Response Code", + "tooltip": { + "shared": false, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ + "total" + ] + }, + "yaxes": [ + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 35 + }, + "id": 91, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace) / sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace) / sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Success Rate (non-5xx responses) By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "percentunit", + "label": null, + "logBase": 1, + "max": "1.01", + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "description": "", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 41 + }, + "id": 94, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Request Duration by Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 41 + }, + "id": 95, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Request Size By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "decbytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 41 + }, + "id": 96, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Response Size By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "decbytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 47 + }, + "id": 92, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace}} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace}}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Bytes Received from Incoming TCP Connection", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 47 + }, + "id": 93, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{destination_workload_namespace }} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_workload }}.{{destination_workload_namespace }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Bytes Sent to Incoming TCP Connection", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "refresh": "10s", + "schemaVersion": 16, + "style": "dark", + "tags": [], + "templating": { + "list": [ + { + "allValue": null, + "datasource": "Prometheus", + "hide": 0, + "includeAll": false, + "label": "Service", + "multi": false, + "name": "service", + "options": [], + "query": "label_values(destination_service)", + "refresh": 1, + "regex": "", + "sort": 0, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": { + "text": "All", + "value": "$__all" + }, + "datasource": "Prometheus", + "hide": 0, + "includeAll": true, + "label": "Client Workload Namespace", + "multi": true, + "name": "srcns", + "options": [], + "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=\"$service\"}) by (source_workload_namespace) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\"}) by (source_workload_namespace))", + "refresh": 1, + "regex": "/.*namespace=\"([^\"]*).*/", + "sort": 2, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": { + "text": "All", + "value": "$__all" + }, + "datasource": "Prometheus", + "hide": 0, + "includeAll": true, + "label": "Client Workload", + "multi": true, + "name": "srcwl", + "options": [], + "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=~\"$service\", source_workload_namespace=~\"$srcns\"}) by (source_workload) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\", source_workload_namespace=~\"$srcns\"}) by (source_workload))", + "refresh": 1, + "regex": "/.*workload=\"([^\"]*).*/", + "sort": 3, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": { + "text": "All", + "value": "$__all" + }, + "datasource": "Prometheus", + "hide": 0, + "includeAll": true, + "label": "Service Workload Namespace", + "multi": true, + "name": "dstns", + "options": [], + "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=\"$service\"}) by (destination_workload_namespace) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\"}) by (destination_workload_namespace))", + "refresh": 1, + "regex": "/.*namespace=\"([^\"]*).*/", + "sort": 2, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": { + "text": "All", + "value": "$__all" + }, + "datasource": "Prometheus", + "hide": 0, + "includeAll": true, + "label": "Service Workload", + "multi": true, + "name": "dstwl", + "options": [], + "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=~\"$service\", destination_workload_namespace=~\"$dstns\"}) by (destination_workload) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\", destination_workload_namespace=~\"$dstns\"}) by (destination_workload))", + "refresh": 1, + "regex": "/.*workload=\"([^\"]*).*/", + "sort": 3, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + } + ] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "", + "title": "Istio Service Dashboard", + "uid": "LJ_uJAvmk", + "version": 1 +} +`) + +func chartsIstioTelemetryGrafanaDashboardsIstioServiceDashboardJsonBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaDashboardsIstioServiceDashboardJson, nil +} + +func chartsIstioTelemetryGrafanaDashboardsIstioServiceDashboardJson() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaDashboardsIstioServiceDashboardJsonBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/dashboards/istio-service-dashboard.json", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaDashboardsIstioWorkloadDashboardJson = []byte(`{ + "__inputs": [ + { + "name": "DS_PROMETHEUS", + "label": "Prometheus", + "description": "", + "type": "datasource", + "pluginId": "prometheus", + "pluginName": "Prometheus" + } + ], + "__requires": [ + { + "type": "grafana", + "id": "grafana", + "name": "Grafana", + "version": "5.0.4" + }, + { + "type": "panel", + "id": "graph", + "name": "Graph", + "version": "5.0.0" + }, + { + "type": "datasource", + "id": "prometheus", + "name": "Prometheus", + "version": "5.0.0" + }, + { + "type": "panel", + "id": "singlestat", + "name": "Singlestat", + "version": "5.0.0" + }, + { + "type": "panel", + "id": "text", + "name": "Text", + "version": "5.0.0" + } + ], + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": false, + "gnetId": null, + "graphTooltip": 0, + "id": null, + "iteration": 1531345461465, + "links": [], + "panels": [ + { + "content": "
\nWORKLOAD: $workload.$namespace\n
", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 89, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "datasource": "Prometheus", + "format": "ops", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 4, + "w": 8, + "x": 0, + "y": 3 + }, + "id": 12, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\",destination_workload_namespace=~\"$namespace\",destination_workload=~\"$workload\"}[5m])), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "refId": "A", + "step": 4 + } + ], + "thresholds": "", + "title": "Incoming Request Volume", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "current" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "rgba(50, 172, 45, 0.97)", + "rgba(237, 129, 40, 0.89)", + "rgba(245, 54, 54, 0.9)" + ], + "datasource": "Prometheus", + "decimals": null, + "format": "percentunit", + "gauge": { + "maxValue": 100, + "minValue": 80, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": false + }, + "gridPos": { + "h": 4, + "w": 8, + "x": 8, + "y": 3 + }, + "id": 14, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"destination\",destination_workload_namespace=~\"$namespace\",destination_workload=~\"$workload\",response_code!~\"5.*\"}[5m])) / sum(irate(istio_requests_total{reporter=\"destination\",destination_workload_namespace=~\"$namespace\",destination_workload=~\"$workload\"}[5m]))", + "format": "time_series", + "intervalFactor": 1, + "refId": "B" + } + ], + "thresholds": "95, 99, 99.5", + "title": "Incoming Success Rate (non-5xx responses)", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 4, + "w": 8, + "x": 16, + "y": 3 + }, + "id": 87, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "rightSide": true, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))", + "format": "time_series", + "interval": "", + "intervalFactor": 1, + "legendFormat": "P50", + "refId": "A" + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "P90", + "refId": "B" + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "P99", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Request Duration", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "Prometheus", + "format": "Bps", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 4, + "w": 12, + "x": 0, + "y": 7 + }, + "id": 84, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\"}[1m])) + sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "", + "title": "TCP Server Traffic", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "cacheTimeout": null, + "colorBackground": false, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "#d44a3a" + ], + "datasource": "Prometheus", + "format": "Bps", + "gauge": { + "maxValue": 100, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 4, + "w": 12, + "x": 12, + "y": 7 + }, + "id": 85, + "interval": null, + "links": [], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": true, + "lineColor": "rgb(31, 120, 193)", + "show": true + }, + "tableColumn": "", + "targets": [ + { + "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"source\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\"}[1m])) + sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "", + "refId": "A" + } + ], + "thresholds": "", + "title": "TCP Client Traffic", + "transparent": false, + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "avg" + }, + { + "content": "
\nINBOUND WORKLOADS\n
", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 11 + }, + "id": 45, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 0, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 14 + }, + "id": 25, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", reporter=\"destination\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }} (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", reporter=\"destination\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }}", + "refId": "A", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Requests by Source And Response Code", + "tooltip": { + "shared": false, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ + "total" + ] + }, + "yaxes": [ + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 14 + }, + "id": 26, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Success Rate (non-5xx responses) By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "percentunit", + "label": null, + "logBase": 1, + "max": "1.01", + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "description": "", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 20 + }, + "id": 27, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Request Duration by Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 20 + }, + "id": 28, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Request Size By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "decbytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 20 + }, + "id": 68, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Response Size By Source", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "decbytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 26 + }, + "id": 80, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Bytes Received from Incoming TCP Connection", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 26 + }, + "id": 82, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"destination\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"destination\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Bytes Sent to Incoming TCP Connection", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ] + }, + { + "content": "
\nOUTBOUND SERVICES\n
", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 32 + }, + "id": 69, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 0, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 35 + }, + "id": 70, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", reporter=\"source\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service, response_code), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} : {{ response_code }} (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", reporter=\"source\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service, response_code), 0.001)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} : {{ response_code }}", + "refId": "A", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Outgoing Requests by Destination And Response Code", + "tooltip": { + "shared": false, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ + "total" + ] + }, + "yaxes": [ + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 35 + }, + "id": 71, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\",response_code!~\"5.*\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service) / sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\",response_code!~\"5.*\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service) / sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{destination_service }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Outgoing Success Rate (non-5xx responses) By Destination", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "percentunit", + "label": null, + "logBase": 1, + "max": "1.01", + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "description": "", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 0, + "y": 41 + }, + "id": 72, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": false, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Outgoing Request Duration by Destination", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 8, + "y": 41 + }, + "id": 73, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Outgoing Request Size By Destination", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "decbytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 41 + }, + "id": 74, + "legend": { + "alignAsTable": false, + "avg": false, + "current": false, + "hideEmpty": true, + "max": false, + "min": false, + "rightSide": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P50 (🔐mTLS)", + "refId": "D", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P90 (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P95 (🔐mTLS)", + "refId": "B", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P99 (🔐mTLS)", + "refId": "C", + "step": 2 + }, + { + "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P50", + "refId": "E", + "step": 2 + }, + { + "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P90", + "refId": "F", + "step": 2 + }, + { + "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P95", + "refId": "G", + "step": 2 + }, + { + "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} P99", + "refId": "H", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Response Size By Destination", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "decbytes", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 0, + "y": 47 + }, + "id": 76, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"source\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"source\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_service }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Bytes Sent on Outgoing TCP Connection", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ] + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 12, + "x": 12, + "y": 47 + }, + "id": 78, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_service }} (🔐mTLS)", + "refId": "A", + "step": 2 + }, + { + "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service), 0.001)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ destination_service }}", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Bytes Received from Outgoing TCP Connection", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ] + } + ], + "refresh": "10s", + "schemaVersion": 16, + "style": "dark", + "tags": [], + "templating": { + "list": [ + { + "allValue": null, + "current": {}, + "datasource": "Prometheus", + "hide": 0, + "includeAll": false, + "label": "Namespace", + "multi": false, + "name": "namespace", + "options": [], + "query": "query_result(sum(istio_requests_total) by (destination_workload_namespace) or sum(istio_tcp_sent_bytes_total) by (destination_workload_namespace))", + "refresh": 1, + "regex": "/.*_namespace=\"([^\"]*).*/", + "sort": 0, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": {}, + "datasource": "Prometheus", + "hide": 0, + "includeAll": false, + "label": "Workload", + "multi": false, + "name": "workload", + "options": [], + "query": "query_result((sum(istio_requests_total{destination_workload_namespace=~\"$namespace\"}) by (destination_workload) or sum(istio_requests_total{source_workload_namespace=~\"$namespace\"}) by (source_workload)) or (sum(istio_tcp_sent_bytes_total{destination_workload_namespace=~\"$namespace\"}) by (destination_workload) or sum(istio_tcp_sent_bytes_total{source_workload_namespace=~\"$namespace\"}) by (source_workload)))", + "refresh": 1, + "regex": "/.*workload=\"([^\"]*).*/", + "sort": 1, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": {}, + "datasource": "Prometheus", + "hide": 0, + "includeAll": true, + "label": "Inbound Workload Namespace", + "multi": true, + "name": "srcns", + "options": [], + "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_workload=\"$workload\", destination_workload_namespace=~\"$namespace\"}) by (source_workload_namespace) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_workload=\"$workload\", destination_workload_namespace=~\"$namespace\"}) by (source_workload_namespace))", + "refresh": 1, + "regex": "/.*namespace=\"([^\"]*).*/", + "sort": 2, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": {}, + "datasource": "Prometheus", + "hide": 0, + "includeAll": true, + "label": "Inbound Workload", + "multi": true, + "name": "srcwl", + "options": [], + "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_workload=\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload_namespace=~\"$srcns\"}) by (source_workload) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_workload=\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload_namespace=~\"$srcns\"}) by (source_workload))", + "refresh": 1, + "regex": "/.*workload=\"([^\"]*).*/", + "sort": 3, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": null, + "current": {}, + "datasource": "Prometheus", + "hide": 0, + "includeAll": true, + "label": "Destination Service", + "multi": true, + "name": "dstsvc", + "options": [], + "query": "query_result( sum(istio_requests_total{reporter=\"source\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\"}) by (destination_service) or sum(istio_tcp_sent_bytes_total{reporter=\"source\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\"}) by (destination_service))", + "refresh": 1, + "regex": "/.*destination_service=\"([^\"]*).*/", + "sort": 4, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + } + ] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "", + "title": "Istio Workload Dashboard", + "uid": "UbsSZTDik", + "version": 1 +} +`) + +func chartsIstioTelemetryGrafanaDashboardsIstioWorkloadDashboardJsonBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaDashboardsIstioWorkloadDashboardJson, nil +} + +func chartsIstioTelemetryGrafanaDashboardsIstioWorkloadDashboardJson() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaDashboardsIstioWorkloadDashboardJsonBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/dashboards/istio-workload-dashboard.json", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaDashboardsMixerDashboardJson = []byte(`{ + "__inputs": [ + { + "name": "DS_PROMETHEUS", + "label": "Prometheus", + "description": "", + "type": "datasource", + "pluginId": "prometheus", + "pluginName": "Prometheus" + } + ], + "__requires": [ + { + "type": "grafana", + "id": "grafana", + "name": "Grafana", + "version": "5.2.3" + }, + { + "type": "panel", + "id": "graph", + "name": "Graph", + "version": "5.0.0" + }, + { + "type": "datasource", + "id": "prometheus", + "name": "Prometheus", + "version": "5.0.0" + }, + { + "type": "panel", + "id": "text", + "name": "Text", + "version": "5.0.0" + } + ], + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "limit": 100, + "name": "Annotations & Alerts", + "showIn": 0, + "type": "dashboard" + } + ] + }, + "editable": false, + "gnetId": null, + "graphTooltip": 1, + "id": null, + "iteration": 1543881232533, + "links": [], + "panels": [ + { + "content": "

Deployed Versions

", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 0 + }, + "height": "40", + "id": 62, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 5, + "w": 24, + "x": 0, + "y": 3 + }, + "id": 64, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(istio_build{component=\"mixer\"}) by (tag)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ tag }}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Mixer Versions", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "content": "

Resource Usage

", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 8 + }, + "height": "40", + "id": 29, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 0, + "y": 11 + }, + "id": 5, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(process_virtual_memory_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "instant": false, + "intervalFactor": 2, + "legendFormat": "Virtual Memory ({{ job }})", + "refId": "I" + }, + { + "expr": "sum(process_resident_memory_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Resident Memory ({{ job }})", + "refId": "H" + }, + { + "expr": "sum(go_memstats_heap_sys_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "hide": true, + "intervalFactor": 2, + "legendFormat": "heap sys ({{ job }})", + "refId": "A" + }, + { + "expr": "sum(go_memstats_heap_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "hide": true, + "intervalFactor": 2, + "legendFormat": "heap alloc ({{ job }})", + "refId": "D" + }, + { + "expr": "sum(go_memstats_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Alloc ({{ job }})", + "refId": "F" + }, + { + "expr": "sum(go_memstats_heap_inuse_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Heap in-use ({{ job }})", + "refId": "E" + }, + { + "expr": "sum(go_memstats_stack_inuse_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Stack in-use ({{ job }})", + "refId": "G" + }, + { + "expr": "sum(label_replace(container_memory_usage_bytes{job=\"kubernetes-cadvisor\", container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}, \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")) by (service)", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ service }} total (k8s)", + "refId": "C" + }, + { + "expr": "sum(label_replace(container_memory_usage_bytes{job=\"kubernetes-cadvisor\", container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}, \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")) by (container_name, service)", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ service }} - {{ container_name }} (k8s)", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Memory", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 6, + "y": 11 + }, + "id": 6, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "label_replace(sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}[1m])) by (pod_name), \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ service }} total (k8s)", + "refId": "A" + }, + { + "expr": "label_replace(sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}[1m])) by (container_name, pod_name), \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ service }} - {{ container_name }} (k8s)", + "refId": "B" + }, + { + "expr": "sum(irate(process_cpu_seconds_total{job=~\"istio-telemetry|istio-policy\"}[1m])) by (job)", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "{{ job }} (self-reported)", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "CPU", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 12, + "y": 11 + }, + "id": 7, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(process_open_fds{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "hide": true, + "instant": false, + "interval": "", + "intervalFactor": 2, + "legendFormat": "Open FDs ({{ job }})", + "refId": "A" + }, + { + "expr": "sum(label_replace(container_fs_usage_bytes{job=\"kubernetes-cadvisor\", container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}, \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")) by (container_name, service)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ service }} - {{ container_name }}", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Disk", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "decimals": null, + "format": "none", + "label": "", + "logBase": 1024, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 18, + "y": 11 + }, + "id": 4, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(go_goroutines{job=~\"istio-telemetry|istio-policy\"}) by (job)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Number of Goroutines ({{ job }})", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Goroutines", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "content": "

Mixer Overview

", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 18 + }, + "height": "40px", + "id": 30, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 6, + "x": 0, + "y": 21 + }, + "id": 9, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(grpc_io_server_completed_rpcs[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "mixer (Total)", + "refId": "B" + }, + { + "expr": "sum(rate(grpc_io_server_completed_rpcs[1m])) by (grpc_server_method)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "mixer ({{ grpc_server_method }})", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Incoming Requests", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 6, + "x": 6, + "y": 21 + }, + "id": 8, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [ + { + "alias": "{}", + "yaxis": 1 + } + ], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.5, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ grpc_server_method }} 0.5", + "refId": "B" + }, + { + "expr": "histogram_quantile(0.9, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ grpc_server_method }} 0.9", + "refId": "C" + }, + { + "expr": "histogram_quantile(0.99, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ grpc_server_method }} 0.99", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Response Durations", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "ms", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 6, + "x": 12, + "y": 21 + }, + "id": 11, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(rate(grpc_server_handled_total{grpc_code=~\"Unknown|Unimplemented|Internal|DataLoss\"}[1m])) by (grpc_method)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Mixer {{ grpc_method }}", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Server Error Rate (5xx responses)", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 6, + "w": 6, + "x": 18, + "y": 21 + }, + "id": 12, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(grpc_server_handled_total{grpc_code!=\"OK\",grpc_service=~\".*Mixer\"}[1m])) by (grpc_method)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Mixer {{ grpc_method }}", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Non-successes (4xxs)", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "content": "

Adapters and Config

", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 27 + }, + "id": 28, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 30 + }, + "id": 13, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(mixer_runtime_dispatches_total{adapter=~\"$adapter\"}[1m])) by (adapter)", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ adapter }}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Adapter Dispatch Count", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 30 + }, + "id": 14, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.5, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ adapter }} - p50", + "refId": "A" + }, + { + "expr": "histogram_quantile(0.9, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ adapter }} - p90 ", + "refId": "B" + }, + { + "expr": "histogram_quantile(0.99, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ adapter }} - p99", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Adapter Dispatch Duration", + "tooltip": { + "shared": true, + "sort": 1, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 0, + "y": 37 + }, + "id": 60, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "scalar(topk(1, max(mixer_config_rule_config_count) by (configID)))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Rules", + "refId": "A" + }, + { + "expr": "scalar(topk(1, max(mixer_config_rule_config_error_count) by (configID)))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Config Errors", + "refId": "B" + }, + { + "expr": "scalar(topk(1, max(mixer_config_rule_config_match_error_count) by (configID)))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Match Errors", + "refId": "C" + }, + { + "expr": "scalar(topk(1, max(mixer_config_unsatisfied_action_handler_count) by (configID)))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Unsatisfied Actions", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Rules", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 6, + "y": 37 + }, + "id": 56, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "scalar(topk(1, max(mixer_config_instance_config_count) by (configID)))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Instances", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Instances in Latest Config", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 12, + "y": 37 + }, + "id": 54, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "scalar(topk(1, max(mixer_config_handler_config_count) by (configID)))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Handlers", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Handlers in Latest Config", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 18, + "y": 37 + }, + "id": 58, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "scalar(topk(1, max(mixer_config_attribute_count) by (configID)))", + "format": "time_series", + "instant": false, + "intervalFactor": 1, + "legendFormat": "Attributes", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Attributes in Latest Config", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "content": "

Individual Adapters

", + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 44 + }, + "id": 23, + "links": [], + "mode": "html", + "title": "", + "transparent": true, + "type": "text" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 47 + }, + "id": 46, + "panels": [], + "repeat": "adapter", + "title": "$adapter Adapter", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 48 + }, + "id": 17, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "label_replace(irate(mixer_runtime_dispatches_total{adapter=~\"$adapter\"}[1m]),\"handler\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "{{ handler }} (error: {{ error }})", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Dispatch Count By Handler", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 48 + }, + "id": 18, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "label_replace(histogram_quantile(0.5, sum(rate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (handler, error, le)), \"handler_short\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "p50 - {{ handler_short }} (error: {{ error }})", + "refId": "A" + }, + { + "expr": "label_replace(histogram_quantile(0.9, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (handler, error, le)), \"handler_short\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "p90 - {{ handler_short }} (error: {{ error }})", + "refId": "D" + }, + { + "expr": "label_replace(histogram_quantile(0.99, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (handler, error, le)), \"handler_short\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "p99 - {{ handler_short }} (error: {{ error }})", + "refId": "E" + } + ], + "thresholds": [], + "timeFrom": null, + "timeShift": null, + "title": "Dispatch Duration By Handler", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "refresh": "5s", + "schemaVersion": 16, + "style": "dark", + "tags": [], + "templating": { + "list": [ + { + "allValue": null, + "current": {}, + "datasource": "Prometheus", + "hide": 0, + "includeAll": true, + "label": "Adapter", + "multi": true, + "name": "adapter", + "options": [], + "query": "label_values(adapter)", + "refresh": 2, + "regex": "", + "sort": 1, + "tagValuesQuery": "", + "tags": [], + "tagsQuery": "", + "type": "query", + "useTags": false + } + ] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "", + "title": "Istio Mixer Dashboard", + "version": 4 +} +`) + +func chartsIstioTelemetryGrafanaDashboardsMixerDashboardJsonBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaDashboardsMixerDashboardJson, nil +} + +func chartsIstioTelemetryGrafanaDashboardsMixerDashboardJson() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaDashboardsMixerDashboardJsonBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/dashboards/mixer-dashboard.json", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaDashboardsPilotDashboardJson = []byte(`{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": "-- Grafana --", + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": false, + "gnetId": null, + "graphTooltip": 1, + "id": 11, + "links": [], + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 60, + "panels": [], + "title": "Deployed Versions", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 5, + "w": 24, + "x": 0, + "y": 1 + }, + "id": 56, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(istio_build{component=\"pilot\"}) by (tag)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "{{ tag }}", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Pilot Versions", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 6 + }, + "id": 62, + "panels": [], + "title": "Resource Usage", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 0, + "y": 7 + }, + "id": 5, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "process_virtual_memory_bytes{job=\"pilot\"}", + "format": "time_series", + "instant": false, + "intervalFactor": 2, + "legendFormat": "Virtual Memory", + "refId": "I", + "step": 2 + }, + { + "expr": "process_resident_memory_bytes{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Resident Memory", + "refId": "H", + "step": 2 + }, + { + "expr": "go_memstats_heap_sys_bytes{job=\"pilot\"}", + "format": "time_series", + "hide": true, + "intervalFactor": 2, + "legendFormat": "heap sys", + "refId": "A" + }, + { + "expr": "go_memstats_heap_alloc_bytes{job=\"pilot\"}", + "format": "time_series", + "hide": true, + "intervalFactor": 2, + "legendFormat": "heap alloc", + "refId": "D" + }, + { + "expr": "go_memstats_alloc_bytes{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Alloc", + "refId": "F", + "step": 2 + }, + { + "expr": "go_memstats_heap_inuse_bytes{job=\"pilot\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Heap in-use", + "refId": "E", + "step": 2 + }, + { + "expr": "go_memstats_stack_inuse_bytes{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Stack in-use", + "refId": "G", + "step": 2 + }, + { + "expr": "container_memory_usage_bytes{job=\"kubernetes-cadvisor\", container_name=~\"discovery\", pod_name=~\"istio-pilot-.*\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Discovery (container)", + "refId": "B", + "step": 2 + }, + { + "expr": "container_memory_usage_bytes{job=\"kubernetes-cadvisor\", container_name=~\"istio-proxy\", pod_name=~\"istio-pilot-.*\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Sidecar (container)", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Memory", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 6, + "y": 7 + }, + "id": 6, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=\"discovery\", pod_name=~\"istio-pilot-.*\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Discovery (container)", + "refId": "A" + }, + { + "expr": "irate(process_cpu_seconds_total{job=\"pilot\"}[1m])", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Discovery (process)", + "refId": "C", + "step": 2 + }, + { + "expr": "sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=\"istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 2, + "legendFormat": "Sidecar (container)", + "refId": "B", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "CPU", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 12, + "y": 7 + }, + "id": 7, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "container_fs_usage_bytes{job=\"kubernetes-cadvisor\", container_name=\"discovery\", pod_name=~\"istio-pilot-.*\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Discovery", + "refId": "B", + "step": 2 + }, + { + "expr": "container_fs_usage_bytes{job=\"kubernetes-cadvisor\", container_name=\"istio-proxy\", pod_name=~\"istio-pilot-.*\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Sidecar", + "refId": "A" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Disk", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "bytes", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "decimals": null, + "format": "none", + "label": "", + "logBase": 1024, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 7, + "w": 6, + "x": 18, + "y": 7 + }, + "id": 4, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": false, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "go_goroutines{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "Number of Goroutines", + "refId": "A", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Goroutines", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": "", + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 14 + }, + "id": 58, + "panels": [], + "title": "Pilot Push Information", + "type": "row" + }, + { + "aliasColors": {}, + "bars": true, + "dashLength": 10, + "dashes": false, + "description": "Shows the rate of pilot pushes", + "fill": 1, + "gridPos": { + "h": 8, + "w": 8, + "x": 0, + "y": 15 + }, + "id": 622, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": false, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "paceLength": 10, + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": true, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(pilot_xds_pushes{type=\"cds\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Cluster", + "refId": "C" + }, + { + "expr": "sum(irate(pilot_xds_pushes{type=\"eds\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Endpoints", + "refId": "D" + }, + { + "expr": "sum(irate(pilot_xds_pushes{type=\"lds\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Listeners", + "refId": "A" + }, + { + "expr": "sum(irate(pilot_xds_pushes{type=\"rds\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Routes", + "refId": "E" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Pilot Pushes", + "tooltip": { + "shared": false, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [ + "total" + ] + }, + "yaxes": [ + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": "0", + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "description": "Captures a variety of pilot errors", + "fill": 1, + "gridPos": { + "h": 8, + "w": 8, + "x": 8, + "y": 15 + }, + "id": 67, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": true, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(pilot_xds_cds_reject{job=\"pilot\"}) or (absent(pilot_xds_cds_reject{job=\"pilot\"}) - 1)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Rejected CDS Configs", + "refId": "C" + }, + { + "expr": "sum(pilot_xds_eds_reject{job=\"pilot\"}) or (absent(pilot_xds_eds_reject{job=\"pilot\"}) - 1)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Rejected EDS Configs", + "refId": "D" + }, + { + "expr": "sum(pilot_xds_rds_reject{job=\"pilot\"}) or (absent(pilot_xds_rds_reject{job=\"pilot\"}) - 1)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Rejected RDS Configs", + "refId": "A" + }, + { + "expr": "sum(pilot_xds_lds_reject{job=\"pilot\"}) or (absent(pilot_xds_lds_reject{job=\"pilot\"}) - 1)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Rejected LDS Configs", + "refId": "B" + }, + { + "expr": "sum(rate(pilot_xds_write_timeout{job=\"pilot\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Write Timeouts", + "refId": "F" + }, + { + "expr": "sum(rate(pilot_total_xds_internal_errors{job=\"pilot\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Internal Errors", + "refId": "H" + }, + { + "expr": "sum(rate(pilot_total_xds_rejects{job=\"pilot\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Config Rejection Rate", + "refId": "E" + }, + { + "expr": "sum(rate(pilot_xds_push_context_errors{job=\"pilot\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Push Context Errors", + "refId": "K" + }, + { + "expr": "sum(rate(pilot_xds_pushes{type!~\"lds|cds|rds|eds\"}[1m])) by (type)", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Push Errors ({{ type }})", + "refId": "L" + }, + { + "expr": "sum(rate(pilot_xds_push_errors{job=\"pilot\"}[1m])) by (type)", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Push Errors ({{ type }})", + "refId": "I" + }, + { + "expr": "sum(rate(pilot_xds_push_timeout{job=\"pilot\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Push Timeouts", + "refId": "G" + }, + { + "expr": "sum(rate(pilot_xds_push_timeout_failures{job=\"pilot\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Push Timeouts Failures", + "refId": "J" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Pilot Errors", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "description": "Shows the total time it takes to push a config update to a proxy", + "fill": 1, + "gridPos": { + "h": 8, + "w": 8, + "x": 16, + "y": 15 + }, + "id": 624, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 2, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "histogram_quantile(0.5, sum(rate(pilot_proxy_convergence_time_bucket[1m])) by (le))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "p50 ", + "refId": "A" + }, + { + "expr": "histogram_quantile(0.9, sum(rate(pilot_proxy_convergence_time_bucket[1m])) by (le))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "p90", + "refId": "B" + }, + { + "expr": "histogram_quantile(0.99, sum(rate(pilot_proxy_convergence_time_bucket[1m])) by (le))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "p99", + "refId": "C" + }, + { + "expr": "histogram_quantile(0.999, sum(rate(pilot_proxy_convergence_time_bucket[1m])) by (le))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "p99.9", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Proxy Push Time", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "s", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 8, + "w": 8, + "x": 0, + "y": 23 + }, + "id": 45, + "legend": { + "avg": false, + "current": false, + "hideEmpty": true, + "hideZero": true, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null as zero", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "pilot_conflict_inbound_listener{job=\"pilot\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Inbound Listeners", + "refId": "B" + }, + { + "expr": "pilot_conflict_outbound_listener_http_over_current_tcp{job=\"pilot\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Outbound Listeners (http over current tcp)", + "refId": "A" + }, + { + "expr": "pilot_conflict_outbound_listener_tcp_over_current_tcp{job=\"pilot\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Outbound Listeners (tcp over current tcp)", + "refId": "C" + }, + { + "expr": "pilot_conflict_outbound_listener_tcp_over_current_http{job=\"pilot\"}", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "Outbound Listeners (tcp over current http)", + "refId": "D" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Conflicts", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 8, + "w": 8, + "x": 8, + "y": 23 + }, + "id": 47, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "pilot_virt_services{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Virtual Services", + "refId": "A" + }, + { + "expr": "pilot_services{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Services", + "refId": "B" + }, + { + "expr": "pilot_xds{job=\"pilot\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Connected Endpoints", + "refId": "E" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "ADS Monitoring", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "columns": [], + "datasource": "Prometheus", + "description": "Clusters in this table do not have any endpoints known to pilot. This could be from referencing subsets that do not have any instances, or pods marked as NotReady", + "fontSize": "100%", + "gridPos": { + "h": 8, + "w": 8, + "x": 16, + "y": 23 + }, + "id": 51, + "links": [], + "pageSize": null, + "scroll": true, + "showHeader": true, + "sort": { + "col": null, + "desc": false + }, + "styles": [ + { + "alias": "Time", + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "pattern": "Time", + "type": "date" + }, + { + "alias": "Clusters", + "colorMode": null, + "colors": [ + "rgba(245, 54, 54, 0.9)", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "decimals": 2, + "pattern": "/.*/", + "thresholds": [], + "type": "number", + "unit": "short" + } + ], + "targets": [ + { + "expr": "sum(pilot_xds_eds_instances{job=\"pilot\", cluster=~\".+\\\\|.+\"}) by (cluster) < 1", + "format": "time_series", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "{{cluster}}", + "refId": "B" + } + ], + "timeFrom": null, + "timeShift": null, + "title": "Clusters with no known endpoints", + "transform": "timeseries_aggregations", + "type": "table" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 31 + }, + "id": 64, + "panels": [], + "title": "Envoy Information", + "type": "row" + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "description": "Shows details about Envoy proxies in the mesh", + "fill": 1, + "gridPos": { + "h": 8, + "w": 8, + "x": 0, + "y": 32 + }, + "id": 40, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(irate(envoy_cluster_upstream_cx_total{cluster_name=\"xds-grpc\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "XDS Connections", + "refId": "C" + }, + { + "expr": "sum(irate(envoy_cluster_upstream_cx_connect_fail{cluster_name=\"xds-grpc\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "XDS Connection Failures", + "refId": "A" + }, + { + "expr": "sum(increase(envoy_server_hot_restart_epoch[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Envoy Restarts", + "refId": "B" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "Envoy Details", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "fill": 1, + "gridPos": { + "h": 8, + "w": 8, + "x": 8, + "y": 32 + }, + "id": 41, + "legend": { + "avg": false, + "current": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "sum(envoy_cluster_upstream_cx_active{cluster_name=\"xds-grpc\"})", + "format": "time_series", + "intervalFactor": 2, + "legendFormat": "XDS Active Connections", + "refId": "C", + "step": 2 + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "XDS Active Connections", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "short", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + }, + { + "aliasColors": {}, + "bars": false, + "dashLength": 10, + "dashes": false, + "datasource": "Prometheus", + "description": "Shows the size of XDS requests and responses", + "fill": 1, + "gridPos": { + "h": 8, + "w": 8, + "x": 16, + "y": 32 + }, + "id": 42, + "legend": { + "avg": false, + "current": false, + "hideEmpty": false, + "hideZero": false, + "max": false, + "min": false, + "show": true, + "total": false, + "values": false + }, + "lines": true, + "linewidth": 1, + "links": [], + "nullPointMode": "null", + "percentage": false, + "pointradius": 5, + "points": false, + "renderer": "flot", + "seriesOverrides": [], + "spaceLength": 10, + "stack": false, + "steppedLine": false, + "targets": [ + { + "expr": "max(rate(envoy_cluster_upstream_cx_rx_bytes_total{cluster_name=\"xds-grpc\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "XDS Response Bytes Max", + "refId": "D" + }, + { + "expr": "quantile(0.5, rate(envoy_cluster_upstream_cx_rx_bytes_total{cluster_name=\"xds-grpc\"}[1m]))", + "format": "time_series", + "hide": false, + "intervalFactor": 1, + "legendFormat": "XDS Response Bytes Average", + "refId": "B" + }, + { + "expr": "max(rate(envoy_cluster_upstream_cx_tx_bytes_total{cluster_name=\"xds-grpc\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "XDS Request Bytes Max", + "refId": "A" + }, + { + "expr": "quantile(.5, rate(envoy_cluster_upstream_cx_tx_bytes_total{cluster_name=\"xds-grpc\"}[1m]))", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "XDS Request Bytes Average", + "refId": "C" + } + ], + "thresholds": [], + "timeFrom": null, + "timeRegions": [], + "timeShift": null, + "title": "XDS Requests Size", + "tooltip": { + "shared": true, + "sort": 0, + "value_type": "individual" + }, + "type": "graph", + "xaxis": { + "buckets": null, + "mode": "time", + "name": null, + "show": true, + "values": [] + }, + "yaxes": [ + { + "format": "Bps", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": true + }, + { + "format": "ops", + "label": null, + "logBase": 1, + "max": null, + "min": null, + "show": false + } + ], + "yaxis": { + "align": false, + "alignLevel": null + } + } + ], + "refresh": "5s", + "schemaVersion": 18, + "style": "dark", + "tags": [], + "templating": { + "list": [] + }, + "time": { + "from": "now-5m", + "to": "now" + }, + "timepicker": { + "refresh_intervals": [ + "5s", + "10s", + "30s", + "1m", + "5m", + "15m", + "30m", + "1h", + "2h", + "1d" + ], + "time_options": [ + "5m", + "15m", + "1h", + "6h", + "12h", + "24h", + "2d", + "7d", + "30d" + ] + }, + "timezone": "browser", + "title": "Istio Pilot Dashboard", + "uid": "3--MLVZZk", + "version": 11 +}`) + +func chartsIstioTelemetryGrafanaDashboardsPilotDashboardJsonBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaDashboardsPilotDashboardJson, nil +} + +func chartsIstioTelemetryGrafanaDashboardsPilotDashboardJson() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaDashboardsPilotDashboardJsonBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/dashboards/pilot-dashboard.json", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaFix_datasourcesSh = []byte(`#!/bin/bash + +set -e + +THIS_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +UX=$(uname) + +for db in "${THIS_DIR}"/dashboards/*.json; do + if [[ ${UX} == "Darwin" ]]; then + # shellcheck disable=SC2016 + sed -i '' 's/${DS_PROMETHEUS}/Prometheus/g' "$db" + else + # shellcheck disable=SC2016 + sed -i 's/${DS_PROMETHEUS}/Prometheus/g' "$db" + fi +done +`) + +func chartsIstioTelemetryGrafanaFix_datasourcesShBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaFix_datasourcesSh, nil +} + +func chartsIstioTelemetryGrafanaFix_datasourcesSh() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaFix_datasourcesShBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/fix_datasources.sh", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.grafana.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.grafana.podAntiAffinityLabelSelector .Values.grafana.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.grafana.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.grafana.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.grafana.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.grafana.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioTelemetryGrafanaTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplates_affinityTpl, nil +} + +func chartsIstioTelemetryGrafanaTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplatesConfigmapDashboardsYaml = []byte(`{{- $files := .Files }} +{{- range $path, $bytes := .Files.Glob "dashboards/*.json" }} +{{- $filename := trimSuffix (ext $path) (base $path) }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: istio-grafana-configuration-dashboards-{{ $filename }} + namespace: {{ $.Release.Namespace }} + labels: + app: grafana + release: {{ $.Release.Name }} + istio: grafana +data: + {{ base $path }}: '{{ $files.Get $path }}' +--- +{{- end }} +`) + +func chartsIstioTelemetryGrafanaTemplatesConfigmapDashboardsYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplatesConfigmapDashboardsYaml, nil +} + +func chartsIstioTelemetryGrafanaTemplatesConfigmapDashboardsYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplatesConfigmapDashboardsYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/configmap-dashboards.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplatesConfigmapYaml = []byte(`{{ $datasources := index .Values.grafana.datasources "datasources.yaml" }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: istio-grafana + namespace: {{ .Release.Namespace }} + labels: + app: grafana + release: {{ .Release.Name }} + istio: grafana +data: + datasources.yaml: |- + apiVersion: 1 + datasources: + - name: Prometheus + type: prometheus + orgId: 1 +{{- if .Values.grafana.prometheusNamespace }} + url: http://prometheus.{{ .Values.grafana.prometheusNamespace }}:9090 +{{ else }} + url: http://prometheus:9090 +{{- end }} + access: proxy + isDefault: true + jsonData: + timeInterval: 5s + editable: true + +{{- if $datasources.datasources }} + - + {{- range $key, $value := $datasources.datasources }} +{{ toYaml $value | indent 6 }} + {{- end -}} +{{- end }} + + +{{- if .Values.grafana.dashboardProviders }} + {{- range $key, $value := .Values.grafana.dashboardProviders }} + {{ $key }}: | +{{ toYaml $value | indent 4 }} + {{- end -}} +{{- end -}} +`) + +func chartsIstioTelemetryGrafanaTemplatesConfigmapYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplatesConfigmapYaml, nil +} + +func chartsIstioTelemetryGrafanaTemplatesConfigmapYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplatesConfigmapYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/configmap.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: grafana + namespace: {{ .Release.Namespace }} + labels: + app: grafana + release: {{ .Release.Name }} +spec: + replicas: {{ .Values.grafana.replicaCount }} + selector: + matchLabels: + app: grafana + template: + metadata: + labels: + app: grafana + chart: grafana + heritage: Tiller + release: istio-system + annotations: + sidecar.istio.io/inject: "false" + spec: + securityContext: + runAsUser: 472 + fsGroup: 472 +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} +{{- if .Values.global.imagePullSecrets }} + imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} + containers: + - name: {{ .Chart.Name }} + image: "{{ .Values.grafana.image.repository }}:{{ .Values.grafana.image.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 3000 + readinessProbe: + httpGet: + path: /login + port: 3000 + env: + - name: GRAFANA_PORT + value: "3000" +{{- if .Values.grafana.security.enabled }} + - name: GF_SECURITY_ADMIN_USER + valueFrom: + secretKeyRef: + name: {{ .Values.grafana.security.secretName }} + key: {{ .Values.grafana.security.usernameKey }} + - name: GF_SECURITY_ADMIN_PASSWORD + valueFrom: + secretKeyRef: + name: {{ .Values.grafana.security.secretName }} + key: {{ .Values.grafana.security.passphraseKey }} + - name: GF_AUTH_BASIC_ENABLED + value: "true" + - name: GF_AUTH_ANONYMOUS_ENABLED + value: "false" + - name: GF_AUTH_DISABLE_LOGIN_FORM + value: "false" +{{- else }} + - name: GF_AUTH_BASIC_ENABLED + value: "false" + - name: GF_AUTH_ANONYMOUS_ENABLED + value: "true" + - name: GF_AUTH_ANONYMOUS_ORG_ROLE + value: Admin +{{- end }} + - name: GF_PATHS_DATA + value: /data/grafana + {{- range $key, $value := $.Values.env }} + - name: {{ $key }} + value: {{ $value | quote }} + {{- end }} + {{- range $key, $secret := $.Values.envSecrets }} + - name: {{ $key }} + valueFrom: + secretKeyRef: + name: {{ $secret }} + key: {{ $key | quote }} + {{- end }} + resources: +{{- if .Values.grafana.resources }} +{{ toYaml .Values.grafana.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + volumeMounts: + - name: data + mountPath: /data/grafana + {{- range $path, $bytes := .Files.Glob "dashboards/*.json" }} + {{- $filename := trimSuffix (ext $path) (base $path) }} + - name: dashboards-istio-{{ $filename }} + mountPath: "/var/lib/grafana/dashboards/istio/{{ base $path }}" + subPath: {{ base $path }} + readOnly: true + {{- end }} + - name: config + mountPath: "/etc/grafana/provisioning/datasources/datasources.yaml" + subPath: datasources.yaml + - name: config + mountPath: "/etc/grafana/provisioning/dashboards/dashboardproviders.yaml" + subPath: dashboardproviders.yaml + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.grafana.tolerations }} + tolerations: +{{ toYaml .Values.grafana.tolerations | indent 6 }} +{{- end }} + volumes: + - name: config + configMap: + name: istio-grafana + - name: data +{{- if .Values.grafana.persist }} + persistentVolumeClaim: + claimName: istio-grafana-pvc +{{- else }} + emptyDir: {} +{{- end }} +{{- range $path, $bytes := .Files.Glob "dashboards/*.json" }} +{{- $filename := trimSuffix (ext $path) (base $path) }} + - name: dashboards-istio-{{ $filename }} + configMap: + name: istio-grafana-configuration-dashboards-{{ $filename }} +{{- end }} +`) + +func chartsIstioTelemetryGrafanaTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplatesDeploymentYaml, nil +} + +func chartsIstioTelemetryGrafanaTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplatesDestinationRuleYaml = []byte(`apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: grafana + namespace: {{ .Release.Namespace }} +spec: + host: grafana.{{ .Release.Namespace }} + trafficPolicy: + tls: + mode: DISABLE +`) + +func chartsIstioTelemetryGrafanaTemplatesDestinationRuleYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplatesDestinationRuleYaml, nil +} + +func chartsIstioTelemetryGrafanaTemplatesDestinationRuleYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplatesDestinationRuleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/destination-rule.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplatesGrafanaPolicyYaml = []byte(`apiVersion: authentication.istio.io/v1alpha1 +kind: Policy +metadata: + name: grafana-ports-mtls-disabled + namespace: {{ .Release.Namespace }} + labels: + app: grafana + release: {{ .Release.Name }} +spec: + targets: + - name: grafana + ports: + - number: {{ .Values.grafana.service.externalPort }} +`) + +func chartsIstioTelemetryGrafanaTemplatesGrafanaPolicyYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplatesGrafanaPolicyYaml, nil +} + +func chartsIstioTelemetryGrafanaTemplatesGrafanaPolicyYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplatesGrafanaPolicyYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/grafana-policy.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplatesPvcYaml = []byte(`{{- if .Values.grafana.persist }} +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: + name: istio-grafana-pvc + labels: + app: grafana + release: {{ .Release.Name }} +spec: + storageClassName: {{ .Values.grafana.storageClassName }} + accessModes: + - {{ .Values.grafana.accessMode }} + resources: + requests: + storage: 5Gi +{{- end }} +`) + +func chartsIstioTelemetryGrafanaTemplatesPvcYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplatesPvcYaml, nil +} + +func chartsIstioTelemetryGrafanaTemplatesPvcYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplatesPvcYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/pvc.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: grafana + namespace: {{ .Release.Namespace }} + annotations: + {{- range $key, $val := .Values.grafana.service.annotations }} + {{ $key }}: {{ $val | quote }} + {{- end }} + labels: + app: grafana + release: {{ .Release.Name }} +spec: + type: {{ .Values.grafana.service.type }} + ports: + - port: {{ .Values.grafana.service.externalPort }} + targetPort: 3000 + protocol: TCP + name: {{ .Values.grafana.service.name }} + selector: + app: grafana +{{- if .Values.grafana.service.loadBalancerIP }} + loadBalancerIP: "{{ .Values.grafana.service.loadBalancerIP }}" +{{- end }} + {{if .Values.grafana.service.loadBalancerSourceRanges}} + loadBalancerSourceRanges: + {{range $rangeList := .Values.grafana.service.loadBalancerSourceRanges}} + - {{ $rangeList }} + {{end}} + {{end}}`) + +func chartsIstioTelemetryGrafanaTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplatesServiceYaml, nil +} + +func chartsIstioTelemetryGrafanaTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaTemplatesTestsTestGrafanaConnectionYaml = []byte(`{{- if .Values.global.enableHelmTest }} +apiVersion: v1 +kind: Pod +metadata: + name: grafana-test + namespace: {{ .Release.Namespace }} + labels: + app: grafana-test + release: {{ .Release.Name }} + istio: grafana + annotations: + sidecar.istio.io/inject: "false" + helm.sh/hook: test-success +spec: +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: "grafana-test" + image: {{ .Values.global.hub }}/{{ .Values.global.proxy.image }}:{{ .Values.global.tag }} + imagePullPolicy: "{{ .Values.global.imagePullPolicy }}" + command: ['curl'] + args: ['http://grafana:{{ .Values.grafana.service.externalPort }}'] + restartPolicy: Never + affinity: + {{- include "nodeaffinity" . | indent 4 }} + {{- include "podAntiAffinity" . | indent 4 }} +{{- end }} +`) + +func chartsIstioTelemetryGrafanaTemplatesTestsTestGrafanaConnectionYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaTemplatesTestsTestGrafanaConnectionYaml, nil +} + +func chartsIstioTelemetryGrafanaTemplatesTestsTestGrafanaConnectionYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaTemplatesTestsTestGrafanaConnectionYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/templates/tests/test-grafana-connection.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryGrafanaValuesYaml = []byte(`grafana: + enabled: true + replicaCount: 1 + image: + repository: grafana/grafana + tag: 6.1.6 + persist: false + storageClassName: "" + accessMode: ReadWriteMany + security: + enabled: false + secretName: grafana + usernameKey: username + passphraseKey: passphrase + + contextPath: /grafana + service: + annotations: {} + name: http + type: ClusterIP + externalPort: 3000 + loadBalancerIP: + loadBalancerSourceRanges: + + ingress: + enabled: false + ## Used to create an Ingress record. + hosts: + - grafana.local + annotations: + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + tls: + # Secrets must be manually created in the namespace. + # - secretName: grafana-tls + # hosts: + # - grafana.local + + # Optional: prometheus may be deployed in a different namespace + # prometheusNamespace: istio-telemetry + + # Additional datasources. Prometheus included in the config map. + datasources: + datasources.yaml: + apiVersion: 1 + datasources: + # - name: Prometheus2 + # type: prometheus2 + # orgId: 2 + # url: http://prometheus:9090 + # access: proxy + # isDefault: false + # jsonData: + # timeInterval: 5s + # editable: true + + dashboardProviders: + dashboardproviders.yaml: + apiVersion: 1 + providers: + - name: 'istio' + orgId: 1 + folder: 'istio' + type: file + disableDeletion: false + options: + path: /var/lib/grafana/dashboards/istio + + nodeSelector: {} + tolerations: [] + + env: {} + # Define additional environment variables for configuring grafana. + # @see https://grafana.com/docs/installation/configuration/#using-environment-variables + # Format: env_variable_name: value + # For example: + # GF_SMTP_ENABLED: true + # GF_SMTP_HOST: email-smtp.eu-west-1.amazonaws.com:2587 + # GF_SMTP_FROM_ADDRESS: alerts@mydomain.com + # GF_SMTP_FROM_NAME: Grafana + + envSecrets: {} + # The key name and ENV name must match in the secrets file. + # @see https://grafana.com/docs/installation/configuration/#using-environment-variables + # For example: + # --- + # apiVersion: v1 + # kind: Secret + # metadata: + # name: grafana-secrets + # namespace: istio-system + # data: + # GF_SMTP_USER: bXl1c2Vy + # GF_SMTP_PASSWORD: bXlwYXNzd29yZA== + # type: Opaque + # --- + # env_variable_key_name: secretsName + # --- + # GF_SMTP_USER: grafana-secrets + # GF_SMTP_PASSWORD: grafana-secrets + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsIstioTelemetryGrafanaValuesYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryGrafanaValuesYaml, nil +} + +func chartsIstioTelemetryGrafanaValuesYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryGrafanaValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/grafana/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiChartYaml = []byte(`apiVersion: v1 +description: Kiali is an open source project for service mesh observability, refer to https://www.kiali.io for details. +name: kiali +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +`) + +func chartsIstioTelemetryKialiChartYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiChartYaml, nil +} + +func chartsIstioTelemetryKialiChartYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.podAntiAffinityLabelSelector .Values.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if or .Values.podAntiAffinityTermLabelSelector}} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioTelemetryKialiTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiTemplates_affinityTpl, nil +} + +func chartsIstioTelemetryKialiTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: kiali + labels: + app: kiali + release: {{ .Release.Name }} +rules: + - apiGroups: [""] + resources: + - configmaps + - endpoints + - namespaces + - nodes + - pods + - services + - replicationcontrollers + verbs: + - get + - list + - watch + - apiGroups: ["extensions", "apps"] + resources: + - deployments + - statefulsets + - replicasets + verbs: + - get + - list + - watch + - apiGroups: ["autoscaling"] + resources: + - horizontalpodautoscalers + verbs: + - get + - list + - watch + - apiGroups: ["batch"] + resources: + - cronjobs + - jobs + verbs: + - get + - list + - watch + - apiGroups: ["config.istio.io"] + resources: + - apikeys + - authorizations + - checknothings + - circonuses + - deniers + - fluentds + - handlers + - kubernetesenvs + - kuberneteses + - listcheckers + - listentries + - logentries + - memquotas + - metrics + - opas + - prometheuses + - quotas + - quotaspecbindings + - quotaspecs + - rbacs + - reportnothings + - rules + - solarwindses + - stackdrivers + - statsds + - stdios + verbs: + - create + - delete + - get + - list + - patch + - watch + - apiGroups: ["networking.istio.io"] + resources: + - destinationrules + - gateways + - serviceentries + - sidecars + - virtualservices + verbs: + - create + - delete + - get + - list + - patch + - watch + - apiGroups: ["authentication.istio.io"] + resources: + - policies + - meshpolicies + verbs: + - create + - delete + - get + - list + - patch + - watch + - apiGroups: ["rbac.istio.io"] + resources: + - clusterrbacconfigs + - rbacconfigs + - serviceroles + - servicerolebindings + verbs: + - create + - delete + - get + - list + - patch + - watch + - apiGroups: ["security.istio.io"] + resources: + - authorizationpolicies + verbs: + - create + - delete + - get + - list + - patch + - watch + - apiGroups: ["monitoring.kiali.io"] + resources: + - monitoringdashboards + verbs: + - get +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: kiali-viewer + labels: + app: kiali + release: {{ .Release.Name }} +rules: + - apiGroups: [""] + resources: + - configmaps + - endpoints + - namespaces + - nodes + - pods + - services + - replicationcontrollers + verbs: + - get + - list + - watch + - apiGroups: ["extensions", "apps"] + resources: + - deployments + - statefulsets + - replicasets + verbs: + - get + - list + - watch + - apiGroups: ["autoscaling"] + resources: + - horizontalpodautoscalers + verbs: + - get + - list + - watch + - apiGroups: ["batch"] + resources: + - cronjobs + - jobs + verbs: + - get + - list + - watch + - apiGroups: ["config.istio.io"] + resources: + - apikeys + - authorizations + - checknothings + - circonuses + - deniers + - fluentds + - handlers + - kubernetesenvs + - kuberneteses + - listcheckers + - listentries + - logentries + - memquotas + - metrics + - opas + - prometheuses + - quotas + - quotaspecbindings + - quotaspecs + - rbacs + - reportnothings + - rules + - servicecontrolreports + - servicecontrols + - solarwindses + - stackdrivers + - statsds + - stdios + verbs: + - get + - list + - watch + - apiGroups: ["networking.istio.io"] + resources: + - destinationrules + - gateways + - serviceentries + - sidecars + - virtualservices + verbs: + - get + - list + - watch + - apiGroups: ["authentication.istio.io"] + resources: + - policies + - meshpolicies + verbs: + - get + - list + - watch + - apiGroups: ["rbac.istio.io"] + resources: + - clusterrbacconfigs + - rbacconfigs + - serviceroles + - servicerolebindings + verbs: + - get + - list + - watch + - apiGroups: ["security.istio.io"] + resources: + - authorizationpolicies + verbs: + - get + - list + - watch + - apiGroups: ["monitoring.kiali.io"] + resources: + - monitoringdashboards + verbs: + - get +`) + +func chartsIstioTelemetryKialiTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiTemplatesClusterroleYaml, nil +} + +func chartsIstioTelemetryKialiTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiTemplatesClusterrolebindingYaml = []byte(`{{- if not .Values.kiali.dashboard.viewOnlyMode }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: kiali + labels: + app: kiali + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: kiali +subjects: + - kind: ServiceAccount + name: kiali-service-account + namespace: {{ .Release.Namespace }} +{{- else }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-kiali-viewer-role-binding-{{ .Release.Namespace }} + labels: + app: kiali + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: kiali-viewer +subjects: +- kind: ServiceAccount + name: kiali-service-account + namespace: {{ .Release.Namespace }} +{{- end }} +`) + +func chartsIstioTelemetryKialiTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiTemplatesClusterrolebindingYaml, nil +} + +func chartsIstioTelemetryKialiTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiTemplatesConfigmapYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + name: kiali + namespace: {{ .Release.Namespace }} + labels: + app: kiali + release: {{ .Release.Name }} +data: + config.yaml: | + istio_namespace: {{ .Release.Namespace }} + server: + port: 20001 +{{- if .Values.kiali.contextPath }} + web_root: {{ .Values.kiali.contextPath }} +{{- end }} + external_services: + istio: + url_service_version: http://istio-pilot.{{ .Values.global.istioNamespace }}:8080/version + jaeger: + url: {{ .Values.kiali.dashboard.jaegerURL }} + grafana: + url: {{ .Values.kiali.dashboard.grafanaURL }} +{{- if .Values.kiali.security.enabled }} + identity: + cert_file: {{ .Values.kiali.security.cert_file }} + private_key_file: {{ .Values.kiali.security.private_key_file }} +{{- end}}`) + +func chartsIstioTelemetryKialiTemplatesConfigmapYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiTemplatesConfigmapYaml, nil +} + +func chartsIstioTelemetryKialiTemplatesConfigmapYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiTemplatesConfigmapYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/templates/configmap.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiTemplatesDemosecretYaml = []byte(`{{- if .Values.kiali.createDemoSecret }} +apiVersion: v1 +kind: Secret +metadata: + name: {{ .Values.kiali.dashboard.secretName }} + namespace: {{ .Release.Namespace }} + labels: + app: kiali + release: {{ .Release.Name }} +type: Opaque +data: + username: YWRtaW4= # admin + passphrase: YWRtaW4= # admin + {{- end }} +`) + +func chartsIstioTelemetryKialiTemplatesDemosecretYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiTemplatesDemosecretYaml, nil +} + +func chartsIstioTelemetryKialiTemplatesDemosecretYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiTemplatesDemosecretYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/templates/demosecret.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: kiali + namespace: {{ .Release.Namespace }} + labels: + app: kiali + release: {{ .Release.Name }} +spec: + replicas: {{ .Values.kiali.replicaCount }} + selector: + matchLabels: + app: kiali + template: + metadata: + name: kiali + labels: + app: kiali + release: {{ .Release.Name }} + annotations: + sidecar.istio.io/inject: "false" + scheduler.alpha.kubernetes.io/critical-pod: "" + prometheus.io/scrape: "true" + prometheus.io/port: "9090" + kiali.io/runtimes: go,kiali + spec: + serviceAccountName: kiali-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - image: "{{ .Values.kiali.hub }}/{{ .Values.kiali.image }}:{{ .Values.kiali.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + name: kiali + command: + - "/opt/kiali/kiali" + - "-config" + - "/kiali-configuration/config.yaml" + - "-v" + - "3" + readinessProbe: + httpGet: + path: {{ .Values.kiali.contextPath }}/healthz + port: 20001 + scheme: {{ if .Values.kiali.security.enabled }} 'HTTPS' {{ else }} 'HTTP' {{ end }} + initialDelaySeconds: 5 + periodSeconds: 30 + livenessProbe: + httpGet: + path: {{ .Values.kiali.contextPath }}/healthz + port: 20001 + scheme: {{ if .Values.kiali.security.enabled }} 'HTTPS' {{ else }} 'HTTP' {{ end }} + initialDelaySeconds: 5 + periodSeconds: 30 + env: + - name: ACTIVE_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: PROMETHEUS_SERVICE_URL + {{- if .Values.global.prometheusNamespace }} + value: http://prometheus.{{ .Values.global.prometheusNamespace }}:9090 + {{ else }} + value: http://prometheus:9090 + {{- end }} +{{- if .Values.kiali.contextPath }} + - name: SERVER_WEB_ROOT + value: {{ .Values.kiali.contextPath }} +{{- end }} + volumeMounts: + - name: kiali-configuration + mountPath: "/kiali-configuration" + - name: kiali-cert + mountPath: "/kiali-cert" + - name: kiali-secret + mountPath: "/kiali-secret" + resources: +{{- if .Values.kiali.resources }} +{{ toYaml .Values.kiali.resources | indent 10 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 10 }} +{{- end }} + volumes: + - name: kiali-configuration + configMap: + name: kiali + - name: kiali-cert + secret: + secretName: istio.kiali-service-account +{{- if not .Values.kiali.security.enabled }} + optional: true +{{- end }} + - name: kiali-secret + secret: + secretName: {{ .Values.kiali.dashboard.secretName }} + optional: true + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +`) + +func chartsIstioTelemetryKialiTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiTemplatesDeploymentYaml, nil +} + +func chartsIstioTelemetryKialiTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: kiali + namespace: {{ .Release.Namespace }} + labels: + app: kiali + release: {{ .Release.Name }} +spec: + ports: + - name: http-kiali + protocol: TCP + port: 20001 + selector: + app: kiali +`) + +func chartsIstioTelemetryKialiTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiTemplatesServiceYaml, nil +} + +func chartsIstioTelemetryKialiTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount + {{- if .Values.global.imagePullSecrets }} +imagePullSecrets: + {{- range .Values.global.imagePullSecrets }} +- name: {{ . }} + {{- end }} + {{- end }} +metadata: + name: kiali-service-account + namespace: {{ .Release.Namespace }} + labels: + app: kiali + release: {{ .Release.Name }} +`) + +func chartsIstioTelemetryKialiTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiTemplatesServiceaccountYaml, nil +} + +func chartsIstioTelemetryKialiTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryKialiValuesYaml = []byte(`# +# addon kiali +# +kiali: + enabled: false # Note that if using the demo or demo-auth yaml when installing via Helm, this default will be `+"`"+`true`+"`"+`. + replicaCount: 1 + hub: docker.io/kiali + tag: v1.1.0 + image: kiali + contextPath: /kiali # The root context path to access the Kiali UI. + nodeSelector: {} + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + + ingress: + enabled: false + ## Used to create an Ingress record. + hosts: + - kiali.local + annotations: + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + tls: + # Secrets must be manually created in the namespace. + # - secretName: kiali-tls + # hosts: + # - kiali.local + + dashboard: + secretName: kiali # You must create a secret with this name - one is not provided out-of-box. + usernameKey: username # This is the key name within the secret whose value is the actual username. + passphraseKey: passphrase # This is the key name within the secret whose value is the actual passphrase. + viewOnlyMode: false # Bind the service account to a role with only read access + grafanaURL: # If you have Grafana installed and it is accessible to client browsers, then set this to its external URL. Kiali will redirect users to this URL when Grafana metrics are to be shown. + jaegerURL: # If you have Jaeger installed and it is accessible to client browsers, then set this property to its external URL. Kiali will redirect users to this URL when Jaeger tracing is to be shown. + + # Optional: prometheus may be deployed in a different namespace + prometheusNamespace: + + # When true, a secret will be created with a default username and password. Useful for demos. + createDemoSecret: true + + security: + enabled: true + cert_file: /kiali-cert/cert-chain.pem + private_key_file: /kiali-cert/key.pem +`) + +func chartsIstioTelemetryKialiValuesYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryKialiValuesYaml, nil +} + +func chartsIstioTelemetryKialiValuesYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryKialiValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/kiali/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryChartYaml = []byte(`apiVersion: v1 +name: mixer-telemetry +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for mixer deployment +keywords: + - istio + - mixer +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsIstioTelemetryMixerTelemetryChartYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryChartYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryChartYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.mixer.telemetry.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.mixer.telemetry.podAntiAffinityLabelSelector .Values.mixer.telemetry.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.mixer.telemetry.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.mixer.telemetry.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.mixer.telemetry.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.mixer.telemetry.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioTelemetryMixerTelemetryTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplates_affinityTpl, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesAutoscaleYaml = []byte(`{{- if .Values.mixer.telemetry.autoscaleMin }} +apiVersion: autoscaling/v2beta1 +kind: HorizontalPodAutoscaler +metadata: + name: istio-telemetry + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} + app: istio-telemetry +spec: + maxReplicas: {{ .Values.mixer.telemetry.autoscaleMax }} + minReplicas: {{ .Values.mixer.telemetry.autoscaleMin }} + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-telemetry + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: {{ .Values.mixer.telemetry.cpu.targetAverageUtilization }} +--- +{{- end }} +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesAutoscaleYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesAutoscaleYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesAutoscaleYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesAutoscaleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/autoscale.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istio-mixer-{{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +rules: +- apiGroups: ["config.istio.io"] # istio CRD watcher + resources: ["*"] + verbs: ["create", "get", "list", "watch", "patch"] +- apiGroups: ["apiextensions.k8s.io"] + resources: ["customresourcedefinitions"] + verbs: ["get", "list", "watch"] +- apiGroups: [""] + resources: ["configmaps", "endpoints", "pods", "services", "namespaces", "secrets", "replicationcontrollers"] + verbs: ["get", "list", "watch"] +- apiGroups: ["extensions", "apps"] + resources: ["replicasets"] + verbs: ["get", "list", "watch"] +--- +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesClusterroleYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesClusterrolebindingYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-mixer-admin-role-binding-{{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istio-mixer-{{ .Release.Namespace }} +subjects: + - kind: ServiceAccount + name: istio-mixer-service-account + namespace: {{ .Release.Namespace }} +--- +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesClusterrolebindingYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesConfigYaml = []byte(`apiVersion: "config.istio.io/v1alpha2" +kind: attributemanifest +metadata: + name: istioproxy + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + attributes: + origin.ip: + valueType: IP_ADDRESS + origin.uid: + valueType: STRING + origin.user: + valueType: STRING + request.headers: + valueType: STRING_MAP + request.id: + valueType: STRING + request.host: + valueType: STRING + request.method: + valueType: STRING + request.path: + valueType: STRING + request.url_path: + valueType: STRING + request.query_params: + valueType: STRING_MAP + request.reason: + valueType: STRING + request.referer: + valueType: STRING + request.scheme: + valueType: STRING + request.total_size: + valueType: INT64 + request.size: + valueType: INT64 + request.time: + valueType: TIMESTAMP + request.useragent: + valueType: STRING + response.code: + valueType: INT64 + response.duration: + valueType: DURATION + response.headers: + valueType: STRING_MAP + response.total_size: + valueType: INT64 + response.size: + valueType: INT64 + response.time: + valueType: TIMESTAMP + response.grpc_status: + valueType: STRING + response.grpc_message: + valueType: STRING + source.uid: + valueType: STRING + source.user: # DEPRECATED + valueType: STRING + source.principal: + valueType: STRING + destination.uid: + valueType: STRING + destination.principal: + valueType: STRING + destination.port: + valueType: INT64 + connection.event: + valueType: STRING + connection.id: + valueType: STRING + connection.received.bytes: + valueType: INT64 + connection.received.bytes_total: + valueType: INT64 + connection.sent.bytes: + valueType: INT64 + connection.sent.bytes_total: + valueType: INT64 + connection.duration: + valueType: DURATION + connection.mtls: + valueType: BOOL + connection.requested_server_name: + valueType: STRING + context.protocol: + valueType: STRING + context.proxy_error_code: + valueType: STRING + context.timestamp: + valueType: TIMESTAMP + context.time: + valueType: TIMESTAMP + # Deprecated, kept for compatibility + context.reporter.local: + valueType: BOOL + context.reporter.kind: + valueType: STRING + context.reporter.uid: + valueType: STRING + context.proxy_version: + valueType: STRING + api.service: + valueType: STRING + api.version: + valueType: STRING + api.operation: + valueType: STRING + api.protocol: + valueType: STRING + request.auth.principal: + valueType: STRING + request.auth.audiences: + valueType: STRING + request.auth.presenter: + valueType: STRING + request.auth.claims: + valueType: STRING_MAP + request.auth.raw_claims: + valueType: STRING + request.api_key: + valueType: STRING + rbac.permissive.response_code: + valueType: STRING + rbac.permissive.effective_policy_id: + valueType: STRING + check.error_code: + valueType: INT64 + check.error_message: + valueType: STRING + check.cache_hit: + valueType: BOOL + quota.cache_hit: + valueType: BOOL + context.proxy_version: + valueType: STRING + +--- +apiVersion: "config.istio.io/v1alpha2" +kind: attributemanifest +metadata: + name: kubernetes + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + attributes: + source.ip: + valueType: IP_ADDRESS + source.labels: + valueType: STRING_MAP + source.metadata: + valueType: STRING_MAP + source.name: + valueType: STRING + source.namespace: + valueType: STRING + source.owner: + valueType: STRING + source.serviceAccount: + valueType: STRING + source.services: + valueType: STRING + source.workload.uid: + valueType: STRING + source.workload.name: + valueType: STRING + source.workload.namespace: + valueType: STRING + destination.ip: + valueType: IP_ADDRESS + destination.labels: + valueType: STRING_MAP + destination.metadata: + valueType: STRING_MAP + destination.owner: + valueType: STRING + destination.name: + valueType: STRING + destination.container.name: + valueType: STRING + destination.namespace: + valueType: STRING + destination.service.uid: + valueType: STRING + destination.service.name: + valueType: STRING + destination.service.namespace: + valueType: STRING + destination.service.host: + valueType: STRING + destination.serviceAccount: + valueType: STRING + destination.workload.uid: + valueType: STRING + destination.workload.name: + valueType: STRING + destination.workload.namespace: + valueType: STRING +--- +{{- if .Values.mixer.adapters.stdio.enabled }} +apiVersion: "config.istio.io/v1alpha2" +kind: handler +metadata: + name: stdio + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledAdapter: stdio + params: + outputAsJson: {{ .Values.mixer.adapters.stdio.outputAsJson }} +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: accesslog + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: logentry + params: + severity: '"Info"' + timestamp: request.time + variables: + sourceIp: source.ip | ip("0.0.0.0") + sourceApp: source.labels["app"] | "" + sourcePrincipal: source.principal | "" + sourceName: source.name | "" + sourceWorkload: source.workload.name | "" + sourceNamespace: source.namespace | "" + sourceOwner: source.owner | "" + destinationApp: destination.labels["app"] | "" + destinationIp: destination.ip | ip("0.0.0.0") + destinationServiceHost: destination.service.host | "" + destinationWorkload: destination.workload.name | "" + destinationName: destination.name | "" + destinationNamespace: destination.namespace | "" + destinationOwner: destination.owner | "" + destinationPrincipal: destination.principal | "" + apiClaims: request.auth.raw_claims | "" + apiKey: request.api_key | request.headers["x-api-key"] | "" + protocol: request.scheme | context.protocol | "http" + method: request.method | "" + url: request.path | "" + responseCode: response.code | 0 + responseFlags: context.proxy_error_code | "" + responseSize: response.size | 0 + permissiveResponseCode: rbac.permissive.response_code | "none" + permissiveResponsePolicyID: rbac.permissive.effective_policy_id | "none" + requestSize: request.size | 0 + requestId: request.headers["x-request-id"] | "" + clientTraceId: request.headers["x-client-trace-id"] | "" + latency: response.duration | "0ms" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + requestedServerName: connection.requested_server_name | "" + userAgent: request.useragent | "" + responseTimestamp: response.time + receivedBytes: request.total_size | 0 + sentBytes: response.total_size | 0 + referer: request.referer | "" + httpAuthority: request.headers[":authority"] | request.host | "" + xForwardedFor: request.headers["x-forwarded-for"] | "0.0.0.0" + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + grpcStatus: response.grpc_status | "" + grpcMessage: response.grpc_message | "" + monitored_resource_type: '"global"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: tcpaccesslog + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: logentry + params: + severity: '"Info"' + timestamp: context.time | timestamp("2017-01-01T00:00:00Z") + variables: + connectionEvent: connection.event | "" + sourceIp: source.ip | ip("0.0.0.0") + sourceApp: source.labels["app"] | "" + sourcePrincipal: source.principal | "" + sourceName: source.name | "" + sourceWorkload: source.workload.name | "" + sourceNamespace: source.namespace | "" + sourceOwner: source.owner | "" + destinationApp: destination.labels["app"] | "" + destinationIp: destination.ip | ip("0.0.0.0") + destinationServiceHost: destination.service.host | "" + destinationWorkload: destination.workload.name | "" + destinationName: destination.name | "" + destinationNamespace: destination.namespace | "" + destinationOwner: destination.owner | "" + destinationPrincipal: destination.principal | "" + protocol: context.protocol | "tcp" + connectionDuration: connection.duration | "0ms" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + requestedServerName: connection.requested_server_name | "" + receivedBytes: connection.received.bytes | 0 + sentBytes: connection.sent.bytes | 0 + totalReceivedBytes: connection.received.bytes_total | 0 + totalSentBytes: connection.sent.bytes_total | 0 + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + responseFlags: context.proxy_error_code | "" + monitored_resource_type: '"global"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stdio + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: context.protocol == "http" || context.protocol == "grpc" + actions: + - handler: stdio + instances: + - accesslog +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stdiotcp + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: context.protocol == "tcp" + actions: + - handler: stdio + instances: + - tcpaccesslog +{{- end }} +--- +{{- if .Values.mixer.adapters.prometheus.enabled }} +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: requestcount + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: "1" + dimensions: + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + source_workload: source.workload.name | "unknown" + source_workload_namespace: source.workload.namespace | "unknown" + source_principal: source.principal | "unknown" + source_app: source.labels["app"] | "unknown" + source_version: source.labels["version"] | "unknown" + destination_workload: destination.workload.name | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_principal: destination.principal | "unknown" + destination_app: destination.labels["app"] | "unknown" + destination_version: destination.labels["version"] | "unknown" + destination_service: destination.service.host | "unknown" + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + request_protocol: api.protocol | context.protocol | "unknown" + response_code: response.code | 200 + response_flags: context.proxy_error_code | "-" + permissive_response_code: rbac.permissive.response_code | "none" + permissive_response_policyid: rbac.permissive.effective_policy_id | "none" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + monitored_resource_type: '"UNSPECIFIED"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: requestduration + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: response.duration | "0ms" + dimensions: + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + source_workload: source.workload.name | "unknown" + source_workload_namespace: source.workload.namespace | "unknown" + source_principal: source.principal | "unknown" + source_app: source.labels["app"] | "unknown" + source_version: source.labels["version"] | "unknown" + destination_workload: destination.workload.name | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_principal: destination.principal | "unknown" + destination_app: destination.labels["app"] | "unknown" + destination_version: destination.labels["version"] | "unknown" + destination_service: destination.service.host | "unknown" + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + request_protocol: api.protocol | context.protocol | "unknown" + response_code: response.code | 200 + response_flags: context.proxy_error_code | "-" + permissive_response_code: rbac.permissive.response_code | "none" + permissive_response_policyid: rbac.permissive.effective_policy_id | "none" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + monitored_resource_type: '"UNSPECIFIED"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: requestsize + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: request.size | 0 + dimensions: + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + source_workload: source.workload.name | "unknown" + source_workload_namespace: source.workload.namespace | "unknown" + source_principal: source.principal | "unknown" + source_app: source.labels["app"] | "unknown" + source_version: source.labels["version"] | "unknown" + destination_workload: destination.workload.name | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_principal: destination.principal | "unknown" + destination_app: destination.labels["app"] | "unknown" + destination_version: destination.labels["version"] | "unknown" + destination_service: destination.service.host | "unknown" + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + request_protocol: api.protocol | context.protocol | "unknown" + response_code: response.code | 200 + response_flags: context.proxy_error_code | "-" + permissive_response_code: rbac.permissive.response_code | "none" + permissive_response_policyid: rbac.permissive.effective_policy_id | "none" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + monitored_resource_type: '"UNSPECIFIED"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: responsesize + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: response.size | 0 + dimensions: + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + source_workload: source.workload.name | "unknown" + source_workload_namespace: source.workload.namespace | "unknown" + source_principal: source.principal | "unknown" + source_app: source.labels["app"] | "unknown" + source_version: source.labels["version"] | "unknown" + destination_workload: destination.workload.name | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_principal: destination.principal | "unknown" + destination_app: destination.labels["app"] | "unknown" + destination_version: destination.labels["version"] | "unknown" + destination_service: destination.service.host | "unknown" + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + request_protocol: api.protocol | context.protocol | "unknown" + response_code: response.code | 200 + response_flags: context.proxy_error_code | "-" + permissive_response_code: rbac.permissive.response_code | "none" + permissive_response_policyid: rbac.permissive.effective_policy_id | "none" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + monitored_resource_type: '"UNSPECIFIED"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: tcpbytesent + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: connection.sent.bytes | 0 + dimensions: + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + source_workload: source.workload.name | "unknown" + source_workload_namespace: source.workload.namespace | "unknown" + source_principal: source.principal | "unknown" + source_app: source.labels["app"] | "unknown" + source_version: source.labels["version"] | "unknown" + destination_workload: destination.workload.name | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_principal: destination.principal | "unknown" + destination_app: destination.labels["app"] | "unknown" + destination_version: destination.labels["version"] | "unknown" + destination_service: destination.service.host | "unknown" + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + response_flags: context.proxy_error_code | "-" + monitored_resource_type: '"UNSPECIFIED"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: tcpbytereceived + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: connection.received.bytes | 0 + dimensions: + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + source_workload: source.workload.name | "unknown" + source_workload_namespace: source.workload.namespace | "unknown" + source_principal: source.principal | "unknown" + source_app: source.labels["app"] | "unknown" + source_version: source.labels["version"] | "unknown" + destination_workload: destination.workload.name | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_principal: destination.principal | "unknown" + destination_app: destination.labels["app"] | "unknown" + destination_version: destination.labels["version"] | "unknown" + destination_service: destination.service.host | "unknown" + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + response_flags: context.proxy_error_code | "-" + monitored_resource_type: '"UNSPECIFIED"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: tcpconnectionsopened + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: "1" + dimensions: + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + source_workload: source.workload.name | "unknown" + source_workload_namespace: source.workload.namespace | "unknown" + source_principal: source.principal | "unknown" + source_app: source.labels["app"] | "unknown" + source_version: source.labels["version"] | "unknown" + destination_workload: destination.workload.name | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_principal: destination.principal | "unknown" + destination_app: destination.labels["app"] | "unknown" + destination_version: destination.labels["version"] | "unknown" + destination_service: destination.service.name | "unknown" + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + response_flags: context.proxy_error_code | "-" + monitored_resource_type: '"UNSPECIFIED"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: tcpconnectionsclosed + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: "1" + dimensions: + reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") + source_workload: source.workload.name | "unknown" + source_workload_namespace: source.workload.namespace | "unknown" + source_principal: source.principal | "unknown" + source_app: source.labels["app"] | "unknown" + source_version: source.labels["version"] | "unknown" + destination_workload: destination.workload.name | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_principal: destination.principal | "unknown" + destination_app: destination.labels["app"] | "unknown" + destination_version: destination.labels["version"] | "unknown" + destination_service: destination.service.name | "unknown" + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + response_flags: context.proxy_error_code | "-" + monitored_resource_type: '"UNSPECIFIED"' +--- +apiVersion: "config.istio.io/v1alpha2" +kind: handler +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledAdapter: prometheus + params: + metricsExpirationPolicy: + metricsExpiryDuration: "{{ .Values.mixer.adapters.prometheus.metricsExpiryDuration }}" + metrics: + - name: requests_total + instance_name: requestcount.instance.{{ .Release.Namespace }} + kind: COUNTER + label_names: + - reporter + - source_app + - source_principal + - source_workload + - source_workload_namespace + - source_version + - destination_app + - destination_principal + - destination_workload + - destination_workload_namespace + - destination_version + - destination_service + - destination_service_name + - destination_service_namespace + - request_protocol + - response_code + - response_flags + - permissive_response_code + - permissive_response_policyid + - connection_security_policy + - name: request_duration_seconds + instance_name: requestduration.instance.{{ .Release.Namespace }} + kind: DISTRIBUTION + label_names: + - reporter + - source_app + - source_principal + - source_workload + - source_workload_namespace + - source_version + - destination_app + - destination_principal + - destination_workload + - destination_workload_namespace + - destination_version + - destination_service + - destination_service_name + - destination_service_namespace + - request_protocol + - response_code + - response_flags + - permissive_response_code + - permissive_response_policyid + - connection_security_policy + buckets: + explicit_buckets: + bounds: [0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10] + - name: request_bytes + instance_name: requestsize.instance.{{ .Release.Namespace }} + kind: DISTRIBUTION + label_names: + - reporter + - source_app + - source_principal + - source_workload + - source_workload_namespace + - source_version + - destination_app + - destination_principal + - destination_workload + - destination_workload_namespace + - destination_version + - destination_service + - destination_service_name + - destination_service_namespace + - request_protocol + - response_code + - response_flags + - permissive_response_code + - permissive_response_policyid + - connection_security_policy + buckets: + exponentialBuckets: + numFiniteBuckets: 8 + scale: 1 + growthFactor: 10 + - name: response_bytes + instance_name: responsesize.instance.{{ .Release.Namespace }} + kind: DISTRIBUTION + label_names: + - reporter + - source_app + - source_principal + - source_workload + - source_workload_namespace + - source_version + - destination_app + - destination_principal + - destination_workload + - destination_workload_namespace + - destination_version + - destination_service + - destination_service_name + - destination_service_namespace + - request_protocol + - response_code + - response_flags + - permissive_response_code + - permissive_response_policyid + - connection_security_policy + buckets: + exponentialBuckets: + numFiniteBuckets: 8 + scale: 1 + growthFactor: 10 + - name: tcp_sent_bytes_total + instance_name: tcpbytesent.instance.{{ .Release.Namespace }} + kind: COUNTER + label_names: + - reporter + - source_app + - source_principal + - source_workload + - source_workload_namespace + - source_version + - destination_app + - destination_principal + - destination_workload + - destination_workload_namespace + - destination_version + - destination_service + - destination_service_name + - destination_service_namespace + - connection_security_policy + - response_flags + - name: tcp_received_bytes_total + instance_name: tcpbytereceived.instance.{{ .Release.Namespace }} + kind: COUNTER + label_names: + - reporter + - source_app + - source_principal + - source_workload + - source_workload_namespace + - source_version + - destination_app + - destination_principal + - destination_workload + - destination_workload_namespace + - destination_version + - destination_service + - destination_service_name + - destination_service_namespace + - connection_security_policy + - response_flags + - name: tcp_connections_opened_total + instance_name: tcpconnectionsopened.instance.{{ .Release.Namespace }} + kind: COUNTER + label_names: + - reporter + - source_app + - source_principal + - source_workload + - source_workload_namespace + - source_version + - destination_app + - destination_principal + - destination_workload + - destination_workload_namespace + - destination_version + - destination_service + - destination_service_name + - destination_service_namespace + - connection_security_policy + - response_flags + - name: tcp_connections_closed_total + instance_name: tcpconnectionsclosed.instance.{{ .Release.Namespace }} + kind: COUNTER + label_names: + - reporter + - source_app + - source_principal + - source_workload + - source_workload_namespace + - source_version + - destination_app + - destination_principal + - destination_workload + - destination_workload_namespace + - destination_version + - destination_service + - destination_service_name + - destination_service_namespace + - connection_security_policy + - response_flags +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: promhttp + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: (context.protocol == "http" || context.protocol == "grpc") && (match((request.useragent | "-"), "kube-probe*") == false) && (match((request.useragent | "-"), "Prometheus*") == false) + actions: + - handler: prometheus + instances: + - requestcount + - requestduration + - requestsize + - responsesize +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: promtcp + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: context.protocol == "tcp" + actions: + - handler: prometheus + instances: + - tcpbytesent + - tcpbytereceived +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: promtcpconnectionopen + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: context.protocol == "tcp" && ((connection.event | "na") == "open") + actions: + - handler: prometheus + instances: + - tcpconnectionsopened +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: promtcpconnectionclosed + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: context.protocol == "tcp" && ((connection.event | "na") == "close") + actions: + - handler: prometheus + instances: + - tcpconnectionsclosed +{{- end }} +--- +{{- if .Values.mixer.adapters.kubernetesenv.enabled }} +apiVersion: "config.istio.io/v1alpha2" +kind: handler +metadata: + name: kubernetesenv + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledAdapter: kubernetesenv + params: + # when running from mixer root, use the following config after adding a + # symbolic link to a kubernetes config file via: + # + # $ ln -s ~/.kube/config mixer/adapter/kubernetes/kubeconfig + # + # kubeconfig_path: "mixer/adapter/kubernetes/kubeconfig" + +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: kubeattrgenrulerule + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + actions: + - handler: kubernetesenv + instances: + - attributes +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: tcpkubeattrgenrulerule + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: context.protocol == "tcp" + actions: + - handler: kubernetesenv + instances: + - attributes +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: attributes + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: kubernetes + params: + # Pass the required attribute data to the adapter + source_uid: source.uid | "" + source_ip: source.ip | ip("0.0.0.0") # default to unspecified ip addr + destination_uid: destination.uid | "" + destination_port: destination.port | 0 + attributeBindings: + # Fill the new attributes from the adapter produced output. + # $out refers to an instance of OutputTemplate message + source.ip: $out.source_pod_ip | ip("0.0.0.0") + source.uid: $out.source_pod_uid | "unknown" + source.labels: $out.source_labels | emptyStringMap() + source.name: $out.source_pod_name | "unknown" + source.namespace: $out.source_namespace | "default" + source.owner: $out.source_owner | "unknown" + source.serviceAccount: $out.source_service_account_name | "unknown" + source.workload.uid: $out.source_workload_uid | "unknown" + source.workload.name: $out.source_workload_name | "unknown" + source.workload.namespace: $out.source_workload_namespace | "unknown" + destination.ip: $out.destination_pod_ip | ip("0.0.0.0") + destination.uid: $out.destination_pod_uid | "unknown" + destination.labels: $out.destination_labels | emptyStringMap() + destination.name: $out.destination_pod_name | "unknown" + destination.container.name: $out.destination_container_name | "unknown" + destination.namespace: $out.destination_namespace | "default" + destination.owner: $out.destination_owner | "unknown" + destination.serviceAccount: $out.destination_service_account_name | "unknown" + destination.workload.uid: $out.destination_workload_uid | "unknown" + destination.workload.name: $out.destination_workload_name | "unknown" + destination.workload.namespace: $out.destination_workload_namespace | "unknown" +{{- end }} +--- +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: istio-telemetry + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + host: istio-telemetry.{{ .Release.Namespace }}.svc.{{ .Values.global.proxy.clusterDomain }} + {{- if .Values.global.defaultConfigVisibilitySettings }} + exportTo: + - '*' + {{- end }} + trafficPolicy: + {{- if .Values.global.controlPlaneSecurityEnabled }} + portLevelSettings: + - port: + number: 15004 + tls: + mode: ISTIO_MUTUAL + {{- end}} + connectionPool: + http: + http2MaxRequests: 10000 + maxRequestsPerConnection: 10000 +--- +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesConfigYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesConfigYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesConfigYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesConfigYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/config.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesConfigmapEnvoyYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + namespace: {{ .Release.Namespace }} + name: telemetry-envoy-config + labels: + release: {{ .Release.Name }} +data: + # Explicitly defined - moved from istio/istio/pilot/docker. + envoy.yaml.tmpl: |- + admin: + access_log_path: /dev/null + address: + socket_address: + address: 127.0.0.1 + port_value: 15000 + stats_config: + use_all_default_tags: false + stats_tags: + - tag_name: cluster_name + regex: '^cluster\.((.+?(\..+?\.svc\.cluster\.local)?)\.)' + - tag_name: tcp_prefix + regex: '^tcp\.((.*?)\.)\w+?$' + - tag_name: response_code + regex: '_rq(_(\d{3}))$' + - tag_name: response_code_class + regex: '_rq(_(\dxx))$' + - tag_name: http_conn_manager_listener_prefix + regex: '^listener(?=\.).*?\.http\.(((?:[_.[:digit:]]*|[_\[\]aAbBcCdDeEfF[:digit:]]*))\.)' + - tag_name: http_conn_manager_prefix + regex: '^http\.(((?:[_.[:digit:]]*|[_\[\]aAbBcCdDeEfF[:digit:]]*))\.)' + - tag_name: listener_address + regex: '^listener\.(((?:[_.[:digit:]]*|[_\[\]aAbBcCdDeEfF[:digit:]]*))\.)' + + static_resources: + clusters: + - name: prometheus_stats + type: STATIC + connect_timeout: 0.250s + lb_policy: ROUND_ROBIN + hosts: + - socket_address: + protocol: TCP + address: 127.0.0.1 + port_value: 15000 + + - name: inbound_9092 + circuit_breakers: + thresholds: + - max_connections: 100000 + max_pending_requests: 100000 + max_requests: 100000 + max_retries: 3 + connect_timeout: 1.000s + hosts: + - pipe: + path: /sock/mixer.socket + http2_protocol_options: {} + + - name: out.galley.15019 + http2_protocol_options: {} + connect_timeout: 1.000s + type: STRICT_DNS + + circuit_breakers: + thresholds: + - max_connections: 100000 + max_pending_requests: 100000 + max_requests: 100000 + max_retries: 3 + + tls_context: + common_tls_context: + tls_certificates: + - certificate_chain: + filename: /etc/certs/cert-chain.pem + private_key: + filename: /etc/certs/key.pem + validation_context: + trusted_ca: + filename: /etc/certs/root-cert.pem + verify_subject_alt_name: + - spiffe://cluster.local/ns/{{ .Values.global.configNamespace }}/sa/istio-galley-service-account + + hosts: + - socket_address: + address: istio-galley.{{ .Values.global.configNamespace }} + port_value: 15019 + + + listeners: + - name: "15090" + address: + socket_address: + protocol: TCP + address: 0.0.0.0 + port_value: 15090 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: AUTO + stat_prefix: stats + route_config: + virtual_hosts: + - name: backend + domains: + - '*' + routes: + - match: + prefix: /stats/prometheus + route: + cluster: prometheus_stats + http_filters: + - name: envoy.router + + - name: "15004" + address: + socket_address: + address: 0.0.0.0 + port_value: 15004 + filter_chains: + - filters: + - config: + codec_type: HTTP2 + http2_protocol_options: + max_concurrent_streams: 1073741824 + generate_request_id: true + http_filters: + - config: + default_destination_service: istio-telemetry.{{ .Release.Namespace }}.svc.cluster.local + service_configs: + istio-telemetry.{{ .Release.Namespace }}.svc.cluster.local: + disable_check_calls: true + {{"{{"}}- if .DisableReportCalls {{"}}"}} + disable_report_calls: true + {{"{{"}}- end {{"}}"}} + mixer_attributes: + attributes: + destination.service.host: + string_value: istio-telemetry.{{ .Release.Namespace }}.svc.cluster.local + destination.service.uid: + string_value: istio://{{ .Release.Namespace }}/services/istio-telemetry + destination.service.name: + string_value: istio-telemetry + destination.service.namespace: + string_value: {{ .Release.Namespace }} + destination.uid: + string_value: kubernetes://{{"{{"}} .PodName {{"}}"}}.{{ .Release.Namespace }} + destination.namespace: + string_value: {{.Release.Namespace }} + destination.ip: + bytes_value: {{"{{"}} .PodIP {{"}}"}} + destination.port: + int64_value: 15004 + context.reporter.kind: + string_value: inbound + context.reporter.uid: + string_value: kubernetes://{{"{{"}} .PodName {{"}}"}}.{{ .Release.Namespace }} + transport: + check_cluster: mixer_check_server + report_cluster: inbound_9092 + name: mixer + - name: envoy.router + route_config: + name: "15004" + virtual_hosts: + - domains: + - '*' + name: istio-telemetry.{{ .Release.Namespace }}.svc.cluster.local + routes: + - decorator: + operation: Report + match: + prefix: / + route: + cluster: inbound_9092 + timeout: 0.000s + stat_prefix: "15004" + name: envoy.http_connection_manager + {{- if .Values.global.controlPlaneSecurityEnabled }} + tls_context: + common_tls_context: + alpn_protocols: + - h2 + tls_certificates: + - certificate_chain: + filename: /etc/certs/cert-chain.pem + private_key: + filename: /etc/certs/key.pem + validation_context: + trusted_ca: + filename: /etc/certs/root-cert.pem + require_client_certificate: true + {{- end }} + + - name: "9091" + address: + socket_address: + address: 0.0.0.0 + port_value: 9091 + filter_chains: + - filters: + - config: + codec_type: HTTP2 + http2_protocol_options: + max_concurrent_streams: 1073741824 + generate_request_id: true + http_filters: + - config: + default_destination_service: istio-telemetry.{{ .Release.Namespace }}.svc.cluster.local + service_configs: + istio-telemetry.{{ .Release.Namespace }}.svc.cluster.local: + disable_check_calls: true + {{"{{"}}- if .DisableReportCalls {{"}}"}} + disable_report_calls: true + {{"{{"}}- end {{"}}"}} + mixer_attributes: + attributes: + destination.service.host: + string_value: istio-telemetry.{{ .Release.Namespace }}.svc.cluster.local + destination.service.uid: + string_value: istio://{{ .Release.Namespace }}/services/istio-telemetry + destination.service.name: + string_value: istio-telemetry + destination.service.namespace: + string_value: {{ .Release.Namespace }} + destination.uid: + string_value: kubernetes://{{"{{"}} .PodName {{"}}"}}.{{ .Release.Namespace }} + destination.namespace: + string_value: {{.Release.Namespace }} + destination.ip: + bytes_value: {{"{{"}} .PodIP {{"}}"}} + destination.port: + int64_value: 9091 + context.reporter.kind: + string_value: inbound + context.reporter.uid: + string_value: kubernetes://{{"{{"}} .PodName {{"}}"}}.{{ .Release.Namespace }} + transport: + check_cluster: mixer_check_server + report_cluster: inbound_9092 + name: mixer + - name: envoy.router + route_config: + name: "9091" + virtual_hosts: + - domains: + - '*' + name: istio-telemetry.{{ .Release.Namespace }}.svc.cluster.local + routes: + - decorator: + operation: Report + match: + prefix: / + route: + cluster: inbound_9092 + timeout: 0.000s + stat_prefix: "9091" + name: envoy.http_connection_manager + + - name: "local.15019" + address: + socket_address: + address: 127.0.0.1 + port_value: 15019 + filter_chains: + - filters: + - name: envoy.http_connection_manager + config: + codec_type: HTTP2 + stat_prefix: "15019" + http2_protocol_options: + max_concurrent_streams: 1073741824 + + access_log: + - name: envoy.file_access_log + config: + path: /dev/stdout + + http_filters: + - name: envoy.router + + route_config: + name: "15019" + + virtual_hosts: + - name: istio-galley + + domains: + - '*' + + routes: + - match: + prefix: / + route: + cluster: out.galley.15019 + timeout: 0.000s +--- +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesConfigmapEnvoyYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesConfigmapEnvoyYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesConfigmapEnvoyYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesConfigmapEnvoyYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/configmap-envoy.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-telemetry + namespace: {{ .Release.Namespace }} + labels: + app: istio-mixer + istio: mixer + release: {{ .Release.Name }} + istio-mixer-type: telemetry +spec: + replicas: {{ .Values.mixer.telemetry.replicaCount }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.mixer.telemetry.rollingMaxSurge }} + maxUnavailable: {{ .Values.mixer.telemetry.rollingMaxUnavailable }} + selector: + matchLabels: + istio: mixer + istio-mixer-type: telemetry + template: + metadata: + labels: + app: istio-telemetry + istio: mixer + istio-mixer-type: telemetry + annotations: + sidecar.istio.io/inject: "false" +{{- with .Values.mixer.telemetry.podAnnotations }} +{{ toYaml . | indent 8 }} +{{- end }} + spec: + serviceAccountName: istio-mixer-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + volumes: + - name: istio-certs + secret: + secretName: istio.istio-mixer-service-account + optional: true + {{- if .Values.global.sds.enabled }} + - hostPath: + path: /var/run/sds + name: sds-uds-path + - name: istio-token + projected: + sources: + - serviceAccountToken: + audience: {{ .Values.global.trustDomain }} + expirationSeconds: 43200 + path: istio-token + {{- end }} + - name: uds-socket + emptyDir: {} + - name: telemetry-adapter-secret + secret: + secretName: telemetry-adapter-secret + optional: true + - name: telemetry-envoy-config + configMap: + name: telemetry-envoy-config + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.mixer.telemetry.tolerations }} + tolerations: +{{ toYaml .Values.mixer.telemetry.tolerations | indent 6 }} +{{- end }} + containers: + - name: mixer +{{- if contains "/" .Values.mixer.telemetry.image }} + image: "{{ .Values.mixer.telemetry.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.mixer.telemetry.image }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 15014 + - containerPort: 42422 + args: + - --monitoringPort=15014 + - --address + - unix:///sock/mixer.socket +{{- if .Values.global.logging.level }} + - --log_output_level={{ .Values.global.logging.level }} +{{- end}} +{{- if .Values.global.logAsJson }} + - --log_as_json +{{- end }} +{{- if .Values.mixer.telemetry.useMCP }} + {{- if .Values.global.controlPlaneSecurityEnabled}} + - --configStoreURL=mcp://localhost:15019 + {{- else }} + - --configStoreURL=mcp://istio-galley.{{ .Values.global.configNamespace }}.svc:9901 + {{- end }} +{{- else }} + - --configStoreURL=k8s:// +{{- end }} + - --configDefaultNamespace={{ .Values.global.telemetryNamespace }} + {{- if .Values.mixer.adapters.useAdapterCRDs }} + - --useAdapterCRDs=true + {{- else }} + - --useAdapterCRDs=false + {{- end }} + - --useTemplateCRDs=false + {{- if .Values.global.tracer.zipkin.address }} + - --trace_zipkin_url=http://{{- .Values.global.tracer.zipkin.address }}/api/v1/spans + {{- else }} + - --trace_zipkin_url=http://zipkin.{{ .Values.global.telemetryNamespace }}:9411/api/v1/spans + {{- end }} + {{- if .Values.mixer.env }} + env: + {{- range $key, $val := .Values.mixer.env }} + - name: {{ $key }} + value: "{{ $val }}" + {{- end }} + {{- end }} + resources: +{{- if .Values.mixer.telemetry.resources }} +{{ toYaml .Values.mixer.telemetry.resources | indent 10 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 10 }} +{{- end }} + volumeMounts: +{{- if .Values.mixer.telemetry.useMCP }} + - name: istio-certs + mountPath: /etc/certs + readOnly: true +{{- end }} + - name: uds-socket + mountPath: /sock + - name: telemetry-adapter-secret + mountPath: /var/run/secrets/istio.io/telemetry/adapter + readOnly: true + livenessProbe: + httpGet: + path: /version + port: 15014 + initialDelaySeconds: 5 + periodSeconds: 5 +{{- if .Values.global.controlPlaneSecurityEnabled }} + - name: istio-proxy +{{- if contains "/" .Values.global.proxy.image }} + image: "{{ .Values.global.proxy.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.global.proxy.image }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 9091 + - containerPort: 15004 + - containerPort: 15090 + protocol: TCP + name: http-envoy-prom + args: + - proxy + - --domain + - $(POD_NAMESPACE).svc.{{ .Values.global.proxy.clusterDomain }} + - --serviceCluster + - istio-telemetry + - --templateFile + - /var/lib/envoy/envoy.yaml.tmpl + {{- if .Values.global.controlPlaneSecurityEnabled }} + - --controlPlaneAuthPolicy + - MUTUAL_TLS + {{- else }} + - --controlPlaneAuthPolicy + - NONE + {{- end }} + {{- if .Values.global.trustDomain }} + - --trust-domain={{ .Values.global.trustDomain }} + {{- end }} + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + env: + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: INSTANCE_IP + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: status.podIP + resources: +{{- if .Values.global.proxy.resources }} +{{ toYaml .Values.global.proxy.resources | indent 10 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 10 }} +{{- end }} + volumeMounts: + - name: telemetry-envoy-config + mountPath: /var/lib/envoy + - name: istio-certs + mountPath: /etc/certs + readOnly: true + {{- if .Values.global.sds.enabled }} + - name: sds-uds-path + mountPath: /var/run/sds + readOnly: true + - name: istio-token + mountPath: /var/run/secrets/tokens + {{- end }} + - name: uds-socket + mountPath: /sock +{{- end }} +--- +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesDeploymentYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesPoddisruptionbudgetYaml = []byte(`{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: istio-telemetry + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} + istio: mixer + istio-mixer-type: telemetry +spec: + minAvailable: 1 + selector: + matchLabels: + app: istio-telemetry + release: {{ .Release.Name }} + istio: mixer + istio-mixer-type: telemetry +--- + +{{- end }} +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: istio-telemetry + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + istio: mixer + release: {{ .Release.Name }} +spec: + ports: + - name: grpc-mixer + port: 9091 + - name: grpc-mixer-mtls + port: 15004 + - name: http-monitoring + port: 15014 + - name: prometheus + port: 42422 + selector: + istio: mixer + istio-mixer-type: telemetry +{{- if .Values.mixer.telemetry.sessionAffinityEnabled }} + sessionAffinity: ClientIP +{{- end }} +--- +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesServiceYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-mixer-service-account + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +--- +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesServiceaccountYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryTemplatesStackdriverYaml = []byte(`{{- if .Values.mixer.adapters.stackdriver.enabled }} +apiVersion: "config.istio.io/v1alpha2" +kind: handler +metadata: + name: stackdriver + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledAdapter: stackdriver + params: + {{- if .Values.mixer.adapters.stackdriver.tracer.enabled }} + trace: + sampleProbability: {{ .Values.mixer.adapters.stackdriver.tracer.sampleProbability | default 1 }} + {{- end }} + pushInterval: 10s + {{- if ne .Values.mixer.adapters.stackdriver.auth.serviceAccountPath "" }} + serviceAccountPath: {{ .Values.mixer.adapters.stackdriver.auth.serviceAccountPath }} + {{- end }} + {{- if ne .Values.mixer.adapters.stackdriver.auth.apiKey "" }} + apiKey: {{ .Values.mixer.adapters.stackdriver.auth.apiKey }} + {{- end }} + {{- if .Values.mixer.adapters.stackdriver.auth.appCredentials }} + appCredentials: {{ .Values.mixer.adapters.stackdriver.auth.appCredentials }} + {{- end }} + metricInfo: + server-request-count.instance.{{ .Release.Namespace }}: + # Due to a bug in gogoproto deserialization, Enums in maps must be + # specified by their integer value, not variant name. See + # https://github.com/googleapis/googleapis/blob/master/google/api/metric.proto + # MetricKind and ValueType for the values to provide. + kind: 3 # CUMULATIVE + value: 2 # INT64 + metric_type: "istio.io/service/server/request_count" + server-request-bytes.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 5 # DISTRIBUTION + buckets: + exponentialBuckets: + numFiniteBuckets: 20 + scale: 1 + growthFactor: 2 + metric_type: "istio.io/service/server/request_bytes" + server-response-bytes.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 5 # DISTRIBUTION + buckets: + exponentialBuckets: + numFiniteBuckets: 20 + scale: 1 + growthFactor: 2 + metric_type: "istio.io/service/server/response_bytes" + server-response-latencies.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 5 # DISTRIBUTION + buckets: + exponentialBuckets: + numFiniteBuckets: 20 + scale: 1 + growthFactor: 2 + metric_type: "istio.io/service/server/response_latencies" + server-received-bytes-count.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 2 # INT64 + metric_type: "istio.io/service/server/received_bytes_count" + server-sent-bytes-count.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 2 # INT64 + metric_type: "istio.io/service/server/sent_bytes_count" + client-request-count.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 2 # INT64 + metric_type: "istio.io/service/client/request_count" + client-request-bytes.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 5 # DISTRIBUTION + buckets: + exponentialBuckets: + numFiniteBuckets: 20 + scale: 1 + growthFactor: 2 + metric_type: "istio.io/service/client/request_bytes" + client-response-bytes.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 5 # DISTRIBUTION + buckets: + exponentialBuckets: + numFiniteBuckets: 20 + scale: 1 + growthFactor: 2 + metric_type: "istio.io/service/client/response_bytes" + client-roundtrip-latencies.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 5 # DISTRIBUTION + buckets: + exponentialBuckets: + numFiniteBuckets: 20 + scale: 1 + growthFactor: 2 + metric_type: "istio.io/service/client/roundtrip_latencies" + client-received-bytes-count.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 2 # INT64 + metric_type: "istio.io/service/client/received_bytes_count" + client-sent-bytes-count.instance.{{ .Release.Namespace }}: + kind: 3 # CUMULATIVE + value: 2 # INT64 + metric_type: "istio.io/service/client/sent_bytes_count" + logInfo: + server-accesslog-stackdriver.instance.{{ .Release.Namespace }}: + labelNames: + - source_uid + - source_ip + - source_app + - source_principal + - source_name + - source_workload + - source_namespace + - source_owner + - destination_uid + - destination_app + - destination_ip + - destination_service_host + - destination_workload + - destination_name + - destination_namespace + - destination_owner + - destination_principal + - api_name + - api_version + - api_claims + - api_key + - request_operation + - protocol + - method + - url + - response_code + - response_size + - request_size + - request_id + - latency + - service_authentication_policy + - user_agent + - response_timestamp + - received_bytes + - sent_bytes + - referer + server-tcp-accesslog-stackdriver.instance.{{ .Release.Namespace }}: + labelNames: + - connection_id + - connection_event + - source_uid + - source_ip + - source_app + - source_principal + - source_name + - source_workload + - source_namespace + - source_owner + - destination_uid + - destination_app + - destination_ip + - destination_service_host + - destination_workload + - destination_name + - destination_namespace + - destination_owner + - destination_principal + - protocol + - connction_duration + - service_authentication_policy + - received_bytes + - sent_bytes + - total_received_bytes + - total_sent_bytes +--- +################################################# +############## Metric Config #################### +################################################# +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stackdriver-server + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: (context.protocol == "http" || context.protocol == "grpc") && (context.reporter.kind | "inbound" == "inbound") + actions: + - handler: stackdriver + instances: + - server-request-count + - server-request-bytes + - server-response-bytes + - server-response-latencies +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stackdriver-client + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: (context.protocol == "http" || context.protocol == "grpc") && (context.reporter.kind | "inbound" == "outbound") + actions: + - handler: stackdriver + instances: + - client-request-count + - client-request-bytes + - client-response-bytes + - client-roundtrip-latencies +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stackdriver-tcp-server + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: context.protocol == "tcp" && (context.reporter.kind | "inbound" == "inbound") + actions: + - handler: stackdriver + instances: + - server-received-bytes-count + - server-sent-bytes-count +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stackdriver-tcp-client + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: context.protocol == "tcp" && (context.reporter.kind | "inbound" == "outbound") + actions: + - handler: stackdriver + instances: + - client-received-bytes-count + - client-sent-bytes-count +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: server-request-count + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: "1" + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_container"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: destination.workload.namespace | "unknown" + location: '""' + container_name: conditional((destination.name | "unknown").startsWith("istio-telemetry") || (destination.name | "unknown").startsWith("istio-policy"), "mixer", destination.container.name | "unknown") + pod_name: destination.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: client-request-count + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: "1" + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_pod"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: source.workload.namespace | "unknown" + location: '""' + pod_name: source.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: server-request-bytes + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: request.total_size + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_container"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: destination.workload.namespace | "unknown" + location: '""' + container_name: conditional((destination.name | "unknown").startsWith("istio-telemetry") || (destination.name | "unknown").startsWith("istio-policy"), "mixer", destination.container.name | "unknown") + pod_name: destination.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: client-request-bytes + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: request.total_size + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_pod"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: source.workload.namespace | "unknown" + location: '""' + pod_name: source.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: server-response-bytes + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: response.total_size + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_container"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: destination.workload.namespace | "unknown" + location: '""' + container_name: conditional((destination.name | "unknown").startsWith("istio-telemetry") || (destination.name | "unknown").startsWith("istio-policy"), "mixer", destination.container.name | "unknown") + pod_name: destination.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: client-response-bytes + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: response.total_size + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_pod"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: source.workload.namespace | "unknown" + location: '""' + pod_name: source.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: server-response-latencies + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: response.duration + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_container"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: destination.workload.namespace | "unknown" + location: '""' + container_name: conditional((destination.name | "unknown").startsWith("istio-telemetry") || (destination.name | "unknown").startsWith("istio-policy"), "mixer", destination.container.name | "unknown") + pod_name: destination.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: client-roundtrip-latencies + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: response.duration + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_pod"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: source.workload.namespace | "unknown" + location: '""' + pod_name: source.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: server-received-bytes-count + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: connection.received.bytes | 0 + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_protocol: context.protocol | "unknown" + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_container"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: destination.workload.namespace | "unknown" + location: '""' + container_name: conditional((destination.name | "unknown").startsWith("istio-telemetry") || (destination.name | "unknown").startsWith("istio-policy"), "mixer", destination.container.name | "unknown") + pod_name: destination.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: client-received-bytes-count + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: connection.received.bytes | 0 + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_protocol: context.protocol | "unknown" + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_pod"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: source.workload.namespace | "unknown" + location: '""' + pod_name: source.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: server-sent-bytes-count + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: connection.sent.bytes | 0 + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_protocol: context.protocol | "unknown" + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_container"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: destination.workload.namespace | "unknown" + location: '""' + container_name: conditional((destination.name | "unknown").startsWith("istio-telemetry") || (destination.name | "unknown").startsWith("istio-policy"), "mixer", destination.container.name | "unknown") + pod_name: destination.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: client-sent-bytes-count + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: metric + params: + value: connection.sent.bytes | 0 + dimensions: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_protocol: context.protocol | "unknown" + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + destination_principal: destination.principal | "unknown" + source_principal: source.principal | "unknown" + monitoredResourceType: '"k8s_pod"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: source.workload.namespace | "unknown" + location: '""' + pod_name: source.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: server-accesslog-stackdriver + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: logentry + params: + severity: '"Info"' + timestamp: request.time + variables: + source_uid: source.uid | "" + source_ip: source.ip | ip("0.0.0.0") + source_app: source.labels["app"] | "" + source_principal: source.principal | "" + source_name: source.name | "" + source_workload: source.workload.name | "" + source_namespace: source.namespace | "" + source_owner: source.owner | "" + destination_uid: destination.uid | "" + destination_app: destination.labels["app"] | "" + destination_ip: destination.ip | ip("0.0.0.0") + destination_service_host: destination.service.host | "" + destination_workload: destination.workload.name | "" + destination_name: destination.name | "" + destination_namespace: destination.namespace | "" + destination_owner: destination.owner | "" + destination_principal: destination.principal | "" + api_name: api.service | "" + api_version: api.version | "" + api_claims: request.auth.raw_claims | "" + api_key: request.api_key | request.headers["x-api-key"] | "" + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + protocol: request.scheme | context.protocol | "http" + method: request.method | "" + url: request.path | "" + response_code: response.code | 0 + response_size: response.size | 0 + request_size: request.size | 0 + request_id: request.headers["x-request-id"] | "" + latency: response.duration | "0ms" + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + user_agent: request.useragent | "" + response_timestamp: response.time + received_bytes: request.total_size | 0 + sent_bytes: response.total_size | 0 + referer: request.referer | "" + monitored_resource_type: '"k8s_container"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: destination.namespace | "unknown" + location: '""' + container_name: conditional((destination.name | "unknown").startsWith("istio-telemetry") || (destination.name | "unknown").startsWith("istio-policy"), "mixer", destination.container.name | "unknown") + pod_name: destination.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: server-tcp-accesslog-stackdriver + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: logentry + params: + severity: '"Info"' + timestamp: context.time | timestamp("2017-01-01T00:00:00Z") + variables: + source_uid: source.uid | "" + connection_id: connection.id | "" + connection_event: connection.event | "" + source_ip: source.ip | ip("0.0.0.0") + source_app: source.labels["app"] | "" + source_principal: source.principal | "" + source_name: source.name | "" + source_workload: source.workload.name | "" + source_namespace: source.namespace | "" + source_owner: source.owner | "" + destination_uid: destination.uid | "" + destination_app: destination.labels["app"] | "" + destination_ip: destination.ip | ip("0.0.0.0") + destination_service_host: destination.service.host | "" + destination_workload: destination.workload.name | "" + destination_name: destination.name | "" + destination_namespace: destination.namespace | "" + destination_owner: destination.owner | "" + destination_principal: destination.principal | "" + protocol: context.protocol | "tcp" + connction_duration: connection.duration | "0ms" + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + received_bytes: connection.received.bytes | 0 + sent_bytes: connection.sent.bytes | 0 + total_received_bytes: connection.received.bytes_total | 0 + total_sent_bytes: connection.sent.bytes_total | 0 + monitored_resource_type: '"k8s_container"' + monitoredResourceDimensions: + project_id: '""' + cluster_name: '""' + namespace_name: destination.namespace | "unknown" + location: '""' + container_name: conditional((destination.name | "unknown").startsWith("istio-telemetry") || (destination.name | "unknown").startsWith("istio-policy"), "mixer", destination.container.name | "unknown") + pod_name: destination.name | "unknown" +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stackdriver-log + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: (context.protocol == "http" || context.protocol == "grpc") && (context.reporter.kind | "inbound" == "inbound") + actions: + - handler: stackdriver + instances: + - server-accesslog-stackdriver +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stackdriver-log-tcp + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: (context.protocol == "tcp") && (context.reporter.kind | "inbound" == "inbound") + actions: + - handler: stackdriver + instances: + - server-tcp-accesslog-stackdriver +--- +{{- if .Values.mixer.adapters.stackdriver.tracer.enabled }} +apiVersion: "config.istio.io/v1alpha2" +kind: instance +metadata: + name: stackdriver-span + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + compiledTemplate: tracespan + params: + traceId: request.headers["x-b3-traceid"] + spanId: request.headers["x-b3-spanid"] | "" + parentSpanId: request.headers["x-b3-parentspanid"] | "" + spanName: destination.service.host | destination.service.name | destination.workload.name | "unknown" + startTime: request.time + endTime: response.time + clientSpan: (context.reporter.kind | "inbound") == "outbound" + rewriteClientSpanId: "true" + spanTags: + destination_service_name: destination.service.name | "unknown" + destination_service_namespace: destination.service.namespace | "unknown" + destination_port: destination.port | 0 + request_operation: conditional((context.protocol | "unknown") == "grpc", request.path | "unknown", request.method | "unknown") + request_protocol: context.protocol | "unknown" + api_version: api.version | "unknown" + api_name: api.service | "unknown" + response_code: response.code | 0 + service_authentication_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) + source_workload_namespace: source.workload.namespace | "unknown" + source_workload_name: source.workload.name | "unknown" + source_owner: source.owner | "unknown" + destination_workload_namespace: destination.workload.namespace | "unknown" + destination_workload_name: destination.workload.name | "unknown" + destination_owner: destination.owner | "unknown" + http_url: request.path | "" + request_size: request.size | 0 + response_size: response.size | 0 + source_ip: source.ip | ip("0.0.0.0") +--- +apiVersion: "config.istio.io/v1alpha2" +kind: rule +metadata: + name: stackdriver-tracing-rule + namespace: {{ .Release.Namespace }} + labels: + app: istio-telemetry + release: {{ .Release.Name }} +spec: + match: (context.protocol == "http" || context.protocol == "grpc") && request.headers["x-b3-sampled"] == "1" && destination.workload.name != "istio-telemetry" && destination.workload.name != "istio-pilot" + actions: + - handler: stackdriver + instances: + - stackdriver-span +{{- end }} +{{- end }} +`) + +func chartsIstioTelemetryMixerTelemetryTemplatesStackdriverYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryTemplatesStackdriverYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryTemplatesStackdriverYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryTemplatesStackdriverYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/templates/stackdriver.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryMixerTelemetryValuesYaml = []byte(`mixer: + env: + GODEBUG: gctrace=1 + # max procs should be ceil(cpu limit + 1) + GOMAXPROCS: "6" + + adapters: + # stdio is a debug adapter in istio-telemetry, it is not recommended for production use. + stdio: + # If set to true, will add 'rule' and 'stdio' handler for access logs. + # If false, user will need to configure their own rules outside of installer. + enabled: false + outputAsJson: false + + prometheus: + enabled: true + metricsExpiryDuration: 10m + + kubernetesenv: + enabled: true + + stackdriver: + enabled: false + + auth: + appCredentials: false + apiKey: "" + serviceAccountPath: "" + + tracer: + enabled: false + sampleProbability: 1 + + # Setting this to false sets the useAdapterCRDs mixer startup argument to false + useAdapterCRDs: false + + telemetry: + image: mixer + enabled: true + replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + autoscaleEnabled: true + autoscaleMin: 1 + autoscaleMax: 5 + cpu: + targetAverageUtilization: 80 + sessionAffinityEnabled: false + + # mixer load shedding configuration. + # When mixer detects that it is overloaded, it starts rejecting grpc requests. + loadshedding: + # disabled, logonly or enforce + mode: enforce + # based on measurements 100ms p50 translates to p99 of under 1s. This is ok for telemetry which is inherently async. + latencyThreshold: 100ms + resources: + requests: + cpu: 1000m + memory: 1G + limits: + # It is best to do horizontal scaling of mixer using moderate cpu allocation. + # We have experimentally found that these values work well. + cpu: 4800m + memory: 4G + + # Set reportBatchMaxEntries to 0 to use the default batching behavior (i.e., every 100 requests). + # A positive value indicates the number of requests that are batched before telemetry data + # is sent to the mixer server + reportBatchMaxEntries: 100 + + # Set reportBatchMaxTime to 0 to use the default batching behavior (i.e., every 1 second). + # A positive time value indicates the maximum wait time since the last request will telemetry data + # be batched before being sent to the mixer server + reportBatchMaxTime: 1s + + # Indicate if Galley is enabled to send MCP queries + useMCP: true + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsIstioTelemetryMixerTelemetryValuesYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryMixerTelemetryValuesYaml, nil +} + +func chartsIstioTelemetryMixerTelemetryValuesYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryMixerTelemetryValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/mixer-telemetry/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusChartYaml = []byte(`apiVersion: v1 +description: A Helm chart for Kubernetes +name: prometheus +version: 1.1.0 +appVersion: 2.8.0 +tillerVersion: ">=2.7.2" +`) + +func chartsIstioTelemetryPrometheusChartYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusChartYaml, nil +} + +func chartsIstioTelemetryPrometheusChartYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.prometheus.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.prometheus.podAntiAffinityLabelSelector .Values.prometheus.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.prometheus.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.prometheus.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.prometheus.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.prometheus.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioTelemetryPrometheusTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplates_affinityTpl, nil +} + +func chartsIstioTelemetryPrometheusTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: prometheus-{{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +rules: +- apiGroups: [""] + resources: + - nodes + - services + - endpoints + - pods + - nodes/proxy + verbs: ["get", "list", "watch"] +- apiGroups: [""] + resources: + - configmaps + verbs: ["get"] +- nonResourceURLs: ["/metrics"] + verbs: ["get"] +`) + +func chartsIstioTelemetryPrometheusTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesClusterroleYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesClusterrolebindingsYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: prometheus-{{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: prometheus-{{ .Release.Namespace }} +subjects: +- kind: ServiceAccount + name: prometheus + namespace: {{ .Release.Namespace }} +`) + +func chartsIstioTelemetryPrometheusTemplatesClusterrolebindingsYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesClusterrolebindingsYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesClusterrolebindingsYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesClusterrolebindingsYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/clusterrolebindings.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesConfigmapYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +data: + prometheus.yml: |- + global: + scrape_interval: {{ .Values.prometheus.scrapeInterval }} + scrape_configs: + + # Mixer scrapping. Defaults to Prometheus and mixer on same namespace. + # + - job_name: 'istio-mesh' + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - {{ .Release.Namespace }} + {{- range $key, $value := .Values.prometheus.datasources }} + - {{ $value }} + {{- end }} + relabel_configs: + - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] + action: keep + regex: istio-telemetry;prometheus + + # Scrape config for envoy stats + - job_name: 'envoy-stats' + metrics_path: /stats/prometheus + kubernetes_sd_configs: + - role: pod + + relabel_configs: + - source_labels: [__meta_kubernetes_pod_container_port_name] + action: keep + regex: '.*-envoy-prom' + - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] + action: replace + regex: ([^:]+)(?::\d+)?;(\d+) + replacement: $1:15090 + target_label: __address__ + - action: labelmap + regex: __meta_kubernetes_pod_label_(.+) + - source_labels: [__meta_kubernetes_namespace] + action: replace + target_label: namespace + - source_labels: [__meta_kubernetes_pod_name] + action: replace + target_label: pod_name + + - job_name: 'istio-policy' + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - {{ .Values.global.policyNamespace }} + + + relabel_configs: + - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] + action: keep + regex: istio-policy;http-policy-monitoring + + - job_name: 'istio-telemetry' + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - {{ .Release.Namespace }} + + relabel_configs: + - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] + action: keep + regex: istio-telemetry;http-monitoring + + - job_name: 'pilot' + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - {{ .Values.global.istioNamespace }} + + relabel_configs: + - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] + action: keep + regex: istio-pilot;http-monitoring + + - job_name: 'galley' + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - {{ .Values.global.configNamespace }} + + relabel_configs: + - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] + action: keep + regex: istio-galley;http-monitoring + + - job_name: 'citadel' + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - {{ .Release.Namespace }} + + relabel_configs: + - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] + action: keep + regex: istio-citadel;http-monitoring + + # scrape config for API servers + - job_name: 'kubernetes-apiservers' + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: + - default + scheme: https + tls_config: + ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt + bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token + relabel_configs: + - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] + action: keep + regex: kubernetes;https + + # scrape config for nodes (kubelet) + - job_name: 'kubernetes-nodes' + scheme: https + tls_config: + ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt + bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token + kubernetes_sd_configs: + - role: node + relabel_configs: + - action: labelmap + regex: __meta_kubernetes_node_label_(.+) + - target_label: __address__ + replacement: kubernetes.default.svc:443 + - source_labels: [__meta_kubernetes_node_name] + regex: (.+) + target_label: __metrics_path__ + replacement: /api/v1/nodes/${1}/proxy/metrics + + # Scrape config for Kubelet cAdvisor. + # + # This is required for Kubernetes 1.7.3 and later, where cAdvisor metrics + # (those whose names begin with 'container_') have been removed from the + # Kubelet metrics endpoint. This job scrapes the cAdvisor endpoint to + # retrieve those metrics. + # + # In Kubernetes 1.7.0-1.7.2, these metrics are only exposed on the cAdvisor + # HTTP endpoint; use "replacement: /api/v1/nodes/${1}:4194/proxy/metrics" + # in that case (and ensure cAdvisor's HTTP server hasn't been disabled with + # the --cadvisor-port=0 Kubelet flag). + # + # This job is not necessary and should be removed in Kubernetes 1.6 and + # earlier versions, or it will cause the metrics to be scraped twice. + - job_name: 'kubernetes-cadvisor' + scheme: https + tls_config: + ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt + bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token + kubernetes_sd_configs: + - role: node + relabel_configs: + - action: labelmap + regex: __meta_kubernetes_node_label_(.+) + - target_label: __address__ + replacement: kubernetes.default.svc:443 + - source_labels: [__meta_kubernetes_node_name] + regex: (.+) + target_label: __metrics_path__ + replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor + + # scrape config for service endpoints. + - job_name: 'kubernetes-service-endpoints' + kubernetes_sd_configs: + - role: endpoints + relabel_configs: + - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape] + action: keep + regex: true + - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme] + action: replace + target_label: __scheme__ + regex: (https?) + - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path] + action: replace + target_label: __metrics_path__ + regex: (.+) + - source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port] + action: replace + target_label: __address__ + regex: ([^:]+)(?::\d+)?;(\d+) + replacement: $1:$2 + - action: labelmap + regex: __meta_kubernetes_service_label_(.+) + - source_labels: [__meta_kubernetes_namespace] + action: replace + target_label: kubernetes_namespace + - source_labels: [__meta_kubernetes_service_name] + action: replace + target_label: kubernetes_name + + - job_name: 'kubernetes-pods' + kubernetes_sd_configs: + - role: pod + relabel_configs: # If first two labels are present, pod should be scraped by the istio-secure job. + - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] + action: keep + regex: true + - source_labels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status] + action: drop + regex: (.+) + - source_labels: [__meta_kubernetes_pod_annotation_istio_mtls] + action: drop + regex: (true) + - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path] + action: replace + target_label: __metrics_path__ + regex: (.+) + - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] + action: replace + regex: ([^:]+)(?::\d+)?;(\d+) + replacement: $1:$2 + target_label: __address__ + - action: labelmap + regex: __meta_kubernetes_pod_label_(.+) + - source_labels: [__meta_kubernetes_namespace] + action: replace + target_label: namespace + - source_labels: [__meta_kubernetes_pod_name] + action: replace + target_label: pod_name + +{{- if .Values.prometheus.security.enabled }} + - job_name: 'kubernetes-pods-istio-secure' + scheme: https + tls_config: + ca_file: /etc/istio-certs/root-cert.pem + cert_file: /etc/istio-certs/cert-chain.pem + key_file: /etc/istio-certs/key.pem + insecure_skip_verify: true # prometheus does not support secure naming. + kubernetes_sd_configs: + - role: pod + relabel_configs: + - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] + action: keep + regex: true + # sidecar status annotation is added by sidecar injector and + # istio_workload_mtls_ability can be specifically placed on a pod to indicate its ability to receive mtls traffic. + - source_labels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_pod_annotation_istio_mtls] + action: keep + regex: (([^;]+);([^;]*))|(([^;]*);(true)) + - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path] + action: replace + target_label: __metrics_path__ + regex: (.+) + - source_labels: [__address__] # Only keep address that is host:port + action: keep # otherwise an extra target with ':443' is added for https scheme + regex: ([^:]+):(\d+) + - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] + action: replace + regex: ([^:]+)(?::\d+)?;(\d+) + replacement: $1:$2 + target_label: __address__ + - action: labelmap + regex: __meta_kubernetes_pod_label_(.+) + - source_labels: [__meta_kubernetes_namespace] + action: replace + target_label: namespace + - source_labels: [__meta_kubernetes_pod_name] + action: replace + target_label: pod_name +{{- end }} +`) + +func chartsIstioTelemetryPrometheusTemplatesConfigmapYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesConfigmapYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesConfigmapYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesConfigmapYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/configmap.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesDeploymentYaml = []byte(`# TODO: the original template has service account, roles, etc +apiVersion: apps/v1 +kind: Deployment +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +spec: + replicas: {{ .Values.prometheus.replicaCount }} + selector: + matchLabels: + app: prometheus + template: + metadata: + labels: + app: prometheus + release: {{ .Release.Name }} + annotations: + sidecar.istio.io/inject: "false" + spec: + serviceAccountName: prometheus +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: prometheus + image: "{{ .Values.prometheus.hub }}/{{ .Values.prometheus.image }}:{{ .Values.prometheus.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + args: + - '--storage.tsdb.retention={{ .Values.prometheus.retention }}' + - '--config.file=/etc/prometheus/prometheus.yml' + ports: + - containerPort: 9090 + name: http + livenessProbe: + httpGet: + path: /-/healthy + port: 9090 + readinessProbe: + httpGet: + path: /-/ready + port: 9090 + resources: +{{- if .Values.prometheus.resources }} +{{ toYaml .Values.prometheus.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + volumeMounts: + - name: config-volume + mountPath: /etc/prometheus + - mountPath: /etc/istio-certs + name: istio-certs + volumes: + - name: config-volume + configMap: + name: prometheus + - name: istio-certs + secret: + defaultMode: 420 +{{- if not .Values.prometheus.security.enabled }} + optional: true +{{- end }} + secretName: istio.default + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.prometheus.tolerations }} + tolerations: +{{ toYaml .Values.prometheus.tolerations | indent 6 }} +{{- end }} +`) + +func chartsIstioTelemetryPrometheusTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesDeploymentYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesDestinationRuleYaml = []byte(`apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: prometheys + namespace: {{ .Release.Namespace }} +spec: + host: prometheus.{{ .Release.Namespace }} + trafficPolicy: + tls: + mode: DISABLE +--- +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: prometheus-full + namespace: {{ .Release.Namespace }} +spec: + host: prometheus.{{ .Release.Namespace }}.svc.cluster.local + trafficPolicy: + tls: + mode: DISABLE +`) + +func chartsIstioTelemetryPrometheusTemplatesDestinationRuleYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesDestinationRuleYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesDestinationRuleYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesDestinationRuleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/destination-rule.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesInrgessYaml = []byte(`{{- if .Values.prometheus.ingress.enabled -}} +apiVersion: extensions/v1beta1 +kind: Ingress +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} + annotations: + {{- range $key, $value := .Values.prometheus.ingress.annotations }} + {{ $key }}: {{ $value | quote }} + {{- end }} +spec: + rules: +{{- if .Values.prometheus.ingress.hosts }} + {{- range $host := .Values.prometheus.ingress.hosts }} + - host: {{ $host }} + http: + paths: + - path: {{ if $.Values.prometheus.contextPath }} {{ $.Values.prometheus.contextPath }} {{ else }} / {{ end }} + backend: + serviceName: prometheus + servicePort: 9090 + {{- end -}} +{{- else }} + - http: + paths: + - path: {{ if .Values.prometheus.contextPath }} {{ .Values.prometheus.contextPath }} {{ else }} / {{ end }} + backend: + serviceName: prometheus + servicePort: 9090 +{{- end }} + {{- if .Values.prometheus.ingress.tls }} + tls: +{{ toYaml .Values.prometheus.ingress.tls | indent 4 }} + {{- end -}} +{{- end -}}`) + +func chartsIstioTelemetryPrometheusTemplatesInrgessYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesInrgessYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesInrgessYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesInrgessYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/inrgess.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + annotations: + prometheus.io/scrape: 'true' + {{- if .Values.prometheus.service }} + {{- range $key, $val := .Values.prometheus.service.annotations }} + {{ $key }}: {{ $val | quote }} + {{- end }} + {{- end }} + labels: + app: prometheus + release: {{ .Release.Name }} +spec: + selector: + app: prometheus + ports: + - name: http-prometheus + protocol: TCP + port: 9090 + +{{- if .Values.prometheus.service }} +# Using separate ingress for nodeport, to avoid conflict with pilot e2e test configs. +--- +apiVersion: v1 +kind: Service +metadata: + name: prometheus-nodeport + namespace: {{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +spec: + type: NodePort + ports: + - port: 9090 + nodePort: {{ .Values.prometheus.service.nodePort.port }} + name: http-prometheus + selector: + app: prometheus +{{- end }} +`) + +func chartsIstioTelemetryPrometheusTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesServiceYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +`) + +func chartsIstioTelemetryPrometheusTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesServiceaccountYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusTemplatesTestsTestPrometheusConnectionYaml = []byte(`{{- if .Values.global.enableHelmTest }} +apiVersion: v1 +kind: Pod +metadata: + name: prometheus-test + namespace: {{ .Release.Namespace }} + labels: + app: prometheus-test + release: {{ .Release.Name }} + istio: prometheus + annotations: + sidecar.istio.io/inject: "false" + helm.sh/hook: test-success +spec: +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: "prometheus-test" + image: {{ .Values.global.hub }}/{{ .Values.global.proxy.image }}:{{ .Values.global.tag }} + imagePullPolicy: "{{ .Values.global.imagePullPolicy }}" + command: ['sh', '-c', 'for i in 1 2 3; do curl http://prometheus:9090/-/ready && exit 0 || sleep 15; done; exit 1'] + restartPolicy: Never + affinity: + {{- include "nodeaffinity" . | indent 4 }} + {{- include "podAntiAffinity" . | indent 4 }} +{{- end }} +`) + +func chartsIstioTelemetryPrometheusTemplatesTestsTestPrometheusConnectionYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusTemplatesTestsTestPrometheusConnectionYaml, nil +} + +func chartsIstioTelemetryPrometheusTemplatesTestsTestPrometheusConnectionYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusTemplatesTestsTestPrometheusConnectionYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/templates/tests/test-prometheus-connection.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusValuesYaml = []byte(`prometheus: + enabled: true + replicaCount: 1 + hub: docker.io/prom + image: prometheus + tag: v2.8.0 + retention: 6h + + # Controls the frequency of prometheus scraping + scrapeInterval: 15s + + contextPath: /prometheus + + ingress: + enabled: false + ## Used to create an Ingress record. + hosts: + - prometheus.local + annotations: + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + tls: + # Secrets must be manually created in the namespace. + # - secretName: prometheus-tls + # hosts: + # - prometheus.local + + # 1.2 it is disabled by default - it can be enabled for special cases, but would create port + # conflicts. In general it is not recommended to use node ports for services, but use gateways instead. +# service: +# annotations: {} +# nodePort: +# enabled: false +# port: 32090 + + # Indicate if Citadel is enabled, i.e., whether its generated certificates are available + security: + enabled: true + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsIstioTelemetryPrometheusValuesYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusValuesYaml, nil +} + +func chartsIstioTelemetryPrometheusValuesYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusOperatorChartYaml = []byte(`apiVersion: v1 +description: A Helm chart for Kubernetes +name: prometheus-operator +version: 1.1.0 +appVersion: 2.3.1 +tillerVersion: ">=2.7.2" +`) + +func chartsIstioTelemetryPrometheusOperatorChartYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusOperatorChartYaml, nil +} + +func chartsIstioTelemetryPrometheusOperatorChartYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusOperatorChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus-operator/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusOperatorTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.prometheus.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.prometheus.podAntiAffinityLabelSelector .Values.prometheus.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.prometheus.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.prometheus.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.prometheus.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.prometheus.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstioTelemetryPrometheusOperatorTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusOperatorTemplates_affinityTpl, nil +} + +func chartsIstioTelemetryPrometheusOperatorTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusOperatorTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus-operator/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusOperatorTemplatesPrometheusYaml = []byte(`{{- if .Values.prometheus.createPrometheusResource }} +apiVersion: monitoring.coreos.com/v1 +kind: Prometheus +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +spec: + image: "{{ .Values.prometheus.hub }}/{{ .Values.prometheus.image | default "prometheus" }}:{{ .Values.prometheus.tag }}" + version: {{ .Values.prometheus.tag }} + retention: {{ .Values.prometheus.retention }} + scrapeInterval: {{ .Values.prometheus.scrapeInterval }} + serviceAccountName: prometheus + serviceMonitorSelector: + any: true + serviceMonitorNamespaceSelector: + any: true + secrets: [ istio.prometheus ] + enableAdminAPI: false +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + affinity: + {{- include "nodeaffinity" . | indent 2 }} + {{- include "podAntiAffinity" . | indent 2 }} +{{- if .Values.prometheus.tolerations }} + tolerations: +{{ toYaml .Values.prometheus.tolerations | indent 2 }} +{{- end }} + podMetadata: + labels: + app: prometheus + release: {{ .Release.Name }} + annotations: + sidecar.istio.io/inject: "false" + resources: + requests: + memory: 400Mi +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: prometheus-{{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +rules: +- apiGroups: [""] + resources: + - nodes + - services + - endpoints + - pods + - nodes/proxy + verbs: ["get", "list", "watch"] +- apiGroups: [""] + resources: + - configmaps + verbs: ["get"] +- nonResourceURLs: ["/metrics"] + verbs: ["get"] +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: prometheus-{{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: prometheus-{{ .Release.Namespace }} +subjects: +- kind: ServiceAccount + name: prometheus + namespace: {{ .Release.Namespace }} +--- +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} +spec: + host: prometheus.{{ .Release.Namespace }} + trafficPolicy: + tls: + mode: DISABLE +--- +apiVersion: networking.istio.io/v1alpha3 +kind: DestinationRule +metadata: + name: prometheus-full + namespace: {{ .Release.Namespace }} +spec: + host: prometheus.{{ .Release.Namespace }}.svc.cluster.local + trafficPolicy: + tls: + mode: DISABLE +--- +{{- if not .Values.prometheus.service.nodePort.enabled }} +apiVersion: v1 +kind: Service +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + annotations: + prometheus.io/scrape: 'true' + {{- if .Values.service }} + {{- range $key, $val := .Values.prometheus.service.annotations }} + {{ $key }}: {{ $val | quote }} + {{- end }} + {{- end }} + labels: + app: prometheus + release: {{ .Release.Name }} +spec: + selector: + app: prometheus + ports: + - name: http-prometheus + protocol: TCP + port: 9090 +{{- else }} +# Using separate ingress for nodeport, to avoid conflict with pilot e2e test configs. +apiVersion: v1 +kind: Service +metadata: + name: prometheus-nodeport + namespace: {{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +spec: + type: NodePort + ports: + - port: 9090 + nodePort: {{ .Values.prometheus.service.nodePort.port }} + name: http-prometheus + selector: + app: prometheus +{{- end }} +--- +apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: prometheus + namespace: {{ .Release.Namespace }} + labels: + app: prometheus + release: {{ .Release.Name }} +{{- end }} +`) + +func chartsIstioTelemetryPrometheusOperatorTemplatesPrometheusYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusOperatorTemplatesPrometheusYaml, nil +} + +func chartsIstioTelemetryPrometheusOperatorTemplatesPrometheusYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusOperatorTemplatesPrometheusYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus-operator/templates/prometheus.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusOperatorTemplatesServicemonitorsYaml = []byte(`apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: istio-mesh-monitor + namespace: {{ .Release.Namespace }} + labels: + monitoring: istio-mesh + release: {{ .Release.Name }} +spec: + selector: + matchExpressions: + - {key: istio, operator: In, values: [mixer]} + namespaceSelector: + matchNames: + - {{ .Values.global.telemetryNamespace }} + endpoints: + - port: prometheus + interval: {{ .Values.prometheus.scrapeInterval }} +--- +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: istio-component-monitor + namespace: {{ .Release.Namespace }} + labels: + monitoring: istio-components + release: {{ .Release.Name }} +spec: + selector: + matchExpressions: + - {key: istio, operator: In, values: [mixer,pilot,galley,citadel]} + namespaceSelector: + any: true + endpoints: + - port: http-monitoring + interval: {{ .Values.prometheus.scrapeInterval }} + - port: http-policy-monitoring + interval: {{ .Values.prometheus.scrapeInterval }} +--- +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: envoy-stats-monitor + namespace: {{ .Release.Namespace }} + labels: + monitoring: istio-proxies + release: {{ .Release.Name }} +spec: + selector: + matchExpressions: + - {key: istio-prometheus-ignore, operator: DoesNotExist} + namespaceSelector: + any: true + jobLabel: envoy-stats + endpoints: + - path: /stats/prometheus + targetPort: 15090 + interval: {{ .Values.prometheus.scrapeInterval }} + relabelings: + - sourceLabels: [__meta_kubernetes_pod_container_port_name] + action: keep + regex: '.*-envoy-prom' + - action: labelmap + regex: "__meta_kubernetes_pod_label_(.+)" + - sourceLabels: [__meta_kubernetes_namespace] + action: replace + targetLabel: namespace + - sourceLabels: [__meta_kubernetes_pod_name] + action: replace + targetLabel: pod_name +--- +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: kubernetes-pods-monitor + namespace: {{ .Release.Namespace }} + labels: + monitoring: kube-pods + release: {{ .Release.Name }} +spec: + selector: + matchExpressions: + - {key: istio-prometheus-ignore, operator: DoesNotExist} + namespaceSelector: + any: true + jobLabel: kubernetes-pods + endpoints: + - interval: {{ .Values.prometheus.scrapeInterval }} + relabelings: + - sourceLabels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] + action: keep + regex: 'true' + - sourceLabels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_pod_annotation_prometheus_io_scheme] + action: keep + regex: '((;.*)|(.*;http)|(.??))' + - sourceLabels: [__meta_kubernetes_pod_annotation_istio_mtls] + action: drop + regex: 'true' + - sourceLabels: [__meta_kubernetes_pod_annotation_prometheus_io_path] + action: replace + targetLabel: __metrics_path__ + regex: '(.+)' + - sourceLabels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] + action: replace + regex: '([^:]+)(?::\d+)?;(\d+)' + replacement: $1:$2 + targetLabel: __address__ + - action: labelmap + regex: '__meta_kubernetes_pod_label_(.+)' + - sourceLabels: [__meta_kubernetes_namespace] + action: replace + targetLabel: namespace + - sourceLabels: [__meta_kubernetes_pod_name] + action: replace + targetLabel: pod_name +--- +{{- if .Values.prometheus.security.enabled }} +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: kubernetes-pods-secure-monitor + namespace: {{ .Release.Namespace }} + labels: + monitoring: kube-pods-secure + release: {{ .Release.Name }} +spec: + selector: + matchExpressions: + - {key: istio-prometheus-ignore, operator: DoesNotExist} + namespaceSelector: + any: true + jobLabel: kubernetes-pods-secure + endpoints: + - interval: {{ .Values.prometheus.scrapeInterval }} + scheme: https + tlsConfig: + caFile: /etc/prometheus/secrets/istio.prometheus/root-cert.pem + certFile: /etc/prometheus/secrets/istio.prometheus/cert-chain.pem + keyFile: /etc/prometheus/secrets/istio.prometheus/key.pem + insecureSkipVerify: true # prometheus does not support secure naming. + relabelings: + - sourceLabels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] + action: keep + regex: 'true' + # sidecar status annotation is added by sidecar injector and + # istio_workload_mtls_ability can be specifically placed on a pod to indicate its ability to receive mtls traffic. + - sourceLabels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_pod_annotation_istio_mtls] + action: keep + regex: '(([^;]+);([^;]*))|(([^;]*);(true))' + - sourceLabels: [__meta_kubernetes_pod_annotation_prometheus_io_scheme] + action: drop + regex: '(http)' + - sourceLabels: [__meta_kubernetes_pod_annotation_prometheus_io_path] + action: replace + targetLabel: __metrics_path__ + regex: '(.+)' + - sourceLabels: [__address__] # Only keep address that is host:port + action: keep # otherwise an extra target with ':443' is added for https scheme + regex: '([^:]+):(\d+)' + - sourceLabels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] + action: replace + regex: '([^:]+)(?::\d+)?;(\d+)' + replacement: $1:$2 + targetLabel: __address__ + - action: labelmap + regex: '__meta_kubernetes_pod_label_(.+)' + - sourceLabels: [__meta_kubernetes_namespace] + action: replace + targetLabel: namespace + - sourceLabels: [__meta_kubernetes_pod_name] + action: replace + targetLabel: pod_name +{{- end }} +--- +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: kubernetes-services-monitor + namespace: {{ .Release.Namespace }} + labels: + monitoring: kube-services + release: {{ .Release.Name }} +spec: + selector: + matchExpressions: + - {key: istio-prometheus-ignore, operator: DoesNotExist} + namespaceSelector: + any: true + jobLabel: kubernetes-services + endpoints: + - interval: {{ .Values.prometheus.scrapeInterval }} + relabelings: + - sourceLabels: [__meta_kubernetes_service_annotation_prometheus_io_scrape] + action: keep + regex: 'true' + - sourceLabels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_service_annotation_prometheus_io_scheme] + action: keep + regex: '((;.*)|(.*;http)|(.??))' + - sourceLabels: [__meta_kubernetes_pod_annotation_istio_mtls] + action: drop + regex: 'true' + - sourceLabels: [__meta_kubernetes_service_annotation_prometheus_io_path] + action: replace + targetLabel: __metrics_path__ + regex: '(.+)' + - sourceLabels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port] + action: replace + regex: '([^:]+)(?::\d+)?;(\d+)' + replacement: $1:$2 + targetLabel: __address__ + - action: labelmap + regex: '__meta_kubernetes_pod_label_(.+)' + - sourceLabels: [__meta_kubernetes_namespace] + action: replace + targetLabel: namespace + - sourceLabels: [__meta_kubernetes_pod_name] + action: replace + targetLabel: pod_name +--- +{{- if .Values.prometheus.security.enabled }} +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: kubernetes-services-secure-monitor + namespace: {{ .Release.Namespace }} + labels: + monitoring: kube-services-secure + release: {{ .Release.Name }} +spec: + selector: + matchExpressions: + - {key: istio-prometheus-ignore, operator: DoesNotExist} + namespaceSelector: + any: true + jobLabel: kubernetes-services-secure + endpoints: + - interval: {{ .Values.prometheus.scrapeInterval }} + scheme: https + tlsConfig: + caFile: /etc/prometheus/secrets/istio.prometheus/root-cert.pem + certFile: /etc/prometheus/secrets/istio.prometheus/cert-chain.pem + keyFile: /etc/prometheus/secrets/istio.prometheus/key.pem + insecureSkipVerify: true # prometheus does not support secure naming. + relabelings: + - sourceLabels: [__meta_kubernetes_service_annotation_prometheus_io_scrape] + action: keep + regex: 'true' + # sidecar status annotation is added by sidecar injector and + # istio_workload_mtls_ability can be specifically placed on a pod to indicate its ability to receive mtls traffic. + - sourceLabels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_pod_annotation_istio_mtls] + action: keep + regex: '(([^;]+);([^;]*))|(([^;]*);(true))' + - sourceLabels: [__meta_kubernetes_service_annotation_prometheus_io_scheme] + action: drop + regex: '(http)' + - sourceLabels: [__meta_kubernetes_service_annotation_prometheus_io_path] + action: replace + targetLabel: __metrics_path__ + regex: '(.+)' + - sourceLabels: [__address__] # Only keep address that is host:port + action: keep # otherwise an extra target with ':443' is added for https scheme + regex: '([^:]+):(\d+)' + - sourceLabels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port] + action: replace + regex: '([^:]+)(?::\d+)?;(\d+)' + replacement: $1:$2 + targetLabel: __address__ + - action: labelmap + regex: '__meta_kubernetes_pod_label_(.+)' + - sourceLabels: [__meta_kubernetes_namespace] + action: replace + targetLabel: namespace + - sourceLabels: [__meta_kubernetes_pod_name] + action: replace + targetLabel: pod_name +{{- end }} +--- +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: kubelet + namespace: {{ .Release.Namespace }} + labels: + monitoring: kubelet-monitor + release: {{ .Release.Name }} +spec: + endpoints: + - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token + honorLabels: true + interval: {{ .Values.prometheus.scrapeInterval }} + port: http-metrics + scheme: http + tlsConfig: + insecureSkipVerify: true + - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token + honorLabels: true + interval: {{ .Values.prometheus.scrapeInterval }} + metricRelabelings: + - action: drop + regex: container_(network_tcp_usage_total|network_udp_usage_total|tasks_state|cpu_load_average_10s) + sourceLabels: + - __name__ + path: /metrics/cadvisor + port: http-metrics + scheme: http + tlsConfig: + insecureSkipVerify: true + jobLabel: k8s-app + namespaceSelector: + matchNames: + - kube-system + selector: + matchLabels: + k8s-app: kubelet +`) + +func chartsIstioTelemetryPrometheusOperatorTemplatesServicemonitorsYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusOperatorTemplatesServicemonitorsYaml, nil +} + +func chartsIstioTelemetryPrometheusOperatorTemplatesServicemonitorsYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusOperatorTemplatesServicemonitorsYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus-operator/templates/servicemonitors.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryPrometheusOperatorValuesYaml = []byte(`prometheus: + # Controls the default scrape interval used in the ServiceMonitors + scrapeInterval: 15s + + # Enabling this option will generate a Prometheus resource, causing the operator + # to create a prometheus deployment according to the generated spec. It will also + # create a service definition, destination rules, cluster roles and bindings, and + # a service account. Only use this option if you have not already created and configured + # a prometheus resource and/or you desire a distinct prometheus resource for Istio. + createPrometheusResource: false + hub: docker.io/prom + tag: v2.8.0 + retention: 6h + + service: + annotations: {} + nodePort: + enabled: false + port: 32090 + + # Indicate if Citadel is enabled, i.e., whether its generated certificates are available + security: + enabled: true + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsIstioTelemetryPrometheusOperatorValuesYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryPrometheusOperatorValuesYaml, nil +} + +func chartsIstioTelemetryPrometheusOperatorValuesYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryPrometheusOperatorValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/prometheus-operator/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingChartYaml = []byte(`apiVersion: v1 +description: A Helm chart for tracing +name: tracing +version: 1.1.0 +appVersion: 1.5.1 +tillerVersion: ">=2.7.2"`) + +func chartsIstioTelemetryTracingChartYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingChartYaml, nil +} + +func chartsIstioTelemetryTracingChartYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.podAntiAffinityLabelSelector .Values.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if or .Values.podAntiAffinityTermLabelSelector}} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }}`) + +func chartsIstioTelemetryTracingTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingTemplates_affinityTpl, nil +} + +func chartsIstioTelemetryTracingTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingTemplatesDeploymentJaegerYaml = []byte(`{{ if eq .Values.tracing.provider "jaeger" }} + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-tracing + namespace: {{ .Release.Namespace }} + labels: + app: jaeger + release: {{ .Release.Name }} +spec: + selector: + matchLabels: + app: jaeger + template: + metadata: + labels: + app: jaeger + release: {{ .Release.Name }} + annotations: + sidecar.istio.io/inject: "false" + prometheus.io/scrape: "true" + prometheus.io/port: "16686" +{{- if .Values.tracing.contextPath }} + prometheus.io/path: "{{ .Values.tracing.contextPath }}/metrics" +{{- else }} + prometheus.io/path: "/{{ .Values.tracing.provider }}/metrics" +{{- end }} + spec: +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} +{{- if .Values.global.imagePullSecrets }} + imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} + containers: + - name: jaeger + image: "{{ .Values.tracing.jaeger.hub }}/{{ .Values.tracing.jaeger.image }}:{{ .Values.tracing.jaeger.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 9411 + - containerPort: 16686 + - containerPort: 5775 + protocol: UDP + - containerPort: 6831 + protocol: UDP + - containerPort: 6832 + protocol: UDP + env: + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + {{- if eq .Values.tracing.jaeger.spanStorageType "badger" }} + - name: BADGER_EPHEMERAL + value: "false" + - name: SPAN_STORAGE_TYPE + value: "badger" + - name: BADGER_DIRECTORY_VALUE + value: "/badger/data" + - name: BADGER_DIRECTORY_KEY + value: "/badger/key" + {{- end }} + - name: COLLECTOR_ZIPKIN_HTTP_PORT + value: "9411" + - name: MEMORY_MAX_TRACES + value: "{{ .Values.tracing.jaeger.memory.max_traces }}" + - name: QUERY_BASE_PATH + value: {{ if .Values.tracing.contextPath }} {{ .Values.tracing.contextPath }} {{ else }} /{{ .Values.tracing.provider }} {{ end }} + livenessProbe: + httpGet: + path: / + port: 16686 + readinessProbe: + httpGet: + path: / + port: 16686 +{{- if eq .Values.tracing.jaeger.spanStorageType "badger" }} + volumeMounts: + - name: data + mountPath: /badger +{{- end }} + resources: +{{- if .Values.tracing.jaeger.resources }} +{{ toYaml .Values.tracing.jaeger.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if eq .Values.tracing.jaeger.spanStorageType "badger" }} + volumes: + - name: data +{{- if .Values.tracing.jaeger.persist }} + persistentVolumeClaim: + claimName: istio-jaeger-pvc +{{- else }} + emptyDir: {} +{{- end }} +{{- end }} +{{ end }} +`) + +func chartsIstioTelemetryTracingTemplatesDeploymentJaegerYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingTemplatesDeploymentJaegerYaml, nil +} + +func chartsIstioTelemetryTracingTemplatesDeploymentJaegerYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingTemplatesDeploymentJaegerYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/templates/deployment-jaeger.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingTemplatesDeploymentOpencensusYaml = []byte(`{{ if eq .Values.tracing.provider "opencensus" }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: oc-collector-config + labels: + app: opencensus + component: oc-collector-config +data: + oc-collector-config: | + receivers: + zipkin: + address: "127.0.0.1:9411" + exporters: +{{- if .Values.tracing.opencensus.exporters }} +{{ toYaml .Values.tracing.opencensus.exporters | indent 6 }} +{{- end }} +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-tracing + namespace: {{ .Release.Namespace }} + labels: + app: opencensus + component: oc-collector + release: {{ .Release.Name }} +spec: + selector: + matchLabels: + app: opencensus + minReadySeconds: 5 + progressDeadlineSeconds: 120 + replicas: 1 + template: + metadata: + annotations: + sidecar.istio.io/inject: "false" + prometheus.io/path: "/metrics" + prometheus.io/port: "8888" + prometheus.io/scrape: "true" + labels: + app: opencensus + component: oc-collector + spec: +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} +{{- if .Values.global.imagePullSecrets }} + imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} + containers: + - name: oc-collector + image: "{{ .Values.tracing.opencensus.hub }}/opencensus-collector:{{ .Values.tracing.opencensus.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + command: + - "/occollector_linux" + - "--config=/conf/oc-collector-config.yaml" + ports: + - containerPort: 9411 + resources: +{{- if .Values.tracing.opencensus.resources }} +{{ toYaml .Values.tracing.opencensus.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + volumeMounts: + - name: oc-collector-config-vol + mountPath: /conf + livenessProbe: + httpGet: + path: / + port: 13133 + readinessProbe: + httpGet: + path: / + port: 13133 + env: + - name: GOGC + value: "80" + volumes: + - configMap: + name: oc-collector-config + items: + - key: oc-collector-config + path: oc-collector-config.yaml + name: oc-collector-config-vol + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{ end }} +`) + +func chartsIstioTelemetryTracingTemplatesDeploymentOpencensusYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingTemplatesDeploymentOpencensusYaml, nil +} + +func chartsIstioTelemetryTracingTemplatesDeploymentOpencensusYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingTemplatesDeploymentOpencensusYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/templates/deployment-opencensus.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingTemplatesDeploymentZipkinYaml = []byte(`{{ if eq .Values.tracing.provider "zipkin" }} + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-tracing + namespace: {{ .Release.Namespace }} + labels: + app: zipkin + release: {{ .Release.Name }} +spec: + selector: + matchLabels: + app: zipkin + template: + metadata: + labels: + app: zipkin + release: {{ .Release.Name }} + annotations: + sidecar.istio.io/inject: "false" + scheduler.alpha.kubernetes.io/critical-pod: "" + spec: +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} +{{- if .Values.global.imagePullSecrets }} + imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} + containers: + - name: zipkin + image: "{{ .Values.tracing.zipkin.hub }}/{{ .Values.tracing.zipkin.image }}:{{ .Values.tracing.zipkin.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: {{ .Values.tracing.zipkin.queryPort }} + livenessProbe: + initialDelaySeconds: {{ .Values.tracing.zipkin.probeStartupDelay }} + tcpSocket: + port: {{ .Values.tracing.zipkin.queryPort }} + readinessProbe: + initialDelaySeconds: {{ .Values.tracing.zipkin.probeStartupDelay }} + httpGet: + path: /health + port: {{ .Values.tracing.zipkin.queryPort }} + resources: +{{- if .Values.tracing.zipkin.resources }} +{{ toYaml .Values.tracing.zipkin.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} + env: + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: QUERY_PORT + value: "{{ .Values.tracing.zipkin.queryPort }}" + - name: JAVA_OPTS + value: "-XX:ConcGCThreads={{ .Values.tracing.zipkin.node.cpus }} -XX:ParallelGCThreads={{ .Values.tracing.zipkin.node.cpus }} -Djava.util.concurrent.ForkJoinPool.common.parallelism={{ .Values.tracing.zipkin.node.cpus }} -Xms{{ .Values.tracing.zipkin.javaOptsHeap }}M -Xmx{{ .Values.tracing.zipkin.javaOptsHeap }}M -XX:+UseG1GC -server" + - name: STORAGE_METHOD + value: "mem" + - name: ZIPKIN_STORAGE_MEM_MAXSPANS + value: "{{ .Values.tracing.zipkin.maxSpans }}" + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{ end }} +`) + +func chartsIstioTelemetryTracingTemplatesDeploymentZipkinYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingTemplatesDeploymentZipkinYaml, nil +} + +func chartsIstioTelemetryTracingTemplatesDeploymentZipkinYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingTemplatesDeploymentZipkinYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/templates/deployment-zipkin.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingTemplatesPvcYaml = []byte(`{{- if eq .Values.tracing.provider "jaeger" }} +{{- if .Values.tracing.jaeger.persist }} +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: + name: istio-jaeger-pvc + namespace: {{ .Release.Namespace }} + labels: + app: {{ .Values.tracing.provider }} + release: {{ .Release.Name }} +spec: + storageClassName: {{ .Values.tracing.jaeger.storageClassName }} + accessModes: + - {{ .Values.tracing.jaeger.accessMode }} + resources: + requests: + storage: 5Gi +{{- end }} +{{- end }}`) + +func chartsIstioTelemetryTracingTemplatesPvcYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingTemplatesPvcYaml, nil +} + +func chartsIstioTelemetryTracingTemplatesPvcYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingTemplatesPvcYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/templates/pvc.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingTemplatesServiceJaegerYaml = []byte(`{{ if eq .Values.tracing.provider "jaeger" }} +apiVersion: v1 +kind: Service +metadata: + name: jaeger-query + namespace: {{ .Release.Namespace }} + annotations: + {{- range $key, $val := .Values.tracing.service.annotations }} + {{ $key }}: {{ $val | quote }} + {{- end }} + labels: + app: jaeger + jaeger-infra: jaeger-service + release: {{ .Release.Name }} +spec: + ports: + - name: query-http + port: 16686 + protocol: TCP + targetPort: 16686 + selector: + app: jaeger +--- +apiVersion: v1 +kind: Service +metadata: + name: jaeger-collector + namespace: {{ .Release.Namespace }} + labels: + app: jaeger + jaeger-infra: collector-service + release: {{ .Release.Name }} +spec: + ports: + - name: jaeger-collector-tchannel + port: 14267 + protocol: TCP + targetPort: 14267 + - name: jaeger-collector-http + port: 14268 + targetPort: 14268 + protocol: TCP + selector: + app: jaeger + type: ClusterIP +{{ end }}`) + +func chartsIstioTelemetryTracingTemplatesServiceJaegerYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingTemplatesServiceJaegerYaml, nil +} + +func chartsIstioTelemetryTracingTemplatesServiceJaegerYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingTemplatesServiceJaegerYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/templates/service-jaeger.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: zipkin + namespace: {{ .Release.Namespace }} + labels: + app: {{ .Values.tracing.provider }} + release: {{ .Release.Name }} +spec: + type: {{ .Values.tracing.service.type }} + ports: + - port: {{ .Values.tracing.service.externalPort }} + targetPort: 9411 + protocol: TCP + name: {{ .Values.tracing.service.name }} + selector: + app: {{ .Values.tracing.provider }} +--- +{{- if ne .Values.tracing.provider "opencensus"}} +apiVersion: v1 +kind: Service +metadata: + name: tracing + namespace: {{ .Release.Namespace }} + annotations: + {{- range $key, $val := .Values.tracing.service.annotations }} + {{ $key }}: {{ $val | quote }} + {{- end }} + labels: + app: {{ .Values.tracing.provider }} + release: {{ .Release.Name }} +spec: + ports: + - name: http-query + port: 80 + protocol: TCP +{{ if eq .Values.tracing.provider "jaeger" }} + targetPort: 16686 +{{ else }} + targetPort: 9411 +{{ end}} + selector: + app: {{ .Values.tracing.provider }} +{{- end }} +`) + +func chartsIstioTelemetryTracingTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingTemplatesServiceYaml, nil +} + +func chartsIstioTelemetryTracingTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstioTelemetryTracingValuesYaml = []byte(`# +# addon tracing configuration +# +tracing: + enabled: false + + provider: jaeger + nodeSelector: {} + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + + jaeger: + hub: docker.io/jaegertracing + image: all-in-one + tag: 1.12 + memory: + max_traces: 50000 + # spanStorageType value can be "memory" and "badger" for all-in-one image + spanStorageType: badger + persist: false + storageClassName: "" + accessMode: ReadWriteMany + + zipkin: + hub: docker.io/openzipkin + image: zipkin + tag: 2.14.2 + probeStartupDelay: 200 + queryPort: 9411 + resources: + limits: + cpu: 300m + memory: 900Mi + requests: + cpu: 150m + memory: 900Mi + javaOptsHeap: 700 + # From: https://github.com/openzipkin/zipkin/blob/master/zipkin-server/src/main/resources/zipkin-server-shared.yml#L51 + # Maximum number of spans to keep in memory. When exceeded, oldest traces (and their spans) will be purged. + # A safe estimate is 1K of memory per span (each span with 2 annotations + 1 binary annotation), plus + # 100 MB for a safety buffer. You'll need to verify in your own environment. + maxSpans: 500000 + node: + cpus: 2 + + opencensus: + hub: docker.io/omnition + tag: 0.1.9 + resources: + limits: + cpu: 1 + memory: 2Gi + requests: + cpu: 200m + memory: 400Mi + exporters: + stackdriver: + enable_tracing: true + + service: + annotations: {} + name: http + type: ClusterIP + externalPort: 9411 + + ingress: + enabled: false + # Used to create an Ingress record. + hosts: + # - tracing.local + annotations: + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + tls: + # Secrets must be manually created in the namespace. + # - secretName: tracing-tls + # hosts: + # - tracing.local + +`) + +func chartsIstioTelemetryTracingValuesYamlBytes() ([]byte, error) { + return _chartsIstioTelemetryTracingValuesYaml, nil +} + +func chartsIstioTelemetryTracingValuesYaml() (*asset, error) { + bytes, err := chartsIstioTelemetryTracingValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istio-telemetry/tracing/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsChartYaml = []byte(`apiVersion: v1 +description: Istio CoreDNS provides DNS resolution for services in multicluster setups. +name: istiocoredns +version: 1.1.0 +appVersion: 0.1 +tillerVersion: ">=2.7.2" +`) + +func chartsIstiocorednsChartYamlBytes() ([]byte, error) { + return _chartsIstiocorednsChartYaml, nil +} + +func chartsIstiocorednsChartYaml() (*asset, error) { + bytes, err := chartsIstiocorednsChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.istiocoredns.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.istiocoredns.podAntiAffinityLabelSelector .Values.istiocoredns.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.istiocoredns.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.istiocoredns.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.istiocoredns.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.istiocoredns.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsIstiocorednsTemplates_affinityTplBytes() ([]byte, error) { + return _chartsIstiocorednsTemplates_affinityTpl, nil +} + +func chartsIstiocorednsTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsIstiocorednsTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istiocoredns + labels: + app: istiocoredns + release: {{ .Release.Name }} +rules: +- apiGroups: ["networking.istio.io"] + resources: ["*"] + verbs: ["get", "watch", "list"] +`) + +func chartsIstiocorednsTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsIstiocorednsTemplatesClusterroleYaml, nil +} + +func chartsIstiocorednsTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsIstiocorednsTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsTemplatesClusterrolebindingYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-istiocoredns-role-binding-{{ .Release.Namespace }} + labels: + app: istiocoredns + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istiocoredns +subjects: +- kind: ServiceAccount + name: istiocoredns-service-account + namespace: {{ .Release.Namespace }} +`) + +func chartsIstiocorednsTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsIstiocorednsTemplatesClusterrolebindingYaml, nil +} + +func chartsIstiocorednsTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsIstiocorednsTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsTemplatesConfigmapYaml = []byte(`apiVersion: v1 +kind: ConfigMap +metadata: + name: coredns + namespace: {{ .Release.Namespace }} + labels: + app: istiocoredns + release: {{ .Release.Name }} +data: + Corefile: | + .:53 { + errors + health + proxy global 127.0.0.1:8053 { + protocol grpc insecure + } + prometheus :9153 + proxy . /etc/resolv.conf + cache 30 + reload + } +--- +`) + +func chartsIstiocorednsTemplatesConfigmapYamlBytes() ([]byte, error) { + return _chartsIstiocorednsTemplatesConfigmapYaml, nil +} + +func chartsIstiocorednsTemplatesConfigmapYaml() (*asset, error) { + bytes, err := chartsIstiocorednsTemplatesConfigmapYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/templates/configmap.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: istiocoredns + namespace: {{ .Release.Namespace }} + labels: + app: istiocoredns + release: {{ .Release.Name }} +spec: + replicas: {{ .Values.istiocoredns.replicaCount }} + selector: + matchLabels: + app: istiocoredns + strategy: + rollingUpdate: + maxSurge: {{ .Values.istiocoredns.rollingMaxSurge }} + maxUnavailable: {{ .Values.istiocoredns.rollingMaxUnavailable }} + template: + metadata: + name: istiocoredns + labels: + app: istiocoredns + release: {{ .Release.Name }} + annotations: + sidecar.istio.io/inject: "false" + spec: + serviceAccountName: istiocoredns-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: coredns + image: {{ .Values.istiocoredns.coreDNSImage }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + args: [ "-conf", "/etc/coredns/Corefile" ] + volumeMounts: + - name: config-volume + mountPath: /etc/coredns + ports: + - containerPort: 53 + name: dns + protocol: UDP + - containerPort: 53 + name: dns-tcp + protocol: TCP + - containerPort: 9153 + name: metrics + protocol: TCP + livenessProbe: + httpGet: + path: /health + port: 8080 + scheme: HTTP + initialDelaySeconds: 60 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 5 + resources: +{{- if .Values.istiocoredns.resources }} +{{ toYaml .Values.istiocoredns.resources | indent 10 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 10 }} +{{- end }} + - name: istio-coredns-plugin + command: + - /usr/local/bin/plugin + image: {{ .Values.istiocoredns.coreDNSPluginImage }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + ports: + - containerPort: 8053 + name: dns-grpc + protocol: TCP + resources: +{{- if .Values.istiocoredns.resources }} +{{ toYaml .Values.istiocorednsresources | indent 10 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 10 }} +{{- end }} + dnsPolicy: Default + volumes: + - name: config-volume + configMap: + name: coredns + items: + - key: Corefile + path: Corefile + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.istiocoredns.tolerations }} + tolerations: +{{ toYaml .Values.istiocoredns.tolerations | indent 6 }} +{{- end }} +`) + +func chartsIstiocorednsTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsIstiocorednsTemplatesDeploymentYaml, nil +} + +func chartsIstiocorednsTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsIstiocorednsTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + name: istiocoredns + namespace: {{ .Release.Namespace }} + labels: + app: istiocoredns + release: {{ .Release.Name }} +spec: + selector: + app: istiocoredns + ports: + - name: dns + port: 53 + protocol: UDP + - name: dns-tcp + port: 53 + protocol: TCP +`) + +func chartsIstiocorednsTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsIstiocorednsTemplatesServiceYaml, nil +} + +func chartsIstiocorednsTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsIstiocorednsTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istiocoredns-service-account + namespace: {{ .Release.Namespace }} + labels: + app: istiocoredns + release: {{ .Release.Name }} +`) + +func chartsIstiocorednsTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsIstiocorednsTemplatesServiceaccountYaml, nil +} + +func chartsIstiocorednsTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsIstiocorednsTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsIstiocorednsValuesYaml = []byte(`# +# addon istiocoredns tracing configuration +# +istiocoredns: + enabled: false + replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + coreDNSImage: coredns/coredns:1.1.2 + # Source code for the plugin can be found at + # https://github.com/istio-ecosystem/istio-coredns-plugin + # The plugin listens for DNS requests from coredns server at 127.0.0.1:8053 + coreDNSPluginImage: istio/coredns-plugin:0.2-istio-1.1 + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsIstiocorednsValuesYamlBytes() ([]byte, error) { + return _chartsIstiocorednsValuesYaml, nil +} + +func chartsIstiocorednsValuesYaml() (*asset, error) { + bytes, err := chartsIstiocorednsValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/istiocoredns/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerChartYaml = []byte(`apiVersion: v1 +description: A Helm chart for Kubernetes +name: certmanager +version: 1.1.0 +appVersion: 0.6.2 +tillerVersion: ">=2.7.2" +`) + +func chartsSecurityCertmanagerChartYamlBytes() ([]byte, error) { + return _chartsSecurityCertmanagerChartYaml, nil +} + +func chartsSecurityCertmanagerChartYaml() (*asset, error) { + bytes, err := chartsSecurityCertmanagerChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerTemplatesNotesTxt = []byte(`certmanager has been deployed successfully! + +More information on the different types of issuers and how to configure them +can be found in our documentation: + +https://cert-manager.readthedocs.io/en/latest/reference/issuers.html`) + +func chartsSecurityCertmanagerTemplatesNotesTxtBytes() ([]byte, error) { + return _chartsSecurityCertmanagerTemplatesNotesTxt, nil +} + +func chartsSecurityCertmanagerTemplatesNotesTxt() (*asset, error) { + bytes, err := chartsSecurityCertmanagerTemplatesNotesTxtBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/templates/NOTES.txt", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.certmanager.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.certmanager.podAntiAffinityLabelSelector .Values.certmanager.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.certmanager.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.certmanager.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.certmanager.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.certmanager.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsSecurityCertmanagerTemplates_affinityTplBytes() ([]byte, error) { + return _chartsSecurityCertmanagerTemplates_affinityTpl, nil +} + +func chartsSecurityCertmanagerTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsSecurityCertmanagerTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerTemplatesDeploymentYaml = []byte(`apiVersion: apps/v1 +kind: Deployment +metadata: + name: certmanager + namespace: {{ .Release.Namespace }} + labels: + app: certmanager + release: {{ .Release.Name }} +spec: + replicas: {{ .Values.certmanager.replicaCount }} + selector: + matchLabels: + app: certmanager + template: + metadata: + labels: + app: certmanager + release: {{ .Release.Name }} + {{- if .Values.certmanager.podLabels }} +{{ toYaml .Values.certmanager.podLabels | indent 8 }} + {{- end }} + annotations: + sidecar.istio.io/inject: "false" + {{- if .Values.certmanager.podAnnotations }} +{{ toYaml .Values.certmanager.podAnnotations | indent 8 }} + {{- end }} + spec: + serviceAccountName: certmanager +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: certmanager + image: "{{ .Values.certmanager.hub }}/{{ .Values.certmanager.image }}:{{ .Values.certmanager.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + args: + - --cluster-resource-namespace=$(POD_NAMESPACE) + - --leader-election-namespace=$(POD_NAMESPACE) + {{- if .Values.certmanager.extraArgs }} +{{ toYaml .Values.certmanager.extraArgs | indent 8 }} + {{- end }} + env: + - name: POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + resources: +{{ toYaml .Values.certmanager.resources | indent 10 }} + {{- if .Values.certmanager.podDnsPolicy }} + dnsPolicy: {{ .Values.certmanager.podDnsPolicy }} + {{- end }} + {{- if .Values.certmanager.podDnsConfig }} + dnsConfig: +{{ toYaml .Values.certmanager.podDnsConfig | indent 8 }} + {{- end }} + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.certmanager.tolerations }} + tolerations: +{{ toYaml .Values.certmanager.tolerations | indent 6 }} +{{- end }} +`) + +func chartsSecurityCertmanagerTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsSecurityCertmanagerTemplatesDeploymentYaml, nil +} + +func chartsSecurityCertmanagerTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsSecurityCertmanagerTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerTemplatesIssuerYaml = []byte(`--- +apiVersion: certmanager.k8s.io/v1alpha1 +kind: ClusterIssuer +metadata: + name: letsencrypt-staging + namespace: {{ .Release.Namespace }} + labels: + app: certmanager + release: {{ .Release.Name }} +spec: + acme: + server: https://acme-staging-v02.api.letsencrypt.org/directory + email: {{ .Values.certmanager.email }} + # Name of a secret used to store the ACME account private key + privateKeySecretRef: + name: letsencrypt-staging + http01: {} +--- +apiVersion: certmanager.k8s.io/v1alpha1 +kind: ClusterIssuer +metadata: + name: letsencrypt + namespace: {{ .Release.Namespace }} + labels: + app: certmanager + release: {{ .Release.Name }} +spec: + acme: + server: https://acme-v02.api.letsencrypt.org/directory + email: {{ .Values.certmanager.email }} + privateKeySecretRef: + name: letsencrypt + http01: {} +`) + +func chartsSecurityCertmanagerTemplatesIssuerYamlBytes() ([]byte, error) { + return _chartsSecurityCertmanagerTemplatesIssuerYaml, nil +} + +func chartsSecurityCertmanagerTemplatesIssuerYaml() (*asset, error) { + bytes, err := chartsSecurityCertmanagerTemplatesIssuerYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/templates/issuer.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerTemplatesPoddisruptionbudgetYaml = []byte(`{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: certmanager + namespace: {{ .Release.Namespace }} + labels: + app: certmanager + release: {{ .Release.Name }} + {{- if .Values.certmanager.podLabels }} +{{ toYaml .Values.certmanager.podLabels | indent 4 }} + {{- end }} +spec: + minAvailable: 1 + selector: + matchLabels: + app: certmanager + release: {{ .Release.Name }} +{{- end }} +`) + +func chartsSecurityCertmanagerTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsSecurityCertmanagerTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsSecurityCertmanagerTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsSecurityCertmanagerTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerTemplatesRbacYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: certmanager + labels: + app: certmanager + release: {{ .Release.Name }} +rules: + - apiGroups: ["certmanager.k8s.io"] + resources: ["certificates", "certificates/finalizers", "issuers", "clusterissuers", "orders", "orders/finalizers", "challenges"] + verbs: ["*"] + - apiGroups: [""] + resources: ["configmaps", "secrets", "events", "services", "pods"] + verbs: ["*"] + - apiGroups: ["extensions"] + resources: ["ingresses"] + verbs: ["*"] +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: certmanager + labels: + app: certmanager + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: certmanager +subjects: + - name: certmanager + namespace: {{ .Release.Namespace }} + kind: ServiceAccount +`) + +func chartsSecurityCertmanagerTemplatesRbacYamlBytes() ([]byte, error) { + return _chartsSecurityCertmanagerTemplatesRbacYaml, nil +} + +func chartsSecurityCertmanagerTemplatesRbacYaml() (*asset, error) { + bytes, err := chartsSecurityCertmanagerTemplatesRbacYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/templates/rbac.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: certmanager + namespace: {{ .Release.Namespace }} + labels: + app: certmanager + release: {{ .Release.Name }} +`) + +func chartsSecurityCertmanagerTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsSecurityCertmanagerTemplatesServiceaccountYaml, nil +} + +func chartsSecurityCertmanagerTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsSecurityCertmanagerTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCertmanagerValuesYaml = []byte(`certmanager: + # Certmanager uses ACME to sign certificates. Since Istio gateways are + # mounting the TLS secrets the Certificate CRDs must be created in the + # istio-system namespace. Once the certificate has been created, the + # gateway must be updated by adding 'secretVolumes'. After the gateway + # restart, DestinationRules can be created using the ACME-signed certificates. + enabled: false + replicaCount: 1 + hub: quay.io/jetstack + image: cert-manager-controller + tag: v0.6.2 + resources: {} + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsSecurityCertmanagerValuesYamlBytes() ([]byte, error) { + return _chartsSecurityCertmanagerValuesYaml, nil +} + +func chartsSecurityCertmanagerValuesYaml() (*asset, error) { + bytes, err := chartsSecurityCertmanagerValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/certmanager/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelChartYaml = []byte(`apiVersion: v1 +name: citadel +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for istio authentication +keywords: + - istio + - security +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsSecurityCitadelChartYamlBytes() ([]byte, error) { + return _chartsSecurityCitadelChartYaml, nil +} + +func chartsSecurityCitadelChartYaml() (*asset, error) { + bytes, err := chartsSecurityCitadelChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplatesNotesTxt = []byte(`This template contains the 'singleton' part of Istio. + +All other components support multiple instances (profiles) running in parallel. + +For upgrade purpose, this component should run in istio-system - where the existing mesh certificates are stored. +Will install a new deployment of Citadel, using 1.1 - it can run in parallel with the old-style install of either 1.0 +or 1.1. +`) + +func chartsSecurityCitadelTemplatesNotesTxtBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplatesNotesTxt, nil +} + +func chartsSecurityCitadelTemplatesNotesTxt() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplatesNotesTxtBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/NOTES.txt", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.security.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.security.podAntiAffinityLabelSelector .Values.security.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.security.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.security.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.security.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.security.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsSecurityCitadelTemplates_affinityTplBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplates_affinityTpl, nil +} + +func chartsSecurityCitadelTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplates_helpersTpl = []byte(`{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "istio.name" -}} +{{- default .Chart.Name .Values.security.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "istio.fullname" -}} +{{- if .Values.security.fullnameOverride -}} +{{- .Values.security.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.security.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "istio.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a fully qualified configmap name. +*/}} +{{- define "istio.configmap.fullname" -}} +{{- printf "%s-%s" .Release.Name "istio-mesh-config" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Configmap checksum. +*/}} +{{- define "istio.configmap.checksum" -}} +{{- print $.Template.BasePath "/configmap.yaml" | sha256sum -}} +{{- end -}} +{{/* +Expand the name of the chart. +*/}} +{{- define "security.name" -}} +{{- default .Chart.Name .Values.security.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "security.fullname" -}} +{{- if .Values.security.fullnameOverride -}} +{{- .Values.security.fullnameOverride | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- $name := default .Chart.Name .Values.security.nameOverride -}} +{{- if contains $name .Release.Name -}} +{{- .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- else -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} +{{- end -}} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "security.chart" -}} +{{- .Chart.Name | trunc 63 | trimSuffix "-" -}} +{{- end -}} +`) + +func chartsSecurityCitadelTemplates_helpersTplBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplates_helpersTpl, nil +} + +func chartsSecurityCitadelTemplates_helpersTpl() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplates_helpersTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/_helpers.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplatesClusterroleYaml = []byte(`{{ if .Values.clusterResources }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istio-citadel-{{ .Release.Namespace }} + labels: + app: citadel + release: {{ .Release.Name }} +rules: +- apiGroups: [""] + resources: ["configmaps"] + verbs: ["create", "get", "update"] +- apiGroups: [""] + resources: ["secrets"] + verbs: ["create", "get", "watch", "list", "update", "delete"] +- apiGroups: [""] + resources: ["serviceaccounts", "services", "namespaces"] + verbs: ["get", "watch", "list"] +- apiGroups: ["authentication.k8s.io"] + resources: ["tokenreviews"] + verbs: ["create"] + +--- +{{ end }} +`) + +func chartsSecurityCitadelTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplatesClusterroleYaml, nil +} + +func chartsSecurityCitadelTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplatesClusterrolebindingYaml = []byte(`{{ if .Values.clusterResources }} +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-citadel-{{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istio-citadel-{{ .Release.Namespace }} +subjects: + - kind: ServiceAccount + name: istio-citadel-service-account + namespace: {{ .Release.Namespace }} +--- +{{- end}} +`) + +func chartsSecurityCitadelTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplatesClusterrolebindingYaml, nil +} + +func chartsSecurityCitadelTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplatesDeploymentYaml = []byte(`# istio CA watching all namespaces +apiVersion: apps/v1 +kind: Deployment +metadata: + name: istio-citadel + namespace: {{ .Release.Namespace }} + labels: + app: citadel + istio: citadel + release: {{ .Release.Name }} + +spec: + selector: + matchLabels: + istio: citadel + replicas: {{ .Values.security.replicaCount }} + strategy: + rollingUpdate: + maxSurge: {{ .Values.security.rollingMaxSurge }} + maxUnavailable: {{ .Values.security.rollingMaxUnavailable }} + template: + metadata: + labels: + app: citadel + istio: citadel + annotations: + sidecar.istio.io/inject: "false" + spec: + serviceAccountName: istio-citadel-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: citadel + image: "{{ .Values.global.hub }}/{{ .Values.security.image }}:{{ .Values.global.tag }}" + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + args: + {{- if .Values.global.sds.enabled }} + - --sds-enabled=true + {{- end }} + - --append-dns-names=true + - --grpc-port=8060 + - --citadel-storage-namespace={{ .Release.Namespace }} + {{- if .Values.kustomize }} + - --custom-dns-names=$(CITADEL_DNS) + {{- else }} + - --custom-dns-names={{ range $k,$v := .Values.security.dnsCerts }}{{ $k }}:{{ $v }},{{ end }} + {{- end }} + {{- if .Values.security.selfSigned }} + - --self-signed-ca=true + {{- else }} + - --self-signed-ca=false + - --signing-cert=/etc/cacerts/ca-cert.pem + - --signing-key=/etc/cacerts/ca-key.pem + - --root-cert=/etc/cacerts/root-cert.pem + - --cert-chain=/etc/cacerts/cert-chain.pem + {{- end }} + {{- if .Values.security.trustDomain }} + - --trust-domain={{ .Values.security.trustDomain }} + {{- end }} + {{- if .Values.workloadCertTtl }} + - --workload-cert-ttl={{ .Values.workloadCertTtl }} + {{- end }} + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + env: + - name: CITADEL_ENABLE_NAMESPACES_BY_DEFAULT + value: "{{ .Values.security.enableNamespacesByDefault }}" + livenessProbe: + httpGet: + path: /version + port: 15014 + initialDelaySeconds: 5 + periodSeconds: 5 + resources: +{{- if .Values.security.resources }} +{{ toYaml .Values.security.resources | indent 12 }} +{{- else }} +{{ toYaml .Values.global.defaultResources | indent 12 }} +{{- end }} +{{- if not .Values.security.selfSigned }} + volumeMounts: + - name: cacerts + mountPath: /etc/cacerts + readOnly: true + volumes: + - name: cacerts + secret: + secretName: cacerts + optional: true +{{- end }} + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.security.tolerations }} + tolerations: +{{ toYaml .Values.security.tolerations | indent 6 }} +{{- end }} +`) + +func chartsSecurityCitadelTemplatesDeploymentYamlBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplatesDeploymentYaml, nil +} + +func chartsSecurityCitadelTemplatesDeploymentYaml() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplatesDeploymentYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/deployment.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplatesPoddisruptionbudgetYaml = []byte(`{{- if .Values.global.defaultPodDisruptionBudget.enabled }} +apiVersion: policy/v1beta1 +kind: PodDisruptionBudget +metadata: + name: istio-citadel + namespace: {{ .Release.Namespace }} + labels: + app: citadel + istio: citadel + release: {{ .Release.Name }} +spec: + minAvailable: 1 + selector: + matchLabels: + app: citadel + istio: citadel +{{- end }} +`) + +func chartsSecurityCitadelTemplatesPoddisruptionbudgetYamlBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplatesPoddisruptionbudgetYaml, nil +} + +func chartsSecurityCitadelTemplatesPoddisruptionbudgetYaml() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplatesPoddisruptionbudgetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/poddisruptionbudget.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplatesServiceYaml = []byte(`apiVersion: v1 +kind: Service +metadata: + # Must match the certificate, this is used in the node agent in same namespace. + name: istio-citadel + namespace: {{ .Release.Namespace }} + labels: + app: citadel + istio: citadel + release: {{ .Release.Name }} + +spec: + ports: + - name: grpc-citadel + port: 8060 + targetPort: 8060 + protocol: TCP + - name: http-monitoring + port: 15014 + selector: + app: citadel +`) + +func chartsSecurityCitadelTemplatesServiceYamlBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplatesServiceYaml, nil +} + +func chartsSecurityCitadelTemplatesServiceYaml() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplatesServiceYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/service.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +metadata: + name: istio-citadel-service-account + namespace: {{ .Release.Namespace }} + labels: + release: {{ .Release.Name }} + {{- if .Values.global.imagePullSecrets }} +spec: + imagePullSecrets: + {{- range .Values.global.imagePullSecrets }} + - name: {{ . }} + {{- end }} + {{- end }} +`) + +func chartsSecurityCitadelTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsSecurityCitadelTemplatesServiceaccountYaml, nil +} + +func chartsSecurityCitadelTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsSecurityCitadelTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityCitadelValuesYaml = []byte(`# +# security (citadel) configuration +# +security: + enabled: true + replicaCount: 1 + rollingMaxSurge: 100% + rollingMaxUnavailable: 25% + image: citadel + selfSigned: true # indicate if self-signed CA is used. + trustDomain: cluster.local # indicate the domain used in SPIFFE identity URL + + # 90*24hour = 2160h + workloadCertTtl: 2160h + + # Determines Citadel default behavior if the ca.istio.io/env or ca.istio.io/override + # labels are not found on a given namespace. + # + # For example: consider a namespace called "target", which has neither the "ca.istio.io/env" + # nor the "ca.istio.io/override" namespace labels. To decide whether or not to generate secrets + # for service accounts created in this "target" namespace, Citadel will defer to this option. If the value + # of this option is "true" in this case, secrets will be generated for the "target" namespace. + # If the value of this option is "false" Citadel will not generate secrets upon service account creation. + enableNamespacesByDefault: true + + # Galley, pilot in each 'profile' must have a DNS cert. + dnsCerts: + istio-pilot-service-account.istio-control: istio-pilot-service-account.istio-control + istio-pilot-service-account.istio-pilot11: istio-pilot-service-account.istio-system + + istio-sidecar-injector-service-account.istio-remote: istio-sidecar-injector.istio-remote.svc + istio-sidecar-injector-service-account.istio-pilot11: istio-sidecar-injector.istio-pilot11.svc + istio-sidecar-injector-service-account.istio-control: istio-sidecar-injector.istio-control.svc + istio-sidecar-injector-service-account.istio-master: istio-sidecar-injector.istio-master.svc + istio-sidecar-injector-service-account.istio-control-master: istio-sidecar-injector.istio-control-master.svc + + istio-galley-service-account.istio-pilot11: istio-galley.istio-pilot11.svc + istio-galley-service-account.istio-control: istio-galley.istio-control.svc + + istio-galley-service-account.istio-master: istio-galley.istio-master.svc + istio-galley-service-account.istio-control-master: istio-galley.istio-control-master.svc + + istio-galley-service-account.istio-config: istio-galley.istio-config.svc + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsSecurityCitadelValuesYamlBytes() ([]byte, error) { + return _chartsSecurityCitadelValuesYaml, nil +} + +func chartsSecurityCitadelValuesYaml() (*asset, error) { + bytes, err := chartsSecurityCitadelValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/citadel/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityNodeagentChartYaml = []byte(`apiVersion: v1 +name: nodeagent +version: 1.1.0 +appVersion: 1.1.0 +tillerVersion: ">=2.7.2" +description: Helm chart for nodeagent deployment +keywords: + - istio + - nodeagent +sources: + - http://github.com/istio/istio +engine: gotpl +icon: https://istio.io/favicons/android-192x192.png +`) + +func chartsSecurityNodeagentChartYamlBytes() ([]byte, error) { + return _chartsSecurityNodeagentChartYaml, nil +} + +func chartsSecurityNodeagentChartYaml() (*asset, error) { + bytes, err := chartsSecurityNodeagentChartYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/nodeagent/Chart.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityNodeagentTemplates_affinityTpl = []byte(`{{/* affinity - https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ */}} + +{{- define "nodeaffinity" }} + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityRequiredDuringScheduling" . }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "nodeAffinityPreferredDuringScheduling" . }} +{{- end }} + +{{- define "nodeAffinityRequiredDuringScheduling" }} + nodeSelectorTerms: + - matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - {{ $key }} + {{- end }} + {{- end }} + {{- $nodeSelector := default .Values.global.defaultNodeSelector .Values.nodeagent.nodeSelector -}} + {{- range $key, $val := $nodeSelector }} + - key: {{ $key }} + operator: In + values: + - {{ $val }} + {{- end }} +{{- end }} + +{{- define "nodeAffinityPreferredDuringScheduling" }} + {{- range $key, $val := .Values.global.arch }} + {{- if gt ($val | int) 0 }} + - weight: {{ $val | int }} + preference: + matchExpressions: + - key: beta.kubernetes.io/arch + operator: In + values: + - {{ $key }} + {{- end }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinity" }} +{{- if or .Values.nodeagent.podAntiAffinityLabelSelector .Values.nodeagent.podAntiAffinityTermLabelSelector}} + podAntiAffinity: + {{- if .Values.nodeagent.podAntiAffinityLabelSelector }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityRequiredDuringScheduling" . }} + {{- end }} + {{- if .Values.nodeagent.podAntiAffinityTermLabelSelector }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- include "podAntiAffinityPreferredDuringScheduling" . }} + {{- end }} +{{- end }} +{{- end }} + +{{- define "podAntiAffinityRequiredDuringScheduling" }} + {{- range $index, $item := .Values.nodeagent.podAntiAffinityLabelSelector }} + - labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + {{- end }} +{{- end }} + +{{- define "podAntiAffinityPreferredDuringScheduling" }} + {{- range $index, $item := .Values.nodeagent.podAntiAffinityTermLabelSelector }} + - podAffinityTerm: + labelSelector: + matchExpressions: + - key: {{ $item.key }} + operator: {{ $item.operator }} + {{- if $item.values }} + values: + {{- $vals := split "," $item.values }} + {{- range $i, $v := $vals }} + - {{ $v }} + {{- end }} + {{- end }} + topologyKey: {{ $item.topologyKey }} + weight: 100 + {{- end }} +{{- end }} +`) + +func chartsSecurityNodeagentTemplates_affinityTplBytes() ([]byte, error) { + return _chartsSecurityNodeagentTemplates_affinityTpl, nil +} + +func chartsSecurityNodeagentTemplates_affinityTpl() (*asset, error) { + bytes, err := chartsSecurityNodeagentTemplates_affinityTplBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/nodeagent/templates/_affinity.tpl", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityNodeagentTemplatesClusterroleYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: istio-nodeagent-{{ .Release.Namespace }} + labels: + app: istio-nodeagent + release: {{ .Release.Name }} +rules: +- apiGroups: [""] + resources: ["configmaps"] + verbs: ["get"] +`) + +func chartsSecurityNodeagentTemplatesClusterroleYamlBytes() ([]byte, error) { + return _chartsSecurityNodeagentTemplatesClusterroleYaml, nil +} + +func chartsSecurityNodeagentTemplatesClusterroleYaml() (*asset, error) { + bytes, err := chartsSecurityNodeagentTemplatesClusterroleYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/nodeagent/templates/clusterrole.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityNodeagentTemplatesClusterrolebindingYaml = []byte(`apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: istio-nodeagent-{{ .Release.Namespace }} + labels: + app: istio-nodeagent + release: {{ .Release.Name }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: istio-nodeagent-{{ .Release.Namespace }} +subjects: + - kind: ServiceAccount + name: istio-nodeagent-service-account + namespace: {{ .Release.Namespace }} +`) + +func chartsSecurityNodeagentTemplatesClusterrolebindingYamlBytes() ([]byte, error) { + return _chartsSecurityNodeagentTemplatesClusterrolebindingYaml, nil +} + +func chartsSecurityNodeagentTemplatesClusterrolebindingYaml() (*asset, error) { + bytes, err := chartsSecurityNodeagentTemplatesClusterrolebindingYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/nodeagent/templates/clusterrolebinding.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityNodeagentTemplatesDaemonsetYaml = []byte(`apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: istio-nodeagent + namespace: {{ .Release.Namespace }} + labels: + app: istio-nodeagent + istio: nodeagent + release: {{ .Release.Name }} +spec: + selector: + matchLabels: + istio: nodeagent + template: + metadata: + labels: + app: istio-nodeagent + istio: nodeagent + release: {{ .Release.Name }} + annotations: + sidecar.istio.io/inject: "false" + spec: + serviceAccountName: istio-nodeagent-service-account +{{- if .Values.global.priorityClassName }} + priorityClassName: "{{ .Values.global.priorityClassName }}" +{{- end }} + containers: + - name: nodeagent +{{- if contains "/" .Values.nodeagent.image }} + image: "{{ .Values.nodeagent.image }}" +{{- else }} + image: "{{ .Values.global.hub }}/{{ .Values.nodeagent.image }}:{{ .Values.global.tag }}" +{{- end }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | default "Always" }} + args: + {{- if .Values.global.logAsJson }} + - --log_as_json + {{- end }} + volumeMounts: + - mountPath: /var/run/sds + name: sdsudspath + env: + {{- if .Values.nodeagent.env }} + {{- range $key, $val := .Values.nodeagent.env }} + - name: {{ $key }} + value: "{{ $val }}" + {{- end }} + {{- end }} + - name: "Trust_Domain" + value: "{{ .Values.global.trustDomain }}" + - name: NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + volumes: + - name: sdsudspath + hostPath: + path: /var/run/sds + affinity: + {{- include "nodeaffinity" . | indent 6 }} + {{- include "podAntiAffinity" . | indent 6 }} +{{- if .Values.nodeagent.tolerations }} + tolerations: +{{ toYaml .Values.nodeagent.tolerations | indent 6 }} +{{- end }} + updateStrategy: + type: RollingUpdate`) + +func chartsSecurityNodeagentTemplatesDaemonsetYamlBytes() ([]byte, error) { + return _chartsSecurityNodeagentTemplatesDaemonsetYaml, nil +} + +func chartsSecurityNodeagentTemplatesDaemonsetYaml() (*asset, error) { + bytes, err := chartsSecurityNodeagentTemplatesDaemonsetYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/nodeagent/templates/daemonset.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityNodeagentTemplatesServiceaccountYaml = []byte(`apiVersion: v1 +kind: ServiceAccount +{{- if .Values.global.imagePullSecrets }} +imagePullSecrets: +{{- range .Values.global.imagePullSecrets }} + - name: {{ . }} +{{- end }} +{{- end }} +metadata: + name: istio-nodeagent-service-account + namespace: {{ .Release.Namespace }} + labels: + app: istio-nodeagent + release: {{ .Release.Name }} +`) + +func chartsSecurityNodeagentTemplatesServiceaccountYamlBytes() ([]byte, error) { + return _chartsSecurityNodeagentTemplatesServiceaccountYaml, nil +} + +func chartsSecurityNodeagentTemplatesServiceaccountYaml() (*asset, error) { + bytes, err := chartsSecurityNodeagentTemplatesServiceaccountYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/nodeagent/templates/serviceaccount.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _chartsSecurityNodeagentValuesYaml = []byte(`# +# nodeagent configuration +# +nodeagent: + enabled: false + image: node-agent-k8s + env: + # name of authentication provider. + CA_PROVIDER: "" + # CA endpoint. + CA_ADDR: "" + # names of authentication provider's plugins. + Plugins: "" + + nodeSelector: {} + tolerations: [] + + # Specify the pod anti-affinity that allows you to constrain which nodes + # your pod is eligible to be scheduled based on labels on pods that are + # already running on the node rather than based on labels on nodes. + # There are currently two types of anti-affinity: + # "requiredDuringSchedulingIgnoredDuringExecution" + # "preferredDuringSchedulingIgnoredDuringExecution" + # which denote "hard" vs. "soft" requirements, you can define your values + # in "podAntiAffinityLabelSelector" and "podAntiAffinityTermLabelSelector" + # correspondingly. + # For example: + # podAntiAffinityLabelSelector: + # - key: security + # operator: In + # values: S1,S2 + # topologyKey: "kubernetes.io/hostname" + # This pod anti-affinity rule says that the pod requires not to be scheduled + # onto a node if that node is already running a pod with label having key + # "security" and value "S1". + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] +`) + +func chartsSecurityNodeagentValuesYamlBytes() ([]byte, error) { + return _chartsSecurityNodeagentValuesYaml, nil +} + +func chartsSecurityNodeagentValuesYaml() (*asset, error) { + bytes, err := chartsSecurityNodeagentValuesYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "charts/security/nodeagent/values.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _profilesDefaultYaml = []byte(`apiVersion: install.istio.io/v1alpha2 +kind: IstioControlPlane +spec: + hub: gcr.io/istio-release + tag: master-latest-daily + defaultNamespace: istio-system + + # Traffic management feature + trafficManagement: + enabled: true + components: + pilot: + enabled: true + k8s: + env: + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: GODEBUG + value: gctrace=1 + - name: PILOT_TRACE_SAMPLING + value: "1" + - name: CONFIG_NAMESPACE + value: istio-config + hpaSpec: + maxReplicas: 5 + minReplicas: 1 + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-pilot + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: 80 + readinessProbe: + httpGet: + path: /ready + port: 8080 + initialDelaySeconds: 5 + periodSeconds: 30 + timeoutSeconds: 5 + resources: + requests: + cpu: 500m + memory: 2048Mi + strategy: + rollingUpdate: + maxSurge: "100%" + maxUnavailable: "25%" + + # Policy feature + policy: + enabled: true + components: + policy: + enabled: true + k8s: + replicaCount: 1 + hpaSpec: + maxReplicas: 5 + minReplicas: 1 + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-policy + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: 80 + env: + - name: GODEBUG + value: "gctrace=1" + strategy: + rollingUpdate: + maxSurge: "100%" + maxUnavailable: "25%" + + # Telemetry feature + telemetry: + enabled: true + components: + telemetry: + enabled: true + k8s: + env: + - name: GODEBUG + value: "gctrace=1" + - name: GOMAXPROCS + value: "6" + hpaSpec: + maxReplicas: 5 + minReplicas: 1 + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-telemetry + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: 80 + replicaCount: 1 + resources: + requests: + cpu: 1000m + memory: 1G + limits: + cpu: 4800m + memory: 4G + strategy: + rollingUpdate: + maxSurge: "100%" + maxUnavailable: "25%" + + # Security feature + security: + enabled: true + components: + citadel: + enabled: true + k8s: + strategy: + rollingUpdate: + maxSurge: "100%" + maxUnavailable: "25%" + certManager: + enabled: false + nodeAgent: + enabled: false + + # Config management feature + configManagement: + enabled: true + components: + galley: + enabled: true + k8s: + replicaCount: 1 + resources: + requests: + cpu: 100m + strategy: + rollingUpdate: + maxSurge: "100%" + maxUnavailable: "25%" + + # Auto injection feature + autoInjection: + enabled: true + components: + injector: + enabled: true + k8s: + replicaCount: 1 + strategy: + rollingUpdate: + maxSurge: "100%" + maxUnavailable: "25%" + + # Istio Gateway feature + gateways: + enabled: true + components: + ingressGateway: + enabled: true + k8s: + hpaSpec: + maxReplicas: 5 + minReplicas: 1 + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-ingressgateway + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: 80 + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 2000m + memory: 1024Mi + strategy: + rollingUpdate: + maxSurge: "100%" + maxUnavailable: "25%" + + egressGateway: + enabled: false + k8s: + hpaSpec: + maxReplicas: 5 + minReplicas: 1 + scaleTargetRef: + apiVersion: apps/v1 + kind: Deployment + name: istio-egressgateway + metrics: + - type: Resource + resource: + name: cpu + targetAverageUtilization: 80 + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 2000m + memory: 256Mi + strategy: + rollingUpdate: + maxSurge: "100%" + maxUnavailable: "25%" + + # Global values passed through to helm global.yaml. + values: + global: + logging: + level: "default:info" + logAsJson: false + k8sIngress: + enabled: false + gatewayName: ingressgateway + enableHttps: false + proxy: + image: proxyv2 + clusterDomain: "cluster.local" + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 2000m + memory: 1024Mi + concurrency: 2 + accessLogFile: "" + accessLogFormat: "" + accessLogEncoding: TEXT + envoyAccessLogService: + enabled: false + host: # example: accesslog-service.istio-system + port: # example: 15000 + logLevel: warning + componentLogLevel: "misc:error" + dnsRefreshRate: 300s + privileged: false + enableCoreDump: false + statusPort: 15020 + readinessInitialDelaySeconds: 1 + readinessPeriodSeconds: 2 + readinessFailureThreshold: 30 + includeIPRanges: "*" + excludeIPRanges: "" + excludeOutboundPorts: "" + kubevirtInterfaces: "" + includeInboundPorts: "*" + excludeInboundPorts: "" + autoInject: enabled + envoyStatsd: + enabled: false + host: # example: statsd-svc.istio-system + port: # example: 9125 + envoyMetricsService: + enabled: false + host: # example: metrics-service.istio-system + port: # example: 15000 + tracer: "zipkin" + proxy_init: + image: proxy_init + resources: + limits: + cpu: 100m + memory: 50Mi + requests: + cpu: 10m + memory: 10Mi + imagePullPolicy: Always + controlPlaneSecurityEnabled: true + disablePolicyChecks: true + policyCheckFailOpen: false + enableTracing: true + tracer: + lightstep: + address: "" # example: lightstep-satellite:443 + accessToken: "" # example: abcdefg1234567 + secure: true # example: true|false + cacertPath: "" # example: /etc/lightstep/cacert.pem + zipkin: + address: "" + datadog: + address: "$(HOST_IP):8126" + mtls: + enabled: false + imagePullSecrets: [] + arch: + amd64: 2 + s390x: 2 + ppc64le: 2 + oneNamespace: false + defaultNodeSelector: {} + configValidation: true + meshExpansion: + enabled: false + useILB: false + multiCluster: + enabled: false + defaultResources: + requests: + cpu: 10m + defaultPodDisruptionBudget: + enabled: true + priorityClassName: "" + useMCP: true + trustDomain: "" + outboundTrafficPolicy: + mode: ALLOW_ANY + sds: + enabled: false + udsPath: "" + meshNetworks: {} + localityLbSetting: + enabled: true + enableHelmTest: false + + pilot: + autoscaleEnabled: true + autoscaleMin: 1 + autoscaleMax: 5 + replicaCount: 1 + image: pilot + traceSampling: 1.0 + configNamespace: istio-config + appNamespaces: [] + env: + GODEBUG: gctrace=1 + cpu: + targetAverageUtilization: 80 + nodeSelector: {} + tolerations: [] + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + keepaliveMaxServerConnectionAge: 30m + deploymentLabels: + meshNetworks: + networks: {} + configMap: true + ingress: + ingressService: istio-ingressgateway + ingressControllerMode: "OFF" + ingressClass: istio + telemetry: + enabled: true + policy: + enabled: false + useMCP: true + + mixer: + adapters: + stdio: + enabled: false + outputAsJson: false + prometheus: + enabled: true + metricsExpiryDuration: 10m + kubernetesenv: + enabled: true + stackdriver: + enabled: false + auth: + appCredentials: false + apiKey: "" + serviceAccountPath: "" + tracer: + enabled: false + sampleProbability: 1 + useAdapterCRDs: false + + telemetry: + image: mixer + replicaCount: 1 + autoscaleEnabled: true + sessionAffinityEnabled: false + loadshedding: + mode: enforce + latencyThreshold: 100ms + reportBatchMaxEntries: 100 + reportBatchMaxTime: 1s + useMCP: true + nodeSelector: {} + tolerations: [] + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + + policy: + image: mixer + adapters: + kubernetesenv: + enabled: true + + galley: + + citadel: + image: citadel + selfSigned: true # indicate if self-signed CA is used. + trustDomain: cluster.local # indicate the domain used in SPIFFE identity URL + enableNamespacesByDefault: true + dnsCerts: + istio-pilot-service-account.istio-system: istio-pilot.istio-system + + certmanager: + hub: quay.io/jetstack + tag: v0.6.2 + image: cert-manager-controller + + nodeagent: + image: node-agent-k8s + + gateways: + istio-egressgateway: + autoscaleEnabled: true + zvpn: + suffix: global + enabled: true + drainDuration: 45s + connectTimeout: 10s + env: + ISTIO_META_ROUTER_MODE: "sni-dnat" + ports: + - port: 80 + name: http2 + - port: 443 + name: https + - port: 15443 + targetPort: 15443 + name: tls + secretVolumes: + - name: egressgateway-certs + secretName: istio-egressgateway-certs + mountPath: /etc/istio/egressgateway-certs + - name: egressgateway-ca-certs + secretName: istio-egressgateway-ca-certs + mountPath: /etc/istio/egressgateway-ca-certs + + istio-ingressgateway: + autoscaleEnabled: true + applicationPorts: "" + debug: info + domain: "" + zvpn: + enabled: true + suffix: global + telemetry_domain_name: "" + env: + ISTIO_META_ROUTER_MODE: "sni-dnat" + ports: + - port: 15020 + targetPort: 15020 + name: status-port + - port: 80 + targetPort: 80 + name: http2 + - port: 443 + name: https + - port: 15029 + targetPort: 15029 + name: kiali + - port: 15030 + targetPort: 15030 + name: prometheus + - port: 15031 + targetPort: 15031 + name: grafana + - port: 15032 + targetPort: 15032 + name: tracing + - port: 15443 + targetPort: 15443 + name: tls + meshExpansionPorts: + - port: 15011 + targetPort: 15011 + name: tcp-pilot-grpc-tls + - port: 8060 + targetPort: 8060 + name: tcp-citadel-grpc-tls + - port: 853 + targetPort: 853 + name: tcp-dns-tls + secretVolumes: + - name: ingressgateway-certs + secretName: istio-ingressgateway-certs + mountPath: /etc/istio/ingressgateway-certs + - name: ingressgateway-ca-certs + secretName: istio-ingressgateway-ca-certs + mountPath: /etc/istio/ingressgateway-ca-certs + telemetry_addon_gateways: + tracing_gateway: + name: tracing + port: 15032 + desPort: 80 + enabled: false + tls: false + kiali_gateway: + name: kiali + port: 15029 + desPort: 20001 + enabled: false + tls: false + grafana_gateway: + name: grafana + port: 15031 + desPort: 3000 + enabled: false + tls: false + prometheus_gateway: + name: prometheus + port: 15030 + desPort: 9090 + enabled: false + tls: false + + sidecarInjectorWebhook: + image: sidecar_injector + enableNamespacesByDefault: false + rewriteAppHTTPProbe: false + selfSigned: false + injectLabel: istio-injection + + prometheus: + enabled: true + replicaCount: 1 + hub: docker.io/prom + tag: v2.8.0 + retention: 6h + scrapeInterval: 15s + contextPath: /prometheus + ingress: + enabled: false + hosts: + - prometheus.local + annotations: + tls: + security: + enabled: true + nodeSelector: {} + tolerations: [] + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + + grafana: + enabled: false + replicaCount: 1 + image: + repository: grafana/grafana + tag: 6.1.6 + persist: false + storageClassName: "" + accessMode: ReadWriteMany + security: + enabled: false + secretName: grafana + usernameKey: username + passphraseKey: passphrase + + contextPath: /grafana + service: + annotations: {} + name: http + type: ClusterIP + externalPort: 3000 + loadBalancerIP: + loadBalancerSourceRanges: + ingress: + enabled: false + hosts: + - grafana.local + annotations: + tls: + datasources: + datasources.yaml: + apiVersion: 1 + datasources: + dashboardProviders: + dashboardproviders.yaml: + apiVersion: 1 + providers: + - name: 'istio' + orgId: 1 + folder: 'istio' + type: file + disableDeletion: false + options: + path: /var/lib/grafana/dashboards/istio + nodeSelector: {} + tolerations: [] + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + env: {} + envSecrets: {} + + tracing: + enabled: false + provider: jaeger + nodeSelector: {} + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + jaeger: + hub: docker.io/jaegertracing + tag: 1.12 + memory: + max_traces: 50000 + spanStorageType: badger + persist: false + storageClassName: "" + accessMode: ReadWriteMany + zipkin: + hub: docker.io/openzipkin + tag: 2.14.2 + probeStartupDelay: 200 + queryPort: 9411 + resources: + limits: + cpu: 300m + memory: 900Mi + requests: + cpu: 150m + memory: 900Mi + javaOptsHeap: 700 + maxSpans: 500000 + node: + cpus: 2 + opencensus: + hub: docker.io/omnition + tag: 0.1.9 + resources: + limits: + cpu: 1 + memory: 2Gi + requests: + cpu: 200m + memory: 400Mi + exporters: + stackdriver: + enable_tracing: true + service: + annotations: {} + name: http + type: ClusterIP + externalPort: 9411 + ingress: + enabled: false + hosts: + annotations: + tls: + + kiali: + enabled: false + replicaCount: 1 + hub: docker.io/kiali + tag: v1.1.0 + contextPath: /kiali + nodeSelector: {} + podAntiAffinityLabelSelector: [] + podAntiAffinityTermLabelSelector: [] + ingress: + enabled: false + hosts: + - kiali.local + annotations: + tls: + dashboard: + secretName: kiali + usernameKey: username + passphraseKey: passphrase + viewOnlyMode: false + grafanaURL: + jaegerURL: + prometheusNamespace: + createDemoSecret: true + security: + enabled: true + cert_file: /kiali-cert/cert-chain.pem + private_key_file: /kiali-cert/key.pem + + # TODO: derive from operator API + version: "" + clusterResources: true +`) + +func profilesDefaultYamlBytes() ([]byte, error) { + return _profilesDefaultYaml, nil +} + +func profilesDefaultYaml() (*asset, error) { + bytes, err := profilesDefaultYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "profiles/default.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _profilesDemoAuthYaml = []byte(`apiVersion: install.istio.io/v1alpha2 +kind: IstioControlPlane +spec: + gateways: + components: + egressGateway: + enabled: true + k8s: + resources: + requests: + cpu: 10m + memory: 40Mi + ingressGateway: + enabled: true + k8s: + resources: + requests: + cpu: 10m + memory: 40Mi + policy: + components: + policy: + k8s: + resources: + requests: + cpu: 10m + memory: 100Mi + + telemetry: + components: + telemetry: + k8s: + resources: + requests: + cpu: 50m + memory: 100Mi + + + trafficManagement: + components: + pilot: + k8s: + env: + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: GODEBUG + value: gctrace=1 + - name: PILOT_TRACE_SAMPLING + value: "100" + - name: CONFIG_NAMESPACE + value: istio-config + resources: + requests: + cpu: 10m + memory: 100Mi + + values: + global: + disablePolicyChecks: false + mtls: + enabled: true + proxy: + accessLogFile: /dev/stdout + resources: + requests: + cpu: 10m + memory: 40Mi + + pilot: + autoscaleEnabled: false + + mixer: + adapters: + useAdapterCRDs: false + kubernetesenv: + enabled: true + prometheus: + enabled: true + metricsExpiryDuration: 10m + stackdriver: + enabled: false + stdio: + enabled: true + outputAsJson: false + policy: + autoscaleEnabled: false + telemetry: + autoscaleEnabled: false + + gateways: + istio-egressgateway: + autoscaleEnabled: false + istio-ingressgateway: + autoscaleEnabled: false + + grafana: + enabled: true + + tracing: + enabled: true + + kiali: + enabled: true + createDemoSecret: true +`) + +func profilesDemoAuthYamlBytes() ([]byte, error) { + return _profilesDemoAuthYaml, nil +} + +func profilesDemoAuthYaml() (*asset, error) { + bytes, err := profilesDemoAuthYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "profiles/demo-auth.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _profilesDemoYaml = []byte(`apiVersion: install.istio.io/v1alpha2 +kind: IstioControlPlane +spec: + gateways: + components: + egressGateway: + enabled: true + k8s: + resources: + requests: + cpu: 10m + memory: 40Mi + + ingressGateway: + enabled: true + k8s: + resources: + requests: + cpu: 10m + memory: 40Mi + + policy: + components: + policy: + k8s: + resources: + requests: + cpu: 10m + memory: 100Mi + + telemetry: + components: + telemetry: + k8s: + resources: + requests: + cpu: 50m + memory: 100Mi + + trafficManagement: + components: + pilot: + k8s: + env: + - name: POD_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.name + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + - name: GODEBUG + value: gctrace=1 + - name: PILOT_TRACE_SAMPLING + value: "100" + - name: CONFIG_NAMESPACE + value: istio-config + resources: + requests: + cpu: 10m + memory: 100Mi + + values: + global: + disablePolicyChecks: false + controlPlaneSecurityEnabled: false + proxy: + accessLogFile: /dev/stdout + resources: + requests: + cpu: 10m + memory: 40Mi + + pilot: + autoscaleEnabled: false + + mixer: + adapters: + useAdapterCRDs: false + kubernetesenv: + enabled: true + prometheus: + enabled: true + metricsExpiryDuration: 10m + stackdriver: + enabled: false + stdio: + enabled: true + outputAsJson: false + policy: + autoscaleEnabled: false + telemetry: + autoscaleEnabled: false + + gateways: + istio-egressgateway: + autoscaleEnabled: false + istio-ingressgateway: + autoscaleEnabled: false + + grafana: + enabled: true + + tracing: + enabled: true + + kiali: + enabled: true + createDemoSecret: true +`) + +func profilesDemoYamlBytes() ([]byte, error) { + return _profilesDemoYaml, nil +} + +func profilesDemoYaml() (*asset, error) { + bytes, err := profilesDemoYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "profiles/demo.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _profilesMinimalYaml = []byte(`apiVersion: install.istio.io/v1alpha2 +kind: IstioControlPlane +spec: + policy: + enabled: false + + telemetry: + enabled: false + + security: + enabled: false + + configManagement: + enabled: false + + autoInjection: + enabled: false + + gateways: + enabled: false + + values: + global: + useMCP: false + + pilot: + sidecar: false + + proxy: + envoyStatsd: + enabled: false + host: + port: + + prometheus: + enabeld: false +`) + +func profilesMinimalYamlBytes() ([]byte, error) { + return _profilesMinimalYaml, nil +} + +func profilesMinimalYaml() (*asset, error) { + bytes, err := profilesMinimalYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "profiles/minimal.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _profilesSdsYaml = []byte(`apiVersion: install.istio.io/v1alpha2 +kind: IstioControlPlane +spec: + security: + components: + nodeAgent: + enabled: true + values: + global: + controlPlaneSecurityEnabled: false + mtls: + enabled: true + sds: + enabled: true + udsPath: "unix:/var/run/sds/uds_path" + useNormalJwt: false + useTrustworthyJwt: true + nodeagent: + image: node-agent-k8s + env: + CA_PROVIDER: "Citadel" + CA_ADDR: "istio-citadel:8060" + VALID_TOKEN: true + +`) + +func profilesSdsYamlBytes() ([]byte, error) { + return _profilesSdsYaml, nil +} + +func profilesSdsYaml() (*asset, error) { + bytes, err := profilesSdsYamlBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "profiles/sds.yaml", size: 0, mode: os.FileMode(0), modTime: time.Unix(0, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +// Asset loads and returns the asset for the given name. +// It returns an error if the asset could not be found or +// could not be loaded. +func Asset(name string) ([]byte, error) { + cannonicalName := strings.Replace(name, "\\", "/", -1) + if f, ok := _bindata[cannonicalName]; ok { + a, err := f() + if err != nil { + return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err) + } + return a.bytes, nil + } + return nil, fmt.Errorf("Asset %s not found", name) +} + +// MustAsset is like Asset but panics when Asset would return an error. +// It simplifies safe initialization of global variables. +func MustAsset(name string) []byte { + a, err := Asset(name) + if err != nil { + panic("asset: Asset(" + name + "): " + err.Error()) + } + + return a +} + +// AssetInfo loads and returns the asset info for the given name. +// It returns an error if the asset could not be found or +// could not be loaded. +func AssetInfo(name string) (os.FileInfo, error) { + cannonicalName := strings.Replace(name, "\\", "/", -1) + if f, ok := _bindata[cannonicalName]; ok { + a, err := f() + if err != nil { + return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err) + } + return a.info, nil + } + return nil, fmt.Errorf("AssetInfo %s not found", name) +} + +// AssetNames returns the names of the assets. +func AssetNames() []string { + names := make([]string, 0, len(_bindata)) + for name := range _bindata { + names = append(names, name) + } + return names +} + +// _bindata is a table, holding each asset generator, mapped to its name. +var _bindata = map[string]func() (*asset, error){ + "charts/crds/Chart.yaml": chartsCrdsChartYaml, + "charts/crds/files/crd-10.yaml": chartsCrdsFilesCrd10Yaml, + "charts/crds/files/crd-11.yaml": chartsCrdsFilesCrd11Yaml, + "charts/crds/files/crd-12.yaml": chartsCrdsFilesCrd12Yaml, + "charts/crds/files/crd-14.yaml": chartsCrdsFilesCrd14Yaml, + "charts/crds/files/crd-certmanager-10.yaml": chartsCrdsFilesCrdCertmanager10Yaml, + "charts/crds/files/crd-certmanager-11.yaml": chartsCrdsFilesCrdCertmanager11Yaml, + "charts/crds/kustomization.yaml": chartsCrdsKustomizationYaml, + "charts/crds/templates/crds.yaml": chartsCrdsTemplatesCrdsYaml, + "charts/crds/templates/namespaces.yaml": chartsCrdsTemplatesNamespacesYaml, + "charts/gateways/istio-egress/Chart.yaml": chartsGatewaysIstioEgressChartYaml, + "charts/gateways/istio-egress/NOTES.txt": chartsGatewaysIstioEgressNotesTxt, + "charts/gateways/istio-egress/templates/_affinity.tpl": chartsGatewaysIstioEgressTemplates_affinityTpl, + "charts/gateways/istio-egress/templates/_helpers.tpl": chartsGatewaysIstioEgressTemplates_helpersTpl, + "charts/gateways/istio-egress/templates/autoscale.yaml": chartsGatewaysIstioEgressTemplatesAutoscaleYaml, + "charts/gateways/istio-egress/templates/deployment.yaml": chartsGatewaysIstioEgressTemplatesDeploymentYaml, + "charts/gateways/istio-egress/templates/poddisruptionbudget.yaml": chartsGatewaysIstioEgressTemplatesPoddisruptionbudgetYaml, + "charts/gateways/istio-egress/templates/preconfigured.yaml": chartsGatewaysIstioEgressTemplatesPreconfiguredYaml, + "charts/gateways/istio-egress/templates/service.yaml": chartsGatewaysIstioEgressTemplatesServiceYaml, + "charts/gateways/istio-egress/templates/serviceaccount.yaml": chartsGatewaysIstioEgressTemplatesServiceaccountYaml, + "charts/gateways/istio-egress/values.yaml": chartsGatewaysIstioEgressValuesYaml, + "charts/gateways/istio-ingress/Chart.yaml": chartsGatewaysIstioIngressChartYaml, + "charts/gateways/istio-ingress/NOTES.txt": chartsGatewaysIstioIngressNotesTxt, + "charts/gateways/istio-ingress/templates/_affinity.tpl": chartsGatewaysIstioIngressTemplates_affinityTpl, + "charts/gateways/istio-ingress/templates/addongateway.yaml": chartsGatewaysIstioIngressTemplatesAddongatewayYaml, + "charts/gateways/istio-ingress/templates/autoscale.yaml": chartsGatewaysIstioIngressTemplatesAutoscaleYaml, + "charts/gateways/istio-ingress/templates/certificate.yaml": chartsGatewaysIstioIngressTemplatesCertificateYaml, + "charts/gateways/istio-ingress/templates/deployment.yaml": chartsGatewaysIstioIngressTemplatesDeploymentYaml, + "charts/gateways/istio-ingress/templates/gateway.yaml": chartsGatewaysIstioIngressTemplatesGatewayYaml, + "charts/gateways/istio-ingress/templates/hosts.yaml": chartsGatewaysIstioIngressTemplatesHostsYaml, + "charts/gateways/istio-ingress/templates/meshexpansion.yaml": chartsGatewaysIstioIngressTemplatesMeshexpansionYaml, + "charts/gateways/istio-ingress/templates/poddisruptionbudget.yaml": chartsGatewaysIstioIngressTemplatesPoddisruptionbudgetYaml, + "charts/gateways/istio-ingress/templates/preconfigured.yaml": chartsGatewaysIstioIngressTemplatesPreconfiguredYaml, + "charts/gateways/istio-ingress/templates/role.yaml": chartsGatewaysIstioIngressTemplatesRoleYaml, + "charts/gateways/istio-ingress/templates/rolebindings.yaml": chartsGatewaysIstioIngressTemplatesRolebindingsYaml, + "charts/gateways/istio-ingress/templates/service.yaml": chartsGatewaysIstioIngressTemplatesServiceYaml, + "charts/gateways/istio-ingress/templates/serviceaccount.yaml": chartsGatewaysIstioIngressTemplatesServiceaccountYaml, + "charts/gateways/istio-ingress/templates/sidecar.yaml": chartsGatewaysIstioIngressTemplatesSidecarYaml, + "charts/gateways/istio-ingress/values.yaml": chartsGatewaysIstioIngressValuesYaml, + "charts/istio-cni/Chart.yaml": chartsIstioCniChartYaml, + "charts/istio-cni/templates/clusterrole.yaml": chartsIstioCniTemplatesClusterroleYaml, + "charts/istio-cni/templates/clusterrolebinding.yaml": chartsIstioCniTemplatesClusterrolebindingYaml, + "charts/istio-cni/templates/configmap-cni.yaml": chartsIstioCniTemplatesConfigmapCniYaml, + "charts/istio-cni/templates/daemonset.yaml": chartsIstioCniTemplatesDaemonsetYaml, + "charts/istio-cni/templates/serviceaccount.yaml": chartsIstioCniTemplatesServiceaccountYaml, + "charts/istio-cni/values.yaml": chartsIstioCniValuesYaml, + "charts/istio-cni/values_gke.yaml": chartsIstioCniValues_gkeYaml, + "charts/istio-control/istio-autoinject/Chart.yaml": chartsIstioControlIstioAutoinjectChartYaml, + "charts/istio-control/istio-autoinject/NOTES.txt": chartsIstioControlIstioAutoinjectNotesTxt, + "charts/istio-control/istio-autoinject/files/injection-template.yaml": chartsIstioControlIstioAutoinjectFilesInjectionTemplateYaml, + "charts/istio-control/istio-autoinject/templates/_affinity.tpl": chartsIstioControlIstioAutoinjectTemplates_affinityTpl, + "charts/istio-control/istio-autoinject/templates/_helpers.tpl": chartsIstioControlIstioAutoinjectTemplates_helpersTpl, + "charts/istio-control/istio-autoinject/templates/clusterrole.yaml": chartsIstioControlIstioAutoinjectTemplatesClusterroleYaml, + "charts/istio-control/istio-autoinject/templates/clusterrolebinding.yaml": chartsIstioControlIstioAutoinjectTemplatesClusterrolebindingYaml, + "charts/istio-control/istio-autoinject/templates/configmap.yaml": chartsIstioControlIstioAutoinjectTemplatesConfigmapYaml, + "charts/istio-control/istio-autoinject/templates/deployment.yaml": chartsIstioControlIstioAutoinjectTemplatesDeploymentYaml, + "charts/istio-control/istio-autoinject/templates/mutatingwebhook.yaml": chartsIstioControlIstioAutoinjectTemplatesMutatingwebhookYaml, + "charts/istio-control/istio-autoinject/templates/poddisruptionbudget.yaml": chartsIstioControlIstioAutoinjectTemplatesPoddisruptionbudgetYaml, + "charts/istio-control/istio-autoinject/templates/service.yaml": chartsIstioControlIstioAutoinjectTemplatesServiceYaml, + "charts/istio-control/istio-autoinject/templates/serviceaccount.yaml": chartsIstioControlIstioAutoinjectTemplatesServiceaccountYaml, + "charts/istio-control/istio-autoinject/templates/sidecar-injector-configmap.yaml": chartsIstioControlIstioAutoinjectTemplatesSidecarInjectorConfigmapYaml, + "charts/istio-control/istio-autoinject/values.yaml": chartsIstioControlIstioAutoinjectValuesYaml, + "charts/istio-control/istio-config/Chart.yaml": chartsIstioControlIstioConfigChartYaml, + "charts/istio-control/istio-config/OWNERS": chartsIstioControlIstioConfigOwners, + "charts/istio-control/istio-config/README.md": chartsIstioControlIstioConfigReadmeMd, + "charts/istio-control/istio-config/templates/_affinity.tpl": chartsIstioControlIstioConfigTemplates_affinityTpl, + "charts/istio-control/istio-config/templates/_helpers.tpl": chartsIstioControlIstioConfigTemplates_helpersTpl, + "charts/istio-control/istio-config/templates/clusterrole.yaml": chartsIstioControlIstioConfigTemplatesClusterroleYaml, + "charts/istio-control/istio-config/templates/clusterrolebinding.yaml": chartsIstioControlIstioConfigTemplatesClusterrolebindingYaml, + "charts/istio-control/istio-config/templates/configmap-envoy.yaml": chartsIstioControlIstioConfigTemplatesConfigmapEnvoyYaml, + "charts/istio-control/istio-config/templates/configmap-mesh.yaml": chartsIstioControlIstioConfigTemplatesConfigmapMeshYaml, + "charts/istio-control/istio-config/templates/configmap.yaml": chartsIstioControlIstioConfigTemplatesConfigmapYaml, + "charts/istio-control/istio-config/templates/deployment.yaml": chartsIstioControlIstioConfigTemplatesDeploymentYaml, + "charts/istio-control/istio-config/templates/poddisruptionbudget.yaml": chartsIstioControlIstioConfigTemplatesPoddisruptionbudgetYaml, + "charts/istio-control/istio-config/templates/service.yaml": chartsIstioControlIstioConfigTemplatesServiceYaml, + "charts/istio-control/istio-config/templates/serviceaccount.yaml": chartsIstioControlIstioConfigTemplatesServiceaccountYaml, + "charts/istio-control/istio-config/templates/validatingwebhookconfiguration.yaml.tpl": chartsIstioControlIstioConfigTemplatesValidatingwebhookconfigurationYamlTpl, + "charts/istio-control/istio-config/values.yaml": chartsIstioControlIstioConfigValuesYaml, + "charts/istio-control/istio-discovery/Chart.yaml": chartsIstioControlIstioDiscoveryChartYaml, + "charts/istio-control/istio-discovery/NOTES.txt": chartsIstioControlIstioDiscoveryNotesTxt, + "charts/istio-control/istio-discovery/templates/_affinity.tpl": chartsIstioControlIstioDiscoveryTemplates_affinityTpl, + "charts/istio-control/istio-discovery/templates/_helpers.tpl": chartsIstioControlIstioDiscoveryTemplates_helpersTpl, + "charts/istio-control/istio-discovery/templates/autoscale.yaml": chartsIstioControlIstioDiscoveryTemplatesAutoscaleYaml, + "charts/istio-control/istio-discovery/templates/clusterrole.yaml": chartsIstioControlIstioDiscoveryTemplatesClusterroleYaml, + "charts/istio-control/istio-discovery/templates/clusterrolebinding.yaml": chartsIstioControlIstioDiscoveryTemplatesClusterrolebindingYaml, + "charts/istio-control/istio-discovery/templates/configmap-envoy.yaml": chartsIstioControlIstioDiscoveryTemplatesConfigmapEnvoyYaml, + "charts/istio-control/istio-discovery/templates/configmap.yaml": chartsIstioControlIstioDiscoveryTemplatesConfigmapYaml, + "charts/istio-control/istio-discovery/templates/deployment.yaml": chartsIstioControlIstioDiscoveryTemplatesDeploymentYaml, + "charts/istio-control/istio-discovery/templates/enable-mesh-mtls.yaml": chartsIstioControlIstioDiscoveryTemplatesEnableMeshMtlsYaml, + "charts/istio-control/istio-discovery/templates/poddisruptionbudget.yaml": chartsIstioControlIstioDiscoveryTemplatesPoddisruptionbudgetYaml, + "charts/istio-control/istio-discovery/templates/service.yaml": chartsIstioControlIstioDiscoveryTemplatesServiceYaml, + "charts/istio-control/istio-discovery/templates/serviceaccount.yaml": chartsIstioControlIstioDiscoveryTemplatesServiceaccountYaml, + "charts/istio-control/istio-discovery/values.yaml": chartsIstioControlIstioDiscoveryValuesYaml, + "charts/istio-policy/Chart.yaml": chartsIstioPolicyChartYaml, + "charts/istio-policy/templates/_affinity.tpl": chartsIstioPolicyTemplates_affinityTpl, + "charts/istio-policy/templates/_helpers.tpl": chartsIstioPolicyTemplates_helpersTpl, + "charts/istio-policy/templates/autoscale.yaml": chartsIstioPolicyTemplatesAutoscaleYaml, + "charts/istio-policy/templates/clusterrole.yaml": chartsIstioPolicyTemplatesClusterroleYaml, + "charts/istio-policy/templates/clusterrolebinding.yaml": chartsIstioPolicyTemplatesClusterrolebindingYaml, + "charts/istio-policy/templates/config.yaml": chartsIstioPolicyTemplatesConfigYaml, + "charts/istio-policy/templates/deployment.yaml": chartsIstioPolicyTemplatesDeploymentYaml, + "charts/istio-policy/templates/poddisruptionbudget.yaml": chartsIstioPolicyTemplatesPoddisruptionbudgetYaml, + "charts/istio-policy/templates/service.yaml": chartsIstioPolicyTemplatesServiceYaml, + "charts/istio-policy/templates/serviceaccount.yaml": chartsIstioPolicyTemplatesServiceaccountYaml, + "charts/istio-policy/values.yaml": chartsIstioPolicyValuesYaml, + "charts/istio-telemetry/grafana/Chart.yaml": chartsIstioTelemetryGrafanaChartYaml, + "charts/istio-telemetry/grafana/dashboards/citadel-dashboard.json": chartsIstioTelemetryGrafanaDashboardsCitadelDashboardJson, + "charts/istio-telemetry/grafana/dashboards/galley-dashboard.json": chartsIstioTelemetryGrafanaDashboardsGalleyDashboardJson, + "charts/istio-telemetry/grafana/dashboards/istio-mesh-dashboard.json": chartsIstioTelemetryGrafanaDashboardsIstioMeshDashboardJson, + "charts/istio-telemetry/grafana/dashboards/istio-performance-dashboard.json": chartsIstioTelemetryGrafanaDashboardsIstioPerformanceDashboardJson, + "charts/istio-telemetry/grafana/dashboards/istio-service-dashboard.json": chartsIstioTelemetryGrafanaDashboardsIstioServiceDashboardJson, + "charts/istio-telemetry/grafana/dashboards/istio-workload-dashboard.json": chartsIstioTelemetryGrafanaDashboardsIstioWorkloadDashboardJson, + "charts/istio-telemetry/grafana/dashboards/mixer-dashboard.json": chartsIstioTelemetryGrafanaDashboardsMixerDashboardJson, + "charts/istio-telemetry/grafana/dashboards/pilot-dashboard.json": chartsIstioTelemetryGrafanaDashboardsPilotDashboardJson, + "charts/istio-telemetry/grafana/fix_datasources.sh": chartsIstioTelemetryGrafanaFix_datasourcesSh, + "charts/istio-telemetry/grafana/templates/_affinity.tpl": chartsIstioTelemetryGrafanaTemplates_affinityTpl, + "charts/istio-telemetry/grafana/templates/configmap-dashboards.yaml": chartsIstioTelemetryGrafanaTemplatesConfigmapDashboardsYaml, + "charts/istio-telemetry/grafana/templates/configmap.yaml": chartsIstioTelemetryGrafanaTemplatesConfigmapYaml, + "charts/istio-telemetry/grafana/templates/deployment.yaml": chartsIstioTelemetryGrafanaTemplatesDeploymentYaml, + "charts/istio-telemetry/grafana/templates/destination-rule.yaml": chartsIstioTelemetryGrafanaTemplatesDestinationRuleYaml, + "charts/istio-telemetry/grafana/templates/grafana-policy.yaml": chartsIstioTelemetryGrafanaTemplatesGrafanaPolicyYaml, + "charts/istio-telemetry/grafana/templates/pvc.yaml": chartsIstioTelemetryGrafanaTemplatesPvcYaml, + "charts/istio-telemetry/grafana/templates/service.yaml": chartsIstioTelemetryGrafanaTemplatesServiceYaml, + "charts/istio-telemetry/grafana/templates/tests/test-grafana-connection.yaml": chartsIstioTelemetryGrafanaTemplatesTestsTestGrafanaConnectionYaml, + "charts/istio-telemetry/grafana/values.yaml": chartsIstioTelemetryGrafanaValuesYaml, + "charts/istio-telemetry/kiali/Chart.yaml": chartsIstioTelemetryKialiChartYaml, + "charts/istio-telemetry/kiali/templates/_affinity.tpl": chartsIstioTelemetryKialiTemplates_affinityTpl, + "charts/istio-telemetry/kiali/templates/clusterrole.yaml": chartsIstioTelemetryKialiTemplatesClusterroleYaml, + "charts/istio-telemetry/kiali/templates/clusterrolebinding.yaml": chartsIstioTelemetryKialiTemplatesClusterrolebindingYaml, + "charts/istio-telemetry/kiali/templates/configmap.yaml": chartsIstioTelemetryKialiTemplatesConfigmapYaml, + "charts/istio-telemetry/kiali/templates/demosecret.yaml": chartsIstioTelemetryKialiTemplatesDemosecretYaml, + "charts/istio-telemetry/kiali/templates/deployment.yaml": chartsIstioTelemetryKialiTemplatesDeploymentYaml, + "charts/istio-telemetry/kiali/templates/service.yaml": chartsIstioTelemetryKialiTemplatesServiceYaml, + "charts/istio-telemetry/kiali/templates/serviceaccount.yaml": chartsIstioTelemetryKialiTemplatesServiceaccountYaml, + "charts/istio-telemetry/kiali/values.yaml": chartsIstioTelemetryKialiValuesYaml, + "charts/istio-telemetry/mixer-telemetry/Chart.yaml": chartsIstioTelemetryMixerTelemetryChartYaml, + "charts/istio-telemetry/mixer-telemetry/templates/_affinity.tpl": chartsIstioTelemetryMixerTelemetryTemplates_affinityTpl, + "charts/istio-telemetry/mixer-telemetry/templates/autoscale.yaml": chartsIstioTelemetryMixerTelemetryTemplatesAutoscaleYaml, + "charts/istio-telemetry/mixer-telemetry/templates/clusterrole.yaml": chartsIstioTelemetryMixerTelemetryTemplatesClusterroleYaml, + "charts/istio-telemetry/mixer-telemetry/templates/clusterrolebinding.yaml": chartsIstioTelemetryMixerTelemetryTemplatesClusterrolebindingYaml, + "charts/istio-telemetry/mixer-telemetry/templates/config.yaml": chartsIstioTelemetryMixerTelemetryTemplatesConfigYaml, + "charts/istio-telemetry/mixer-telemetry/templates/configmap-envoy.yaml": chartsIstioTelemetryMixerTelemetryTemplatesConfigmapEnvoyYaml, + "charts/istio-telemetry/mixer-telemetry/templates/deployment.yaml": chartsIstioTelemetryMixerTelemetryTemplatesDeploymentYaml, + "charts/istio-telemetry/mixer-telemetry/templates/poddisruptionbudget.yaml": chartsIstioTelemetryMixerTelemetryTemplatesPoddisruptionbudgetYaml, + "charts/istio-telemetry/mixer-telemetry/templates/service.yaml": chartsIstioTelemetryMixerTelemetryTemplatesServiceYaml, + "charts/istio-telemetry/mixer-telemetry/templates/serviceaccount.yaml": chartsIstioTelemetryMixerTelemetryTemplatesServiceaccountYaml, + "charts/istio-telemetry/mixer-telemetry/templates/stackdriver.yaml": chartsIstioTelemetryMixerTelemetryTemplatesStackdriverYaml, + "charts/istio-telemetry/mixer-telemetry/values.yaml": chartsIstioTelemetryMixerTelemetryValuesYaml, + "charts/istio-telemetry/prometheus/Chart.yaml": chartsIstioTelemetryPrometheusChartYaml, + "charts/istio-telemetry/prometheus/templates/_affinity.tpl": chartsIstioTelemetryPrometheusTemplates_affinityTpl, + "charts/istio-telemetry/prometheus/templates/clusterrole.yaml": chartsIstioTelemetryPrometheusTemplatesClusterroleYaml, + "charts/istio-telemetry/prometheus/templates/clusterrolebindings.yaml": chartsIstioTelemetryPrometheusTemplatesClusterrolebindingsYaml, + "charts/istio-telemetry/prometheus/templates/configmap.yaml": chartsIstioTelemetryPrometheusTemplatesConfigmapYaml, + "charts/istio-telemetry/prometheus/templates/deployment.yaml": chartsIstioTelemetryPrometheusTemplatesDeploymentYaml, + "charts/istio-telemetry/prometheus/templates/destination-rule.yaml": chartsIstioTelemetryPrometheusTemplatesDestinationRuleYaml, + "charts/istio-telemetry/prometheus/templates/inrgess.yaml": chartsIstioTelemetryPrometheusTemplatesInrgessYaml, + "charts/istio-telemetry/prometheus/templates/service.yaml": chartsIstioTelemetryPrometheusTemplatesServiceYaml, + "charts/istio-telemetry/prometheus/templates/serviceaccount.yaml": chartsIstioTelemetryPrometheusTemplatesServiceaccountYaml, + "charts/istio-telemetry/prometheus/templates/tests/test-prometheus-connection.yaml": chartsIstioTelemetryPrometheusTemplatesTestsTestPrometheusConnectionYaml, + "charts/istio-telemetry/prometheus/values.yaml": chartsIstioTelemetryPrometheusValuesYaml, + "charts/istio-telemetry/prometheus-operator/Chart.yaml": chartsIstioTelemetryPrometheusOperatorChartYaml, + "charts/istio-telemetry/prometheus-operator/templates/_affinity.tpl": chartsIstioTelemetryPrometheusOperatorTemplates_affinityTpl, + "charts/istio-telemetry/prometheus-operator/templates/prometheus.yaml": chartsIstioTelemetryPrometheusOperatorTemplatesPrometheusYaml, + "charts/istio-telemetry/prometheus-operator/templates/servicemonitors.yaml": chartsIstioTelemetryPrometheusOperatorTemplatesServicemonitorsYaml, + "charts/istio-telemetry/prometheus-operator/values.yaml": chartsIstioTelemetryPrometheusOperatorValuesYaml, + "charts/istio-telemetry/tracing/Chart.yaml": chartsIstioTelemetryTracingChartYaml, + "charts/istio-telemetry/tracing/templates/_affinity.tpl": chartsIstioTelemetryTracingTemplates_affinityTpl, + "charts/istio-telemetry/tracing/templates/deployment-jaeger.yaml": chartsIstioTelemetryTracingTemplatesDeploymentJaegerYaml, + "charts/istio-telemetry/tracing/templates/deployment-opencensus.yaml": chartsIstioTelemetryTracingTemplatesDeploymentOpencensusYaml, + "charts/istio-telemetry/tracing/templates/deployment-zipkin.yaml": chartsIstioTelemetryTracingTemplatesDeploymentZipkinYaml, + "charts/istio-telemetry/tracing/templates/pvc.yaml": chartsIstioTelemetryTracingTemplatesPvcYaml, + "charts/istio-telemetry/tracing/templates/service-jaeger.yaml": chartsIstioTelemetryTracingTemplatesServiceJaegerYaml, + "charts/istio-telemetry/tracing/templates/service.yaml": chartsIstioTelemetryTracingTemplatesServiceYaml, + "charts/istio-telemetry/tracing/values.yaml": chartsIstioTelemetryTracingValuesYaml, + "charts/istiocoredns/Chart.yaml": chartsIstiocorednsChartYaml, + "charts/istiocoredns/templates/_affinity.tpl": chartsIstiocorednsTemplates_affinityTpl, + "charts/istiocoredns/templates/clusterrole.yaml": chartsIstiocorednsTemplatesClusterroleYaml, + "charts/istiocoredns/templates/clusterrolebinding.yaml": chartsIstiocorednsTemplatesClusterrolebindingYaml, + "charts/istiocoredns/templates/configmap.yaml": chartsIstiocorednsTemplatesConfigmapYaml, + "charts/istiocoredns/templates/deployment.yaml": chartsIstiocorednsTemplatesDeploymentYaml, + "charts/istiocoredns/templates/service.yaml": chartsIstiocorednsTemplatesServiceYaml, + "charts/istiocoredns/templates/serviceaccount.yaml": chartsIstiocorednsTemplatesServiceaccountYaml, + "charts/istiocoredns/values.yaml": chartsIstiocorednsValuesYaml, + "charts/security/certmanager/Chart.yaml": chartsSecurityCertmanagerChartYaml, + "charts/security/certmanager/templates/NOTES.txt": chartsSecurityCertmanagerTemplatesNotesTxt, + "charts/security/certmanager/templates/_affinity.tpl": chartsSecurityCertmanagerTemplates_affinityTpl, + "charts/security/certmanager/templates/deployment.yaml": chartsSecurityCertmanagerTemplatesDeploymentYaml, + "charts/security/certmanager/templates/issuer.yaml": chartsSecurityCertmanagerTemplatesIssuerYaml, + "charts/security/certmanager/templates/poddisruptionbudget.yaml": chartsSecurityCertmanagerTemplatesPoddisruptionbudgetYaml, + "charts/security/certmanager/templates/rbac.yaml": chartsSecurityCertmanagerTemplatesRbacYaml, + "charts/security/certmanager/templates/serviceaccount.yaml": chartsSecurityCertmanagerTemplatesServiceaccountYaml, + "charts/security/certmanager/values.yaml": chartsSecurityCertmanagerValuesYaml, + "charts/security/citadel/Chart.yaml": chartsSecurityCitadelChartYaml, + "charts/security/citadel/templates/NOTES.txt": chartsSecurityCitadelTemplatesNotesTxt, + "charts/security/citadel/templates/_affinity.tpl": chartsSecurityCitadelTemplates_affinityTpl, + "charts/security/citadel/templates/_helpers.tpl": chartsSecurityCitadelTemplates_helpersTpl, + "charts/security/citadel/templates/clusterrole.yaml": chartsSecurityCitadelTemplatesClusterroleYaml, + "charts/security/citadel/templates/clusterrolebinding.yaml": chartsSecurityCitadelTemplatesClusterrolebindingYaml, + "charts/security/citadel/templates/deployment.yaml": chartsSecurityCitadelTemplatesDeploymentYaml, + "charts/security/citadel/templates/poddisruptionbudget.yaml": chartsSecurityCitadelTemplatesPoddisruptionbudgetYaml, + "charts/security/citadel/templates/service.yaml": chartsSecurityCitadelTemplatesServiceYaml, + "charts/security/citadel/templates/serviceaccount.yaml": chartsSecurityCitadelTemplatesServiceaccountYaml, + "charts/security/citadel/values.yaml": chartsSecurityCitadelValuesYaml, + "charts/security/nodeagent/Chart.yaml": chartsSecurityNodeagentChartYaml, + "charts/security/nodeagent/templates/_affinity.tpl": chartsSecurityNodeagentTemplates_affinityTpl, + "charts/security/nodeagent/templates/clusterrole.yaml": chartsSecurityNodeagentTemplatesClusterroleYaml, + "charts/security/nodeagent/templates/clusterrolebinding.yaml": chartsSecurityNodeagentTemplatesClusterrolebindingYaml, + "charts/security/nodeagent/templates/daemonset.yaml": chartsSecurityNodeagentTemplatesDaemonsetYaml, + "charts/security/nodeagent/templates/serviceaccount.yaml": chartsSecurityNodeagentTemplatesServiceaccountYaml, + "charts/security/nodeagent/values.yaml": chartsSecurityNodeagentValuesYaml, + "profiles/default.yaml": profilesDefaultYaml, + "profiles/demo-auth.yaml": profilesDemoAuthYaml, + "profiles/demo.yaml": profilesDemoYaml, + "profiles/minimal.yaml": profilesMinimalYaml, + "profiles/sds.yaml": profilesSdsYaml, +} + +// AssetDir returns the file names below a certain +// directory embedded in the file by go-bindata. +// For example if you run go-bindata on data/... and data contains the +// following hierarchy: +// data/ +// foo.txt +// img/ +// a.png +// b.png +// then AssetDir("data") would return []string{"foo.txt", "img"} +// AssetDir("data/img") would return []string{"a.png", "b.png"} +// AssetDir("foo.txt") and AssetDir("notexist") would return an error +// AssetDir("") will return []string{"data"}. +func AssetDir(name string) ([]string, error) { + node := _bintree + if len(name) != 0 { + cannonicalName := strings.Replace(name, "\\", "/", -1) + pathList := strings.Split(cannonicalName, "/") + for _, p := range pathList { + node = node.Children[p] + if node == nil { + return nil, fmt.Errorf("Asset %s not found", name) + } + } + } + if node.Func != nil { + return nil, fmt.Errorf("Asset %s not found", name) + } + rv := make([]string, 0, len(node.Children)) + for childName := range node.Children { + rv = append(rv, childName) + } + return rv, nil +} + +type bintree struct { + Func func() (*asset, error) + Children map[string]*bintree +} +var _bintree = &bintree{nil, map[string]*bintree{ + "charts": &bintree{nil, map[string]*bintree{ + "crds": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsCrdsChartYaml, map[string]*bintree{}}, + "files": &bintree{nil, map[string]*bintree{ + "crd-10.yaml": &bintree{chartsCrdsFilesCrd10Yaml, map[string]*bintree{}}, + "crd-11.yaml": &bintree{chartsCrdsFilesCrd11Yaml, map[string]*bintree{}}, + "crd-12.yaml": &bintree{chartsCrdsFilesCrd12Yaml, map[string]*bintree{}}, + "crd-14.yaml": &bintree{chartsCrdsFilesCrd14Yaml, map[string]*bintree{}}, + "crd-certmanager-10.yaml": &bintree{chartsCrdsFilesCrdCertmanager10Yaml, map[string]*bintree{}}, + "crd-certmanager-11.yaml": &bintree{chartsCrdsFilesCrdCertmanager11Yaml, map[string]*bintree{}}, + }}, + "kustomization.yaml": &bintree{chartsCrdsKustomizationYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "crds.yaml": &bintree{chartsCrdsTemplatesCrdsYaml, map[string]*bintree{}}, + "namespaces.yaml": &bintree{chartsCrdsTemplatesNamespacesYaml, map[string]*bintree{}}, + }}, + }}, + "gateways": &bintree{nil, map[string]*bintree{ + "istio-egress": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsGatewaysIstioEgressChartYaml, map[string]*bintree{}}, + "NOTES.txt": &bintree{chartsGatewaysIstioEgressNotesTxt, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsGatewaysIstioEgressTemplates_affinityTpl, map[string]*bintree{}}, + "_helpers.tpl": &bintree{chartsGatewaysIstioEgressTemplates_helpersTpl, map[string]*bintree{}}, + "autoscale.yaml": &bintree{chartsGatewaysIstioEgressTemplatesAutoscaleYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsGatewaysIstioEgressTemplatesDeploymentYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsGatewaysIstioEgressTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "preconfigured.yaml": &bintree{chartsGatewaysIstioEgressTemplatesPreconfiguredYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsGatewaysIstioEgressTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsGatewaysIstioEgressTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsGatewaysIstioEgressValuesYaml, map[string]*bintree{}}, + }}, + "istio-ingress": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsGatewaysIstioIngressChartYaml, map[string]*bintree{}}, + "NOTES.txt": &bintree{chartsGatewaysIstioIngressNotesTxt, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsGatewaysIstioIngressTemplates_affinityTpl, map[string]*bintree{}}, + "addongateway.yaml": &bintree{chartsGatewaysIstioIngressTemplatesAddongatewayYaml, map[string]*bintree{}}, + "autoscale.yaml": &bintree{chartsGatewaysIstioIngressTemplatesAutoscaleYaml, map[string]*bintree{}}, + "certificate.yaml": &bintree{chartsGatewaysIstioIngressTemplatesCertificateYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsGatewaysIstioIngressTemplatesDeploymentYaml, map[string]*bintree{}}, + "gateway.yaml": &bintree{chartsGatewaysIstioIngressTemplatesGatewayYaml, map[string]*bintree{}}, + "hosts.yaml": &bintree{chartsGatewaysIstioIngressTemplatesHostsYaml, map[string]*bintree{}}, + "meshexpansion.yaml": &bintree{chartsGatewaysIstioIngressTemplatesMeshexpansionYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsGatewaysIstioIngressTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "preconfigured.yaml": &bintree{chartsGatewaysIstioIngressTemplatesPreconfiguredYaml, map[string]*bintree{}}, + "role.yaml": &bintree{chartsGatewaysIstioIngressTemplatesRoleYaml, map[string]*bintree{}}, + "rolebindings.yaml": &bintree{chartsGatewaysIstioIngressTemplatesRolebindingsYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsGatewaysIstioIngressTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsGatewaysIstioIngressTemplatesServiceaccountYaml, map[string]*bintree{}}, + "sidecar.yaml": &bintree{chartsGatewaysIstioIngressTemplatesSidecarYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsGatewaysIstioIngressValuesYaml, map[string]*bintree{}}, + }}, + }}, + "istio-cni": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioCniChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "clusterrole.yaml": &bintree{chartsIstioCniTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsIstioCniTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "configmap-cni.yaml": &bintree{chartsIstioCniTemplatesConfigmapCniYaml, map[string]*bintree{}}, + "daemonset.yaml": &bintree{chartsIstioCniTemplatesDaemonsetYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstioCniTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioCniValuesYaml, map[string]*bintree{}}, + "values_gke.yaml": &bintree{chartsIstioCniValues_gkeYaml, map[string]*bintree{}}, + }}, + "istio-control": &bintree{nil, map[string]*bintree{ + "istio-autoinject": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioControlIstioAutoinjectChartYaml, map[string]*bintree{}}, + "NOTES.txt": &bintree{chartsIstioControlIstioAutoinjectNotesTxt, map[string]*bintree{}}, + "files": &bintree{nil, map[string]*bintree{ + "injection-template.yaml": &bintree{chartsIstioControlIstioAutoinjectFilesInjectionTemplateYaml, map[string]*bintree{}}, + }}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioControlIstioAutoinjectTemplates_affinityTpl, map[string]*bintree{}}, + "_helpers.tpl": &bintree{chartsIstioControlIstioAutoinjectTemplates_helpersTpl, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "configmap.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesConfigmapYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesDeploymentYaml, map[string]*bintree{}}, + "mutatingwebhook.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesMutatingwebhookYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesServiceaccountYaml, map[string]*bintree{}}, + "sidecar-injector-configmap.yaml": &bintree{chartsIstioControlIstioAutoinjectTemplatesSidecarInjectorConfigmapYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioControlIstioAutoinjectValuesYaml, map[string]*bintree{}}, + }}, + "istio-config": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioControlIstioConfigChartYaml, map[string]*bintree{}}, + "OWNERS": &bintree{chartsIstioControlIstioConfigOwners, map[string]*bintree{}}, + "README.md": &bintree{chartsIstioControlIstioConfigReadmeMd, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioControlIstioConfigTemplates_affinityTpl, map[string]*bintree{}}, + "_helpers.tpl": &bintree{chartsIstioControlIstioConfigTemplates_helpersTpl, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsIstioControlIstioConfigTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsIstioControlIstioConfigTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "configmap-envoy.yaml": &bintree{chartsIstioControlIstioConfigTemplatesConfigmapEnvoyYaml, map[string]*bintree{}}, + "configmap-mesh.yaml": &bintree{chartsIstioControlIstioConfigTemplatesConfigmapMeshYaml, map[string]*bintree{}}, + "configmap.yaml": &bintree{chartsIstioControlIstioConfigTemplatesConfigmapYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstioControlIstioConfigTemplatesDeploymentYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsIstioControlIstioConfigTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioControlIstioConfigTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstioControlIstioConfigTemplatesServiceaccountYaml, map[string]*bintree{}}, + "validatingwebhookconfiguration.yaml.tpl": &bintree{chartsIstioControlIstioConfigTemplatesValidatingwebhookconfigurationYamlTpl, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioControlIstioConfigValuesYaml, map[string]*bintree{}}, + }}, + "istio-discovery": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioControlIstioDiscoveryChartYaml, map[string]*bintree{}}, + "NOTES.txt": &bintree{chartsIstioControlIstioDiscoveryNotesTxt, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioControlIstioDiscoveryTemplates_affinityTpl, map[string]*bintree{}}, + "_helpers.tpl": &bintree{chartsIstioControlIstioDiscoveryTemplates_helpersTpl, map[string]*bintree{}}, + "autoscale.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesAutoscaleYaml, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "configmap-envoy.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesConfigmapEnvoyYaml, map[string]*bintree{}}, + "configmap.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesConfigmapYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesDeploymentYaml, map[string]*bintree{}}, + "enable-mesh-mtls.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesEnableMeshMtlsYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstioControlIstioDiscoveryTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioControlIstioDiscoveryValuesYaml, map[string]*bintree{}}, + }}, + }}, + "istio-policy": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioPolicyChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioPolicyTemplates_affinityTpl, map[string]*bintree{}}, + "_helpers.tpl": &bintree{chartsIstioPolicyTemplates_helpersTpl, map[string]*bintree{}}, + "autoscale.yaml": &bintree{chartsIstioPolicyTemplatesAutoscaleYaml, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsIstioPolicyTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsIstioPolicyTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "config.yaml": &bintree{chartsIstioPolicyTemplatesConfigYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstioPolicyTemplatesDeploymentYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsIstioPolicyTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioPolicyTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstioPolicyTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioPolicyValuesYaml, map[string]*bintree{}}, + }}, + "istio-telemetry": &bintree{nil, map[string]*bintree{ + "grafana": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioTelemetryGrafanaChartYaml, map[string]*bintree{}}, + "dashboards": &bintree{nil, map[string]*bintree{ + "citadel-dashboard.json": &bintree{chartsIstioTelemetryGrafanaDashboardsCitadelDashboardJson, map[string]*bintree{}}, + "galley-dashboard.json": &bintree{chartsIstioTelemetryGrafanaDashboardsGalleyDashboardJson, map[string]*bintree{}}, + "istio-mesh-dashboard.json": &bintree{chartsIstioTelemetryGrafanaDashboardsIstioMeshDashboardJson, map[string]*bintree{}}, + "istio-performance-dashboard.json": &bintree{chartsIstioTelemetryGrafanaDashboardsIstioPerformanceDashboardJson, map[string]*bintree{}}, + "istio-service-dashboard.json": &bintree{chartsIstioTelemetryGrafanaDashboardsIstioServiceDashboardJson, map[string]*bintree{}}, + "istio-workload-dashboard.json": &bintree{chartsIstioTelemetryGrafanaDashboardsIstioWorkloadDashboardJson, map[string]*bintree{}}, + "mixer-dashboard.json": &bintree{chartsIstioTelemetryGrafanaDashboardsMixerDashboardJson, map[string]*bintree{}}, + "pilot-dashboard.json": &bintree{chartsIstioTelemetryGrafanaDashboardsPilotDashboardJson, map[string]*bintree{}}, + }}, + "fix_datasources.sh": &bintree{chartsIstioTelemetryGrafanaFix_datasourcesSh, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioTelemetryGrafanaTemplates_affinityTpl, map[string]*bintree{}}, + "configmap-dashboards.yaml": &bintree{chartsIstioTelemetryGrafanaTemplatesConfigmapDashboardsYaml, map[string]*bintree{}}, + "configmap.yaml": &bintree{chartsIstioTelemetryGrafanaTemplatesConfigmapYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstioTelemetryGrafanaTemplatesDeploymentYaml, map[string]*bintree{}}, + "destination-rule.yaml": &bintree{chartsIstioTelemetryGrafanaTemplatesDestinationRuleYaml, map[string]*bintree{}}, + "grafana-policy.yaml": &bintree{chartsIstioTelemetryGrafanaTemplatesGrafanaPolicyYaml, map[string]*bintree{}}, + "pvc.yaml": &bintree{chartsIstioTelemetryGrafanaTemplatesPvcYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioTelemetryGrafanaTemplatesServiceYaml, map[string]*bintree{}}, + "tests": &bintree{nil, map[string]*bintree{ + "test-grafana-connection.yaml": &bintree{chartsIstioTelemetryGrafanaTemplatesTestsTestGrafanaConnectionYaml, map[string]*bintree{}}, + }}, + }}, + "values.yaml": &bintree{chartsIstioTelemetryGrafanaValuesYaml, map[string]*bintree{}}, + }}, + "kiali": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioTelemetryKialiChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioTelemetryKialiTemplates_affinityTpl, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsIstioTelemetryKialiTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsIstioTelemetryKialiTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "configmap.yaml": &bintree{chartsIstioTelemetryKialiTemplatesConfigmapYaml, map[string]*bintree{}}, + "demosecret.yaml": &bintree{chartsIstioTelemetryKialiTemplatesDemosecretYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstioTelemetryKialiTemplatesDeploymentYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioTelemetryKialiTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstioTelemetryKialiTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioTelemetryKialiValuesYaml, map[string]*bintree{}}, + }}, + "mixer-telemetry": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioTelemetryMixerTelemetryChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioTelemetryMixerTelemetryTemplates_affinityTpl, map[string]*bintree{}}, + "autoscale.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesAutoscaleYaml, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "config.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesConfigYaml, map[string]*bintree{}}, + "configmap-envoy.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesConfigmapEnvoyYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesDeploymentYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesServiceaccountYaml, map[string]*bintree{}}, + "stackdriver.yaml": &bintree{chartsIstioTelemetryMixerTelemetryTemplatesStackdriverYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioTelemetryMixerTelemetryValuesYaml, map[string]*bintree{}}, + }}, + "prometheus": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioTelemetryPrometheusChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioTelemetryPrometheusTemplates_affinityTpl, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebindings.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesClusterrolebindingsYaml, map[string]*bintree{}}, + "configmap.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesConfigmapYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesDeploymentYaml, map[string]*bintree{}}, + "destination-rule.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesDestinationRuleYaml, map[string]*bintree{}}, + "inrgess.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesInrgessYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesServiceaccountYaml, map[string]*bintree{}}, + "tests": &bintree{nil, map[string]*bintree{ + "test-prometheus-connection.yaml": &bintree{chartsIstioTelemetryPrometheusTemplatesTestsTestPrometheusConnectionYaml, map[string]*bintree{}}, + }}, + }}, + "values.yaml": &bintree{chartsIstioTelemetryPrometheusValuesYaml, map[string]*bintree{}}, + }}, + "prometheus-operator": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioTelemetryPrometheusOperatorChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioTelemetryPrometheusOperatorTemplates_affinityTpl, map[string]*bintree{}}, + "prometheus.yaml": &bintree{chartsIstioTelemetryPrometheusOperatorTemplatesPrometheusYaml, map[string]*bintree{}}, + "servicemonitors.yaml": &bintree{chartsIstioTelemetryPrometheusOperatorTemplatesServicemonitorsYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioTelemetryPrometheusOperatorValuesYaml, map[string]*bintree{}}, + }}, + "tracing": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstioTelemetryTracingChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstioTelemetryTracingTemplates_affinityTpl, map[string]*bintree{}}, + "deployment-jaeger.yaml": &bintree{chartsIstioTelemetryTracingTemplatesDeploymentJaegerYaml, map[string]*bintree{}}, + "deployment-opencensus.yaml": &bintree{chartsIstioTelemetryTracingTemplatesDeploymentOpencensusYaml, map[string]*bintree{}}, + "deployment-zipkin.yaml": &bintree{chartsIstioTelemetryTracingTemplatesDeploymentZipkinYaml, map[string]*bintree{}}, + "pvc.yaml": &bintree{chartsIstioTelemetryTracingTemplatesPvcYaml, map[string]*bintree{}}, + "service-jaeger.yaml": &bintree{chartsIstioTelemetryTracingTemplatesServiceJaegerYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstioTelemetryTracingTemplatesServiceYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstioTelemetryTracingValuesYaml, map[string]*bintree{}}, + }}, + }}, + "istiocoredns": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsIstiocorednsChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsIstiocorednsTemplates_affinityTpl, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsIstiocorednsTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsIstiocorednsTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "configmap.yaml": &bintree{chartsIstiocorednsTemplatesConfigmapYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsIstiocorednsTemplatesDeploymentYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsIstiocorednsTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsIstiocorednsTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsIstiocorednsValuesYaml, map[string]*bintree{}}, + }}, + "security": &bintree{nil, map[string]*bintree{ + "certmanager": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsSecurityCertmanagerChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "NOTES.txt": &bintree{chartsSecurityCertmanagerTemplatesNotesTxt, map[string]*bintree{}}, + "_affinity.tpl": &bintree{chartsSecurityCertmanagerTemplates_affinityTpl, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsSecurityCertmanagerTemplatesDeploymentYaml, map[string]*bintree{}}, + "issuer.yaml": &bintree{chartsSecurityCertmanagerTemplatesIssuerYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsSecurityCertmanagerTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "rbac.yaml": &bintree{chartsSecurityCertmanagerTemplatesRbacYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsSecurityCertmanagerTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsSecurityCertmanagerValuesYaml, map[string]*bintree{}}, + }}, + "citadel": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsSecurityCitadelChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "NOTES.txt": &bintree{chartsSecurityCitadelTemplatesNotesTxt, map[string]*bintree{}}, + "_affinity.tpl": &bintree{chartsSecurityCitadelTemplates_affinityTpl, map[string]*bintree{}}, + "_helpers.tpl": &bintree{chartsSecurityCitadelTemplates_helpersTpl, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsSecurityCitadelTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsSecurityCitadelTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "deployment.yaml": &bintree{chartsSecurityCitadelTemplatesDeploymentYaml, map[string]*bintree{}}, + "poddisruptionbudget.yaml": &bintree{chartsSecurityCitadelTemplatesPoddisruptionbudgetYaml, map[string]*bintree{}}, + "service.yaml": &bintree{chartsSecurityCitadelTemplatesServiceYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsSecurityCitadelTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsSecurityCitadelValuesYaml, map[string]*bintree{}}, + }}, + "nodeagent": &bintree{nil, map[string]*bintree{ + "Chart.yaml": &bintree{chartsSecurityNodeagentChartYaml, map[string]*bintree{}}, + "templates": &bintree{nil, map[string]*bintree{ + "_affinity.tpl": &bintree{chartsSecurityNodeagentTemplates_affinityTpl, map[string]*bintree{}}, + "clusterrole.yaml": &bintree{chartsSecurityNodeagentTemplatesClusterroleYaml, map[string]*bintree{}}, + "clusterrolebinding.yaml": &bintree{chartsSecurityNodeagentTemplatesClusterrolebindingYaml, map[string]*bintree{}}, + "daemonset.yaml": &bintree{chartsSecurityNodeagentTemplatesDaemonsetYaml, map[string]*bintree{}}, + "serviceaccount.yaml": &bintree{chartsSecurityNodeagentTemplatesServiceaccountYaml, map[string]*bintree{}}, + }}, + "values.yaml": &bintree{chartsSecurityNodeagentValuesYaml, map[string]*bintree{}}, + }}, + }}, + }}, + "profiles": &bintree{nil, map[string]*bintree{ + "default.yaml": &bintree{profilesDefaultYaml, map[string]*bintree{}}, + "demo-auth.yaml": &bintree{profilesDemoAuthYaml, map[string]*bintree{}}, + "demo.yaml": &bintree{profilesDemoYaml, map[string]*bintree{}}, + "minimal.yaml": &bintree{profilesMinimalYaml, map[string]*bintree{}}, + "sds.yaml": &bintree{profilesSdsYaml, map[string]*bintree{}}, + }}, +}} + +// RestoreAsset restores an asset under the given directory +func RestoreAsset(dir, name string) error { + data, err := Asset(name) + if err != nil { + return err + } + info, err := AssetInfo(name) + if err != nil { + return err + } + err = os.MkdirAll(_filePath(dir, filepath.Dir(name)), os.FileMode(0755)) + if err != nil { + return err + } + err = ioutil.WriteFile(_filePath(dir, name), data, info.Mode()) + if err != nil { + return err + } + err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime()) + if err != nil { + return err + } + return nil +} + +// RestoreAssets restores an asset under the given directory recursively +func RestoreAssets(dir, name string) error { + children, err := AssetDir(name) + // File + if err != nil { + return RestoreAsset(dir, name) + } + // Dir + for _, child := range children { + err = RestoreAssets(dir, filepath.Join(name, child)) + if err != nil { + return err + } + } + return nil +} + +func _filePath(dir, name string) string { + cannonicalName := strings.Replace(name, "\\", "/", -1) + return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...) +} + diff --git a/vendor/istio.io/operator/pkg/vfsgen/vfsgen.go b/vendor/istio.io/operator/pkg/vfs/vfs.go similarity index 62% rename from vendor/istio.io/operator/pkg/vfsgen/vfsgen.go rename to vendor/istio.io/operator/pkg/vfs/vfs.go index 51d46b0b268e..8088b2a0512a 100644 --- a/vendor/istio.io/operator/pkg/vfsgen/vfsgen.go +++ b/vendor/istio.io/operator/pkg/vfs/vfs.go @@ -12,38 +12,61 @@ // See the License for the specific language governing permissions and // limitations under the License. -/* -Package vfsgen is a set of file system utilities for compiled in helm charts which are generated using -github.com/shurcooL/vfsgen and included in this package in vfsgen.gen.go. -*/ -package vfsgen +//go:generate go-bindata --nocompress --nometadata --pkg vfs -o assets.gen.go --prefix ../../data ../../data/... + +// Package vfs is a set of file system utilities to access compiled-in helm charts. +package vfs import ( "fmt" - "io/ioutil" "os" "path/filepath" + "time" ) // ReadFile reads the content of compiled in files at path and returns a buffer with the data. func ReadFile(path string) ([]byte, error) { - f, err := Assets.Open(path) - if err != nil { - return nil, err - } - defer f.Close() - - return ioutil.ReadAll(f) + return Asset(path) } // Stat returns a FileInfo object for the given path. func Stat(path string) (os.FileInfo, error) { - f, err := Assets.Open(path) + info, err := AssetInfo(path) if err != nil { - return nil, err + // try it as a directory instead + _, err = AssetDir(path) + if err == nil { + info = &dirInfo{name: filepath.Base(path)} + } + } else { + fi := info.(bindataFileInfo) + fi.name = filepath.Base(fi.name) } - defer f.Close() - return f.Stat() + + return info, err +} + +type dirInfo struct { + name string +} + +func (di dirInfo) Name() string { + return di.name +} +func (di dirInfo) Size() int64 { + return 0 +} +func (di dirInfo) Mode() os.FileMode { + return os.FileMode(0) +} +func (di dirInfo) ModTime() time.Time { + return time.Unix(0, 0) +} +func (di dirInfo) IsDir() bool { + return true +} +func (di dirInfo) Sys() interface{} { + return nil } // Size returns the size of the file at the given path, if it is found. @@ -57,20 +80,7 @@ func Size(path string) (int64, error) { // ReadDir non-recursively reads the directory at path and returns all the files contained in it. func ReadDir(path string) ([]string, error) { - dir, err := Assets.Open(path) - if err != nil { - return nil, err - } - defer dir.Close() - fs, err := dir.Readdir(-1) - if err != nil { - return nil, err - } - var out []string - for _, f := range fs { - out = append(out, f.Name()) - } - return out, nil + return AssetDir(path) } // GetFilesRecursive recursively reads the directory at path and returns all the files contained in it. @@ -87,22 +97,18 @@ func getFilesRecursive(prefix string, root os.FileInfo) ([]string, error) { return nil, fmt.Errorf("not a dir: %s", root.Name()) } prefix = filepath.Join(prefix, root.Name()) - dir, err := Assets.Open(prefix) - if err != nil { - return nil, err - } - defer dir.Close() - fs, err := dir.Readdir(-1) - if err != nil { - return nil, err - } + fs, _ := AssetDir(prefix) var out []string for _, f := range fs { - if !f.IsDir() { - out = append(out, filepath.Join(prefix, f.Name())) + info, err := Stat(filepath.Join(prefix, f)) + if err != nil { + return nil, err + } + if !info.IsDir() { + out = append(out, filepath.Join(prefix, filepath.Base(info.Name()))) continue } - nfs, err := getFilesRecursive(prefix, f) + nfs, err := getFilesRecursive(prefix, info) if err != nil { return nil, err } diff --git a/vendor/istio.io/operator/pkg/vfsgen/vfsgen_data.go b/vendor/istio.io/operator/pkg/vfsgen/vfsgen_data.go deleted file mode 100644 index 5cc97c426f5b..000000000000 --- a/vendor/istio.io/operator/pkg/vfsgen/vfsgen_data.go +++ /dev/null @@ -1,2251 +0,0 @@ -// Code generated by vfsgen; DO NOT EDIT. - -package vfsgen - -import ( - "bytes" - "compress/gzip" - "fmt" - "io" - "io/ioutil" - "net/http" - "os" - pathpkg "path" - "time" -) - -// Assets statically implements the virtual filesystem provided to vfsgen. -var Assets = func() http.FileSystem { - fs := vfsgen۰FS{ - "/": &vfsgen۰DirInfo{ - name: "/", - modTime: time.Date(2019, 7, 3, 23, 31, 21, 60040770, time.UTC), - }, - "/charts": &vfsgen۰DirInfo{ - name: "charts", - modTime: time.Date(2019, 8, 12, 17, 34, 58, 563923005, time.UTC), - }, - "/charts/crds": &vfsgen۰DirInfo{ - name: "crds", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - }, - "/charts/crds/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 250, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\x8d\x31\x4f\x03\x31\x0c\x85\x77\xff\x0a\xab\x7b\x13\x72\x0b\x6a\x24\x58\x60\x80\x95\x81\x3d\x24\x6e\xce\x22\x17\x47\x71\x7a\xd0\x7f\x8f\xae\x07\x2c\x1e\xde\x7b\x9f\xbf\xd0\xf8\x9d\xba\xb2\x54\x8f\xab\x83\x1a\x16\xf2\xc8\x3a\x58\x8e\xb1\x27\x85\xf5\xaf\x74\xc6\x99\x3b\x18\x5c\x0a\xf5\x7f\xe2\xf0\xf8\x30\x99\x7b\x33\x1d\x20\x91\xc6\xce\x6d\xdc\xe2\x17\x2a\x0b\xc6\x39\xf4\x81\x67\xe9\x98\xa8\x15\xb9\x72\xcd\xf8\xba\x3d\xc6\xa7\xb7\x67\x85\x4f\xba\x7e\x49\x4f\xea\x01\xf1\xb8\x1b\x41\xe5\xd2\x23\xfd\x46\xf3\x18\xcd\x5b\x9b\x79\xcc\x97\x0f\x13\x65\xb1\xb7\xd1\x7e\x81\x6a\xe6\x4a\x1e\xb3\x8c\x56\x80\xe3\xa6\xdd\x08\xf5\x76\x5f\x18\x16\x7b\x0e\xeb\xd6\xa8\x0d\x35\x75\xe1\x74\x74\xa7\xe9\xdb\x9d\x26\xd3\x6a\x86\x9f\x00\x00\x00\xff\xff\x17\x75\xb5\xaf\xfa\x00\x00\x00"), - }, - "/charts/crds/files": &vfsgen۰DirInfo{ - name: "files", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - }, - "/charts/crds/files/crd-10.yaml": &vfsgen۰CompressedFileInfo{ - name: "crd-10.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 840009732, time.UTC), - uncompressedSize: 13619, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x9a\x4b\x73\xdb\x36\x10\xc7\xef\xfa\x14\x3b\xd3\x4b\x3a\x13\xd1\xe3\xfa\xd2\xea\xe6\x2a\x4e\xe3\x36\x56\x5c\x59\x4d\x7b\xeb\x40\xe0\x8a\x44\x0d\x02\x28\xb0\x94\xa2\x99\x7e\xf8\x0e\xc0\x87\xf8\x90\xe2\x47\x6c\x8f\x65\xf9\x16\x63\x41\xe0\xbf\xf8\x01\x7f\x2d\x89\x30\x23\x3e\xa3\x75\x42\xab\x11\x30\x23\xf0\x0b\xa1\xf2\x7f\xb9\xe8\xfa\x47\x17\x09\x7d\xb4\x3c\x9e\x23\xb1\xe3\xc1\xb5\x50\xf1\x08\xc6\xb9\x23\x9d\x4d\xd1\xe9\xdc\x72\x7c\x87\x0b\xa1\x04\x09\xad\x06\x19\x12\x8b\x19\xb1\xd1\x00\x40\xb1\x0c\x47\xb0\x14\x96\x72\x26\x1d\xda\xa5\xe0\xe8\x22\x85\xb4\xd2\xf6\x5a\xa8\x24\x12\x8e\x84\x8e\x84\x1e\x00\x48\x36\x47\xe9\xfc\x53\x00\xcc\x98\x11\x84\xd8\xd0\x08\xa9\x29\x34\xf2\x94\x59\x2a\x9b\x43\x43\x8a\x56\x10\x4b\x70\x04\x33\x21\x25\xda\xd0\x68\x51\x22\x73\x58\xf5\x73\x06\xb9\x1f\x33\xb1\x3a\x37\x23\xd8\x3e\xb5\x97\x59\xce\x5c\x24\xf7\xb9\x50\x7c\x55\x28\x0e\x01\x29\x1c\xfd\xb6\x25\xf8\x51\xb8\x42\x9e\x91\xb9\x65\xb2\x97\x6d\x88\x39\xa1\x92\x5c\x32\xdb\x8d\x16\xc1\x54\x5b\x9a\x6c\x24\x0c\x61\x59\x3c\xc5\x19\x61\xa2\xad\xd8\x04\x8a\x25\x29\xd3\x1f\x36\xb2\x19\x36\x22\x8e\x6b\x83\x23\x08\x23\x1a\xc6\x31\x1e\x00\x2c\x0b\xb2\xf5\x40\x25\x98\x63\x26\x4d\xca\x4e\x42\x23\x80\x17\x85\xf1\x08\xc8\xe6\x58\x35\x91\xb6\x61\x85\xcb\x36\x16\xc7\x81\x32\x93\x97\x56\x28\x42\x3b\xd6\x32\xcf\x8a\x71\x87\xf0\xeb\xd5\xa7\xc9\x25\xa3\x74\x04\x91\x5f\xf7\x28\x61\x84\x2b\xb6\x2e\xb2\x89\xd1\x71\x2b\x0c\x85\x0d\x36\x4b\xb1\x58\x75\xd0\x0b\xa8\xba\x01\x53\x31\x38\x11\x23\x67\xd6\x01\xa5\x8c\xfc\xda\xe4\x32\xf6\xfb\x41\xae\x81\x52\x74\x08\x56\xe7\x54\x2e\x6b\x91\xc5\x2f\xcd\x59\x68\xed\x73\x77\x64\x85\x4a\xb6\x6a\x4a\xb5\xa3\x1d\x82\x62\x74\x24\x14\xf3\x0d\x10\xba\x01\x69\x58\xa5\x82\xa7\x40\x96\x2d\x16\x82\x83\x70\x30\x47\xa1\x12\x70\xa8\xa8\xa1\xe1\x43\x3d\xea\xd7\x04\x54\x47\x23\xe2\x16\xc3\x34\x33\x91\xa1\x23\x96\x99\xbe\xa0\xff\x86\x25\x82\x71\xb7\xaf\x17\xc1\x80\xea\x3f\x2d\x1a\x8b\x5e\x8f\xd7\x45\x29\x16\x1c\x6d\xe8\x01\xab\x14\x15\x50\x2a\x1c\xe8\xf9\x3f\xc8\x09\x56\xcc\x41\x98\x1e\xe3\x08\xce\xc9\x0f\xa6\x34\x41\x92\x33\xcb\x14\x21\xc6\x3e\xe9\xb9\x1f\x84\x40\x28\x48\x99\x31\xa8\xdc\x70\x8e\x0b\x6d\x11\xb4\x8d\xd1\x02\xe3\x56\x3b\x07\x0e\x0d\xb3\x8c\x10\xb4\x41\x1b\x34\xba\x08\xc6\x52\xa0\x22\x07\x19\x5b\x87\x81\xfd\x38\x61\xfe\x25\x93\x39\x56\x53\xd6\x9a\x31\xf6\xb3\x4c\xdf\x8f\x4f\x4e\x4e\x7e\x82\x85\xb6\x59\xd8\x05\xc2\xf9\xe6\x3f\x66\xe3\x68\x50\x2e\xc3\xa5\x36\xb9\xf4\xaa\x61\xbe\x2e\xb2\x5c\x3b\xc2\x2c\x82\x29\xb2\x78\xa8\x95\x5c\x47\x30\xc9\xa5\xf4\x63\x84\xc3\xea\x22\xb8\xf0\x92\x85\x5a\xe8\x11\xa4\x44\xc6\x8d\x8e\x8e\x12\x41\x95\x9f\x71\x9d\x65\xb9\x12\xb4\x3e\xe2\x5a\x91\x15\xf3\x9c\xb4\x75\x47\x31\x2e\x51\x1e\x31\x23\x86\x5c\xab\xa5\x5f\x56\x9f\x57\x16\x7f\x57\xd1\x6b\x60\x3f\x4d\xb0\x01\x3d\x66\x84\x83\xe1\x70\x38\x78\x3c\x2b\x6d\x6c\x51\x9b\xcb\xbd\xf0\xd2\x77\x1b\xc9\xd3\x5c\x76\xcd\xb4\x13\xed\xb9\x69\x37\xe1\x8e\x9d\x76\xc2\x3b\xfc\x34\xb6\x2f\xc3\x4f\xbd\x29\xed\xf6\x52\x6f\xa5\x0c\xca\x5f\x16\x58\x58\x9d\xd5\x6e\xe0\x1b\x2c\x26\xc2\x91\x5d\x77\x5c\xeb\xd5\xb4\x5e\x4d\xeb\x91\x4d\xab\xdc\x81\xe8\xf5\xee\x85\x65\x95\xa5\xdd\x99\xaa\x8e\xcb\xc6\xaf\x9a\xa1\x9e\x59\xb5\x13\xed\x58\x55\x23\xb8\xde\xe1\x53\x0e\x5f\x8e\x4f\xed\xa8\xb1\x8a\xba\x8a\x39\xa7\xb9\x08\x07\x63\x25\x28\x0d\x47\xa3\xb7\xe8\x77\xa9\xac\xc2\xb4\x52\xf3\x70\xa0\xfb\x33\xff\x99\x22\xa5\xde\x5d\x1a\x7e\x28\x1c\xf8\x3d\x6e\x15\x93\xde\x3d\x7c\x28\x43\x97\x82\xb6\x60\x98\x25\xef\xa6\x75\xdb\x9b\x8b\xb3\xab\x0f\x7f\x9f\xfd\x35\x3b\x9b\x4e\x4e\x3f\xfa\x2e\xa1\xe1\x7c\x52\x34\x7c\xdf\xd0\xfb\xb1\x29\xe2\x46\xc9\x16\x9d\x96\xf9\x76\xd1\xe5\x82\x40\x2c\x1c\xd7\x4b\xb4\x6b\xc8\x74\x8c\xc1\x2a\xa8\x5e\xc9\x37\x93\x4f\x93\xb3\xb7\x70\x35\x3b\x9d\x9d\x8f\xdf\x7a\x65\xef\x26\x57\x4d\x3d\xd3\xf6\x0c\xaf\x4e\xff\xea\xf4\x8f\xe7\xf4\xd5\x9b\xdc\x1e\x78\x7c\xf9\xd6\xd8\xf2\xef\xd6\xfb\xea\xc6\xb9\x93\x46\xd7\xbe\x69\x27\xab\xe7\x69\xda\x8f\x4b\x1a\xd5\x52\xaf\x17\x42\x12\xda\x7d\xa0\x7d\xe6\xe5\xbe\x0f\x72\x5b\xc4\x9b\x69\x74\xa8\x37\x42\xcf\x17\xf0\x0d\xdc\x6e\xcd\xbf\x0f\x98\xcb\xdc\x11\x5a\x3b\x67\x9c\x6b\xb5\x10\x89\x8b\xfc\xbf\xef\x04\x38\xfc\x3d\x02\xff\xdc\x7d\xf9\x76\xe7\xec\x91\x1d\x17\x3a\xa7\x73\xc6\xc7\x41\x67\x8b\x6f\x3f\x8b\x0e\xe5\x5e\x87\xdb\xb1\xf6\xfd\xb7\x50\x2e\xc5\xdc\x84\xf8\xf8\x79\x20\x36\x5a\x0a\xee\x2b\x72\x96\x53\xea\x7f\x49\x8a\xca\xe5\x16\x88\xb9\x20\x16\xa3\x7c\xb0\x53\xbc\x5b\x40\x8f\xf7\xa5\x17\xdd\xb6\xed\x2a\x8f\x0e\x5a\xb3\xe9\x79\x23\xcf\xb6\x80\x6f\x3a\xbf\xcf\x04\xae\xaf\x5b\xf7\x12\xf0\x05\xba\xb4\x01\x79\xf3\xea\xb5\x09\xf4\x5e\xbc\x9a\xc9\x76\x76\x41\x1d\x7a\xa8\x9d\xb0\x5f\x67\xdc\x17\x96\xcc\x08\x8f\x63\x2e\x54\x2c\x54\xe2\xa2\xc2\xe8\x6e\xb1\x0b\x32\xf1\xa5\xfa\xf1\x7b\x80\x3d\xd0\x9f\xb6\xc7\xfe\xc3\x6c\x76\x79\x7a\x79\x7e\x65\x90\xff\x5c\xa8\x6d\x61\xde\x92\x4c\x87\x76\xbf\xc7\x2d\xa9\x1b\x91\x7d\xd3\xa9\xff\xe1\xd9\xe1\xde\x13\xce\xbb\x00\x7f\x85\xec\x61\x21\xfd\x37\xd7\xc4\xf6\xe4\xfc\xfe\xee\xb5\xee\x3a\xbd\xbd\x44\x3a\x84\xbb\xf1\x03\xc5\xbc\x17\x7c\xb7\x83\xdd\x49\xf4\xb0\x50\x16\x37\x73\xb7\xa0\xb8\xe1\x67\x18\xbf\x0e\xf2\xaa\xee\xd1\x26\x56\xbe\x45\x71\x6d\xf1\x29\x59\xd7\xf7\x69\x15\xe6\x6d\xf7\x6f\x75\xa7\x1b\xe1\x16\x35\xd8\x4b\xc0\xcb\xa8\xf8\x1a\x87\x19\x53\x62\x81\x8e\xf6\x9f\x75\x2f\xa5\x16\xf8\x7e\xc2\x9d\x5d\xb0\xfd\xf1\x03\xda\x12\x77\xfa\x4a\x72\xa7\x9d\x50\x7f\x3b\x79\x88\x9d\x70\xe3\xc7\x94\x1d\x5f\x51\x76\x7f\x3e\x79\xa0\xef\x26\x7b\xf7\x76\x5d\x5e\x22\x59\xed\x9d\x7e\x9f\x89\x97\x97\x4c\x53\xdd\x31\xfb\x66\x82\x1d\xe6\x8d\xd0\xc1\x42\xaf\x6b\xf1\x17\xc2\x7e\x5b\xbd\xbe\x25\xdd\xdd\x3b\xe1\x4e\x35\xfb\xd3\x6d\x88\xbb\xde\x5c\xfb\x54\xa6\xb8\x88\xfc\x6c\x61\xc0\x9d\xff\xd3\xa6\x71\x65\xed\x17\xb0\xba\xbf\x2c\xfe\x77\xa0\xc5\x05\x5a\x54\x45\x26\x9b\x9b\xd8\xb2\x31\xb4\xbd\x5e\xc4\xbe\x5e\xc4\x3e\x62\x8d\x1a\x33\x13\xae\xe6\xee\x57\x99\x96\x8f\x37\xad\x29\xf4\x1a\x36\x03\x4f\x55\x9b\x36\xa6\xac\x2b\xd2\x32\xbd\x6e\x1d\xda\x54\x77\x38\xd5\xa7\x50\x8e\x98\xe2\xf7\x7f\xe7\x2c\x9f\xef\xe3\x6e\x45\x9e\x88\x77\x6b\xce\x0a\x78\x9d\x62\x87\x78\x5b\xe0\xe1\x20\x27\xcc\x8c\x77\xb9\xfb\x22\xaf\x9e\xef\x23\x6f\x45\x9e\x08\x79\x6b\xce\x0a\x79\x9d\x62\x07\x79\x5b\xe0\xe1\x20\x4f\x99\x8a\xe5\xfd\x2d\xbd\x7c\xbc\x0f\xbc\x19\x78\x22\xde\xcd\x29\xeb\x4f\xff\x65\x7a\x1d\xda\x2d\x75\xcf\x0d\xf6\xff\x01\x00\x00\xff\xff\x74\x06\x25\x32\x33\x35\x00\x00"), - }, - "/charts/crds/files/crd-11.yaml": &vfsgen۰CompressedFileInfo{ - name: "crd-11.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 465, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x91\xb1\x52\xc3\x30\x0c\x86\xf7\x3c\x85\x5e\xc0\xe1\x7a\x2c\x9c\x57\x98\x19\x80\x63\x57\x93\x9f\x54\x57\xd7\xf6\x49\x4a\xe0\xf1\xb9\x38\x69\xe9\xc0\xe8\x4f\x3a\xfd\x9f\x64\xae\xf2\x09\x35\x29\x39\x12\x57\xc1\x8f\x23\xaf\x2f\xeb\xcf\x4f\xd6\x4b\x79\x58\x0e\x47\x38\x1f\xba\xb3\xe4\x31\xd2\xf3\x6c\x5e\x2e\x6f\xb0\x32\xeb\x80\x17\x7c\x49\x16\x97\x92\xbb\x0b\x9c\x47\x76\x8e\x1d\x51\xe6\x0b\x22\x99\x8c\x18\x58\xad\xcf\xf0\xef\xa2\x67\xc9\x53\x2f\xe6\x52\x7a\x29\x1d\x51\xe2\x23\x92\xad\xed\x44\x5c\x6b\xa4\x56\x0b\x55\x52\xf1\x06\x87\x13\xab\xef\xb8\x81\x13\x54\x9c\x27\x44\xfa\x90\x94\xa0\x0d\x2a\x12\xd8\x70\xed\xb3\x8a\x61\x9d\x39\x69\x99\x6b\xa4\xff\xa3\x57\xbf\x3d\x79\xdb\xea\x7d\x53\x6d\xa4\xa6\x59\x39\xfd\xe9\x37\x68\x92\xa7\x39\xb1\xde\xf0\x66\xc8\x8e\xa9\xa8\x5c\x87\x85\x7d\x87\xdd\x37\xdc\xc5\x87\xbb\x8a\x0d\xa5\x22\xd2\xeb\x6a\x51\x79\xc0\xd8\x11\x2d\xdb\x1f\xdc\x06\x6d\x27\x5c\x0e\x9c\xea\x89\x1f\x1b\x24\x32\xe8\x82\x31\x92\xeb\x8c\x2b\xf2\xa2\xed\x24\x8d\x85\x10\xba\xdf\x00\x00\x00\xff\xff\xc3\xac\x34\xe5\xd1\x01\x00\x00"), - }, - "/charts/crds/files/crd-12.yaml": &vfsgen۰CompressedFileInfo{ - name: "crd-12.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 840009732, time.UTC), - uncompressedSize: 500, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\x91\x31\x4e\x34\x31\x0c\x85\xfb\x9c\xc2\x17\xc8\xfc\x9a\xee\x57\x3a\x04\x35\x42\x08\xd1\x7b\x33\x66\xd6\xda\x6c\x1c\x39\xce\x08\x38\x3d\x4a\x66\x56\xda\x02\x4a\xbf\xf8\x3d\x7f\x76\x2e\x9c\x97\x00\x8f\xad\x9a\x5c\x5f\xa9\x4a\xd3\x48\x4f\xf4\xc1\x99\x8d\x25\x3b\x2c\xfc\x4e\x5a\x59\x72\x00\x2c\x4c\x9f\x46\xb9\x57\x75\xba\xfc\xaf\x13\xcb\xbf\x6d\x3e\x91\xe1\xec\xae\x64\xb8\xa0\x61\x70\x00\x19\xaf\x14\x00\x9b\x9d\x45\xf9\x1b\x7b\x50\x91\xc4\x91\xa9\x4e\x7a\xc2\x38\x71\x35\x96\x89\xc5\x01\x24\x3c\x51\xaa\xdd\x05\x80\xa5\x04\x18\x6f\xbe\x70\x12\x1b\xe2\xa8\x03\x74\xdf\xa8\xcf\xa4\x6c\xb8\x52\x80\x37\x4e\x89\x74\x88\x4a\x89\xb0\xd2\xe1\x76\xb5\x50\xec\x91\xab\x4a\x2b\xbb\xf7\x7e\x66\xe7\x3b\x46\xee\xeb\x3f\xdc\xa3\xbe\x74\xd4\xaf\xf1\x5a\x52\x53\x4c\x7f\xac\x32\x3a\x2a\xe7\xb5\x25\xd4\xdf\x7a\xf6\x8c\x88\x46\xab\x28\xdf\x26\x02\xf8\x63\xc7\xc1\xb2\x0b\x9d\xd0\xdf\xa9\x35\x4a\xa1\x00\xcf\x1d\xb4\x60\xa4\xc5\x01\x6c\xfb\x3f\x1c\x31\xfe\xb8\xf2\x36\x63\x2a\x67\x9c\x8f\xa8\x4a\xba\xd1\x12\xc0\xb4\xd1\x4d\x32\xd1\x71\xaf\xa1\x79\xef\xdd\x4f\x00\x00\x00\xff\xff\x2f\x55\x06\xef\xf4\x01\x00\x00"), - }, - "/charts/crds/files/crd-certmanager-10.yaml": &vfsgen۰CompressedFileInfo{ - name: "crd-certmanager-10.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 840009732, time.UTC), - uncompressedSize: 2158, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x55\xc1\x8e\x23\x45\x0c\xbd\xf7\x57\x58\xcb\x05\x0e\xe9\x28\x9a\x0b\xb4\xb4\x02\x14\x84\xb4\x48\x0c\xa3\xd9\x81\x0b\xe2\xe0\x54\x39\x69\xb3\xd5\x55\x25\xdb\x9d\xa5\x25\x3e\x1e\x55\x75\x27\x33\x99\xc9\x01\x90\x06\x0e\x7b\xac\xd7\xf6\xf3\xb3\x9f\xab\x1a\x33\xff\x42\xa2\x9c\x62\x07\x98\x99\xfe\x30\x8a\xe5\xa4\xed\x87\x2f\xb5\xe5\xb4\x3e\x6e\x76\x64\xb8\x69\x3e\x70\xf4\x1d\x6c\x47\xb5\x34\xdc\x93\xa6\x51\x1c\x7d\x47\x7b\x8e\x6c\x9c\x62\x33\x90\xa1\x47\xc3\xae\x01\x88\x38\x50\x07\x2e\x8c\x6a\x24\xac\x3a\x92\x68\xeb\x48\x6c\xc0\x88\x07\x92\x85\xba\x01\x08\xb8\xa3\xa0\x25\x07\x00\x73\xee\xe0\x49\x54\x05\x5d\x8f\x62\x2f\xe1\x9e\x84\x0d\x0f\xd4\xc1\x03\x87\xb0\x80\x42\x81\x50\xa9\x03\x56\xe3\xd4\x68\x26\x57\x98\x0f\x92\xc6\x4b\xe6\xc7\xfa\xc7\xb9\xf5\x45\xc1\x6a\x51\x7e\xdc\x60\xc8\x3d\x6e\x2a\x08\xa0\x24\x47\xf2\x1d\x98\x8c\x74\x82\x2c\x49\x2d\xbf\x60\x25\x6f\x21\x59\xe6\x34\x37\xff\xae\x36\x5f\xf1\x1c\x46\xc1\xf0\x7c\x2c\x0d\x80\xba\x94\xe9\x9c\xd1\xac\x56\xab\xe6\xf5\x4c\xf9\x34\xdd\xb8\x62\xc3\x8b\xf9\xdf\x96\xa4\x8c\x8e\xfc\x2b\x5b\x50\x5a\xe7\x3d\x3b\x34\xfa\x1f\x7d\x40\xef\xab\x40\x0c\x77\xc2\xd1\x48\xb6\x29\x8c\xc3\xe3\xec\x7f\x78\xff\xd3\xed\x1d\x5a\xdf\x41\xab\x86\x36\x6a\xeb\x52\x9c\x53\xf4\xd7\xaf\x3f\xff\xa6\xb5\x29\xd3\xdb\xb7\x6f\xee\x09\xfd\xf4\xe6\x8b\xdf\x96\xa8\xc5\x91\xb9\xd3\xfa\x6d\x41\x4a\x78\x07\x6a\xc2\xf1\x70\xa5\x44\x26\xd7\x2a\x39\x21\x2b\x3e\x5c\xb0\xbc\xaf\xf0\xdf\xa7\x99\x9d\xbd\xa7\x7d\x1b\x9f\x53\x3d\xd9\x83\x2b\x54\x00\x59\x38\x09\xdb\xd4\xc1\xe6\xdf\x8e\x61\x20\x55\x3c\x3c\xeb\xe0\xe9\x68\xfe\x69\xd9\xd3\x02\xb5\x4e\x08\x4b\xdd\x07\x1e\x48\x0d\x87\xbc\x64\x7b\x52\x27\x9c\xad\xae\xea\x9f\xab\x05\x05\xd8\x3e\x8f\x07\x56\x40\xb0\xf3\x51\x28\x0b\x29\x45\xe3\x78\x00\xeb\x69\xbe\x5a\x52\x23\xe0\x63\x4f\x11\xac\x67\x85\xb4\xfb\x9d\x9c\xc1\x47\x54\xa8\x12\xc8\xb7\xf0\xce\x0a\x59\x4c\x06\x87\x11\x05\xa3\x11\x79\xb0\x04\xbb\x42\x62\xc0\x11\x7a\xcc\x99\xa2\xae\x76\xb4\x4f\x42\x90\xc4\x93\x00\x3a\x49\xaa\xa0\x94\x51\xd0\x08\x52\x26\xa9\x1a\xb5\x85\x6d\x60\x8a\xa6\x30\xe0\x54\x89\x0b\x4f\xad\x7f\xc4\x30\xd2\xa9\xe4\x59\x33\xf9\x52\xe5\xfe\xfb\xed\xcd\xcd\xcd\x57\xb0\x4f\x32\x00\x46\x5f\x42\x38\xc2\xcf\x0f\xdb\xb6\x39\x0f\xe2\x2e\xe5\x31\x14\xdd\xb0\x9b\xe6\x3e\x27\x35\x1a\xda\xba\x9f\xab\x14\xc3\xd4\xc2\xed\x18\x42\x61\x81\xc0\x6a\xda\xc2\x8f\x45\x34\xc7\x7d\xea\xa0\x37\xcb\xda\xad\xd7\x07\xb6\xd3\xdd\x77\x69\x18\xc6\xc8\x36\xad\x5d\x8a\x26\xbc\x1b\x2d\x89\xae\x3d\x1d\x29\xac\x31\xf3\xca\xa5\x78\x2c\x83\x2d\x9d\x0d\xfe\xb3\x93\x87\x17\x5b\xf1\xed\x79\x4b\xe6\x95\xf0\x68\xf4\x1f\x3d\x90\x2f\x9f\xbc\x6b\xbf\xb0\xc7\x77\xea\xf2\x07\xf6\xe4\xfd\xaa\x1f\xb4\x4f\x52\xaf\xed\x92\x5e\x94\x95\xa0\x8b\x83\xd6\x57\xf5\xaf\x00\x00\x00\xff\xff\x32\x72\x8d\x1a\x6e\x08\x00\x00"), - }, - "/charts/crds/files/crd-certmanager-11.yaml": &vfsgen۰CompressedFileInfo{ - name: "crd-certmanager-11.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 840009732, time.UTC), - uncompressedSize: 2309, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x94\x41\x6f\xdb\x3a\x0c\xc7\xef\xfe\x14\x04\xde\xd9\x0e\x82\x5e\xde\xf3\xed\x21\xc5\x80\x0e\x58\x5a\xa4\xdd\xee\x8c\xc5\xd8\x5c\x65\x49\x20\xe9\x74\x01\xf6\xe1\x07\x39\x76\xda\x74\xcb\x61\xc0\xb6\xcb\x7a\x32\x44\x93\x3f\x52\x22\xf9\xc7\xc4\x9f\x48\x94\x63\xa8\x01\x13\xd3\x17\xa3\x90\x4f\x5a\x3d\xfe\xab\x15\xc7\xc5\x7e\xb9\x25\xc3\x65\xf1\xc8\xc1\xd5\xb0\x1a\xd4\x62\xbf\x21\x8d\x83\x34\x74\x4d\x3b\x0e\x6c\x1c\x43\xd1\x93\xa1\x43\xc3\xba\x00\x08\xd8\x53\x0d\x51\x1c\x89\x56\x0d\x89\xf5\x18\xb0\x25\x99\x90\x05\x80\xc7\x2d\x79\xcd\xbe\x00\x98\x52\x0d\x2f\xbc\x46\x63\xd3\xa1\xd8\xf7\xe6\x8e\x84\x0d\x5b\xaa\xe1\x81\xbd\x9f\x8c\x42\x9e\x50\xa9\x06\x56\xe3\x58\x68\xa2\x26\x93\xd1\xb9\xb1\x34\xf4\x77\xc2\xc1\x48\x56\xd1\x0f\x7d\x98\xb2\x96\xf0\xfe\xfe\x76\x7d\x87\xd6\xd5\x50\xa9\xa1\x0d\x3a\x7e\x68\xfc\x3b\xdf\xe1\xfe\x85\xc5\x0e\x89\x6a\x50\x13\x0e\xed\x0f\x10\x89\x9a\x8a\x55\x07\x92\x0d\xed\xaa\x1c\x7e\x46\xba\x19\x7f\x5d\x42\x01\x24\xe1\x28\x6c\x87\x1a\x96\x17\xeb\x13\x42\x8d\xe1\x0c\xbb\x79\x69\xfa\x59\xec\xdc\xb3\xaa\x11\xc2\xfc\x54\x0f\xdc\x93\x1a\xf6\x69\x8a\x76\xa4\x8d\x70\xb2\x71\x3a\xbe\x96\x93\x15\x60\xf5\xda\x1f\x58\x01\xc1\x4e\x47\xa1\x24\xa4\x14\x8c\x43\x0b\xd6\x11\x28\xc9\x9e\x64\xf4\x80\xa7\x8e\x02\x58\xc7\x0a\x71\xfb\x99\x1a\x83\x27\x54\x18\x4b\x20\x57\xc1\x8d\x65\x58\x88\x06\xed\x80\x82\xc1\x88\x1c\x58\x84\x6d\x86\x18\x70\x80\x0e\x53\xa2\xa0\xe5\x96\x76\x51\xe8\x38\x67\x80\x8d\x44\x55\x50\x4a\x28\x68\x04\x31\x91\x8c\x35\x6a\x05\x2b\xcf\x14\x4c\xa1\xc7\xc3\x08\xce\x9c\x31\xff\x1e\xfd\x40\x73\xca\x53\xcd\xe4\x72\x96\xcd\xbb\xd5\xd5\xd5\xd5\x7f\xb0\x8b\xd2\x03\x06\x97\x5d\x38\xc0\xc7\x87\x55\x55\x9c\x1e\xe2\x2e\xa6\xc1\xe7\xba\x61\x7b\x38\xde\xf3\xa0\x46\x7d\x95\xfb\xe2\xca\x18\xfc\xa1\x82\xf5\xe0\x7d\xa6\x80\x67\x35\xad\xe0\x43\x2e\x9a\xc3\x2e\xd6\xd0\x99\x25\xad\x17\x8b\x96\x6d\x5e\xb7\x26\xf6\xfd\x10\xd8\x0e\x8b\x26\x06\x13\xde\x0e\x16\x45\x17\x8e\xf6\xe4\x17\x98\xb8\x6c\x62\xd8\xe7\x87\xcd\x37\xeb\xdd\x3f\x73\x0f\xcf\xa6\xe2\xff\xf6\x7c\x68\xdd\x71\x8a\x5b\x89\xc3\xf9\xae\x3d\x6f\xe4\xfe\x28\x02\xa7\xed\x38\x82\xf6\x4b\xf4\xa9\xc3\xe5\x44\x1b\xbb\xe8\x6a\x30\x19\xe6\x04\x6a\x51\xc6\x85\x9c\x6c\x39\x6e\x82\x1c\x15\xe3\x36\xb7\x67\x3c\x27\x3f\x08\xfa\x59\x18\x0a\x00\x6d\x62\xae\x6e\x9d\x43\x12\x36\xe4\x8a\xb2\x2c\x8b\xdf\xa7\x48\x4d\x87\xde\x53\x68\xe9\xef\x52\x25\x17\x74\xfd\x5a\x8e\xae\x63\x8f\x7c\x51\x37\x7e\x89\xf8\xbc\x49\xcd\x9b\xd4\xfc\x59\xa9\x59\xcd\xfb\x7d\x26\x37\xcf\x5b\x7f\x51\x72\xbe\x05\x00\x00\xff\xff\xc9\xc7\xd5\x96\x05\x09\x00\x00"), - }, - "/charts/crds/kustomization.yaml": &vfsgen۰CompressedFileInfo{ - name: "kustomization.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 210, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\xcc\x31\x0e\xc2\x30\x0c\x40\xd1\x3d\xa7\xf0\x05\x9a\x12\x26\x94\x2b\xb0\xb3\x9b\xd4\xad\xac\x34\x36\xb2\x53\x24\x38\x3d\x4b\x17\x50\x59\x9f\xbe\x3e\x3e\xf8\x46\xe6\xac\x92\xa1\x6e\xde\xb5\xf1\x9b\x62\x51\x99\x79\x89\xf5\xe2\x91\x75\x7c\xa6\x3b\x75\x4c\xa1\xb2\x4c\x19\xae\x7b\x85\x9d\x55\x42\x30\x72\xdd\xac\x90\xe7\x00\x30\xc0\xcc\x2b\xf9\x58\x6c\x1a\xd2\x29\xbe\xb0\xad\xbf\x9a\x0e\xf5\x7c\xa4\x85\xac\x37\x14\x5c\xc8\xfe\xdc\xbe\x8a\xfd\xfc\x09\x00\x00\xff\xff\x55\x39\x1a\xf5\xd2\x00\x00\x00"), - }, - "/charts/crds/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - }, - "/charts/crds/templates/crds.yaml": &vfsgen۰CompressedFileInfo{ - name: "crds.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 299, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xaa\xae\x56\xd0\x73\xcb\xcc\x49\x2d\xd6\x73\x4f\x2d\x51\x50\x4a\x03\x31\xf5\x93\x8b\x52\x74\x0d\x0d\xf4\x2a\x13\x73\x73\x94\x14\x6a\x6b\xb9\x70\x2b\x32\x24\x46\x91\x11\xb2\x22\x5d\x85\xcc\x34\x05\xbd\xb0\xc4\x9c\xd2\xd4\x62\xbd\xe4\xd4\xa2\x92\xdc\xc4\xbc\xc4\xf4\xd4\x22\xfc\xb2\x7a\xa9\x79\x89\x49\x39\xa9\x29\x78\x2d\x42\x52\x4f\x9c\xf3\x51\x34\x18\xa2\xba\x32\x35\x2f\x05\x8d\x09\x08\x00\x00\xff\xff\x8c\xf9\x8e\xbd\x2b\x01\x00\x00"), - }, - "/charts/crds/templates/namespaces.yaml": &vfsgen۰CompressedFileInfo{ - name: "namespaces.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 1831, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xc4\x92\xcd\x6a\x02\x41\x10\x84\xef\xf3\x14\x0d\xb9\xc4\xc3\x2e\xe4\xba\x0f\x91\x83\x04\xef\xed\x4c\x69\x3a\x99\xed\x5e\x66\x46\x41\x16\xdf\x3d\x68\xd0\x04\x5d\xcc\x0f\xba\xde\xab\xe6\xeb\x6f\xa8\x07\x7a\x31\xea\x12\xd6\xd0\x42\xec\xbd\x04\x68\xe1\x48\xa2\x6f\xf0\x45\x4c\x49\xb4\x18\x49\x2e\x62\xe4\x4d\x4b\xb2\x48\x5d\x64\x05\x29\xb7\xc8\x1d\x7b\xe4\xda\x71\x27\x33\xa4\x2c\xa6\x0d\xad\x9f\xdc\xbb\x68\x68\xe8\xf9\x10\x70\x2d\x0a\x07\x2e\xdc\x38\xda\xd7\x1a\xea\x7b\xaa\xa7\x88\xe0\x8c\xfa\x98\xa3\xed\xd6\x11\x45\x9e\x23\xe6\x5d\x94\x3e\xb9\x95\x75\x48\x5c\x2c\x55\x2d\x2b\x2f\x11\x1a\x9a\xc2\x9b\x7a\x89\xf8\x96\x3a\x9e\xdc\x50\x90\xcc\xf3\x88\xe0\xaa\xaa\x72\xae\xef\x2b\x92\x05\x29\xa8\x9e\x71\x5c\x21\xd7\xcb\x68\x73\x8e\xf5\xbe\xf7\x45\x1f\x3e\xe8\x5f\x6a\x17\x39\x37\xb1\xdc\x49\x42\xc3\xee\xf1\x83\x30\x6b\xa0\xc7\x73\x6b\x6f\xba\x90\xe5\x25\xed\xc9\xaf\x6a\x97\x1c\x27\x57\xfa\xb9\x53\xe8\x58\x5f\x77\xae\x5f\x10\xd1\xa2\xa4\xcd\x08\x7b\x19\x60\xdd\x79\x33\x5d\xb2\x16\xe5\x15\xab\xfc\xe7\xdd\x0c\x56\x7f\xf2\xbd\xd6\x7e\x86\xe0\xf7\xdb\x50\x67\x51\xfc\x18\x03\x3a\x05\x8d\xa5\x7c\x72\x46\x86\x5f\x25\x29\x9b\x6b\xeb\x0d\xbe\x7b\x53\xc1\x8f\x00\x00\x00\xff\xff\xf5\x34\x9f\xe3\x27\x07\x00\x00"), - }, - "/charts/gateways": &vfsgen۰DirInfo{ - name: "gateways", - modTime: time.Date(2019, 7, 3, 23, 31, 21, 52040782, time.UTC), - }, - "/charts/gateways/istio-egress": &vfsgen۰DirInfo{ - name: "istio-egress", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - }, - "/charts/gateways/istio-egress/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 287, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\x8e\xb1\x6e\xc4\x20\x10\x44\x7b\xbe\x62\x75\xbd\x21\xb8\x89\x0e\x29\xa9\x93\x1f\x48\x4f\x60\x0f\xaf\x82\x59\xc4\x72\xbe\xf8\xef\x23\xdb\x17\x37\x08\xcd\xcc\x9b\x59\x5f\xe9\x0b\x9b\x10\x17\x07\x8b\x55\xc5\xcf\xe8\x80\xa4\x13\x0f\x98\x1a\x8a\xa8\xe5\xdf\xb6\xda\xea\x17\xd5\x29\x67\x6c\x27\x73\x79\x7f\x1b\xf5\xab\x1e\x2f\x2a\xa2\x84\x46\xb5\xef\xf2\x07\xe6\x19\xc2\xe4\x5b\x87\x1b\x37\x88\x58\x33\xaf\x54\x12\x7c\x6e\xd5\x90\x7c\xc7\x87\x5f\x45\xfd\xe0\xfa\xe0\x16\xc5\x29\x80\xe1\xd8\xdd\x7f\xc7\xf6\x33\xb6\x2b\x27\x22\x7c\x6f\x01\x9f\xc4\xd4\x7b\x75\xc6\x24\xea\xd3\xfd\x5b\x07\x9e\xcd\xde\x71\xbc\x0a\x4b\xa2\x82\x0e\x12\xf7\x9a\x15\x85\xed\xb2\x8d\x10\x67\x8e\x84\x26\x36\x37\xbf\x6c\x8e\x18\x5f\x62\x63\x8a\x83\xbd\x8e\xbf\xf6\x3a\xea\x5a\x92\xfa\x0b\x00\x00\xff\xff\xb2\xa1\x31\xac\x1f\x01\x00\x00"), - }, - "/charts/gateways/istio-egress/NOTES.txt": &vfsgen۰CompressedFileInfo{ - name: "NOTES.txt", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 1549, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x54\x4d\x6f\xe3\x36\x10\xbd\xf3\x57\x3c\xa4\x05\x72\x71\xb4\xdd\x7e\x23\xb7\xd4\x8b\x2d\x0c\x6c\x8a\xa2\xde\x00\xbd\x8e\xc9\x91\x34\x0d\x45\xaa\x1c\xca\x5e\xf7\xd7\x17\xa4\xa4\xc4\x4e\x0f\x3d\x92\xf3\xfd\xde\x9b\x31\xdb\x9e\x42\xc7\x7a\x6f\xee\xa0\x3c\x52\xa2\xcc\x08\x34\xb0\x8e\x64\x19\xe4\x7d\x3c\x15\xe3\x1d\x98\x54\x38\x21\xb1\x8d\xa1\x95\x0e\xb1\xc5\x5f\x93\x66\xe4\x9e\xd1\x51\xe6\x13\x9d\x8b\xdb\xe7\x4f\x7b\x28\xdb\xc4\x59\x41\xc1\xc1\xc5\x81\x24\xd4\x94\x18\x28\x50\xc7\x03\x87\x0c\x51\x88\x46\x4f\x99\xdd\x06\x6d\x4c\x38\x70\xce\x9c\x4a\xe8\x94\x24\xd7\x54\x2a\xc3\xe8\xa5\x15\x76\x98\x6b\x4e\x89\xb2\xc4\x50\x6c\xc3\xe4\xb3\x8c\x9e\x71\xe4\xa4\x12\x83\x96\x7e\x4a\x2b\x12\xba\xc4\xaa\xb0\x14\x70\x60\x4c\x5a\x0a\xe4\x88\x41\x82\xfc\xc3\x98\xc6\x2e\x91\x63\x24\xd1\x67\x35\xe6\xae\xc6\x04\x3e\xc1\xf6\x94\x72\x71\xd7\xfa\xe5\xb8\xa5\xc9\xe7\x0b\x28\x94\xd3\x51\x0a\x24\xd6\xc6\x29\xe4\xcd\x32\x1d\x6b\xb8\xcd\x48\xfc\xf7\x24\x89\x0d\x39\x27\xa5\x45\xf2\xf8\xe3\x97\x87\x2d\x46\x4e\x83\x68\x6d\xb0\x29\xd5\x2e\x46\xf2\x74\x60\x0f\xcd\x69\xb2\x79\x4a\xdc\xe0\x53\xfd\xb0\x95\x8f\x82\x4f\x88\x19\x3a\x8d\x63\x4c\x99\x1d\x62\x58\x7b\xaf\x89\x0a\x64\xb7\x12\x32\xa7\x52\xcb\x47\x72\x38\x90\xa7\x60\x39\xdd\xe2\x1c\x27\x68\x1f\x27\xef\xe0\x78\xf4\xf1\x0c\x7a\x25\x77\xe1\x6a\x03\x09\x20\x38\x69\x5b\x4e\x1c\xb2\x79\x99\xb4\x31\xe6\xc1\xfb\x17\x20\x17\x7f\xf4\x74\x64\x10\x6e\x68\x1c\xef\x17\xdb\x62\xba\x99\x67\xd9\x54\xb0\x0b\xd6\xe2\x38\x64\x69\xcf\x90\x0c\x2a\x32\x30\x4b\xc0\x0c\x1a\x05\xdc\x88\x66\x89\xf7\xb8\x4e\xf4\xf5\xfe\xe9\xe3\xc7\xdd\x9f\x4b\xbe\xc2\xe8\xaf\x4b\x71\x65\xcf\xb6\x00\xdb\x18\xf3\xb9\xe7\xf5\x5f\x4b\xc9\xff\x4b\x36\xc7\xc6\x54\x18\x30\x5f\xe1\x71\x55\xce\x3a\xd8\xaa\x20\x53\xcd\x4f\x2a\xa1\x7b\x85\x05\xa3\xf8\x98\xdf\xf8\x3c\x4a\x37\x2b\x11\x6d\x8a\x03\x6a\xf9\x3b\x3d\x6b\xe6\xc1\x98\x5d\x79\xe1\x7d\xf3\x0d\x24\x58\x3f\xb9\x45\x50\xdd\xda\xb1\x84\xab\x80\x06\x7b\x09\x96\xab\x0f\x7f\x59\xf8\xdc\xfd\x5e\x04\x40\xaa\xd1\x4a\x59\x11\x73\x92\xdc\x57\x97\xfd\xaa\xc2\xe0\x70\x88\x53\xa8\x78\x57\x0d\xaf\xf4\x6d\x0a\xea\xa2\x75\x51\x87\x81\x83\xab\x9c\xdc\x1b\xf3\xbe\xc1\x2e\x68\x26\xef\x5f\x44\xbf\x42\x50\xa5\x50\x3e\x2e\x44\xf0\x6d\x83\x6d\x1c\xcf\xa0\x70\xae\x4b\x6d\x39\x65\x69\xc5\x16\x0d\xad\x35\x2f\x23\x66\x6e\xd7\x45\x9d\x07\x9a\x97\x5f\x1b\xf3\x5d\x83\x6d\xcf\xf6\xb9\x60\xfb\xb6\xf8\x29\xa6\x67\xcc\x8a\xe6\x2f\x34\x14\x6a\x0e\x67\xc4\x23\xa7\x24\x6e\x0d\x28\x88\x04\xbc\xe3\x6c\xdf\xf5\x51\xb3\x9a\xef\x1b\x3c\x46\x57\x44\x56\xcc\x1f\x7e\xdb\xd7\x05\xe5\x54\x7a\x23\xe7\xea\xef\x43\x05\x21\xb9\xf5\x36\x5c\xf5\x6b\x7e\x58\x7a\x42\x4e\xd4\xb6\x62\xcd\x8f\x0d\x3e\xb0\xe7\xcc\xd7\xc1\x36\xa6\xc4\x3a\xc6\x30\x37\x13\x2f\xe9\x7c\xcb\xa6\xf9\xa9\xc1\xd3\x72\x62\x2e\xff\x37\x70\xa2\x74\xf0\xeb\x38\xd7\x52\x35\x3f\x5f\x55\x5e\x4e\xe6\x0a\xba\xfe\x57\x65\x8d\x31\xbb\x16\x53\x95\x6a\x71\x99\x0f\x6b\xda\x94\x7b\x8d\xed\x05\x51\x75\xdd\x5e\x64\xb4\xb0\xa3\x18\xca\xe1\x3e\x30\x86\x78\xe4\xe2\x80\x13\x7b\xdf\x98\x7f\x03\x00\x00\xff\xff\x06\x0b\x35\x8c\x0d\x06\x00\x00"), - }, - "/charts/gateways/istio-egress/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - }, - "/charts/gateways/istio-egress/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 2899, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\xda\x30\x10\xbd\xf3\x2b\x46\x88\x43\xbb\x22\x09\xbd\x46\xea\x01\xa9\x7b\x58\xb5\xaa\xaa\x6e\xff\x80\x89\x27\xc1\xc2\xd8\xa9\xe3\x50\x50\xca\x7f\xaf\xec\x84\xc4\x09\xf9\xa2\x5d\xf5\x06\xe3\xf1\xbc\xf1\x9b\x37\x2f\x45\x11\x3c\x01\x89\x63\x26\x98\xbe\x80\x07\x7b\xad\xd3\x2c\x0c\x82\x43\xbe\x43\x25\x50\x63\xe6\x33\x19\x50\x19\x65\x41\x24\x45\x84\xa9\xb6\x3f\x62\x96\xe4\x8a\x68\x26\x45\x40\xb2\x8c\x25\xc2\x4b\x25\xf5\x84\xa4\x18\xc0\x53\x70\xbd\x2e\x16\x45\xe1\x01\xc5\x98\x09\x84\xa5\x89\xdf\x30\x96\x70\xbd\x2e\x00\x4c\x68\x5b\x85\xc2\x05\x00\x80\xc2\x9f\x39\x53\x48\x3f\xe5\x8a\x89\xe4\x35\xda\x23\xcd\x39\x13\xc9\x4b\x22\x64\x1d\x7e\x3e\x63\x94\x1b\xd8\xf2\x8e\x01\x61\x22\xe2\x39\xad\x50\x6e\x25\xbf\x0f\x14\x5b\x82\x5f\xe2\x03\xa4\x0a\x63\x54\x6f\x05\xf8\x6d\xa8\x5a\x85\x68\x2e\xa2\xa0\xd0\x47\xcd\x74\xd3\x55\xcb\x25\x6d\xaf\xc8\x31\xd2\x52\xfd\x40\x75\xcc\xc2\xea\xc0\x83\x23\xd1\xd1\xfe\xf9\x9c\x2a\xcc\x32\x26\x45\x7d\x62\xce\x0e\x78\x09\x61\x87\x9a\xf8\xed\xb9\x12\x15\xed\xeb\x34\x00\x99\xa2\x22\x5a\xaa\x10\x5e\x84\x13\x3e\x11\x9e\xa3\x53\xcf\xf4\xaf\x88\x48\x10\x56\x07\xbc\xac\x61\x75\x22\x1c\xc2\x8f\xe0\x27\x5c\xee\x08\xf7\x4d\xd5\xa6\xe5\x9a\xb6\x18\x12\x0d\xef\x6c\xf2\x6f\x60\x42\xbf\x87\x4d\x3b\xcb\x83\xa2\xb0\x25\xef\x2f\x57\xd4\x4d\x84\x56\x2e\x3d\xa6\x23\x8a\x31\xc9\xb9\xae\x3b\xab\xfe\x7f\x75\xd3\xfc\xd6\x25\xaf\x53\xb2\xef\x9d\x6d\x18\xe7\x42\x45\x74\xef\x2b\x66\x72\x7b\x63\xc1\x40\xf5\x3f\x78\x8e\x92\x46\xd4\x68\x8b\x3e\x32\xc1\xa9\xd9\x79\xf0\x0b\x59\xb2\xd7\x61\xdd\xb7\xcd\x68\xba\x2f\x17\x0d\x45\x84\xcd\x33\xff\x9f\x58\x7b\x64\xd5\x52\xcf\x0c\x66\x53\x49\xb7\x42\xb3\xad\xeb\x60\x15\x2b\x46\x3f\x9d\xe3\x2f\x64\x87\xbc\x51\x57\xe7\xd4\x2c\x6d\x2b\xc3\x36\xd1\x49\x0a\x5d\xe2\xc7\xeb\x57\x4f\xfa\x67\xf3\xec\x80\xcc\xf0\xcf\xce\x0e\x0e\x74\x7b\xf7\xde\xb7\xb3\xdf\x0e\xd2\x94\x03\x0f\xaf\xd1\xcc\xb9\x4f\xda\xb3\xb3\x55\x4c\x50\x3c\xaf\x61\xc5\x34\x1e\xed\x62\xcd\x19\xa2\x07\xdc\x0d\x3f\xb0\x2d\x46\xe0\x06\xca\x1f\xb1\x9d\x3a\xe7\x16\xea\xb5\xe8\x32\xa5\x5c\xa2\x76\xc2\xfd\x62\x59\xcb\x3d\x11\x9e\x99\x17\x66\x29\x67\x1a\x96\xeb\xe5\x48\x09\x97\x20\x63\x3a\xd6\x4c\x6d\x81\x9e\xef\xc0\x69\xf2\x2b\xd0\x13\xd4\x32\x95\x5c\x26\x97\xcf\x2d\x56\x9c\xe8\xb8\x12\xc6\xc6\x3f\xe5\xa9\x0f\xcd\x7f\x70\x2d\x3c\xeb\x05\x4e\x56\x43\xf8\x80\x38\xc6\xe4\x31\x43\x20\x0f\x48\x64\x86\x48\xfa\x64\xf2\x17\x42\x99\x2d\x95\x01\xb1\x0c\xc8\xa5\x37\x3c\x5b\x32\x50\x7f\xe8\x3e\x6c\x36\x23\x22\xfa\x13\x00\x00\xff\xff\x32\x58\x37\x71\x53\x0b\x00\x00"), - }, - "/charts/gateways/istio-egress/templates/_helpers.tpl": &vfsgen۰CompressedFileInfo{ - name: "_helpers.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 1131, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x93\xcf\x6b\xdb\x4e\x10\xc5\xef\xfe\x2b\x1e\x22\x81\xef\x37\x20\xe5\x50\xe8\xc1\xe0\x53\xda\x43\x29\xa4\xd0\x40\x7b\x5e\x49\xb3\xf6\xc0\x6a\xa5\xee\xcc\x3a\x36\x69\xfe\xf7\xb2\xbb\xf2\x8f\x14\x5c\x6a\xe8\x6d\x18\x7f\x3c\xf3\xf6\xcd\xd3\xcb\xcb\xfd\x1d\xb6\x3c\x2c\x21\xa4\xb0\xec\x48\xf7\x13\xad\x86\x28\x6a\xba\x0d\x2d\x71\x77\xff\xfa\xba\x48\xd4\xe2\xe3\x6e\x32\xbe\x87\x6e\x08\xde\x0c\x84\xd1\xe6\xba\xdb\x98\xa0\xcd\x62\xe6\x6a\xf4\x64\xd9\x13\xaa\xb5\x51\x7a\x36\xfb\x26\xb1\x15\xea\xfc\x2b\x6e\xe6\x2e\x96\x2b\xb0\xef\x69\x87\xe6\x9b\x71\x91\xe4\xc8\x4b\x85\x8a\x45\x79\xac\x69\x1d\x48\x64\x6e\x57\x38\x8d\x37\xd1\x29\x9a\x87\xbc\xf7\x31\x29\xb9\x39\xdf\xf5\x65\x4b\x21\x70\x4f\xf8\x09\x0d\xd1\x77\x78\xff\x2e\x97\x3c\x3c\x45\x6b\x79\x87\xaa\x3e\xc8\xa9\x41\xbe\xcf\x75\x79\xe1\x43\x20\xa3\x04\x73\x5c\x62\xa3\x73\x7b\xfc\x88\xc6\xb1\x65\xea\x61\xa6\x29\xbf\xbd\x59\x7c\xa7\x32\x3d\xf3\x9a\x76\x24\x1f\x04\x2d\x75\x26\x0a\x41\xc6\x81\xf0\x39\xb6\x14\x3c\x29\x49\x71\xcc\x32\xb9\x5e\x60\x02\xc1\xf1\xc0\x4a\x3d\x74\x84\x6e\x58\xf0\x5f\xbb\xcf\x6e\x7e\x78\x7c\x4a\x2c\xfb\x35\x64\xa2\xee\xff\x66\xf1\xc9\x22\x90\x23\x23\xb3\xed\xdd\xe8\xd5\xb0\x97\x62\x7c\xe9\xb1\xe2\x99\x9d\x43\x4b\x88\x92\x74\x0a\x4c\x16\x3f\xab\xbd\x78\x9c\xc4\xfc\xe3\x03\xb1\x3d\xdd\xe3\x30\xfe\x78\x93\x83\xef\x97\x89\xbf\xba\x9a\x93\xb3\x51\xd9\x81\xe5\xea\x8a\x64\xd4\x27\xa9\x47\x37\xcb\x98\xe6\x6b\xb1\xba\xfc\xfb\xc0\xbd\xed\x5e\xad\x70\x0a\xec\xd5\xa2\xba\x95\xfa\x56\xaa\xdf\xa6\x95\xbd\xd7\x64\xf5\x52\xfd\x26\xc3\x67\xe1\x48\x1f\xed\x96\x82\xf0\xe8\x53\x30\x72\x40\xe6\xb4\x15\xca\x99\x96\xdc\x1f\x42\x92\xa9\x93\x8e\x73\x7f\xaf\xd1\xfd\x2b\x00\x00\xff\xff\x29\x60\xef\x56\x6b\x04\x00\x00"), - }, - "/charts/gateways/istio-egress/templates/autoscale.yaml": &vfsgen۰CompressedFileInfo{ - name: "autoscale.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 691, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x92\x41\x8b\xdb\x30\x10\x85\xef\xfe\x15\x83\xe9\xd5\x0e\xe9\x51\xd0\x43\xa0\x85\x5e\x5a\x8a\xe9\xe6\x3e\x91\x27\x66\x58\x59\x12\xd2\x38\x9b\xc4\xe4\xbf\x2f\x92\xed\x90\x65\x1d\xf6\x38\x6f\x46\x1f\xef\x3d\x34\x8e\xf0\xad\x43\xa1\x37\xbc\x80\xfa\x01\x6c\x5b\x3a\x43\xbd\x47\x33\x50\x84\x72\xde\xc4\x12\x4a\x8e\xc2\xae\xa2\x2e\x50\x8c\xb3\x5c\xc2\xed\x56\x8c\x63\x05\x7c\x04\xb4\xed\x1d\x54\xe3\x20\x2e\x6a\x34\xf4\xcb\xe2\xc1\xd0\xda\xe6\x0f\xdb\x35\x15\xcf\x89\x89\x9e\xf7\x14\x22\x3b\xab\x60\xd9\xb1\xed\x36\xa7\xef\x07\x12\xdc\x16\xaf\x6c\x5b\x05\xbf\x5d\xe0\xab\xb3\x82\xe6\x9f\x6b\x77\x0b\x22\x14\x3d\x09\xb6\x28\xa8\x0a\x00\x8b\x3d\x29\xf8\xe0\x7a\x56\xa3\x47\x4d\x0a\xc6\x11\xea\x86\x0c\x61\xa4\xfa\xef\x22\x27\x0f\x00\x06\x0f\x64\x62\xa2\x00\xa0\xf7\x0a\x56\x2a\xc8\xcb\x30\xbd\xff\x0c\x4b\x9c\xe8\x49\x27\x46\x8f\xe7\x86\xbc\x61\x8d\x31\x1f\x3e\x0d\x0f\xd0\xb3\xfd\xea\x94\xed\x74\x9a\xa7\xff\x18\x3a\x92\x86\x8e\x8b\xd7\x87\xf6\xbc\x8f\x9b\xd3\x36\xeb\x53\x6b\x3f\xc9\x1b\x77\xe9\xc9\x4a\x16\xd7\x0b\xea\x49\x02\xeb\x39\x7b\x05\x72\xf1\xa4\xa0\xa1\xe8\x86\xa0\x29\x8b\x29\xf5\x34\xaa\x79\x5e\x58\xda\x0f\x77\x45\xb2\xb3\xdd\x89\x02\x76\xf4\x22\x6c\xf8\x8a\x92\x8d\x3d\xc6\xd2\x7e\xa8\x9f\x5d\xa6\x98\x55\x55\xe5\x6f\x46\xb6\x4d\xe3\x7b\x00\x00\x00\xff\xff\xfa\x94\x70\x65\xb3\x02\x00\x00"), - }, - "/charts/gateways/istio-egress/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 8636, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x5a\x5f\x6f\xdb\xb6\x16\x7f\xcf\xa7\x20\x74\x8b\xfd\x01\xae\xe5\x38\x6b\x87\x3b\x01\x7d\x30\x9c\x6c\x4b\x91\xd8\x46\xed\x16\xb8\x4f\x06\x43\x9d\xd8\x6c\x28\x52\x23\x29\x27\x5e\xda\xef\x7e\x41\x4a\x96\x45\x8a\x92\xbd\xde\xad\x6d\x9e\x12\x9e\x7f\x3f\x9e\xf3\x23\x79\x48\xe5\xf9\x19\xbd\x58\x63\x0d\x8f\x78\x87\x92\xd7\x88\xf2\x14\x9e\x50\xfc\x1e\xb3\x02\x14\x8a\x2a\x89\x8a\x50\x44\x95\xa6\x62\x00\x6b\x09\x4a\x55\xc3\x11\xfa\xf4\xe9\x0c\xe7\xf4\x3d\x48\x45\x05\x4f\x10\xce\x73\x35\xdc\x8e\xce\x1e\x28\x4f\x13\x74\x09\x39\x13\xbb\x0c\xb8\x3e\xcb\x40\xe3\x14\x6b\x9c\x9c\x21\xc4\x71\x06\x09\x0a\xb8\xab\x64\x2a\xc7\x04\x12\xf4\xfc\x8c\xe2\xb7\xc0\x00\x2b\x88\xa7\xfb\x61\x13\x10\x21\x86\xef\x80\x29\xe3\x0b\x99\x90\x5d\xce\x50\x39\x9e\xa0\xb6\x40\x96\x8e\xdb\x51\x4c\x00\x95\x03\x49\xce\x9e\x9f\x07\x88\xde\x23\x2e\x74\x9d\xa0\x18\x17\x5a\x28\x82\x19\x5c\x71\x7c\xc7\x20\x35\xda\x95\x5e\xad\x23\x21\x67\x94\xe0\x89\x28\xb8\x2e\xe1\x56\x23\xca\x46\xeb\xd4\x33\x7e\x80\x29\xf0\x6d\x46\xa5\x84\xd7\xc1\xaa\x5f\x11\x52\xc0\x80\x68\x21\xcb\x44\x64\x58\x93\xcd\x4d\x23\x33\x47\x72\xd3\x99\x1d\x0d\x59\xce\xb0\x86\xca\x6d\xa3\x72\xe6\x87\x39\x11\x8e\xc6\xe8\x88\x52\x25\x0d\xfe\x08\xd5\xb8\xa2\x9a\xda\x29\x0d\x59\x64\xa7\x5a\xfe\x6c\x40\x52\x8d\xd7\x90\xa0\x25\x65\x0c\x64\x2d\xa8\xcb\x69\x2d\xeb\x61\xb2\xc1\x52\x27\x68\x4f\x62\x37\x7b\x16\x3c\xe7\x42\x63\x4d\x05\x6f\xcc\x48\xd1\x14\x08\x96\xb1\xf5\x15\x53\x31\xa4\xfc\x03\x10\x9d\xa0\xe8\x1e\x33\x05\x51\xab\xe2\xb9\x48\xc7\x07\x47\x65\x99\x90\x16\xff\xc5\x19\xeb\x54\xfa\x68\x57\x1a\xd7\xe8\x3f\x95\x7e\x03\x97\xc3\xbf\x6a\x29\xc6\x6b\x26\xee\x30\x8b\x73\x49\x85\xa4\x7a\x37\x61\x58\xa9\x3d\x61\x4b\xdc\x2d\x51\x82\x22\x43\xef\xe3\x0e\x22\x9f\x62\xa1\xb8\xe2\x69\x17\x83\xa5\xfd\x44\x48\xb8\x2c\xb2\xfc\x10\x9a\x72\xaa\x27\x82\x6b\x4c\x39\xc8\x46\x2a\x07\xd5\x62\x2f\xed\x06\x44\x48\x18\xa4\x45\x96\xef\x83\x90\xd2\x46\xa1\x68\x18\x05\x23\xae\x8c\xe7\x98\x66\x78\xdd\x98\xa8\x8d\x98\x59\x1e\x04\x27\xd8\xb2\x8b\xbc\xc5\x75\xdc\xc9\xa6\xb8\x43\x9f\x3e\x0d\x4f\xf0\xfe\x11\xa5\x70\x8f\x0b\xa6\x51\x74\x90\x99\x8d\x31\x69\x1b\x6b\xbc\xf6\xb3\xed\x81\x99\x17\x8c\xcd\x05\xa3\x64\x57\x6e\x4d\xae\xbd\xa7\xd2\x8c\x3d\x66\xe5\x36\xed\xb8\x24\x22\xcb\x30\x4f\x93\xc6\x90\xa9\xc9\xf0\x8e\xf2\xa1\xda\x34\x46\xb1\x5c\x2b\x5f\x6b\x40\xbc\x01\xb5\x53\x44\x33\x34\x78\x44\x0f\x20\x39\xb0\xd8\x94\x73\x95\x63\xad\x41\xf2\xd7\xc3\x2d\x96\x43\x46\xef\x86\x76\xd9\x0c\x8d\xac\x4c\x16\xfa\xee\x3b\x54\x30\x9a\x51\x8d\x06\x04\x15\xdc\xfe\x0a\x69\xc3\xb9\x02\x52\x58\x4a\x0a\xae\xe1\x49\xbb\x40\x72\x49\xb7\x94\xc1\x1a\xd2\x04\x69\x59\x40\x3b\x79\xa4\x87\x78\xe5\x4e\x62\x71\x9c\xcc\xb9\xcf\xa0\xdb\x3f\xc6\xb4\xda\xf1\x37\xc0\xa6\x5c\x48\xed\xb1\xc4\x84\x96\x98\xaf\x01\xbd\x78\x80\xdd\xbf\xd1\x8b\x2d\x66\xa6\x8b\x68\xec\x7a\x52\x2b\xd7\x8d\x29\x4e\x5d\xb2\xb9\x30\x1b\xb4\x39\x16\xb7\x66\xca\x42\x6a\x5f\x39\x38\xbb\x13\x22\x67\xa0\x36\x57\x4f\x39\xe6\xa6\x33\x99\xff\x53\x30\x5a\x3e\x46\xaf\xce\x7f\x39\x77\x54\x0c\x85\x85\x16\x44\xb0\x04\x2d\x27\x73\x4f\x56\xd2\x74\xa3\x75\x3e\x00\xbe\x15\x3b\xc3\xd5\xac\x67\x65\x0e\x50\x49\xe6\xe6\x88\x14\x85\x6e\x1c\x86\x76\xf1\x0e\x52\x91\x61\xca\x9d\xc1\x17\x3f\xcc\x67\x97\xab\xe9\xf8\xf6\x6a\x31\x1f\x4f\xae\x7e\x8c\xd5\x96\xc4\x5d\xc4\x23\xac\x50\x1a\xe4\xa5\x75\xd3\x9c\x76\xdf\xf9\xc0\xc4\xfa\x06\xb6\xc0\xdc\x34\x19\x38\x56\x7e\x53\x89\x5f\x77\x05\x0d\xd9\x57\x99\x3f\x11\x01\x11\x59\x2e\x38\x70\x7d\xd3\x0f\x65\xe2\xeb\x75\x62\xea\xf5\x78\x2a\x38\x26\xd6\x6b\xca\xd7\x31\x0b\x43\x62\x62\xbd\x12\x85\xce\x0b\xbd\x62\x1d\x60\x3a\x3d\xfc\x05\x08\x63\xf5\x46\x09\x1e\x0e\x8f\xd5\xea\x83\x12\xdc\x77\xdb\x56\x4e\x25\xa6\xfc\xb2\x90\xb6\x91\x71\x64\xdf\xbf\x7c\xa5\xbe\x47\xff\xea\x56\x18\x0c\x72\x2c\x81\xeb\xc5\xa6\xd0\xa9\x78\xec\xf0\x32\xca\xce\x8d\x9b\x13\x54\x07\x03\x22\x38\x07\xa2\x97\x34\x03\x51\x68\xcf\x8f\x75\xd3\xa3\x31\x18\x28\x90\x5b\x4a\x60\x52\x72\xdd\x11\xf6\xb5\xb4\xa5\xf1\x9f\x34\x7f\xa0\x7c\x9c\xa6\x46\xe5\x48\xf2\xb5\xc4\x04\x64\x5c\x9a\xc4\xb8\xb4\xf1\x73\x1b\xd8\xe2\x8f\x99\xd5\xa7\x4d\x20\x24\x30\xc8\x40\xcb\x9d\x77\x79\x3a\xc4\xab\xdc\x06\xc2\x86\x4c\x93\x5f\x5e\x8e\x46\xed\xc0\x41\x9f\x01\xdd\x10\x95\xec\x02\x1b\xa7\x19\xb5\x1b\xb4\x23\x8c\x46\xaf\xce\xcf\xcf\x23\xbf\x5e\x1a\xeb\x42\x05\x95\x2f\x1a\xca\xe1\x1a\x98\x9d\x5a\x0a\x36\x67\x98\xc3\xa2\x6a\x39\x1a\xf7\xb8\x16\xb1\x6a\xe5\x71\xa1\x37\xe5\x19\xe9\x28\xdd\xbe\x5b\xbe\x1b\xdf\xac\x96\x37\x0b\x7f\x85\x50\x45\xc4\x16\xe4\xce\xe7\x46\x17\x32\xcb\xb5\xce\x32\x55\x3d\x0c\x65\x42\x07\x6a\xd5\xb2\x4d\x46\xaf\xce\x1b\xc9\xef\x2e\x55\xc3\x6f\xd8\xc6\x2d\x59\x97\x9b\x93\x72\x35\x9d\x4d\xaf\xbe\xbd\x2c\x9d\x7f\x46\x96\x5a\x36\x81\x2c\xb5\x87\x42\x3b\x42\xa1\x74\xfb\x74\x2d\x73\x63\x85\xd5\x11\x1e\x38\x0b\x3a\x6c\x83\xeb\x4c\x02\x4e\x29\x07\xa5\xe6\x52\xdc\x81\xdb\xbe\xdd\x63\xca\x0a\x09\xcb\x8d\x04\xb5\x11\x2c\x4d\xd0\x4f\x6e\xef\x62\xfa\x92\xdf\xc0\xeb\xc8\x11\xca\xb1\xde\x24\x68\xb8\x01\xcc\xf4\xe6\xcf\xa1\x09\xb1\xf3\x55\xf6\xdd\xd0\x85\xdf\x0d\x29\xb2\x01\xd3\xf3\xfc\xbe\x5c\xba\xcd\x90\xb9\x38\x51\xcc\x2e\x81\xe1\xdd\x02\x88\xe0\xa9\x7d\xfd\x70\xbc\x82\xa4\x22\xad\x85\x17\x8e\x50\x15\x84\x80\x52\x8d\xd9\xb8\xc6\xba\x3c\x02\x82\xae\x25\x28\x51\x48\x02\x2a\x09\xbc\xe7\x54\xa2\x8e\x8b\xfd\x41\x5e\xdf\xe9\x47\x17\xfe\x83\xce\xc1\xce\x2b\x65\xd5\x72\xbf\xed\x75\xe2\xd7\x14\xf8\xd6\xed\x09\xcb\x2e\x72\x3a\xbb\xbc\xb2\xed\x9d\x33\xed\xad\x89\xf7\xab\x14\x99\x5f\xc5\x7b\x0a\x2c\x7d\x0b\xf7\xfe\x38\x42\xcd\x27\xbd\xed\xa8\x25\xb6\x86\x73\xcb\x01\x95\x03\x89\xb9\x48\xc1\xac\xad\x00\xa4\x7d\xc3\xf9\xe5\x10\xed\xdf\xab\x62\xde\x8f\xc8\xb6\xc0\x5f\x09\x96\xdd\x84\x02\xd8\xae\xa7\x8b\xe5\x78\x3a\xb9\x5a\x5d\xcf\xbf\x60\x09\xed\x99\x1a\xe7\x22\x75\xa2\xee\x31\xfd\x3e\x5b\x2c\xbf\x06\x9e\x8d\x50\x3a\x08\xe8\x7a\xb1\xbc\x9e\xad\x6e\xaf\x96\xe3\xd5\xb7\xc7\xae\x06\xb8\xc9\x6c\xfa\xeb\xf5\x6f\x7f\x1f\xd7\x4e\x25\x93\xbf\x7f\xa9\xd4\x6b\x34\x03\x0a\xd5\xc3\x5e\xab\x0f\x6a\x4d\xea\xdd\xe2\xea\xed\x6a\x71\xb9\x68\x4f\x26\x41\x91\x96\x05\x44\xfd\xc7\x63\xcf\x60\x13\x12\xf0\x6d\x5b\xa1\xf7\xba\xdf\xb2\xd8\x83\x37\x97\xfa\x07\xd8\xf9\x17\xf7\x0a\x73\x75\xe5\x3f\x09\xa2\xf7\x40\xda\xf3\xfc\xdb\x46\x11\x1d\x72\xf8\x66\x31\x9b\xae\xc6\xd3\xe9\x6c\x39\x5e\x5e\xcf\xa6\x8b\x28\x84\xeb\x63\x79\x62\xd8\xeb\xda\xd1\x27\xe4\xd1\xcf\xad\x27\xe4\xca\x99\x60\x45\x06\xb7\xa2\xe0\xee\xc3\xcd\xf3\x73\xa0\x21\x39\x4a\x03\x95\xaa\x22\x55\xe6\xec\x77\x10\x67\xc6\x7d\xc9\x4b\xfb\x06\x28\x0b\x3e\x54\xa9\x72\x74\x4c\x87\x30\xe3\x6c\x57\x3d\xe1\xb5\x0a\x1f\x80\x52\x28\x58\x9a\x36\xe7\x51\x48\xbd\xd9\xbd\x79\xd4\x61\x50\x65\x7b\xa6\xc5\x03\xf0\xe3\xa8\x80\x48\xd0\x6a\x68\xb5\xfd\x7e\xf3\x34\xa2\xba\x61\x09\x48\xad\x3a\xc3\x82\x26\xc3\xb6\x46\x6f\x2a\x2a\x8a\xd7\x2b\xd3\x02\x7e\x6f\xab\xd8\x41\x2c\xd3\x1c\x72\xe7\x33\x40\x0b\x88\x51\xa9\xff\x44\x1f\xd1\x1f\x85\xd0\x2d\xfd\x5e\x58\x1d\xc4\xc7\x69\x4a\x0d\x15\x31\x3b\xbc\xfd\x77\x34\x49\x41\x55\xff\x1b\x88\x97\xef\x92\xbd\x35\x71\xbb\xa9\xd2\x62\x6d\x0f\x63\xcd\xb1\x62\xd3\xd2\x98\x62\xde\x45\xde\xcf\x62\x67\x1f\x33\x73\x29\x3e\x00\xd1\xe0\x3c\xc9\xd7\x9d\x67\xb3\xba\xd5\xcb\xc4\x98\x10\x53\xb9\xa5\xf1\x12\xee\xc2\xbb\x16\x00\x42\xf0\x94\xd3\xf2\xd1\xa4\x6e\x79\x5f\xfe\x74\x71\xee\xf7\xe3\xb8\x48\x29\xf0\xfd\x17\xd7\x13\x2e\x1a\xad\x42\x05\x06\xbe\x46\xa5\x1c\x08\x7d\x0b\xb5\x5c\x56\x4e\x09\xec\xc8\xf4\x60\xb1\xef\xcb\x1b\x3a\x22\x2f\x09\xec\xac\x90\xd3\x17\x6d\xdf\x82\xed\x07\x64\x2c\x0e\x7f\x87\x17\x70\x27\xb8\x56\xa1\x3c\xb4\x44\xf0\x7b\xba\xfe\x4b\x68\x4b\x93\x5b\x9c\x37\x01\x1f\xd4\x6b\xf1\xff\x8b\x16\xdf\xdf\x9b\x2b\xe1\xce\xd9\x00\x38\x61\x45\x0a\x28\x32\x77\x8e\xbd\x42\x84\x7e\x48\x29\xd1\x28\x2a\x99\xe6\x7f\xd5\x29\x95\x17\xd5\xc7\xf2\xe8\x30\xf7\xe6\xf0\x8f\x87\xdd\xe8\x67\x37\x61\x75\x48\x7b\xfc\x6a\x3a\xae\xa3\xd6\xff\x37\xe1\x9a\xfa\xdb\xa4\x16\x0c\xa4\xdf\x1c\x34\x06\x93\xd0\x86\xd9\x34\x6a\xbb\xaf\xf2\xf4\xbf\x00\x00\x00\xff\xff\x44\xc9\xcf\xd4\xbc\x21\x00\x00"), - }, - "/charts/gateways/istio-egress/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 514, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x91\xc1\x6a\xf3\x30\x10\x84\xef\x7e\x8a\xc1\xfc\xd7\xe8\x27\x57\x41\x0f\x2d\x3d\x96\x52\x7a\xc8\x7d\x6d\x6d\xdc\xa5\xb2\x24\xbc\x72\xda\x20\xf2\xee\x45\xb5\x03\x85\xa4\xcd\x75\x86\x99\xf9\x96\x2d\x05\xff\x06\xca\xfc\x41\x47\xd8\x3b\x48\x70\xfc\x09\xb3\x23\x3f\xb3\xa2\x5d\x1d\x6d\xd1\x8a\x66\x89\x1b\x1e\x26\x56\x5d\xe5\x16\xa7\x53\x53\xca\x06\xb2\x3f\x47\xcc\xe0\x63\x47\xde\x38\xde\xd3\xec\xf3\x4b\x74\x8f\xa2\xd3\x9c\xb2\xc4\xf0\x30\xbb\x81\xb3\xe1\x40\x9d\x67\x57\xb3\x94\x64\xc7\x93\x4a\x0c\x16\x29\x7a\xe9\x8f\xff\x0f\xdb\x8e\x33\x6d\x9b\x77\x09\xce\xe2\x4a\xbe\x19\x39\x93\xa3\x4c\xb6\x01\x02\x8d\x6c\x71\x05\x6d\xf5\x34\x51\xcf\x16\xa5\xc0\xbc\xb2\x67\x52\x36\xcf\x67\xb9\x02\x00\x9e\x3a\xf6\x5a\xbb\x00\x4a\xe9\xb7\x32\x2c\xba\xc5\xa5\x31\x2d\xc5\x97\x2b\x75\x40\x13\xf7\xb5\x7c\x94\x70\x7f\x20\xf1\xf5\x74\x8b\x6d\x03\x28\x7b\xee\x73\x9c\x96\xe9\x91\x72\xff\xf6\xf4\x83\xe5\x26\xcf\x9f\x4c\x37\xb9\xea\xd7\x38\x7c\x3f\xe1\x2b\x00\x00\xff\xff\xc3\xfd\xec\xc2\x02\x02\x00\x00"), - }, - "/charts/gateways/istio-egress/templates/preconfigured.yaml": &vfsgen۰CompressedFileInfo{ - name: "preconfigured.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 1883, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x95\x41\x4f\xdc\x3c\x10\x86\xef\xfb\x2b\x46\xcb\x77\x42\x8a\x3f\x10\xf4\x62\xa9\x07\xd4\x52\x8a\x0a\x4b\x05\x01\xd4\x13\xf2\x26\x93\xec\x08\xc7\x8e\x3c\xce\xc2\x36\xda\xff\x5e\x39\x4e\x96\x5d\x5a\xd4\xa5\x6a\x55\xf5\x18\x7b\xf2\xcc\xf8\x7d\x67\xec\xb6\x85\xff\x4a\xe5\xf1\x41\x2d\x40\xbe\x05\x32\x39\x3e\x82\xb8\x51\xba\x41\x86\x71\xbf\xc3\x63\x18\x13\x7b\xb2\x09\x96\x0e\x99\xfb\xe5\x31\x2c\x97\xa3\xb6\x4d\x80\x8a\x15\x44\x7c\x9d\xd7\x46\xa0\x51\x53\x8d\x79\xd8\x57\x35\xdd\xa0\x63\xb2\x46\x82\x41\xff\x60\xdd\x3d\x99\x52\x74\x38\x41\xf6\xff\xf9\xbe\xd2\xf5\x4c\x1d\x8c\xee\xc9\xe4\x12\x4e\x22\x66\x54\xa1\x57\xb9\xf2\x4a\x8e\x00\x8c\xaa\x50\x42\x2c\xa0\x6a\xb4\xa7\x4c\x37\xec\xd1\x6d\x56\xd3\x07\x72\xad\x32\x94\xd0\xb6\x20\x2e\x51\xa3\x62\x14\x93\x61\x39\xd4\x03\xa0\xd5\x14\x35\x07\x30\x80\xaa\xeb\x81\xfc\x1c\x06\xe0\xe2\xff\xdf\xc3\x02\x87\x6b\xcc\x02\x83\x51\x63\xe6\xad\x8b\xbc\x0e\x25\xe1\x39\x8b\xd1\xcd\xd1\x75\x39\x13\x98\x59\xf6\x7d\xfa\x04\xc6\xbb\x62\xcd\x82\xa8\x1e\x37\x45\x41\x8f\xb0\x5c\x8e\xbb\xa0\xda\x3a\x1f\xc3\x07\x29\xbc\xe6\xe1\xbb\xa9\xa6\xe8\x24\xec\xbf\x39\x3c\x3c\xe8\xd7\x6a\x67\xbd\xcd\xac\x96\x90\x9e\x5d\x75\x6b\x5e\xb3\x84\x76\x39\x4a\x92\xe4\xb5\x7e\xdc\x90\xf3\x8d\xd2\x57\xe8\xe6\x94\xe1\x1f\xb3\x05\x7e\xbb\x2f\x43\xeb\x46\xcd\xb7\xa8\x72\x65\xcb\x16\xa6\x78\xdd\x47\x56\xca\x67\xb3\xc1\xcb\xce\xa8\x0d\x2b\xd8\xd0\xc7\x27\xb7\xb7\xf4\xdb\xd9\xc6\xe3\xc0\xcc\x91\x3d\x19\xe5\x83\x5f\x3d\x24\x96\x2a\xc1\x58\x23\xf0\x91\xd8\xa3\xf1\xa2\x3f\xd5\x2a\x64\xbd\x69\x5e\x6a\x94\x07\xa4\x72\x16\x2a\xde\xdb\xfb\x95\xd6\x38\x36\x73\xbb\xf8\x40\x3a\xa4\xfd\x67\xc6\x15\xc2\xa9\xb4\x55\xf9\xd9\x1a\xf6\xa5\xb1\x85\xa2\x3b\x5d\x8c\x4a\x40\x77\x5a\xa3\x3b\x7f\x32\xbd\x57\x7a\xf2\x03\x75\x57\xe1\xe9\xa2\x46\x09\x27\x47\xe9\xf1\xed\xd1\x97\xb8\x19\xb9\x93\x4e\x28\x0c\x32\x8a\x3e\x93\xe8\x75\x17\x6c\xe8\x6e\xc3\xd3\x18\x10\x59\x93\xe3\xf4\xf6\xe2\xf2\xd3\xfa\xc6\x3b\x6b\x0a\x2a\x57\x53\xbe\xb3\x03\xa9\x05\x34\xdc\x38\x04\xa5\x35\x78\xa7\x8a\x82\x32\xf0\x16\x76\x45\xa9\xed\x54\x69\x20\x86\x86\xc9\x94\x50\x85\x8b\xe2\x95\xee\xbf\x7f\x6a\xcc\xcb\x46\x6f\x79\x33\xac\x75\xb3\x0b\x3f\xfd\x9d\x1e\x88\xe3\xf3\xf3\x21\x8f\x92\x7d\xb6\x9a\xb2\x85\x5c\x5d\xa4\xbd\xbd\x95\xcd\x51\xc2\xe9\x55\x7a\x7a\x71\x77\x7e\x9d\x5e\x1f\x9d\x75\xc2\x87\xe7\x10\x4d\xf7\xf2\x7d\x0b\x00\x00\xff\xff\xef\x2d\xb0\x82\x5b\x07\x00\x00"), - }, - "/charts/gateways/istio-egress/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 598, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x50\x4d\x4b\xf4\x30\x10\xbe\xf7\x57\x3c\x94\x3d\xbe\x29\xbc\xd7\x80\x07\xf1\xe4\x45\x44\x61\xef\x63\x3b\x2c\x61\xb3\x49\xcc\x64\x57\x4b\xec\x7f\x97\x34\x2d\xeb\xfa\x81\x5e\x12\x66\xe6\xf9\x98\x67\x72\xc6\x66\x47\x89\x5f\x68\x84\xbe\x82\x71\x03\xbf\xa2\xdb\x92\x3d\xb2\xa0\x5d\x26\xd2\xa2\x35\x92\x8c\x57\xbc\x8b\x2c\xb2\xb4\x5b\x4c\x53\x43\xc1\x6c\x39\x8a\xf1\x4e\xe3\xf4\xbf\xd9\x1b\x37\x68\x3c\x72\x3c\x99\x9e\x9b\x03\x27\x1a\x28\x91\x6e\x00\x47\x07\xd6\xf8\x46\x66\x99\x49\xa0\x9e\x35\x72\x46\xf7\xc0\x96\x49\xb8\xbb\x5b\xdb\xc5\x08\x20\xe7\x7c\xa2\x64\xbc\x93\x22\x08\xe4\xac\x10\xc9\xed\x18\x9b\x3d\x8f\xff\xb0\x39\x91\x2d\x29\xd6\x44\x9d\xd4\x3d\xae\xcf\xc4\xaa\x54\xa8\x33\x07\xd3\x34\x5b\xce\xcc\x37\x3c\x1f\x7d\xe2\x33\x44\x81\xdd\x50\x4b\x4b\x4f\x6c\x17\x5b\x0a\xe1\xa7\x20\x40\xac\xbb\x7f\x0d\x52\x74\x24\x70\x5f\x34\xd2\x18\x58\xe3\xc6\x1e\x25\x71\xbc\xbd\x6f\x00\x61\xcb\x7d\xf2\xf1\x57\x87\xe0\x63\xfa\x6b\xfc\x19\xbb\xc6\x51\xf3\x7b\xc1\x0a\x95\x16\x56\x5e\xf9\x17\x74\xbd\x50\x01\xac\x17\x0a\x9f\xa6\x1f\x8e\x73\x51\x2a\xa5\x9a\xf7\x00\x00\x00\xff\xff\x46\xfb\x59\x98\x56\x02\x00\x00"), - }, - "/charts/gateways/istio-egress/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 1002, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x53\xc1\x8a\x14\x31\x10\xbd\xf7\x57\x14\xc1\x83\x0b\x26\xe2\x4d\x02\x1e\xf4\xe2\x4d\x64\x16\xf6\x22\x7b\xa8\x4e\x6a\x7b\xcb\xcd\x24\x4d\x2a\x3d\xab\x86\xfd\x77\x49\x77\x8f\x68\x3b\x8c\x83\xec\xad\x79\x95\xf7\x78\xef\x55\x75\xad\xf0\x62\xc0\x42\x8f\xf8\x1d\xec\x3b\xe0\xe8\xe9\x1b\x98\x1b\x0c\x13\x09\xa8\x75\x22\x0a\x14\x4b\xe1\xa4\x69\xc8\x24\xb2\xc2\x0a\x9e\x9e\xba\x5a\x81\xef\xe0\xe5\x51\xc4\x88\x97\x2b\xc0\xe8\xff\x84\x0c\x45\xec\x03\xf9\xab\x46\xc1\x91\x6f\x28\x0b\xa7\x68\x21\xf7\xe8\x0c\x4e\xe5\x3e\x65\xfe\x81\x85\x53\x34\x0f\x6f\xc5\x70\x7a\x7d\x78\xd3\x3d\x70\xf4\x16\x76\x29\x50\xb7\xa7\x82\x1e\x0b\xda\x0e\x20\xe2\x9e\x2c\x9c\x30\xa4\xc5\xcb\x3a\x97\x11\x1d\x59\xa8\x15\xcc\x8e\x02\xa1\x90\xf9\x74\x84\x9b\x87\x3c\x05\x12\xdb\x69\xc0\x91\x3f\xe6\x34\x8d\x62\xe1\x8b\x52\xb7\x1d\x40\x26\x49\x53\x76\x34\x23\x42\x2e\x53\x91\x79\x70\xa0\xdc\xcf\xe0\x40\x45\xbd\x02\xf5\x88\xc5\xdd\xb7\x8f\xc0\x52\xd4\x6d\xa7\xb5\xfe\x9f\x6c\x1f\x38\x7a\x8e\xc3\xf3\x47\x4c\x81\x76\x74\xd7\xe4\x8e\x21\xcf\x78\xea\x00\x7e\xab\xfb\x5f\x0e\x64\xea\xbf\x92\x2b\x73\x83\x0b\xed\x9a\xf2\x81\x1d\xbd\x77\x2e\x4d\xb1\x9c\x17\x58\x9e\x6a\x5c\xdf\x6e\x7b\xfb\xd5\xce\x46\xb3\x56\xdd\x6e\x6d\xbd\x4e\x33\x84\xd4\x63\x30\xbc\xc7\x81\x3e\x4f\x21\x5c\x2f\xab\x6a\xd1\xb7\x98\x9d\xb9\x19\xe3\x40\x97\xd0\x01\xf4\x6a\xbf\x95\xbb\x5c\xb9\x06\x8a\x7e\xf3\x79\xe1\xc6\x36\x71\x2f\xdb\x1e\x40\xc0\x9e\x82\x34\xed\xb6\xc0\xf1\xa4\xf8\x3c\xcc\x0b\xff\x6f\xb1\xf5\xff\x5c\xdc\xfe\x0c\x00\x00\xff\xff\xa3\x75\x21\xa5\xea\x03\x00\x00"), - }, - "/charts/gateways/istio-egress/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 3447, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x56\xdd\x6e\x23\xbb\x0d\xbe\xcf\x53\x10\xce\x4d\x0b\x24\xce\x4f\x77\x8b\x83\xb9\xcb\x39\x71\x81\xe0\x6c\x92\xed\xda\x7b\xce\x45\x51\x04\xb4\x44\x7b\x84\x68\xc4\xa9\xc4\xb1\x33\x5b\x14\xd8\x07\xe9\x79\xb9\x7d\x92\x82\x1a\x8d\x1d\x27\xd9\x02\xeb\x2b\x0f\x45\x7e\xa4\xf8\xf3\x51\xc7\x30\x17\x0c\x16\x3d\x07\x02\x97\xc4\x31\xd0\x3a\x52\x4a\xb0\x46\xa1\x2d\xf6\xd3\xa3\x63\x98\xd7\xdc\x79\x0b\x4b\x02\x17\x92\xa0\xf7\x64\xc1\x05\x40\x48\xd4\x62\x44\x21\x08\xd8\x50\x6a\xd1\xd0\x09\x08\x43\xe3\x82\x6b\xdc\x17\x02\x34\x46\xa1\x84\xc1\x70\x58\xb9\xf5\x51\x01\x4d\xd5\x11\x0c\xde\x4e\x07\x6f\x45\xae\x62\x80\x96\xa3\xa4\xe1\xef\x69\xfe\xa8\xe0\xa7\xf3\xfc\x09\xd9\x51\x05\xb5\x48\x7b\x79\xa0\xf0\xee\xdd\x5f\x5e\x69\xa4\x22\x39\x86\x45\xed\x12\xb8\x04\x52\x53\xd6\x87\x6d\x4d\x91\x20\x05\x07\x91\x3b\x71\x61\x0d\x35\xb6\x2d\x85\x74\x00\x7a\xf1\x7e\x0f\x2b\x18\xd7\x24\x1f\x5f\xc9\x07\x77\xe2\xd3\xd1\xd1\xe0\x6b\x16\x70\xe9\x09\x4c\xe4\x94\x4e\x8d\xef\x92\x50\x1c\x13\xd1\x25\x75\x35\xbf\xbb\x81\x06\xc5\xd4\x2e\xac\xa7\xc5\xea\x16\x1f\x09\x52\x17\x09\x7a\xee\x20\x91\x40\xea\x56\x2b\xf7\x04\x6e\x05\x96\x5a\xcf\xbd\x5a\x36\x9d\x17\xd7\x7a\x7a\x51\xa3\x34\xa0\x7c\xd9\xb4\xa1\xda\xdd\xf9\xb6\x4b\xa2\x25\xb3\x6e\xb5\xa2\x48\x41\x60\xc5\x11\x08\x4d\x3d\x5a\xef\x8a\x36\xdd\x19\x7d\x4e\x64\x4b\xb9\x24\xb2\xcf\x09\xb3\xdc\xa0\x0b\x59\x7b\x0c\x4a\x91\xbe\x50\x64\xd8\xb4\x61\xcc\xe0\x1e\xe4\x7a\x6f\x90\x80\x82\xd5\xc8\xb7\x4e\x6a\x10\x2d\x43\x81\xd8\x3a\xef\x35\x3c\xb5\x1e\x7c\xe6\xd3\xc3\x8b\xed\x20\xb1\x13\x6e\x50\x9c\x41\xef\xfb\xe9\x61\x5d\x0d\x06\x05\x42\x88\x84\xfe\x20\xda\x3f\x0d\x3d\x36\xa5\x27\x6c\x5a\x4f\x53\xc3\x0d\xfc\xb9\x18\x0f\x61\x54\xb0\xf6\xbc\x44\x5f\x84\x94\x6b\x67\x2b\x90\xd8\xd1\xd1\x58\xd1\xb9\x41\x8f\x4b\xe7\x9d\xf4\x20\x5d\x08\x2e\xac\xcb\x49\xa4\xd6\x3b\x83\xbf\x70\x17\xb4\x2d\xb2\x54\x43\x4d\x06\x3d\xcd\x0e\xc0\x0e\x8e\x6e\x5d\x78\xa5\x7e\x8b\x4f\x15\xbc\xcf\xb2\x48\x89\xbb\x68\x28\x8d\xd5\x8c\xf4\xaf\x8e\x92\xec\xbe\x01\x4c\xdb\x55\x70\x71\x7e\xde\xec\x24\x0d\x35\x1c\xfb\x0a\x2e\x2e\x7f\xba\x75\x45\xea\x5d\xe3\x5e\x59\x5d\x9e\xbf\x65\x76\xf9\xfe\xaf\xc5\x4c\x95\x0e\x9a\xfe\x6a\x43\x11\xd7\xf4\x59\x9c\x77\x5f\x50\x1c\x87\x3c\x90\x59\xc7\x46\x74\xe1\xba\x8b\x45\xfc\xee\xfd\x30\x41\x86\x43\x20\x23\x0b\xd7\x10\x77\x9a\x9a\xf3\x32\x1f\x89\xe2\xc6\x19\xba\x0a\x81\x25\xdb\xa4\x0a\xfe\xfd\x9f\x32\xf6\xf6\x2d\xb1\xf4\x2d\x55\xf0\xcb\x30\x48\x37\x1f\xe1\x18\x4c\x8d\x61\x4d\xda\x32\x77\x6c\x49\x47\x12\x38\xc2\x07\x46\xfb\x33\x7a\x0c\x86\xa2\x4e\x4d\x20\x52\xca\x1a\xdd\x9a\x48\xf2\x1b\xfb\xae\xa1\x1d\xb5\x0c\xa3\x7b\x40\x40\xa7\x86\xa2\x8c\xbc\x31\x18\xdd\x65\xad\x37\xc8\xea\x40\xb7\xd1\x16\xf8\x88\x52\x57\x70\x46\x62\xce\xb2\xfe\xd9\xf7\xf4\xbf\xe3\x1b\x7f\xcc\x3d\xfe\x78\x04\xa3\x49\x69\xed\xe3\x63\xb8\xb2\x1b\x4d\x99\x05\x6e\x73\xde\x55\xb8\xfb\x95\x36\x5f\xdc\x5f\xdf\x57\x5a\xd3\x0d\x45\xd1\xbc\xe7\x49\x2b\x06\x27\x40\x61\x03\x69\x58\x11\x81\x33\xe7\xd0\x53\xcb\x89\xec\xd1\x30\x53\x9b\x6a\x1c\x24\x92\x61\xca\x85\x61\x42\x4f\x42\x31\xa0\x9f\x68\xb1\x30\x58\xe0\xe0\x7b\xfd\xaf\x04\xb8\xc5\x20\x99\x7c\x0e\xf9\x00\x84\x0b\x14\x1a\x01\x4c\x80\x20\x11\x43\x6a\x31\x13\x9c\x12\xeb\x4e\xb3\x46\x19\xc8\x25\x41\xb3\xf8\x30\x3f\x5b\x7c\x98\xab\xf2\x6a\xe5\xcc\x1e\x66\x0c\x62\xec\xcb\x04\x96\x56\x2e\x90\x2d\x54\x5d\xc4\x40\x41\xa2\xa3\x74\x52\x16\x87\x46\x56\x8e\x46\xa0\x20\xb1\x87\x1a\x53\x1e\x5e\xdf\x69\x6a\x32\x8d\x0b\xc3\xf5\xdd\xfc\x24\x1f\xe9\x8e\xe5\x08\x0d\x47\x45\xb4\x2d\xbb\x20\x29\x53\x63\x41\x09\x24\x5b\x8e\x8f\xb0\x72\xe4\xed\x68\xbe\xcf\xd4\x14\x7e\xee\x35\x40\xec\xbc\x80\x93\xb4\xd3\x98\x40\xe2\x7c\xe3\x82\xf3\x46\xe6\x12\xd1\xb0\xff\x52\xe6\x71\x12\xe0\xd5\xb3\x20\xb0\x1c\x3a\x4b\x06\x63\x2a\x38\x6d\xa4\x7c\xcd\xb0\x86\x25\x9a\xc7\x2d\x46\x0b\x86\x9b\x16\xc5\x0d\x7c\x58\xf4\x6e\xe6\x8b\x9b\xfb\x87\xdb\xd9\xe2\xea\xe1\xd3\xec\xef\x9f\x67\xf3\xc5\xec\xfa\xe1\x6e\xb6\xf8\xfd\xfe\xd3\xaf\x0f\xbf\xdd\xcc\x7e\xaf\x60\x32\x29\xba\x57\xbb\x90\xf6\x3b\xa1\x61\xab\x19\xd1\xfd\x97\x86\xca\xb5\xce\xb3\xc0\x9a\x02\xe9\xfb\x22\x01\x06\x40\x6b\x9d\xa6\xb5\xb0\xf5\xf1\x78\x89\xb2\x63\x53\xde\x4a\x2e\xbc\x2c\xe8\xb2\x93\xec\x89\x3b\x81\x9b\xfc\xc0\xd1\x76\x38\x79\xd6\x03\xcf\x16\xf6\x08\x76\xb8\xd4\x9e\x5f\xef\xfe\xf3\x62\xf6\xe9\xe1\xf6\xfe\x7a\x56\xc1\x24\x05\x77\x6a\x03\xca\x64\x98\xa7\xc0\x96\xe6\xe4\xc9\x08\xc7\x3d\x7f\xb1\xa7\x38\x72\xda\x3f\xfe\xb9\x5b\x2a\x2d\x19\xb7\xea\xcb\x93\xc4\x02\x06\x71\xa7\xda\x9d\x21\xaf\x19\xcd\x01\x7a\xcf\xdb\x94\xe7\x61\x58\xc9\x49\x94\x6d\x61\x5b\x3b\x53\x67\x67\x63\x9d\x7a\xee\x62\x46\xd1\x0d\xea\xdd\xda\xe9\x85\x84\x75\x14\x93\xa9\xc9\x76\xfa\x62\x5b\xa2\x2e\x77\x0e\xe0\x71\x49\x5e\xbb\x51\x4d\x4a\xbe\x31\x8e\x9d\x8c\x3e\x12\xda\x1e\xe2\xb0\xe9\x54\x4d\x63\x54\x77\x10\x51\x6a\x8a\x6a\x11\xde\x82\xcb\x21\x8d\x2f\x9a\x45\x9e\x14\x8c\x04\xa6\x8b\x3a\x9e\xbe\x07\xd9\x72\xe6\xf3\xa4\x75\x3b\xb8\xf1\x48\x11\x00\x30\xd1\x6d\xe7\x22\xd9\xeb\x2e\xba\xb0\x9e\x0f\x17\x70\x61\x7d\xb3\x0e\xbc\x13\xcf\x9e\xc8\xe4\x29\x9b\x3c\xb3\x6c\x23\xad\x28\xfe\xb0\xe9\x90\x50\x4b\x81\x85\xe0\xdb\xd7\xff\xd6\x18\xed\xb7\xaf\x7f\xc0\x26\x4d\xf5\x33\xf1\x4a\xf4\xb3\xc4\xd5\x50\x90\x74\x92\xcb\xa2\x4f\x8f\x81\x30\x86\x12\x6c\xd0\x77\xbb\xa2\xb8\x00\x93\xbc\xd3\xc4\x5d\x95\x5b\x7e\xd0\x54\x8d\x1d\x32\xc9\xac\xf7\x52\x65\x41\xb1\x39\x54\x2b\x70\x86\x63\xa4\xd4\x72\x7e\x4f\x8d\x8f\xa0\x63\xf8\x9b\x3e\xea\x86\xf7\xcd\x98\xc3\xff\xe7\x74\xd4\x39\x85\x47\xea\x2b\xdd\x31\x5d\xdc\xcf\x31\x00\xb7\xda\xac\xda\xbe\x37\x61\x27\x1c\xae\x55\xc1\xfc\xe2\x64\x7e\xb9\x93\x0a\xb7\xec\x79\xdd\xff\xaa\x40\x93\xc7\x6e\x49\x31\x90\x50\x9a\x3a\x3e\xab\x39\x89\xae\xb8\xc9\xd1\xb3\x87\xda\xeb\x36\x8f\x9d\x57\x42\xea\x4b\x13\x8e\xb3\x50\x12\x9d\xf2\x3a\x79\xd1\xc6\x05\x90\x83\x30\xe0\xd0\x95\x6e\x35\x98\x0f\x1f\xe9\x55\x07\x63\x06\xcd\x6c\x93\x7b\x15\x6a\xcc\x94\xf6\x48\xe3\xbd\xb5\xc8\x25\x13\x5a\x68\xad\x4b\xbe\xb3\x1e\xcc\x2f\xbe\x7d\xfd\x63\xba\x7f\xa1\x7c\x2f\xb1\x3a\xdb\x6f\x28\xbd\xaa\x67\x56\xfc\x5f\x00\x00\x00\xff\xff\xc4\x2e\xff\x49\x77\x0d\x00\x00"), - }, - "/charts/gateways/istio-ingress": &vfsgen۰DirInfo{ - name: "istio-ingress", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - }, - "/charts/gateways/istio-ingress/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 289, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\x8e\xc1\x6e\xc3\x20\x10\x44\xef\x7c\xc5\x2a\xf7\x40\xf1\xa5\x0a\x52\x7b\x6e\x7f\xa0\x77\x0a\x1b\xbc\x2a\x66\x11\x4b\x9c\xfa\xef\x2b\x9b\x34\x17\x84\x66\xe6\xcd\xac\xaf\xf4\x85\x4d\x88\x8b\x83\xd5\xaa\xe2\x17\x74\x40\xd2\x89\xcf\x54\x52\x43\x11\xb5\xfe\xfb\x56\x5b\xfd\xa2\x3a\xe5\x8c\xed\x09\x9d\xde\xdf\x26\xfd\xaa\xa7\x93\x8a\x28\xa1\x51\xed\x87\xfc\x81\x79\x81\x30\xfb\xd6\xe1\xca\x0d\x22\xd6\xcc\x1b\x95\x04\x9f\x7b\x37\x24\xdf\xf1\xee\x37\x51\x3f\xb8\xdd\xb9\x45\x71\x0a\xe0\x3c\x86\xc7\x6f\x8c\x3f\x72\x87\xf4\x64\x84\x6f\x2d\xe0\x03\x99\x7b\xaf\xce\x98\x44\x7d\xbe\x7d\xeb\xc0\x8b\x39\x4a\xc6\xab\xb0\x24\x2a\xe8\x20\x71\xaf\x59\x51\xd8\x4f\xdb\x09\x71\x66\x24\x34\xb1\xb9\xfa\x75\x77\xc4\xf8\x12\x1b\x53\x3c\xdb\xcb\xf4\x6b\x2f\x93\xae\x25\xa9\xbf\x00\x00\x00\xff\xff\x62\xec\xca\x7e\x21\x01\x00\x00"), - }, - "/charts/gateways/istio-ingress/NOTES.txt": &vfsgen۰CompressedFileInfo{ - name: "NOTES.txt", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 2044, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\x55\xdd\x8e\xdc\x36\x0f\xbd\xd7\x53\x10\xf8\x2e\x92\x00\xb6\xf3\xa5\xbf\x41\xee\xb6\x1b\xa0\x18\xa0\x29\x82\xee\xb6\xf7\xb4\x45\xdb\xcc\xea\xc7\x15\xa5\x99\x9d\x3e\x7d\x41\xd9\x9e\x9d\xd9\x5e\xda\x12\xc9\xc3\x43\x9e\x23\x73\x3f\x63\x98\x48\x3e\x99\x16\x84\x16\x4c\x98\x09\x02\x7a\x92\x05\x07\x02\x74\x2e\x9e\xf4\xb0\x05\x42\x61\x4a\x90\x68\x88\x61\xe4\x09\xe2\x08\xdf\x8a\x64\xc8\x33\xc1\x84\x99\x4e\x78\xd6\x6b\x8f\xbf\x3d\x80\xd0\x90\x28\x0b\x60\xb0\x60\xa3\x47\x0e\x35\x25\x78\x0c\x38\x91\xa7\x90\x81\x05\x58\xa2\xc3\x4c\xb6\x81\x31\x26\xe8\x29\x67\x4a\x1a\x5a\x12\xe7\x9a\x4a\xd8\x2f\x8e\x47\x26\x0b\x6b\xcd\x92\x30\x73\x0c\x7a\xe6\x8b\xcb\xbc\x38\x82\x23\x25\xe1\x18\x44\xf1\x28\x14\x0e\x53\x22\x11\x18\x30\x40\x4f\x50\x44\x0b\xe4\x08\x9e\x03\x7b\xfe\x87\xa0\x2c\x53\x42\x4b\x90\x58\x9e\xc4\x98\xb6\x46\x05\x3a\xc1\x30\x63\xca\x1a\x20\xf5\x97\xa5\x11\x8b\xcb\x57\x64\x08\xa5\x23\x2b\x29\xc3\x10\x4b\xc8\xcd\xd6\x1f\x49\x78\x93\x21\xd1\xdf\x85\x13\x19\xb4\x96\x15\x24\x3a\xf8\xe3\x97\xbb\x7b\x58\x28\x79\x96\x0a\xb1\xd3\x6a\x57\x4d\x39\xec\xc9\xd5\x24\x6b\x69\xc9\xa9\x0c\xb9\x24\xea\x4c\x0b\xd8\xb3\xe3\x7c\x56\xe8\xa9\x04\x40\x58\xd8\xc5\x0c\x96\x2c\x0f\xca\x5a\x25\xed\x8a\xfb\xe6\xc2\x27\x8c\x29\xfa\x7a\x54\x99\xaf\x71\x1d\x3c\xce\x95\x72\xf0\x31\x11\xa4\xd8\x17\xc9\x0d\x08\x8e\x94\x20\x86\x9d\x14\x31\x8a\x66\x1d\x3a\x20\xf4\x9c\xd7\xfb\xa3\xa3\x67\x5e\x01\x75\x1b\x63\x2f\x40\x6a\x81\x76\xa1\xd4\xee\xdc\xb3\xec\x74\x58\xe0\xf1\x1a\x25\x04\x22\x2b\xda\x94\x94\x65\x89\x29\xc3\xd3\x47\x69\x25\x9f\xdd\x65\x72\x9d\x31\xff\x83\xaf\x7a\xa4\x58\x7a\x14\x1e\x60\x8e\x92\x5f\xed\x80\x39\x04\x88\xc9\x52\xd2\x64\xfb\x11\xd5\x5a\x0f\xdb\x9c\x62\xff\x8d\x86\xdc\x6c\x6b\x21\x19\x9d\x7b\xbf\x4f\xff\x82\x63\x49\xf1\xc8\x96\x00\xc1\xb1\x64\xdd\x22\x74\x0e\x14\x9a\x74\x5a\x43\x83\x17\x94\x9a\x86\x05\x4e\x28\x60\x63\x20\x38\xcd\x14\xf6\xac\x1c\xa6\x2d\x31\x87\x09\xc6\xe2\x1c\xb0\x64\x8e\xeb\x86\x70\x38\x46\x77\x24\x0b\x12\x3d\x81\x2d\x8b\x53\xe2\x38\x06\x68\xd7\x3a\x2f\xf0\xad\xe9\x63\x9e\x81\x2f\x03\x69\xe0\xd7\x8d\x38\xcd\xf4\x17\xa7\x5c\xd0\x6d\xfd\x75\xc6\x3c\x6e\xab\x7b\xd8\x97\xfe\x65\x85\x11\xde\x1c\xd1\x15\x92\xee\x8c\xde\xbd\x81\xb7\x42\x55\x0d\xa9\xa5\x67\xf4\x8b\xa3\x7d\x5a\xef\x1a\x38\xcd\x3c\xcc\x80\x25\xc7\x76\xa2\x40\xea\x01\x72\x61\xb1\x42\x6c\xcc\x86\x43\xae\xa6\xf2\x0a\x0e\x1c\xaa\xac\x25\x73\x25\x50\x84\x7b\x47\x4a\x71\x0c\xee\xfc\x6a\x44\x6b\xdf\x1c\xf6\x2a\xbb\x96\xd4\x22\x0a\x3a\xb3\x79\xcc\xbe\xe3\x89\x24\x77\xc6\xdc\x29\xb1\x21\x53\x52\x75\x6d\x6a\x14\x78\x0b\x99\x1c\x79\xca\xe9\xdc\x5c\x54\xd2\x97\x69\x43\x0e\x9e\x64\x06\x7a\x5e\x30\xa8\x0a\xe1\x5d\xb5\x86\x10\x4f\x6a\x0f\x2f\xcc\xc3\x91\xf1\x62\x05\x9e\x86\x19\x03\x8b\xaf\xcb\xf8\x85\xa7\x75\xe9\x56\x65\xd5\xd1\xb6\x72\x96\x4c\xde\x98\x83\x7e\xc1\x87\xee\xff\xc0\x61\x70\xc5\x6e\xee\x31\xed\x74\x71\xb8\x09\xe8\xe0\x81\xc3\xb0\x92\x40\xcf\x5b\x2b\x87\xaf\x4a\x1c\x8a\xc4\x81\x55\x52\xe6\xc4\x79\xbe\x59\xe5\x4a\x7a\x2c\xc1\x2a\x9f\x15\xe5\xee\x4a\x0d\x70\x5e\x05\x37\x44\xef\x29\x58\xd2\x3b\x9f\x8c\xf9\xd0\xc1\x61\x5d\xcf\x4b\x5b\xbb\x08\x59\xfd\x44\x7f\x5c\xb2\x74\xe6\xbb\x0e\xee\xe3\xa2\x7b\x76\xae\x1e\x3e\x50\xca\x3c\x56\x89\x5f\x6a\x5e\x47\xac\x13\xbb\x9d\xea\xea\xf5\xd2\x99\xef\x3b\xb8\x9f\x69\x78\x52\x39\xbc\x2e\x7e\x8a\xe9\x09\xda\x3a\xda\x6d\x13\xa1\x3f\x43\x3c\x52\x4a\x6c\xf7\x00\x65\x24\xc0\x7b\xca\xc3\x7b\xd5\xbe\x98\x1f\x3a\xf8\x12\x2d\x8f\xe7\x7a\xfc\xf9\xf7\x87\x3a\xff\x55\xfd\x68\x6d\xfd\x7b\x57\x49\x48\x76\x7f\x0a\x6e\xf0\x9a\x1f\x37\x4c\x90\x13\x8e\x23\x0f\xe6\xa7\x0e\x3e\x93\xa3\x4c\xb7\xc1\x43\x4c\x89\x64\x89\x61\x05\x13\x6f\xec\xeb\xd5\x34\xcd\xcf\x1d\xfc\xb9\x39\xca\xf5\xff\x06\x2c\x0b\xf6\x6e\x6f\x67\x93\xda\xfe\x4c\x7e\xbc\xa9\xbc\xbd\x90\x3b\xe9\xf2\xdf\x2d\xeb\x8c\x39\x8c\x50\x44\xd3\xe9\x95\xf5\x1d\x4d\x4d\xb5\xaa\xfb\xab\x41\x55\xf7\xbe\xac\xd1\x36\x1d\x01\xaf\xef\x74\x4f\xe0\xa3\xda\x10\x0a\x9c\xc8\xb9\xce\xfc\x1b\x00\x00\xff\xff\x0f\x9c\xa7\x90\xfc\x07\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 6, 18, 55, 0, 913972270, time.UTC), - }, - "/charts/gateways/istio-ingress/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 751335034, time.UTC), - uncompressedSize: 2899, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\xda\x30\x10\xbd\xf3\x2b\x46\x88\x43\xbb\x22\x09\xbd\x46\xea\x01\xa9\x7b\x58\xb5\xaa\xaa\x6e\xff\x80\x89\x27\xc1\xc2\xd8\xa9\xe3\x50\x50\xca\x7f\xaf\xec\x84\xc4\x09\xf9\xa2\x5d\xf5\x06\xe3\xf1\xbc\xf1\x9b\x37\x2f\x45\x11\x3c\x01\x89\x63\x26\x98\xbe\x80\x07\x7b\xad\xd3\x2c\x0c\x82\x43\xbe\x43\x25\x50\x63\xe6\x33\x19\x50\x19\x65\x41\x24\x45\x84\xa9\xb6\x3f\x62\x96\xe4\x8a\x68\x26\x45\x40\xb2\x8c\x25\xc2\x4b\x25\xf5\x84\xa4\x18\xc0\x53\x70\xbd\x2e\x16\x45\xe1\x01\xc5\x98\x09\x84\xa5\x89\xdf\x30\x96\x70\xbd\x2e\x00\x4c\x68\x5b\x85\xc2\x05\x00\x80\xc2\x9f\x39\x53\x48\x3f\xe5\x8a\x89\xe4\x35\xda\x23\xcd\x39\x13\xc9\x4b\x22\x64\x1d\x7e\x3e\x63\x94\x1b\xd8\xf2\x8e\x01\x61\x22\xe2\x39\xad\x50\x6e\x25\xbf\x0f\x14\x5b\x82\x5f\xe2\x03\xa4\x0a\x63\x54\x6f\x05\xf8\x6d\xa8\x5a\x85\x68\x2e\xa2\xa0\xd0\x47\xcd\x74\xd3\x55\xcb\x25\x6d\xaf\xc8\x31\xd2\x52\xfd\x40\x75\xcc\xc2\xea\xc0\x83\x23\xd1\xd1\xfe\xf9\x9c\x2a\xcc\x32\x26\x45\x7d\x62\xce\x0e\x78\x09\x61\x87\x9a\xf8\xed\xb9\x12\x15\xed\xeb\x34\x00\x99\xa2\x22\x5a\xaa\x10\x5e\x84\x13\x3e\x11\x9e\xa3\x53\xcf\xf4\xaf\x88\x48\x10\x56\x07\xbc\xac\x61\x75\x22\x1c\xc2\x8f\xe0\x27\x5c\xee\x08\xf7\x4d\xd5\xa6\xe5\x9a\xb6\x18\x12\x0d\xef\x6c\xf2\x6f\x60\x42\xbf\x87\x4d\x3b\xcb\x83\xa2\xb0\x25\xef\x2f\x57\xd4\x4d\x84\x56\x2e\x3d\xa6\x23\x8a\x31\xc9\xb9\xae\x3b\xab\xfe\x7f\x75\xd3\xfc\xd6\x25\xaf\x53\xb2\xef\x9d\x6d\x18\xe7\x42\x45\x74\xef\x2b\x66\x72\x7b\x63\xc1\x40\xf5\x3f\x78\x8e\x92\x46\xd4\x68\x8b\x3e\x32\xc1\xa9\xd9\x79\xf0\x0b\x59\xb2\xd7\x61\xdd\xb7\xcd\x68\xba\x2f\x17\x0d\x45\x84\xcd\x33\xff\x9f\x58\x7b\x64\xd5\x52\xcf\x0c\x66\x53\x49\xb7\x42\xb3\xad\xeb\x60\x15\x2b\x46\x3f\x9d\xe3\x2f\x64\x87\xbc\x51\x57\xe7\xd4\x2c\x6d\x2b\xc3\x36\xd1\x49\x0a\x5d\xe2\xc7\xeb\x57\x4f\xfa\x67\xf3\xec\x80\xcc\xf0\xcf\xce\x0e\x0e\x74\x7b\xf7\xde\xb7\xb3\xdf\x0e\xd2\x94\x03\x0f\xaf\xd1\xcc\xb9\x4f\xda\xb3\xb3\x55\x4c\x50\x3c\xaf\x61\xc5\x34\x1e\xed\x62\xcd\x19\xa2\x07\xdc\x0d\x3f\xb0\x2d\x46\xe0\x06\xca\x1f\xb1\x9d\x3a\xe7\x16\xea\xb5\xe8\x32\xa5\x5c\xa2\x76\xc2\xfd\x62\x59\xcb\x3d\x11\x9e\x99\x17\x66\x29\x67\x1a\x96\xeb\xe5\x48\x09\x97\x20\x63\x3a\xd6\x4c\x6d\x81\x9e\xef\xc0\x69\xf2\x2b\xd0\x13\xd4\x32\x95\x5c\x26\x97\xcf\x2d\x56\x9c\xe8\xb8\x12\xc6\xc6\x3f\xe5\xa9\x0f\xcd\x7f\x70\x2d\x3c\xeb\x05\x4e\x56\x43\xf8\x80\x38\xc6\xe4\x31\x43\x20\x0f\x48\x64\x86\x48\xfa\x64\xf2\x17\x42\x99\x2d\x95\x01\xb1\x0c\xc8\xa5\x37\x3c\x5b\x32\x50\x7f\xe8\x3e\x6c\x36\x23\x22\xfa\x13\x00\x00\xff\xff\x32\x58\x37\x71\x53\x0b\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/addongateway.yaml": &vfsgen۰CompressedFileInfo{ - name: "addongateway.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 1702, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xc4\x54\x51\x6b\xdb\x30\x10\x7e\xcf\xaf\x38\xbc\x3e\x0d\xac\x30\xf6\x66\xe8\xc3\xb6\x96\xad\xac\x1b\xa1\x29\x7d\x2d\x17\xf9\x92\x88\xc8\x92\x91\xce\x6e\x4d\xc8\x7f\x1f\xb2\x64\xcf\xa1\x09\xeb\x06\xa3\x7e\x72\x4e\xdf\x7d\xf7\xdd\x97\xcf\x7a\x07\xf7\x54\xd5\x1a\x99\x60\x6d\x1d\x30\x69\xaa\x88\x5d\x07\x58\x96\xd6\xc0\x06\x99\x9e\xb0\xf3\xb3\xfd\x1e\x2e\xd2\x0f\x28\x2e\x41\x99\x92\x9e\x41\x3c\xa0\x6e\xc8\x43\x36\xc0\x32\xc8\x94\x67\x65\x73\x65\x36\x8e\xbc\x4f\xf5\x0c\x0e\x87\xc0\xe0\xd0\x6c\x08\x2e\x22\x75\x71\x39\x32\x8a\x71\xec\x63\x7f\xf6\x38\xf0\xa5\x3e\xb5\x4e\x4d\x82\x0c\xae\x34\x95\xa1\x8e\xb5\x7a\x20\xe7\x95\x35\x05\x18\xe2\x27\xeb\x76\xca\x6c\x44\x3f\x5f\x28\x3b\x6f\x3f\xa0\xae\xb7\xf8\x71\xb6\x53\xa6\x2c\xe0\x6b\xa4\x9c\x55\xc4\x58\x22\x63\x31\x03\x30\x58\x51\x01\x51\x71\x58\x30\xce\x08\x55\x38\x1c\xf2\x24\x22\xe1\x7c\x8d\x92\x0a\x08\x30\x71\x47\x9a\xd0\x93\xf8\x39\xd4\x83\x1e\x00\x8d\x2b\xd2\x3e\x10\x03\x60\x5d\x47\xf0\x11\x67\x7f\xe4\x62\xf7\x09\xae\x80\xf0\x35\xc9\x40\xe1\x49\x93\x64\xeb\x22\x5d\xaf\xb1\x80\x63\x5b\x7b\x94\x6b\xc9\xa5\x99\x39\xd4\xd6\x71\x7c\x0f\x8f\x69\xaa\x15\xb9\xa9\x8c\x70\x3e\xc8\xe8\x11\xbd\x01\x5b\xe6\xda\xbf\x34\x60\x44\xd5\xce\xb2\x95\x56\x17\xf0\xed\xfe\x7e\xb1\x4c\x75\x1e\x56\x0d\x4f\x65\x4b\x2a\x60\x79\xf3\x63\x71\x7b\x3d\x16\xa3\xb8\x2f\xe4\x58\xad\x95\x44\xa6\x02\xe6\xc4\x72\xde\x2f\x33\x3f\xde\x25\x97\xe4\xd8\xcf\x59\x7b\x21\x1d\x4f\x46\xab\x16\x99\xbe\x53\xf7\xba\xde\x1d\x75\xa9\x77\x6b\x3d\x4f\x04\xe6\x90\xbd\xcf\x66\x79\x9e\xff\x6d\x6e\x1e\x94\xe3\x06\xf5\x92\x5c\xab\x24\x9d\x88\xcf\xcb\xe0\xb4\xb1\x25\xf7\xa9\xe7\x6d\x02\x34\x31\x20\x2e\x0f\xe3\xd7\x3c\x54\xff\x9c\xfc\x10\x8d\x01\x5d\x21\xcb\xed\xd4\xd1\x3e\x6d\x67\xd3\xe5\x6c\xc3\x34\x85\x97\xe4\x59\x19\xe4\xe0\xfc\x58\x1e\xfe\xaa\x13\xbb\x8a\xb3\x56\x09\xdf\xca\x78\x1a\x2f\x20\xb1\xd1\x76\x85\x5a\xd4\xce\x3e\x77\x42\xea\xc6\x33\xb9\x2b\x5b\xa1\x32\xd3\x1c\xf7\x81\x3a\xfa\x42\xce\x7d\x27\x25\xf9\x45\x5a\xe6\x1f\x22\x73\xf5\x7b\xd1\xbb\x46\xbf\x2a\x33\x6f\x98\x91\xff\xeb\x3c\x3b\x5c\xaf\x95\x5c\x58\xad\x64\x17\x55\x4f\x2e\x8e\x78\x6d\x5c\xdd\x2c\x3f\x7d\xbe\xbd\xee\xad\xde\xef\x73\x20\x53\xc6\x8b\x7f\x7c\xfd\x15\x00\x00\xff\xff\xfe\x88\xcb\x9a\xa6\x06\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/autoscale.yaml": &vfsgen۰CompressedFileInfo{ - name: "autoscale.yaml", - modTime: time.Date(2019, 8, 6, 18, 55, 0, 913972270, time.UTC), - uncompressedSize: 701, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x92\x41\x6b\xe3\x30\x10\x85\xef\xfe\x15\x83\xd9\xab\x1d\xb2\x47\xc1\x1e\x02\xbb\xb0\x97\x96\x62\xda\xdc\x27\xf2\xc4\x0c\x95\x25\x21\x8d\xd3\x24\x26\xff\xbd\x48\xb6\x43\x68\x13\x7a\x9c\x37\xc3\xc7\x7b\x8f\x19\x47\xf8\xd5\xa1\xd0\x07\x9e\x40\xfd\x01\xb6\x2d\x1d\xa1\xde\xa2\x19\x28\x42\x39\x6f\x62\x09\x25\x47\x61\x57\xb1\xed\x02\xc5\x38\xeb\x25\x5c\x2e\xc5\x38\x56\xc0\x7b\x40\xdb\x5e\x49\x35\x0e\xe2\xa2\x46\x43\xff\x2c\xee\x0c\xdd\xdb\x3c\xb1\xbd\xa7\xe2\x31\x31\xd1\xf3\x96\x42\x64\x67\x15\x2c\x3b\xb6\xdd\xea\xf0\x7b\x47\x82\xeb\xe2\x9d\x6d\xab\xe0\xbf\x0b\x7c\x76\x56\xd0\xbc\xb8\x76\xb3\x20\x42\xd1\x93\x60\x8b\x82\xaa\x00\xb0\xd8\x93\x82\x7b\xe6\xe7\x65\xf4\xa8\x49\xc1\x38\x42\xdd\x90\x21\x8c\x54\x3f\x2f\x72\xb2\x02\x60\x70\x47\x26\x26\x18\x00\x7a\xff\x90\x06\x10\x26\xc0\x77\x5a\x02\x45\x4f\x3a\x41\x7a\x3c\x36\xe4\x0d\x6b\x8c\xf9\xf0\x61\x09\x00\x3d\xdb\x9f\x4e\xd9\x4e\xa7\x79\x7a\xc5\xd0\x91\x34\xb4\x5f\xcc\xde\xb4\xe8\x7d\x5c\x1d\xd6\x59\x9f\xda\xfb\x4b\xde\xb8\x53\x4f\x56\xb2\x38\x17\xf5\x35\x54\x4f\x12\x58\xcf\xe9\x2b\x90\x93\x27\x05\x0d\x45\x37\x04\x4d\x59\x4c\xb1\xa7\x51\xcd\xf3\x02\xd3\x7e\xb8\x2a\x92\xad\x6d\x0e\x14\xb0\xa3\x37\x61\xc3\x67\x94\xec\xec\x36\x97\xf6\x43\xfd\xe8\x32\xe5\xac\xaa\x2a\xff\x1b\xd9\x36\x8d\x9f\x01\x00\x00\xff\xff\x28\x11\x54\x5b\xbd\x02\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/certificate.yaml": &vfsgen۰CompressedFileInfo{ - name: "certificate.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 1041, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x53\xcd\x8a\xdb\x30\x10\xbe\xfb\x29\x86\xec\xc2\x5e\x2a\x65\xd3\x53\x31\xf4\x50\x42\x0f\xa5\x65\x0f\x29\xec\x7d\x6a\x7f\xf1\x8a\xd8\x92\x57\x33\x4e\x1b\xcc\xbe\x7b\xb1\xac\x4d\x72\x70\x29\x39\x59\xcc\x58\xf3\xfd\x8d\xc6\x91\xee\x1b\x56\xfc\xe6\x13\x95\x9f\xc9\xf9\x1a\x7f\xc8\x3e\x73\x3b\x40\x68\x95\x3b\xb2\xa2\x95\x13\x75\xc1\x38\xdf\x44\x88\xe4\xfa\x8a\xde\xde\x8a\x71\x24\xb7\x3f\x0f\xb1\x15\xa2\xba\xbd\xab\x58\x21\x53\xdb\x18\x53\xdc\xd1\x97\x41\x83\x69\xe0\x11\x59\x41\x5b\x44\xed\xd8\x73\x83\x48\xdf\x44\x06\x44\x62\x5f\xd3\xd5\x55\x8a\x78\x1d\x20\x2a\xb6\xb8\xa3\x1d\x5e\x07\x17\x21\xf4\x80\x8e\x5d\xfb\x40\x1a\xe8\x17\x48\xa0\x1f\x68\x1f\x22\xfd\x80\x3e\x08\x7d\xf5\x55\x3c\xf5\x4a\x83\xc0\x16\x05\xf7\xee\x19\x51\x5c\xf0\x65\x9a\x9b\xe1\xec\xe1\x93\x58\x17\xd6\xc7\x0d\xb7\xfd\x0b\x6f\x8a\x83\xf3\x75\x99\x49\x14\x1d\x94\x6b\x56\x2e\x0b\x22\xcf\x1d\x4a\x6a\xa1\x82\x79\x70\xae\x49\xcf\x15\x4a\x1a\x47\xb2\x3b\xb4\x60\x81\x7d\x7a\x2f\x4f\x7a\xa5\x47\x35\xdd\xe7\xaa\xc3\xf4\x25\x12\xc4\x23\x62\x49\x2f\xaa\xbd\x94\xeb\xf5\xd4\x31\xc7\xc7\x8f\x96\x7b\x67\xaf\x00\x6c\x88\xcd\xba\x76\x11\x95\x86\x78\x4a\x57\x93\xde\x04\x76\xf6\x37\x95\x26\xa0\xa9\xdf\x47\x77\x64\xc5\x77\x9c\x7e\xa2\x8a\xd0\x1d\xf6\x33\xe6\x32\x7f\x4a\x1c\x1e\x37\x25\x8d\x73\x30\x37\xda\xb4\xbd\x04\xb4\xe0\xd5\xd2\x86\x98\x69\xa8\xdc\x68\x9d\x24\x2d\x4f\xff\x1f\xea\x52\x6c\x67\xd1\xcb\x92\x33\xf5\x76\x10\x45\xcc\x41\x13\x55\xa1\xeb\x82\x9f\x31\xae\xed\xbd\xd4\x67\x8f\x6b\x2f\x89\x63\x59\x8c\xa3\xa1\xc8\xbe\x01\xdd\x1f\x90\x1e\xcb\x3f\x77\x9e\xc8\xa4\xa1\xd3\x7f\xe9\x85\x18\x82\xaf\xe7\xce\x65\x2f\xaa\xe0\xf7\xae\x99\xcf\xe6\x3d\x99\x9c\x1e\x51\x96\xbc\x6d\x59\x24\xdb\x90\x7b\x75\xe8\xd8\xf9\x5b\x19\xcd\x28\xcb\xac\xae\x8e\xc5\xdf\x00\x00\x00\xff\xff\xfb\x7e\x3b\xcb\x11\x04\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 9817, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5a\xdd\x73\xdb\x36\x12\x7f\xf7\x5f\x81\xe1\x65\xfa\x31\x73\xa4\x2c\x37\xe9\x5c\x39\x93\x07\x9d\xa4\xa6\xce\xd9\x92\xc6\x52\xd2\xe9\x93\x06\x06\xd7\x12\x62\x10\x60\x01\x50\xb6\xea\xf8\x7f\xbf\x01\x49\x51\x04\x08\x4a\x4a\xbf\x92\x87\xfa\xc9\xc6\x7e\x72\xf7\xb7\x8b\x05\xe0\xa7\x27\xf4\x62\x85\x35\x3c\xe0\x2d\x8a\x5f\x23\xca\x13\x78\x44\xd1\x7b\xcc\x72\x50\x28\xa8\x28\x2a\x40\x01\x55\x9a\x8a\x90\xf2\x95\x04\xa5\xaa\xf5\x00\x3d\x3f\x9f\xe1\x8c\xbe\x07\xa9\xa8\xe0\x31\xc2\x59\xa6\x7a\x9b\xfe\xd9\x3d\xe5\x49\x8c\x46\x90\x31\xb1\x4d\x81\xeb\xb3\x14\x34\x4e\xb0\xc6\xf1\x19\x42\x1c\xa7\x10\x23\x9f\xbe\x8a\xa8\x32\x4c\x20\x46\x4f\x4f\x28\xba\x01\x06\x58\x41\x34\xd9\x2d\x1b\x8b\x08\x31\x7c\x0b\x4c\x19\x65\xc8\xd8\xec\xd4\x86\x4a\x42\x8c\x3c\x14\x59\xaa\x6e\xdb\x31\x26\x54\x06\x24\x3e\x7b\x7a\x0a\x11\xbd\x43\x5c\xe8\x3a\x48\x11\xce\xb5\x50\x04\x33\x18\x73\x7c\xcb\x20\x31\xdc\x15\x5f\xcd\x23\x21\x63\x94\xe0\xa1\xc8\xb9\x2e\x1d\xae\x56\x54\x61\xad\x93\xcf\xe8\x01\xa6\xc0\x95\xe9\x97\x14\x5e\x1b\xab\x7e\x45\x48\x01\x03\xa2\x85\x2c\x43\x91\x62\x4d\xd6\x57\x8d\xd8\x1c\x8b\x4e\x77\x7c\x34\xa4\x19\xc3\x1a\x2a\xc5\x8d\xf4\x99\x1f\x66\xd9\x38\x6e\xa5\xcb\x4e\x15\x38\xf8\xd5\x97\xe9\x0a\x72\x6a\xab\x34\xa4\x41\xf1\xb9\xe5\xcf\x1a\x24\xd5\x78\x05\x31\x5a\x50\xc6\x40\xd6\x84\x3a\xa5\x85\x64\xbd\x4c\xd6\x58\xea\x18\xed\xc0\x6c\x47\xb0\x70\x9f\x73\xa1\xb1\xa6\x82\x37\xbe\x49\xd1\x04\x08\x96\x51\xa1\x2b\xa2\xa2\x47\xf9\x07\x20\x3a\x46\xc1\x1d\x66\x0a\x82\x56\xd6\x33\x91\x0c\xf6\x8a\xca\x54\x21\x2d\x7e\xc1\x29\xeb\x64\xfa\x58\x54\x1c\xd7\xe8\x3f\x15\x7f\xc3\xaf\x12\x83\x95\x33\x20\x37\x94\xc0\x80\x10\x83\x95\x49\x67\x05\x85\x15\x63\x88\x4b\xce\x9d\x93\x55\x45\x47\x2b\x26\x6e\x31\x8b\x32\x49\x85\xa4\x7a\x3b\x64\x58\xa9\x1d\xe6\x4b\x4b\x2d\x52\x8c\x02\x53\x21\xc7\x15\x04\x2e\x4a\x7d\x76\xc5\xe3\x36\x82\xa2\x72\x86\x42\xc2\x28\x4f\xb3\xbd\x69\xca\xa9\x1e\x0a\xae\x31\xe5\x20\x1b\x99\x08\xab\x96\x51\xca\x85\x44\x48\x08\x93\x3c\xcd\x76\x46\x48\x29\xa3\x50\xd0\x0b\xfc\x16\x69\x8a\x57\x8d\x6f\x2c\x8c\xa5\x05\x82\xbc\xdf\xd6\x14\x09\x9c\xaa\x3c\x2e\xbf\xce\x6f\xd1\xf3\x73\xef\xb0\xe2\x8f\x28\x81\x3b\x9c\x33\x8d\x82\x62\x79\x73\x61\x9a\x69\xdc\x16\xd2\x78\xe5\xc6\xd6\x71\x62\x96\x33\x36\x13\x8c\x92\x6d\xd9\xcb\x6c\x79\x87\xa5\x69\x78\xc0\xca\xde\x6e\xa9\x24\x22\x4d\x31\x4f\xe2\xc6\x92\xc9\x40\xef\x96\xf2\x9e\x5a\x37\x56\xb1\x5c\x29\x97\x2b\x24\xce\x82\xda\x2a\xa2\x19\x0a\x1f\xd0\x3d\x48\x0e\x2c\x32\xc9\x5b\x66\x58\x6b\x90\xfc\x75\x6f\x83\x65\x8f\xd1\xdb\x5e\x01\xe5\x9e\xa1\x95\x41\x42\x5f\x7d\x85\x72\x46\x53\xaa\x51\x48\x50\xce\x8b\x5f\x21\x69\x28\x57\x40\xf2\x02\x80\x82\x6b\x78\xd4\xb6\x23\x99\xa4\x1b\xca\x60\x05\x49\x8c\xb4\xcc\xa1\x1d\x3c\xd2\x80\x99\x5b\xc7\x2a\x51\x15\x44\xad\x68\xef\x50\x58\x15\x5c\xa8\x12\xe5\x05\xa0\xa5\xe7\x30\xf0\xbc\xac\x7f\x04\x70\x5e\x85\x5f\x00\xa8\x80\x6f\x9a\x19\xda\x85\x32\x18\x4f\x06\xff\xbd\x1a\x2f\x7f\x9e\xde\xfc\xef\x6a\x3a\x18\x2d\xe7\xa3\x79\x60\x65\x72\x63\xcc\xee\x5b\x6e\xb7\x8a\xcb\xc9\x9b\x9b\xf1\x7c\xbe\x7c\x33\x58\x8c\x7f\x1e\xfc\xd2\xad\xc9\xe0\xc1\xab\xc8\xd5\x30\x19\x5c\x8f\xe7\xb3\xc1\x70\xec\xd1\xf3\xa3\x14\xa9\x0d\x39\x84\xee\x28\xb0\xe4\x06\xee\xdc\x75\xb3\x3b\xee\x27\xa4\x4d\xbf\x45\x2e\x04\x67\x58\xaf\xe3\x7a\x9f\x8d\xea\x31\xa8\xc1\xbd\x11\x2c\x4f\xe1\xda\xb4\x75\xe5\x8b\xa6\xbd\x13\xa8\x44\xe5\x89\xca\xb0\x5e\x5b\x06\x53\x23\x5e\x1a\x2b\xaa\x4f\xe6\xbc\x57\x09\x2e\x9b\xbb\xb2\x83\x8a\xd0\x9a\xda\x8a\x1a\xfd\xa7\xfb\xfe\x05\x85\x92\x09\xa9\x9d\xae\x6a\x4c\x4b\xcc\x57\x80\x5e\xdc\xc3\xf6\xdf\xe8\xc5\x06\x33\x33\xaa\x37\x46\x0a\xa9\x95\xad\xc6\x24\xac\x6e\x71\x33\x61\xa6\x1f\xd3\x1d\x36\x26\x0c\x42\x6a\x97\xd9\xfb\x75\x27\x58\x4e\x41\xad\xc7\x8f\x19\xe6\x06\xdb\xb3\xbf\xca\x8d\x96\x8e\xfe\xab\xf3\x1f\xce\x9d\x32\xca\xa4\xd0\x82\x08\x16\xa3\xc5\x70\xe6\xd0\x4a\xe8\xae\xb5\xce\x42\xe0\x1b\xb1\x35\xf8\x4d\x0f\xec\x64\x21\x2a\x01\xde\x5c\x91\x22\xd7\x8d\x49\xb3\xd8\xec\xc2\x44\xa4\x98\x72\x6b\xf1\xc5\x37\xb3\xe9\x68\xdf\x3b\xbe\x8d\xd4\x86\x44\x5d\x60\x24\x2c\x57\x1a\xe4\xa8\x50\xd3\xfc\xec\x43\xd3\x13\x13\xab\x2b\xd8\x00\xb3\xc3\x64\xdc\x29\xe8\x57\x15\xf9\x75\x97\x51\x9f\x7c\x15\xf9\x13\x3d\x20\x22\xcd\x04\x07\xae\xaf\x0e\xbb\x32\x74\xf9\x3a\x7d\x3a\xa8\xf1\x54\xe7\x98\x58\xad\x28\x5f\x45\xcc\xef\x12\x13\xab\xa5\xc8\x75\x96\xeb\x25\xeb\x70\xa6\x53\xc3\x27\xb8\x30\x50\x6f\x95\xe0\x7e\xf3\x58\x2d\x3f\x28\xc1\x5d\xb5\x6d\xe6\x44\x62\xca\x47\xb9\x2c\x4e\x09\x16\xed\xeb\x97\xaf\xd4\xd7\xe8\x5f\xdd\x0c\x61\x98\x61\x09\x5c\xcf\xd7\xb9\x4e\xc4\x43\x87\x96\x7e\x7a\x6e\xd4\x9c\xc0\x1a\x86\x44\x70\x0e\x44\x2f\x68\x0a\x22\xd7\x8e\x9e\x42\xcd\x01\x8e\x70\x77\x22\x19\x96\x58\xb7\x88\x07\x4f\x8c\xa5\xf4\x6f\x34\xbb\xa7\x7c\x90\x24\x86\xe5\x48\xf4\xb5\xc4\x04\x64\x54\x8a\x44\xb8\x94\x71\x83\xeb\xe9\xf1\xc7\xc4\xea\x2d\xc8\x63\x12\x18\xa4\xa0\xe5\xd6\xb9\xa0\xd8\xdb\xab\xd4\x7a\xcc\xfa\x44\xe3\x1f\x5e\xf6\xfb\x6d\xc3\x5e\x9d\x1e\x5e\x1b\x4b\xee\x60\x5b\x34\xbf\x6b\xd0\x92\x12\x35\x2f\xb3\xd2\x86\x9e\x87\xc9\x8d\x7e\x15\xc6\x43\x7a\xa3\xb5\x50\xba\xda\x52\x0f\xf2\xb9\xfb\x40\x67\x49\x14\x8d\x62\x90\xa4\xb4\xd8\x68\x2c\x62\xd0\x7f\x75\x7e\x7e\x1e\xb8\xb8\xd3\x58\xe7\xca\xcb\x7c\xd1\x60\xf6\x43\xc9\xec\x38\x52\xb0\x19\xc3\x1c\xe6\xd5\x51\x63\xdc\x3e\x13\xd4\x05\x52\x33\x0f\x72\xbd\x2e\xf7\x7a\x8b\xe9\xfa\xdd\xe2\xdd\xe0\x6a\xb9\xb8\x9a\xbb\x95\x4e\x15\x11\x1b\x90\xdb\x76\x90\xfd\x9e\x15\x35\xd3\x89\xb6\x6a\x3e\xa3\x4c\x68\x0f\xe4\x5a\xb2\x71\xff\xd5\x79\xbf\xef\xd8\xf4\x21\xae\xa1\xd7\x2f\xd3\x46\x9e\x4f\xcd\x49\xb1\x9a\x4c\x27\xe3\x2f\x2f\x4a\xe7\xbf\x23\x4a\x2d\x19\x4f\x94\xbc\x25\xdb\xea\x50\xb9\xd2\xed\x29\xa1\x8c\x4d\x41\xac\x46\x11\xcf\x9e\xd6\x21\xeb\xad\x33\x09\x38\xa1\x1c\x94\x9a\x49\x71\x0b\xf6\x18\x7a\x87\x29\xcb\x25\x2c\xd6\x12\xd4\x5a\xb0\x24\x46\xdf\xd9\x33\x98\x99\xaf\xde\x80\x76\x8f\x3f\x59\x79\xd6\x58\x03\x66\x7a\xfd\x5b\xcf\x98\xd8\xba\x2c\xbb\xa9\xee\xc2\x9d\xea\x14\x59\x83\x99\xdd\x7e\x5a\x2c\xec\xa1\x8e\x72\xaa\x29\x66\x23\x60\x78\x3b\x07\x22\x78\x52\x5c\x93\x5a\x5a\x41\x52\x91\xd4\xc4\x0b\x8b\xa8\x72\x42\x40\xa9\xc6\xd7\xd8\xc2\xba\xdc\xca\xbc\xaa\x25\x28\x91\x4b\x02\x9e\xab\x83\x9a\xd4\x71\xfb\xb7\xa7\xd7\x17\x7f\xfd\x0b\xf7\xe6\x77\x2f\xe7\xa4\xb2\x3a\x3a\xdc\x1c\x54\xe2\xe6\xb4\xe3\xe8\x3d\x99\x8e\xc6\xc5\x98\xfa\xf7\x1d\x6e\x55\x06\x24\xe2\x22\x01\x53\x5b\x1e\x97\x76\x83\xf3\x67\x3a\x6e\x1f\xf0\xa8\x18\xe5\xbf\x90\x5b\x80\x9d\x6f\x97\x93\xf9\x62\x30\x19\x8e\x97\x97\xb3\xbf\x31\x85\xc5\x9e\x1a\x65\x22\xb1\xac\xee\x7c\xfa\x69\x3a\x5f\x7c\x0e\x7f\xcc\xb0\xe1\x75\xe8\x72\xbe\xb8\x9c\x2e\xaf\xc7\x8b\xc1\xf2\xcb\x43\x57\xc3\xb9\xe1\x74\xf2\xe3\xe5\x9b\x3f\x0f\x6b\xa7\x82\xe9\xc4\xab\x4f\xaf\xcf\xef\xe6\xe3\x9b\xe5\x7c\x34\x6f\xfb\xea\xb9\x65\xf3\xb6\x26\xcf\x7c\xda\x66\x38\x78\x01\xd1\x92\xd8\xf9\x69\xc6\xce\x7b\xd8\xba\x57\x09\x95\x7b\xd5\x25\x44\xdb\x98\xd7\x45\xfb\x45\xe3\xc0\x73\x4f\xdb\x8d\x60\x1f\xaf\xb7\xf3\xe9\x64\x39\x98\x4c\xa6\x8b\xc1\xe2\x72\x3a\xf1\xdf\x4e\x7e\x2c\x9b\x7f\x71\x82\x3c\xfa\x64\xd4\xff\xbe\xf5\x64\x54\x29\xeb\xb8\x28\x7c\x7a\xf2\xcc\x16\x47\x53\xfe\x09\x17\x89\x2a\x51\x16\x8f\xd9\xec\xa7\x9c\x6d\xab\x5b\xf8\xd3\xe0\xe0\xf1\x2f\x57\xb0\x30\x63\xcc\x83\x90\x7a\xbd\x7d\xfb\xa0\xfd\x9e\x96\xe3\x97\x16\xf7\xc0\x8f\xbb\x0a\x44\x82\x56\xbd\x82\xdb\x9d\x27\x8f\x22\xf5\x68\xd0\xfe\xb4\xbb\xd8\x23\x8e\xd9\x9f\x4e\x40\x6a\xd5\x69\x02\x34\xe9\xb5\x39\x0e\xe6\xa8\x2a\xbe\xfa\xb3\x8b\xa0\xbd\x2f\xe0\xd5\x81\x78\x33\x80\x72\xeb\x41\xb1\xe5\x88\x61\xa9\xff\x44\x1f\xd1\xaf\xb9\xd0\x2d\xfe\x53\xa0\xe3\x66\x05\x27\x09\x35\x35\x82\xd9\xfe\x15\xb1\x63\x10\xf3\xb2\xba\x8f\xb1\x4e\xbc\xcb\xb2\xaa\x2b\xea\x24\x4c\x9c\x8c\x07\x48\x33\xbd\x1d\x51\x19\xa3\xa7\xe7\xb3\x8e\x84\x77\x17\x48\xa7\x5d\x8f\x25\xb3\x59\x16\x89\x68\x04\x35\xeb\xaa\xe3\xdf\x55\x93\x87\xea\x31\x93\xe2\x03\x10\x0d\xd6\x03\x63\x3d\x4f\x37\xf1\x64\x3f\x79\x2f\x8c\x16\xff\xd9\xa2\xab\xec\x11\x82\xc7\x8c\x96\x57\x5a\xf5\x20\xff\xf2\xbb\x8b\x73\xf7\x94\x81\xf3\x84\x02\xdf\xfd\xcb\xc9\x09\xc7\x27\x6f\x66\xac\x85\x43\x75\x59\x56\x91\xf5\xfd\xc5\x4a\xe3\x55\x3f\x3a\xe9\x6d\x7f\xaf\x40\x64\x25\x98\xad\x6a\x39\xbd\x80\x0f\x15\xef\x61\x6f\x8d\xc4\xfe\x6f\x7f\x31\x77\x3a\xd7\x0a\xa1\xe3\x2d\x11\xfc\x8e\xae\x3e\xc9\xdb\x52\xe4\x1a\x67\x4d\x87\xf7\xec\x35\xf9\x8f\x7a\x8b\xef\xee\xcc\x11\x74\x6b\x35\x03\x4e\x58\x9e\x00\x0a\xcc\x19\x67\xc7\x10\xa0\x6f\x12\x4a\x34\x0a\x4a\x3c\xb9\x2f\x64\x25\xf3\xbc\xfa\x2f\x9e\xc6\xe3\x71\x73\xf9\xdb\x7d\x67\xfa\xde\xe9\x06\x3b\x93\xc5\x8c\xa0\xe9\xa0\xb6\x5a\xff\x53\x97\x2d\xea\x36\x2d\x2d\x18\x48\x77\x82\x69\x2c\xc6\xbe\xe6\xd9\x14\x6a\xab\xaf\xe2\xf4\xff\x00\x00\x00\xff\xff\x02\x76\x76\xfe\x59\x26\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/gateway.yaml": &vfsgen۰CompressedFileInfo{ - name: "gateway.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 991, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x53\x41\x6f\xda\x4c\x10\xbd\xfb\x57\x3c\x39\x39\x7d\x92\xcd\xd7\x26\x87\xca\x52\x0f\x28\x42\x6d\xd5\x12\xa1\x12\xe5\x3e\x78\x07\x58\x61\x76\x57\x3b\x03\x29\xb2\xf2\xdf\x2b\xaf\x31\x69\x08\x8d\x7a\x7d\xfb\x66\xde\x9b\x37\xb3\x6d\x8b\xeb\x15\x29\x3f\xd1\x01\xd5\x67\x58\x67\xf8\x17\xca\x47\x6a\x76\x2c\xc8\x8f\x2f\x92\x23\xb7\xa2\xd6\x17\xd6\xad\x22\x8b\x1c\xf1\x1c\xcf\xcf\xd9\x15\xa6\x64\x1d\xbe\xf4\x50\x89\x71\x08\x82\xed\x4e\x14\x0b\xeb\x0c\xd4\xe3\x7e\x3c\x9d\xcc\x67\xe3\xbb\xc9\xe8\x75\x79\x46\xc1\x3e\x72\x14\xeb\x5d\x05\xc7\xfa\xe4\xe3\xc6\xba\x55\x99\xa4\x4a\xeb\x47\xfb\x0f\xd4\x84\x35\xdd\x64\x1b\xeb\x4c\x35\x48\x64\x5b\x56\x32\xa4\x54\x65\x80\xa3\x2d\x57\x38\xeb\xdb\xc3\x12\xa8\xe6\x0a\x6d\x8b\xf2\x27\x37\x4c\xc2\xe5\xfd\x00\x77\xc6\x81\x86\x16\xdc\x48\xd7\x06\x88\x3d\xe5\x2d\xbf\xa3\x4a\xe0\xba\xa3\x09\x37\x5c\xab\x8f\x7d\x49\xf2\x79\x41\x5c\x38\xee\x39\x4a\x95\xb5\x6d\x01\xbb\x3c\x05\x5c\x6a\x23\xbd\x70\x81\xe0\xa3\xf6\x5d\x00\xb7\xdb\x2e\x38\x56\xb8\xbd\xbd\x19\x90\x34\xd5\x5a\x35\x48\x61\x78\x49\xbb\x46\x8f\x2f\x21\x7a\xf5\xb5\x6f\x2a\x7c\x7d\x78\x98\xcd\x13\xaa\xc3\x0c\xc0\xd6\x1b\xae\x30\xff\x36\x9d\xfd\x98\x1c\xa1\xde\xcd\x1d\x47\xb5\x4b\x5b\x93\x72\x85\x11\x6b\x3d\x4a\xee\xcf\x36\x52\xd4\x1c\x55\x46\xda\x48\x59\xc7\x17\x49\xbb\x27\xe5\xef\x7c\xf8\xb7\xca\x0d\x1f\x52\xe5\xda\x8b\x9e\x8c\x15\xc8\xff\xcb\x33\xa0\x8b\x84\x9d\x79\x2f\x86\x4f\xff\xbf\x49\xe1\xe2\xf0\x7f\x17\x01\xae\x30\x36\xc6\xaa\xf5\x8e\x9a\x24\x22\xb0\x0e\x9d\x57\xea\x2e\x7d\xe9\x23\x74\xcd\xc3\xea\x66\x89\x50\x80\xba\xd3\xdd\x89\x75\x2b\x18\x36\x29\x2c\x93\xaa\x61\x9d\x28\x93\x81\x5f\x26\xc5\xce\x59\xd6\xb6\x88\xe4\x56\x8c\x6b\x0a\xa1\xfb\x3c\xa7\x3d\xbf\x6a\xfb\xce\xa4\xdd\xe7\xa3\x10\xca\x24\x91\x78\x2f\x63\x0f\x6f\xee\x78\x82\x97\x12\xf8\x78\x1e\x41\x1f\xc0\x1f\x19\xff\x0e\x00\x00\xff\xff\xac\xc7\xf1\xce\xdf\x03\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/hosts.yaml": &vfsgen۰CompressedFileInfo{ - name: "hosts.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 1019, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xdc\x51\xb1\x8e\xdb\x30\x0c\xdd\xf5\x15\x84\x93\xa9\xa8\x55\x14\xdd\x0c\x74\x6a\xe7\x26\x68\x83\xec\x8c\x45\x38\x42\x6c\x49\x90\xe8\xa4\x07\x23\xff\x7e\xa0\xe4\x24\x97\x43\x6e\xb8\xe9\x80\xd3\x24\x91\x8f\x7a\x8f\xef\x4d\x13\x2c\x3b\x64\x3a\xe1\x13\x34\x3f\xc1\x3a\x43\xff\x41\x6f\xb1\x1f\x29\x41\x35\x77\x52\x05\x95\x4d\x6c\x7d\x6d\x5d\x17\x29\xa5\xb9\x5e\xc1\xf9\xac\xd4\x02\x36\xab\xdf\xab\x06\x22\xba\x8e\x60\xf3\x6b\x0d\xc1\x47\x4e\x5f\x01\x8d\x29\x57\xb5\x80\x17\x3c\xda\xf8\x01\xad\x93\xd9\x69\x9a\xa7\x96\x18\x82\xf0\x5f\x31\x7b\x9f\x38\x09\xa4\xae\x6b\x85\xc1\x6e\x29\x26\xeb\x5d\x03\x8e\xf8\xe4\xe3\xc1\xba\x4e\x67\x49\xda\xfa\x6f\xc7\xef\xd8\x87\x3d\xfe\x50\x07\xeb\x4c\x03\x5b\x1b\x79\xc4\xfe\x1f\xc5\xa3\x6d\x49\x0d\xc4\x68\x90\xb1\x51\x00\x0e\x07\x6a\xb2\x18\x0c\x41\xcb\x4b\x38\x4a\x3d\x05\x6c\xe7\xa6\xfe\x4b\x3d\x61\x22\xfd\xe7\x52\x2f\xb0\x1e\x77\xd4\x27\xf9\x08\x20\x16\xc8\x83\x01\xc1\xa6\x40\xad\xe0\xf2\x1e\x72\xa9\xa1\x7a\x45\xab\x1f\x7a\x52\x29\x80\x8b\xed\x65\xee\xde\x73\xf9\x93\x39\x94\x56\xf4\x23\x53\x91\x53\x83\xa1\xc4\xd6\x21\x8b\x4d\xb9\x24\x47\xf8\x6f\x0b\x0b\xa4\x6c\x52\x8e\xa4\x73\xc3\x02\xb8\x71\xd8\x51\xbc\xc7\xaf\x7d\xe4\x92\x55\x0d\xe4\x4c\x8e\xfc\xed\xdc\x66\xb1\x32\xf4\xd9\xe2\xfb\xf2\x9e\x68\x32\xc7\x80\xdc\xee\x2f\xf1\x64\xaf\xaf\xda\xc3\xec\x6a\x96\xf2\x31\x29\x3e\x07\x00\x00\xff\xff\xc3\xf2\x11\x45\xfb\x03\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/meshexpansion.yaml": &vfsgen۰CompressedFileInfo{ - name: "meshexpansion.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 2104, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\xd1\x6b\xdb\x3e\x10\x7e\xf7\x5f\x71\xd8\x7d\xfa\x81\xf5\x6b\x28\x1d\x9b\x61\x0f\xdb\x5a\xc6\xa0\x8c\xd0\x8c\xbc\x2b\xf2\x25\x11\x91\x25\x23\x9d\xdd\x04\xd3\xff\x7d\xc8\xb2\x93\x78\xc9\xd2\xa6\x5b\x96\xa7\x70\x3a\xdd\xf7\xdd\x77\x9f\xce\x4d\x03\x57\x0b\x4e\xf8\xc4\x37\x90\x7d\x04\xa9\x73\x5c\x03\x9b\x72\x55\xa1\x83\xb8\x3b\x71\x31\xc4\xd2\x91\x34\xa9\xd4\x0b\x8b\xce\x75\xf1\x18\x9e\x9f\xa3\xa6\x49\x41\xce\xfb\x3b\x6c\xa1\xcc\x8c\x2b\x56\xa0\x5b\xde\xaf\x4b\xae\x9d\x34\x9a\xa1\xe6\x33\x85\xb9\x4f\xe7\xa5\x9c\xa2\xf5\xd1\x0c\x34\xd2\x93\xb1\x2b\xa9\x17\xac\x2d\xcf\xa4\xf9\xbf\x1e\x71\x55\x2e\xf9\x4d\xb4\x92\x3a\xcf\xe0\x6b\x40\x8a\x0a\x24\x9e\x73\xe2\x59\x04\xa0\x79\x81\x19\x78\x04\xec\x11\xd2\x8e\x51\x77\xea\x4a\x2e\x30\x83\xa6\x01\xf6\x88\x0a\xb9\x43\xf6\xbd\x0f\x7b\x12\x00\x8a\xcf\x50\x39\x5f\x0d\xc0\x86\x94\xc3\x7c\x9f\xea\x4a\x14\x3e\xcd\xa1\x42\x41\xc6\x86\x2b\x2d\xdd\x0c\x86\x72\xb4\x59\xb6\x46\xdb\xd5\x4d\xa1\x34\x96\xc2\x7f\xff\xd3\x55\x31\x43\x9b\xc1\xe8\xf6\x7a\x34\xda\x46\x4b\x6b\xc8\x08\xa3\x32\xf8\xf1\x65\xbc\xcb\x6d\x7b\x24\x51\xa6\xa5\x54\x86\xba\xf8\xd2\x38\x72\xbb\x82\x29\xc4\xff\xc5\x27\xa1\xde\x5f\xbf\xbb\x7e\x35\x92\x90\xc4\x73\x54\xa7\xb0\xd2\x34\x8d\xce\x1d\xe1\x54\x5a\xaa\xb8\x9a\xa0\xad\xa5\xc0\x17\x27\x59\xbb\xd0\xf2\xe8\x72\xb3\xdc\xb6\x96\x86\x41\x06\x40\xe6\xaf\x0c\x5d\xdc\x9e\xee\xa3\x31\x57\x0b\x26\x54\xe5\x08\x2d\x53\x46\x70\xaf\x56\xff\x4a\x42\xc5\xdf\xf9\x92\x44\xd9\x25\x70\x12\xcb\x81\x43\x60\xef\x15\x32\x5c\x13\x5a\xcd\xd5\xd8\x58\x0a\xfd\x01\x58\x53\x11\xf6\x57\x72\x74\x24\x35\x27\xaf\xff\x76\x3c\xbe\xa5\xec\xaf\x74\xd3\x79\x65\x60\xa7\x43\xef\x26\x83\x4e\x92\xfd\x66\x6e\x6f\xfa\xc8\x96\x76\x72\x94\x79\x32\x24\xbf\xaa\x66\x98\xe6\xda\xb1\xf6\x8f\xdb\x38\xc2\xe2\x28\xc3\xe4\x57\x92\xc9\x21\xcf\xdb\x9b\x37\x79\xf5\x6e\xc7\xf0\xb1\x52\x2f\x9b\x35\xb7\x41\xed\x0f\x97\x35\xeb\xe1\x64\x8f\x55\x3f\x2a\x16\x59\x3e\x9f\x4b\x31\x36\x4a\x8a\x4d\x80\xf5\xb2\x3d\x60\x8d\x6a\x82\x44\x52\x2f\xce\x58\x57\xa4\xf6\x56\x42\x61\x72\xcc\xe0\xee\xdb\xe4\xd3\xe7\x87\xfb\x20\xf7\xe5\x77\xc3\x6e\x49\xfd\xab\xe5\xd0\x21\x7a\xd9\xaf\x5e\xaf\xfb\x9f\x2f\x85\xed\xee\x3e\xef\xf5\xbf\x8d\xee\xe9\x57\xdf\x52\x69\xbf\xf4\xa8\xdb\xaf\x78\xf4\x33\x00\x00\xff\xff\xc1\xf5\x1e\x0e\x38\x08\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 442, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x91\xc1\x4a\xc4\x40\x10\x44\xef\xf9\x8a\xfa\x81\x1d\xc9\x75\x6e\x8a\x47\x11\xf1\xb0\xf7\x4e\xa6\x37\x36\x76\x66\x86\x74\x67\x65\x09\xfb\xef\x12\xa3\x20\x44\xd1\x6b\x41\xbd\x7a\x33\xbd\x2c\x07\xc8\x09\xe1\x48\x3a\xb3\x85\x41\x4b\x47\x1a\x12\x9f\x68\x56\x7f\x2a\xe9\x5e\x6c\x9a\xab\x4b\xc9\x77\x73\x1a\xd8\x03\x67\xea\x94\x13\xae\xd7\x86\xaa\x1c\x79\x32\x29\x39\xa2\x16\x95\xfe\x72\x73\x6e\x3b\x76\x6a\x9b\x57\xc9\x29\xe2\x87\x7e\x33\xb2\x53\x22\xa7\xd8\x00\x99\x46\x8e\x90\x3c\x4c\x6c\x36\x90\xf3\x1b\x5d\x3e\x63\xab\xd4\x73\xc4\xb2\x20\x3c\xb3\x32\x19\x87\xc7\xaf\x78\xdd\x06\x94\x3a\x56\x5b\x31\x00\xd5\x1a\x21\xe6\x52\x0e\x3b\x1a\x30\x6d\x80\x3d\x6d\x03\x61\x6b\xee\x44\xac\x72\xbf\xe2\x47\xc9\xb7\x67\x12\x5d\xdf\x1d\xd1\x36\x80\xb1\x72\xef\x65\xda\xc6\x47\xf2\xfe\xe5\xe1\x9b\xcd\x5f\x3e\xff\x30\xfa\xcd\x69\x3d\x17\xe7\x8f\xdf\x7f\x0f\x00\x00\xff\xff\x8d\x12\x73\x93\xba\x01\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/preconfigured.yaml": &vfsgen۰CompressedFileInfo{ - name: "preconfigured.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 2405, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x55\x5d\x6b\x1b\x49\x10\x7c\xd7\xaf\x68\x36\x81\x40\x60\x57\x97\x4b\x0e\xcc\xc0\x3d\x08\x47\xb1\x4d\xfc\x21\xa4\xb5\xc3\x41\xc0\x8c\x76\x5b\x72\xa3\xd1\xcc\x32\xd3\x2b\x5b\x08\xff\xf7\x63\x3e\xd6\x27\x5b\x6b\x2e\x79\x38\xee\xee\xb5\xa7\xbb\xa6\xa6\xaa\xb6\x77\xb7\x83\xb7\x4b\xc9\x78\x2f\xb7\x20\x7e\x07\xd2\x35\x3e\x40\x71\x23\x55\x8b\x0e\xb2\x74\xe2\x32\xc8\xc8\x31\x99\x9c\xf4\xd2\xa2\x73\xa9\x9e\xc1\xe3\xe3\x60\xb7\xcb\x81\x16\xdd\x4c\xb1\x54\x66\x2e\x55\xb1\x3a\x72\x67\xb1\xb7\x40\x2d\xe7\x0a\x6b\xdf\x2b\x1b\xba\x41\xeb\xc8\x68\x01\x1a\xf9\xde\xd8\x15\xe9\x65\x11\xb0\x0b\x32\xc3\xcd\x07\xa9\x9a\x3b\xf9\x71\xb0\x22\x5d\x0b\x38\x89\xd7\x0c\xd6\xc8\xb2\x96\x2c\xc5\x00\x40\xcb\x35\x0a\x88\x6c\x64\xcb\x66\x89\x1a\xad\x64\xac\xf3\xd5\x91\xeb\xf8\xa5\x3e\xd7\xc8\x0a\x05\xec\x76\x50\x4c\x51\xa1\x74\x58\x5c\x76\x65\x4f\x07\x40\xc9\x39\x2a\xe7\x71\x01\x64\xd3\x74\xc0\xcf\x9f\x19\x4e\x6d\x04\x38\x44\xf3\x40\xae\xc1\xca\x83\x38\x54\x58\xb1\xb1\x11\x30\x60\xc5\x81\x57\xc5\x49\x57\x74\x40\x1e\xc2\x6e\xd0\x06\x4a\x39\x34\xc6\x72\xc4\x02\xd0\xed\x7a\x8e\x56\xc0\xd1\x2f\xa9\xd0\x58\xc3\xa6\x32\x4a\xc0\x69\x59\x4e\x7e\xed\xda\x82\x3e\x77\xcc\x4d\x28\xdc\x19\xc7\xe9\x7d\x39\x64\xef\xb3\xc1\x6e\xf7\x23\x6e\x9d\x32\x37\x2e\x12\xea\x67\xf1\xe9\xd3\xc7\x5e\x1a\xb3\x03\x1a\x2e\xaf\x71\x21\x5b\xc5\xe1\x84\x3b\xb5\x01\xd6\xa6\x46\x01\xb3\xb3\x8b\xc9\xf9\x38\x95\xe2\xe3\x8f\xd1\x32\x2d\xa8\x92\x8c\x02\x86\xc8\xd5\x30\x28\x39\x4c\xae\xe4\x15\x5a\x76\x43\x56\xae\xa8\x2c\x3f\xb1\xa0\x8d\x64\xfc\x8a\xdb\xbf\x19\x59\xe1\xf6\x55\x61\x50\x87\x94\xe6\x79\xee\xcb\x7b\x95\xc1\x2b\x29\x5f\xb7\x8a\xe9\x58\xb5\x8e\xd1\xfe\x83\x39\x0f\xd7\x54\xf1\x9a\xc3\x6c\xfe\x77\x92\x7e\x00\xf6\x2c\xcc\x2f\x14\x4f\x1a\x66\xa1\xf0\x2c\x62\xe1\xe5\xac\xdc\x8b\xc8\x7d\xf8\xad\x2f\x74\xe5\xf9\xac\x3f\x58\xa3\xeb\xf2\xea\x76\x32\x9a\xcd\xca\xd3\xe9\xd5\xf5\xc9\xa9\xb7\xf5\x67\x8d\x19\xeb\x8d\xd9\x7e\x21\xc5\x68\xff\x4f\xe6\x80\x7f\x97\x32\xb2\x3e\xdf\xc3\x7d\xd5\x24\x58\x84\x07\xc6\xb6\x1c\x14\x39\xf6\x3b\xf5\x42\x72\x75\xd7\x49\x1a\x0c\xba\xec\x31\xe2\xa9\xbd\xdc\x36\x28\xe0\x64\x54\x8e\xbf\x8d\xfe\x48\x17\x6a\x87\x96\x27\xc6\x11\x7b\xc1\xbb\x89\xf0\x8f\x11\x30\xfa\x52\x8e\xa7\x5d\xcd\xa2\x92\x4c\x1b\x2c\x8d\x00\xf4\xa2\x17\x89\x54\x91\x5c\x2a\x9c\xa6\xdb\xa4\x72\x1c\x8a\x0d\x97\xc1\x89\xfe\x11\xae\x9a\x6e\xe4\xd6\xe2\xbd\x25\xc6\xfd\xd1\xc8\xf8\x72\x5c\x7e\xbb\x9a\x7e\xdd\x3f\x38\x36\x7a\x41\xcb\x27\xbe\x1d\x44\x23\x99\xd1\x6a\x01\xd9\xf7\xef\x29\xbc\x6f\xb3\x97\x4d\x16\x1b\x25\x2b\x5c\xa3\x66\x01\x59\xe1\x36\x55\x71\xb8\xff\x1b\x6b\x1e\xb6\x45\x1a\xf9\x6c\xd6\x92\x34\x3c\x3e\x66\x09\x2a\x04\xf5\xcd\x1b\x28\x0d\xa0\x76\xad\x45\x90\x4a\x01\x5b\xb9\x58\x50\x05\x6c\xa0\xfb\x74\x80\x1c\xb4\x8e\xf4\x12\xd6\xfe\x2b\xf8\xc9\x6c\x7f\x46\xc7\xa4\xa5\xb7\x66\xda\x2a\xfc\xb1\x7c\xd7\x7f\x0d\x59\x3f\xf4\x2f\x05\xdc\xaf\x12\xf1\x7c\x87\xf4\x2f\xe8\xf4\xeb\x89\x8e\xde\x90\xa3\x39\x29\xe2\xed\x0c\x99\x49\x2f\xd3\x1f\x0e\x1f\x7c\xba\x4b\x13\xd7\xd4\xbb\xf7\xef\x12\x5c\x5a\xfe\xd0\x69\x3f\x31\x8a\xaa\xad\xe8\x5f\x37\x67\xb3\xf2\xec\xea\xf6\xe2\xba\xbc\x1e\x9d\x07\x07\xf7\x10\xfe\x0c\x00\x00\xff\xff\xc4\x3f\x22\x4f\x65\x09\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/role.yaml": &vfsgen۰CompressedFileInfo{ - name: "role.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 377, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x90\x31\x4f\xc3\x30\x10\x85\x77\xff\x8a\x93\xc5\x88\x8d\xba\x21\x4b\xcc\x6c\x0c\x1d\xba\xa0\x0e\x97\xe4\xd1\x9e\xea\xda\x91\xcf\x69\x81\xa8\xff\x1d\x39\x04\x16\xd8\xac\xef\x7d\x3e\x3d\xbd\x79\xa6\xbb\x03\x57\x5c\xf9\x83\xc2\x13\x49\x1a\xf0\x4e\x7e\xc7\x71\x82\x92\x5d\x13\xb5\x64\x45\xab\x64\x27\xe9\x50\xa0\xba\x72\x4b\xb7\x9b\x99\x67\x47\xf2\xf6\x7b\xc5\xeb\xa0\x1e\x89\xbb\x88\xa1\xc5\x3c\xca\x0e\x45\x25\xa7\x40\xa5\xe3\xde\xf3\x54\x8f\xb9\xc8\x27\x57\xc9\xc9\x9f\x1e\xd5\x4b\x7e\xb8\x6c\x3a\x54\xde\x98\x93\xa4\x21\xd0\x36\x47\x98\x33\x2a\x0f\x5c\x39\x18\xa2\xc4\x67\x04\xfa\xaf\x82\xd3\x41\x57\x41\x47\xee\x11\x68\x9e\xc9\x6f\x11\xc1\x0a\xff\xf2\x83\x5b\x13\xa2\xc8\x1d\xa2\xb6\x83\x44\xe5\x5b\xf9\xeb\x37\xb5\x4c\x11\x1a\x8c\x23\x1e\xe5\xb9\xe4\x69\xd4\x40\xaf\xd6\xee\x4d\xfb\xa7\x79\x2a\x3d\x16\xa2\xe8\x0b\xaa\x2e\xc1\x05\xa5\x5b\xe0\x01\xd5\xde\x93\xbd\x72\xed\x8f\xed\x11\x45\xab\xdd\x1b\xe7\xdc\xb2\x15\xd2\xb2\xcb\x57\x00\x00\x00\xff\xff\x41\x5e\x04\x78\x79\x01\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/rolebindings.yaml": &vfsgen۰CompressedFileInfo{ - name: "rolebindings.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 840009732, time.UTC), - uncompressedSize: 466, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x91\xbd\x4e\x2b\x31\x10\x85\x7b\x3f\xc5\x68\x75\x5b\xfb\x8a\x0e\x59\xa2\x80\x86\x8e\x62\x91\xd2\xcf\xda\x93\x65\x88\x33\x5e\x79\xbc\xe1\xc7\xca\xbb\xa3\x4d\x16\x28\x40\xa4\x3d\xe7\xf3\xd1\x27\x4f\x6b\xf0\x6f\xc4\x4a\x2f\xf8\x06\xfe\x06\x58\x22\xbd\x82\xdb\x60\x9a\x49\xa1\x5b\x1b\xed\xa0\x63\xad\x9c\x2d\xcb\x58\x48\x75\xcd\x3b\x38\x1e\x4d\x6b\x16\x78\xfb\xb5\xe2\x34\xaa\x23\xc1\x21\x51\x5c\x6a\x9c\x78\x43\x45\x39\x8b\x87\x32\x60\x70\x38\xd7\xa7\x5c\xf8\x1d\x2b\x67\x71\xbb\x6b\x75\x9c\xff\x1f\xae\xcc\x8e\x25\x7a\xe8\x73\xa2\x3b\x96\xc8\x32\x9a\x3d\x55\x8c\x58\xd1\x1b\x00\xc1\x3d\x79\xf8\x4d\xc2\x6a\xd4\x15\xd0\x09\x03\x79\x68\x0d\x5c\x4f\x89\x50\xc9\x3d\x7c\xc6\x8b\x0b\x40\xc2\x81\x92\x2e\x83\x00\xe5\x8c\xfc\xe4\x17\xb4\xe4\x44\x3d\x6d\x17\x12\x27\xbe\x2f\x79\x9e\xfe\xf0\x37\x00\xdf\xfa\x97\x6d\x75\x1e\x9e\x29\x54\xf5\xc6\xae\xef\x1e\xa9\x1c\x38\xd0\x6d\x08\x79\x96\x7a\x61\xe1\xcc\x5a\x5c\x61\x6b\xed\xe9\x08\x24\xa7\x0f\xff\x08\x00\x00\xff\xff\x70\xd4\x83\x38\xd2\x01\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 1363, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xc4\x54\x4d\x8b\xdb\x30\x10\xbd\xfb\x57\x0c\x26\xc7\xda\x50\xe8\x49\xd0\x43\x0b\x3d\xf4\x52\xc2\x6e\x59\xe8\x71\xa2\x4c\x52\xb1\xf2\x48\x95\x94\x34\xc1\x9b\xff\x5e\xc6\x92\x9d\xb8\xc9\x7e\xdc\xf6\x92\x30\x9a\x79\xf3\xde\x7c\xb9\xef\x61\xb1\xc5\x44\x7f\xf1\x08\xea\x33\x18\x5e\xd3\x01\xda\x07\xb4\x3b\x8a\x50\x17\x4f\xac\xa1\x36\x31\x19\xd7\x18\xde\x06\x8a\xb1\xbc\xd7\x70\x3a\x55\x7d\xdf\x80\xd9\x00\xbb\x34\x65\x6a\xf5\x2e\x26\xd7\xdd\x53\xd8\x1b\x4d\x12\x84\xde\x3c\x50\x88\xc6\xb1\x82\xfd\xc7\xea\xd1\xf0\x5a\x41\xf1\x57\x1d\x25\x5c\x63\x42\x55\x01\x30\x76\xa4\xe0\x16\x59\x71\x46\x8f\x9a\x14\xf4\x3d\xb4\x77\x64\x09\x23\xb5\x3f\xc6\x67\x61\x02\x40\x66\x97\x30\x19\xc7\x51\x32\x02\x88\xc2\x80\xbc\x25\x58\x3c\xd2\xf1\x03\x2c\xf6\x68\xa5\xd8\x49\x6e\xcc\x42\xbe\x9c\x81\x39\x93\x40\x07\x0c\x9c\x4e\x03\xe5\x80\x7c\x82\x3f\x3b\x97\xe8\x1c\xd2\x00\xf1\x3a\x9b\x16\x57\x64\x0b\x2d\x7a\xff\x6c\x25\x00\x21\x8b\xbf\xae\x44\x12\x45\x4f\x5a\x8d\x9d\x9d\x64\x5a\x87\xeb\xaf\x68\x91\x35\x85\xef\xcb\x42\x38\x7b\x53\x50\x5f\x0c\xf4\x1a\x50\x57\x17\x6a\x5f\x4a\x7f\xef\x76\x41\xd3\x9d\x34\x2d\x5e\x13\x5d\x7a\x45\x26\x24\xf7\x0b\x3b\xfb\x86\x54\x4f\xc3\x86\x71\x82\x4f\xa3\x82\x67\xc4\xd0\x21\x51\x60\xb4\x3f\x03\x6e\x36\x46\x2f\x9d\x35\xfa\x98\x95\xdc\x74\x49\x1f\x5f\x07\xcf\x66\x95\x8e\x3e\xb7\x7f\xc2\xc9\x4b\xf6\x45\xb2\xa4\x93\x0b\xaf\x4f\xd2\xbb\x90\xa2\xaa\xde\xb6\x68\x43\xf0\xb8\x38\xcd\xf0\x3b\x43\xf9\x0c\xf3\x23\x4e\xfe\x4b\x74\xde\x45\x09\x18\x77\xd1\xff\xe7\xbd\x28\x6d\x66\x4e\xb6\xf4\xb7\x9c\x76\xbb\xb5\x6e\x85\xb6\xed\x28\xfe\xfe\x76\xf0\xc8\x72\x9a\x2d\x31\xae\x2c\xcd\x72\xbc\x58\xce\x0c\xbd\x7c\x8f\xda\xae\xcc\xbe\x1f\xf9\xd0\xfb\x99\xd8\x32\xb9\x9b\x32\x65\x2e\x99\x18\xbd\x1f\xa6\x74\x26\xcf\x5f\xa4\xd1\xc7\xe5\x42\x67\xb4\x4d\xd3\xc8\x15\x14\xeb\x5f\x00\x00\x00\xff\xff\x44\x21\x25\xc4\x53\x05\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 346, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8f\xb1\x4e\xc4\x30\x10\x44\xfb\x7c\xc5\xfe\x80\x2d\xd1\xba\xe3\x07\x10\xe2\xa4\xeb\xe7\x9c\xc1\x5a\xe1\x38\x91\xd7\x39\x84\xa2\xfc\x3b\xca\x25\x34\x81\x82\x6e\x35\x3b\xf3\x76\x07\x93\x5e\x59\x4d\xc7\x12\xe4\xfe\xd4\x7d\x68\xe9\x83\x5c\x58\xef\x1a\xf9\x1c\xe3\x38\x97\xd6\x2d\x8b\x13\x7d\x17\x7f\x45\x9e\x69\x3e\xe5\xf1\x86\xec\x75\x40\xe2\xeb\x9c\xf3\x85\xb1\xb2\x99\xac\x6b\x77\xd6\xc2\x23\x5b\x51\x12\xff\x13\x17\x71\x52\x30\x30\xc8\xb2\x88\xdf\x94\x2d\xce\xd2\x9f\xc6\x81\x0d\x3d\x1a\x42\x27\x87\x5f\xad\xe9\xe8\xb4\xa4\x4a\xb3\x84\xc6\x4f\x7c\x39\xdb\x6b\x38\x1c\x3d\x76\xb3\x4d\x88\xc7\x85\x37\x66\xc2\xe8\x5f\x7e\xe4\xfd\x89\x8c\x1b\xb3\x6d\x70\x11\x4c\xd3\xdf\xf4\xc7\xb6\xee\x80\xdf\x34\x59\xd7\xef\x00\x00\x00\xff\xff\x26\xbf\xb2\x08\x5a\x01\x00\x00"), - }, - "/charts/gateways/istio-ingress/templates/sidecar.yaml": &vfsgen۰CompressedFileInfo{ - name: "sidecar.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 207, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\xcb\x31\xae\xc2\x30\x10\x84\xe1\xde\xa7\x58\xa5\x8c\xf4\x1c\x3d\xd1\xf9\x10\x14\x20\xd1\x2f\xf1\x90\xac\xe2\xd8\x96\xd7\x40\x11\xe5\xee\x28\x4a\xa8\x28\x67\xf4\xfd\x9c\xe5\x86\xa2\x92\xa2\xa3\x88\xfa\x4e\x65\x92\x38\x58\xd1\x2a\xc9\x4a\xea\x5e\xff\x1c\xf2\xc8\x27\x33\x49\xf4\x8e\xae\xe2\xd1\x73\x31\x33\x2a\x7b\xae\xec\x0c\x51\xe4\x19\x8e\x3c\x1e\xfc\x0c\xf5\xd8\x9a\xb9\x87\xa3\x65\x21\x7b\x41\x00\x2b\xec\xf9\x7b\xd3\xba\x1a\xa2\xc0\x77\x04\xdd\x7a\xa2\xb2\x93\x5f\xbf\x51\xcd\xe8\x37\x86\xa1\x40\x8f\xe0\x8f\xc6\xa4\xf5\x18\xfb\xd1\xb4\x5d\xdb\x98\x4f\x00\x00\x00\xff\xff\xc9\xd7\x59\x42\xcf\x00\x00\x00"), - }, - "/charts/gateways/istio-ingress/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 5509, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x58\xed\x6e\x1b\xbb\xd1\xfe\xef\xab\x18\x48\x3f\xce\xfb\x02\x96\x2c\xc9\x49\x90\x2c\xd0\x1f\x3e\xb1\x8b\x0a\x8d\x1d\x23\xab\xd3\x0f\x14\x85\x41\x71\x67\x77\x09\x73\xc9\x2d\xc9\x95\xad\x14\x05\x72\x21\x3d\x37\x97\x2b\x29\x86\x1f\x2b\xad\x3e\x7a\x90\x9e\x1f\xc1\x31\x97\xf3\xcc\x70\x66\x38\xcf\x43\x8d\xe1\x66\x22\xd9\x84\x33\xe3\x10\x84\x75\x42\x83\x50\x95\x41\x6b\xa1\x62\x0e\x5f\xd8\x76\x7a\x31\x86\xfb\xce\x3a\x58\x23\x08\x65\x1d\x93\x12\x0b\x10\x0a\x18\x58\x6c\x99\x61\x0e\x41\xb1\x06\x6d\xcb\x38\x5e\x82\xd3\xd0\x08\x25\x1a\xf1\x15\x81\x71\x4e\x40\x4e\x83\x45\x6e\xd0\xd9\xe9\xc5\x45\x44\xb5\xd9\x05\x04\x7f\x93\xe8\x2f\x7e\xa0\x75\x80\x71\xf8\x17\x72\x6f\x07\xb7\xc2\x72\xbd\x41\xb3\x85\x1c\xcd\x46\x70\x84\xff\xcb\x6f\xf3\xff\x07\xae\x55\x29\xaa\xce\x30\x27\xb4\x82\x52\x9b\xe3\xe0\x77\x68\xb6\xb0\x01\x9c\x80\x97\x25\x38\xd3\xe1\xe5\xa1\x01\x94\xe8\x78\x8d\x16\xb8\xc1\x02\x95\x13\x4c\x5a\x28\x8d\x6e\x20\xbf\xcd\xc1\xa2\xd9\xa0\xa1\x03\xd5\x4c\x15\x12\x61\xf5\x29\xa7\x20\x14\x72\x8a\xc0\x4e\x23\x3e\x2a\xb6\x96\x58\x64\x50\x32\x69\xb1\x77\xba\x0f\x51\x33\x07\x2f\x2c\xf8\x7a\xee\xd6\x68\x14\x3a\xb4\x29\x51\xc0\x54\x01\xad\xd1\x1b\x61\x09\x77\x10\x8d\x3b\x51\xa2\xe4\x61\x55\x0b\x9b\x5c\x98\x4e\x59\xaa\x93\xab\x11\x2c\x6b\x10\x5a\x5d\x00\xb3\xe7\x8c\x45\xc3\x2a\xcc\x40\xe9\x02\x27\xac\x42\xe5\x26\xcf\xef\x6d\xfc\x66\xd0\xea\xce\x70\xec\x13\x48\x4b\xff\xe8\xd0\xba\xbd\x15\x00\xde\x76\x19\xcc\x67\xb3\x66\x6f\xad\xc1\x46\x9b\x6d\x06\xf3\xc5\xfb\x7b\xd1\xaf\x4b\xd1\x88\x13\xb6\x8b\xd9\x19\xe3\xd9\xe2\x4d\xb4\x6e\xb5\x49\x86\xe3\x31\xfc\x55\x77\xc0\x99\x02\x56\x14\xc0\x3b\xeb\x74\xd3\x17\xd2\x6f\xa4\xf3\x77\x16\x0d\x6c\x98\xec\xd0\x02\x35\x91\x11\x05\xda\x4b\x58\x77\x0e\x84\x83\x86\x5a\x5b\x28\x2e\xbb\x02\xc1\xd5\xda\x62\xb4\xb4\x42\x71\x84\x1a\x65\x03\x06\x5b\xc9\x38\xc6\xf2\x8e\xe1\x41\x3b\x0c\x15\xbc\xf9\x73\x0e\x77\x9f\x7e\x86\x17\x21\x25\xac\xb7\x50\x60\xc9\x3a\xe9\xa0\x45\x53\x6a\xd3\x40\x8d\x4c\xba\x1a\x78\x8d\xfc\xd9\x82\x0e\xc5\x28\x85\xb1\xce\x7b\x89\x78\x7e\x5d\x58\x90\xc2\xba\x29\xe4\xe8\x9c\x50\x55\x58\x72\xda\x9b\xec\xe3\x78\xcb\xe0\x11\x95\xed\x4c\x0c\x25\x6c\x89\x88\xd1\x21\x93\x74\xd5\xe0\x45\x9b\xe7\x29\xd4\xce\xb5\x36\xbb\xba\xaa\x84\xab\xbb\xf5\x94\xeb\xe6\xca\x5f\xc0\xfe\x5f\xdb\xa1\xbd\x9a\x2f\xde\xce\xae\x3d\xca\xc4\x3b\xca\x60\xfe\x76\xb6\x98\xc5\xa2\x38\x66\x2a\x74\x8f\x47\xeb\x34\x00\x32\xb0\x8e\xb9\xce\x4e\xfa\x93\x25\x84\xf7\xa7\xcc\xdf\x0f\x6d\x29\xba\xc5\xc0\xea\xcd\x9b\xeb\xa3\x1d\xf6\x28\xb2\x0f\x67\x22\xfb\x30\xb0\x7d\x16\x4c\x8a\x43\xdb\xeb\x33\xa7\xba\x1e\x46\xd6\x1a\xdd\xa0\xab\xb1\x3b\x72\x7e\x3d\x3f\x03\x30\x1f\x00\x54\x86\x95\x4c\xb1\x23\xeb\xc5\x19\xeb\xc5\xc0\xda\x19\xc6\x85\xaa\x86\x57\x9c\x3a\xa3\xc6\xd8\x09\x35\x1a\x04\xab\x04\x18\xdd\xf9\xce\xa9\x59\xdb\xa2\x3a\x0c\x77\x97\xcf\xa1\xc3\xc3\x3c\x3b\x69\x2f\xd2\xf8\xe5\x4c\xb2\xb5\x90\xc2\x6d\xc1\x75\x4a\xa5\x38\xc6\xfe\x4a\x08\xce\x3e\xea\x4e\x11\x88\x5f\x65\x9d\xd3\x96\x33\x89\x77\x69\xfc\xd1\x88\x1d\x7e\xba\x17\xea\x68\xfb\x3d\x7b\xcd\xe0\x6d\xf0\x49\x63\x60\x10\xe5\xcd\x06\x0d\xab\xf0\x17\x27\xa4\xf8\xea\xe7\xbc\x6f\x9d\x8b\x93\x63\xe9\x78\x28\x1d\x8f\xa4\x53\x03\xe9\x70\x1c\x9d\x18\x46\xc9\x6c\xf1\xf6\xdd\xbd\x48\xf9\xb9\xc5\x75\x57\x81\xc4\x0d\x4a\xcf\x3e\xa8\x36\x7a\x3b\x85\x8f\x4c\x11\x5b\x5a\x74\x74\x7f\x7f\x2a\x68\xd7\x4f\xde\xc4\xff\x6f\x06\x42\x95\x3a\x60\x48\xcd\x8a\x9f\x99\x64\x8a\xa3\x59\x3e\x66\x30\x1a\x1d\x2d\xe7\xfe\x8c\x5f\x98\xaa\xd0\x66\xf0\xb7\xbf\xfb\x0d\xf8\xea\xd0\x28\x26\x97\x8f\xbb\x35\x1b\xb8\xf1\x46\x29\xed\x7c\xa6\x6c\x06\xff\xfc\x57\xf0\x53\xe8\x86\x51\xea\x47\xa3\x14\x7b\x28\x12\x70\xa3\xad\x9d\x70\xd9\x59\x87\x26\x31\x76\x67\xa9\x8d\xf2\x87\x25\x34\x44\x51\xa9\xec\x5f\x37\xad\xca\x0e\x29\xae\xaf\x31\x80\xed\xca\x52\xbc\x66\x50\x49\xbd\x66\x32\x39\x5a\x69\xa8\x50\xa1\x17\x0a\x4c\x81\x50\x21\x72\x7f\x46\x58\xc7\x43\xc6\x89\x0e\x93\x09\x65\xed\xf8\x24\x53\x2e\x75\x57\x4c\x2b\xad\x2b\x89\x7e\x76\x91\xf9\x24\x99\x4f\xdc\xb6\xc5\xdf\x25\xe8\x80\x75\x22\x1d\xd1\x09\x55\xf8\xb7\xe1\x32\x18\x25\xc0\x98\xb4\x56\x17\x87\xc9\xf5\x8d\xea\x37\x7f\xda\x2b\x19\x8c\x79\x4d\xf5\xa2\xf2\x3f\xe8\x02\xe9\xaa\x5d\xc2\xc7\x90\xe4\xe5\x23\x68\x33\xdc\x2e\x4a\x50\x88\x05\xac\x31\x26\x6d\x3c\x1e\xc3\xfd\x5d\xfe\x07\xb8\xfb\xcb\xe3\xcd\x43\xbe\xfc\xfc\x00\x8f\x9f\xbf\xac\xf2\xf0\x89\xfe\x8b\x47\x79\x14\x52\x3b\xaf\x16\x3e\x0a\xc7\x0a\x94\x70\x4f\x9a\x24\x50\x18\x33\x98\xea\x44\x44\x98\x98\x71\xe2\xb9\xcf\x13\x88\x56\x72\x0b\x06\x0b\x61\x90\x27\x36\x72\x1a\x5a\x42\xbd\xe2\x11\x51\x94\xb1\xa2\xd3\x06\x6d\x7d\xf7\xda\x32\x45\xaa\x84\xfa\x9b\xc6\xcd\xc0\xcf\xb4\xbf\x19\x12\x3d\x49\x62\x4f\xa8\xa2\x04\xb2\x07\xec\x01\x84\x05\xa5\x5d\x32\xf5\xda\x91\x6d\xb4\x28\x22\x06\xbe\xb6\xda\x37\x62\x47\x02\x0b\xad\x65\x26\xd1\x7a\x64\xd2\x17\x5c\x27\x87\x49\x09\x18\x6c\xf4\xe6\xc8\xf1\x56\x77\x3e\x4a\x72\x17\x9a\x7b\x18\xca\x45\xb8\xe2\x7b\xa7\x7b\xdc\xe9\x8c\xbd\x99\x3d\x3f\x33\xf1\xe7\xc3\x89\xef\x78\x3b\xf1\x39\x9c\x54\xa6\xe5\x13\x9a\xa8\x43\x3e\x7c\x77\x9a\x11\xdf\xcd\x8e\x60\x62\x11\xce\x00\xbd\x3d\x35\xd2\x77\xab\x3b\x98\x42\xd9\xde\x3a\x76\x10\xa0\x2a\x4e\x37\x59\xec\xb0\xfd\xcd\xfb\x5d\x17\x34\xea\x9f\xb4\xec\x1a\xec\x53\x14\x5c\x0d\xb5\xfc\x84\xa3\x71\x49\x43\x06\xab\x87\xb0\xed\x84\xf0\x1f\x6c\x6e\x88\x57\x1e\x99\xab\x33\xb8\x42\xc7\x93\x44\x39\x67\x70\xce\x3d\xfb\xc1\x08\xd8\xff\x10\x44\xb2\x49\x8d\xef\x07\xad\x8f\xc7\x53\x82\x43\x89\x0d\x3a\xb3\x25\x8d\xaa\x23\x29\xf7\x8b\x4f\x61\x2e\x3f\x85\xf0\x77\xc3\x79\x35\xb4\x4a\x57\xd7\x02\xbe\xb2\xa6\xa5\xb1\xed\x5f\x3e\x07\x60\x7e\xef\xd3\xfe\x0b\xcb\x7f\x0f\x02\xe2\x69\xf0\xc0\x3a\xa7\x2f\xe0\x84\x3e\x21\xda\xb2\x07\xa2\xed\xcc\x1b\x07\x48\x3d\x0c\x97\xbc\xf4\x3a\xe7\x7c\xa7\xcb\x06\xae\x7b\xf5\xb6\xe7\x9a\xe8\x78\xfe\xc3\xde\xa3\xf6\x3a\xe7\x7f\x5f\x9a\x0d\x0f\x3f\x3f\x8e\xe0\x7a\x36\xfb\xf1\xe3\xef\xd4\xe3\xb9\x18\x0e\xf4\xe5\x30\x8c\xd9\x71\x18\x1f\x66\x1f\x7e\x24\x8c\xd8\x51\xbf\xd7\x06\x3e\xa2\x71\x0d\x53\xac\x42\x03\x4b\x92\xfb\x26\x30\x07\x1a\x27\x4a\xc1\x89\xa0\x23\x53\xa7\x91\x38\x06\xbe\xfb\xb8\x63\xbc\x31\x60\xc3\x84\xdc\xeb\xd8\xf1\x18\x6e\x8a\x0d\xb1\x59\x01\xba\xf5\xfc\x08\x47\x83\x03\xd5\x66\xf7\x02\xbf\xe9\xf9\xe8\x45\xb8\x3a\xbc\x76\x1a\x5d\x60\x7c\xd4\xd8\xf0\xaa\xf1\x53\xb4\xd7\x0f\xf4\x2e\xa6\x1b\x21\xc8\x41\xe4\x79\xc2\x22\xcd\xa0\x4b\x88\x2a\xc6\xc6\x5f\x02\xa2\xce\x88\x3a\xc0\x46\xd6\x73\xb5\xee\x1c\x2c\xfd\x4f\x1d\xcd\xea\x53\x4e\xb4\xd3\x03\xe1\x9e\x28\x4a\x70\x49\x56\xa7\x87\xf2\x32\x5f\x2d\x3f\x3f\xdd\xdf\xad\x6e\x9e\xbe\x7c\xfe\x65\x75\xf7\xe5\xe9\xfe\xf3\xed\x5d\x06\x23\xab\xc4\xa4\x50\xcc\xc5\x9c\xd0\x4b\x3a\x47\x89\xdc\x69\xb3\xd3\x0a\x5a\xc6\xfc\x06\xdd\x96\x84\x76\x8b\x5c\x94\xdb\x28\xea\x0b\x60\xca\x89\x09\x2b\x4b\xa1\xbc\xf4\xa6\x4c\x30\x29\xf5\x8b\xf5\x4c\xe6\x34\xdd\x7f\xeb\x0c\x4d\x9a\x97\x5a\xf0\xda\x3b\x8b\xd3\x9d\xb6\x18\x8f\x22\x2c\xa0\x14\x95\xa0\x23\x39\xed\x25\x29\xaf\xb1\xe8\x48\x0f\xac\x99\xa5\x52\x29\x90\x6c\x8d\xd2\x33\x6a\xab\x8b\x98\x75\x66\x30\x62\x31\x69\x90\x15\x5b\x30\x41\xfd\x27\xe2\x25\x77\x60\x98\xab\xc3\x4f\x19\xea\x14\x9c\x0f\x29\xd1\xf3\xca\x3f\x52\x88\x82\x79\x67\x0c\x2a\x27\xb7\xe0\x5e\xb4\xd7\x4e\x96\x6a\x37\x38\xf1\x9e\x50\x1b\x91\xa6\x17\x06\x8b\xdb\xce\x08\x55\xe5\xe1\x00\x42\x55\xcb\x4a\xe9\x7e\xf9\xee\x15\x79\x47\x59\x1d\xed\x59\xb6\x06\x4b\x34\x3f\x6c\x1a\x12\x5a\xa0\xa2\x57\xfe\xf7\x6f\xff\xae\x99\x29\xbe\x7f\xfb\x15\x36\x76\x4a\x7f\x5a\x5d\x3a\xfa\x33\xc6\xd5\xa0\x72\xf6\xd2\x97\x85\xe4\x47\x81\xa5\x50\x18\x4a\x10\x7e\x73\x88\xa8\x42\xc1\xc8\xeb\x47\x27\x6e\xe2\x29\x3f\x51\xaa\x52\x87\x8c\xfc\x55\x3c\xdc\xb2\x42\xd3\x0c\xb7\xa5\x6b\xa9\x8d\x41\xdb\x6a\x55\x08\x55\xc9\xf4\x3b\x97\xbf\xe5\x91\x22\x52\x0e\xff\x9b\xd3\x5e\x75\xc3\x33\x6e\x33\x22\xc8\xce\x08\xb7\xed\x73\xa8\x5b\x6a\x56\x6a\xdf\xa5\xea\x17\xc3\xb1\x32\xc8\xe7\x97\xf9\xa2\x5f\x75\xba\xd5\x52\x57\xdb\x3f\x12\xd0\x68\xf7\x8b\xd6\x54\xe8\xab\x5a\x5b\x47\xb3\x6e\xd4\x37\x83\xb0\x27\xda\xdc\x74\x12\xc1\x12\xcb\xf9\x26\x4c\x77\x21\x26\x3a\x68\xc5\x83\x36\x8e\x80\x5a\x91\x74\x0c\x5d\x29\xca\x60\x1e\xfe\xb0\x47\x1d\xcc\x3c\xa8\x9f\x39\xbe\x57\xa1\x66\x1b\x5a\x7f\xc6\x74\x6e\x2a\x72\xcc\x04\x15\x9a\xea\xe2\xcf\x4c\x1f\xf2\xf9\xf7\x6f\xbf\x4e\x77\xaf\x81\x73\x89\x4d\x6f\xb2\xdf\xaa\xa7\xdf\xf8\x9f\x00\x00\x00\xff\xff\x37\x12\x39\x8f\x85\x15\x00\x00"), - }, - "/charts/global.yaml": &vfsgen۰CompressedFileInfo{ - name: "global.yaml", - modTime: time.Date(2019, 8, 12, 17, 34, 58, 563923005, time.UTC), - uncompressedSize: 17864, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x5c\xef\x72\x23\xb7\x91\xff\xae\xa7\xe8\xa2\xae\x4a\xbb\x2e\x72\x28\xca\x6b\x67\xcd\xb3\x5d\xb5\x96\xe4\x58\x89\x76\x57\x27\xca\xc9\xa5\x92\xd4\x1a\x9c\x69\x92\xb0\x66\x80\x09\x80\x21\x97\x39\xdf\xbb\x5f\x75\x37\x80\x19\x52\xda\xc4\x3e\x57\xa5\xb2\x9a\x01\x1a\x8d\x46\xa3\xfb\xd7\x7f\x86\xa7\xf0\xfb\xda\x2e\x55\x0d\xca\x54\x50\xda\xa6\xb1\x06\x3c\x86\xa0\xcd\xda\xc3\xca\x3a\xd0\xc6\x07\x55\xd7\xda\xac\xe1\xc6\x07\x6d\x8b\x93\x93\x53\x78\xd8\x68\x0f\x2b\x5d\x23\x68\x0f\xa5\x35\x2b\xbd\xee\x1c\x56\x3c\x41\x81\x6f\x54\x5d\x83\x2f\x55\x8d\xd0\x3a\x5b\x75\x65\xd0\xd6\x40\x59\x77\x3e\xa0\x2b\x4e\x4e\xe1\x47\x8f\xd0\x79\x74\x93\xad\xaa\x3b\xf4\x93\x06\x2b\xdd\x35\x60\x1d\x94\x9d\x0f\xb6\xe9\x59\x08\x16\x42\x67\x10\xba\x16\xc2\x06\xe1\xf2\xee\x47\xe6\x94\x88\x13\x4f\x44\xec\x4d\x55\x69\x5a\x40\xd5\x20\xe4\xc0\x6e\xd1\x39\x5d\xa1\x87\x52\x19\x58\xf2\x5a\x15\x33\x7e\xad\xca\x0d\x68\x53\xe9\xad\xae\x3a\x55\xd3\x8e\x5b\x6b\xd0\x04\xd8\xe9\xba\xa6\x71\x89\xc6\xca\xd9\x06\x42\xda\xe7\x18\x76\x3a\x6c\xa0\xc2\x95\xea\xea\xe0\x99\x87\x33\x55\x6d\x95\x29\xb1\x3a\xeb\xd9\xd5\xa6\xac\xbb\x0a\x2b\xd0\xe6\xe4\x14\x74\xf0\x60\x77\x06\xca\x8d\x72\xe1\xcc\x47\xd2\xc5\x5e\x35\xb5\x88\xf1\xfd\xd5\xfb\x39\x04\xa7\x07\x2b\xd1\x8e\xe5\x1c\xea\x3d\xf3\x9d\x89\x8f\xa1\x46\xb5\xc5\xe1\xba\xda\xb0\x54\x06\x1b\x1a\x2c\x01\x2f\xc2\x06\xf7\x24\x82\x93\x53\xf0\x81\xf6\xb7\xc4\x24\x9b\x0a\x0d\x2c\x79\x01\xe7\xc7\xb0\xec\x02\xec\xac\x39\x0b\xe0\x37\x76\x47\x64\x97\xca\xeb\x12\x2a\x5b\x76\x0d\x9a\xa0\x48\xbe\xfd\xc9\x57\x16\x3d\x0d\x6e\x54\x20\x71\x92\x5a\x64\xd1\x8c\x61\xb7\xd1\xe5\x06\x94\x43\x68\xac\x43\x58\xa3\x22\xd5\x08\x76\xa7\x5c\xe5\x21\xa0\x8f\xf2\x5b\x5a\xfb\xa8\xcd\x8a\x34\x6a\xcd\x3a\x38\x3f\x01\x60\xdd\xa0\xd1\x50\xdb\x52\x05\x14\xea\x93\x56\xd7\x36\x14\xfc\xfe\x4a\x16\x22\xcd\x0b\x36\xa9\x27\xf0\x00\x62\x5c\x41\x85\x95\xa6\xa9\x15\x18\xd5\xa0\x6f\x55\x89\xe3\x21\x99\xd9\xac\x80\xbf\xd8\x8e\x75\x83\x0e\xbc\xe9\xea\xa0\xdb\x1a\xfb\xe1\x22\x11\x5e\x8d\x34\x1a\x49\x69\xce\x5a\x67\xe9\x7c\xce\x60\x6f\x3b\x30\x28\x4c\x8a\x04\xe8\x0c\x4a\x6b\x82\xb3\x35\xb4\xb5\x32\x03\x52\xbc\x53\x7a\xcf\x07\x03\x76\x25\x9c\xbc\x4b\xef\x79\x91\x1b\xde\x8d\xf2\xbe\x6b\x88\xec\x46\x85\xc8\xaf\xdf\xfb\x80\x0d\xbd\x74\x9d\x31\x74\x07\x51\x87\x0d\x3a\x98\x15\xe7\x74\x5b\x68\x07\xed\xda\x29\xd2\xb8\x2d\x3a\x4f\xd7\xcc\xae\x60\x56\xcc\xe4\x4c\x59\x89\x3c\x96\x9d\xd3\x61\xdf\x2b\xbb\xa7\xd3\xe1\x95\x59\xc1\x5e\x94\x3a\xa8\x0a\x6b\x58\xa3\x41\xa7\x48\xd9\x98\x65\x8f\xa5\xc3\xe0\x5f\x92\xdc\x0f\xb9\x9e\x47\xfe\xe2\xa6\x4f\x20\x1a\x81\x4f\x0e\xe0\xc5\x1e\xb0\xc6\x06\x83\xdb\x1f\x1c\x0c\xdf\x18\x5e\xd2\xa9\x92\xaf\x34\x40\x48\x23\x9f\x10\xcc\x6f\x88\x64\xeb\x6c\x83\x61\x83\x9d\xff\x37\xe3\x6c\xad\xcb\xa7\xb4\xe4\x31\xf3\x76\x0a\xd7\xa6\x02\x83\xbb\x7c\xdb\xe4\xe9\x9b\x55\x40\x27\x97\xb3\xd6\x06\x61\x87\xb0\xa1\x3b\x48\xe2\xb1\x75\x25\x26\x31\xcf\x29\x4e\x0e\x34\x74\xd3\x2d\x59\x7f\x64\x90\x6e\xd4\x1a\xbd\xe8\xf0\x3d\xd6\xa8\x3c\xf2\x39\x40\xdb\x2d\x6b\xed\x37\xa2\x50\x95\x2d\x1f\xd1\xf1\xd4\xce\x54\xe8\xe0\x8c\x79\x3d\xa3\xbd\xfe\x8c\x65\xba\x03\x4a\xd7\x7b\x58\x76\xba\xae\xa2\xa5\x6a\x9d\xdd\x31\x35\x6b\x60\x5d\xba\x42\xdb\x31\xab\x9e\xd1\xeb\x4d\x38\x1a\x5b\x6a\x57\xd6\x3c\x52\x56\x2b\xb4\x9d\xf2\x2a\x71\xf0\x09\xd0\xfa\xf3\x48\x47\x5e\x4d\x9c\xb0\x7c\xb8\xc3\xa0\xd6\xcf\xee\x30\xa8\xf5\x1c\x1a\x45\xe6\x7e\x52\x2b\xba\xf2\x93\x8a\x58\x96\xd9\x97\xb6\x69\xd4\xc4\x63\xab\x1c\x5f\xd3\x46\x1b\xdd\x74\x0d\xb4\xe8\x26\xbe\xb4\x2d\x42\x6d\xd7\x6b\x52\x89\x1a\xb7\x58\x93\x46\x37\xe8\x3d\x11\x27\x11\xd9\x2e\xb4\x5d\x18\x27\xe3\xb7\xb2\xae\xa1\x21\x5f\xf3\xd4\x6f\xe7\x5f\xf3\xa4\x6f\xc7\x47\x7f\x8b\x06\x3e\xb9\xa8\x1b\xe5\xa1\xd2\xab\x15\x3a\x72\x02\x3c\xc5\x43\x85\x2d\x1a\xd6\x49\x72\x5b\xe9\xd6\xc8\x95\x22\xab\x91\x3d\x5e\xb2\x7a\xc4\x70\x64\x56\x95\xce\x7a\x0f\x64\x93\xfa\xfb\x26\xb7\x7c\x05\xd8\xb4\x61\x3f\xce\xb3\x64\xb3\x74\x4c\x32\x77\x17\x6d\x34\xdf\x4a\x75\xe0\x59\x35\xad\x5a\xd1\xa5\x8d\xb2\x21\x63\x09\x32\x6f\x0e\xa3\x48\x71\x4e\xf6\x74\x14\x6f\x5b\x92\x14\xf3\x22\x46\x7a\x60\x01\x6a\xcb\xee\x0a\x7e\xf6\xd6\xb0\x0c\x55\x20\x87\xa0\x2a\xde\xf7\x64\x52\xdb\xf5\x07\xe5\x3f\xf0\x6b\xe5\xd6\xec\x06\x48\xfa\x6c\x0c\x49\x86\x4a\x1b\x74\xf9\x95\x30\xf6\xc6\xff\xc1\x5b\x33\x87\x95\xaa\x45\x55\x1e\x5f\xfb\x1b\xb3\x76\xe8\xbd\xf0\x8b\x46\x2d\x6b\xac\xd2\x08\x7a\x74\x0a\xbf\x57\x01\x77\x2a\x7a\x3b\x52\xa7\xc7\xd7\x1e\xe2\x34\x70\xe8\x6d\xe7\x4a\xf4\x05\x7c\xb7\xcf\x92\xd3\x64\x21\xe3\xf4\xce\x13\xc7\x72\x4f\xe6\x5a\xa6\xad\x85\xe4\x99\x18\xd3\x24\xd7\xe8\x2c\xb0\xa2\x9d\xc6\x4b\x1b\x89\x9c\xc5\x19\xbe\x88\x2c\x9e\x89\x8f\xcf\x8f\xe5\x16\x1c\x92\xcf\x63\x23\x91\x55\xad\x22\x64\x71\x1d\x16\xfc\x30\x8e\x24\xdb\x33\x87\xc3\xd9\x71\x92\xd0\xf8\x21\x84\xd6\x0b\xa3\xaa\xaa\xa0\xb5\x2e\xc0\xab\x57\x9f\x93\x02\x8a\x87\xe7\x99\x45\x9c\x73\x13\xe0\xfe\xfa\xbf\x7e\xbc\xb9\xbf\x5e\xc8\x0e\xd9\x03\xa1\x0b\x7a\xc5\xae\x4f\x0c\x4b\xbf\xdd\x78\x57\xd2\x8a\x1f\x5b\x2c\x03\x23\x0b\x36\xf0\x30\x11\x26\xc4\xee\x6b\x0f\xb6\x65\xc0\x46\x90\xc7\x92\xca\x0f\x08\x47\x12\xcc\xa8\x43\xcf\x67\x61\xe0\xf6\x6a\x01\x0e\xc9\x3e\xd1\xbc\xe4\xf2\x22\xd3\x32\xd8\x58\x82\x18\xee\xb1\x18\xe8\x01\x6f\x7a\xa0\x2d\xad\xb3\x1f\xf7\xa2\x28\x6c\x4b\xe6\xf2\x64\x7b\x71\x12\x97\x8d\x10\x12\x2a\xdb\x28\x6d\x8a\x6c\x87\xc4\xb9\x6a\x0f\xa3\x04\x32\x09\x3d\xd4\x23\x59\x2c\x3e\xbb\xe2\x49\xf3\xe3\x31\x89\xf6\x7d\x52\x34\x56\x41\xf6\x7f\xba\xc2\x52\x39\x21\x92\xf5\x50\xf8\xa3\x07\xff\xe8\x08\xcb\xa4\xbf\x01\xca\xb6\x9b\xc3\xec\xfc\xbc\xc9\x4f\x1a\x6c\xac\xdb\xcf\x61\x76\xf1\xfa\xad\x8e\x4f\x6b\xdd\xe8\x27\xb3\x2e\xce\x3f\x3d\x2d\xf2\x77\x29\x76\xcb\x83\xe9\x9a\x25\x3a\x32\x79\x77\x24\x1d\x96\x2a\x3b\x29\x87\xaa\xea\x55\x64\x45\x1a\x4e\xca\x78\x0e\x2f\xe2\xb5\x79\x39\xa6\x7d\x19\xf0\x41\xb9\x70\x38\xaf\x07\x3a\x04\xb1\xe5\xd9\xb4\xb4\x2e\xaa\x71\x69\x4d\xd9\x39\x87\xa6\xdc\xcf\xe1\x62\xc0\x92\xd8\x27\xcf\xf2\x52\x65\x49\xc7\x4d\xb6\x30\x53\x3b\x90\xe1\x29\xbc\x67\xcd\x8a\xbb\x3f\x05\x80\xd1\x08\x26\x50\x69\x4f\xea\xe0\x07\x14\xfa\x01\xd3\x0a\xb7\x53\x1f\x2a\xdb\x85\x51\xd2\xd4\xa7\x43\xe5\xcf\x5b\xbb\xfe\x5e\xd7\x38\x87\xd1\xe8\x09\x8f\x40\xc8\x96\x54\x73\x47\x17\x66\xa5\x91\xfc\x21\x5d\x93\x4a\xfb\xb6\x56\x7b\x31\xb2\x91\xdf\x01\xf9\x02\x16\x62\x29\x20\xd8\x74\x81\xc8\x8c\x83\x0f\x8e\x9e\x1e\x5d\x85\xa1\x47\x10\xb3\x7a\xc4\x1f\x3f\x7b\x9e\xc3\x67\x84\x98\xf8\x09\x16\xfe\xb0\x78\xff\x8e\x40\xdf\xc3\xf5\x7f\x3f\x14\x87\x44\xaf\x4d\x69\xc9\x6e\xcf\xf9\x65\x22\x7c\x9b\x9d\x12\x51\xe2\xab\x34\x06\xd5\xb6\xb5\x16\x47\x9a\x6c\x9b\x44\x54\xb2\x50\xd6\x9f\xeb\x64\x24\x62\x3c\xa4\x1c\xce\x19\xa2\xe1\x2f\x15\x2e\xbb\xf5\x2f\xe4\x6a\x7e\xd9\x29\x47\xb0\xf4\x17\x74\xce\xba\x5f\x4a\xa7\x83\x2e\x55\xfd\x8b\x5d\xad\xc4\x3d\xd9\xf5\xad\x78\xa8\x38\x30\xb1\x76\x87\x8e\x60\x40\x8c\xbd\xea\xff\x17\xa3\xa4\xe2\x6a\x10\xc1\x09\x85\xec\x16\xc8\xe0\x78\x0c\x51\xe5\x49\xb4\x12\x65\xc0\x28\x71\x35\x3a\x70\xb8\x49\xd1\x23\xb9\xdb\xcc\xfa\xa8\xd1\xbe\x9c\xf3\x0e\x3f\x71\x66\x57\xef\xc8\xfc\xad\x1c\xfa\x0d\x10\xa4\xe1\x6d\x5c\x9b\xad\xdd\x67\x8b\x65\x57\x10\xf6\x2d\xc2\xe2\xe1\xfe\xe6\xf2\xe1\xc3\xd5\xbb\x45\xa4\xc4\x01\x55\xd3\xf9\x40\x7c\xac\xf5\x16\x0d\x39\xb7\x80\xae\xf1\x34\xc9\x63\x69\x4d\xe5\x0b\xf8\x9e\x6e\xd4\x47\xd5\xb4\x14\x8c\x7e\x7e\x7e\xee\xc9\xdc\x6d\x55\xad\x2b\x86\x25\x5f\x70\x94\xa0\x0d\x3f\x91\xad\x54\xc6\xdf\x0b\x53\xf7\x2a\xe0\x9c\x27\x45\xfe\x7b\xe3\x40\x9e\x2a\x47\x47\x6c\x4e\x7a\xdf\xce\xd2\x61\xb8\xdb\x3a\xbd\xd5\x35\xae\xc5\x67\x70\x34\x41\xe6\x08\x3f\x8a\x72\xf7\xaf\x07\xc6\xbc\x37\x42\x63\x02\xd6\xf5\x1e\xb4\xf9\x39\xfa\x9d\x78\x84\x83\x15\xc8\xd4\x40\xd5\x35\xad\x4f\x18\x61\xe8\x28\x2e\xad\xc3\xab\xae\x69\x8f\xc8\x27\xf3\xcf\xde\x92\x64\x7e\xc7\x51\xa0\x5a\x93\x3a\x6c\x50\xd5\x61\x03\xe5\x06\xcb\x47\x5f\xc0\x9b\x3e\x02\x3b\x97\x75\xa3\xd5\x39\x18\x18\xe3\x0f\x20\x13\x19\x3a\x7f\x67\x5d\x98\xc3\xec\x8b\xf3\x8b\xf3\x93\x7c\x5e\xe4\xd8\x74\xd0\xaa\x86\x0a\x6b\xb5\xe7\x85\xc9\x5c\x6a\x43\x17\xb7\x75\x76\x89\x8c\xac\xd2\xd1\x45\xf7\x11\x07\xdc\xc8\xdc\x2b\x9a\xba\x90\x11\x73\x98\x0d\xa9\xb7\xe8\xb4\xad\x60\x89\x61\x87\x68\x9e\x90\x3e\xa2\x77\xc7\xa3\x33\xa5\x8b\x21\xa5\xde\x53\xf8\x8e\x4d\x85\xde\x22\xac\x94\x26\x48\x10\xf9\x5c\xe2\xca\x3a\xc9\x20\x94\x12\xf9\xf5\xeb\xd1\xc8\x2e\x79\x80\xfc\xf8\x7b\x79\xfa\xb0\x21\xcd\xb2\x75\x45\x8a\x95\x16\x15\x94\x89\xe2\xf6\x4b\xd5\x06\xba\x21\xbb\x8d\x0e\x58\x6b\x1f\xe2\xa0\x0d\x7b\xfd\xa9\xc4\x15\x14\x60\x54\xb6\xf4\xd3\xa0\xfc\xa3\x9f\x06\xa7\x56\x2b\x5d\x4e\x1a\x65\xd4\x1a\x09\x58\x4e\x85\x5a\xb1\x09\x4d\x7d\x1a\xb3\x3e\x13\xfc\x18\xd0\x19\x55\x4f\x3c\xba\xad\x2e\xd1\x4f\x2a\xed\xb0\x94\xd8\x45\x20\x0e\xdf\x94\x79\x4a\xc8\xdc\xdc\xdd\x2b\xb3\x46\x3f\x87\xd1\xec\x77\x17\xc5\xe7\xe7\xc5\x79\x71\x3e\x9d\x7d\x39\xa6\xbf\x2e\xd2\x5f\xa3\x84\x6e\x6c\x57\x57\x12\x3c\xa7\x4d\xc4\x3d\x45\xfe\x04\x96\x59\x8f\x10\x76\x16\x6e\xee\x40\xa8\x8f\x19\x6a\x5b\x8e\xd0\x6d\x17\x96\xb6\x23\x24\x14\xa7\x30\xd1\xb8\xc0\x12\x69\xa4\xdd\x09\x12\x1d\x60\x0d\xc1\x3e\x4f\x78\xfe\x4c\x38\xc3\x8f\xc7\x2f\x0e\x9e\xbf\x8f\x4b\x92\xd6\xfa\xa1\x87\x69\x2d\xf9\x36\x11\x99\xfc\x63\xa5\xca\x88\xe5\x1e\xbb\x25\x6e\xb5\x0b\x37\xf9\xf1\x70\xa6\x1c\x68\x02\x72\x9f\x3a\xd1\x28\xed\x81\x5b\x07\xb8\x47\x39\x12\x30\x34\xff\x50\x14\xc1\x8a\x75\x9c\xd3\xc0\xc9\x24\xed\xd7\xf4\xdc\x7f\x33\x1a\x3d\x47\x8b\x23\x99\x7f\x41\xec\x13\xb4\x3e\x7b\x96\x58\x4c\x8e\xd4\x62\x93\x5a\x11\xda\xe0\xbf\x4f\x10\x7b\x7d\x3e\x7e\x7d\xfe\xfa\x7c\x74\x70\x54\xe6\x40\xf0\x47\xc7\x65\x9e\x3f\x15\xb6\xfc\x65\x42\x75\xa4\x04\x67\x92\x91\xc8\x79\xbd\xe4\xfc\xc5\x70\xda\x88\xa2\x54\x17\xec\x0d\x3f\x99\x27\x5b\x99\x48\x2e\x08\xcd\xd3\xcc\x0a\x7d\xd0\x86\xd3\x76\xb0\x08\x2a\x78\x06\x37\xc8\x2e\xe9\xc5\x41\x3a\x8a\xfe\x18\x4d\x26\x9e\x07\xfd\x58\xb5\x6f\xaa\x8a\xce\x7a\x24\x6e\x78\x18\xdf\xf5\x37\x63\x89\xf0\xf5\xc6\xfa\xf0\xed\xfc\x6b\x12\xdb\xb7\x2f\x13\x68\xb8\x12\x93\xca\x5a\x1d\x81\x50\x31\xb4\x9b\x92\xd4\xe2\xa5\xc8\xdb\x34\x93\xa5\xd3\xd5\x9a\x91\x7b\x85\xad\x43\x49\xdb\xb1\x97\xdf\xf0\x4a\xe4\xc4\x53\x40\xdc\xd8\x2d\xd9\xa7\x95\x75\x3b\xe5\xb2\x7b\xd8\xda\xbd\x6c\x30\x21\x6a\x09\xb4\x45\x2e\x44\xf8\xc0\xd1\x11\xd7\x4c\x9f\x5d\x06\xbb\x5d\x55\x7b\x4b\x6b\xb4\xce\x6e\x75\x85\x55\x11\xb3\x19\xc6\x42\x6d\xcd\x1a\x5d\x7a\xe3\x41\x81\xf0\x0e\xa5\xad\xeb\xc1\x89\x3c\x1b\xd7\x02\x2f\x36\x1f\x1a\xa3\xb8\x73\xbf\x2d\x8b\x61\x7e\x2f\x0e\x6f\xd9\xd9\x0c\x86\x7f\x35\xbb\xf8\xe2\xc9\xc9\x0a\xac\x78\x8b\xc1\xe9\xd2\xc3\x42\xec\x1f\xc5\x8c\x74\x6a\x63\x91\x54\xb0\xd0\x76\x7e\x13\xc7\x36\x71\x6c\xb0\xa0\x0c\x24\xd3\xd9\xef\x21\xae\xb0\xd5\x8a\x17\x38\x26\xbd\xbe\xbf\xbb\x84\x37\x77\x37\x45\xaf\xb0\x4a\x1b\x3a\xb0\x20\x9e\x84\x77\x05\x04\x07\x09\xd9\x92\xc6\x61\xa3\x03\x1d\xe4\x91\x51\x5e\xee\x23\x47\x4f\x0f\xb8\xb4\x66\xc5\xac\x73\x9a\x9d\xd8\xa0\xff\xc9\x41\xe4\x54\x5e\xc1\x4a\x24\x24\x64\x51\x82\xef\x74\x7e\x71\x01\xb5\x55\xba\x66\x9f\x1e\x2c\xf8\xd2\xa9\x16\xf3\xb6\xe2\xca\x55\xa3\x8d\x1c\xbe\x0a\x29\x99\x3a\x15\x62\x36\xfd\x6b\xda\xe7\x15\xa3\xf6\xe6\x43\xc0\xec\xbd\x76\xbb\x5d\xc1\xda\xc7\xf7\x24\xbb\x31\x7e\x34\x95\x9c\xd7\x54\xb5\x7a\xb2\xbd\x98\x4a\x1a\x67\x1a\xcf\x61\xba\xbd\x48\xff\xfc\x10\xdd\x57\xd1\x3a\x9b\x83\x0b\x82\x13\x22\x5b\x0f\x6a\x49\xf1\x37\xb3\x7e\xe6\x9f\x9c\x0c\x1d\xca\x01\x7f\x9f\xbc\x7e\xcc\x55\x9c\x1e\x67\xcf\x7f\x93\xe6\x46\x86\x93\xbf\xfd\x55\xea\x3b\xfb\xe2\xfc\x3c\x23\x83\x45\x8b\xa5\x5e\xed\x63\x71\x80\xe3\x08\x0e\x6a\x3a\x8f\x05\xbc\x37\x64\x8a\xe6\x50\xeb\xf5\x26\xf8\x80\xed\x18\xfe\xa9\xdb\x47\x6d\xc6\x50\xa9\xa0\xaa\x18\xe3\xc9\xac\x39\x8c\xe4\xe5\x28\xa7\x0c\x3e\x10\x20\x4b\xce\xe7\x3b\xe5\x25\xff\x9e\xe3\xf8\x7e\x4c\x0f\x6e\xfb\x9b\xd2\x27\xf3\x74\x1b\x38\xb6\x2c\x9e\x64\x20\x78\xb2\xa4\xd5\xf8\xf1\x5d\x57\xd7\x77\x6c\xab\x39\x71\xcf\x91\x0a\x13\x4b\x69\xb6\x61\x8a\xb1\x4f\xba\x49\xf2\x96\xd3\x0e\xb1\x0e\xe2\xf0\x1f\x9d\x76\x08\x37\xab\x77\x36\xdc\x39\xf4\x9c\x67\xa4\x9b\xba\xb5\xba\x82\xae\xad\xad\x92\xe4\x78\x4a\x0d\x6f\xba\xa5\x90\x91\xe2\xd1\x62\xa7\xb9\x02\x61\xe1\x4d\x2d\x21\x92\x4f\x47\x2f\x09\xe0\x54\x0b\x4b\x3e\x65\xb0\x3a\xe7\xf5\x0f\xb7\x33\x8f\x64\x64\xaf\x71\x1f\x77\xb4\x8d\xb7\xa1\xee\xa1\x39\xfc\xf9\x38\xe8\xad\x69\x6d\xce\x2b\xa4\xea\x41\x6b\x2b\x4f\xc7\x5d\xe7\x42\x42\xae\x3a\xb4\xce\xb6\x8a\x82\xba\x6a\xcc\x06\xc0\x61\x69\x9b\x06\x4d\x15\xf3\x7f\x99\xbb\x21\x03\x8b\x18\x78\x5c\x27\x85\x25\x8b\x2e\x7c\x46\x24\x2f\x5b\xb8\x64\xc0\xdf\xe7\x14\x1a\xfd\x91\x6c\xb8\x9c\x56\x8c\x06\xe4\x24\x57\xf2\xae\x90\x77\x29\x99\xf7\xcd\x37\x44\x58\xa2\xc6\xe7\x08\x6f\x94\x07\xb5\x5a\xe5\x5c\x3c\x8b\x82\x9d\x4c\x76\xab\x6c\xc4\x3c\xa9\x20\xeb\xa1\x36\xbd\x5e\xac\xf4\x1a\x1a\xd5\xc2\x24\x56\xac\x0c\x62\xc5\xa6\x79\x89\x24\x4f\x12\xa0\x68\x52\x50\x8f\x08\x98\xd7\x79\x86\x93\xa1\x04\xda\xfe\x39\xe1\xf3\xf7\x2d\x1a\x41\x98\x3d\x64\xd5\x06\x4a\xae\x39\xec\x52\x3c\x7c\x20\x99\x78\xb3\xa1\x54\x26\xda\x64\x87\xaa\xdc\x48\x1c\x76\x50\x75\x63\x43\x11\x2f\x72\x83\xca\x88\x5f\xca\xcb\x90\xfe\x19\xba\x0e\x79\x9d\xb2\xd6\x14\x90\x69\x0f\x9d\x49\xd6\xb9\xb4\xc6\x10\x08\x0b\x16\xde\xf2\x21\xe4\x32\xcd\xc1\x26\x06\x01\xdf\x29\xc8\xc9\x3f\x48\x99\x88\x44\xee\x7f\x93\xcc\xc7\xe9\xb6\xf9\x28\xfb\x28\xef\x67\xa4\x8d\xc3\x95\x86\x72\x4e\x71\xbf\xf8\xb9\x9c\xe5\x8a\x38\xca\x77\x2d\x59\x41\xac\xa2\xa9\x22\x84\x1d\x8d\xd6\x51\xde\x60\x30\x9f\xfd\x12\xf9\x2b\x34\x71\x1e\x1b\x3d\x7a\x74\x4b\xf6\x70\x11\xb0\xfd\x15\xf8\x2a\x22\x80\x39\x33\x72\x80\xce\x32\x77\x2a\x60\x5d\xeb\x40\x57\x93\x6b\x76\x3c\x8d\xe3\xc2\x07\xfb\x48\xb2\x8e\xf2\x91\x4b\xe8\x63\x09\x24\x31\x23\x77\x3a\x4f\xe4\x3c\x00\x61\x1a\x36\xec\x5a\xf4\x8a\xdd\x29\x4f\x88\xee\x7d\x49\x97\x9f\xab\xeb\x61\x03\x0f\xb7\x29\xe9\x51\x92\x4c\xc2\x9d\x0a\x1b\xe1\xb7\x55\x61\x93\xd6\xe0\x22\x78\xb4\xd3\xc9\x96\xc8\xf8\xe8\x2f\x44\xb1\xb6\xe8\xf4\x6a\x4f\x03\x1e\x6e\x17\x85\x64\x1a\x4a\xb6\xe2\x3e\x62\x3d\x4e\x65\xe7\x74\x10\xe4\xdd\xc5\xc4\x51\xce\x19\xa7\x1d\x54\x72\xe7\x55\x34\x57\x50\x4a\xee\x7c\x94\xbd\x52\x21\x6c\x8c\x72\xba\xa6\x74\xc8\x80\x35\x9a\xd6\x01\xe8\xce\x8b\xf6\x85\xe0\x8c\x6c\x1e\x71\x2f\x75\xe3\xb4\xbb\x25\x79\xac\x78\x48\x09\x85\x0e\x44\x74\x54\x42\x5e\xe2\x91\x54\x74\xf0\x58\xaf\x86\x48\x20\x73\x9c\x9c\x7c\x56\x8e\xd1\x08\x8e\xfe\x1b\x38\xec\x3c\x6d\x92\x55\x65\xfe\xea\xd5\xe7\x89\xc6\x50\x53\x0e\xe9\x0c\x68\xa8\x65\x59\xe1\x6a\x3d\xbb\xf8\xfc\xd5\x17\x5f\xfe\x2e\x4e\x4d\xba\xc2\x86\xf5\x93\xcb\xd3\xdb\x5f\x86\x28\x64\xa8\x25\x47\x8c\x0f\xa6\x4d\x31\x94\xd3\xcc\xfa\x54\x26\x15\x6d\xc4\x25\x02\x15\xfa\xd8\xe0\x07\x42\x36\x77\x29\x5f\xe4\x90\x6e\x48\x2a\x3e\xc7\x8b\xa7\x4d\x9c\x15\xf3\xb7\xac\x2f\x9c\x4d\x4c\x8a\x32\x8e\x09\xa4\x54\x05\xb5\x99\x7c\x9c\x98\x8c\xe9\x0b\x46\x9a\x5f\xbd\x9a\xcd\x5e\xe6\x98\x2e\x99\xa8\xd8\x1e\x20\x36\x4c\x72\x06\xc7\x45\xba\xe2\xe9\xf1\x49\x66\x4f\x40\xd1\xa7\x76\xe5\xbb\x25\x01\xf0\xbc\x2d\x9f\xae\xd6\x95\xcc\x93\x04\xd9\x53\xe2\xff\xf1\xe2\x87\xf7\x8b\x87\x0f\x37\x77\x2f\xe7\xaf\x67\x17\x5f\x8e\x0e\x6b\xbd\x0d\x01\x80\xe8\x2a\x49\x22\x72\xc9\xf8\x69\x4a\x55\xa5\x6c\x4c\xce\xab\xa6\x30\xec\xd0\x5c\xd1\x9c\xf9\x51\x0a\x2f\x56\xe3\xa2\xe5\x61\x32\x93\x60\x13\xde\xe4\x29\x05\x5c\x4a\x37\x0f\x39\x5b\xfc\xd8\xd6\xba\xd4\x81\x9b\x64\xfa\x32\xde\x30\xee\x75\x1d\xb9\xff\x9e\x1e\xb0\x67\xe3\x77\xbe\x78\xae\x1a\x29\x55\xda\x04\x88\x16\x11\xb4\x70\x4f\x53\x5d\x27\xd4\xfd\xa6\x2c\x6d\x47\x20\xad\xd6\x3e\xc4\x0c\x2d\x8f\x7b\xf6\x7c\x99\x64\x34\x5b\x9c\xdb\xee\xa4\x95\x4a\x99\x7d\x2c\x97\x03\xc7\x23\x84\x01\x36\x8a\x5c\x12\x57\xa2\x4b\x14\xeb\x75\xb8\xa6\x78\xe2\xef\xad\x1b\xd6\x71\x79\x5a\xc5\xbd\x3b\xb4\xc8\xe1\x0c\x0f\x2f\x74\x81\x05\xac\x9d\x5a\x29\xa3\xc6\x49\x14\x6b\xa7\xda\xcd\x38\x75\x5c\xbc\x7c\x7e\xe3\xe9\x10\x55\x55\x45\x48\xc2\xd5\x73\xe7\xd0\xb7\x56\x7c\xc3\x15\xb6\xb5\xdd\x37\x68\xc2\x0b\x0a\xc2\x71\xd5\xd5\x0b\x0c\x2f\xc1\x2e\x7f\xc6\x32\xe1\xdd\xb7\xd1\x5a\xd2\xb1\xb1\x30\x4d\x4c\x8b\x7b\x74\xc3\x12\x37\x1b\xc8\xd6\xe9\xad\x0a\x98\xfa\x20\x1c\xae\xb5\xa7\xd0\x6f\x08\x55\x23\x83\x49\x85\x26\x69\xd2\x24\x8d\x9e\x3c\x62\x6c\x35\x48\x61\x47\x6b\x2b\xf0\x84\x66\x3a\x11\xbf\x2b\x37\x2f\x54\x53\x7d\xf9\x6a\x0c\x6d\x5b\x7e\xf9\xaa\xc6\x31\xf8\xcf\xbf\x3a\xff\xf8\x52\x4a\x44\x48\xf6\x84\x2e\xe7\xca\x32\x8a\x92\xd6\x24\x80\x73\x98\xc0\x3b\xdc\xa2\x4b\xd4\xb0\x8a\x6f\x66\x30\x81\x5b\x54\x3e\x40\xcb\x87\xe8\xf2\x9b\x0b\x9a\x63\xe3\x63\x3a\xdb\xf8\xfc\x73\x98\xc0\x5b\x7b\x34\x81\x38\x93\x8d\x31\x7b\x73\xb8\x90\x74\x34\xf1\x96\xfe\x88\x1c\xc7\x64\xef\x29\xfc\x39\x3a\xde\x60\x19\xd2\x38\x5d\x0a\x18\xe5\xb8\xa4\x14\x85\x1f\x98\x9c\x41\xb7\x52\x8d\x0e\x24\xd5\xea\xff\x33\xf5\x28\xe4\xba\xc9\x60\xcc\x8e\xdc\x15\x4a\x57\x43\xdf\x25\x75\x02\x60\x0d\x0e\xda\x6a\x06\xd7\x28\xdd\x6b\x63\x2b\x8c\x49\x36\xeb\x22\xce\x1d\xc4\x4b\x8a\xcd\x68\x52\x22\x0f\xde\x8a\x42\x73\x4b\x17\xdd\x0a\x69\xe0\x4b\xd1\x88\x0f\x8e\xa2\x37\x9e\xea\x3a\xf2\xd5\x2d\x45\x1c\x65\x57\x2b\xc7\x4b\xf9\x42\x5a\xfc\xfa\xaa\x10\x11\xa0\x18\x68\xe7\x08\xf9\x84\x0d\xfa\xdc\xb5\xc1\x54\x63\x79\xab\x6f\x7d\xd0\xc1\x1f\x71\xbd\xac\x6d\xf9\x98\xee\xb7\xc3\x1a\xb7\xca\x90\x8c\xa4\xda\xbd\xc4\x3a\x16\x16\xfb\x8e\x82\xd3\x84\x07\x18\x4d\xc5\x9e\x3c\x42\xf1\xb2\xf0\x3b\x5b\xe1\x22\x52\x9f\xc3\xff\xfc\xef\x93\x63\x6c\xd1\x71\x5b\x0b\x5d\x57\x74\x13\x4f\xf1\x1b\x57\x76\xc4\xb2\xd9\x55\xbe\x37\xb1\x33\x2f\x35\x60\xfd\x29\x0f\x3a\x40\xad\xd2\x54\x79\xf5\x6e\x91\xe0\x70\x0e\x8d\x6d\x15\xd5\xc6\xd6\xdb\x68\xb7\xc4\xa8\x45\x4b\xae\x8d\xf8\xa6\x93\x41\xf9\xdd\x17\xdc\xc0\xc9\x16\x8a\xce\xb0\xaa\x58\x76\xb1\x07\xd3\x23\xe9\x70\x2c\xd1\xfb\x18\x84\xf2\xc6\xfa\x36\x29\x01\x90\x72\xac\x29\xa1\xf2\xd8\x2d\xd1\x19\x0c\xe8\x73\x32\xa5\xb4\xa6\xc4\x36\xf8\x69\x4e\xf3\x1b\x0c\x3b\xeb\x1e\xb5\x59\x4f\x2b\xe3\x27\xad\xad\x92\x8b\x98\x9e\xd2\x03\xd9\xde\x49\x4e\xaf\x56\x16\x3d\x6b\x34\xe9\xdc\x7e\x50\x4b\x14\xed\x12\xef\xbb\x87\xb0\x6f\x35\xc1\xbd\xbd\x34\xf6\xa9\xbe\x25\x28\xb2\xca\x96\x9e\xe4\xd7\x37\xa6\x6e\x94\x28\x84\x21\x90\x50\x0f\x2f\x9b\xd0\x7e\x81\xc5\xba\x18\x83\x36\x4c\x82\x9b\x0c\x53\x31\xd0\x97\x68\x94\xd3\x56\x5a\xeb\x4e\xe1\xdd\xfb\x87\xeb\x39\xdd\x3d\x69\x65\x09\xd8\xb4\x9c\x41\x1a\x47\xf3\x93\x30\x72\x40\x67\x92\x1e\x4a\xc4\x4c\xe8\x33\x22\x21\x51\x44\x26\xd8\xda\xea\xea\xdd\x62\xc1\x07\x91\xaf\xa7\xd8\xb0\x49\xac\x82\xca\xbf\x47\x7f\xfd\xab\x68\xe7\x7b\x97\x2e\x6c\xd1\xdb\xf4\xb7\x18\x54\x91\xe7\xc3\xdf\x52\x97\xd1\xdf\x46\xf0\xf7\xbf\x17\x42\x27\x82\x84\xe3\x82\x22\x33\x2c\xc5\x38\x53\x41\xea\x2f\x64\xb0\x90\xb1\xc1\xc7\xd6\x7a\xac\x62\x87\x8b\x44\xe4\xb1\xce\xd0\x37\xc8\x34\xe8\x37\xd7\x1f\x5b\x65\x3c\xa9\xf4\x73\x4e\x1b\xe0\x37\xae\x9f\xd0\x74\x5b\x2b\x12\x25\x7e\x0c\x71\x24\x57\x00\x86\xfd\x2d\x87\x4c\x2a\xd3\xd7\x50\x86\x1d\x3c\x9d\xc7\x9b\xdb\xef\x06\xc6\x8f\x8f\xfa\x52\x8e\x7a\xde\xa7\x6f\x13\x73\x07\xd1\xef\xce\x42\xaf\xf7\xf9\x7e\xa5\xa4\xa5\x26\x07\x48\xa8\x33\xe8\x6d\xda\xe9\x61\x0f\xd1\x00\x72\x51\xec\xc2\x8a\xa7\x4d\x6c\xd2\x8a\xda\x16\x23\xfa\xa3\x64\x6c\x50\xf5\x23\x77\xd3\x19\x02\x46\x7c\x41\x0b\x78\x53\xd7\x3d\x13\x7d\x08\x27\x6a\x29\xd9\xd8\xe6\xe1\x76\xc1\x32\xa4\x20\x28\x55\xf4\xd4\x16\x29\x6e\xda\x70\xa7\xaf\xb3\x36\xc0\xe5\x9b\x68\x63\xb4\x87\xc6\x92\xf0\x83\x7d\xd2\xff\x73\x88\xbc\xde\x48\x23\xa0\xaa\xd3\x7d\x8b\x1d\x36\x44\x32\xf7\xe6\x90\xbd\xf9\xb7\xee\xe3\x44\x30\xb1\xd3\xff\xa4\x30\xb2\x86\x3b\x5b\xc1\x9b\x2e\x58\x6e\x49\x77\x3d\xb0\x89\xb9\x88\x55\x67\xc4\x94\xbf\xd0\xac\x46\xf1\x56\xfe\x7a\x47\xf2\xbc\x13\xb1\x3b\xd3\x33\xce\x14\x7f\xa3\x23\x39\x70\x22\xbd\x08\x9e\xb8\x93\xfb\xc3\xd6\xa4\xe3\xc6\xa4\xd8\x96\xd4\xe4\x98\xf4\x69\x57\xd2\xe9\x41\x57\xd2\xe9\x93\x5e\xa6\xa7\xb3\x4e\xfa\xd6\x35\x76\x22\x15\x01\xaf\x4e\xfa\xc6\x96\x5d\xb5\x8e\x58\xef\x49\x67\x74\x6a\x0f\xd7\x3e\x25\x60\x23\x25\x4f\xb1\xfb\xcd\xbf\x4c\x9f\x72\xba\x7f\xed\x54\xd5\xb1\xa9\xce\x9d\xcf\x1c\xc8\x95\x74\x36\x92\xad\x8a\x62\xb9\xb3\xd5\x95\xf6\x91\xa9\xef\x98\xa7\x23\x0b\xc2\x1e\x12\x72\x79\xaa\xef\x74\xe1\xe6\xf6\x8e\xb3\xc1\x50\xc9\x95\x55\x20\x0d\x50\x01\x9e\xa1\x2b\xe2\x1b\x46\xfe\x8d\x36\x6f\x52\x35\x22\xd6\xf7\x4f\xe1\x8f\xfd\x55\xff\xf6\x9b\xed\xac\x98\xcd\x8a\xd8\x8b\x20\x99\x04\xb6\x07\x77\x4e\x5b\x6e\xb0\xa8\x95\xf7\xc3\xfe\x68\xc9\xb6\x4f\xe2\xfd\x9c\xa4\x66\x1b\xd2\x18\xf1\x52\xf2\x9e\xb0\x4b\x7e\x39\x96\x4e\x49\x8a\xd0\x82\x40\x8b\x72\xd0\xb9\xa2\xc5\xbf\xbb\x4a\x5e\x35\xea\x11\x81\xcf\x61\x6f\xbb\xd4\xd4\x4b\x26\xe5\x24\x9b\xc4\x98\x1a\x7c\xd4\xd2\x45\x89\xa5\xea\x24\x77\x41\xaa\xdb\x46\xce\xa1\x24\xd6\x53\xa7\xf3\x4a\x88\xff\x1a\x37\x7f\x00\x6a\xa6\xe4\xdc\x13\xc9\x49\xeb\x10\x1b\x96\xf8\xf4\x34\x3d\xe4\x65\x72\x97\x3e\x7f\x6c\x20\x85\x13\x4e\x26\x0e\xc5\x28\xed\x97\xa3\xe8\xac\x04\xbc\x20\xbc\x45\xbf\x49\x6d\x75\x70\xe7\x6c\xb0\xa5\xad\xe1\xc5\xdb\xcb\xbb\x97\x4c\x31\xb1\x43\xc2\xe7\x24\x65\x16\x35\xf7\x99\x14\x70\x9f\xf2\x89\x6b\x55\xd7\xb8\x87\x17\x3f\x4d\x26\x64\xbb\xe4\xcf\x9c\x50\x26\x35\xfb\x89\x8d\x4a\xe7\xf1\xed\xe5\xdd\x10\x9a\x3d\x70\xea\x94\x22\x24\x01\x4c\x83\x00\x2b\x87\xed\xf2\x9e\xcd\xaa\x5d\x91\x9d\x4d\x65\x97\x67\xc4\xbb\xd6\x61\xd3\x2d\x8b\xd2\x36\x53\xdf\x12\x88\x49\xff\xb7\xac\xed\x72\x2a\x2d\xd9\x53\x1f\x94\xa9\x94\xab\xfc\x74\x71\x77\xf3\xfd\xf7\xd7\x93\x9b\xab\xa2\xa9\x4e\x2f\x66\x13\x5e\x6a\x22\xac\x88\x63\x97\xc6\x10\x11\x58\x64\x91\x2f\xae\x36\x20\x93\x41\x57\x68\x02\x1d\xfb\x8f\xf7\xb7\x79\x4f\xc9\x32\x4a\x2b\xb5\x4f\x7d\xac\x68\xb6\xda\x59\xd3\x60\x8a\x66\x61\xe0\xff\xe6\x70\xd0\x99\x19\xdf\x63\xed\x71\x0e\x3d\x41\xe3\x21\xf3\xc7\xec\xe6\xbe\xce\x78\xbc\x8b\x98\x8b\x4f\x33\x96\xb8\x51\x5b\x6d\x5d\xce\x83\xc6\xaa\x3a\x1d\xf1\x46\x99\x8a\x23\xc2\x27\xed\x1a\xf1\xfb\x9f\x83\x28\x4a\xa2\xc0\x37\xb7\xb7\xef\xff\xfc\xe1\xcd\xbb\xbf\xc0\xe4\xe9\x34\x8a\xf5\xcd\xa3\x21\xdb\x3f\xc8\x45\x0c\x82\x69\x69\xfb\x18\xa7\x74\x3c\x2d\xe1\x90\x2d\x9b\xb1\x71\xc7\xd9\xa7\x5b\x97\xe2\xf9\x6b\x13\x9c\x1e\xb4\xa6\x0e\xf3\x1c\x84\x5b\x44\x19\xae\x7f\x7f\xb3\x78\xb8\xff\xcb\x87\xf7\xef\x6e\x89\xb9\x1c\x0c\x3e\xc7\x65\x5e\xa4\xc2\x15\x87\x54\x29\x7f\x11\x93\x25\x29\x96\x26\x8c\xbc\xc3\x3a\x9d\x06\x23\x66\x2b\xae\x4f\x22\xb1\x8d\xb3\xdd\x7a\x73\xc4\xe8\x91\xa0\xb4\x3f\x38\x11\x6d\x60\x56\xcc\x0a\x88\xcd\x6f\x5c\x43\x60\xc8\x42\x9e\xe4\xd8\x3b\xb3\x55\xca\x3b\x48\xce\x2d\x25\x56\x7a\x59\x75\x81\xc3\xa4\x78\xc8\x04\x1c\x73\x03\xb3\x32\xfb\x21\x7f\xfb\xe2\x19\x71\xed\xd4\x33\x3c\x9e\x17\xc0\xa9\xae\x0d\x9b\xd0\xa8\x46\x5c\xe1\x60\xa7\x3c\x3e\xaa\xfb\x88\x07\x0f\xf6\x90\x34\xad\x96\xf8\x7f\x90\x03\x88\xc5\x36\xf6\x15\x84\x8e\xe6\xbd\xac\x7a\xb3\x30\x48\x1d\xb3\x8e\x08\xe0\xae\xf7\x09\x67\x1d\x58\xcb\x21\x5c\x6b\xa5\x8e\x98\x0a\x37\x59\x53\xee\x39\x21\x26\xf1\x75\x0a\x87\xe4\x52\x06\xed\xa2\xc8\x62\xd4\x92\xfb\xc1\x09\xee\xbd\x1c\x4b\x95\x2d\x4a\x66\x11\xef\x8f\xac\xef\xc7\x80\xa1\x2c\x06\xcb\x0f\xf2\x45\x7a\x90\x77\x28\x52\x10\xbf\xd2\xeb\x7b\x6b\xc3\x73\xdf\x0a\x51\xec\x96\x23\xae\xe1\x69\x44\x44\xd8\xe7\x1e\x18\x4e\x32\x92\x48\x1a\x90\x93\x5b\xb4\x1f\xd2\xc1\x31\x6c\xb5\x0b\x1d\xe3\xc9\x34\xe4\x30\x45\x7f\x1a\x73\x84\x3d\xef\x84\xf7\x63\x05\xae\x80\x4b\x71\xf8\xf5\x5e\x5a\x85\x08\x29\xcb\x39\xc7\xaf\x0a\x73\xae\x9e\xaf\x0e\x7f\x22\xe4\x43\x6c\x93\xe0\x81\xb2\x95\x4c\xdc\x9a\xac\x9e\x12\xd7\x31\xc6\xdb\xd9\xd8\x6f\x1f\x93\x4c\x9f\x81\x6e\x62\xe7\x2b\x63\xcc\x98\x4b\x63\x13\xb1\xd5\x5e\xc7\x6b\x71\x98\x8a\x19\x9c\x18\x29\xfb\xa0\x6b\x38\xe1\x7c\x7a\x1c\xc3\xf0\xbe\x25\xfb\x14\x8a\x5f\xb7\x1a\x0b\x80\xae\x5b\xea\xdc\x7c\x36\xdb\x39\x26\x8b\xa5\x57\x44\x52\xa4\xa8\x3c\xa8\xa4\x2f\x45\x6a\xe4\xb3\x1c\x37\x9c\xc6\xa3\x95\x8a\xd8\x9f\x68\x29\x5d\xeb\xb0\x8f\xcd\xd6\x29\x5a\x3d\xfb\xec\x8c\x34\xc2\x57\x19\x9b\x2e\xae\x16\x7d\x1d\xfa\xe6\xfb\xc3\xb8\x8f\xa3\x93\x83\x0f\x21\x8e\x9a\xf9\xb3\x25\x4e\x09\x63\x32\x72\x7a\xd9\x85\x81\x29\xa3\xe1\x92\x63\xbc\xd2\x9e\x71\xe5\x3e\xb5\x5c\x68\xe3\x03\xaa\x8a\x8e\x51\x82\xa2\x3f\xbe\x5e\xe4\x0c\x30\x19\x2b\xdb\x99\xa7\x5f\x63\x3c\x1b\xf3\x70\xec\x58\xf9\x54\xde\x48\xb1\xe4\x03\xb9\xb4\x9d\x75\x61\xb3\xff\xc3\x2e\x1c\x0c\xf6\xf8\x8e\x73\x0d\x83\xe7\x07\x45\x49\xec\x2d\x5f\xcc\x93\xa4\xca\x32\x7b\xec\xd8\x69\xb8\x68\x6b\x1d\x52\x74\x04\xd7\x57\x0b\x56\x84\x6c\x75\x7a\xcd\x4c\x79\x05\xb1\xf4\x9e\x35\x35\xd3\x95\xcf\x61\xf3\x87\x53\x68\xaa\xd6\x6a\xc6\xe8\xde\xdb\x52\x8b\x67\x6a\x30\x6c\x6c\xe5\xfb\xbc\xf5\x4f\x71\xfe\xec\x27\xd6\xdf\x7e\x56\xfa\x88\x45\x3b\xb8\xb9\x63\x3b\x9a\x3e\xfe\x1d\xd6\xc4\x2e\x6f\xae\xee\xc1\x29\xb3\xc6\xc1\x29\x9e\x42\xa3\xda\x56\x2c\x4e\x22\x2f\x9d\x42\x29\x46\xce\x81\x68\x7c\x9d\x77\x76\x50\xfc\x5b\xee\x39\x6a\xe3\xaf\xf1\x4a\xb8\xb9\x3b\x19\x54\x55\x73\xcb\x58\x91\xe5\x24\xdd\xbd\x89\xe4\x38\x6f\xed\xe2\xa7\x71\xb6\x07\x83\x75\x92\xbb\xcc\x22\xab\xf7\x22\xc3\x03\x39\x88\x4d\x42\x32\x5f\xdb\x23\x85\xec\x19\x7d\xdb\xd5\x41\x4f\x62\x82\xa1\xf7\xd3\x52\x17\x7c\x22\x8b\x0b\x96\x05\x13\x4e\xf2\xd0\x5e\x9a\xde\x3e\xc9\x53\x88\xde\x27\x59\xab\xa3\x64\x43\x02\x73\x0e\x1b\x1b\x70\x98\x19\x14\xb9\x67\x11\xe6\xcb\x97\x08\x24\xdf\x5e\x61\x40\xd7\xf0\xe2\x11\x67\x71\xed\x83\xc8\xf5\xb5\x33\x63\x63\xf6\x2d\x57\xd5\xf7\x29\x36\x97\x63\x47\xbf\x79\x17\xf5\x31\xe5\xe7\x93\x02\xa4\xbf\xa1\x97\x6d\xff\x68\xc2\x8b\x5e\xea\xca\xcd\x61\x34\xfb\xea\xa2\x98\x7d\xf9\xba\x38\x2f\x66\xd3\x8b\x57\xa3\x3c\x28\x7d\x73\x30\x9c\x96\x4b\x65\x84\x5e\x66\xc5\x2c\xbf\x4a\xdd\x4f\xaf\xcf\x0f\xf9\xb8\xf8\x15\x7c\xdc\xc7\x03\x9c\xd3\x51\xce\xfe\xe5\xfa\xe9\xac\xa3\x35\x8a\x1f\x95\x3d\xf3\x61\xda\x13\xc6\xa4\x8c\x7b\x1a\x33\x6a\x59\x6a\x39\xf7\xbc\xc8\x55\xfc\xc1\x87\x12\x8c\xc2\x09\xd8\xd7\x56\x55\xb0\x54\xb5\x32\xa9\xf3\x62\x90\xc7\xbd\x8d\xa3\x26\x52\x34\xc1\xea\x78\x78\xec\x43\xe1\xd6\x3b\x62\x5f\x05\xeb\x7c\x0c\x45\x39\xf4\x62\x47\x9f\xec\x70\xcc\x6f\xf7\x48\x35\xe6\x07\x92\xa5\x58\xaa\x3e\x69\x98\x38\xd4\x92\xb4\x16\x98\x34\x6c\x46\xb1\x4e\xaf\xc9\xdd\xa3\x8f\x5f\xfe\xd0\x00\x1d\x3f\x08\x14\x15\x54\x21\x22\x93\x3b\xfe\xbe\x55\x8a\x8b\xd2\x17\xb8\x52\xba\x26\xeb\x4f\x5e\xad\xf7\x13\x87\xb8\x8b\x3f\xbe\xe0\xa8\xd8\x86\x4d\xaf\x9b\x49\x74\xb7\xcb\xe8\xcf\xd2\x31\xf6\x74\xd2\x13\xd1\x82\x39\x8c\x3a\x3f\x29\x09\xba\xa8\x7a\x36\xfd\xac\x57\xc4\x60\xe7\x83\xe3\x3c\x1a\x35\x50\xb9\xa3\xb7\x17\xfc\xf6\xe2\xfc\xdf\xb3\x94\xb6\x79\xcc\x50\xe7\x27\xa8\xc4\x57\x27\x46\x00\xbb\xc9\x0e\xf3\xb3\xc1\xc8\xc1\x53\x19\xd9\xcf\x7e\xba\xf0\x33\x6a\x97\x9a\x47\x36\x58\x37\xdc\xff\x45\x56\x2a\x95\x8f\xad\x23\x11\x17\x7d\x5a\x9f\xbf\xde\x1a\x34\xf7\x4a\x4b\x52\x5f\x65\x1e\x83\xb7\x70\x16\x69\x49\x32\x1d\x8a\xa2\x38\xeb\x13\x19\x7a\x6d\x6c\x54\x96\x7e\x49\xfe\xd5\x84\x95\xae\x53\x3a\xf5\xe8\x7b\xf8\x44\x2a\x37\x08\xfd\x80\x75\xf3\x80\xbe\xf7\xc6\xe4\xf4\xa5\x9e\x16\xeb\x3a\x14\x40\xc7\x9c\x71\x4a\xea\x4d\xc4\x1b\x1f\x2f\x70\xc0\xac\xc0\x96\x47\x2e\xdb\xe8\x7f\x62\x71\x92\x2d\x6c\xff\x95\xe2\x41\xe7\x38\x67\x89\xd2\xe7\xff\x29\x43\xb4\xa3\x78\xa8\xcf\x1b\x3e\xb7\x25\xfe\x65\x0a\x3f\xed\x7f\xe4\x83\x96\x22\x4f\xbd\x54\xe5\xe3\x4e\x39\xfe\x4d\x90\x56\x85\x94\x47\x8a\xf2\x3e\x23\xb4\x75\x36\x8e\x1d\x80\x9c\xf0\x34\xe9\x9b\xf8\x89\x0f\xfb\x3a\x7f\x7c\x1a\xeb\x53\x5c\xdd\x32\x79\x3a\x8b\xeb\x4c\x3e\x97\xf8\x14\xb7\xe9\xf7\x2a\xa4\x97\x58\xea\x48\x84\x4a\xf3\xd7\xab\x02\x6d\xf2\x47\xae\x27\xa7\x10\x3f\x84\x65\x50\x1a\x74\x33\xe8\xb9\xb9\xbc\xbf\xf2\xc5\xc9\xb1\x0c\x53\x22\xe6\x14\xfe\x14\x7f\x3c\x21\x6e\x51\x79\x38\x8b\xbf\xa7\x70\x06\xb5\x5a\xa2\xfc\x3e\x4a\xab\x5c\x48\x3e\x31\x71\x1a\x6b\x66\x2c\xdc\x43\x31\xca\xaf\x3a\xa4\x36\xd3\xe8\xc5\xfa\x5f\x9b\x48\xbf\xd7\xa0\xcd\x13\x14\xed\x75\xa3\x6b\xe5\x84\xfd\xbe\xbe\x94\xcd\x9a\xdf\xe8\x55\x28\x4e\x22\x05\x46\x8f\xff\x17\x00\x00\xff\xff\xfc\xe7\x14\x24\xc8\x45\x00\x00"), - }, - "/charts/global.yaml.orig": &vfsgen۰CompressedFileInfo{ - name: "global.yaml.orig", - modTime: time.Date(2019, 8, 8, 4, 8, 21, 802116884, time.UTC), - uncompressedSize: 17971, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x7c\xff\x73\x1b\xb7\xd1\xf7\xef\xfa\x2b\x76\xa8\x77\x46\x76\x86\x3c\x89\xb2\xe3\x38\x7c\x93\xcc\x28\x92\xd2\xa8\x95\x6d\xbd\xa2\xd2\xbe\x9d\xb6\xe3\x80\x77\x4b\x12\xd1\x1d\x70\x05\x70\xa4\xd9\x27\xcf\xff\xfe\xcc\xee\x02\xb8\x23\x25\xb7\xc9\xe3\x99\x4e\xa3\x3b\x60\xb1\x58\x2c\x76\x3f\xfb\xe5\x78\x0c\x7f\xa8\xed\x42\xd5\xa0\x4c\x05\xa5\x6d\x1a\x6b\xc0\x63\x08\xda\xac\x3c\x2c\xad\x03\x6d\x7c\x50\x75\xad\xcd\x0a\x6e\x7c\xd0\xb6\x38\x3a\x3a\x86\x87\xb5\xf6\xb0\xd4\x35\x82\xf6\x50\x5a\xb3\xd4\xab\xce\x61\xc5\x13\x14\xf8\x46\xd5\x35\xf8\x52\xd5\x08\xad\xb3\x55\x57\x06\x6d\x0d\x94\x75\xe7\x03\xba\xe2\xe8\x18\x7e\xf2\x08\x9d\x47\x37\xd9\xa8\xba\x43\x3f\x69\xb0\xd2\x5d\x03\xd6\x41\xd9\xf9\x60\x9b\x9e\x85\x60\x21\x74\x06\xa1\x6b\x21\xac\x11\x2e\xef\x7e\x62\x4e\x89\x38\xf1\x44\xc4\x2e\xaa\x4a\xd3\x02\xaa\x06\x21\x07\x76\x83\xce\xe9\x0a\x3d\x94\xca\xc0\x82\xd7\xaa\x98\xf1\x6b\x55\xae\x41\x9b\x4a\x6f\x74\xd5\xa9\x9a\x76\xdc\x5a\x83\x26\xc0\x56\xd7\x35\x8d\x4b\x34\x96\xce\x36\x10\xd2\x3e\xc7\xb0\xd5\x61\x0d\x15\x2e\x55\x57\x07\xcf\x3c\x9c\xa8\x6a\xa3\x4c\x89\xd5\x49\xcf\xae\x36\x65\xdd\x55\x58\x81\x36\x47\xc7\xa0\x83\x07\xbb\x35\x50\xae\x95\x0b\x27\x3e\x92\x2e\x76\xaa\xa9\x45\x8c\x1f\xae\x3e\xcc\x20\x38\x3d\x58\x89\x76\x2c\xe7\x50\xef\x98\xef\x4c\x7c\x0c\x35\xaa\x0d\x0e\xd7\xd5\x86\xa5\x32\xd8\xd0\x60\x09\x78\x11\xd6\xb8\x23\x11\x1c\x1d\x83\x0f\xb4\xbf\x05\x26\xd9\x54\x68\x60\xc1\x0b\x38\x3f\x86\x45\x17\x60\x6b\xcd\x49\x00\xbf\xb6\x5b\x22\xbb\x50\x5e\x97\x50\xd9\xb2\x6b\xd0\x04\x45\xf2\xed\x4f\xbe\xb2\xe8\x69\x70\xa3\x02\x89\x93\xd4\x22\x8b\x66\x0c\xdb\xb5\x2e\xd7\xa0\x1c\x42\x63\x1d\xc2\x0a\x15\xa9\x46\xb0\x5b\xe5\x2a\x0f\x01\x7d\x94\xdf\xc2\xda\x47\x6d\x96\xa4\x51\x2b\xd6\xc1\xd9\x11\x00\xeb\x06\x8d\x86\xda\x96\x2a\xa0\x50\x9f\xb4\xba\xb6\xa1\xe0\xf7\x57\xb2\x10\x69\x5e\xb0\x49\x3d\x81\x07\x10\xe3\x0a\x2a\xac\x34\x4d\xad\xc0\xa8\x06\x7d\xab\x4a\x1c\x0f\xc9\x4c\xa7\x05\xfc\xd5\x76\xac\x1b\x74\xe0\x4d\x57\x07\xdd\xd6\xd8\x0f\x17\x89\xf0\x6a\xa4\xd1\x48\x4a\x73\xd2\x3a\x4b\xe7\x73\x02\x3b\xdb\x81\x41\x61\x52\x24\x40\x67\x50\x5a\x13\x9c\xad\xa1\xad\x95\x19\x90\xe2\x9d\xd2\x7b\x3e\x18\xb0\x4b\xe1\xe4\x7d\x7a\xcf\x8b\xdc\xf0\x6e\x94\xf7\x5d\x43\x64\xd7\x2a\x44\x7e\xfd\xce\x07\x6c\xe8\xa5\xeb\x8c\xa1\x3b\x88\x3a\xac\xd1\xc1\xb4\x38\xa3\xdb\x42\x3b\x68\x57\x4e\x91\xc6\x6d\xd0\x79\xba\x66\x76\x09\xd3\x62\x2a\x67\xca\x4a\xe4\xb1\xec\x9c\x0e\xbb\x5e\xd9\x3d\x9d\x0e\xaf\xcc\x0a\xf6\xa2\xd4\x41\x55\x58\xc3\x0a\x0d\x3a\x45\xca\xc6\x2c\x7b\x2c\x1d\x06\xff\x92\xe4\xbe\xcf\xf5\x2c\xf2\x17\x37\x7d\x04\xd1\x08\x7c\x76\x00\x2f\xf6\x80\x35\x36\x18\xdc\x6e\xef\x60\xf8\xc6\xf0\x92\x4e\x95\x7c\xa5\x01\x42\x1a\xf9\x84\x60\x7e\x43\x24\x5b\x67\x1b\x0c\x6b\xec\xfc\x7f\x18\x67\x6b\x5d\x3e\xa5\x25\x8f\x69\x40\x12\xd1\x93\x21\xe9\x05\x6f\xe0\x18\xae\x4d\x05\x06\xb7\xf9\x4a\xca\xd3\x8b\x65\x40\x27\x37\xb8\xd6\x06\x61\x8b\xb0\xa6\x8b\x4a\x32\xb4\x75\x25\x76\x33\xcf\x29\x8e\xf6\xd4\x78\xdd\x2d\x58\xc9\x64\x90\x6e\xd4\x0a\xbd\x28\xfa\x3d\xd6\xa8\x3c\xf2\x61\x41\xdb\x2d\x6a\xed\xd7\xa2\x75\x95\x2d\x1f\xd1\xf1\xd4\xce\x54\xe8\xe0\x84\xb9\x3d\x21\x81\xfc\x82\x65\xba\x28\x4a\xd7\x3b\x58\x74\xba\xae\xa2\x39\x6b\x9d\xdd\x32\x35\x6b\x60\x55\xba\x42\xdb\x31\xeb\xa7\xd1\xab\x75\x38\x18\x5b\x6a\x57\xd6\x3c\x52\x56\x2b\xb4\x3d\xe5\x55\xe2\xe0\x23\xa0\xf5\x67\x91\x8e\xbc\x9a\x38\x61\x79\x7f\x87\x41\xad\x9e\xdd\x61\x50\xab\x19\x34\x8a\x7c\xc2\xa4\x56\x64\x17\x26\x15\xb1\x2c\xb3\x2f\x6d\xd3\xa8\x89\xc7\x56\x39\xbe\xcb\x8d\x36\xba\xe9\x1a\x68\xd1\x4d\x7c\x69\x5b\x84\xda\xae\x56\xa4\x37\x35\x6e\xb0\x26\xb5\x6f\xd0\x7b\x22\x4e\x22\xb2\x5d\x68\xbb\x30\x4e\x16\x72\x69\x5d\x43\x43\xbe\xe1\xa9\xdf\xcd\xbe\xe1\x49\xdf\x8d\x0f\xfe\x16\x35\x7d\x72\x9b\xd7\xca\x43\xa5\x97\x4b\x74\xe4\x29\x78\x8a\x87\x0a\x5b\x34\xac\xb8\xe4\xdb\xd2\xd5\x92\x7b\x47\xa6\x25\xbb\xc5\x64\x1a\x89\xe1\xc8\xac\x2a\x9d\xf5\x1e\xc8\x70\xf5\x97\x52\x4c\xc1\x12\xb0\x69\xc3\x6e\x9c\x67\xc9\x66\xe9\x98\x64\xee\x36\x1a\x72\xbe\xba\x6a\xcf\xfd\x6a\x5a\xb5\xa2\x9b\x1d\x65\x43\x16\x15\x64\xde\x0c\x46\x91\xe2\x8c\x8c\xee\x28\x5e\xc9\x24\x29\xe6\x45\x2c\xf9\xc0\x4c\xd4\x96\x7d\x1a\xfc\xe2\xad\x61\x19\xaa\x40\x5e\x43\x55\xbc\xef\xc9\xa4\xb6\xab\x8f\xca\x7f\xe4\xd7\xca\xad\xd8\x57\x90\xf4\xd9\x62\x92\x0c\x95\x36\xe8\xf2\x2b\x61\xec\xc2\xff\xd1\x5b\x33\x83\xa5\xaa\x45\x55\x1e\xdf\xfa\x1b\xb3\x72\xe8\xbd\xf0\x8b\x46\x2d\x6a\xac\xd2\x08\x7a\x74\x0c\x7f\x50\x01\xb7\x2a\xba\x44\x52\xa7\xc7\xb7\x1e\xe2\x34\x70\xe8\x6d\xe7\x4a\xf4\x05\x7c\xbf\xcb\x92\xd3\x64\x46\xe3\xf4\xce\x13\xc7\x72\x4f\x66\x5a\xa6\xad\x84\xe4\x89\x58\xdc\x24\xd7\xe8\x51\xb0\xa2\x9d\xc6\x4b\x1b\x89\x9c\xc4\x19\xbe\x88\x2c\x9e\x08\x10\xc8\x8f\xe5\x16\xec\x93\xcf\x63\x23\x91\x65\xad\x22\xae\x71\x1d\x16\xfc\x30\x8e\x24\xeb\x33\x83\xfd\xd9\x71\x92\xd0\xf8\x31\x84\xd6\x0b\xa3\xaa\xaa\xa0\xb5\x2e\xc0\xeb\xd7\xaf\x48\x01\x05\x06\xf0\xcc\x22\xce\xb9\x09\x70\x7f\xfd\xff\x7e\xba\xb9\xbf\x9e\xcb\x0e\xd9\x4d\xa1\x0b\x7a\xc9\xfe\x51\x0c\x4b\xbf\xdd\x78\x57\xd2\x8a\x9f\x5a\x2c\x03\xc3\x0f\xf6\x02\x30\x11\x26\xc4\x39\x68\x0f\xb6\x65\x54\x47\xb8\xc8\x92\xca\x0f\x08\x47\x12\xcc\xa8\x43\xcf\x67\x61\xe0\xf6\x6a\x0e\x0e\xc9\x3e\xd1\xbc\xe4\x17\x23\xd3\x32\xd8\x58\xc2\x21\xee\xb1\x18\xe8\x01\x6f\x7a\xa0\x2d\xad\xb3\x9f\x76\xa2\x28\x6c\x4b\x66\xf2\x64\x73\x7e\x14\x97\x8d\x38\x13\x2a\xdb\x28\x6d\x8a\x6c\x87\xc4\x03\x6b\x0f\xa3\x84\x44\x09\x62\xd4\x23\x59\x2c\x3e\xbb\xe2\x49\xb3\xc3\x31\x89\xf6\x7d\x52\x34\x56\x41\x76\x92\xba\xc2\x52\x39\x21\x92\xf5\x50\xf8\xa3\x07\xff\xec\x08\xf0\xa4\xbf\x01\xca\xb6\x9b\xc1\xf4\xec\xac\xc9\x4f\x1a\x6c\xac\xdb\xcd\x60\x7a\xfe\xf6\x9d\x8e\x4f\x6b\xdd\xe8\x27\xb3\xce\xcf\x3e\x3f\x2d\xf2\x77\x29\x76\xcb\x83\xe9\x9a\x05\x3a\x32\x79\x77\x24\x1d\x96\x2a\x3b\x29\x87\xaa\xea\x55\x64\x49\x1a\x4e\xca\x78\x06\x2f\xe2\xb5\x79\x39\xa6\x7d\x19\xf0\x41\xb9\xb0\x3f\xaf\x47\x43\x84\xc3\xe5\xd9\x69\x69\x5d\x54\xe3\xd2\x9a\xb2\x73\x0e\x4d\xb9\x9b\xc1\xf9\x80\x25\xb1\x4f\x9e\xe5\xa5\xca\x92\x8e\x9b\x6c\x61\xa6\xb6\x27\xc3\x63\xf8\xc0\x9a\x15\x77\x7f\x0c\x00\xa3\x11\x4c\xa0\xd2\x9e\xd4\xc1\x0f\x28\xf4\x03\x4e\x2b\xdc\x9c\xfa\x50\xd9\x2e\x8c\x92\xa6\x3e\x1d\x2a\x7f\xde\xda\xd5\x0f\xba\xc6\x19\x8c\x46\x4f\x78\x04\x82\xbf\xa4\x9a\x5b\xba\x30\x4b\x8d\xe4\x0f\xe9\x9a\x54\xda\xb7\xb5\xda\x89\x91\x8d\xfc\x0e\xc8\x17\x30\x17\x4b\x01\xc1\xa6\x0b\x44\x66\x1c\x7c\x70\xf4\xf4\xe0\x2a\x0c\x3d\x82\x98\xd5\x03\xfe\xf8\xd9\xf3\x1c\x3e\x23\xc4\xc4\x4f\xb0\xf0\xc7\xf9\x87\xf7\x84\x0c\x1f\xae\xff\xff\x43\xb1\x4f\xf4\xda\x94\x96\xec\xf6\x8c\x5f\x26\xc2\xb7\xd9\x29\x11\x25\xbe\x4a\x63\x50\x6d\x5b\x6b\x71\xa4\xc9\xb6\x49\xd8\x25\x0b\x65\xfd\xb9\x4e\x46\x22\x06\x4d\xca\xe1\x8c\x71\x1c\xfe\x5a\xe1\xa2\x5b\xfd\x4a\xae\xe6\xd7\xad\x72\x84\x5d\x7f\x45\xe7\xac\xfb\xb5\x74\x3a\xe8\x52\xd5\xbf\xda\xe5\x52\xdc\x93\x5d\xdd\x8a\x87\x8a\x03\x13\x6b\x77\xe8\x08\x06\xc4\x00\xad\xfe\x5f\x31\x4a\x2a\xae\x06\x61\x9e\x50\xc8\x6e\x81\x0c\x8e\xc7\x10\x55\x9e\x44\x2b\xa1\x08\x8c\x12\x57\xa3\x3d\x87\x9b\x14\x3d\x92\xbb\xcd\xac\x8f\x1a\xed\xcb\x19\xef\xf0\x33\x67\x76\xf5\x9e\xcc\xdf\xd2\xa1\x5f\x03\x41\x1a\xde\xc6\xb5\xd9\xd8\x5d\xb6\x58\x76\x09\x61\xd7\x22\xcc\x1f\xee\x6f\x2e\x1f\x3e\x5e\xbd\x9f\x47\x4a\x1c\x75\x35\x9d\x0f\xc4\xc7\x4a\x6f\xd0\x90\x73\x0b\xe8\x1a\x4f\x93\x3c\x96\xd6\x54\xbe\x80\x1f\xe8\x46\x7d\x52\x4d\x4b\x11\xeb\xab\xb3\x33\x4f\xe6\x6e\xa3\x6a\x5d\x31\x2c\xf9\x92\x43\x09\x6d\xf8\x89\x6c\xa5\x32\xfe\x5e\x98\xba\x57\x01\x67\x3c\x29\xf2\xdf\x1b\x07\xf2\x54\x39\x84\x62\x73\xd2\xfb\x76\x96\x0e\xc3\xdd\xd6\xe9\x8d\xae\x71\x25\x3e\x83\x61\x33\x99\x23\xfc\x24\xca\xdd\xbf\x1e\x18\xf3\xde\x08\x8d\x09\x58\xd7\x3b\xd0\xe6\x97\xe8\x77\xe2\x11\x0e\x56\x20\x53\x03\x55\xd7\xb4\x3e\x61\x84\xa1\xa3\xb8\xb4\x0e\xaf\xba\xa6\x3d\x20\x9f\xcc\x3f\x7b\x4b\x92\xf9\x1d\x87\x8a\x6a\x45\xea\xb0\x46\x55\x87\x35\x94\x6b\x2c\x1f\x7d\x01\x17\x7d\x98\x76\x26\xeb\x46\xab\xb3\x37\x30\x06\x29\x40\x26\x32\x74\xfe\xce\xba\x30\x83\xe9\x97\x67\xe7\x67\x47\xf9\xbc\xc8\xb1\xe9\xa0\x55\x0d\x15\xd6\x6a\xc7\x0b\x93\xb9\xd4\x86\x2e\x6e\xeb\xec\x02\x19\x59\xa5\xa3\x8b\xee\x23\x0e\xb8\x91\xb9\x57\x34\x75\x2e\x23\x66\x30\x1d\x52\x6f\xd1\x69\x5b\xc1\x02\xc3\x16\xd1\x3c\x21\x7d\x40\xef\x8e\x47\x67\x4a\xe7\x43\x4a\xbd\xa7\xf0\x1d\x9b\x0a\xbd\x41\x58\x2a\x4d\x90\x20\xf2\xb9\xc0\xa5\x75\x92\x66\x28\x25\x3c\xec\xd7\xa3\x91\x5d\xf2\x00\xf9\xf1\x0f\xf2\xf4\x61\x4d\x9a\x65\xeb\x8a\x14\x2b\x2d\x2a\x28\x13\xc5\xed\x97\xaa\x0d\x74\x43\xb6\x6b\x1d\xb0\xd6\x3e\xc4\x41\x6b\xf6\xfa\xa7\x12\x57\x50\x80\x51\xd9\xd2\x9f\x06\xe5\x1f\xfd\x69\x70\x6a\xb9\xd4\xe5\xa4\x51\x46\xad\x90\x80\xe5\xa9\x50\x2b\xd6\xa1\xa9\x8f\x63\x6a\x68\x82\x9f\x02\x3a\xa3\xea\x89\x47\xb7\xd1\x25\xfa\x49\xa5\x1d\x96\x12\xbb\x08\xc4\xe1\x9b\x32\x4b\x59\x9b\x9b\xbb\x7b\x65\x56\xe8\x67\x30\x9a\x7e\x75\x5e\xbc\x3a\x2b\xce\x8a\xb3\xd3\xe9\x9b\x31\xfd\x75\x9e\xfe\x1a\x25\x74\x63\xbb\xba\x92\x08\x3b\x6d\x22\xee\x29\xf2\x27\xb0\xcc\x7a\x84\xb0\xb5\x70\x73\x07\x42\x7d\xcc\x50\xdb\x72\x18\x6f\xbb\xb0\xb0\x1d\x21\xa1\x38\x85\x89\xc6\x05\x16\x48\x23\xed\x56\x90\xe8\x00\x6b\x08\xf6\x79\xc2\xf3\x17\xc2\x19\x7e\x3a\x7c\xb1\xf7\xfc\x43\x5c\x92\xb4\xd6\x0f\x3d\x4c\x6b\xc9\xb7\x89\xc8\xe4\x3f\x96\xaa\x8c\x58\xee\xb1\x5b\xe0\x46\xbb\x70\x93\x1f\x0f\x67\xca\x81\x26\x20\xf7\xb9\x13\x8d\xd2\x1e\xb8\x75\x80\x7b\x94\x23\x01\x43\xf3\xf7\x45\x11\xac\x58\xc7\x19\x0d\x9c\x4c\xd2\x7e\x4d\xcf\xfd\xb7\xa3\xd1\x73\xb4\x38\x92\xf9\x37\xc4\x3e\x43\xeb\x8b\x67\x89\xc5\x0c\x4a\x2d\x36\xa9\x15\xa1\x0d\xfe\x7d\x86\xd8\xdb\xb3\xf1\xdb\xb3\xb7\x67\xa3\xbd\xa3\x32\x7b\x82\x3f\x38\x2e\xf3\xfc\xa9\xb0\xe5\x2f\x13\xaa\x23\x25\x38\x91\xb4\x45\x4e\xfe\x25\xe7\x2f\x86\xd3\x46\x14\xa5\xba\x60\x6f\xf8\xc9\x2c\xd9\xca\x44\x72\x4e\x68\x9e\x66\x56\xe8\x83\x36\x9c\xdb\x83\x79\x50\xc1\x33\xb8\x41\x76\x49\x2f\xf6\x72\x56\xf4\xc7\x68\x32\xf1\x3c\xe8\xa7\xaa\xbd\xa8\x2a\x3a\xeb\x91\xb8\xe1\x61\x7c\xd7\xdf\x8c\x05\xc2\x37\x6b\xeb\xc3\x77\xb3\x6f\x48\x6c\xdf\xbd\x4c\xa0\xe1\x4a\x4c\x2a\x6b\x75\x04\x42\xc5\xd0\x6e\x4a\xe2\x85\x97\x22\x6f\xd3\x4c\x16\x4e\x57\x2b\x46\xee\x15\xb6\x0e\x25\xb7\xc7\x5e\x7e\xcd\x2b\x91\x13\x4f\x01\x71\x63\x37\x64\x9f\x96\xd6\x6d\x95\xcb\xee\x61\x63\x77\xb2\xc1\x84\xa8\x25\xd0\x16\xb9\x10\xe1\x3d\x47\x47\x5c\x33\x7d\x76\x19\xec\x76\x55\xed\x2d\xad\xd1\x3a\xbb\xd1\x15\x56\x45\xcc\x66\x18\x0b\xb5\x35\x2b\x74\xe9\x8d\x07\x05\xc2\x3b\x94\xb6\xae\x07\x27\xf2\x6c\x5c\x0b\xbc\xd8\x6c\x68\x8c\xe2\xce\xfd\xa6\x2c\x86\x49\xc0\x38\xbc\x65\x67\x33\x18\xfe\xf5\xf4\xfc\xcb\x27\x27\x2b\xb0\xe2\x1d\x06\xa7\x4b\x0f\x73\xb1\x7f\x14\x33\xd2\xa9\x8d\x45\x52\xc1\x42\xdb\xf9\x75\x1c\xdb\xc4\xb1\xc1\x82\x32\x90\x4c\x67\xbf\x87\xb8\xc2\x46\x2b\x5e\xe0\x90\xf4\xea\xfe\xee\x12\x2e\xee\x6e\x8a\x5e\x61\x95\x36\x74\x60\x41\x3c\x09\xef\x0a\x08\x0e\x12\xb2\x25\x8d\xc3\x46\x07\x3a\xc8\x03\xa3\xbc\xd8\x45\x8e\x9e\x1e\x70\x69\xcd\x92\x59\xe7\x5c\x3c\xb1\x41\xff\x93\x83\xc8\xf9\xbe\x82\x95\x48\x48\xc8\xa2\x04\xdf\xe9\xfc\xe2\x02\x6a\xa3\x74\xcd\x3e\x3d\x58\xf0\xa5\x53\x2d\xe6\x6d\xc5\x95\xab\x46\x1b\x39\x7c\x15\x52\xc6\xf5\x54\x88\xd9\xf4\x5f\xa7\x7d\xf2\x31\x6a\x6f\x3e\x04\xcc\xde\x6b\xbb\xdd\x16\xac\x7d\x7c\x4f\xb2\x1b\xe3\x47\xa7\x92\xf3\x3a\x55\xad\x9e\x6c\xce\x4f\x25\x8d\x73\x1a\xcf\xe1\x74\x73\x9e\xfe\xf3\x63\x74\x5f\x45\xeb\x6c\x0e\x2e\x08\x4e\x88\x6c\x3d\xa8\x05\xc5\xdf\xcc\xfa\x89\x7f\x72\x32\x74\x28\x7b\xfc\x7d\xf6\xfa\x31\x57\x71\x7a\x9c\x3d\xfb\x5d\x9a\x1b\x19\x4e\xfe\xf6\x37\xa9\xef\xf4\xcb\xb3\xb3\x8c\x0c\xe6\x2d\x96\x7a\xb9\x8b\x15\x04\x8e\x23\x38\xa8\xe9\x3c\x16\xf0\xc1\x90\x29\x9a\x41\xad\x57\xeb\xe0\x03\xb6\x63\xf8\x97\x6e\x1f\xb5\x19\x43\xa5\x82\xaa\x62\x8c\x27\xb3\x66\x30\x92\x97\xa3\x9c\x32\xf8\x48\x80\x2c\x39\x9f\xef\x95\x97\x24\x7d\x8e\xe3\xfb\x31\x3d\xb8\xed\x6f\x4a\x9f\xcc\xd3\x6d\xe0\xd8\xb2\x78\x92\x81\xe0\xc9\x92\x56\xe3\xc7\x77\x5d\x5d\xdf\xb1\xad\xe6\xec\x3e\x47\x2a\x4c\x2c\xa5\xd9\x86\x29\xc6\x3e\xe9\x26\xc9\x5b\x4e\x3b\xc4\x62\x89\xc3\x7f\x76\xda\x21\xdc\x2c\xdf\xdb\x70\xe7\xd0\x73\x9e\x91\x6e\xea\xc6\xea\x0a\xba\xb6\xb6\x4a\x32\xe8\x29\x35\xbc\xee\x16\x42\x46\x2a\x4c\xf3\xad\xe6\x32\x85\x85\x8b\x5a\x42\x24\x9f\x8e\x5e\x12\xc0\xa9\x60\x96\x7c\xca\x60\x75\x4e\xfe\xef\x6f\x67\x16\xc9\xc8\x5e\xe3\x3e\xee\x68\x1b\xef\x42\xdd\x43\x73\xf8\xcb\x61\xd0\x5b\xd3\xda\x9c\x57\x48\x25\x86\xd6\x56\x9e\x8e\xbb\xce\xd5\x86\x5c\x9a\x68\x9d\x6d\x15\x05\x75\xd5\x98\x0d\x80\xc3\xd2\x36\x0d\x9a\x2a\xe6\xff\x32\x77\x43\x06\xe6\x31\xf0\xb8\x4e\x0a\x4b\x16\x5d\xf8\x8c\x48\x5e\xb6\x70\xc9\x80\xbf\xcf\x29\x34\xfa\x13\xd9\x70\x39\xad\x18\x0d\xc8\x49\x2e\xe5\x5d\x21\xef\x52\x32\xef\xdb\x6f\x89\xb0\x44\x8d\xcf\x11\x5e\x2b\x0f\x6a\xb9\xcc\xb9\x78\x16\x05\x3b\x99\xec\x56\xd9\x88\x79\x52\x41\xd6\x43\x6d\x7a\xbd\x58\xea\x15\x34\xaa\x85\x49\x2c\x6b\x19\xc4\x8a\x4d\xf3\x02\x49\x9e\x24\x40\xd1\xa4\xa0\x1e\x11\x30\xaf\xf3\x0c\x27\x43\x09\xb4\xfd\x73\xc2\xe7\x1f\x5a\x34\x82\x30\x7b\xc8\xaa\x0d\x94\x5c\x73\xd8\xa6\x78\x78\x4f\x32\xf1\x66\x43\xa9\x4c\xb4\xc9\x0e\x55\xb9\x96\x38\x6c\xaf\x34\xc7\x86\x22\x5e\xe4\x06\x95\x11\xbf\x94\x97\x21\xfd\x33\x74\x1d\xf2\x3a\x65\xad\x29\x20\xd3\x1e\x3a\x93\xac\x73\x69\x8d\x21\x10\x16\x2c\xbc\xe3\x43\xc8\xb5\x9c\xbd\x4d\x0c\x02\xbe\x63\x90\x93\x7f\x90\x5a\x12\x89\xdc\xff\x2e\x99\x8f\xd3\x6d\xf3\x51\xf6\x51\xde\xcf\x48\x1b\x87\x2b\x0d\xe5\x9c\xe2\x7e\xf1\x73\x39\xcb\x15\x71\x94\xef\x5a\xb2\x82\x58\x45\x53\x45\x08\x3b\x1a\xad\x83\xbc\xc1\x60\x3e\xfb\x25\xf2\x57\x68\xe2\x3c\x36\x7a\xf4\xe8\x96\xec\xe1\x3c\x60\xfb\x1b\xf0\x55\x44\x00\x33\x66\x64\x0f\x9d\x65\xee\x54\xc0\xba\xd6\x81\xae\x26\x17\xf6\x78\x1a\xc7\x85\x0f\xf6\x91\x64\x1d\xe5\x23\x97\xd0\xc7\x12\x48\x62\x46\xee\x74\x9e\xc8\x79\x00\xc2\x34\x6c\xd8\xb5\xe8\x15\xbb\x53\x9e\x10\xdd\xfb\x82\x2e\x3f\x97\xe0\xc3\x1a\x1e\x6e\x53\xd2\xa3\x24\x99\x84\x3b\x15\xd6\xc2\x6f\xab\xc2\x3a\xad\xc1\x95\xf2\x68\xa7\x93\x2d\x91\xf1\xd1\x5f\x88\x62\x6d\xd0\xe9\xe5\x8e\x06\x3c\xdc\xce\x0b\xc9\x34\x94\x6c\xc5\x7d\xc4\x7a\x9c\xca\xce\xe9\x20\xc8\xbb\x8b\x89\xa3\x9c\x33\x4e\x3b\xa8\xe4\xce\xab\x68\xae\xa0\x94\xdc\xf9\x28\x7b\xa5\x42\xd8\x18\xe5\x74\x4d\xe9\x90\x01\x6b\x34\xad\x03\xd0\x9d\x17\xed\xab\xc5\x19\xd9\x3c\xe2\x4e\x8a\xcb\x69\x77\x0b\xf2\x58\xf1\x90\x12\x0a\x1d\x88\xe8\xa0\xce\xbc\xc0\x03\xa9\xe8\xe0\xb1\x5e\x0e\x91\x40\xe6\x38\x39\xf9\xac\x1c\xa3\x11\x1c\xfc\x1b\x38\xec\x3c\x6d\x92\x55\x65\xf6\xfa\xf5\xab\x44\x63\xa8\x29\xfb\x74\x06\x34\xd4\xa2\xac\x70\xb9\x9a\x9e\xbf\x7a\xfd\xe5\x9b\xaf\xe2\xd4\xa4\x2b\x6c\x58\x3f\xbb\x3c\xbd\xfd\x75\x88\x42\x86\x5a\x72\xc0\xf8\x60\xda\x29\x86\xf2\x34\xb3\x7e\x2a\x93\x8a\x36\xe2\x12\x81\x0a\x7d\x6c\xf0\x23\x21\x9b\xbb\x94\x2f\x72\x48\x37\x24\x55\xa8\xe3\xc5\xd3\x26\xce\x8a\xf9\x5b\xd6\x17\xce\x26\x26\x45\x19\xc7\x04\x52\xaa\x82\xda\x4c\x3e\x4e\x4c\xc6\xf4\x05\x23\xcd\xaf\x5f\x4f\xa7\x2f\x73\x4c\x97\x4c\x54\xec\x21\x10\x1b\x26\x39\x83\xc3\x22\x5d\xf1\xf4\xf8\x24\xb3\x27\xa0\xe8\x73\xbb\xf2\xdd\x82\x00\x78\xde\x96\x4f\x57\xeb\x4a\xe6\x49\x82\xec\x29\xf1\xff\xf3\xe2\xc7\x0f\xf3\x87\x8f\x37\x77\x2f\x67\x6f\xa7\xe7\x6f\x46\xfb\xb5\xde\x86\x00\x40\x74\x95\x24\x11\xb9\x64\xfc\x34\xa5\xaa\x52\x36\x26\xe7\x55\x53\x18\xb6\x6f\xae\x68\xce\xec\x20\x85\x17\xab\x71\xd1\xf2\x30\x99\x49\xb0\x09\x6f\xf2\x94\x02\x2e\xa5\xe5\x87\x9c\x2d\x7e\x6a\x6b\x5d\xea\xc0\x9d\x34\x7d\x19\x6f\x18\xf7\xba\x8e\xdc\x7f\x4f\x0f\xd8\xb3\xf1\x3b\x5f\x3c\x57\x8d\x94\x2a\x6d\x02\x44\xf3\x08\x5a\xb8\xf1\xa9\xae\x13\xea\xbe\x28\x4b\xdb\x11\x48\xab\xb5\x0f\x31\x43\xcb\xe3\x9e\x3d\x5f\x26\x19\xcd\x16\xe7\xb6\x3b\xe9\xb7\x52\x66\x17\xcb\xe5\xc0\xf1\x08\x61\x80\xb5\x22\x97\xc4\x95\xe8\x12\xc5\x7a\xed\xaf\x29\x9e\xf8\x07\xeb\x86\x75\x5c\x9e\x56\x71\x83\x0f\x2d\xb2\x3f\xc3\xc3\x0b\x5d\x60\x01\x2b\xa7\x96\xca\xa8\x71\x12\xc5\xca\xa9\x76\x3d\x4e\x6d\x19\x2f\x9f\xdf\x78\x3a\x44\x55\x55\x11\x92\x70\xf5\xdc\x39\xf4\xad\x15\xdf\x70\x85\x6d\x6d\x77\x0d\x9a\xf0\x82\x82\x70\x5c\x76\xf5\x1c\xc3\x4b\xb0\x8b\x5f\xb0\x4c\x78\xf7\x5d\xb4\x96\x74\x6c\x2c\x4c\x13\xd3\xe2\x1e\xdd\xb0\xc4\xcd\x06\xb2\x75\x7a\xa3\x02\xa6\x3e\x08\x87\x2b\xed\x29\xf4\x1b\x42\xd5\xc8\x60\x52\xa1\x49\x9a\x34\x49\xa3\x27\x8f\x18\x5b\x0d\x52\xd8\xd1\xda\x0a\x3c\xa1\x99\x4e\xc4\xef\xca\xf5\x0b\xd5\x54\x6f\x5e\x8f\xa1\x6d\xcb\x37\xaf\x6b\x1c\x83\x7f\xf5\xf5\xd9\xa7\x97\x52\x22\x42\xb2\x27\x74\x39\x97\x96\x51\x94\xf4\x2f\x01\x9c\xc1\x04\xde\xe3\x06\x5d\xa2\x86\x55\x7c\x33\x85\x09\xdc\xa2\xf2\x01\x5a\x3e\x44\x97\xdf\x9c\xd3\x1c\x1b\x1f\xd3\xd9\xc6\xe7\xaf\x60\x02\xef\xec\xc1\x04\xe2\x4c\x36\xc6\xec\xcd\xe0\x5c\xd2\xd1\xc4\x5b\xfa\x23\x72\x1c\x93\xbd\xc7\xf0\x97\xe8\x78\x83\x65\x48\xe3\x74\x29\x60\x94\xe3\x92\x52\x14\x7e\x60\x72\x06\x2d\x4d\x35\x3a\x90\x54\xab\xff\xbf\xa9\x47\x21\xd7\x4d\x06\x63\xb6\xe4\xae\x50\xba\x1a\xfa\x56\xaa\x23\x00\x6b\x70\xd0\x58\x33\xb8\x46\xe9\x5e\x1b\x5b\x61\x4c\xb2\x59\x17\x71\xee\x20\x5e\x52\x6c\x46\x93\x12\x79\xf0\x56\x14\x9a\xfb\xbe\xe8\x56\x48\x97\x5f\x8a\x46\x7c\x70\x14\xbd\xf1\x54\xd7\x91\xaf\x6e\x29\xe2\x28\xbb\x5a\x39\x5e\xca\x17\xd2\x07\xd8\x57\x85\x88\x00\xc5\x40\x5b\x47\xc8\x27\xac\xd1\xe7\xae\x0d\xa6\x1a\xcb\x5b\x7d\xeb\x83\x0e\xfe\x80\xeb\x45\x6d\xcb\xc7\x74\xbf\x1d\xd6\xb8\x51\x86\x64\x24\xd5\xee\x05\xd6\xb1\xb0\xd8\x77\x14\x1c\x27\x3c\xc0\x68\x2a\x36\xee\x11\x8a\x97\x85\xdf\xdb\x0a\xe7\x91\xfa\x0c\xfe\xeb\xbf\x9f\x1c\x63\x8b\x8e\xdb\x5a\xe8\xba\xa2\x9b\x78\x8a\xdf\xb8\xb2\x23\x96\xcd\x2e\xf3\xbd\x89\xed\x7b\xa9\x4b\xeb\xcf\x79\xd0\x1e\x6a\x95\xce\xcb\xab\xf7\xf3\x04\x87\x73\x68\x6c\xab\xa8\x36\xb6\xde\x44\xbb\x25\x46\x2d\x5a\x72\x6d\xc4\x37\x1d\x0d\xca\xef\xbe\xe0\x2e\x4f\xb6\x50\x74\x86\x55\xc5\xb2\x8b\x8d\x9a\x1e\x49\x87\x63\x89\xde\xc7\x20\x94\x37\xd6\xb7\x49\x09\x80\x94\x63\x4d\x09\x95\xc7\x6e\x81\xce\x60\x40\x9f\x93\x29\xa5\x35\x25\xb6\xc1\x9f\xe6\x34\xbf\xc1\xb0\xb5\xee\x51\x9b\xd5\x69\x65\xfc\xa4\xb5\x55\x72\x11\xa7\xc7\xf4\x40\xb6\x77\x94\xd3\xab\x95\x45\xcf\x1a\x4d\x3a\xb7\x1b\xd4\x12\x45\xbb\xc4\xfb\xee\x20\xec\x5a\x4d\x70\x6f\x27\xdd\x7f\xaa\x6f\x09\x8a\xac\xb2\xa5\x27\xf9\xf5\xdd\xab\x6b\x25\x0a\x61\x08\x24\xd4\xc3\xcb\x26\xb4\x5f\x60\xb1\x2a\xc6\xa0\x0d\x93\xe0\x4e\xc4\x54\x0c\xf4\x25\x1a\xe5\xb4\x95\xfe\xbb\x63\x78\xff\xe1\xe1\x7a\x46\x77\x4f\x5a\x59\x02\x36\x2d\x67\x90\xc6\xd1\xfc\x24\x8c\x1c\xd0\x99\xa4\x87\x12\x31\x13\xfa\x8c\x48\x48\x14\x91\x09\xb6\xb6\xba\x7a\x3f\x9f\xf3\x41\xe4\xeb\x29\x36\x6c\x12\xab\xa0\xf2\xdf\xa3\xbf\xfd\x4d\xb4\xf3\x83\x4b\x17\xb6\xe8\x6d\xfa\x3b\x0c\xaa\xc8\xf3\xe1\xef\xa9\xcb\xe8\xef\x23\xf8\xc7\x3f\x0a\xa1\x13\x41\xc2\x61\x41\x91\x19\x96\x62\x9c\xa9\x20\x35\x21\x32\x58\xc8\xd8\xe0\x53\x6b\x3d\x56\xb1\xc3\x45\x22\xf2\x58\x67\xe8\x1b\x64\x1a\xf4\xeb\xeb\x4f\xad\x32\x9e\x54\xfa\x39\xa7\x0d\xf0\x3b\xd7\x4f\x68\xba\xad\x15\x89\x12\x3f\x85\x38\x92\x2b\x00\xc3\xfe\x96\x7d\x26\x95\xe9\x6b\x28\xc3\x0e\x9e\xce\xe3\xcd\xed\xf7\x03\xe3\xc7\x47\x7d\x29\x47\x3d\xeb\xd3\xb7\x89\xb9\xbd\xe8\x77\x6b\xa1\xd7\xfb\x7c\xbf\x52\xd2\x52\x93\x03\x24\xd4\x19\xf4\x26\xed\x74\xbf\x87\x68\x00\xb9\x28\x76\x61\xc5\xd3\x26\x36\x69\x45\x6d\x8b\x11\xfd\x41\x32\x36\xa8\xfa\x91\xbb\xe9\x0c\x01\x23\xbe\xa0\x05\x5c\xd4\x75\xcf\x44\x1f\xc2\x89\x5a\x4a\x36\xb6\x79\xb8\x9d\xb3\x0c\x29\x08\x4a\x15\x3d\xb5\x41\x8a\x9b\xd6\xdc\x0e\xec\xac\x0d\x70\x79\x11\x6d\x8c\xf6\xd0\x58\x12\x7e\xb0\x4f\xfa\x7f\xf6\x91\xd7\x85\x34\x02\xaa\x3a\xdd\xb7\xd8\x61\x43\x24\x73\x6f\x0e\xd9\x9b\xff\xe8\x3e\x8e\x04\x13\x3b\xfd\x2f\x0a\x23\x6b\xb8\xb3\x15\x5c\x74\xc1\x72\xdf\xba\xeb\x81\x4d\xcc\x45\x2c\x3b\x23\xa6\xfc\x85\x66\x35\x8a\xb7\xf2\xb7\x3b\x92\xe7\x9d\x88\xdd\x9a\x9e\x71\xa6\xf8\x3b\x1d\xc9\x9e\x13\xe9\x45\xf0\xc4\x9d\xdc\xef\xb7\x26\x1d\x36\x26\xc5\xb6\xa4\x26\xc7\xa4\x4f\xbb\x92\x8e\xf7\xba\x92\x8e\x9f\xf4\x32\x3d\x9d\x75\xd4\xb7\xae\xb1\x13\xa9\x08\x78\x75\xd2\x37\xb6\xe8\xaa\x55\xc4\x7a\x4f\xda\xa7\x53\x0f\xb9\xf6\x29\x01\x1b\x29\x79\x8a\xdd\x6f\xfe\x6d\xfa\x94\xd3\xfd\x2b\xa7\xaa\x8e\x4d\x75\x6e\x8f\xe6\x40\xae\xa4\xb3\x91\x6c\x55\x14\xcb\x9d\xad\xae\xb4\x8f\x4c\x7d\xcf\x3c\x1d\x58\x10\xf6\x90\x90\xcb\x53\x7d\xa7\x0b\x77\xc0\x77\x9c\x0d\x86\x4a\xae\xac\x02\x69\x80\x0a\xf0\x0c\x5d\x11\xdf\x30\xf2\x6f\xb4\xb9\x48\xd5\x88\x58\xdf\x3f\x86\x3f\xf5\x57\xfd\xbb\x6f\x37\xd3\x62\x3a\x2d\x62\x2f\x82\x64\x12\xd8\x1e\xdc\x39\x6d\xb9\xc1\xa2\x56\xde\x0f\x9b\xa8\x25\xdb\x3e\x89\xf7\x73\x92\x9a\x6d\x48\x63\xc4\x4b\xc9\x7b\xc2\x2e\xf9\xe5\x58\x3a\x25\x29\x42\x0b\x02\x2d\xca\x41\xe7\x8a\x16\xff\xee\x2a\x79\xd5\xa8\x47\x04\x3e\x87\x9d\xed\x52\x53\x2f\x99\x94\xa3\x6c\x12\x63\x6a\xf0\x51\x4b\x17\x25\x96\xaa\x93\xdc\x05\xa9\x6e\x1b\x39\x87\x92\x58\x4f\x9d\xce\x4b\x21\xfe\x5b\xdc\xfc\x1e\xa8\x39\x25\xe7\x9e\x48\x4e\x5a\x87\xd8\xb0\xc4\x4f\x8f\xd3\x43\x5e\x26\xb7\xf2\xf3\x17\x09\x52\x38\xe1\x64\xe2\x50\x8c\xd2\x7e\x39\x8a\xce\x4a\xc0\x0b\xc2\x3b\xf4\xeb\xd4\x56\x07\x77\xce\x06\x5b\xda\x1a\x5e\xbc\xbb\xbc\x7b\xc9\x14\x13\x3b\x24\x7c\x4e\x52\x66\x51\x73\x9f\x49\x01\xf7\x29\x9f\xb8\x52\x75\x8d\x3b\x78\xf1\xf3\x64\x42\xb6\x4b\xfe\xcc\x09\x65\x52\xb3\x9f\xd9\xa8\x74\x1e\xdf\x5d\xde\x0d\xa1\xd9\x03\xa7\x4e\x29\x42\x12\xc0\x34\x08\xb0\x72\xd8\x2e\xef\xd9\xac\xda\x25\xd9\xd9\x54\x76\x79\x46\xbc\x2b\x1d\xd6\xdd\xa2\x28\x6d\x73\xea\x5b\x02\x31\xe9\xff\x16\xb5\x5d\x9c\x4a\x4b\xf6\xa9\x0f\xca\x54\xca\x55\xfe\x74\x7e\x77\xf3\xc3\x0f\xd7\x93\x9b\xab\xa2\xa9\x8e\xcf\xa7\x13\x5e\x6a\x22\xac\x88\x63\x97\xc6\x10\x11\x58\x64\x91\x2f\xae\x36\x20\x93\x41\x57\x68\x02\x1d\xfb\x4f\xf7\xb7\x79\x4f\xc9\x32\x4a\x2b\xb5\x4f\x7d\xac\x68\x36\xda\x59\xd3\x60\x8a\x66\x61\xe0\xff\x66\xb0\xd7\x99\x19\xdf\x63\xed\x71\x06\x3d\x41\xe3\x21\xf3\xc7\xec\xe6\xbe\xce\x78\xbc\xf3\x98\x8b\x4f\x33\x16\xb8\x56\x1b\x6d\x5d\xce\x83\xc6\xaa\x3a\x1d\xf1\x5a\x99\x8a\x23\xc2\x27\xed\x1a\xf1\x23\xa1\xbd\x28\x4a\xa2\xc0\x8b\xdb\xdb\x0f\x7f\xf9\x78\xf1\xfe\xaf\x30\x79\x3a\x8d\x62\x7d\xf3\x68\xc8\xf6\x0f\x72\x11\x83\x60\x5a\xda\x3e\xc6\x29\x1d\x4f\x4b\x38\x64\xcb\x66\x6c\xdc\x71\xf6\xe9\xd6\xa5\x78\xfe\xda\x04\xa7\x07\xad\xa9\xc3\x3c\x07\xe1\x16\x51\x86\xeb\x3f\xdc\xcc\x1f\xee\xff\xfa\xf1\xc3\xfb\x5b\x62\x2e\x07\x83\xcf\x71\x99\x17\xa9\x70\xc9\x21\x55\xca\x5f\xc4\x64\x49\x8a\xa5\x09\x23\x6f\xb1\x4e\xa7\xc1\x88\xd9\x8a\xeb\x93\x48\x6c\xed\x6c\xb7\x5a\x1f\x30\x7a\x20\x28\xed\xf7\x4e\x44\x1b\x98\x16\xd3\x02\x62\xf3\x1b\xd7\x10\x18\xb2\x90\x27\x39\xf4\xce\x6c\x95\xf2\x0e\x92\x73\x4b\x89\x95\x5e\x56\x5d\xe0\x30\x29\x1e\x32\x01\xc7\xdc\xc0\xac\xcc\x6e\xc8\xdf\xae\x78\x46\x5c\x5b\xf5\x0c\x8f\x67\x05\x70\xaa\x6b\xcd\x26\x34\xaa\x11\x57\x38\xd8\x29\x8f\x0f\xea\x3e\xe2\xc1\x83\xdd\x27\x4d\xab\x25\xfe\x1f\xe4\x00\x62\xb1\x8d\x7d\x05\xa1\xa3\x59\x2f\xab\xde\x2c\x0c\x52\xc7\xac\x23\x02\xb8\xeb\x5d\xc2\x59\x7b\xd6\x72\x08\xd7\x5a\xa9\x23\xa6\xc2\x4d\xd6\x94\x7b\x4e\x88\x49\x7c\x9d\xc2\x21\xb9\x94\x41\xbb\x28\xb2\x18\xb5\xe4\x7e\x70\x82\x7b\x2f\xc7\x52\x65\x8b\x92\x99\xc7\xfb\x23\xeb\xfb\x31\x60\x28\x8b\xc1\xf2\x83\x7c\x91\x1e\xe4\x1d\x8a\x14\xc4\x2f\xf5\xea\xde\xda\xf0\xdc\x07\x45\x14\xbb\xe5\x88\x6b\x78\x1a\x11\x11\xf6\xb9\x07\x86\x93\x8c\x24\x92\x06\xe4\xe4\x16\xed\x87\x74\x70\x0c\x1b\xed\x42\xc7\x78\x32\x0d\xd9\x4f\xd1\x1f\xc7\x1c\x61\xcf\x3b\xe1\xfd\x58\x81\x2b\xe0\x52\x1c\x7e\xbd\x93\x56\x21\x42\xca\x72\xce\xf1\xd3\xc3\x9c\xab\xe7\xab\xc3\x9f\x08\xf9\x10\xdb\x24\x78\xa0\x6c\x25\x13\xb7\x26\xab\xa7\xc4\x75\x8c\xf1\xb6\x36\xf6\xdb\xc7\x24\xd3\x17\xa0\x9b\xd8\xf9\xca\x18\x33\xe6\xd2\xd8\x44\x6c\xb4\xd7\xf1\x5a\xec\xa7\x62\x06\x27\x46\xca\x3e\xe8\x1a\x4e\x38\x9f\x1e\xc7\x30\xbc\x6f\xc9\x3e\x86\xe2\xb7\xad\xc6\x02\xa0\xeb\x96\x3a\x37\x9f\xcd\x76\x8e\xc9\x62\xe9\x25\x91\x14\x29\x2a\x0f\x2a\xe9\x4b\x91\x1a\xf9\x2c\xc7\x0d\xc7\xf1\x68\xa5\x22\xf6\x67\x5a\x4a\xd7\x3a\xec\x62\xb3\x75\x8a\x56\x4f\xbe\x38\xe1\xaf\xb8\xaa\x8c\x4d\xe7\x57\xf3\xbe\x0e\x7d\xf3\xc3\x7e\xdc\xc7\xd1\xc9\xde\x87\x10\x07\xcd\xfc\xd9\x12\xa7\x84\x31\x19\x39\xbd\xe8\xc2\xc0\x94\xd1\x70\xc9\x31\x5e\x69\xcf\xb8\x72\x97\x5a\x2e\xb4\xf1\x01\x55\x45\xc7\x28\x41\xd1\x9f\xde\xce\x73\x06\x98\x8c\x95\xed\xcc\xd3\xaf\x31\x9e\x8d\x79\x38\x76\xac\x7c\x2a\x6f\xa4\x58\xf2\x81\x5c\xda\xd6\xba\xb0\xde\xfd\x71\x1b\xf6\x06\x7b\x7c\xcf\xb9\x86\xc1\xf3\xbd\xa2\x24\xf6\x96\x2f\xe6\x49\x52\x65\x99\x3d\x76\xec\x34\x9c\xb7\xb5\x0e\x29\x3a\x82\xeb\xab\x39\x2b\x42\xb6\x3a\xbd\x66\xa6\xbc\x82\x58\x7a\xcf\x9a\x9a\xe9\xca\x37\xb3\xf9\xc3\x29\x34\x55\x6b\x35\x63\x74\xef\x6d\xa9\xc5\x33\x35\x18\xd6\xb6\xf2\x7d\xde\xfa\xe7\x38\x7f\xfa\x33\xeb\x6f\x3f\x2b\x7d\xc4\xa2\x1d\xdc\xdc\xb1\x1d\x4d\x5f\x08\x0f\x6b\x62\x97\x37\x57\xf7\xe0\x94\x59\xe1\xe0\x14\x8f\xa1\x51\x6d\x2b\x16\x27\x91\x97\x4e\xa1\x14\x23\xe7\x40\x34\xbe\xce\x3b\xdb\x2b\xfe\x2d\x76\x1c\xb5\xf1\xd7\x78\x25\xdc\xdc\x1d\x0d\xaa\xaa\xb9\x65\xac\xc8\x72\x92\xee\xde\x44\x72\x9c\xb7\x76\xfe\xf3\x38\xdb\x83\xc1\x3a\xc9\x5d\x66\x91\xd5\x3b\x91\xe1\x9e\x1c\xc4\x26\x21\x99\xaf\xcd\x81\x42\xf6\x8c\xbe\xeb\xea\xa0\x27\x31\xc1\xd0\xfb\x69\xa9\x0b\x3e\x91\xc5\x39\xcb\x82\x09\x27\x79\x68\x2f\x4d\x6f\x9f\xe5\x29\x44\xef\x93\xac\xd5\x41\xb2\x21\x81\x39\x87\x8d\x0d\x38\xcc\x0c\x8a\xdc\xb3\x08\xf3\xe5\x4b\x04\x92\x6f\xaf\x30\xa0\x6b\x78\xf1\x88\xb3\xb8\xf6\x41\xe4\xfa\xda\x99\xb1\x31\xfb\x96\xab\xea\xbb\x14\x9b\xcb\xb1\xa3\x5f\xbf\x8f\xfa\x98\xf2\xf3\x49\x01\xd2\xdf\xd0\xcb\xb6\x7f\x34\xe1\x45\x2f\x75\xe5\x66\x30\x9a\x7e\x7d\x5e\x4c\xdf\xbc\x2d\xce\x8a\xe9\xe9\xf9\xeb\x51\x1e\x94\xbe\x39\x18\x4e\xcb\xa5\x32\x42\x2f\xd3\x62\x9a\x5f\xa5\xee\xa7\xb7\x67\xfb\x7c\x9c\xff\x06\x3e\xee\xe3\x01\xce\xe8\x28\xa7\xff\x76\xfd\x74\xd6\xd1\x1a\xc5\x8f\xca\x9e\xf9\x30\xed\x09\x63\x52\xc6\x3d\x8e\x19\xb5\x2c\xb5\x9c\x7b\x9e\xe7\x2a\xfe\xe0\x43\x09\x46\xe1\x04\xec\x6b\xab\x2a\x58\xa8\x5a\x99\xd4\x79\x31\xc8\xe3\xde\xc6\x51\x13\x29\x9a\x60\x75\x38\x3c\xf6\xa1\x70\xeb\x1d\xb1\xaf\x82\x75\x3e\x86\xa2\x1c\x7a\xb1\xa3\x4f\x76\x38\xe6\xb7\x7b\xa4\x1a\xf3\x03\xc9\x52\x2c\x54\x9f\x34\x4c\x1c\x6a\x49\x5a\x0b\x4c\x1a\x36\xa3\x58\xa7\x57\xe4\xee\xd1\xc7\x2f\x7f\x68\x80\x8e\x1f\x04\x8a\x0a\xaa\x10\x91\xc9\x1d\x7f\xdf\x2a\xc5\x45\xe9\x0b\x5c\x2a\x5d\x93\xf5\x27\xaf\xd6\xfb\x89\x7d\xdc\xc5\x1f\x5f\x70\x54\x6c\xc3\xba\xd7\xcd\x24\xba\xdb\x45\xf4\x67\xe9\x18\x7b\x3a\xe9\x89\x68\xc1\x0c\x46\x9d\x9f\x94\x04\x5d\x54\x3d\x3d\xfd\xa2\x57\xc4\x60\x67\x83\xe3\x3c\x18\x35\x50\xb9\x83\xb7\xe7\xfc\xf6\xfc\xec\x3f\xb3\x94\xb6\x79\xc8\x50\xe7\x27\xa8\xc4\x57\x27\x46\x00\xbb\xc9\x16\xf3\xb3\xc1\xc8\xc1\x53\x19\xd9\xcf\x7e\xba\xf0\x33\x6a\x97\x9a\x47\xd6\x58\x37\xdc\xff\x45\x56\x2a\x95\x8f\xad\x23\x11\x17\x7d\x5a\x9f\xbf\xde\x1a\x34\xf7\x4a\x4b\x52\x5f\x65\x1e\x83\xb7\x70\x12\x69\x49\x32\x1d\x8a\xa2\x38\xe9\x13\x19\x7a\x65\x6c\x54\x96\x7e\x49\xfe\x69\x85\xa5\xae\x53\x3a\xf5\xe0\xa3\xf9\x44\x2a\x37\x08\xfd\x88\x75\xf3\x80\xbe\xf7\xc6\xe4\xf4\xa5\x9e\x26\x75\x9d\x6f\xe4\x1f\xfc\x78\x7d\x71\x75\x74\x44\xd1\x74\x4c\x20\xa7\x0c\xdf\x44\x5c\xf3\xe1\x6a\x7b\x9c\x0b\x86\x79\xe4\x1a\x8e\xfe\x17\x16\x47\xd9\xdc\xf6\x9f\x2c\xee\xb5\x91\x73\xca\x28\xfd\x60\x40\x4a\x17\x6d\x29\x38\xea\x93\x88\xcf\xed\x8f\x7f\xcb\xc2\x9f\xf6\x3f\x0b\x42\x4b\x91\xdb\x5e\xa8\xf2\x71\xab\x1c\xff\x8a\x48\xab\x42\x4a\x2a\x45\xe1\x9f\x10\xf4\x3a\x19\xc7\x76\x40\xce\x7e\x9a\xf4\x81\xfc\xc4\x87\x5d\x9d\xbf\x44\x8d\xc5\x2a\x2e\x75\x99\x3c\x9d\x65\x77\x22\xdf\x4e\x7c\x8e\xdb\xf4\x0b\x17\xd2\x58\x2c\x45\x25\x82\xa8\xf9\x53\x56\xc1\x39\xf9\x8b\xd7\xa3\x63\x88\x5f\xc5\x32\x42\x0d\xba\x19\x34\xe0\x5c\xde\x5f\xf9\xe2\xe8\x50\x86\x29\x2b\x73\x0c\x7f\x8e\x3f\xb7\x10\xb7\xa8\x3c\x9c\xc4\x5f\x60\x38\x81\x5a\x2d\x50\x7e\x51\xa5\x55\x2e\x24\x07\x99\x38\x8d\x05\x34\x16\xee\xbe\x18\xe5\x77\x20\x52\xcf\x69\x74\x69\xfd\xef\x53\xa4\x5f\x78\xd0\xe6\x09\xa4\xf6\xba\xd1\xb5\x72\xc2\x7e\x5f\x6c\xca\x36\xce\xaf\xf5\x32\x14\x47\x91\x02\x43\xc9\x6f\xe5\xdf\xd1\x77\xf2\x0f\xca\xd7\xd3\x65\xa9\x5e\x2f\xce\x5e\xbd\x51\x55\xf9\xe5\x97\x5f\xe3\x57\xd5\xd7\x6f\xce\xbe\x3a\x7f\x85\xaf\xca\x37\x6f\xde\xbc\x5d\x7c\x35\xad\xde\x4e\xa7\x47\xff\x13\x00\x00\xff\xff\x28\x40\xee\x55\x33\x46\x00\x00"), - }, - "/charts/istio-cni": &vfsgen۰DirInfo{ - name: "istio-cni", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - }, - "/charts/istio-cni/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 275, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8e\x3d\x6e\xc3\x30\x0c\x46\x77\x9d\x42\xc8\x6e\xc9\xd6\x52\x44\x40\x3b\xf7\x04\xd9\x55\x99\xb1\x89\x5a\xa4\x20\x32\x6e\x7b\xfb\x42\x4e\x7f\x90\x8d\xf8\xde\x03\x1e\x53\xc5\x0b\x34\x41\xa6\x68\xf7\xc9\x50\x2a\x10\x2d\x8a\x22\x0f\x99\xd0\xec\xbf\x6c\x74\xc1\x8d\x26\xd5\x7a\x79\x5c\x14\xb7\x0d\xda\xdf\x78\x7a\x79\x0e\xee\xc9\x85\x61\x3c\x99\x19\x24\x37\xac\x7a\x80\x57\xd8\x8a\xcd\x6b\x6a\x6a\xaf\xdc\xfe\x0b\x36\x73\xa9\x4c\x40\x2a\xe6\x1d\xbe\x3e\xb8\xcd\x12\x8d\xb5\xc3\x5d\x39\xae\xfe\x88\xf0\xad\x65\xf8\x41\xab\x6a\x8d\xde\x2f\xa8\xeb\xed\xcd\x65\x2e\xfe\x90\x7d\x17\x81\x16\x24\x88\x76\x61\xad\x9b\xc1\xdc\xe3\xdd\x97\xe8\xef\x96\x43\xf6\xd7\xb4\x77\x22\x3e\xd1\xdc\x18\xe7\x61\x3a\x87\xcf\xe9\x1c\x5c\xa5\xc5\x7c\x07\x00\x00\xff\xff\x96\x9e\x09\x7a\x13\x01\x00\x00"), - }, - "/charts/istio-cni/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - }, - "/charts/istio-cni/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 223, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\xcc\xb1\x4e\xc4\x30\x0c\xc6\xf1\xdd\x4f\xf1\xe9\xf6\x06\xb1\xa1\xac\x0c\x6c\x0c\x37\xb0\x20\x06\xb7\xb5\xc0\xba\x34\x8e\xec\xe4\x06\x4e\xf7\xee\xa8\x85\x85\xed\x6f\xfd\xe4\x8f\x9b\xbe\x89\x87\x5a\xcd\xf0\x99\x97\xc4\xa3\x7f\x99\xeb\x37\x77\xb5\x9a\x2e\x4f\x91\xd4\x1e\xae\x8f\x74\xd1\xba\x66\x3c\x97\x11\x5d\xfc\x6c\x45\x68\x93\xce\x2b\x77\xce\x04\x54\xde\x24\x43\xa3\xab\x4d\x4b\x55\x02\x0a\xcf\x52\x62\x37\x80\x5b\xfb\x8f\x80\x4b\x11\x0e\xc9\xb8\xdd\x90\xce\xbf\x47\x7a\xe5\x4d\x70\xbf\x93\x8f\x22\x91\x69\x02\x37\x7d\x71\x1b\x2d\x32\xde\x4f\xa7\x0f\xda\xff\xc2\x86\x2f\x72\x2c\x4f\x68\xb6\xc6\x11\xd5\x56\xd9\xeb\x2a\x3e\xff\xd9\xa7\x74\xfa\x09\x00\x00\xff\xff\x9c\xd5\x8b\x9a\xdf\x00\x00\x00"), - }, - "/charts/istio-cni/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 330, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\xcf\x31\x4e\x04\x31\x0c\x05\xd0\x3e\xa7\xf8\x17\xd8\x20\x3a\x94\x0e\x28\xe8\x28\x06\x89\xde\x93\x31\x60\x36\x13\x47\xb1\xb3\x05\xab\xbd\x3b\x1a\xa0\x41\x8c\x28\xfd\xbf\x2d\x3d\x53\x93\x67\xee\x26\x5a\x13\xfa\x4c\x39\xd2\xf0\x37\xed\xf2\x41\x2e\x5a\xe3\xf1\xc6\xa2\xe8\xd5\xe9\x3a\x1c\xa5\x2e\x09\xf7\x65\x98\x73\x9f\xb4\xf0\x9d\xd4\x45\xea\x6b\x58\xd9\x69\x21\xa7\x14\x80\x4a\x2b\x27\x88\xb9\xe8\x21\x57\x09\x40\xa1\x99\x8b\x6d\x1d\x40\xad\xfd\x2e\x81\xce\x85\xc9\x38\xe1\x7c\x46\x9c\xbe\x87\xf8\x48\x2b\xe3\x72\x09\x5d\x0b\x4f\xfc\xb2\x1d\x53\x93\x87\xae\xa3\xfd\x83\x0c\xc0\x1f\xe3\x0e\xc9\xc6\xfc\xce\xd9\x2d\x85\xc3\xcf\xfe\x13\xf7\x93\x64\xbe\xcd\x59\x47\xf5\xdd\x2f\xb6\xc4\x1a\xe5\x1d\xe8\x57\xbc\x69\x3f\x03\x00\x00\xff\xff\xe8\xad\xcd\xc7\x4a\x01\x00\x00"), - }, - "/charts/istio-cni/templates/configmap-cni.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap-cni.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 752, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\x92\x51\x6f\xd3\x30\x14\x85\xdf\xf3\x2b\x8e\xca\x1e\xd7\x48\xbc\x46\xe2\x81\x95\x0d\x2a\x46\x41\x68\xec\x05\xa1\xe8\xd6\xbe\x6b\xaf\xea\x5e\x9b\xd8\xe9\x36\x95\xfc\x77\x64\xa7\x2b\x2d\x88\xbc\xc4\xb9\x47\xe7\xf3\xe7\xc8\x1b\x51\xdb\x60\xe6\xf5\x41\x56\x9f\x28\x54\x14\xe4\x9e\xbb\x28\x5e\x1b\xec\x5e\x57\x5b\x4e\x64\x29\x51\x53\x01\x4a\x5b\x6e\x20\x31\x89\x9f\x1a\x95\xa9\x29\xa5\x43\x10\x03\x19\x6e\xb0\xdf\xa3\xfe\xca\x8e\x29\x72\xbd\x78\x19\x63\x18\x2a\xc0\xd1\x92\x5d\xcc\x20\x80\x42\x38\x21\x95\x51\x37\xb6\xfe\x45\xe4\xf6\x8b\xc2\x2b\xdc\xad\x19\xb3\xc5\x1c\xca\xe9\xd1\x77\x1b\x8c\x12\x7d\x47\x49\xbc\x22\x79\x90\xb5\xf9\x95\xd6\x8c\xe0\xfa\x95\x28\xcc\x9a\x44\xe1\x15\x4c\x66\x0d\xf5\x96\x6b\x14\x4e\x0c\x6c\x84\x5c\xe1\xee\xc8\xf5\x1c\x21\x8a\xb4\x96\x78\xc0\xe2\x51\x9c\xc3\x92\x41\x7d\xf2\x5b\x4a\x62\xc8\xb9\x67\x04\x1f\x7a\x47\x89\x6d\x5d\x01\x46\xa5\x3d\xc8\xb4\x63\xab\xc1\xaf\x69\x39\x52\x7e\xf6\xc7\x15\x30\x49\xcf\x81\x27\x0d\x26\xc7\x93\x4f\x2e\x4f\x63\xe7\x57\xad\xe3\x1d\xbb\x49\xf9\x0b\x3f\x7b\x9f\x18\xf5\x7d\x31\xab\x8d\x4a\xed\xfc\xea\x36\xe7\x18\x86\xb3\xe2\xa6\x5f\x72\xa7\x9c\x38\xe6\xe6\x49\x72\x4c\x47\xb3\xbc\x77\xdb\x7e\xfc\x76\x75\x3d\xfb\xbc\xb8\x99\xbf\x6f\x6f\xe6\xb7\xd7\x5f\xde\xde\x7d\x68\xdb\x33\x93\x52\xcb\x07\x5b\x8a\xb6\x56\xba\xff\xf9\x18\x95\x2b\xd1\x77\xd2\xfd\x25\x54\xfa\xfc\x64\x5c\x6f\xb9\x3d\xde\x8e\x2c\xf7\x3d\x83\x3a\xd2\x15\xe3\x42\xec\xd3\x25\x2e\x34\xa2\x79\x73\x46\x3d\x14\x8f\xd7\x27\x62\x18\xf6\x7b\xc8\x43\xa9\xe4\xad\x32\x84\xd5\x8e\xf3\x51\x2b\x73\xca\xe7\x38\xc7\x8f\x13\x9d\xa1\xfa\xb3\xfa\x1d\x00\x00\xff\xff\x12\x77\x8e\x5e\xf0\x02\x00\x00"), - }, - "/charts/istio-cni/templates/daemonset.yaml": &vfsgen۰CompressedFileInfo{ - name: "daemonset.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 2825, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x56\x41\x6f\xdb\x38\x13\xbd\xfb\x57\x0c\x9c\x43\x2f\xb1\x85\x1e\x3e\xe0\x83\xf6\xd4\x4d\xd3\x22\xe8\xc6\x0d\x92\xb6\x7b\x58\x2c\x82\x31\x39\xb2\x06\xa6\x38\x02\x39\x72\xe2\xcd\xe6\xbf\x2f\x28\xd9\xb2\x64\xbb\xdd\x2e\x0f\x81\x43\x3e\xbe\x79\x9c\x79\x1c\xea\x02\xbe\x94\x1c\xa1\x42\xcf\x05\x45\x05\xf6\x51\xd1\xb9\x08\x5a\x12\xdc\x44\x65\xd9\x4f\xcd\x8c\x67\x30\xe2\x15\xd9\x53\xb8\x04\x8c\xf0\x44\xce\x4d\x2e\xd2\xaf\x03\xfa\x6a\x71\x03\xb5\x6b\x56\xec\x01\xbd\x4d\x1b\x0a\x5e\x81\xf8\xc9\x05\x10\x9a\x12\x2a\x8c\x4a\xa1\x5d\x7b\x92\xb0\xa6\x00\x5e\x2c\x41\x82\xc3\xa7\x66\x49\xc1\x93\x52\x04\xe3\x9a\x84\x9b\x4f\xd6\xec\x6d\x0e\xef\x91\x2a\xf1\x0f\xa4\x13\xac\xf9\x1b\x85\xc8\xe2\x73\xa0\x67\x25\x9f\x7e\xc6\x6c\xf3\x76\x49\x8a\x6f\x27\x15\x29\x5a\x54\xcc\x27\x00\x1e\x2b\xca\x81\x93\xac\x24\x7e\x96\x02\xed\xa6\x63\x8d\x86\x72\x78\x79\x81\xf9\x3d\x39\xc2\x48\xf3\xc5\x7e\x1a\x5e\x5f\x27\x00\x0e\x97\xe4\x62\xa2\x01\x58\xff\x3f\xce\xb0\xae\xcf\x70\x01\x84\x6e\xfb\x29\x57\xa2\x89\x35\x99\x44\x11\xc9\x91\x51\x09\x1d\x5d\x85\x6a\xca\xdf\x06\xfc\x3f\x8a\xd0\xd4\x16\x95\x1e\x34\xa0\xd2\x6a\xdb\xe1\x75\x5b\x53\x0e\xf7\xe2\x1c\xfb\xd5\xd7\x16\xd0\x69\x19\xce\xec\xa9\x2b\x7c\xfe\xea\x71\x83\xec\x70\xe9\x28\x87\xb7\x13\x00\xa5\xaa\x76\x3d\x66\x98\xb3\x34\xdc\x48\xda\x8f\x8f\x0f\x80\xde\x8b\xa2\xa6\x2a\x1c\xb6\x74\xb6\xba\x04\x74\xe2\x57\xf0\xc4\x5a\xb6\x16\xb9\x0a\xac\x6c\xd0\xbd\xb3\x56\x7c\xfc\xec\xdd\x16\x54\x1c\x85\x76\x3b\x2c\xc9\xc9\xd3\xe5\x80\xa3\xc2\xb0\xee\xbc\x55\x8b\x4d\x36\x43\x30\x3b\x06\x40\x6b\x67\xe2\x2f\x81\x7c\x6c\x02\xfb\x15\xb0\xc2\x8a\x34\x0e\xb6\xd7\x81\x25\xb0\x6e\x21\x9a\x92\x6c\x93\x52\xd3\xfa\x4e\x4b\x54\x60\x8d\x10\x28\x4a\x13\x0c\x45\xc0\x40\xe9\x3f\x0a\x1b\xb2\x03\x06\x2e\x12\x2d\x6d\x28\xb4\xdc\x40\x1b\x36\x4a\x76\xde\x43\x76\xcc\x14\xe6\xe8\xea\x12\xe7\xeb\xde\xc1\x73\x96\x6c\x2f\x76\x56\x8b\xcd\xe1\xcd\x9b\x76\xdb\xde\x13\x69\xa4\x34\x3e\x8c\xbc\x91\x46\x72\xf2\x11\x93\xc4\x1c\x1c\xfb\xe6\x79\x07\x2a\x25\xea\x82\x34\xdd\xa0\x1c\x34\x34\xfb\x62\x1c\xb2\x39\x2a\xc6\x2d\xae\x09\x62\x13\xe8\xa8\x84\xdd\xa9\xf6\x87\xb0\x20\x1e\xd0\xb9\x56\x56\x3c\x1c\x72\x06\x54\x14\x64\x34\x87\x85\x3c\xec\xb0\xfd\x22\x80\xd4\x29\xa4\x84\x1c\xae\x9f\x39\x8e\x2a\x70\x8b\x61\xfd\xc3\xfa\x41\x21\x21\x25\xbe\x2f\xd0\x30\xea\x9a\xb6\xf9\x19\xcb\xfc\x4c\xe8\xa1\xe4\xeb\x67\x32\x8d\xfe\x84\xe2\x54\x7e\x36\xf4\xce\x18\x69\xbc\x2e\xc6\xdd\x63\xd2\x9f\x89\x3d\x57\xfc\x17\x81\x95\x27\xaf\x5c\x11\xd8\xce\x80\xb8\xbf\x7f\xd0\xd4\xab\x80\x96\x40\x02\x58\x72\x94\xca\xf1\x0b\x28\x39\x37\xec\x70\x2a\x60\x05\x10\xa6\x85\x04\x43\x3d\xfd\x7e\xc3\x34\x87\x52\xb5\x8e\x79\x96\x8d\xad\x60\xc5\xc4\xcc\x88\x37\x54\x6b\xcc\x92\x03\x9c\xa0\x8d\x59\x2d\xdd\x9f\xec\x42\x29\x54\xec\x5b\x17\xcc\xa4\x48\xe6\xeb\x8b\x39\x58\xfa\x18\xd0\xd0\x1d\x05\x16\xfb\x40\x46\xbc\x8d\x39\xfc\x6f\x07\xeb\xdb\xfc\xc9\x95\x3e\x2c\x9d\x7b\x2a\x52\xf3\x5f\xb2\xc7\xc0\x34\xb4\x41\xba\x74\x69\xc9\x77\x8e\xdd\x3f\x0a\x05\x3b\x4a\x96\x6b\xdf\x85\xe4\xb9\x61\xf1\x77\xcd\xfb\xf0\xf6\x0c\xea\xc7\x15\xae\x76\x1d\xf7\x1b\xba\x86\xe2\xdc\x78\x9e\x97\xcd\x12\x5e\x5f\xb3\xc1\x96\xfc\x08\xa1\xb8\xea\x9a\xfb\x88\xe8\xae\x71\xee\x4e\x1c\x9b\xed\x09\x65\xdd\x2f\xc1\xdf\x60\xa9\xc0\xc6\x69\x0f\x58\x39\x59\xa2\x9b\x1f\x71\x8c\x03\x18\xa9\x2a\x4c\x0f\xd8\x1f\xd3\xa1\xb0\x79\x2c\xa7\x7f\x0e\x60\xe4\x37\xf9\xe4\xe5\x65\x96\x1a\xce\x30\xbe\xf1\x7c\x25\xbe\xf8\xc0\x8e\xf6\x4f\x0a\x0c\xc6\x05\xb4\xb3\x52\x74\xcd\x75\x71\x33\xca\xac\x0a\x98\x40\xa8\x83\xb4\x0e\x53\x7b\xb5\xb8\x79\xbc\xfa\xbc\xf8\xf0\xb8\x78\x77\x7b\x3d\x42\x00\x6c\x92\x84\x1c\xa6\x47\xe9\x38\x95\x33\x6d\x55\x93\xb7\xa7\xd2\xbe\xec\x24\x1d\x15\x5d\xfb\x0f\x8a\xef\x94\xfe\x58\xe3\xe2\xfa\xcb\xef\x9f\xef\x3f\xb5\x5a\x6f\x3e\x9e\x13\xfa\x21\x48\x95\x1f\x2d\xc0\x2e\xde\x2d\xd6\x9f\x68\x7b\x4f\xc5\x29\xe0\xf4\x03\xa1\xdb\x72\x06\xd8\x76\x22\xe3\xf9\x71\x77\x98\xc7\x13\xe4\x46\x5c\x53\xd1\x6d\x6a\x1c\x31\x3f\x3a\x4b\x95\x66\xef\x50\xcb\x1c\xb2\xd4\xb8\x33\xa9\x35\x33\x9e\xb3\x25\xfb\xc9\x39\x45\x49\xcb\x92\xfd\xcc\x72\xf8\x37\x2a\x52\xd3\x52\x79\xd2\xb9\xfd\x2e\x99\x27\x1d\x90\x75\x5a\x47\x57\xfb\x6b\x24\x3b\x2c\xcd\xd5\xe2\xe6\xf4\x32\x9e\x97\x95\x64\xb4\x8a\x46\xd1\xeb\x56\xe3\xcb\x4b\x7f\x6b\xa6\xc3\x53\x4f\x8f\x6d\xf5\x2b\xfb\xf7\x1c\x86\x26\x9a\x7d\x57\xfe\x7f\x0a\x3a\xca\xcf\x49\xd8\xe4\xe6\x5d\xdc\x7f\x02\x00\x00\xff\xff\xa6\x9d\x3a\xd4\x09\x0b\x00\x00"), - }, - "/charts/istio-cni/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 309, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8d\x31\x6a\xc5\x30\x10\x05\x7b\x9d\x62\x2f\x60\x41\x5a\x75\xb9\x40\x08\xf9\xe0\x7e\x2d\xbf\x98\x25\x6b\x49\x48\xb2\x1b\xe1\xbb\x07\xc5\x4e\x11\xa7\xf9\xdd\x32\xec\xcc\xe3\x24\x23\x72\x91\x18\x1c\xed\x2f\xe6\x4b\xc2\xec\xe8\x81\xbc\x8b\xc7\xab\xf7\x71\x0b\xd5\xb4\x36\x90\x7c\x92\x1d\x59\x37\x14\xbb\x68\x9c\x58\xad\xac\xbc\xe0\x7d\x53\x7d\xc0\x67\xd4\x42\xc7\x61\xee\xcc\xfd\xb8\x99\xc3\x82\x67\x74\xa2\x81\x02\xaf\x70\xd4\x1a\xd9\x4e\xba\x8e\x30\xdf\xce\x15\x95\x67\xae\xec\x0c\x5d\xff\x52\xaa\xc4\xc1\x07\xb9\x48\x49\xec\xaf\xcc\x07\x14\x5c\x60\xdf\x7e\xf1\xb9\xa4\x3c\x41\x4b\x2f\x10\x71\x4a\x7f\x13\x44\xf9\xb4\xfe\x27\xba\xfd\x1d\x00\x00\xff\xff\xd4\xc7\x6d\x10\x35\x01\x00\x00"), - }, - "/charts/istio-cni/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 439, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x4c\x90\xcd\xea\xdc\x30\x0c\xc4\xef\x79\x8a\x81\x9e\xb3\x69\xaf\xb9\xf5\x13\x0a\xe5\x4f\x5f\xc1\xb1\x95\xec\x80\x22\x07\x5b\xd9\xdd\xbc\x7d\x89\xb3\x87\xde\x84\x46\x9a\xf9\x31\xd1\x38\x76\xc0\x7d\x9f\x46\x2c\xb1\xdc\x98\x07\x56\x67\xee\x8b\xa8\x84\x2a\x1d\xe0\x61\x19\xb1\x86\xea\x52\x7a\x0d\x2e\xd5\xfb\x14\xa8\x47\x07\x6c\xbb\xea\xdf\xac\x8c\xc7\x88\xaf\xfa\x0c\x47\xed\x3a\x40\xf3\xf2\x47\x1e\xa2\x23\x68\x73\x3e\x37\x9f\xf0\x3d\xdb\xcc\x65\x2f\xc1\x99\x0d\x33\x55\xe0\x19\xb4\x2a\xc5\x71\x25\x46\x23\x36\xdd\x17\x1a\xe2\xff\xd7\xed\x7f\x3a\x90\x64\x0e\xbb\x3a\xfc\xce\x8a\x27\x55\x31\x09\xfc\x2e\x98\x59\xaa\x5f\x9e\x73\xde\x2d\x81\xd6\xf6\xd1\xd8\x9f\x4e\x7d\x62\x69\x26\x3f\x5f\x61\xdd\x54\xda\x1c\x8d\x27\xd3\x2f\xaa\x7c\x84\x55\x46\x7c\xf9\xdc\xc7\xa0\x8c\xf9\x76\xfe\x28\xab\xbf\xc9\x3f\x7e\x63\xa2\x21\x58\x6a\x5c\x48\x2c\xc8\x0f\x29\x85\x49\x50\xc5\x9d\xb6\xd4\x76\xfa\x26\xac\x67\xa3\xd1\xf8\x8d\xf6\x83\x65\xc4\x90\x37\x1f\xa2\x71\x98\x68\x97\x72\x26\x5f\x92\x78\x6c\x92\x89\xdf\xd2\x19\x28\xaf\xa8\x7b\x6a\x4c\x75\x0b\x51\x9a\x19\xd0\xbf\x4b\xaa\x47\x75\x59\xbb\x7f\x01\x00\x00\xff\xff\xac\x7a\x8d\x84\xb7\x01\x00\x00"), - }, - "/charts/istio-cni/values_gke.yaml": &vfsgen۰CompressedFileInfo{ - name: "values_gke.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 434, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x4c\x90\xcd\xaa\xdb\x30\x10\x46\xf7\x7e\x8a\x0f\xba\x76\x7c\xef\xd6\xbb\xfe\x42\xa1\x5c\xfa\x0a\xb2\x34\x76\x3e\xee\x64\x14\xa4\x51\x12\xbf\x7d\xb1\x92\x45\x77\x62\x38\x73\x74\x98\x68\x9c\x07\xe0\xdc\x96\x19\x29\xc7\x4f\x29\x27\xe6\xc9\x59\xef\xc1\x6a\x1e\x00\x0f\xdb\x8c\xdb\xdb\xe9\x7d\x4c\x72\x1b\x80\x6b\x53\xfd\x9b\x95\x71\x9f\xf1\x55\xef\x61\xaf\xc3\x00\x68\xde\xfe\xc8\x4d\x74\x06\x6d\xcd\xc7\xe4\x0b\xbe\x67\x5b\xb9\xb5\x12\x9c\xd9\xb0\x52\x05\x9e\x41\xab\x52\x1c\xac\xce\x3c\x46\x23\xae\xda\x36\x1a\xe2\xff\x74\xdf\x5f\x76\x24\x59\x43\x53\x87\x9f\x59\x71\xa7\x2a\x16\x81\x9f\x05\x2b\x4b\xf5\xa7\x73\xcd\xcd\x12\x68\x7d\x1e\x8d\xe3\x61\x1a\x13\x4b\x97\xfc\x7c\x84\xcb\x55\xa5\xbf\xa3\xf1\x68\xfa\x45\x95\x8f\x70\x91\x19\xef\x6f\x63\x0c\xca\x98\x4f\xc7\x8e\xb2\xfa\xab\xfc\xe3\x37\x16\x1a\x82\xa5\xde\x85\xc4\x82\x7c\x93\x52\x98\x04\x55\xdc\x69\x5b\xed\xe8\xab\xb0\x1e\x47\x8c\xc6\x6f\xb4\x1f\x2c\x33\xa6\x73\xbe\xc8\xf4\xd9\x16\x29\x26\x2e\x75\x5a\x68\x4f\xe2\x28\x78\x22\xe2\x71\x8a\xc6\xc9\xc4\x4f\xe9\xf8\x58\x1e\x51\x5b\xea\x6d\xf5\x1a\xa2\x74\x29\x30\xbe\x8e\x55\xf7\xea\x72\x19\xfe\x05\x00\x00\xff\xff\xef\x90\x1b\xc2\xb2\x01\x00\x00"), - }, - "/charts/istio-control": &vfsgen۰DirInfo{ - name: "istio-control", - modTime: time.Date(2019, 7, 3, 23, 31, 21, 56040776, time.UTC), - }, - "/charts/istio-control/istio-autoinject": &vfsgen۰DirInfo{ - name: "istio-autoinject", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - }, - "/charts/istio-control/istio-autoinject/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 331, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8e\xbd\x6e\xc3\x30\x0c\x84\x77\x3d\x05\x91\x3d\x52\xed\xa5\x88\x80\x76\x6e\x5f\x20\x9d\x15\x89\xb1\xd9\xd8\xa2\x40\xd1\x4e\xf3\xf6\x85\x7f\x5a\xb4\x0b\x41\xdc\xdd\x47\x5e\x28\x74\x46\xa9\xc4\xd9\xc3\xdc\x98\x1c\x46\xf4\x40\x55\x89\x8f\x61\x52\xa6\xfc\x89\x51\xcd\xfc\x13\x69\x6c\x63\x9f\x4c\x28\xe5\xfc\x5f\x51\x1a\x06\x94\x5f\xf1\xf0\xfa\xd2\xda\x67\xdb\x1e\x4c\xc2\x1a\x85\x8a\xae\xf2\x1b\x0e\x23\xc4\x3e\x88\xc2\x95\x05\x2a\x25\x8c\x41\x60\x7b\xc2\x02\x77\xbc\xf4\xcc\x37\x48\x58\x06\x7e\x8c\x98\xd5\xdc\xf0\x71\x67\x49\xd5\x1b\x80\xe3\x56\x6c\xdd\x76\xf6\x7d\x47\x3f\x36\x72\xb5\xfe\xf4\xae\x3c\x49\xc4\x1d\xee\x55\x8b\x77\xae\x23\xed\xa7\x8b\x8d\x3c\xba\xf5\xdc\x36\x0d\xe6\x8e\x32\x7a\xe8\x58\xcb\x60\x28\x2e\x7d\x17\xa2\x7a\xb7\x25\x2c\xb1\xbb\x86\x79\x71\xaa\x0b\x39\x09\x53\x3a\x36\xa7\xf6\xab\x39\xb5\xb6\xe4\xce\x7c\x07\x00\x00\xff\xff\x2e\x96\x18\xfb\x4b\x01\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/NOTES.txt": &vfsgen۰CompressedFileInfo{ - name: "NOTES.txt", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 1103, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x53\x31\x6f\xdb\x4c\x0c\xdd\xf5\x2b\x1e\x90\x21\xdf\x07\xc4\x42\xbd\x06\xc8\x10\xa4\x4b\x87\xa4\x41\xd3\xa2\x6b\x28\x1d\x6d\x5d\x43\x93\xc2\x1d\x15\xc3\xff\xbe\xb8\x93\xe5\xd4\x19\x8a\x74\x3b\x1c\xc9\xc7\xf7\x1e\xc9\xa7\x18\xb8\xa7\x84\xa8\xbf\xb8\x77\x4b\xf8\xcf\x46\x8f\xa6\x24\xff\x5f\x23\x6e\x10\x62\xa6\x4e\x38\x5c\x61\x47\x3a\x91\x1c\x13\xa3\x29\x2c\xc1\x7c\xe0\x04\x37\x93\x0c\x65\x0e\x70\x43\xc7\x98\x32\x87\xb6\x69\xce\xb1\x4b\x49\x54\x30\xf5\x03\xc6\x64\x9b\x28\x8c\x9e\xb4\xe4\x67\x16\xee\x9d\x03\xba\x03\x84\x3a\x96\xa8\x5b\xf8\xc0\x50\xda\x71\x1e\xa9\x67\xec\xa3\x0f\xf5\x8b\xc6\x31\xd9\x98\x22\x39\x2f\x30\x6d\xd3\x7c\x2f\xc9\xbc\x9f\xab\x11\x33\x2e\x63\xf6\x68\x2b\xd6\xd7\x4b\x90\x86\x5a\xfa\x4a\x32\x71\x09\xbe\x83\x1e\x38\x71\xfd\x3b\x99\x10\x33\xa2\x66\x27\x91\x2a\xe4\xc1\xbc\x24\x90\x23\x7a\x89\x8d\x96\x73\xec\x84\x8b\xdc\x63\x1e\xe8\x24\xaa\x52\x35\x95\xc3\x39\x26\x8d\x23\x56\x98\x72\xd1\x96\x78\x57\x20\x1f\xa3\x98\x57\x7a\xf7\x77\x8f\x6d\xd3\x3c\x3f\x3f\x37\x00\x70\x81\x07\xde\x23\xfb\x41\xf8\xea\x58\x51\xa1\xaa\xa4\xb1\x14\xad\xd7\x4b\xbb\x5a\xf0\x32\x75\xdc\xbb\xa0\x4f\x5c\x7c\xd1\x8c\x8d\x25\x8f\x76\x16\x9c\xbd\x39\xc5\x70\x72\xe8\x66\x7e\xf5\xa6\x9e\x4c\x9a\x23\x85\x27\xee\x4d\x03\x6a\xbb\x0f\x35\x5b\x39\x67\xff\xa7\x8e\x3b\xca\xce\x69\x69\xf8\x55\xc2\xea\x4c\xf3\x9c\x94\x0f\xd9\x79\x57\x5d\xfa\x52\x3e\xb0\x6e\x3f\x95\xdd\x5b\xb7\x6b\x04\xde\xd0\x24\xbe\x0c\x81\xca\x92\xe5\xf6\xef\x2c\xff\x44\xfd\x00\xdb\xd3\xf2\xde\xb0\xd6\x4b\xa8\x53\x6a\x2e\xf0\x43\x8f\x5d\x9b\xe6\x76\xe3\x9c\x30\x2d\x1f\x51\xb7\x57\x38\xd8\x84\x3c\xd8\x24\x01\xbd\x30\xe9\x34\xd6\x19\x6e\xc5\x3a\x12\xdc\x7d\xfb\x3c\x8b\xbc\xae\x53\xef\x28\x0f\xc5\x86\x85\x4a\x60\x61\x67\xdc\x4f\x4e\x1e\x75\xfb\x93\xbb\xc1\xec\xe5\xce\x74\x13\xb7\x53\xa2\xf9\x96\x66\x1d\xf3\x8d\xad\x96\x35\x5b\xbd\x9b\x65\x25\x7b\xab\x87\xba\x7e\x6f\xab\x74\xe2\xca\xe1\x6d\x2a\x47\x07\xf6\x51\x04\x6a\x10\xd3\x2d\xa7\x72\x9f\x34\xf9\x62\x04\x07\x98\xf6\xf3\xb9\xf4\x95\x4f\x39\x88\x99\x6f\x68\x9b\xdf\x01\x00\x00\xff\xff\x0c\xab\x67\x6a\x4f\x04\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/files": &vfsgen۰DirInfo{ - name: "files", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - }, - "/charts/istio-control/istio-autoinject/files/injection-template.yaml": &vfsgen۰CompressedFileInfo{ - name: "injection-template.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 13473, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x5a\xeb\x6f\xe3\x36\x12\xff\xbe\x7f\x05\x21\xf4\x8a\x04\x38\xc9\xe9\x0b\x87\x33\x90\x0f\xae\xed\xdd\xba\x8d\x1f\x88\xbd\xed\xf5\xbe\xd8\xb4\x34\xb6\xd9\x48\xa4\x4a\x52\xde\xb8\xde\xfc\xef\x07\x92\x7a\x50\xb2\xe4\xd7\x26\xfd\x72\x01\x02\x58\x24\xe7\xc1\xe1\xf0\x37\x43\x0e\x25\x44\x71\x88\x25\xb4\xd1\xe7\x77\x08\x71\xf8\xc4\x89\x84\x4e\x1c\xff\x34\x9b\x4d\x26\x9c\x2d\xa1\x8d\xf6\x7b\xb4\xc5\x61\x02\x63\xde\x83\x15\x4e\x42\x89\xbc\x5f\xd5\xb7\xf0\x04\x09\xc0\xc7\x7c\x40\xff\x00\x5f\x32\xfe\x1b\x2c\x37\x8c\x3d\x79\x35\x5c\xd0\x0a\x87\x02\xd0\xcb\xcb\x3b\x84\xf6\x7b\x17\x91\x15\x62\x1c\xdd\x50\x56\x30\x23\x42\x12\x36\xf7\x29\xf1\x80\xe2\x65\x08\xc1\x6d\xde\xb5\x0e\xd9\x12\x87\x5e\xcc\xd9\xf3\x2e\xed\xed\x32\x0e\xbd\x24\x8a\x0d\x4b\x42\x89\xec\x32\x2a\x31\xa1\xc0\x45\x5b\x0b\x51\x32\x28\xa0\x1b\x4c\x29\x93\x58\x12\x46\x91\x37\x5e\x2a\x4d\x87\x20\x31\x5a\xa4\xca\x1b\xb9\x1e\x61\x2d\x42\x25\x70\x1f\x62\x35\x74\xc8\x02\x58\x20\x6f\xa2\x24\x76\x19\x5d\x91\xb5\x37\xa8\x74\xdf\xa2\xc5\x68\x3c\xea\x2f\x4a\x93\x3a\x3a\x21\x33\xd2\x45\x14\x47\xd0\x46\xba\xdb\x55\x9a\x17\xe4\xbe\x99\x83\x40\x4e\xcb\xa9\x9d\xfd\x5c\x8d\xf7\x48\x84\xd7\xa9\x31\x11\xd2\x1f\x6d\xe4\xec\xf7\x67\x50\x38\xa9\x2c\xc8\x57\xe3\x18\x83\x4d\xb2\x44\x2f\x2f\xad\xb3\x38\xb7\x0f\x47\x49\xbc\xb6\x45\xd2\x20\x93\xe8\xb3\x28\xc2\x34\x68\xeb\x0f\x17\x39\xad\x44\xf0\x56\xc8\x7c\x1c\xb6\x96\x84\xb6\x52\xcb\xc4\x52\x59\x4d\x78\x62\xe3\x64\x03\xdd\x38\xfb\xf9\xcd\x0f\x77\x77\xdf\xe4\xcd\x49\xde\xfc\xdd\x77\xff\xca\x5b\xa3\x9c\x6e\xbf\x47\x6f\xe5\x06\xe9\x0c\x8d\x44\x72\x8e\x44\xc9\xf1\x6a\x45\x7c\xaf\x46\xb2\x1f\x26\x01\x8c\x13\xb9\x64\x09\x0d\x06\x93\x47\x4c\xd7\x20\x16\xf5\xfb\x20\x1d\x9d\x8d\x2a\xe9\xf1\xfc\x45\x7a\xc0\xf3\x25\x7a\xa4\xa3\x6b\xf5\x58\xbe\x86\x3d\x06\x54\xab\x31\x61\x5c\x8a\x05\xba\xa9\x69\x45\xde\x34\x06\xdf\x2b\x10\xe0\xb6\xa4\x45\x60\x6b\x91\xa9\x5b\x90\x1f\x81\x08\x89\x65\x22\x0e\x15\x8b\x19\x97\x0d\xd6\x30\x24\x8a\xed\x6d\x33\xdf\x53\x96\x2f\xcf\xf8\xa8\xd5\xad\x91\xc5\xa4\x0d\xf8\x29\x80\x25\x42\x80\xb4\x85\x7b\x9d\x5c\x27\x71\xbe\x0b\x18\x4d\x6e\xd1\x8d\x02\xd4\x86\x60\x50\xa7\x5e\x89\x1e\x39\xce\xad\xfe\x77\x53\x18\x50\x6b\xc3\x5e\xd3\x53\xcf\x30\x58\x59\x23\xcb\x60\x0a\x9e\x32\xc5\x8c\xfd\xae\x36\xde\x53\xb2\x84\x2d\xe1\x52\x43\xc5\x0a\xfb\xa0\x4c\x67\x4f\xfa\xc9\x9e\x34\xa1\x01\x3c\xbf\x8e\x94\xa6\xf9\x68\x8c\x9e\x24\x61\x38\x61\x21\xf1\x77\x06\xeb\x8f\x2f\x63\x85\x04\x2d\x3a\xe1\x27\xbc\xb3\x44\x70\x10\x2c\xe1\x3e\x08\x83\xe2\xaa\xe1\xcf\x04\x84\xcc\xbf\x11\xf2\xe3\xa4\x8d\xbe\xb9\x8b\xf2\x86\x08\x22\xc6\x77\xaa\x6d\x48\xd2\xc6\x90\x44\xa4\x86\xa6\x86\xe8\x87\x8c\x48\x80\x9f\x70\x22\x15\x20\x4b\x78\x96\xb9\xfc\x84\x76\xc4\x47\x01\xbc\x8d\xee\xec\xa6\x11\xa3\x8f\x8c\xc9\xb6\x49\x41\xd2\x1e\x1f\xc7\x78\x49\x42\x22\x09\x58\xc2\x71\x10\x14\x1f\x2e\x1a\xf5\x67\xf3\x4e\x6f\x38\x18\xa5\x6d\x69\x90\xae\x75\xaf\x98\x93\x2d\x09\x61\x0d\x79\x90\x43\xa8\x68\x6b\x23\xc9\x13\xb0\xd8\x58\xc1\x90\x83\x90\x98\xcb\x6c\x69\x8c\x9d\xab\x31\x73\xbf\x47\xd6\x8a\xa6\x8a\xc0\x9f\x67\x65\x48\x4a\x74\x39\xf5\x30\x03\x5c\x9f\x71\x70\x83\x24\x8a\xb5\x1e\x98\xaf\x45\x16\x91\x5d\x3f\xfd\x21\x76\xc2\x97\x21\x72\x3f\xa1\x27\xe0\x14\x42\x4f\xd1\xcc\x63\x2c\x25\x70\x7a\xdf\xda\x62\xde\x0a\xc9\xd2\x44\xec\x96\xea\x33\x2a\xa0\xaf\xbf\x46\x89\x5e\x5a\xe4\xfa\x28\xa1\xfa\x27\x04\x87\xc1\x5f\xc9\xd0\x31\x5f\x6c\xfe\xef\xb2\xa0\xb7\xdd\x95\x68\xff\xf2\x6a\xbb\xa5\xc6\x91\x53\x84\xc9\xdd\x31\xff\xf0\x4b\x69\x78\x39\xd9\xd5\x06\x6b\x58\xe7\xf3\xf3\x74\xcd\x65\xa0\x2c\xd1\x94\x19\xa9\xbe\xdb\x9a\x85\x7d\x65\x11\xaf\xec\x49\x57\x39\x91\x4a\x45\xf2\x6d\x9b\xdb\x5e\x45\xb7\xb6\xca\x91\xff\x7d\x97\x2f\x21\x93\xcc\x67\x61\x1b\xcd\xba\x93\xb4\xcd\x2c\xcd\x46\xca\xd8\x05\xba\x65\x3b\xb5\x3e\xd1\x01\x16\x64\x8b\xa6\xe1\xc0\x18\x2a\x43\x09\x37\x60\x11\x26\x34\xfd\xfc\xea\x66\x32\xee\xcd\x47\x9d\x61\x7f\x3a\xe9\x74\xfb\xb7\x9e\xd8\xfa\x5e\xd3\x5c\xfd\x30\x11\x12\x78\x4f\x33\x40\x79\x6c\x74\x5d\x5f\xa7\xd9\x13\x2c\x37\xf9\xe9\x00\xa4\x9f\x22\x8c\xa6\x75\xf2\xb1\x4b\x42\x31\xdf\x95\xc6\x96\x4f\x12\x7a\x5a\xc5\x78\x01\x7c\x4b\x7c\xe8\x1a\xd9\x56\xa8\xa7\x80\x1c\x47\xa5\x96\xd5\x50\xfc\x80\x97\x10\x0a\xe4\xe0\x38\x2e\x27\x2e\xb5\x81\x3b\x1d\xbd\xc0\x71\xac\xb6\xa4\x57\xb5\x48\x11\x9c\x95\xbb\x94\xb9\x55\x37\x7e\x0f\xe2\x90\xed\x22\xa0\x86\xf5\x08\x47\x80\x16\xd6\x36\xd2\x02\xce\xa3\x13\x31\xf6\x01\x2d\x02\x33\xa4\x31\x4b\xd0\x0b\xca\x31\xa1\xbd\x84\xeb\x4d\x62\x69\xb7\x62\x3c\xc2\x32\xeb\x28\x9f\x88\x7a\x36\x8d\x95\x78\xbb\x6e\x8c\x39\x50\x39\xdd\x24\x32\x60\x9f\x2e\x65\x3b\xa9\x25\x2e\xf1\x0f\x88\xf0\xd9\x16\xf8\xae\x13\x04\x1c\x84\xb8\xe6\xb8\x57\xe5\x51\x39\xee\xf5\x2a\xdd\xd6\x2e\x3c\x12\x81\x25\xc7\x3e\x70\xe4\x84\x64\xbd\x91\x42\x42\xec\xd8\x2e\x9e\xb7\x1e\xaa\x5d\x92\xfd\x01\xe4\x8c\x63\x9f\x50\xfd\xf3\x21\xa3\x52\x1f\x65\x6d\xaa\x6c\x7d\x1f\x84\x98\xb1\x27\xa0\xd7\xb0\x2e\xa8\xeb\xd9\x4f\x55\x44\x81\xfb\x0b\x58\x1a\x8a\x5a\x13\x74\x95\xa1\xa4\xbd\x85\x2f\xe0\x5b\x10\x57\xa1\xf8\x8c\xb5\xf9\x8b\xc4\x4f\x84\x96\x16\xc6\x34\x5d\xb4\x2a\xff\xd5\x24\x87\x4b\x72\x89\x26\x01\x96\x38\x60\xeb\x92\x2a\x69\x5b\x67\x0d\x54\x5e\xa4\x50\xcf\x10\x36\x68\x54\x04\x0e\xbd\x3f\x15\x97\x07\xb6\x7e\x80\x2d\x84\xf7\x97\xec\x9a\x30\x25\x6a\x08\x8f\x59\x77\x55\x56\x97\x45\x31\xa3\x40\xe5\x55\x42\xfd\x2a\x75\x83\xf4\x83\x71\xe5\xf0\x42\xc1\x97\x33\x12\x01\x4b\xe4\x99\x50\xd4\x2d\x11\x95\x21\xa0\x21\x03\xdf\xb2\xdd\x54\x62\x29\x82\xf2\xe5\x5f\x1a\x87\x74\xcf\xc7\xe0\x14\x00\x4c\x2b\xe3\xea\x56\xf2\xa4\x1a\x43\x90\x9c\xf8\x62\x6a\x62\x5f\x9d\x3a\x35\xc3\x4e\x28\xd6\x6f\xa4\x38\xe1\x6c\x9d\x20\x22\x54\x65\x27\x4d\x9c\x27\xa5\x51\x95\x1b\x8d\xb5\x3c\x58\x17\x3f\xe1\x1c\xa8\xbf\x43\x77\xa5\x38\xe6\x17\x3d\x4d\x92\x6c\xe2\xc6\x7b\x80\x3a\xdb\xaa\x2c\x8b\xb3\x70\x12\x62\x0a\xd3\x34\xbb\xee\x1f\x5a\xd5\x1e\xd6\x49\xe4\xc6\xa4\xec\x69\xf7\xf0\xe3\xec\x63\xe7\x61\x3e\x7b\x98\xe6\x82\xec\x14\xf2\x24\xfd\x68\x3c\xea\xbf\x3b\x38\x4c\xa6\xfa\xde\x1c\xb9\xf6\x76\x8e\xdd\x69\xd5\x9f\xb6\x4a\x77\x5a\xce\x9d\x73\x5b\x75\x65\xd3\x77\x4e\xf0\xfd\x92\xfb\xb4\x52\x30\xc2\x71\x1c\x12\x5f\x8b\xd0\x37\x39\x67\x08\xe7\x80\x03\x42\x41\x08\xaf\x49\x8d\x2a\xd3\x05\xba\xa9\x36\x35\xde\x34\x9e\xb1\x27\x25\x4f\x84\x3c\x4c\x78\x75\x73\x9a\x49\xdf\xd7\x64\xfe\x55\xaa\x33\x24\x85\x6c\xdd\x11\x3f\x0b\x56\x92\x13\xb2\xf5\x1c\x8b\xf9\x1f\x42\x67\x60\x35\x1b\xd4\x76\xb8\x1f\x19\x93\x42\x72\x1c\xdf\x67\xe7\xc0\xcc\xb7\x4e\x5c\x8a\x1d\x18\x75\x99\x71\x1a\x6f\x81\x73\x12\xc0\xa2\xe4\x3f\x59\xfd\xe9\x3d\x09\xe1\xde\xca\xf4\xfd\x44\x48\x16\xb9\x39\xb5\x49\xe5\xe7\xf9\xb7\x57\x3f\x0f\xa0\xdb\xec\xdc\x62\x4e\x37\x59\x02\x9e\x1e\x79\x74\xb6\xfc\x9e\xb3\xa8\xb8\xe7\x59\x11\x08\x83\x47\x58\x15\x2d\x69\x9b\xca\x2b\xda\x28\x02\x89\x55\x30\xf6\x14\xbf\x5a\xd6\x3a\xb7\x7f\x1d\xfe\x3a\x53\x2f\x09\x19\x8c\xa6\xb3\xce\xa8\xdb\x9f\x0f\x26\x57\x8b\x48\xfd\x3d\x66\x41\xca\x24\x63\xfe\xd3\x78\x3a\x7b\x05\xc6\x1b\x26\x64\x85\xf3\x60\x3a\x1b\x8c\xe7\xc3\xfe\xac\x33\x7f\xc3\x15\xb0\xa4\x74\xc7\xa3\xf7\x83\x0f\x7f\xc3\x7a\x14\x22\x07\xa3\x59\xff\xb1\xdb\x9f\xcc\x06\xe3\xd1\x7c\x38\xee\x95\x64\x9a\xf3\xbf\xbe\x82\x3f\x7e\xbf\x7b\xba\xfe\x74\x7b\xbc\x00\xe5\x4d\x25\x27\x74\x6d\xc5\xb0\x3a\x48\xa0\x20\x3f\x31\xfe\x54\x6c\xbd\x83\xe9\x8c\xfa\xb3\xdf\xc6\x8f\xbf\x1c\x4e\xa2\x91\x93\x73\x18\x81\xb2\x48\xdd\x34\xdd\x46\xf1\x3f\x4f\xc7\xa3\x79\x67\x34\x1a\xcf\x3a\xca\x9e\xd3\xb2\x1a\x9f\xad\xb5\x32\x32\x24\x53\x14\xa7\xe4\xd8\xb7\x54\x75\xaa\xa5\x07\xf6\xe3\x5a\x3d\x74\x7e\xec\x3f\x5c\xa3\x50\x99\x7b\x55\x97\x37\x80\x53\x5b\xfd\x1f\xc7\xe3\xd9\x74\xf6\xd8\x99\xcc\xc7\xbf\xf6\x1f\x1f\x07\x07\xee\x79\x0c\x6c\x4d\x43\x05\x6d\x1b\x96\xbb\xce\xdb\x44\x20\x3c\xc3\x43\x9f\x23\x7b\x84\xeb\x07\x02\xbb\x23\xee\x37\xed\x4d\xe7\xb3\xf1\x2f\xfd\xd1\x7c\xd2\x99\xfd\x74\xd2\x0b\x1b\x25\xb8\x2f\x2f\x2d\x11\x08\xa9\x5a\x6b\x35\x7e\x8b\x6b\xd7\x33\x5e\x1b\x7c\x59\x29\x71\x71\xb7\x28\xea\x05\x69\x1e\x63\x9e\x67\xa4\x96\xda\x48\x19\x7f\x00\x59\x80\x5a\xac\xd1\xac\xb5\x01\x1c\xca\xcd\x5f\x2d\x45\xb5\x2b\x3a\xf5\xfd\xe0\x1b\x66\x6a\xa9\x24\x42\x89\x24\x38\xec\x41\x88\x77\x53\xf0\x19\x0d\xc4\x51\xb1\xa7\x73\xb4\x1a\x8e\x0d\xfa\xe4\xbc\x06\x87\x24\x56\x8d\x06\x38\x61\xc1\xeb\xe8\x56\xe2\x75\x4a\xab\x89\x3d\xb8\xd0\x67\x85\x49\x98\x70\x98\x6d\x38\x88\x0d\x0b\x83\x2f\x54\xa9\xca\xee\x94\x56\xef\x2b\xe3\x2b\xe0\x95\x1d\x8c\x1a\x8a\x0a\x6f\x53\x20\x2b\x1e\xd7\xc0\x85\xf5\xae\x6c\xbb\x8c\x69\xb8\x7b\x64\x4c\xaa\x24\x53\xec\x84\x84\xe8\x94\xbc\xf4\xda\xe6\x2d\x1f\x0f\xcd\x26\x8f\xe3\xff\xfc\xbe\xc8\x6d\x7a\x75\x51\xb2\x7c\x9b\x5c\x2a\xed\xe4\xcf\x61\x6a\x26\xa9\x87\x7d\xe0\x2c\x89\xad\x71\x07\x55\xdd\xb3\x9f\x12\xd4\xd7\x50\xba\x93\x8f\x8b\xdb\x2b\x69\x87\xba\xf0\x6b\x95\xce\xeb\x6a\xcc\xe7\x95\xea\x8f\x29\x57\x70\x4f\xab\xcf\x67\x14\xe5\x9b\xf9\xe5\x21\xa1\xd8\x35\x16\xff\x2f\xd1\xb6\xc6\x1c\x45\x71\xfc\x6a\x9d\x53\xae\x35\x6a\xdb\x5b\xbf\x70\xb0\x63\x5b\x3c\x77\x9e\xd2\x4e\x92\xec\x77\x1c\x85\xa7\x28\x3e\x6b\xf5\xa9\x44\xdf\xd7\x9c\x72\xab\xf5\x6f\x84\xb6\x2c\x4c\x22\x18\xb2\x84\x66\xce\x70\xa5\x69\x8f\xe6\x53\x91\xe2\x6f\x8e\x05\x47\xb2\xa5\x74\xaa\x26\xa3\xa9\x76\xba\x46\xd3\xba\x44\xa4\x89\x7f\x51\x70\x43\xa5\xea\xa9\x3e\x01\x9f\x48\xba\x0e\x6e\xf7\x6c\x11\x5b\xcc\x5b\x3c\xa1\x2a\x3d\x2a\xb1\x17\x81\x70\x93\x40\xb8\x71\x76\x0b\x5f\xa0\xa6\x85\x93\xcd\x42\x13\x01\x33\x9e\x08\x75\x2c\x90\x9b\xdd\xcf\x9f\xe4\x09\xf1\xe0\x73\x90\xa2\xa5\x53\x34\x51\x33\x51\x99\x57\x2e\x5e\x29\xd9\xb4\xb4\xb8\x30\x95\x74\xea\x16\x57\xd9\xab\xd0\xb1\xd1\x58\x15\xc5\xcb\xf7\x7b\xd5\xa5\xf7\x81\x4b\xd1\xaa\x31\x86\xee\xb8\x48\x10\x59\x21\x4c\x03\x74\x73\x7e\x71\xea\xe0\xa5\xad\x19\xe2\xe5\x23\x3c\xdf\xae\xb4\x1c\x4e\x61\xbf\x47\x41\x6e\xb6\xab\xaa\x37\xa5\x99\xe7\x72\x2f\x9c\x7d\x3e\xff\x4b\x51\x20\x11\xc0\x7f\x2d\x20\x65\x51\x02\x30\x8e\xe9\x1a\xd0\x57\x1a\x5e\xff\x89\xbe\xd2\x47\x05\xd4\xbe\x47\x2b\xce\x22\x7d\xe6\xbb\xf8\x88\x5f\x15\x77\x70\x84\x53\x5e\x9a\x4a\xb4\x90\xb9\x00\xd3\x54\x89\x2a\x68\x1e\x82\x77\xc5\x44\x06\x8c\xd2\x07\xd2\xaf\x7c\x00\x75\xcf\x40\x40\x53\xdc\x1f\xe2\xb8\x5d\x5a\xef\x4b\x8a\x40\x87\xf2\x91\xe3\xd4\xc4\x0c\x17\x41\x14\xcb\x5d\x8f\xf0\x4c\x56\x04\x01\x49\xa2\x36\x32\x21\xef\x5d\x13\xbc\x9e\x09\xae\x6e\x13\x78\x6e\x98\x30\xbb\x22\x4b\x72\xeb\xc0\xf7\x1a\x24\x73\x8f\xa1\x90\x01\xd5\x4c\xa6\xf9\x1a\x65\x0a\x1a\xa4\xd5\x6d\xe7\x5d\x20\x1f\x41\x75\xb7\x01\xaa\x63\xce\xd4\xaa\x41\x9e\xac\x56\x12\x49\x17\xa5\xaf\x2f\x3a\xbe\xaf\x9c\x5e\xcf\xd0\xbe\x83\x33\x76\xaa\xb2\x35\x7f\xf0\x1c\x13\x53\x98\xcb\x4f\x6a\xdf\x7f\xf7\xed\xdd\x9d\x35\x04\x27\x01\x01\xea\x1b\x6f\xba\xf8\x0e\xbd\x00\x67\xb7\x01\x7d\xcb\x06\x66\x3a\x93\xc7\x61\xe5\x1c\x91\x55\x7b\x75\x91\x60\x5a\x9a\xaf\x7e\xc0\xe1\x38\xc5\xc6\xb4\xd7\xc8\x78\x77\xfa\x40\xa3\x31\xb1\xb7\x29\x14\x40\xc4\x9c\x50\xb9\x42\x8e\xa1\xfe\x87\x70\x9a\x05\xdb\xf0\x50\x57\xe2\xba\x1e\x30\x17\x45\xe8\x79\x4b\xa0\xac\xa2\x8c\x42\xc8\x0a\x40\x36\xc3\xe3\xb7\x8d\xf7\x81\xf5\x6f\xd8\xfe\xae\x28\xea\x1e\x89\x77\x67\xf8\x9b\xed\x0f\x55\x21\x67\x96\x89\x59\xd0\x1b\x4d\xa7\x80\xb9\xbf\xc9\x5f\x0a\xa5\xe9\x7b\x40\x85\x89\xe1\xed\x54\x1f\x35\xc8\x3e\x18\xba\x69\x64\xbc\x80\xa7\x01\x02\x15\x53\x81\x06\xc0\x91\xd7\x10\xa7\xac\x8f\xff\x05\x00\x00\xff\xff\x99\x7f\x1e\x75\xa1\x34\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 9, 20, 17, 42, 178097450, time.UTC), - }, - "/charts/istio-control/istio-autoinject/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 3130, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\x9b\x3c\x10\xbe\xe7\x57\x8c\xa2\x1c\xde\x77\xb5\xc0\xf6\x8a\xd4\xc3\x4a\xdd\xc3\xaa\x55\x55\x75\xab\xf6\xec\xe0\x01\xdc\x78\x6d\x6a\x4c\x9a\x88\xe6\xbf\x57\x36\x84\x18\xc2\xd7\x26\x51\x6f\xe8\x61\xbe\xfc\xcc\x33\x33\x65\x19\xdc\x01\x89\x63\x26\x98\xde\x83\x07\xa9\xd6\x59\x1e\x06\xc1\xa6\x58\xa3\x12\xa8\x31\xf7\x99\x0c\xa8\x8c\xf2\x20\x92\x22\xc2\x4c\xdb\x8f\x98\x25\x85\x22\x9a\x49\x11\x90\x3c\x67\x89\xf0\x32\x49\x3d\x21\x29\x06\x70\x17\x1c\x0e\x8b\x45\x59\x7a\x40\x31\x66\x02\x61\x69\xf0\x63\x8e\x25\x1c\x0e\x0b\x00\x03\x3d\xd6\x50\xb8\x00\x00\x50\xf8\xab\x60\x0a\xe9\x87\x42\x31\x91\xbc\x44\x29\xd2\x82\x33\x91\x3c\x27\x42\x36\xf0\xd3\x0e\xa3\xc2\xa4\xad\x7c\x4c\x12\x26\x22\x5e\xd0\x3a\xcb\x31\xe4\xd7\x81\x60\x4b\xf0\xab\xfc\x00\x99\xc2\x18\xd5\xad\x12\x7e\x19\x8a\x56\x67\x34\x8e\x28\x28\xf4\x51\x33\x5d\x74\x5d\x72\x45\xdb\x0b\x72\x8c\xb4\x54\xdf\x50\xbd\xe6\x61\xfd\xc3\x83\x57\xa2\xa3\xf4\x69\x97\x29\xcc\x73\x26\x45\xf3\xc7\xfc\xdb\xe0\x3e\x84\x35\x6a\xe2\xb7\xfb\x4a\x54\x94\x36\x66\x00\x32\x43\x45\xb4\x54\x21\x3c\x0b\x07\xde\x12\x5e\xa0\x13\xcf\xd4\xaf\x88\x48\x10\x56\x1b\xdc\xdf\xc3\x6a\x4b\x38\x84\xef\xc1\xff\x6e\x0d\xfd\x84\xcb\x35\xe1\xbe\x09\x7e\xaa\xbc\x61\x2f\x86\x44\xc3\x7f\xd6\xe7\x0f\x30\xa1\xff\x87\x87\xb6\x95\x07\x65\x69\x23\x9f\x3b\xd7\x0c\x4e\x40\x2b\x97\x25\x53\x18\xc5\x98\x14\x5c\x77\x0b\xac\xe1\xcf\xae\xf5\xd1\x24\x67\x14\x23\xa2\x9e\xc5\x4f\x8b\xff\xc0\x75\x2a\xe5\xc6\x6f\x45\xf6\x3a\x79\xfb\x38\x69\xd7\xe2\x38\xd4\x4d\xe9\x7d\xea\xcc\x3e\x1c\xa9\x32\xa9\xfa\x59\x99\xa3\xba\x11\xe5\xda\xa0\x17\x74\x7b\xaa\xcf\x1e\xfc\x46\x96\xa4\x3a\x6c\xca\xb7\x16\xa7\x47\x54\xb3\x89\x22\xc2\xd3\x6b\xff\x9d\xbe\x7b\x24\xd8\x52\xda\x0c\x82\x33\x49\x1f\x85\x66\x8f\xee\xd2\xab\x59\x99\x16\x59\xc7\xf9\x13\x59\x23\x9f\x2b\xd0\x8e\xaf\xd9\x11\x2d\x7f\xfb\x80\x8e\x51\xe8\x36\xed\x9a\xda\x6a\xb2\xae\xde\xe4\x9d\x24\x33\x96\x79\x67\x13\x5c\xf4\x96\x33\xae\x6e\x77\x29\x3a\x99\xa6\x8e\xc5\xf0\x14\xcf\xd4\xdb\xe4\x25\x71\x86\x9a\x09\x8a\xbb\x7b\x58\x31\x8d\xaf\xee\x5c\x5f\x21\x00\x0f\xb8\x0b\xbf\x61\x86\xcd\xd8\x99\x42\xfc\x91\x9d\xd8\xd8\x1c\xa1\xde\x23\x53\x99\x54\xa3\xdd\x36\x38\x1f\x77\x7b\x34\xb6\x84\xe7\xe6\xfd\x79\xc6\x99\x86\xe5\xfd\x72\x24\x84\x4b\x9f\xd9\x88\x76\xd3\xdb\x00\x3d\x97\x6c\x3b\x79\xc7\x7a\x40\x2d\x33\xc9\x65\xb2\xff\xd8\x62\xc5\x41\xc7\x75\x32\x26\x8e\xa9\x85\x7f\x43\x75\x0c\x8e\x94\x67\x77\x90\x63\x75\x6a\xc7\x80\x74\xc6\xc4\x33\x43\x3e\x6f\x10\xd0\x0c\x09\xf5\x89\xe8\x02\x19\xcd\x16\xd2\x80\x94\x06\xc4\xd4\x0b\xcf\x16\x14\x34\xc7\xf9\xdd\xc3\xc3\x88\xc4\xfe\x06\x00\x00\xff\xff\xfd\x29\x18\xcd\x3a\x0c\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/_helpers.tpl": &vfsgen۰CompressedFileInfo{ - name: "_helpers.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 755335019, time.UTC), - uncompressedSize: 1116, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xa4\x53\x4d\x6b\xdd\x30\x10\xbc\xbf\x5f\xb1\x98\x06\xda\x80\x9d\x43\xa1\x87\x07\x39\xa5\x3d\x84\x42\x0a\x0d\x34\x67\xd9\x1e\xd5\xdb\xca\xb2\xab\x5d\xbd\xe6\x91\xe6\xbf\x17\x49\xce\xfb\x28\x94\xe4\x91\xdb\x22\x66\x76\x67\xc6\xe3\x87\x87\x8b\x73\xda\xf0\xb8\x26\x81\x92\x65\x07\xdd\xce\xb8\x1c\xa3\xa8\xe9\x06\xac\xe9\xfc\xe2\xf1\x71\x95\x50\xab\x4f\xf7\xb3\xf1\x3d\xe9\x00\xf2\x66\x04\x4d\x36\xcf\xdd\x60\x82\x36\xab\x05\x57\x53\x0f\xcb\x1e\x54\x09\xf7\xe8\x4c\xa8\xd9\xff\x40\xa7\x53\x68\x12\xa9\xa2\x7a\x0f\x33\xd1\x29\x35\x57\x99\x7f\x93\x36\x36\xdf\x8c\x8b\x90\x66\xa1\x5e\x2f\xcc\x3b\xb4\xc3\x34\xfd\xcc\x0b\xbe\x6c\x10\x02\xf7\xa0\x3f\xa4\x21\xfa\x8e\x3e\xbc\xcf\x23\x8f\xb7\xd1\x5a\xbe\xa7\xaa\xde\xdf\x80\xef\xf3\x5c\xf4\x5f\x05\x18\x05\x99\xdd\x69\x1b\x9d\xdb\xd2\xaf\x68\x1c\x5b\x46\x4f\x66\x9e\xb3\xb3\x66\x75\x87\xb2\x3d\xe3\x35\xdd\x48\x2e\x85\x5a\x74\x26\x0a\x48\xa6\x11\xf4\x39\xb6\x08\x1e\x0a\x29\x79\x58\x86\xeb\x85\x4c\x00\x39\x1e\x59\xd1\x93\x4e\xa4\x03\x0b\xbd\x6d\xb7\x39\xab\x8f\x37\xb7\x09\xcb\xfe\x3b\xc9\x8c\xee\x5d\xb3\xba\xb6\x14\xe0\x60\x64\x09\xb5\x9b\xbc\x1a\xf6\x52\x62\x2d\x6f\xac\xf4\x9b\x9d\xa3\x16\x14\x25\xe9\x14\x32\x59\xfc\xa2\xf6\xf9\xe8\x13\xf8\x38\x7e\xb6\xcf\xa5\xfd\xc4\xd9\x25\xfe\x44\x3d\x95\xf7\xa2\x2f\xe5\x64\x7f\xe0\x4d\x76\xbd\xbe\x7c\x75\x47\x0e\xcc\xee\x72\x2d\xcb\x9b\xaf\x25\xf4\xb2\x73\xe7\xec\xe8\xf5\x64\xdd\x73\x60\xaf\x96\xaa\x33\xa9\xcf\xa4\xfa\x67\x5b\xb9\x7b\x4a\x6b\xff\x37\x1f\xb5\xf9\xa0\x26\xe9\xe7\xdc\x20\x08\x4f\x3e\x55\x24\x57\x65\xe9\x5d\x41\x39\xd3\xc2\xbd\xa4\x2e\x19\xbe\x17\x74\x18\xff\x29\x06\xfe\x06\x00\x00\xff\xff\xa0\x3b\x9f\x0b\x5c\x04\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 582, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x51\xb1\x4e\xc3\x30\x10\xdd\xf3\x15\xa7\xcc\x4d\x10\x1b\xf2\xca\xc0\xc6\xd0\x81\x05\x75\xb8\x38\x47\x7a\xd4\xb1\xad\x3b\xbb\x95\x88\xf2\xef\x28\x0e\x03\xa4\x45\x82\xc9\x92\xdf\xbd\x77\xef\xbd\xc3\xc8\x2f\x24\xca\xc1\x1b\x90\x0e\x6d\x8b\x39\x1d\x83\xf0\x07\x26\x0e\xbe\x3d\x3d\x68\xcb\xe1\xee\x7c\x5f\x9d\xd8\xf7\x06\x1e\x5d\xd6\x44\xb2\x0f\x8e\xaa\x91\x12\xf6\x98\xd0\x54\x00\x1e\x47\x32\xc0\x9a\x38\x34\xca\x3d\x59\x94\x86\xfd\x3b\xd9\x14\xa4\x99\x26\x68\xf7\xe4\x08\x95\xda\x67\x1c\x49\x23\x5a\x82\x79\xae\x00\x1c\x76\xe4\x74\x51\x00\xc0\x18\x0d\x6c\xc9\x05\x91\x95\x6c\x60\xab\xb4\x8a\xc0\xba\xf8\x06\x59\xb2\x23\x35\x55\x03\x18\xf9\x49\x42\x8e\x6a\xe0\xb5\xae\x0f\xd5\xa2\xa9\x21\x8b\xa5\xf2\x63\x83\x7f\xe3\x61\xc4\xa8\x3f\xb0\x62\x76\xc1\x6f\x07\x2b\xb3\x67\x92\xae\xcc\x0c\x94\xea\x1d\xd4\x8e\xb5\xbc\x17\x4c\xf6\x58\x1f\xb6\xbb\xb1\x1f\x59\x97\xba\x85\x06\xd6\x24\xdf\x6b\xbe\xf6\x35\xe6\x84\x89\xfd\x70\xa1\xee\x18\xc2\x69\xb5\x99\x57\xd2\xff\xac\xee\xe0\x17\xa4\x99\xa6\xeb\xe3\xcc\xf3\x1f\xb2\xed\xa0\x8e\x5f\x21\x3f\x03\x00\x00\xff\xff\x65\x02\xda\xb0\x46\x02\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 495, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x90\xb1\x52\xec\x30\x0c\x45\xfb\x7c\x85\x7e\xc0\x79\xf3\x3a\xc6\x1d\x50\xd0\x51\x84\x19\x7a\xc5\x16\x20\xd6\xb1\x3c\x92\xbd\x05\x3b\xfb\xef\x4c\x62\x86\x22\x0b\x4b\x2d\xdd\xa3\x7b\x84\x85\x9f\x49\x8d\x25\x7b\xd0\x19\xc3\x88\xad\xbe\x89\xf2\x07\x56\x96\x3c\x1e\x6e\x6c\x64\xf9\x77\xfc\x3f\x1c\x38\x47\x0f\xf7\xa9\x59\x25\x9d\x24\xd1\x1d\xe7\xc8\xf9\x75\x58\xa8\x62\xc4\x8a\x7e\x00\xc8\xb8\x90\x07\xb6\xca\xe2\x8c\x23\x05\x54\xc7\xf9\x9d\x42\x15\x75\x18\x17\xce\x4e\x25\x91\x9b\x7b\xd6\x9d\x4e\x30\x4e\x94\x08\x8d\xc6\x47\x5c\xc8\x0a\x06\x82\xf3\x79\x00\x48\x38\x53\xb2\x15\x0a\x80\xa5\x78\xd8\xf3\xb6\x89\xf6\xb0\x87\x3d\xa9\x43\xa0\x77\xf9\x21\xbc\xd6\x98\xe8\x65\xe5\x63\xe1\x07\x95\x56\xae\x3c\x60\x00\xb8\xf0\xff\x4b\xf7\x57\x37\x6b\xf3\xba\xb2\xb9\xb9\x2f\xee\x13\xe9\x91\x03\xdd\x86\x20\x2d\xd7\xad\xf9\x55\xb8\xf5\x7d\x87\xbb\xc0\x76\xe4\xf2\x1b\xdf\xb7\x3f\x03\x00\x00\xff\xff\x35\x3d\xca\x7c\xef\x01\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/configmap.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap.yaml", - modTime: time.Date(2019, 8, 9, 20, 17, 42, 178097450, time.UTC), - uncompressedSize: 3455, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x57\x4f\x6f\x1b\xb7\x13\xbd\xeb\x53\x0c\x6c\xe0\x97\x04\x88\x56\x36\x90\x1c\x7e\x7b\x33\x1c\xa3\x08\x90\xb8\x42\xa5\x24\x68\x2f\xc5\x88\x9c\xd5\xb2\xe6\x92\x1b\x72\x56\x8a\xea\xfa\xbb\x17\x43\xee\xae\x36\xfe\x93\xfa\x54\xd4\x17\x03\xdc\x37\x6f\x1e\xdf\x0c\x87\x14\xb6\xe6\x33\x85\x68\xbc\x2b\x61\x77\x3e\xbb\x31\x4e\x97\x70\xe9\x5d\x65\xb6\x1f\xb1\x9d\x35\xc4\xa8\x91\xb1\x9c\x01\x38\x6c\xa8\x04\xe3\xfe\x20\xc5\x3e\xcc\x1b\x8a\x75\xbf\x1a\x5b\x54\x54\xc2\xed\x2d\x14\xbf\x90\x25\x8c\x54\x5c\x0f\xcb\x70\x77\x37\x03\xb0\xb8\x21\x1b\x85\x05\x20\x64\xc8\x43\xbc\x40\x87\x64\xa7\xb0\xae\x4d\x04\x13\x81\x6b\x82\x17\x92\xec\x05\xa8\xa4\xeb\x35\x58\x8f\x9a\x34\x6c\x0e\xe9\x63\x34\x9a\x14\x86\x51\x59\x91\xc2\xdf\xb3\x04\x23\x68\x53\x55\x14\xc8\x71\x1f\xdd\x60\x0b\x55\xf0\x0d\xb4\xc6\x7a\x06\xf6\x80\xd6\xfa\x3d\xe0\xdc\xe2\x5c\x61\x60\x02\xe3\x22\xa3\xb5\xe0\xab\xc4\x3f\xf0\x02\x3a\x0d\x95\x4f\x68\x59\x6f\xbc\x26\x9b\x72\xf9\x0a\x02\xe9\x4e\x19\xb7\x85\x8d\xc5\xc8\xf3\x80\xda\x74\x51\x3e\xe4\xac\xa0\x6a\x74\x5b\x8a\x89\x03\x77\xde\x68\xc1\x6e\xad\xdf\xa0\x8d\xc5\x2c\xb1\x5c\x7b\x26\xe0\x1a\xf9\x98\xb1\x8b\x12\x02\xb1\xdb\x44\xe2\x41\x8f\x78\x31\xd0\x7a\x67\x0f\x30\x87\xca\x07\x50\x16\x83\x61\xb1\x24\xfb\x96\x3e\x6d\xc9\x51\x40\x96\x64\x5c\x53\x4a\x13\xe8\x6b\x67\x02\xe9\xd1\x4d\x53\x50\x91\x88\x35\x55\xd8\x59\xce\xd5\x87\x48\x8a\x8d\x77\x05\xac\x68\xf0\xc0\x78\x37\x67\x6a\x5a\x8b\x4c\x50\x2c\x83\xff\x76\x18\xc1\x2c\x49\x64\x2b\x33\x48\x0a\x4b\xf8\x6b\x3e\x4b\xf5\xfe\x8e\x36\xb7\x00\xc0\xe9\xf0\x1f\xd6\x97\x4b\x91\xe2\x32\x3f\xb0\x69\xc8\x77\x0c\x1b\xe2\x3d\x91\x83\x2b\xb7\xf3\x07\xf8\x5f\x12\x88\x6d\x6b\x8d\x42\xc1\xbd\x4e\x4e\x7e\x07\x8a\x45\xcf\xd9\xb3\xad\x33\x53\x09\xe7\x67\xf1\x7e\xd6\xd3\x53\xb8\x78\xf7\xf9\xe2\xfa\xf2\xea\x1d\xac\xae\xd6\xeb\xf7\xd7\x3f\xad\x64\xf5\xf8\x37\xea\xfb\x52\x53\x20\x88\xb5\xef\xac\x06\x92\x44\x2f\x62\xef\x5d\x17\x92\x16\xd8\x10\x44\xf6\xe2\xa9\x71\xb9\x65\x22\x1b\x3f\x6f\xc5\x20\x81\x32\x1a\x47\xe1\xa8\xae\x32\xdb\x25\x72\x5d\xc2\xc9\x82\x58\x2d\x12\x7a\x91\xd0\x27\x47\x5b\x6a\x82\x36\x52\xa7\x3d\x44\x0a\x3b\xa3\x28\x1d\x35\x69\x09\x9d\xea\x9d\xf6\x3c\x6c\xb9\x87\x5c\xda\x2e\x32\x85\x72\x2a\x60\xca\x18\x69\xac\x54\xee\x34\x4d\x4c\xa1\x31\x8e\xa0\xf6\x7b\xb0\xde\x6d\x01\x1d\x78\xab\x33\xfd\x18\xdb\x06\xaf\x28\xc6\xc1\x86\x0d\xc1\x0d\xb5\x0c\x68\xcd\x8e\x00\x2b\xa6\x90\xe2\x94\x42\x19\x25\x68\xe5\x90\x7b\xd4\x83\x3c\x1d\xd0\xb8\x77\xbd\x5d\x25\xbc\x79\x3b\x14\xa4\x45\x39\x9a\xab\xba\x63\xed\xf7\x13\xc4\x79\xf3\xb0\x66\xb0\xf4\x81\x61\x9f\xca\x91\xbb\xc2\x9a\xc8\xe4\x22\xbc\xf4\x0e\xac\x57\x68\xa1\xf6\x91\x5f\x25\x7b\x50\x37\xc6\x81\xf2\x4d\x83\x4e\x8f\x5c\xf0\xab\xef\x40\xa1\x03\xfa\x46\x0a\x8c\x63\xff\x74\xbd\xa4\x98\x08\xad\xd7\xd2\x6a\x23\x81\xea\x82\xcd\xcd\x98\x12\xb4\xa2\xe9\x65\x5a\xac\x99\xdb\x72\xb1\x48\x42\x44\x47\x79\xfe\xf6\xec\xec\x6c\xf1\x4a\x66\x8c\xdf\x08\xe7\x48\xa2\x0d\x6e\x9d\x8f\x6c\x44\x43\xe5\x43\x93\xfb\x28\xcd\xa5\x5c\x57\x39\x75\x23\x5c\x98\xa3\x50\x1f\x2a\x2e\xb6\x86\xeb\x6e\x53\x18\xbf\x48\xcd\xb8\xd0\x5e\xc5\x85\x6f\x29\x5b\x17\x17\x49\x57\x51\x73\x63\xc7\x78\xf1\xa3\xf1\x41\x4e\x38\xa3\xb1\xa3\xf9\xb2\xdf\x0b\x81\x8b\xb3\x25\x24\xbd\x0f\x5c\x5f\x51\x1a\x9d\xaa\x0b\x81\x9c\x3a\xa4\x89\x09\xb1\x25\x65\x2a\xa3\xc0\x75\xcd\x86\x82\x2c\x8a\x6f\xc1\x67\x6f\xfa\x55\x5f\x41\x1a\x12\xb0\xf7\xe1\x46\x50\x75\x20\xd4\xe3\x39\x3d\x85\xf7\x95\xf4\xa3\x44\x9f\xc1\xcb\x7e\x4e\xbc\x7a\x2d\x14\x0e\x22\xa3\x94\x7b\x1a\x99\x36\x42\xa8\x6a\xb8\x5c\x7e\xea\xd7\x16\xca\x07\x9a\x9c\xfc\x41\x67\xbe\x5e\x3e\xa3\xed\x28\x16\x79\xd0\x16\x69\xc3\xc5\x74\x33\xe9\x72\x9a\xee\xf7\xf6\x76\x0e\xa6\x02\xfa\xfa\x78\x2c\x07\x54\x14\xe0\xc4\x9a\x6d\xcd\x91\xa9\x3d\x39\x52\xc8\x37\xe3\xc6\x09\x07\x30\x82\x8e\x4b\xb2\xe9\x0b\xad\x83\x9c\xa5\x7e\x9c\x7f\x10\xd4\x8a\xa9\x85\x15\x32\x59\x6b\x98\xa0\xf5\xde\x4e\x62\x30\x47\x3c\xb6\xa5\x2c\xa8\x18\x53\x15\x3d\xf6\x28\xab\x4f\xaa\xd2\xf9\x5d\xfb\x1b\x72\x79\x86\xa4\x92\x35\x4d\xe7\x64\xa2\x12\xec\x0d\xd7\x49\xcf\xd3\x2a\x12\x45\x62\x78\x9e\x92\x23\xfe\xbe\x9a\x2f\x35\x71\x4d\x61\x22\x40\xda\xff\x09\x09\x93\xa1\x13\x49\x75\x81\x26\x54\x79\xe1\x59\x72\x32\xf4\xbe\x12\x99\xc3\xd0\x4f\x81\xca\x58\x1a\x8e\x7f\x7f\x63\x82\x12\x96\xd4\xa1\x5d\x24\x19\x3e\x0e\x76\x14\x4c\x75\x10\xc0\xfa\xc3\x6a\x42\x96\xa1\x79\xb0\x3f\x43\xcf\x11\x7e\xd4\x24\xdd\x47\x36\xd2\x73\x5a\xf0\x4f\xd3\xde\x18\xf7\xa3\xfe\xcb\x88\x1f\x36\xdf\x6f\x09\x02\xca\x5b\x9b\x5e\x1c\x23\xb6\x3f\x07\x8f\x6f\x22\x13\x3f\xde\x6a\xff\xdc\xab\x4f\x47\x8f\xdb\x7f\x9c\xb1\x0f\x7c\x84\x98\x2c\x35\xc4\xe1\x30\x7d\x75\x96\xff\x7f\x73\x7e\xfe\x3d\xb5\xd3\xf7\xac\xce\x0b\xb3\xa7\x37\xdc\x0f\xb5\xa5\x45\x47\x2b\x69\x20\xc3\x87\x2b\x87\x1b\x4b\xfa\xe1\xec\x38\x85\x8f\x1d\x77\x68\xa5\x2f\x00\x3b\x99\x62\x3c\xf4\xf6\xf0\x52\xe9\x1f\xab\xf9\x21\x98\xae\x9d\x71\x70\xb6\x92\x64\x32\xc9\xc6\xc4\x17\x1d\xd7\x4b\x6f\x8d\x0c\xb5\x8f\x9f\xd6\x9f\x2e\x3e\xfc\x7e\xec\xbc\x63\xf2\xa1\xb4\xf9\x86\xcc\xdc\xcb\xf4\xc8\x1d\x1e\x10\x26\x42\xe8\x9c\xf4\xf6\x70\x2f\x9b\xa8\xfc\x8e\xc2\xe1\x62\xf0\xb8\xbf\x09\x25\x6c\xe2\xf3\x2e\xff\x44\x80\xbb\xbb\xe2\xa9\x47\xbe\xdc\x76\xbd\xdf\x0f\xcb\xf8\x6f\x3a\x74\xfd\xf3\xf5\xd5\x7f\xd1\x9b\xb3\xd9\xbd\xb6\x9b\xcf\xe7\xb3\xbf\x03\x00\x00\xff\xff\x4f\x61\x6a\x80\x7f\x0d\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 4220, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x57\xdf\x6f\xdb\x36\x10\x7e\xf7\x5f\x41\xe8\xb1\x80\xa4\xa5\xcd\x3a\x4c\x40\x1e\x8c\x14\x2b\xba\xad\x5d\xd0\x2c\x1d\xf6\x14\x9c\xa9\xb3\xc5\xe6\x44\x6a\x24\xe5\x46\x70\xfc\xbf\x0f\x14\x29\x5b\xb2\xe4\x1f\xdd\xf3\xf4\x10\x18\xe4\x7d\xdf\x1d\xef\xc7\x47\x06\x2a\xf1\x05\xb5\x11\x4a\x66\x0c\xaa\xca\xa4\xeb\xab\xd9\x93\x90\x79\xc6\xde\x61\x45\xaa\x29\x51\xda\x59\x89\x16\x72\xb0\x90\xcd\x18\x93\x50\x62\xc6\x84\xb1\x42\xc5\x46\xe4\xc8\x41\xc7\x42\x7e\x45\x6e\x95\x0e\xdb\xa6\x02\x8e\x19\xdb\x6c\x58\xf2\x19\x09\xc1\x60\xf2\xa9\x5b\x66\xdb\xed\x8c\x31\x82\x05\x92\x71\x74\xcc\x79\xcd\xd8\x04\x13\x63\xda\x83\xc7\x4c\x9e\x84\xf9\x28\x26\xc0\xa6\x42\xee\xc8\x35\x56\x24\x38\x18\xcf\xf0\x05\xa8\x46\x93\x04\xeb\x0f\xc1\xf8\x2f\x5c\x14\x4a\x3d\x25\xc1\xf6\x56\xd5\xd2\x7a\x7e\x83\xd4\x5a\xf8\x30\x4b\xb0\xbc\xf8\xbd\x17\xf7\x71\xf7\x8c\x19\xab\xc1\xe2\xaa\xf1\x96\x5a\x11\x09\xb9\x7a\xa8\x72\xb0\xd8\x81\x4b\x78\xbe\xaf\xf5\x0a\x33\x76\xb5\x5f\x79\x90\xb0\x06\x41\xb0\x20\xcc\xd8\x0f\x33\xc6\x2c\x96\x15\xed\x50\xfd\x3a\xb8\x8f\x06\xe1\x0c\x53\x79\x70\xbe\x9d\xcd\xb1\xa0\x37\x9b\x98\x89\x25\xc3\x7f\xa6\x8a\x16\x85\x7a\x37\xc6\x62\x19\x85\xec\xbb\xaf\x40\x2d\x2c\xb8\x53\xfc\x29\x88\x50\xef\x36\x76\xb5\x6b\x91\xbb\x65\x5e\x80\xb6\x47\x63\x74\x31\xa0\xcc\xd9\xce\x01\x48\xa9\x2c\x58\xa1\x64\xef\x94\x01\x9c\xb4\xcc\x89\x50\xa9\x3f\x43\xc6\xa2\x25\x90\xc1\xa8\xe7\x0c\xf9\x93\xa9\xcb\x94\x2b\xb9\x14\xab\x78\xad\xa8\x2e\x43\x3b\xfd\x22\x08\x4d\xf2\x1e\x2d\x8b\x96\xee\x67\x20\x11\x4a\xc6\x5d\xce\x93\x06\x4a\x8a\xd8\x0b\x33\x05\xbc\xfe\xf1\xad\xa9\xcb\x2e\xb0\xae\xbf\xda\xdf\xa8\xd7\x82\xe3\x9c\x73\xd7\x39\x9f\x4e\x4c\x47\x1c\x4c\x63\xf0\xb6\x5d\xca\xbb\xc6\x5c\x91\x5a\x00\x25\x95\x16\x4a\x0b\xdb\xdc\x12\x18\xd3\xef\x76\xc6\x46\x5b\x19\x8b\x7a\x9d\x7d\x82\x20\x1a\xe7\x96\x2b\x69\x41\x48\xd4\xbd\xd4\xc6\x61\xbc\x47\xa1\x7f\xeb\x55\x48\x2c\x3b\xac\x61\x51\x1a\x9d\x1b\x2c\x51\xc2\xaa\x77\x86\xb6\x07\xcb\xb6\x65\xa2\xf3\x53\xd9\x81\x43\xfc\x64\xce\x33\x85\x2c\x14\xf5\x82\x6d\xb7\xe9\xa5\x2e\x5e\x58\x8e\x4b\xa8\xc9\xb2\x28\xd8\x3d\x76\x87\x8f\xd8\x76\x9b\x8d\x1d\x58\x58\x4d\x27\x76\x17\xd7\x5d\x4d\x74\xa7\x48\xf0\x66\x20\x40\x01\x7f\x60\xd2\x8f\x60\x4e\xdf\xa0\x31\xd1\x90\x12\xf4\xaa\x57\x29\x5f\xad\x38\xe6\x70\x8b\xda\xba\x6e\xbe\x49\xd1\xf2\xb4\x6d\xbd\x94\xa3\xb6\x26\xd5\x4a\xd9\xd8\xfd\x4c\x2a\x2c\x47\x48\x4b\xe6\x38\xd4\xfd\x8d\x79\x01\x42\x1e\xc3\xfe\x86\xcd\x34\xf4\x09\x9b\x49\x8c\x4f\xe7\x6d\x3b\x8a\x7d\x94\x5f\x0f\x33\x3a\x42\x95\x68\x8a\x31\xc6\x1b\xa7\x6e\x73\x84\xa8\x94\xb6\x37\x3f\x5f\x5f\xbf\x19\xed\x14\x08\x64\x8b\x5b\xa7\x0a\x1f\xa4\x45\xbd\x06\xba\x79\x6d\x4e\x99\xf9\x13\xfa\x85\x81\x9d\xff\xfe\x9b\x66\x76\x7e\xc2\x4c\xf9\xd3\x39\xdc\xcd\xd1\x5b\x75\xec\x78\x62\x16\xbe\x8f\x35\x3e\x71\x3d\x4f\x9d\x73\xd4\xe2\xde\x1d\xa9\xd5\xa3\xaa\x6d\x55\xdb\x47\xc2\x35\xd2\x4d\x8e\x8b\xba\x5f\xc6\x69\x91\x23\xb5\x9a\x9b\x5f\x8d\x92\xc7\x38\xc1\x3c\x7e\x35\x4a\xce\xce\x04\xb1\xd9\xa4\xaf\x0c\xf2\xba\xd5\x3b\x25\x2d\x3e\xdb\xec\x55\x3a\x3a\x84\x33\xd3\xb5\x9c\x9b\x07\x83\x3a\x63\x57\x6f\xde\xfc\x74\xca\xea\xbd\x56\x75\x35\x69\xe6\xaf\x90\x8f\x4e\xbe\x07\xc3\xd8\x09\xe7\xe0\xa6\x19\xd0\x97\x0e\x73\x07\xb6\xc8\xd8\xa8\x91\x07\x86\x1a\x21\xff\x43\x52\x93\x31\xab\x6b\x9c\xf2\xe1\xc6\xec\x12\xee\x91\xdd\x59\x6a\xdf\x1c\xf1\x44\x54\xd3\x2e\xbc\xfd\x65\x3e\x48\xac\x51\xa2\x31\x77\x5a\x2d\x70\x28\x64\xf8\xbc\xbf\x4f\xbb\x8f\xab\xb2\x04\x99\x1f\x2e\xbb\x58\xd3\xda\xe8\x94\x14\x07\x4a\x17\x42\xa6\x67\xe7\x25\x66\x95\xf3\x39\xb1\x1e\xc7\xed\x4e\x5c\x81\x2d\x8e\xce\xb9\x17\xaf\xa0\x17\xd7\xc3\x8c\x0a\x29\xac\x00\x7a\x87\x04\xcd\x3d\x72\x25\x73\x93\xb1\xeb\x81\x49\x85\x5a\xa8\x7c\x72\xd3\xe5\x4a\xfc\x9f\x93\x83\x9c\x18\x55\x6b\x8e\x26\x3b\x7c\x1f\x1d\x7d\xb8\x07\x80\x53\x86\xcd\x86\x59\xf5\x37\x94\x74\x39\xea\x85\x09\x99\xa3\xb4\xec\xea\xb5\x67\xd8\xbf\x33\xc6\x6c\x41\xbe\xc2\x4d\xfd\xf9\x24\x49\x5f\xab\xbc\x20\xec\x24\xe3\xb4\x5c\xf8\xd5\x8f\x50\xf5\x0b\xdd\x1f\x50\xa5\xe3\xde\xd5\x37\xad\x0b\x06\xb9\x46\x7b\x69\x12\x0d\xd2\xf2\x5e\xac\x24\x1e\xe8\xab\x67\x39\xf3\xaa\xa5\x65\x6c\x5a\xec\x91\x47\xda\x88\x24\xf9\x8e\x07\xf2\x20\x8d\xa7\x75\xea\x54\xde\xce\xdd\xac\xc2\x62\x79\xa0\xe8\x4f\xd8\x74\x15\x1a\x36\x6f\xab\x82\xa3\x8d\x00\x58\xb7\x79\x9e\x00\x0c\x36\x60\xb9\x74\x63\xd2\x74\x1e\xdb\x2a\x49\x4e\x75\x8e\x2c\x92\x2a\xc7\xce\x20\x62\xc9\xbe\xb9\xde\xee\x33\x31\x00\x54\x2a\x9f\x4b\x2b\xe6\x47\x31\x97\x35\x81\x55\x84\xda\xff\xb7\xb5\x77\xd4\x5b\xcc\x2e\x1f\xaf\x3e\xd5\x38\x94\x50\xd3\x7f\x03\x00\x00\xff\xff\x5c\xa4\x02\xa3\x7c\x10\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/mutatingwebhook.yaml": &vfsgen۰CompressedFileInfo{ - name: "mutatingwebhook.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 1989, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x55\xc1\x6e\xdb\x38\x10\xbd\xeb\x2b\x06\x42\x02\xec\x1e\xa4\xac\x77\xb7\x41\x21\xa0\x87\xc4\x71\x8b\xa0\x6d\x5a\x24\x45\x7a\x28\x7a\x18\x53\x63\x9b\x35\x4d\x2a\x1c\xca\x8d\xe1\xfa\xdf\x0b\x8a\xb2\x2c\xdb\x72\xe2\x16\xf5\xc9\x10\x67\xde\xbc\x79\xf3\x38\x5c\x2e\x13\x38\x11\x08\xd9\x2b\x18\x93\xee\x5f\x40\x2c\xd9\x49\x93\xb0\xcc\x49\xa0\x4d\xa4\xfe\x46\xc2\x19\x9b\x08\x4c\x96\x4b\x48\x6f\x49\x11\x32\xa5\x37\x38\x23\x2e\x50\x10\xac\x56\x31\xfc\x77\xfe\xe2\x1f\x58\xad\x22\x2c\xe4\x3d\x59\x96\x46\x67\x80\xf9\x4c\xb2\xff\x6b\x69\x2c\xd9\x59\x74\xd2\xe8\x74\xfa\x92\x53\x69\xce\xe6\xbd\x21\x39\xec\x45\x53\xa9\xf3\x0c\xde\x97\x0e\x9d\xd4\xe3\xcf\x34\x9c\x18\x33\xed\x1b\x3d\x92\xe3\x32\x64\x44\x33\x72\x98\xa3\xc3\x2c\x82\xfa\xe7\x39\xcb\x11\xd0\x43\x17\x9d\x35\xff\x05\x3b\x9a\xc5\xab\x55\x04\xa0\x71\x46\x19\x74\xf7\xd5\x02\x05\x52\xec\xdb\x79\x26\xe3\xa0\x0c\x5b\xfc\x48\xe7\xe1\x93\xc2\x21\x29\x0e\xe4\xb1\x28\x32\xe8\x64\x60\x03\x5e\x06\xbb\xe0\x1e\xe4\x7b\x90\xa5\x02\x49\x6a\x6e\xbb\x28\x69\x45\x36\x95\xa6\x82\x13\x4a\x92\x76\x41\xc7\xb5\x6e\x4c\x76\x2e\x05\x6d\x64\x3c\x4a\x16\xbd\x6e\x70\x9f\xda\x5e\xdf\x05\xba\x49\x06\xf1\x59\x00\x89\xa3\x7a\x4e\xe9\x3d\xaa\x92\x38\xad\x6b\x5c\xd7\x25\xea\x61\xa7\x4c\x6a\x74\x27\xc7\x9a\xf2\x0d\x96\xc0\xcb\x52\xe7\x2a\x14\x3d\x11\x98\xf6\xc9\x3a\xf8\x01\xc3\xf3\xff\x49\x0b\x1f\x57\x69\xdc\xcc\x6b\x3b\x27\x0e\xa5\x9b\x11\x00\xd8\x52\x11\xaf\x3b\x4f\xc0\x14\x14\xcc\xc5\x19\x7c\x81\xb8\x7f\x3b\xb8\xf8\x34\x88\xe1\x6b\xd3\x09\x16\xf2\x8d\x35\x65\xe1\xcf\xe3\x78\xeb\x7b\xed\xef\xea\x64\xde\x6b\x9d\x59\x62\x53\x5a\x41\xd5\x49\x61\x72\xae\xcf\x46\x28\x55\x69\xe9\xa3\x51\x52\x2c\x32\x78\x8d\x52\x45\x5b\xca\xde\x91\xaa\x04\xc9\x8e\x14\x8c\x34\x0e\x15\x35\x13\xe0\xcb\xc5\x15\x8d\xb0\x54\x6e\xa3\xc5\x0c\x9d\x98\x0c\x1e\x0b\x4b\x1c\xc8\x36\xad\x4f\x69\x91\x55\xa5\x1b\xde\x41\x0c\x63\x33\xb8\x31\xee\x5a\x37\xdf\xe7\x15\x89\x8d\x5d\x92\xe7\x0c\x50\x83\x07\x43\x05\x0f\xf8\xfb\xfb\xeb\x75\x72\xc9\xbe\xc3\xbc\x0b\x97\xf4\xbc\x03\xf1\xca\x10\xdf\x18\x37\x78\x94\xec\x3a\xac\x51\xc9\xf1\xae\x75\x11\xfd\xaf\xc1\x7b\xc2\xd9\x2d\x1b\x25\x49\xf2\x9b\x86\x0e\x2b\x56\xfb\x15\x7b\x60\xb9\xc6\xad\x40\x54\xce\x53\xe8\xf9\xf0\xc2\x4a\xed\x46\x10\x9f\x72\x7a\xca\x71\x05\x72\x68\x00\xed\xdc\x7f\xf7\x72\x53\x9e\x8b\xe3\xf3\xd9\xe7\xff\xa5\x24\xbb\x16\x9d\x06\xfc\xef\x76\x57\xfe\x5a\x86\xa7\x23\x74\x5c\xdd\x53\x5f\x47\x4b\xd5\xc2\xab\xde\x07\xff\xcc\xec\xbc\x11\xf3\xf5\x0b\x70\x47\xc2\x92\xdb\xda\xf5\x4f\xee\x60\xaf\x71\xc2\x55\xc9\xe8\xd8\x25\xf5\x07\x36\xb1\x5b\x14\x94\xc1\x87\x02\x1f\x4a\x8a\xd6\x44\xad\x31\x2e\xf1\x4a\xa4\x05\xcd\x0e\x6f\x2c\x00\x1f\x93\x88\x09\x4a\xdd\x8a\xf4\x79\x1d\xb1\x53\x5a\xec\x04\xbd\xa5\xc5\xfe\x06\x0c\xde\xfc\x19\x00\x00\xff\xff\x70\x46\x82\x19\xc5\x07\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 446, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x91\xc1\x4a\xc4\x30\x10\x86\xef\x7d\x8a\xff\x05\x1a\xe9\x35\x37\xc5\xa3\x88\x78\xd8\xfb\x34\x99\x5d\x47\xa7\x49\xe8\xa4\x0b\x52\xf6\xdd\x25\x5b\x05\xc1\x2a\x5e\x93\xf9\xbf\xf9\x86\x7f\x5d\x7b\xc8\x11\xee\x40\xba\xb0\xb9\x93\xe6\x91\xd4\x45\x3e\xd2\xa2\xf5\x29\xc7\x7b\xb1\x79\x29\x55\x72\xba\x5b\xe2\x89\xab\xe3\x44\xa3\x72\xc4\xe5\xd2\x51\x91\x03\xcf\x26\x39\x79\x94\xac\x12\xde\x6f\xce\xc3\xc8\x95\x86\xee\x4d\x52\xf4\xd8\xc9\x77\x13\x57\x8a\x54\xc9\x77\x40\xa2\x89\x3d\xc4\xaa\xe4\xde\x24\x72\xa0\xb9\x97\xf4\xca\xa1\xe6\xf9\xf3\xdb\x0a\x05\xf6\x58\x57\xb8\x67\x56\x26\x63\xf7\xf8\xf5\xdc\x1c\x00\xa5\x91\xd5\x1a\x0e\xa0\x52\x3c\x76\x48\xc0\xbc\x85\x7f\x92\x36\x08\x36\x8b\x9d\xb0\x15\x0e\x0d\x3e\x49\xba\x3d\x93\x68\xbb\xde\x63\xe8\x00\x63\xbd\x8e\x6c\xab\x27\xaa\xe1\xe5\xe1\x9b\xcb\x5f\x36\xff\xf0\xf9\xdd\xa8\x55\xc6\xe9\xda\xc0\x47\x00\x00\x00\xff\xff\x07\x77\x35\x96\xbe\x01\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 295, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\x8e\x41\x6a\xc4\x30\x0c\x45\xf7\x3e\xc5\xbf\x40\x02\xa5\xd9\x54\x87\x28\xa5\x85\xee\x55\x47\x14\xcd\x38\xb6\xb1\x4c\x36\x21\x77\x1f\x62\xcf\xac\x26\xcc\x4e\x3c\xf1\x9e\xc4\x59\x7f\xa5\x98\xa6\x48\x58\xdf\xdc\x55\xe3\x4c\xf8\x91\xb2\xaa\x17\xb7\x48\xe5\x99\x2b\x93\x03\x22\x2f\x42\x50\xab\x9a\x06\xd3\x59\x3c\x97\x41\xe3\x45\x7c\x4d\xe5\xbe\xb6\xcc\x5e\x08\xdb\x86\xf1\x5b\x82\xb0\xc9\xf8\xf9\xc0\xd8\x77\x07\x04\xfe\x93\x60\x47\x0e\xe0\x9c\x09\x27\x25\xa0\x74\xf9\xb9\xd4\x23\xe8\x5f\x9c\xc8\x96\xc5\x1f\xf1\x9c\x4a\x6d\x57\x86\x36\x12\xa6\xe9\xbd\x89\x95\xcb\xbf\xd4\xaf\xc6\x3e\x3a\x34\x09\x4d\xa6\x97\xe5\x5b\x00\x00\x00\xff\xff\xbd\x2f\xe6\x9d\x27\x01\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 373, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8f\x31\x6e\xc3\x30\x0c\x45\x77\x9f\x82\x17\x90\x80\xae\xda\x7a\x81\xa2\x68\x80\xec\x8c\xfc\x6b\xb0\xa5\x25\x43\x94\xb3\x08\xb9\x7b\x61\xcb\x5d\xdc\x0e\xd9\x84\x2f\xbe\x47\x7e\x5e\xe4\x8a\x62\x92\x53\xa0\xfb\xcb\xf0\x2d\x69\x0c\x74\x41\xb9\x4b\xc4\x6b\x8c\x79\x4d\x75\x68\xcd\x91\x7c\x92\xbf\xb2\xae\x30\x3f\x69\xbe\xb1\x7a\x99\x79\xc2\xfb\xaa\x7a\x41\x2c\xa8\x46\x8f\xc7\x70\xce\xc2\xce\x16\x4e\x13\x9e\xc1\x89\x1c\x25\x9e\x11\xa8\x35\xf2\x5b\xb2\xe1\x48\xe3\xe9\x39\xa3\xf2\xc8\x95\xc3\x40\xc7\xbc\x58\x95\xec\x4c\x46\x44\x2e\x4e\xd2\x17\x62\xcd\xc5\x59\x2f\xe2\xf8\x68\xd2\xc7\x6d\xe1\x78\xec\xf8\x80\x82\x0d\xfe\xed\x37\xee\x67\x28\xdf\xa0\xb6\xe9\x89\x78\x59\x02\x9d\xcd\xfb\x4f\xe9\xf0\x5f\x53\x97\x50\xbf\xea\x1f\xf8\x27\x00\x00\xff\xff\xe3\xe8\x97\xbc\x75\x01\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/templates/sidecar-injector-configmap.yaml": &vfsgen۰CompressedFileInfo{ - name: "sidecar-injector-configmap.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 648, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x51\xcb\x4e\xeb\x30\x10\xdd\xe7\x2b\x8e\xba\x8f\xaf\xae\x84\x58\x78\x8b\x04\x02\x09\x16\x54\x2a\x62\x39\x4d\xa6\xc5\xd4\xf1\x58\xb1\x5b\x88\xd2\xfe\x3b\x72\xdc\x84\x57\x56\xec\xac\x99\xf3\x9a\xe3\xbe\x2f\x61\x36\x70\x12\xa1\x56\x64\xf7\x1c\xd4\xd6\xca\x9a\xac\x92\xc6\xc4\xa5\xa9\xb9\xa2\xf6\xd6\xbd\x72\x15\xa5\xbd\x12\xb7\x31\xdb\x7b\xf2\x38\x9d\x0a\xf2\x66\xc5\x6d\x30\xe2\x34\x0e\xff\x8b\x9d\x71\xb5\xc6\x84\x28\x1a\x8e\x54\x53\x24\x5d\x00\x8e\x1a\xd6\x30\x21\x1a\x29\x43\x96\x2c\xcd\x59\xf3\xbc\x0e\x9e\x2a\xd6\xe8\x7b\xa8\x47\xb6\x4c\x81\xd5\xc3\x38\x4e\x6e\x80\xa5\x35\xdb\x90\xe4\x80\x36\x43\x7e\xe3\x33\x14\x20\xef\x35\x66\xac\x90\x53\xcc\xec\xc6\xac\x87\xa1\x04\x8d\x63\x39\xc0\x93\x41\xee\x05\x47\x44\xb9\x0b\xe2\x92\x47\x01\x54\xc3\xa9\x13\xd0\x8b\x35\x55\xa7\xbf\x10\xc6\x22\x7d\x2b\xef\x9d\xa2\x7d\x94\xdc\xe3\x94\xd1\xbe\x51\x17\xf2\x6c\xc9\x76\x88\xa1\x8b\xbe\x47\x94\x67\x6a\xec\x24\x13\xbe\x7f\xc2\x13\xaf\x5f\x44\x76\x6a\x8e\x8e\x23\x8c\xab\xd9\x45\x5c\x8e\x2e\x8e\x0f\xdc\xfe\xd9\x64\x86\xfd\xc3\x23\xdd\x7b\x6d\x2c\x07\x75\xc3\x11\x8b\x4d\x7a\xfe\xcb\xad\x1a\x71\x65\xe4\xc6\x5b\x8a\xac\x3a\x6a\xec\xe2\x93\x7b\x91\xb9\x25\xd8\xd5\xe9\xf9\x11\x00\x00\xff\xff\xcc\x89\x34\x31\x88\x02\x00\x00"), - }, - "/charts/istio-control/istio-autoinject/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 2436, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x55\xcf\x8e\x1b\xb7\x0f\xbe\xfb\x29\x08\xe7\xb0\x17\xff\x41\x7e\x47\xdf\xf6\x97\xb4\xa8\xd1\x34\x09\xe0\x05\x8a\xa2\x28\x02\x59\xe2\xcc\xa8\x96\xc9\x29\xc5\xb1\x33\x28\x0a\xe4\x41\x9a\x97\xcb\x93\x14\x94\xc6\xde\xdd\xec\x36\x40\x6f\x33\x12\x49\x91\xdf\xf7\x91\xcc\x31\xa0\x77\xb2\xa5\xdf\xd1\x2b\xcb\xcf\xb8\xef\x98\x0f\x9b\x19\xc0\x0b\x98\xee\x96\x71\xba\x84\x73\xbd\x05\xcf\xd4\xc4\x76\x10\xa7\x91\x69\x55\x6c\xb7\x0d\x04\x3e\xd3\x02\x08\xcf\xd0\x73\xc8\x70\x8e\x29\x41\xe3\x62\x02\x65\xc8\xea\x44\x81\x05\x04\xeb\x67\xc3\x02\x0e\x72\xc7\xa2\xa0\xf1\x88\x0b\xd8\x0f\x0a\xda\xe1\x58\x1c\x4b\x4c\x41\x95\xd1\xc2\x0b\xf6\x29\x7a\xf7\x8a\x07\xd2\x0d\xbc\x9c\xcd\x00\xe2\xd1\xb5\xb8\xb9\xa4\xf8\xe1\x92\xe2\xac\x38\xde\x75\x31\x03\x92\xdb\x27\xcc\x50\xaf\x22\x13\x70\x73\xb1\x87\x48\xe0\x52\x02\x72\x47\xcc\xbd\xf3\x98\x17\xc5\xf1\x1c\xb5\xb3\x24\x00\x3f\x7a\xec\x2f\x4e\xf7\x56\xd5\x60\x1e\xb3\x46\x5e\x5e\x03\x6f\x42\xcc\xf6\x56\x98\x83\x23\x62\x2d\xb0\x94\x78\xef\x28\x8d\xc0\x84\x80\x74\x8a\xc2\x74\x44\x52\x2b\x7a\x48\x01\x3a\x77\x42\xd0\xfb\x4c\x83\x55\x5a\x3f\xdf\x5e\x1f\xfc\xff\xf8\x1a\x1b\x37\x24\xdd\x40\xe3\x52\xc6\xd9\x05\x6c\x95\x01\x17\x57\x42\x58\xa0\xe4\xe4\x35\xc1\x3d\x5b\x46\x80\xe0\x59\xa2\x22\xbc\xe7\xb0\xeb\xd1\x17\xdc\x53\x3c\x21\x61\xce\x25\x56\x87\x2e\x69\x07\xbe\x43\x7f\x30\xa6\x04\x43\x14\xf4\x0a\x82\x7f\x0c\x98\xb5\xb0\x57\x51\x5b\x55\x60\x8f\xee\x80\xf9\x1a\x64\xf2\x3c\xb3\x1c\x4a\x3c\x3c\x21\xc1\xb9\x43\x82\xe3\xdd\x9b\x1d\x3c\x2e\x6f\xca\xe6\xb6\xef\x7f\xb8\xbb\x7b\xff\x5e\x78\x8f\xcf\x17\xe6\x20\x63\x6a\x96\x39\xb6\x84\x01\x5e\xdd\xd6\x62\xbc\xa0\x53\x0c\xc6\x1e\x4b\x40\xb1\xdc\x62\xce\x03\x82\x03\x8f\xa2\xb1\x89\xde\xa9\xa1\xea\x74\xe2\x33\x25\xd8\x23\x0c\x19\x83\x19\xbb\x41\x3b\x24\xbd\x58\x61\x49\x3b\xb1\x0b\xa6\xcb\x9e\x29\xc4\x7d\xc2\x82\x51\xe7\x28\xa4\x48\x6d\x09\x63\x96\xff\xd6\x0c\x56\x96\xe5\xba\x2b\xa9\x3e\xa8\x86\x38\xe0\x0e\x53\x31\xde\xc0\x9f\x7f\xcd\x00\x94\x13\xd6\xa6\xc9\x1b\xf8\xf5\xb7\x5a\xb3\xd1\x12\x9b\xb1\x3c\xd2\x73\x00\x47\x1a\x97\xae\x69\x22\x45\x1d\x4b\x29\x26\x55\x3e\x67\x18\x79\xb0\x22\x3c\x53\x56\x71\xd1\x60\x8e\xbe\x2b\x0f\x55\x2e\x47\x1e\xa4\xc4\x30\xd4\x53\x6c\x4b\x35\xca\x86\x40\xf6\x1d\x86\x21\x61\x80\xbd\x33\x30\x98\x20\xb9\x3d\xa6\x6c\x5f\xa5\x5f\xeb\x4b\x82\x25\x92\x4b\x82\x2e\x8c\x20\x03\x51\xa4\xd6\x8c\x2c\x3f\x7b\x0a\xc4\x69\x67\xd8\x77\x8e\x9e\x0b\x56\xd2\x59\x4d\x7d\x88\x82\x16\x13\xfc\x20\x82\xa4\x69\x04\x3d\x33\xe8\xd8\x63\xb6\xce\x7a\x54\x6b\x1d\x3a\x00\x30\x37\xe9\x45\xc1\xf0\x7a\x90\x48\xed\xae\xa6\x1e\xa9\xdd\xb6\xc4\xd7\xe3\xef\x3e\xa2\x1f\x0c\xcb\xf9\xd5\xaf\x17\x6c\x50\xfe\xa3\x63\x05\x31\x20\xb1\x22\x7c\xf9\xf4\x77\xe7\x24\x7c\xf9\xf4\x19\x4e\x79\x65\xbf\x99\x1b\xb5\xdf\x29\x27\xeb\xe0\xbc\x28\x54\x78\x47\x10\xb0\x89\x84\x15\xf8\x93\x4b\xc3\x44\x44\x24\x98\xf7\x1c\x6e\x49\xe3\xed\x54\xdd\x1b\x03\xe8\xa2\x07\x1b\x14\xe1\x89\xc9\x1d\xca\xf1\xb1\x59\x09\xe6\x59\x2e\xea\xa4\x36\x8d\x15\xda\xef\x59\x00\x3f\xba\x63\x9f\xb0\xe2\xf6\xad\xe7\xaa\xc5\x12\x0e\x38\x6e\x20\xa3\x1f\x24\xea\x38\xa1\xc6\xbd\x49\xd2\x24\xba\xa5\xe9\xa8\x16\xb2\x81\xdd\xcb\xc5\xee\x7f\xd3\x99\x72\xcf\x89\xdb\xf1\x47\x0b\x31\x3f\x0c\x7b\x14\x42\xc5\xbc\x8a\xbc\xee\x38\xab\xcd\xc8\xf9\xfd\xf0\x7d\x2a\x64\x19\x12\x42\x76\xe3\x24\xb4\x8b\xda\x27\x58\x33\x10\xeb\xd7\x52\x2d\xe1\x98\xac\x6f\xab\xf2\x62\x53\x9d\xeb\x4f\x7e\xa2\x52\x57\x42\x96\x19\x5d\xf4\x68\x33\xd6\xce\x0f\x58\xab\x35\x3a\xa7\xea\x8d\x52\xe3\xa0\xd4\x6a\x17\xbb\x97\x5f\x3e\x7d\x36\x6c\xbf\x09\xa4\x75\xed\x13\x93\x27\xbc\xdd\x37\xf7\x2f\x93\x4e\x86\x5c\xe7\x4d\x13\x31\x05\xf0\x2e\x59\x27\xba\x74\x76\x63\xae\xab\xf7\xe2\x5a\x92\x22\x3c\xa1\x7c\x75\x5e\x65\x5a\x06\x5a\xf5\x9b\x06\xfd\xc3\xe1\x04\x2c\x53\xf7\x16\x83\x7c\x88\x7d\xb9\x7e\xb0\x02\x1f\x36\xfb\xd1\xa9\xef\xea\x67\x85\x2b\x4f\x8f\x2d\x40\xb0\x75\x12\x92\xcd\x77\x6e\x4a\x8c\x36\xf1\xde\x25\xe8\x39\x45\x3f\x69\x70\x87\x08\x9d\x6a\x9f\x37\xeb\x75\x59\x3f\x26\x86\xc0\x3e\xaf\x33\xea\xd0\xaf\xef\x55\xb2\x76\x21\x44\x4b\xc0\xa5\x65\xbd\x7b\x3c\x4e\x23\xd3\xfa\xc5\x91\x05\x97\x9e\x49\x85\xd3\xd2\x1c\xa8\x5d\x5e\xf7\x70\x2e\x23\xf5\x29\x2e\x13\x23\xcf\x41\x59\x59\x28\x4b\x25\xa3\x2e\x80\x18\x62\xaf\xb6\x8b\xc0\x68\xbb\x2e\x07\x17\x02\x86\x15\x6c\x15\x5c\xce\xc3\x11\x33\xbc\x7a\xbb\x35\x79\x45\xca\x5a\x98\x5a\xcd\x5e\xc0\xdd\xbb\xd7\xef\x36\x20\x68\x42\x37\xa1\xde\xd4\xb5\xb6\xad\x11\xf3\x8d\xed\x60\x17\x02\xdc\x44\x52\x94\x29\xeb\x9f\x38\xe0\xc6\xc2\xdd\xcc\x0a\x40\x1f\x3c\xc5\xcd\x75\xcd\x5f\xb6\xc5\x3f\x01\x00\x00\xff\xff\xcb\x59\xdb\xdd\x84\x09\x00\x00"), - }, - "/charts/istio-control/istio-config": &vfsgen۰DirInfo{ - name: "istio-config", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - }, - "/charts/istio-control/istio-config/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 278, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8e\x41\x4e\xc5\x20\x10\x40\xf7\x73\x0a\xf2\xf7\x05\xe9\xc6\x7c\x12\x5d\x7b\x82\xbf\x47\x98\xd2\x89\x94\x21\x30\xad\xf6\xf6\xa6\xad\x9a\xb8\x21\xe4\xbd\x37\x99\xf1\x95\x1e\xd8\x3a\x71\x71\x6a\xb3\x50\xfc\x82\x4e\x51\x17\xe2\x21\x70\x99\x28\xc1\xf6\xab\xad\xb6\xfa\x09\x7c\xad\x8f\xff\x44\x28\x67\x6c\x7f\xf0\xf6\xfa\x32\xea\x67\x3d\xde\x20\x62\x0f\x8d\xaa\x9c\xf8\x0d\xf3\xa2\xc2\xec\x9b\xa8\x89\x9b\x4a\x3e\x67\xdc\x55\xc4\x9a\x79\x5f\xb0\x08\x7c\xe0\xfe\xc9\x2d\x76\x07\x4a\x0d\xd7\x09\xe7\xef\x2a\xa1\xf3\xda\x02\xfe\xd8\x59\xa4\x3a\x63\x12\xc9\xbc\xbe\xeb\xc0\x8b\x39\xfb\xeb\x05\x2c\x89\x0a\x3a\x95\x58\x6a\x06\x0a\xc7\xfa\x63\xa2\x3b\x73\x15\x9a\xd8\x4c\x7e\x3b\x4c\x37\xbe\xc4\xc6\x14\x07\x7b\x1f\xbf\xec\x7d\xd4\xb5\x24\xf8\x0e\x00\x00\xff\xff\x79\x40\x8a\x2f\x16\x01\x00\x00"), - }, - "/charts/istio-control/istio-config/OWNERS": &vfsgen۰FileInfo{ - name: "OWNERS", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - content: []byte("\x61\x70\x70\x72\x6f\x76\x65\x72\x73\x3a\x0a\x20\x20\x2d\x20\x63\x6d\x6c\x75\x63\x69\x61\x6e\x6f\x0a\x20\x20\x2d\x20\x67\x65\x65\x6b\x6e\x6f\x69\x64\x0a\x20\x20\x2d\x20\x6f\x7a\x65\x76\x72\x65\x6e\x0a\x20\x20\x2d\x20\x61\x79\x6a\x0a"), - }, - "/charts/istio-control/istio-config/README.md": &vfsgen۰CompressedFileInfo{ - name: "README.md", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 1007, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\x92\x41\x6b\x23\x39\x10\x85\xef\xfa\x15\x0f\x72\x8d\x7b\xaf\x4b\x6e\x59\x6f\x58\xc2\x92\x10\xc8\x30\x30\xa7\x49\x59\x2a\xbb\x8b\x51\xab\x1a\x95\x64\x4f\xff\xfb\x41\x2d\x27\x76\x66\x8c\xe9\x6e\x24\xbd\xa7\x8f\x57\xef\x06\x8f\x56\x44\xb1\xd5\xb4\x97\x83\x73\x5f\x46\x31\x78\x9d\x66\x4d\x9c\x0a\x46\x4a\x21\xb2\xa1\x8c\x0c\xbf\x1e\xa9\x99\x8a\x68\xba\x05\xff\x9c\xd5\x24\x1d\x40\x09\x4f\xdb\x17\x18\xe7\x23\xe7\xa1\x59\x30\x02\xef\xa9\xc6\x02\x99\xe6\xc8\x13\xa7\xb2\x8a\x20\x86\xff\x28\x46\x5e\x6e\x51\x57\x6d\xf3\xfd\xff\xef\x57\xd0\x2c\x5d\x8f\xbd\x66\x58\xd1\x4c\x07\xc6\x06\x5a\x46\xce\xab\xfd\x9c\xf5\x28\x81\xb3\x61\xa2\x05\xbb\x0b\x0e\x87\xc1\xb9\xc7\xd2\xbc\x33\x7b\x9d\x26\x4e\x81\x03\x8a\x22\xd7\x04\x4d\x71\x81\x26\x6e\xfa\x50\xfd\x4a\xd1\x95\x67\x60\x6c\x20\x05\x99\x0f\x62\xa5\xb9\x13\x8e\x14\x25\x74\xde\x13\xef\x46\xd5\x1f\x38\x8d\xe2\x47\x9c\x24\x46\xd0\x3c\xc7\xc5\x15\x05\xc5\x78\xce\xae\xfb\xd9\x80\x4e\x31\xab\x99\xec\x22\xbf\x23\x10\x8c\xbd\xa6\x00\x2b\x74\x90\x74\xf8\xcb\x53\xa2\xbc\xfc\x86\x21\xed\x60\x90\xfd\x9e\x73\x0b\x3e\xd1\xc4\x36\x93\xe7\xc1\xb9\x1b\x3c\x26\x2b\x14\xe3\x0a\xe5\x5c\x8f\x10\x99\xa3\xb0\x41\x13\xfe\x7d\x7e\x85\xe7\x5c\x64\x2f\x9e\x0a\xdb\x80\x7f\x78\xaf\x99\x21\x5d\xd7\x92\x96\xd2\xaf\xf0\xd5\x8a\x4e\x17\x7f\x2c\x5a\x61\xa3\xd6\x18\x50\xe7\x40\x85\xb1\x95\x42\x81\x23\x34\xc3\xf9\xcc\x6d\xe9\x43\x77\x75\xcd\x4a\xf6\xf5\x23\x2c\xe7\xee\xe1\x63\x6d\x29\xbe\xfb\x8d\x74\x6c\xd2\x36\xe9\xc8\x38\x74\xec\x93\x94\xf1\x3a\x63\x4e\xb4\x8b\x1c\xb0\x41\xb5\x4a\x31\x2e\x6b\x29\xda\xb8\xc0\xe9\x28\x59\x53\xeb\xcf\xe0\xfe\x0c\xb7\x2b\xaf\xbd\xda\x7f\x6d\xcc\x95\xd2\x40\x86\x13\xc7\x88\x0d\x76\xb5\x80\xc9\x8f\xe7\x16\xf6\x89\x06\x85\x14\x83\x9e\x92\xbb\x58\xdd\x82\x52\x68\xec\x7d\x66\x38\x72\xb6\x76\x43\x2b\x9f\x4c\x33\xf9\x72\xdd\xa8\x8b\x6e\x70\xee\xed\xed\x6d\x47\x36\xba\xf5\x6b\x7d\x2c\x34\x4d\xd1\x39\x63\x5f\xb3\x94\xe5\xce\x01\xc0\x30\x0c\xeb\x3b\x24\xdb\x72\x2e\xd6\x57\xaf\x77\xda\x4f\x5a\xc3\x36\x3d\xba\x4d\xab\x8a\x78\xde\x90\xf7\x5a\x53\x19\x9e\xbe\x7d\x7f\xbe\x7f\x7a\x78\x7d\xb9\xdf\x3e\xdc\x7d\x3a\xfa\x69\x6b\xb0\xa3\x3f\xd3\xfc\x0a\x00\x00\xff\xff\x3b\x9e\xd4\xd2\xef\x03\x00\x00"), - }, - "/charts/istio-control/istio-config/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - }, - "/charts/istio-control/istio-config/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 3018, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\x9b\x30\x10\xbd\xe7\x57\x8c\xa2\x1c\xda\x55\x80\xf4\x8a\xd4\x43\xa4\xee\x61\xd5\xaa\xaa\xba\x55\xef\x0e\x0c\xc4\x8a\x63\x53\x63\xd2\x44\x34\xff\xbd\xb2\x21\xc4\x10\x3e\x9c\xdd\xd5\xde\xd0\xf0\x3c\x6f\xfc\xe6\xcd\xb8\x2c\x83\x07\x20\x49\x42\x39\x55\x27\xf0\x60\xab\x54\x96\x87\x41\xb0\x2b\x36\x28\x39\x2a\xcc\x7d\x2a\x82\x58\x44\x79\x10\x09\x1e\x61\xa6\xcc\x47\x42\xd3\x42\x12\x45\x05\x0f\x48\x9e\xd3\x94\x7b\x99\x88\x3d\x2e\x62\x0c\xe0\x21\x38\x9f\x67\xb3\xb2\xf4\x20\xc6\x84\x72\x84\xb9\x8e\x5f\x38\xe6\x70\x3e\xcf\x00\x74\x68\x5d\x87\xc2\x19\x00\x80\xc4\x3f\x05\x95\x18\x7f\x29\x24\xe5\xe9\x73\xb4\xc5\xb8\x60\x94\xa7\x4f\x29\x17\x4d\xf8\xf1\x88\x51\xa1\x69\xab\x33\x9a\x84\xf2\x88\x15\x71\xcd\x72\x49\xf9\x73\x20\xd9\x1c\xfc\x8a\x1f\x20\x93\x98\xa0\x7c\x2b\xc2\x1f\x43\xd9\x6a\x46\x7d\x10\x79\x0c\x7d\xd2\x4c\x17\x5d\x97\x5c\xc9\xf6\x8c\x0c\x23\x25\xe4\x2f\x94\xfb\x3c\xac\x7f\x78\xb0\x27\x2a\xda\x3e\x1e\x33\x89\x79\x4e\x05\x6f\xfe\xe8\x7f\x3b\x3c\x85\xb0\x41\x45\xfc\x76\x5f\x89\x8c\xb6\x0d\x0c\x40\x64\x28\x89\x12\x32\x84\x27\x6e\x85\x0f\x84\x15\x68\xe5\xd3\xf5\x4b\xc2\x53\x84\xc5\x0e\x4f\x4b\x58\x1c\x08\x83\xf0\x33\xf8\xbf\x0d\xd0\x4f\x99\xd8\x10\xe6\xeb\xe4\xd7\xca\x1b\xf5\x12\x48\x15\x7c\x30\x67\xfe\x01\xe5\xea\x23\xac\xda\x28\x0f\xca\xd2\x64\xbe\x3d\x5c\x2b\x38\x11\x5a\xd8\x2a\xe9\xc2\x62\x4c\x48\xc1\x54\xb7\xc0\x3a\xfc\xdd\x46\x37\x10\xc2\x18\x9e\xfc\x56\x26\xaf\xc3\xd3\xa7\x41\x9b\xdb\x3a\x50\x37\xa1\xf7\x6a\x8e\xba\x5f\xa4\xd1\x54\xfd\x2a\xb8\xb8\x6c\xc4\xa9\x26\xe9\x0b\xba\x3b\xd5\x57\x0f\xfe\x22\x4d\xb7\x2a\x6c\xca\x37\x88\xeb\x25\xaa\x59\x44\x1e\xe1\xf5\xb6\xef\xe7\xe7\x1e\xcb\xb5\x9c\xe5\x20\x70\x26\xe2\x35\x57\x74\x6d\x2f\xb9\x5a\x95\x5b\x53\x75\xc0\xdf\xc8\x06\xd9\x90\x01\x3b\x58\x3d\xf3\x2d\xbc\x29\xb0\x03\x0a\xed\xa6\xdc\xc3\x5d\x5f\xfe\xd5\x9b\xb8\x43\xe2\xb0\x8c\x3b\x93\xec\x54\xfb\x8d\x16\x6f\xb7\xd9\x3b\x4c\x53\xcb\x7d\x78\x0a\x1d\xfd\x32\xb9\xf9\xad\xa1\xa4\x3c\xc6\xe3\x12\x16\x54\xe1\xbe\x35\x97\xee\x0d\xf6\x80\xd9\xe1\x3b\x66\x4e\x8f\x89\x26\xf6\x47\x76\x58\x83\xb9\x84\x7a\x1f\x81\x0a\x52\x8d\x62\x1b\x70\x3b\x9e\x66\xa9\x1f\x08\xcb\xf5\x7d\xf3\x8c\x51\x05\xf3\xe5\x7c\x24\x85\x2d\x97\xde\x60\x66\x33\x9b\x04\x3d\x2f\xcd\x61\xf2\x9d\xe9\x09\x2a\x91\x09\x26\xd2\xd3\xd7\x96\x2a\x56\x74\xdc\x17\x63\x66\x98\x5a\xd0\xaf\x70\xc3\xe0\xc8\x78\x66\x87\x58\xa8\xab\xfc\x03\x56\x19\x33\x8b\x83\x5d\xee\x30\x8c\x83\x65\xfa\x4c\xf3\x02\xdb\x38\x1b\x67\xc0\x3a\x03\xe6\xe9\x0d\x3b\x1b\x08\x9a\xc7\xf3\xd3\x6a\x35\x62\xa9\xff\x01\x00\x00\xff\xff\xcc\x3b\x37\x46\xca\x0b\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/_helpers.tpl": &vfsgen۰CompressedFileInfo{ - name: "_helpers.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 1138, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x93\x41\x6f\x13\x31\x10\x85\xef\xf9\x15\xa3\x55\x2b\x41\xa5\x38\x12\x88\x1e\x22\xf5\x42\xe1\x80\x90\x0a\xa2\x08\xce\x93\xdd\x71\x76\x84\xed\x5d\x76\xc6\xa1\xab\xb6\xff\x1d\xd9\x4e\xb3\x49\x51\x44\x73\x1b\xed\x3e\xbf\x79\xfe\x66\x7c\x7f\xbf\xb8\x80\x0d\xfb\x25\x08\x29\x58\x76\xa4\x63\x4f\x57\x3e\x8a\x62\xdd\xd2\x12\x2e\x16\x8f\x8f\xb3\xa4\x9a\x7d\xbc\xeb\x31\x34\xa0\x2d\x41\x40\x4f\xd0\xd9\x5c\xd7\x2d\x0e\x6a\x66\x5b\xdd\x1c\x1a\xb2\x1c\x08\xaa\x9e\x5d\xa7\x26\x29\x2b\x98\x4f\xff\x30\x3a\x05\x73\x9d\x0f\xdd\x24\x1b\xf3\x03\x5d\x24\x31\x6b\x74\x8e\xc6\x7c\xe0\xcb\x86\x86\x81\x1b\x82\x07\xd0\x21\x86\x1a\x2e\xdf\xe6\x92\xfd\x6d\xb4\x96\xef\xa0\x9a\x4f\x9e\x14\x9a\x5c\x97\x90\xd7\x03\xa1\x12\xe0\xae\x95\x8d\xce\x8d\xf0\x3b\xa2\x63\xcb\xd4\x00\xf6\x7d\x8e\x6f\x66\x3f\xa9\xb8\x67\xbd\xa6\x1e\xe9\x2a\x02\x2b\xaa\x31\x0a\x81\x74\x9e\xe0\x73\x5c\xd1\x10\x48\x49\xca\xa5\x2d\x93\x6b\x04\x70\x20\x70\xec\x59\xa9\x01\xed\x40\x5b\x16\x78\xb5\x1a\x33\x90\x0f\x37\xb7\x49\xcb\x61\x0d\xd2\x53\xfd\xda\xcc\x3e\x59\x18\xc8\x11\xca\x96\x5c\xdd\x05\x45\x0e\x52\xd8\x95\x6f\xac\xf0\x87\x9d\x83\x15\x41\x94\x94\x53\x00\x73\xf8\x6d\xda\x23\x7c\x93\xe2\x90\x31\xdb\xe7\x48\x9f\x34\x3b\xac\x4f\xd2\xff\xe9\x5e\x84\xdf\xc9\x64\x78\x96\xaf\xb2\xbc\x3a\x79\xd0\x7b\xe1\x77\x70\x8a\x99\xf9\x56\xc8\x15\x8f\x5d\xf2\x83\xaf\x27\xe7\xec\x07\x0e\x6a\xa1\x3a\x97\xf9\xb9\x54\xcf\xdc\x4a\xdf\x53\x56\xef\x58\x7d\xb0\x92\x7b\xb3\x4e\xcf\x68\x43\x83\x70\x17\xd2\x9c\xf3\xbc\xb7\xcb\x53\x54\x0e\x57\xe4\x8e\xce\x3c\x6b\xa6\x14\xfb\x8c\x4f\x7c\x30\x93\x33\x8b\x72\x67\xea\x2e\x58\x5e\x7b\xec\x4d\xdd\x52\xfd\x4b\xa2\xaf\x0e\x99\xc1\x99\xf9\x4e\xbe\x77\xa8\x64\xde\xa3\xd0\x57\xd4\x16\xaa\xc5\x74\x6e\x44\xef\x2a\x78\x00\x69\xf1\xcd\xbb\x4b\x89\xfe\x9f\xb6\x7f\x03\x00\x00\xff\xff\x48\x92\x1a\xc2\x72\x04\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 1108, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x92\x3f\x6f\xdb\x30\x10\xc5\x77\x7d\x8a\x83\xba\x05\x91\x82\x6e\x85\xd6\x14\xe8\xd6\xc1\x43\x97\x22\xc3\x59\x7c\x91\x0f\xa6\x48\xe2\x8e\xb2\xf3\x07\xf9\xee\x05\x29\x14\x70\xac\xa9\xa8\x27\x11\xd0\xbb\xf7\x7b\xf7\x87\x93\xfc\x82\x9a\xc4\x30\x90\xee\x79\xec\x79\xc9\x87\xa8\xf2\xc6\x59\x62\xe8\x8f\xdf\xac\x97\xf8\x70\xfa\xda\x1c\x25\xb8\x81\x1e\xfd\x62\x19\xba\x8b\x1e\xcd\x8c\xcc\x8e\x33\x0f\x0d\x51\xe0\x19\x03\x89\x65\x89\xdd\xc4\xde\xe3\xb5\x7b\x7f\xa7\x7e\x07\x0f\x36\xf4\x3f\x79\x86\x25\x1e\x41\x1f\x1f\x0d\x91\xe7\x3d\xbc\x95\x3a\x22\x5d\x25\x03\x5d\xeb\x8b\x54\x17\x0f\x1b\x9a\x8e\x38\xc9\x0f\x8d\x4b\xb2\x81\x7e\xb7\xec\x66\xb1\x12\x59\x31\x89\x65\xbd\x8c\xda\x3e\x35\xc5\xd3\xe2\xa2\x23\xaa\xfa\xc4\x5e\x1c\x67\x09\xd3\x19\xfb\x43\x8c\xc7\x31\x86\x67\x99\x96\xb5\xcc\x6a\xc1\x09\xba\xaf\xe2\xbb\xf6\xe9\x9a\xb6\xca\xfb\xda\x5b\x05\xd0\x97\xb5\x51\x9a\xe5\x05\x4a\x8f\xbb\xef\x74\xe6\x3c\x1e\xa0\xd7\xe8\xbb\xcf\xe6\x13\x72\x7b\x4f\xad\x17\xab\xdf\x5a\xb4\xe5\x05\xe4\x73\xd4\xa3\x84\x4b\xe6\x4d\x9c\xcb\x6a\x11\xb2\x8c\xeb\xc0\x6e\xec\x5e\xaf\xe7\xc6\x9e\x78\xc9\x08\x56\xd7\x74\xdf\x72\x4a\xb6\xf5\x75\x48\x3e\xbe\xce\x08\xf9\xf3\xcf\x7a\x72\x45\x70\x79\x94\xdb\x0c\x1b\xe4\x96\x90\xa2\xb3\x92\x31\x44\x87\xfa\x30\xe8\x49\xc6\xf5\x8d\xe0\x52\x94\x02\x2f\x8a\xbf\x67\x6e\xff\xd9\xec\x26\x83\x84\x49\x61\x76\x7b\xe3\x8b\xf1\x3d\x3c\x4b\x60\x2f\x6f\xd0\x7f\x9e\xe4\x92\x1c\x67\x14\x72\xd7\x35\xcd\x9f\x00\x00\x00\xff\xff\xc8\x7b\x57\xe2\x54\x04\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 415, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\x8f\xb1\x4e\x03\x31\x0c\x86\xf7\x3c\x85\x5f\xc0\x41\x6c\x28\x1b\x30\xb0\x31\x1c\x12\xbb\x2f\x67\x8a\x69\x2e\x3e\xc5\x49\x25\xa8\xfa\xee\x28\x77\x88\xa1\x2d\xec\x9f\x3f\x7f\x3f\x2d\xf2\xca\xc5\x44\x73\x80\x32\x52\xf4\xd4\xea\xbb\x16\xf9\xa2\x2a\x9a\xfd\xfe\xce\xbc\xe8\xcd\xe1\xd6\xed\x25\x4f\x01\x1e\x53\xb3\xca\x65\xd0\xc4\x0f\x92\x27\xc9\x3b\x37\x73\xa5\x89\x2a\x05\x07\x90\x69\xe6\x00\x62\x55\x14\x77\x94\x12\x7f\x22\x4d\xb3\x64\x2c\x9a\x18\xc7\xed\x02\x8f\x47\xf0\x03\x27\x26\x63\xff\x4c\x33\xdb\x42\x91\xe1\x74\x72\x00\x89\x46\x4e\xd6\x55\x00\x65\x43\x02\x9c\xf3\x1d\xed\xc2\x81\xdf\x3a\x49\x8b\x3c\x15\x6d\xcb\x3f\x03\x1c\xc0\x45\xff\xf5\xdc\x3f\xdb\xac\x8d\x1f\x1c\xeb\xda\x86\x3f\xb6\x17\x2e\x07\x89\x7c\x1f\xa3\xb6\x5c\xd7\xe8\x2b\x4a\xdb\x28\xa4\x33\x6c\x55\x5f\xae\xfb\xfd\x88\x88\xee\x3b\x00\x00\xff\xff\xc7\xfb\xb7\xb4\x9f\x01\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/configmap-envoy.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap-envoy.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 2208, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x54\x4f\x6f\xfb\x36\x0c\xbd\xfb\x53\x10\xbd\x14\x18\x60\xc7\x4e\x5b\x74\xd5\x75\x97\x5d\x36\x0c\x43\xb1\xab\xa0\xca\x4c\x22\x44\x96\x34\x89\x0e\x1a\x74\xfd\xee\x83\xe4\x38\xf1\xdf\xdf\x2f\x3a\x04\xb1\x48\xbe\x47\x3e\x52\x14\x4e\xfd\x83\x3e\x28\x6b\x18\x9c\xaa\xec\xa8\x4c\xcd\xe0\x37\x6b\x76\x6a\xff\x87\x70\x59\x83\x24\x6a\x41\x82\x65\x00\x46\x34\x18\x9c\x90\xc8\xe0\xeb\x0b\x8a\xbf\x51\xa3\x08\x58\xfc\xd9\x5f\xc3\xf7\xf7\xc5\x8b\xc1\x5e\x68\x8d\xe7\x1c\xcd\xc9\x9e\x73\x99\xe0\x32\x00\x2d\x3e\x50\x87\x88\x05\x20\x9c\xeb\xdd\xd2\xb7\x0a\xa4\xec\xe8\xc6\x77\x04\x73\xb6\x48\xd4\x27\x95\x18\x8a\xb3\x68\x74\x41\x8d\xd3\x0c\xfe\xcb\x3b\xf8\xba\x51\xa6\x63\x02\x10\x52\x62\x08\x5c\xdb\x3d\x77\x82\x0e\x0c\x36\x35\x9e\x36\xa6\xd5\xba\x77\xa8\x6b\x8f\x21\xf4\xfe\x00\xc1\xca\x23\x12\x9f\xdd\xdf\x5c\xa1\xda\xbe\x16\x65\x51\x16\xd5\xc0\xe8\xac\x27\x7e\x12\xba\x45\x06\xd5\x4b\x59\x96\x59\x32\x06\x12\xa4\x24\xf7\x18\x6c\xeb\x25\x06\x96\x5d\x62\xa4\x6e\x03\xa1\xbf\x12\xe4\x17\xf9\x94\x29\xde\xde\xca\x1b\xf2\x81\xc8\x6d\xb9\xf3\x96\xac\xb4\x9a\x5b\x47\xca\x9a\xc0\xe0\xeb\xfb\xea\x22\xad\x31\x28\x89\x93\x6a\xd0\xb6\xc4\xa0\x2a\xca\xb2\x0c\xd9\x0d\xc3\x06\x1a\x54\x92\xff\xa0\xc6\x9f\x54\x39\xae\x33\x25\x7a\x4b\x43\x79\xd9\x2a\xe2\x1f\x1e\xc5\x71\x50\x59\x3c\x74\xf0\x18\x0e\x56\xd7\xa3\xdb\x1c\x1a\xf1\xc9\x2f\xe9\x77\x65\x55\x65\x3c\x23\xc6\xe8\xe3\xd0\xd4\xca\xec\xb9\xc7\x7f\x5b\x8c\xc5\xac\x39\xde\xe1\x40\x5e\x61\x60\xf0\xd4\x67\xae\x55\x20\x34\x0b\xad\x78\xa8\x5e\xca\xea\xed\x21\x9b\x2a\x33\xc0\xbc\x4b\xc8\x32\xc9\x58\xae\xca\x98\x68\xae\xd6\x9d\xd2\x84\x9e\xcb\x83\x50\x66\xd4\xb4\xce\x30\x11\xb0\xcb\xb4\x7b\x0a\x71\x54\x06\x6a\xf2\x46\x18\xb1\x47\x3f\xe2\xed\x1e\xe4\x38\xd1\x78\x5b\xa3\xe4\x74\x76\xc8\xe0\xf7\xf7\xf7\xbf\xb6\x13\x7b\x9c\x62\xee\x3c\xee\xd4\xe7\x45\x96\xf2\x61\xe2\xb2\x32\xa7\x13\x2f\xe8\x3b\x2e\x5b\xef\xd1\x10\x0f\xe4\x51\x34\xa9\x5d\xaf\x4f\xaf\xcf\xd5\xaf\xdb\xe7\x6c\x12\x73\x7b\xc2\x53\xb4\x71\xf9\x3b\xa5\x91\xdf\x9c\x67\xcc\xcb\xa5\xa7\x66\xdc\x36\x43\xa0\xda\xb6\x34\x4d\x21\x29\xbb\xa0\xff\x3c\x09\x6f\x5b\x42\x3f\x8d\x4f\xb7\x7c\x2d\x81\xf1\xb4\xcd\xcc\x27\xe5\xa9\x15\x9a\x4f\x5e\xf1\x94\x3f\x6d\xd1\xfc\xb2\x44\x17\x8a\xac\x6d\x33\x9e\xa8\x21\xc4\xe3\x2f\x8f\x4b\x31\x29\xef\x95\x90\x46\x90\x3c\x2c\x99\xe2\xe9\x67\x65\xb3\x68\x4f\xb0\x6b\xa1\x97\xc5\x38\xdf\x84\xe3\x73\x5d\x76\x65\xb7\xec\x06\x16\x1d\xa2\xd4\x84\x9f\xc4\x26\xb3\xdf\x34\xd6\xf0\x55\x3b\x80\xd0\xce\x5c\x67\x78\xa1\xd3\x87\xe9\xc3\x48\x58\xe8\x49\xed\x94\x14\x0b\x52\xe5\x30\xb0\x76\x6f\x7a\xa9\xee\x38\xba\x5d\x17\x37\x48\x72\x13\x63\x42\xfa\xcd\x53\x48\xe1\xb0\x99\x45\x39\xaf\x4e\x11\xf4\x88\xe7\xbb\x21\x8f\x78\x5e\xc0\x3a\x09\xad\x6a\x91\x56\xc6\x8a\x2e\x00\xe4\x63\x57\x6a\x2e\xc5\xdd\x64\xde\x5a\xca\xe3\xdf\x19\x65\x5c\xd2\xca\x23\x97\x5a\xc5\x1d\x30\x90\x88\x45\x22\xcc\xf2\x3c\xcf\xb2\xff\x03\x00\x00\xff\xff\x5b\xbd\x89\x25\xa0\x08\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/configmap-mesh.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap-mesh.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 215, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\xcd\xb1\x8e\xc2\x30\x0c\xc6\xf1\xdd\x4f\xf1\xbd\x40\x22\x9d\x74\x53\xd6\x9b\xef\x86\x1b\x2a\x31\x1a\x6a\x4a\x84\x93\x54\x75\x40\x42\x69\xdf\x1d\x45\x85\x89\xd5\xfe\xd9\x7f\x9e\xe3\x20\x8b\xc5\x92\x03\xee\x5f\x74\x8d\x79\x0c\xf8\x29\xf9\x1c\xa7\x5f\x9e\x29\x49\xe5\x91\x2b\x07\x02\x32\x27\x09\x88\x56\x63\x71\x49\xec\xe2\x26\x56\x95\xc7\x6b\x63\x33\x9f\x24\xa0\x35\xf8\x7f\x51\x61\x13\xff\xf7\x1e\x63\xdb\x08\x50\x3e\x8a\x5a\xff\x04\x2c\x3b\xf9\xf4\x9d\xee\x41\x22\xa0\x67\x02\x56\x47\xad\xa1\x96\x03\x27\x85\x1f\x58\x6f\x62\x7e\x8f\xfb\x2e\xb0\x22\xe6\x51\x72\xc5\x77\x3f\x77\xce\xd1\x33\x00\x00\xff\xff\x95\x8b\xf5\xc0\xd7\x00\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/configmap.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 334, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8e\xb1\x6e\xeb\x30\x0c\x45\x77\x7d\xc5\x45\x76\x09\x78\xc0\x9b\xb4\x76\x6e\x87\x0e\xde\x69\x8b\x71\x89\xd0\x94\x61\xc9\x29\x02\x47\xff\x5e\xc4\x4e\x87\xa2\x4b\x47\x09\x87\xe7\x5c\x9a\xa5\xe3\xa5\x48\xb6\x88\xeb\x3f\x77\x11\x4b\x11\x2f\xd9\xce\x32\xbe\xd2\xec\x26\xae\x94\xa8\x52\x74\x80\xd1\xc4\x11\x52\xaa\x64\x3f\x92\x2a\xdf\xfc\xb0\x83\xeb\x42\x55\xb2\x3d\x91\x32\xd3\xc0\x11\xdb\x86\xf0\xce\xca\x54\x38\xbc\x7d\x7f\xa3\x35\x07\x28\xf5\xac\xe5\xa1\x04\x96\x03\xf9\xcd\x3f\xd0\xa3\xbc\x6d\x1e\x72\x46\xe8\x48\x57\x2e\x61\xd4\xdc\x93\x86\x23\xdd\x91\x4a\xda\xeb\x87\xfa\xfa\x7c\xdb\xf8\xc9\xfd\x47\xce\x97\x1f\x0b\xc3\x8d\x26\x8d\xb8\xfb\x3d\xbd\x7b\x6d\xd0\x35\x31\x4e\x7f\x38\x0c\x75\xd6\x13\x02\xee\x10\x4b\x6c\x15\xff\x5b\xdb\xc7\xb1\xa5\xd6\x9c\xf7\xde\x7d\x05\x00\x00\xff\xff\x88\x10\x16\xbc\x4e\x01\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 5962, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x58\x5f\x6f\xdb\x36\x10\x7f\xf7\xa7\x20\xb4\x3d\x4e\x72\xdc\xb5\x03\x22\xc0\x0f\x5e\xd2\x02\x1d\x9a\xd4\x68\x92\x02\x7b\x0a\x68\xe9\x2c\xb3\x3d\x91\x1a\x49\xa9\x31\xd2\x7c\xf7\x81\xa4\x24\x53\x7f\x2c\x67\xc5\xd6\xd5\x0f\x45\x4a\xfe\xee\x0f\xef\x8e\x77\x3f\x8a\x16\xec\x23\x48\xc5\x04\x8f\x09\x2d\x0a\x35\xaf\x16\xb3\xcf\x8c\xa7\x31\xb9\x84\x02\xc5\x3e\x07\xae\x67\x39\x68\x9a\x52\x4d\xe3\x19\x21\x9c\xe6\x10\x13\xa6\x34\x13\x61\x46\x11\x61\x5f\x2f\xaa\x82\x26\x10\x93\xc7\x47\x12\x7d\x00\x04\xaa\x20\xba\x6e\x96\xc9\xd3\xd3\x8c\x10\xa4\x1b\x40\x65\x94\x10\x63\x2b\x26\xad\x3c\x71\x0a\x3b\x2b\xd2\x29\x19\x6a\x34\xca\x54\x01\x89\x51\x24\xa1\x40\x96\x50\xe5\x50\x1f\x29\x96\xa0\x22\xa7\x24\xaa\xf7\x2e\x44\xc9\xb5\x73\x40\x01\x42\xa2\x85\x74\x2e\xe4\x54\x27\xbb\x77\x9e\x4f\x43\x2f\x94\x96\x54\x43\xb6\x77\xfb\x52\x20\x32\x9e\xdd\x15\x29\xd5\xd0\x88\xe4\xf4\xe1\xa6\x94\x19\xc4\x64\x71\x58\xb9\xe3\xb4\xa2\x0c\xe9\x06\x21\x26\x67\x33\x42\x34\xe4\x05\xb6\x52\x7e\x3c\xcd\x0f\x3b\x4e\x0c\x83\x33\x74\xed\xf1\x31\x24\x6c\x4b\xe0\xaf\xb1\x60\x07\x2e\x3b\x6a\xaf\x34\xe4\x81\x3d\xb9\xfb\xed\x40\x32\x4d\x8d\xaf\xb7\x0c\x11\x64\xbb\xd1\xc6\xda\x4a\xb6\xcb\xc9\x8e\x4a\xdd\xb1\x09\x3c\x25\xad\x42\xca\xb9\xd0\x54\x33\xc1\x3d\xdf\x15\x4b\x21\xa1\x32\xb2\x9a\x22\x26\xe6\x8c\x7f\x82\x44\xc7\x24\xd8\x52\x54\x10\x58\x60\x93\x3e\xfb\x37\xc8\x8a\x25\xb0\x4a\x12\x93\xa8\xeb\x41\x79\x85\x35\x20\xa4\x0e\xd1\x9c\xbd\xcd\x36\x8a\x0d\xc5\xa8\x90\x4c\x48\xa6\xf7\x17\x48\x95\x6a\xca\xc4\x59\x18\x6c\xc5\x24\xf0\xcb\xe5\xb8\x82\x60\x78\xe8\x44\x70\x4d\x19\x07\xe9\x9d\x39\xac\x6f\x45\x37\x39\x35\x52\x91\x60\x1e\xf4\x6b\x93\xe5\x34\xf3\x3c\xb4\x09\xce\x6d\x66\x82\x61\x21\x37\xe0\xda\x1b\x54\xcf\x90\x74\x67\xda\x95\x1b\xf2\xf4\x34\x3f\xa6\xf2\x2b\x49\x61\x4b\x4b\xd4\x24\x70\xeb\x01\x79\x7a\x8a\x87\x6a\x34\xcd\xc6\x83\xd1\x5a\x5f\x97\x88\x6b\x81\x2c\xd9\x77\x6f\xa2\x93\xef\x41\x7c\xbb\x2b\xfc\x42\xf7\x2a\xe8\xaa\x2c\x84\xd4\x5e\x78\x4d\x80\xdb\xb0\xaf\x85\x29\xc9\xf3\x97\x2f\x7f\x9d\xda\x5f\xbc\x3a\x5b\xbc\x3c\x05\x38\x9f\xb4\x70\x7e\xb6\xf0\xf6\x13\x91\xe7\x94\xa7\x5d\xa7\xe6\xa5\x92\x73\x14\x09\xc5\xf9\x86\xf1\x79\xef\xc6\x1a\x84\xa9\x5d\xef\x9e\x99\xa5\x30\xcc\x41\xed\x2e\x04\xdf\xb2\xec\x0d\x43\x58\xce\x41\x27\x73\xb3\x16\x26\x76\xd1\xfe\xdd\x13\x41\x56\x01\x07\xa5\xd6\x52\x6c\xe0\x2d\xd7\x20\x2b\x8a\xcb\x85\x9a\x82\xad\xa9\xde\x2d\xe7\x3b\xa0\xa8\x77\xcd\x46\x0f\x2f\x81\xa6\x6c\x54\xc0\xec\xec\x27\xd1\xc7\xbd\x60\x5c\x41\x52\x4a\x58\x6a\x59\xc2\x8c\x90\xf1\x0b\xeb\x0e\xfb\x91\x22\x4b\x6d\x0f\xe9\x96\x80\xd1\x03\xdc\x34\xd0\xb0\x6a\x21\xbe\xc2\xe1\x35\x18\x17\xb1\x5d\xa7\x91\xe9\xd7\xae\x11\x39\x60\x43\x53\x77\xcb\x41\x69\xb5\x5a\x5d\x32\x1b\x27\x7c\x40\xda\xce\xca\xb0\x1d\x85\xcb\x89\x49\x78\xc4\xfe\x17\xd8\xec\x84\xf8\x5c\xd7\x41\xb8\x65\xd8\x35\x64\x2b\xa5\x2e\x92\x46\x8c\x67\xb5\x94\x5b\x2f\xa5\x55\x15\xed\x69\x8e\xfd\xb2\x13\x9c\x69\x21\x19\xcf\x4c\x85\x2f\x87\x57\xe4\x48\x2c\xea\xf4\xfd\xdc\xcb\x1f\x8a\x2c\x63\x3c\x8b\x10\x2a\xc0\xe1\xb1\x50\x64\xf7\xa2\xd4\x45\xa9\xef\x2d\xc2\x84\xe3\xa4\x8a\x3a\x49\x1d\x65\x95\xc0\x32\x87\x2b\xd3\xfa\x6d\x4f\xf8\xb6\x6a\xf2\x69\x4b\x02\x52\xfb\x35\x4b\x48\x6e\xb4\x9b\xf2\x8f\xeb\x18\x0f\x10\xa6\xf6\xdf\x73\xdc\xc7\xc4\xaf\xc1\x61\x3d\x39\x3b\xce\x9b\x69\x13\x43\xc8\xc0\x46\x5f\xad\xd7\x24\x26\x75\x1f\xc3\x1d\x35\xd0\xe9\x1b\x71\x47\x06\x1e\x0e\xa3\xba\xf9\x8d\x34\xc3\xc6\xd1\x53\x2d\xb1\xc1\x15\xc6\xd2\xc8\x7a\x18\xda\x9d\xb0\x98\x6e\x5e\x07\x38\x6b\xdb\xd0\x59\x17\xc0\x38\xd3\x8c\xe2\x25\x20\xdd\xdf\x40\x22\x78\xaa\x62\xf2\xaa\x03\x29\x40\x32\x91\x8e\x6e\x76\x7b\xdd\x0f\x17\x92\x7e\x7b\xfe\x0e\xf1\x50\xa2\x94\x09\xa8\x78\xc0\xbf\x1a\xb6\x5d\x03\xdc\x3d\x26\x5a\xfc\x49\x73\x3c\x8e\xfa\x4a\x18\x4f\x81\x6b\xb2\x78\xd1\xde\xfc\xba\xa5\x8f\x48\xbb\x4b\x5e\xb3\x86\x0f\x93\x4a\xdc\x9d\x3c\xc2\x12\xcd\x90\x97\x02\xd7\x48\x39\xdc\x98\x21\xc5\xf4\xfe\xb5\xed\xee\x9d\x9b\xdc\xed\x17\x85\x14\x0f\x27\x58\x5d\x43\x21\xc5\xc3\xb3\xb9\xdd\x98\xc8\xb7\x31\x3c\x9f\xc6\x25\xd2\x72\x6e\xeb\x77\xcd\xea\x83\x3e\x05\x1c\x5a\xf6\x34\xd8\xe5\xea\xc5\x04\x13\xf4\xc0\xb5\x85\x70\x11\x2d\x42\xf3\xbc\x51\x3a\x4c\x29\x43\xcb\x23\x7f\x28\xba\x78\x7e\xf6\xc2\xdb\xa7\x32\xeb\xe1\x5d\x8a\xbb\x37\xa9\x7e\x77\x5c\x60\xa9\x74\x8f\xc3\xf5\x9e\xbf\xbe\x54\xf3\xd2\x7b\x33\x18\xde\x15\x95\x73\x64\x1b\x97\x9c\xba\x0d\xcc\x81\x57\xa2\xfe\xd7\xce\xec\x48\xe7\x45\x7f\x70\xfb\x45\xbb\x2a\xf5\xce\x85\xa5\x03\xba\xba\xbb\xbd\x5b\xbd\xbb\xbf\x7d\x77\xd3\x2e\x8f\x5f\x00\x2d\x4b\xa5\x2f\x45\x4e\xd9\x08\xe1\xb2\x9b\x61\x6a\x77\x97\x23\xc9\x1f\x97\x1d\x49\xf3\xb8\x6d\x14\xd9\x4a\xfd\xa1\xc6\xa8\x9e\x61\x0b\x54\xdd\x7f\x52\x82\x4f\xe9\x25\x04\x78\x15\x8f\x4c\xc6\xf5\xfb\xcb\xfb\xeb\xd5\xd5\xeb\x4e\x3b\xab\x8c\xf5\x37\x52\xe4\xfd\xae\xbc\x65\x80\xe9\x07\xd8\x0e\xbb\xb5\xff\x39\xa4\x5a\x0c\xb6\xad\xa0\x1b\xb4\xcd\x1b\x3e\x32\x0e\x4c\x78\x74\xb3\x5e\x5d\xfc\x5f\x6e\x59\xc6\x39\xe2\xdb\xdb\xeb\x9b\xdb\xd5\xf5\xc5\xeb\xfb\xb7\xeb\xef\xe7\x99\xd2\x54\x97\x2a\x2a\x44\xda\xb1\x3a\x31\x58\xfc\x3e\x75\x6a\xbc\x8c\x63\xff\xeb\x21\xe3\x85\xae\xc7\x52\xfb\x21\xff\x17\x99\x67\x5f\xb5\x6d\x1e\xa7\x68\xe1\xf1\xe6\x33\x1b\x39\x91\x3b\x8d\x4f\xb7\x85\xfc\x27\xa3\xf4\xd9\xe4\x7c\x2a\x3c\x0a\x12\x09\xda\x0f\xa6\x5b\xf1\x3e\x11\x45\x93\x1f\x8a\x9e\x11\x26\xf7\xdf\x2b\x5a\xf8\x66\xfc\x8f\x39\x61\x4f\x6c\xd0\x94\x8e\x50\xfe\x09\xc5\x1d\x9f\x3b\xaf\xb6\x1a\xfa\x13\xb9\x64\xdb\x2d\x48\x53\x73\x6e\x9f\xe4\xb4\x20\x5b\x29\x72\x52\x30\x14\xfa\x17\xa2\x05\xa1\x88\xe2\x8b\x2d\xcd\x02\x5c\x7d\xd6\x58\xca\x53\xfb\xa9\x52\x94\x3a\x6a\x35\xfe\x2e\xf4\x8e\x50\x09\x24\x05\xc9\x2a\x48\x9d\xb6\xca\xa5\xc9\x0e\x9e\xde\x79\xc6\xde\x10\x27\x0f\x65\x85\xea\xb1\xd8\x7c\x24\xdc\x6e\x0d\xf3\xdc\x37\x22\xb6\x9e\x78\x82\x65\x0a\x24\xe0\x22\x85\x06\x10\x90\xe8\x70\xd5\x7e\x3b\x04\xb8\x23\x50\x88\x74\xc5\x35\x5b\x1d\x95\x19\x27\xa7\x5a\x20\xb8\x10\xab\x83\x62\x6f\x31\x3e\xce\x58\x7d\xd1\xa1\xa9\xba\x14\xc2\x30\x9c\xfd\x1d\x00\x00\xff\xff\x08\xfb\xdd\x23\x4a\x17\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 401, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\xd1\xb1\x4a\x04\x31\x10\xc6\xf1\x3e\x4f\xf1\xbd\x40\x22\xdb\xa6\x53\x2c\x45\xc4\xe2\xfa\xd9\x64\x6e\x1d\x9c\x4d\xc2\x26\x7b\x70\x2c\xf7\xee\x12\x57\x0f\xf1\x2c\x6c\x07\xfe\xf3\x23\x99\x6d\xb3\x90\x23\xdc\x81\x74\xe5\xea\x26\xcd\x23\xa9\x8b\x7c\xa4\x55\xdb\x4b\x8e\x8f\x52\x97\xb5\x34\xc9\xe9\x61\x8d\x13\x37\xc7\x89\x46\xe5\x88\xcb\xc5\x50\x91\x03\x2f\x55\x72\xf2\x28\x59\x25\x9c\xef\x4e\xc3\xc8\x8d\x06\xf3\x2e\x29\x7a\xfc\xd1\x9b\x99\x1b\x45\x6a\xe4\x0d\x90\x68\x66\x0f\xa9\x4d\xb2\x9d\x48\x95\xcf\x5f\xc3\x5a\x28\xb0\xc7\xb6\xc1\xbd\xb2\x32\x55\x76\xcf\xdf\xe3\x2e\x03\x4a\x23\x6b\xed\x4b\x00\x2a\xc5\xe3\xda\x03\xcb\x9e\xdc\xf6\x7b\x8a\x5d\xbc\x26\xb5\x70\xe8\x8b\x66\x49\xf7\x27\x12\xed\xef\xf3\x18\x0c\x50\x59\x39\xb4\xbc\xec\xcc\x4c\x2d\xbc\x3d\xfd\x70\x6f\xe5\x7f\xd8\xbf\x75\x6b\xad\x31\xfd\x0a\x9c\x3e\x3f\xf5\x23\x00\x00\xff\xff\x37\x81\x70\xec\x91\x01\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 401, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x8f\x51\x4a\xc4\x30\x10\x86\xdf\x73\x8a\xb9\x40\x96\x2d\xd6\x87\xe6\x10\x22\x0a\xbe\x8f\xe9\x50\x07\xd3\x64\xc8\x0c\x05\x59\xf6\xee\xd2\x74\x57\x6a\xf5\x2d\xfc\xf9\xbe\x8f\x04\x85\xdf\xa8\x2a\x97\x1c\x60\xe9\xdc\x27\xe7\x31\xc0\x2b\xd5\x85\x23\xb9\x99\x0c\x47\x34\x0c\x0e\x20\xe3\x4c\x01\x58\x8d\x8b\x9f\x30\x25\xfa\xba\x8d\x2a\x18\x29\xc0\xe5\x02\xa7\x17\x4a\x84\x4a\xa7\xa7\xfb\x0c\xd7\xab\x03\x48\xf8\x4e\x49\xd7\x08\x00\x8a\x04\xf8\xf1\x61\x0b\xfe\x5a\xea\x16\xf9\x5b\x5c\x63\x2a\x14\xd7\x90\x94\x6a\xad\xe8\xdb\x31\x40\xdf\x3f\x34\x7b\x7b\xe6\x87\x99\xa8\x5f\x30\xf1\x88\xc6\x25\xb7\x2b\xc3\x3a\x91\x3d\x37\x7c\xd8\xf8\xbb\xdd\x3d\x9e\xbb\xfe\xe0\xfb\xb9\x64\xb6\x52\x39\x4f\x3b\x72\x18\xce\xdd\x0e\x9c\xaa\x44\x3f\x47\x39\xb4\x86\x23\x62\x49\x6f\x98\x52\xa2\x68\xa5\x86\x7f\xbe\xef\xbd\x77\xdf\x01\x00\x00\xff\xff\x0d\xc0\x7c\xc3\x91\x01\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 329, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8e\x31\x6a\xc4\x30\x10\x45\x7b\x9d\x62\x2e\x30\x82\xb4\xea\x72\x81\x10\xb2\xb0\xfd\xac\xfc\x63\x86\x8c\x65\xa3\x91\x17\x82\xd9\xbb\x07\xaf\x9c\xc6\x69\xd2\x49\x9f\xff\xde\x7c\x59\xf4\x8a\xea\x3a\x97\x44\xf7\x97\xf0\xa5\x65\x48\x74\x41\xbd\x6b\xc6\x6b\xce\xf3\x5a\x5a\xd8\x36\x26\xfd\xa4\x78\x15\x5b\xe1\x71\xb4\xf9\x26\x16\x75\x92\x11\xef\xab\xd9\x05\xb9\xa2\x39\x3d\x1e\xe1\x9c\xa5\x27\x5b\xa5\x8c\xf8\x0f\x4e\xc4\x54\x64\x42\xa2\x6d\xa3\xb8\x27\x3b\x8e\x32\x9c\x9e\x13\x9a\x0c\xd2\x24\x05\x3a\xfa\xea\x4d\x67\x1e\xc5\x0c\xdf\xec\x7d\x3e\xcb\xb1\xbf\x97\x7c\x91\x7c\x98\x3f\x60\x10\x47\x7c\xfb\x8d\xfb\x71\x93\x1b\xcc\x77\x29\x91\x2c\x4b\xa2\xee\x7b\xfe\x6b\x47\xfe\xf2\x3b\xca\xcc\xe1\x27\x00\x00\xff\xff\xda\x3f\x64\x28\x49\x01\x00\x00"), - }, - "/charts/istio-control/istio-config/templates/validatingwebhookconfiguration.yaml.tpl": &vfsgen۰CompressedFileInfo{ - name: "validatingwebhookconfiguration.yaml.tpl", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 2557, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xdc\x55\x4d\x6f\xdb\x38\x10\xbd\xfb\x57\x10\xde\xdb\x02\x52\x90\x3d\x2d\x74\xdb\x4d\xd3\xde\x82\x20\x68\xd3\xf3\x98\x1c\x49\x03\x51\x1c\x96\x1c\xc9\x75\x8c\xfc\xf7\x42\x1f\x71\x44\xdb\x48\x52\x20\x87\xa0\x39\x85\x6f\xe6\x0d\x1f\x47\x33\xcf\xfb\xbd\x32\x58\x92\x43\xb5\xee\xc1\x92\x01\x21\x57\x6d\x71\x53\x33\x37\x9a\x5d\x49\x55\x17\x40\x88\x5d\xbe\x83\xd6\xe6\xe2\xed\x5a\x3d\x3e\xae\xc0\xd3\x3d\x86\x48\xec\x0a\x05\xa6\xa5\x38\xfc\x1b\xb0\xa2\x28\x73\x7a\xf3\x6f\xcc\x89\x2f\xfa\xcb\x0d\x0a\x5c\xae\x1a\x72\xa6\x50\xf7\x87\x2b\xbe\x4f\x57\x5c\x2d\xaf\x58\xb5\x28\x60\x40\xa0\x58\x29\xe5\xa0\xc5\x42\x51\x14\xe2\xac\x02\x6b\x71\x97\xed\xf7\x2a\xbf\x43\x8b\x10\x31\xbf\x81\x16\xa3\x07\x8d\x83\x9a\x29\x7b\x3c\x16\xea\x85\x2c\x0b\x1b\xb4\x71\xa8\xae\x14\x78\x5f\xa8\xa9\xf0\x78\x0e\x13\xe5\x94\x3f\x51\xd5\x24\xe5\x40\x99\x5b\x34\x16\xcb\x66\xb1\x9e\x2c\x4b\xfe\xd4\x46\x76\xf9\x48\xc9\x89\x47\xbe\xb6\x84\x4e\xa6\x07\x4f\x12\x94\x8a\x18\x7a\xd2\xf8\x74\x3c\xf7\xea\x24\xf4\xfa\x13\xa7\x3f\x0f\x52\x17\x6a\x7d\x31\x7c\x1a\x19\x65\xad\xe7\x98\x86\xff\x3b\x67\x2c\x16\x6a\x3d\x41\xa1\xb3\x18\x9f\x04\x64\x8a\x3d\x4e\x1f\x23\x3e\x8b\xca\xd4\xd5\xdd\xf5\x7f\x5f\xaf\x17\xc0\xb7\xdb\x4f\x4b\x00\x3c\x7d\x09\xdc\xf9\x84\x34\x8d\x4f\xda\x84\x39\x79\x9e\x9d\x24\xbd\xbf\x04\xeb\x6b\xf8\xe7\x00\x05\x8c\xdc\x05\x8d\x49\x56\x2d\xe2\xc1\x53\xf4\xa8\xe3\x79\x78\x43\xce\x90\xab\x96\xd1\x1f\x1d\x0b\x1c\x53\x0e\xe0\x11\xe1\x5d\x7b\x10\x36\xa0\xdf\xdc\x81\xf5\xdf\xeb\x97\x1f\xff\x9c\xf0\xae\x22\xa1\x93\x1a\x9d\x90\x3e\x33\xb5\x1f\x50\xae\x43\xd9\x72\x68\xc8\xbd\x7d\xb6\x5e\x95\x6a\x30\x0a\xb9\x51\xe0\xb8\x10\x8b\x10\xba\x9e\x77\x25\x59\xc1\xb0\x84\x2b\x10\xdc\xc2\x6e\x09\xcd\xdb\x8c\x4e\x02\x25\x25\x22\x19\xd4\x90\xd0\x7b\x0a\xd2\x81\x9d\x29\x53\xa4\x04\xb2\x5d\xc0\x5b\xb6\xa4\x77\x85\xfa\x0c\x64\x47\x7c\xa0\x5f\x97\x25\x6a\x89\x85\xba\x61\x87\x0b\xcf\x69\xe9\x27\x86\x8f\xe7\x39\xa3\xac\x3f\xc5\x73\x8e\x27\x02\x44\x02\x6d\x3a\xc1\x16\x1c\x95\x18\x65\x19\xd4\x14\x34\xbb\x2e\x26\x0c\x83\x8e\xd2\xf1\x29\x6d\x87\x4e\xcc\x12\x6a\xba\x0d\x06\x87\x82\x11\x5d\xbf\x0c\x58\x8a\xa2\x6b\xd4\x4d\x5a\xa2\xc5\x76\xf2\xb0\xe5\x6e\x30\xfb\xe5\x99\x7d\x12\xf6\x81\x5b\x94\x1a\x8f\xe4\x0d\x2e\x95\xcc\x2b\x5b\x08\x5b\x72\x26\x4d\x8b\x02\xba\x31\x81\xfa\x54\x87\xb6\xdc\x99\x2d\x0c\x12\x93\x37\x73\x15\x05\x24\x9a\xa3\x12\x27\x88\x21\x4e\xba\xeb\xa9\xc1\x64\xaf\x06\x7f\xe2\x40\x0f\xd3\x8c\x2c\x6f\x1e\x9a\xe2\x58\xea\xc4\xef\xff\x4a\x7b\x79\xdc\xc9\xd3\xf5\xb4\x5c\x9d\x82\x2d\x4a\xa0\x33\x3f\x18\xcb\xb6\xa1\xe7\x20\x27\xf7\x67\x4a\x02\xe8\x61\x41\x12\xb1\x60\xc0\x1f\x79\x48\x0d\xc3\x5a\x24\x10\xb9\x28\xe0\x74\x22\x45\xb0\xf5\x16\x24\xc1\x1e\xc8\x37\xe4\x7e\xd7\x37\xf6\xfb\xc1\xcf\xcc\xb0\xb6\x59\x96\xad\x7e\x05\x00\x00\xff\xff\x00\x68\xbf\x55\xfd\x09\x00\x00"), - }, - "/charts/istio-control/istio-config/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 1313, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x53\xcb\x6e\xec\x36\x0c\xdd\xcf\x57\x10\x73\xb7\x37\xd3\x3b\x59\x15\xde\x05\x4d\x5b\x04\x6d\x91\xc5\x64\x57\x74\xa1\xb1\x68\x9b\x88\x4c\xba\x94\x94\x89\x51\x14\xc8\x87\x34\x3f\x97\x2f\x29\x28\x29\x01\xf2\x40\xd0\xee\xcc\x23\x3e\x0e\x0f\x8f\x47\x17\x02\xae\xdd\x06\x80\x66\x37\x62\x07\x15\xd8\x00\x28\x2e\x81\x7a\xf7\x83\x64\x4e\x1d\xec\x37\x05\x8a\x92\xb5\xc7\x68\xf9\x16\xfe\x99\x31\xa6\x16\x01\xf4\x4b\xee\x60\xff\xed\xdb\x5c\xe2\x2f\x00\x30\xe3\x2c\xba\x76\xb0\x3f\xff\xfe\x37\x6a\x68\xa0\x99\x9e\x6b\xbe\xfc\x87\xaa\x8d\x81\x37\xd7\x97\xd7\x1d\xfc\x5c\xb8\x81\x5b\x16\x74\x1a\x21\x09\xe4\x88\x90\x26\x84\x19\xe3\x04\xbd\xf0\x40\x23\x9c\x01\x23\x7a\x7b\x1d\x88\x3d\x9c\x26\xea\x27\x18\x08\x83\x8f\xe0\x14\xad\xc6\x83\x63\xff\x92\x76\xc4\x56\x9a\x15\xfd\x6e\x03\xa5\x5b\x07\x7f\xfd\x6d\xb3\x59\x3c\x1e\x30\x60\x9f\x44\x0b\x06\x90\x24\xa0\xba\x44\xc2\xb1\x83\xdf\xff\xa8\x0c\x0f\x0b\xf6\x34\xac\x85\xcd\x22\x36\x20\xd1\x99\x1b\x06\x62\x4a\x86\xba\x04\x2e\x04\x39\x45\x58\x25\xdb\xd4\x5e\x38\x26\x75\xc4\x8d\xa1\x0d\x8a\xa5\xd5\x2a\x59\x4b\x0f\x8a\x80\x81\x46\x3a\x06\x6c\x3c\x63\x3f\xa1\xcf\x01\x3d\x1c\x9d\xad\x21\x0c\xc1\x1d\x31\x44\xfb\x5a\xc4\xc7\x36\x49\xb1\x74\x72\x41\xd1\xf9\x15\x34\x33\x13\x8f\x96\x64\xfc\x6c\x14\xa8\x4b\x13\xaa\xe5\xf3\x47\xcd\x0a\x9d\x5d\x15\x7f\x42\xc5\x22\x5d\x9f\x55\x91\x53\x58\x21\x9d\x04\xd2\xba\x60\x04\x19\x5e\xef\xda\x6d\xea\x15\x61\x6b\xfe\x20\x45\x7f\x99\x95\x78\x3c\x54\xea\xc4\xe3\xd5\xc8\xf2\x02\xff\x78\x8f\x7d\x36\x2d\xb7\x2f\x75\x8b\xe2\x80\xfa\x3f\x0b\xab\x88\x1e\x59\x12\xc2\xd3\xc3\x3f\x93\x53\xff\xf4\xf0\x08\x77\x71\x67\x61\x94\x21\x59\xd8\x38\xcd\xc8\x29\x7e\x2d\xa7\xe8\x1d\x83\xc7\x81\x18\xab\xf0\x77\x2e\xe4\x76\x08\x62\xd8\x2e\xe2\x2f\x38\xd1\x45\xdb\xee\x57\x13\xe8\xd9\x0f\xdb\x62\xa3\xb7\x29\x37\xa8\xf3\xeb\xb4\xd2\xac\x17\x55\x8c\x8b\xb0\x27\x1e\xc3\x5a\xa5\xfd\x49\x14\xf0\xde\xcd\x4b\xc0\xaa\xdb\x67\xe3\x6a\xc6\x19\xdc\xe2\xda\x41\xc4\x3e\x2b\xa5\xb5\xa9\x26\x8b\x59\xd2\x2c\x7a\xc5\x0d\xaa\x8b\x74\x70\xd8\x7f\x3d\x9c\x37\x2c\xc9\x22\x41\xc6\xf5\x17\x6b\xb1\xbd\xcd\x47\x54\xc6\x84\x71\x47\xf2\xdd\x24\x31\xb1\x9b\x71\xdb\x8e\x4e\xf1\x03\x23\x6b\x0e\x08\xd1\xad\xcd\x68\xcf\x6e\x6f\xb2\x46\x60\x49\x6f\xad\x5a\xda\x09\x27\x01\x57\x9d\x47\x43\x2d\xae\x41\x7c\xe7\x52\x57\x5a\x9e\x28\x4d\xd5\x8f\x30\xb9\x3b\xc3\x6f\xb1\x6e\x6b\xe7\x6c\xdb\xdb\x49\xed\x06\x65\x57\x7b\x38\xec\x9f\x1e\x1e\x4d\xdb\x4f\x85\xb4\xbf\xf6\x5d\xca\xbb\xbb\x95\xb4\x7f\x03\x00\x00\xff\xff\xaf\xd1\x9c\xd6\x21\x05\x00\x00"), - }, - "/charts/istio-control/istio-discovery": &vfsgen۰DirInfo{ - name: "istio-discovery", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - }, - "/charts/istio-control/istio-discovery/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 272, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8d\xb1\x4e\xc4\x30\x0c\x86\x77\x3f\x85\x75\x7b\x13\xda\x05\x5d\x24\x98\x79\x82\xdb\x43\xe2\x6b\x2d\xd2\x38\x72\x7c\x85\x7b\x7b\xd4\x2b\x20\xb1\x78\xf8\xfc\xfd\xfa\x62\xe3\x0b\x69\x67\xa9\x01\xb7\x11\x6a\x5c\x29\x20\x77\x63\x19\x32\xf7\x24\x1b\xe9\x1d\xb6\x5f\x63\x74\xa3\x7b\x82\xd8\xda\xe5\x3f\x31\x2e\x85\xf4\x0f\x9e\x5e\x5f\x26\xf7\xec\xa6\x13\x64\xea\x49\xb9\xd9\x03\xbf\x51\x59\x31\x2d\x51\x0d\xaf\xa2\x47\x05\x93\x54\x53\x29\xd8\x4a\xac\x04\x1f\x74\xff\x14\xcd\x3d\x00\xe2\x70\x18\xd0\xe5\xa6\x89\x7e\xd0\x62\xd6\x82\xf7\x33\xdb\x72\x7b\x77\x49\x56\xff\x90\x8e\x0b\x54\x67\xae\x14\x70\x16\x6b\x05\x38\xed\xd5\x7d\xd1\x83\x3f\x0c\xc7\xe2\xaf\x71\xdb\x3f\xdd\xc7\x9a\x55\x38\x0f\xe3\x79\xfa\x1a\xcf\x93\x6b\x75\x86\xef\x00\x00\x00\xff\xff\x86\xa8\x5e\xbe\x10\x01\x00\x00"), - }, - "/charts/istio-control/istio-discovery/NOTES.txt": &vfsgen۰CompressedFileInfo{ - name: "NOTES.txt", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 200, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x1c\xcd\xc1\x6d\x03\x31\x0c\x44\xd1\xbb\xaa\x98\x0a\xb6\x87\x20\xa7\x1c\x0c\xb8\x05\x46\x1a\x67\x15\x50\xe4\x82\xa4\x0d\xb8\xfb\x40\xb9\xbf\x99\x7f\x9b\x36\x97\x28\xba\x5b\x85\x2b\x2e\x15\x23\x1e\x1e\xf8\xca\x9a\x7e\xe0\x3e\xd5\x0b\x62\x03\x8b\x79\x6e\xf7\x98\x3f\x90\x20\xa6\x75\x7d\x0e\x8e\xa3\xb5\xdb\xe7\xfd\x9f\x4c\xfb\x65\x2f\x0f\xe4\xe9\x4f\x1d\xf0\xab\xa6\x9b\xa8\xbe\xf1\xbd\x07\x59\xa2\xca\xed\x50\x27\x91\xb2\x08\x93\xc5\xbc\xa4\xf3\xc0\x87\x16\xc3\xa4\xe6\x8b\xfa\x46\x70\x79\xb1\xc9\x18\xc1\x4c\xf8\x03\x62\xd8\xa5\x64\xbc\x18\xe8\x62\xfb\x35\x59\x47\x6b\x7f\x01\x00\x00\xff\xff\xdd\xf1\x73\xe7\xc8\x00\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - }, - "/charts/istio-control/istio-discovery/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 3011, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\xda\x30\x10\xbd\xf3\x2b\x46\x88\x43\xbb\x22\x09\xbd\x46\xea\x01\xa9\x7b\x58\xb5\xaa\xaa\x6e\xd5\xbb\x49\x26\xc1\xc2\xd8\xa9\xe3\x50\x50\xca\x7f\xaf\xec\x84\xe0\x84\x7c\x18\xba\xea\x0d\x0d\xcf\xf3\xc6\xcf\x6f\x5e\xca\x32\x78\x02\x92\x24\x94\x53\x75\x02\x0f\xb6\x4a\x65\x79\x18\x04\xbb\x62\x83\x92\xa3\xc2\xdc\xa7\x22\x88\x45\x94\x07\x91\xe0\x11\x66\xca\xfc\x48\x68\x5a\x48\xa2\xa8\xe0\x01\xc9\x73\x9a\x72\x2f\x13\xb1\xc7\x45\x8c\x01\x3c\x05\xe7\xf3\x6c\x56\x96\x1e\xc4\x98\x50\x8e\x30\xd7\xf5\x0b\xc7\x1c\xce\xe7\x19\x80\x2e\xad\xeb\x52\x38\x03\x00\x90\xf8\xab\xa0\x12\xe3\x4f\x85\xa4\x3c\x7d\x8d\xb6\x18\x17\x8c\xf2\xf4\x25\xe5\xa2\x29\x3f\x1f\x31\x2a\x34\x6d\x75\x46\x93\x50\x1e\xb1\x22\xae\x59\x2e\x2d\xbf\x0f\x34\x9b\x83\x5f\xf1\x03\x64\x12\x13\x94\x6f\x45\xf8\x6d\xa8\x5b\xcd\xa8\x0f\x22\x8f\xa1\x4f\x9a\xe9\xa1\xeb\x91\x2b\xd9\x5e\x91\x61\xa4\x84\xfc\x81\x72\x9f\x87\xf5\x1f\x1e\xec\x89\x8a\xb6\xcf\xc7\x4c\x62\x9e\x53\xc1\x9b\x7f\xf4\x7f\x3b\x3c\x85\xb0\x41\x45\xfc\xf6\xbb\x12\x19\x6d\x1b\x18\x80\xc8\x50\x12\x25\x64\x08\x2f\xdc\x2a\x1f\x08\x2b\xd0\xea\xa7\xe7\x97\x84\xa7\x08\x8b\x1d\x9e\x96\xb0\x38\x10\x06\xe1\x47\xf0\x7f\x1a\xa0\x9f\x32\xb1\x21\xcc\xd7\xcd\xaf\x93\x37\xea\x25\x90\x2a\x78\x67\xce\xfc\x01\xca\xd5\x7b\x58\xb5\x51\x1e\x94\xa5\xe9\x7c\x7b\xb8\x56\x70\xa2\xb4\xb0\x55\xd2\x83\xc5\x98\x90\x82\xa9\xee\x80\x75\xf9\xab\x8d\xbe\x40\x32\xca\x84\xf2\x5b\x8d\xbc\x0e\x4d\x9f\x04\x6d\x6a\xeb\x40\xfd\x06\xbd\x37\x73\x94\xfd\xa2\x8c\xa6\xea\x17\xc1\xc5\x64\x23\x46\x35\x4d\x1f\x78\xdc\xa9\x67\xf5\xe0\x37\xd2\x74\xab\xc2\x66\x7c\x83\xb8\x5e\xa2\x5a\x45\xe4\x11\x5e\x6f\xfb\xff\xec\xdc\xe3\xb8\x96\xb1\x1c\x04\xce\x44\xbc\xe6\x8a\xae\xed\x8c\xab\x55\xb9\xf1\x54\x07\xfb\x85\x6c\x90\x0d\xd8\xaf\x03\xd5\x0b\xdf\x82\x9b\xf1\x3a\xa0\xd0\x7e\x92\x3b\x98\xeb\x9b\xff\x73\x0a\x77\x48\x1c\x82\xb8\xb3\xc5\x2e\xa3\xdf\x28\xf1\x76\xa1\xde\x61\x9a\xca\xf5\xe1\x0d\x74\xf4\xca\x64\xe8\x5b\x0b\x49\x79\x8c\xc7\x25\x2c\xa8\xc2\xbd\xbd\x93\xee\xcf\xeb\x01\xb3\xcb\x77\xac\x9b\xde\x10\xcd\xeb\x8f\xc4\x57\x83\xb9\x94\x7a\xe3\xbf\x82\x54\x5b\xd8\x06\xdc\x6e\xa6\x89\xf3\x03\x61\xb9\xbe\x6e\x9e\x31\xaa\x60\xbe\x9c\x8f\xb4\xb0\xd5\xd2\xe1\x65\x42\xd9\x34\xe8\xf9\xc6\x1c\x26\xbf\x30\x3d\x45\x25\x32\xc1\x44\x7a\xfa\xdc\x52\xc5\xaa\x8e\xdb\x62\xcc\x0b\x53\xd9\xfc\xb8\x19\x06\x17\xc6\x33\xf9\x61\xa1\xae\xea\x0f\x38\x65\xcc\x2b\x0e\x6e\xb9\xc3\x2f\x0e\x8e\xe9\xf3\xcc\x03\xae\x71\xf6\xcd\x80\x73\x06\xbc\xd3\x5b\x76\xf6\x0f\x34\x9f\xcd\x0f\xab\xd5\x88\xa3\xfe\x06\x00\x00\xff\xff\xed\x35\xb9\xb3\xc3\x0b\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/_helpers.tpl": &vfsgen۰CompressedFileInfo{ - name: "_helpers.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 759335003, time.UTC), - uncompressedSize: 156, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x44\xcb\x41\xaa\xc2\x30\x10\x80\xe1\xfd\x3b\xc5\x10\xde\xaa\xd0\x14\x04\x5d\x14\xdc\x78\x02\x17\x5e\x60\x48\xa7\x66\x30\x93\x06\x67\x22\x94\xd8\xbb\x0b\x22\xba\xfb\x17\xff\xd7\xda\xd0\xc1\x83\x65\x04\x25\x83\x99\x13\xd9\x5a\xe8\x28\x55\x0d\x43\xa4\x11\xba\x61\xdb\xfe\x5a\xeb\x61\xa2\x99\x33\x81\x63\x35\x5e\x7c\x58\xf2\xcc\x57\xc1\xe2\x43\xa4\x70\xd3\x2a\x0e\xfa\xcf\x59\xee\x9c\x0d\xfe\xfd\x85\xa4\x24\x34\xf2\x27\x54\x3a\xa3\x45\x70\xc3\xcf\xad\x28\xc9\xc1\x13\x34\xe2\x6e\x7f\xd0\x2a\x5f\x4f\x79\x7a\xf7\x2b\x00\x00\xff\xff\x11\x74\xf7\x61\x9c\x00\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/autoscale.yaml": &vfsgen۰CompressedFileInfo{ - name: "autoscale.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 672, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x52\xc1\x6a\xc3\x30\x0c\xbd\xe7\x2b\xf4\x03\x49\xe9\x8e\xb9\x15\x36\xd8\x65\x63\x84\xad\x77\xd5\x51\x8b\x98\x63\x0b\x5b\x09\x6d\x43\xff\x7d\xd8\x6e\xc6\xa0\x74\xf4\xf8\xac\xa7\xf7\x9e\x1e\x9e\xe7\x1a\x78\x0f\xe8\x7a\x68\xb6\x68\x47\x8a\x8d\xb0\xf5\xda\xe0\xa8\x3e\x1a\xb4\xf4\xe2\x70\x67\xe9\xee\xf8\x8d\xdd\xdd\x11\x1e\xe1\x72\xa9\x50\x78\x4b\x21\xb2\x77\x2d\x2c\x33\x76\x87\xd5\xf4\xb4\x23\xc5\x75\xf5\xcd\xae\x6f\xe1\xd5\x07\x3e\x7b\xa7\x68\x3f\x7c\xbf\x59\x24\x42\x35\x90\x62\x8f\x8a\x6d\x05\xe0\x70\xa0\x16\x38\x2a\xfb\x3a\x7b\xcd\xf3\xaf\xf7\x54\x2c\x92\x61\x21\x46\x41\x43\x2d\x24\x4a\x47\x96\x30\x52\xf3\xbe\x3c\x17\x96\xc5\x1d\xd9\x98\x84\x01\x50\xa4\x85\xac\x99\x61\x28\x1b\xb7\xeb\x69\x33\x0a\x99\xb4\x35\xe0\xb1\x23\xb1\x6c\x30\x16\xe2\xbf\x35\x00\x0c\xec\x1e\xe2\xf3\xf5\x8a\x8c\x3e\x31\x1c\x48\x3b\xda\x2f\x39\xff\x94\x29\x12\x57\xd3\x3a\xbf\x97\x12\x9f\x49\xac\x3f\x0d\xe4\xca\x15\x0f\xf7\x35\x90\x06\x36\xb9\x8a\x1a\xf4\x24\xd4\x42\x47\xd1\x8f\xc1\xd0\xb5\x8e\x02\x4a\x86\x45\xd8\xc8\x78\xc5\x9a\x43\x6e\x26\x0a\x78\xa0\x2f\x65\xcb\x67\xd4\x9c\xf1\xe6\x4c\x23\x63\x73\x8f\x9e\xc2\xd4\x75\x5d\xa5\x4f\x49\xae\x4f\xf0\x27\x00\x00\xff\xff\x5c\xe2\xf2\x3f\xa0\x02\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 961219588, time.UTC), - uncompressedSize: 943, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xa4\x92\x31\x6f\x1b\x31\x0c\x85\xf7\xfb\x15\x84\xc7\xa2\xa7\xa0\x5b\x71\x6b\x87\x6e\x1d\x32\x64\x29\x32\xd0\x12\xed\x10\xd6\x89\x82\x48\x39\x45\x0f\xf9\xef\x85\x74\x97\xb4\xb5\x03\x24\x40\x26\x9b\x02\xdf\xf7\xc8\x7b\x5c\x16\xe0\x03\xb8\x3b\x8c\x95\xd4\xf9\x58\xd5\xa8\xdc\x92\x4a\x2d\x9e\x14\x9e\x9e\x06\xcc\x7c\x47\x45\x59\xd2\x04\x65\x8f\xde\x61\xb5\x07\x29\xfc\x1b\x8d\x25\xb9\xd3\x57\x75\x2c\x37\xe7\x2f\xc3\x89\x53\x98\xe0\xdb\x86\x90\x48\xc3\x4c\x86\x01\x0d\xa7\x01\x20\xe1\x4c\x13\xb0\x1a\xcb\x98\x39\x8a\x8d\xcb\x02\xee\x96\x22\xa1\x92\xfb\x81\x33\x69\x46\x4f\xcd\x11\x20\xe2\x9e\xa2\x36\x19\x00\xe6\x3c\x41\x57\xf4\xb2\xac\x8a\x09\x2e\xe5\x4d\x59\x6a\x24\x9d\x86\x11\x30\xf3\xf7\x22\x35\xeb\x04\x3f\x77\x5e\xd2\x81\x8f\xae\x7b\x3b\x96\xdd\xfd\xd0\x30\xdb\x8a\xad\xe1\x53\x7f\x3a\x53\xd9\xbf\x94\x17\x88\xbe\xf8\xbb\x01\x47\xb2\xdd\x67\xd8\x3d\xa2\xf9\x87\xf6\x27\xb2\xda\x35\x33\x91\x3d\x4a\x39\x71\xfa\xd8\x68\x2d\x0e\x4a\xc6\x7e\xcd\xe3\x43\xa8\xcc\xf4\xcb\x28\xb5\xb0\x75\x4b\xf6\x9a\xe3\xab\x9a\xcc\xcf\x4f\x81\x0e\x9c\xb8\x59\xeb\x9b\xfc\xbf\xf0\x6b\x2a\xa7\x63\x21\x55\xd2\xf6\xc1\x5e\x8a\x1b\x35\xb4\xfa\x36\xf9\x95\x29\x7b\xe8\x33\xe6\x0b\xb1\x2f\x84\x46\xcd\x64\x4b\xa9\x87\xf3\x6f\x5a\x35\x87\xd6\xf1\x0e\x0f\x4a\x21\x0b\x27\xeb\x33\x67\x09\xfd\x57\xa9\x9c\xd9\xaf\x7b\xa4\xe7\xb3\x5e\x2b\x09\xb4\xb5\xf8\x42\xa6\xaf\x1e\xcd\xff\xe3\xdc\x0f\xe3\x38\x0e\xcb\x02\x94\x42\x3b\xf0\x3f\x01\x00\x00\xff\xff\x17\x04\xc4\x09\xaf\x03\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 452, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x8f\xb1\x4e\x03\x31\x0c\x40\xf7\x7c\x85\x7f\x20\x41\x6c\x28\x1b\x30\xb0\x31\x1c\x52\x77\x5f\xce\x05\xd3\x5c\x1c\xc5\x49\x07\xa2\xfe\x3b\xba\xbb\x8a\xa1\x27\x21\x75\xb4\xe4\xf7\xfc\xdc\x3b\xf0\x11\xdc\x01\x63\x23\x75\x21\x36\xad\x54\x06\x52\x69\x25\x90\xc2\xe5\x62\x30\xf3\x81\x8a\xb2\x24\x0f\x65\xc4\xe0\xb0\xd5\x2f\x29\xfc\x83\x95\x25\xb9\xd3\x93\x3a\x96\x87\xf3\xa3\x39\x71\x9a\x3c\xbc\x5e\x15\x12\xe9\x85\xd3\xc4\xe9\xd3\xcc\x54\x71\xc2\x8a\xde\x00\x24\x9c\xc9\x03\x6b\x65\xb1\x99\xa3\x54\xdb\x3b\xb8\x81\x22\xa1\x92\x7b\xc7\x99\x34\x63\xa0\xe5\x30\x40\xc4\x91\xa2\x2e\x18\x00\xe6\xec\x61\x25\xd6\xb1\x6c\x84\x87\x5b\x7c\x21\x8b\x44\x1a\xe8\xb8\x80\x98\xf9\xad\x48\xcb\xff\xb4\x1b\x80\x5d\xfa\x7d\xa5\xda\xc6\x6f\x0a\x75\x2d\xb5\x57\xd9\x07\x95\x33\x07\x7a\x0e\x41\x5a\xda\x9a\xf7\x46\xdd\x96\x2c\xde\x6c\xad\xe6\xfd\x6f\x7f\x07\xad\xb5\xa6\x77\xa0\x34\x2d\xd3\x6f\x00\x00\x00\xff\xff\x99\xc2\x41\x45\xc4\x01\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/configmap-envoy.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap-envoy.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 4562, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x57\x5b\x6f\x1b\x37\x13\x7d\xd7\xaf\x18\xc8\x0f\x06\x3e\x64\x2f\x72\x12\xf8\xf3\x3e\x15\x88\x0b\xb4\x0f\x49\x8a\xd8\xc8\x2b\x41\x71\x47\x12\x6b\x2e\xb9\x25\x67\x55\x0b\xae\xff\x7b\xc1\xa5\x2e\x7b\xd5\x2a\x4e\xf9\x90\xd8\x3b\x33\x87\x73\x21\xcf\xa1\x79\x29\xbf\xa3\x75\xd2\xe8\x0c\xb6\x8b\xd9\x93\xd4\x79\x06\x9f\x8c\x5e\xc9\xf5\x67\x5e\xce\x0a\x24\x9e\x73\xe2\xd9\x0c\x40\xf3\x02\x5d\xc9\x05\x66\xf0\xf2\x02\xf1\x37\x54\xc8\x1d\xc6\x5f\x0e\x9f\xe1\xf5\x75\xef\x95\x41\x29\x95\xa1\x08\xf5\xd6\xec\x22\x51\xa3\xf9\x90\xef\x5c\x55\xe8\xe2\x6d\xd8\x30\xf8\x2b\xbe\x44\xe5\x3c\x3e\x80\x0d\x90\x7d\x7c\xef\x7a\x48\xa3\x06\x8d\x77\xbc\x50\x31\x15\xa5\xca\xe0\x9f\xa8\x0e\xe6\x79\x21\x75\xc0\x01\xe0\x42\xa0\x73\x4c\x99\x35\x2b\x39\x6d\x32\x48\x72\xdc\x26\xba\x52\xea\xe0\x90\xe7\x16\x9d\x3b\xf8\x03\x38\x23\x9e\x90\x58\xef\xfb\xc9\x15\x16\x37\xb7\x71\x1a\xa7\xf1\xa2\x61\x2c\x8d\x25\xb6\xf5\x75\x65\xb0\xf8\x98\xa6\xe9\xac\x36\x3a\xe2\x24\x05\xb3\xe8\x4c\x65\x05\x1e\xf1\x84\xaa\x1c\xa1\x3d\xfe\x1e\xed\xfb\x25\x75\xbc\xf8\x98\x2e\xd2\x23\xf2\x86\xa8\xbc\x61\xa5\x35\x64\x84\x51\xcc\x94\x24\x8d\x76\x19\xbc\xbc\x1e\x5d\x84\xd1\x1a\x05\x31\x92\x05\x9a\x8a\x32\x58\xc4\x69\x9a\xba\xd9\x09\xc3\x38\x6a\x54\x12\x9d\xa9\x71\xa2\xca\x5e\x9d\x8b\xf4\xb4\x8d\x90\x56\x54\x92\xd8\xd2\x22\x7f\x6a\xd4\xe6\x17\x6d\x2c\xba\x8d\x51\x79\xeb\x6b\x04\x05\x7f\x66\xfb\xfc\x43\x5d\x8b\xd4\xaf\xd6\x96\xde\xa7\x44\x9d\x4b\xbd\x66\x16\xff\xaa\xd0\x57\x33\xe6\x78\x81\x03\x59\x89\x2e\x83\xf7\x21\xf3\x2b\x78\xfc\x7a\xff\x35\x03\x42\x85\x05\x92\xdd\x41\xe5\xa4\x5e\xc3\xaf\xf7\x0f\x2d\xbb\xa1\x0d\xda\x70\x9e\xdd\xc9\xe5\x1d\x28\xc3\x73\x58\x72\xc5\xb5\x90\x7a\xdd\x0a\x59\x73\xa5\xb0\x89\xd7\x19\xb6\xa9\x28\x0e\x3e\xf5\xd0\xef\xfe\x8b\xa1\x1f\x1b\xbe\x2b\x31\x83\x87\xc7\x6f\xbf\x7f\x7a\x64\xf7\x5f\x1e\x7e\x66\x4c\x97\x0e\xea\x07\x46\x75\xc1\xb0\x86\xc7\x55\x67\xa9\x9c\xcf\x85\xf0\x99\x9a\x69\x0a\x53\x14\x46\xb3\x11\xeb\x3e\x0c\x2d\xc9\x95\x14\x9c\xb0\x57\x62\xc3\xc6\xc4\x86\x9f\x48\xe4\xb4\x56\x52\x61\x98\x5d\x82\x24\x12\x1f\xe1\xea\x7f\xa3\x3a\x20\x2e\xb1\xe8\xc4\x94\x56\x6e\x3d\xe0\x13\xee\x2e\x84\x7b\xc2\x5d\x0f\x67\xcb\x95\xcc\xb9\xef\xfc\x70\x69\x00\x64\x3d\xa1\xe4\x4c\xf0\x0b\xb7\xb1\xc6\x50\xe4\x7f\x1c\x48\x7a\x8b\x56\xae\x76\xcc\x55\xcb\x3f\xfd\x19\xe3\x8a\x58\x1d\xdf\x71\x8b\xc0\x95\x72\xb5\xc2\x2c\x49\xf6\x7c\x16\x2b\x23\xb8\x4a\xb4\x4b\x1a\x34\xbf\x56\x66\xc9\x55\x1c\xe8\xbf\xa9\x12\x89\xe3\x89\x74\x24\x4d\x14\x6e\x41\xe4\xd0\x6e\xa5\xc0\x88\x0b\x61\x2a\x4d\xa3\x0c\x36\xc5\x61\x0d\x16\x6b\xe2\xc7\x97\x24\xd5\x9d\x5f\x87\xef\xee\x66\x87\xac\x94\x74\x84\x7a\x80\xc3\xe7\x7b\x12\x5f\xcc\x67\xdd\x74\x1a\xe0\x17\x71\x70\x5a\x33\x70\x7a\x96\x81\x4f\xfc\xbc\x92\x8a\xd0\x86\xb3\xdb\xe2\xfb\x60\xe8\x34\x30\x24\x1b\x54\xd4\x13\x4e\xe3\x7a\xb3\x82\x6b\xbe\x46\xdb\xda\xf7\xca\x53\x4a\xce\x42\xc7\xda\x96\xf9\x2f\xde\x36\xcf\x60\xee\xff\x8f\xd7\xc6\xac\x15\xf2\x52\xba\x58\x98\x22\x99\xbf\x6b\x79\x07\x80\xee\xc0\x84\xc9\x51\xb0\xc0\x5a\xbf\x3d\x3e\xfe\x71\xd3\xb1\x7b\x21\x65\xa5\xc5\x95\x7c\xce\x60\xde\x69\x6f\x58\x23\xac\xd9\xbb\x0e\x7b\x2a\x13\x95\xb5\xa8\x89\x39\xb2\xc8\x8b\x9a\x83\x6e\xdf\xdf\x7e\x58\xfc\xff\xe6\xc3\xac\x7b\x9a\x8e\xaf\x88\xfe\x15\x68\xb6\xd1\x5f\x34\x76\x72\xee\xed\x3c\x5c\xba\x5f\x8d\xc7\x89\xa3\xdc\x54\xd4\x4d\xa1\x9e\xd0\xc0\x1c\xfb\x49\x58\x53\x11\xda\x6e\x7c\xfd\x95\x8d\x25\xb0\x3f\xb8\xfb\xb6\xf6\xcc\x5b\x69\xa9\xe2\x8a\xf5\xae\x61\x7b\xff\x70\xd7\x6a\x89\xec\x63\x00\xe4\xa6\x68\x1f\xcc\x26\xc2\xf5\xff\xae\x87\x62\xea\xb4\x47\x42\x0a\x4e\x62\x33\x64\x82\x9a\x77\xc3\x51\x49\x06\xed\x35\xec\x58\xe8\x9e\xcb\x06\x1e\x63\xed\x75\x94\xde\xb4\x2d\xbd\xcd\x95\xa3\x30\x96\x93\xb1\x63\x9b\x99\x12\x6d\x4d\xec\x19\x3c\xdf\x3f\x34\x5b\x30\xaa\x63\x5e\x35\xa5\x45\x26\x94\xf4\xe7\xb7\x21\x5b\x99\x97\x01\xec\xdc\xb6\xf3\xa2\x78\x89\xb6\x9c\x57\x97\x8b\xf4\xa5\x7b\xa1\x54\xa9\x8f\x37\x75\xe0\x3c\x6f\x6e\xba\x11\xe7\xc5\xfb\x42\xf9\x7e\x8b\x80\x4f\x48\xf8\x84\x88\x1f\xca\xb8\x82\xcf\x5c\x57\x5c\xc1\xf5\xdf\x1b\x49\xb8\x34\xcf\xd7\x50\x98\x1c\xbb\xd2\x51\xeb\x67\x78\x0d\xfe\xbc\x7a\x5c\xf6\x82\xbf\x9b\xd2\x8f\x11\x05\x81\x37\xa9\x08\x9c\xa5\xc1\x29\x15\x80\x41\x25\xb8\xeb\x2a\x01\xfc\x80\x1a\xc0\x9b\x14\x01\xce\xaa\xc2\x50\x73\xa6\xb4\x61\xaa\x35\x61\x4d\xea\x04\x4c\x68\xc5\x50\x6a\xc3\x8a\x01\x93\xaa\x01\x6d\xe5\xb8\x1b\x50\x0e\x98\x56\x8f\x76\x46\xcd\xf7\xda\x30\x1c\x9c\x97\x92\x13\xe0\x88\xa4\x34\x2a\x9b\x00\x38\x2b\x30\x87\x75\x5e\x68\x5a\xdb\x4d\x41\x1d\x85\x67\xf4\x0f\xc3\xe1\xd5\x15\xa2\x59\x14\x45\xb3\xd9\xbf\x01\x00\x00\xff\xff\x9a\x3d\x14\x4e\xd2\x11\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/configmap.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 8564, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x59\xdd\x6f\xe3\x36\x12\x7f\xcf\x5f\x31\x48\x80\xdb\x04\x88\xa5\x04\xd8\x1e\x1a\xbf\xe5\x92\xf4\xb0\x6d\x92\x06\xb5\xb3\x8b\xde\x4b\x41\x53\x23\x8b\x67\x8a\x54\x49\xca\x8e\x2f\xdd\xff\xfd\x30\x24\xf5\x61\x5b\xde\xf5\xf6\x7a\x3d\x14\xd7\x3e\x34\x6b\x69\x3e\x7e\xf3\x3d\xa4\x5e\x5f\x47\x20\x72\x48\xde\x33\x59\xa3\x4d\x2a\x21\xb5\x4b\xb8\x56\xb9\x98\x3f\xb0\x0a\x3e\x7e\x3c\x62\x95\x78\x8f\xc6\x0a\xad\xc6\xb0\xbc\x3c\x5a\x08\x95\x8d\xe1\xa6\xa1\x38\x2a\xd1\xb1\x8c\x39\x36\x3e\x02\x50\xac\xc4\x31\x08\xeb\x84\x7e\x7d\x6d\x65\x2e\x03\x37\xc9\x0a\x24\xb6\x62\x1c\xc7\x40\x24\x3f\xa0\x44\x66\x31\x79\x6c\x1e\x07\x2a\xc9\x66\x28\x2d\x89\x04\x30\x81\x64\x97\x9e\x48\x83\xe6\x23\x80\x12\x6d\xf1\x88\x6e\xa5\xcd\xc2\x8e\xe1\x97\x91\x67\x3d\x81\xf8\x08\x82\x45\x47\xaf\xaf\xe0\xf4\x8f\xac\x94\x5b\x06\xf7\xb9\xe1\x17\x10\x2a\x43\xe5\xe0\x2d\x69\x38\x02\x58\x06\xd2\x35\x2b\xa5\x17\xbd\x47\xca\x2e\x23\x89\x6d\xc1\x6c\x79\x7a\x2e\xf5\x8c\xc9\x04\x15\x9b\x49\x9c\x1a\xc6\x85\x9a\x07\xe3\x09\xf7\x04\x1d\x6c\xbe\x72\x1a\x72\x26\x2d\xd2\x3f\x32\x61\xe9\x15\x18\xfc\xb9\x46\xeb\xc0\x05\x9a\xc4\x33\x6f\xb0\x05\xaf\x1d\xa0\x92\xd0\xa1\xca\x22\xf0\x06\x02\xe3\x1c\xad\xbd\xd7\xf3\x6f\x84\xf4\x9a\xb1\xac\xdc\x1a\xac\x33\x11\x52\x83\x24\x10\x82\xd4\x11\xc4\x06\xe3\x18\x8e\x77\x51\x54\x46\xbf\xac\x93\x4d\x05\x1f\x3f\x1e\x07\xe5\x47\x43\x1e\x2b\xc5\x0b\x9a\xc4\xa1\xc4\x12\x9d\x59\x27\x06\x2b\x6d\xdc\xdf\x98\xe3\xc5\x03\x7b\xb9\x53\xce\x08\xb4\x9d\x0b\x87\x5f\x0b\x0b\xae\x40\x50\x75\x39\x43\x03\x3a\x6f\x7c\x48\x8f\x99\x03\x66\x10\x66\xc4\x82\x19\xcc\x30\xd7\x06\xa1\x55\x08\x94\x6c\x24\xc0\x52\x8c\x9d\xf6\x82\x3c\x28\xb0\x68\x96\x68\x62\xba\x0e\xa8\xdd\x08\xc3\x17\xd9\xb1\x1d\x97\x2f\xf2\xc9\x54\x94\xb8\xcf\x21\xfe\x5d\xf4\x46\xc9\x5e\x60\xc5\x84\xf3\x41\xa5\xe7\x8d\xe9\xc5\x8e\xf9\x3a\x07\xd6\xe6\xdd\x97\xf9\x82\x34\x7e\x81\x23\xfa\xe0\x3f\xe3\x85\x50\xc4\x9d\xa0\x90\xe1\x59\x9f\x7b\xb7\xf2\xb8\x56\xce\x68\xf9\x24\x99\xc2\x09\xf2\xda\x08\xb7\xbe\xdb\x64\xf4\x00\x7f\xf0\xa8\x26\xde\xaa\xd8\xdc\x46\x9d\xaa\xdd\xc4\x6e\xdf\xf5\x7b\x5a\x62\x97\x3c\xe1\xb2\xb6\x0e\x4d\x22\x35\x67\x72\x7c\xf9\xd5\xc5\xc5\xdb\xce\x3a\x2a\xed\xdf\x43\xed\xd5\xc5\xd5\xe5\xb6\x4f\x0f\x70\xf1\x17\x3a\xed\xa6\x40\xbe\xd8\x04\x5f\x69\x29\xf8\x10\xf2\xf0\xe2\x3f\xf3\xd6\x6f\xae\x6f\xc8\x4d\xfb\x53\x8f\xd5\xae\x78\xf2\x62\x1b\x54\xdd\x93\x8d\x94\xdf\x47\x7e\x90\x96\x68\x51\x2f\xbb\x7b\xad\x9a\x0a\x30\xd7\x52\xea\x15\x55\xf1\x92\x19\xe1\x1b\x33\x95\xa6\xa9\x37\xa6\x46\x10\x03\x9c\x5c\x66\x61\xb6\xf6\xac\x0f\xbe\x16\x9b\xa9\xa9\x1d\x86\x7e\x48\x19\x25\xb8\x85\x95\x90\x12\xac\xa3\xff\xcf\x30\xd6\x35\x66\x4d\xe1\xf7\x98\xa3\x92\x60\x9d\x8f\x8a\x1d\x87\xc1\xd5\x80\xad\xba\x57\xdf\x30\x21\xbf\xaf\x50\x01\x23\xdc\x96\xe6\x58\x9e\x0b\x0e\x42\x01\x67\x16\x2d\xac\x0a\x54\xbd\xd6\x12\x91\x53\x87\x11\x1c\x81\x33\xa5\xb4\x0b\x80\x18\xb5\xec\x06\xff\x2d\xe6\xac\x96\xbe\x3f\x85\x99\xb9\x2a\x04\x2f\xa0\x44\xa6\x42\xc3\x6b\x15\x59\xc8\x50\x09\xcc\x3a\x4d\x5c\x0a\x6a\x69\xc2\x42\xad\x1a\x0f\x72\xad\x14\x72\xdf\xe7\x7a\xa6\x0e\x18\x32\x34\x6e\x87\xec\xed\x87\xb9\xc9\xe5\xfd\xee\xa3\x00\x1e\xed\xa4\x49\xb4\x75\x5a\x88\x76\xaa\x2d\xbe\xb6\x20\xd4\xdc\xd0\x28\x6e\x9c\x44\x0b\xd7\x39\xd4\x55\xc6\x1c\x52\x4a\xad\x75\x0d\xb5\xc5\x0c\x18\x64\x22\xcf\xd1\x90\xb5\x44\xb4\x3f\xef\x1a\x91\xc3\xed\x74\x83\xa6\xf9\x3b\x89\xda\x23\xcb\xe6\xd3\xcd\x7d\xe0\x33\xfc\xc7\x7d\x01\x37\xa1\xfd\x48\x34\x0f\x3a\x3b\x44\xce\x26\xc3\x8e\x38\xc9\xac\x3d\x44\x0a\xd1\xb5\xcc\xbf\xaa\x71\xda\xcc\x6e\x8f\xa5\x13\x78\x56\xe2\x05\x6e\x75\xc9\x84\x82\x89\xe6\x0b\x5f\xc6\x46\xd7\xf3\x22\x66\x2c\xaa\xa5\x5e\x03\xd7\x65\x59\x2b\xc1\x99\xa3\x92\x10\xae\x80\x47\x9d\xe1\xf5\x9c\x22\x37\xb9\x9d\x50\x5a\xce\xd1\x45\x99\x0b\x5c\xa7\x1c\x8d\x83\x5c\x1b\x28\xa7\xf7\x93\x04\x9e\x2d\x82\x45\x6e\xd0\x8d\x4a\x5d\x2b\x07\xb9\x90\xb4\x0a\x29\xeb\x90\x65\x34\xd2\x49\x8a\xc8\xc1\xa2\x6b\x97\xbc\x90\xe3\x36\xb3\xcf\x99\x7d\x62\xae\x18\x4a\x6d\x32\xaa\x0e\xaf\x7b\xdd\xc8\x67\x64\x2e\xd9\xdc\x17\x11\xa5\xda\x6c\x1d\xf5\x53\x7e\x73\xbd\x44\xd3\x16\xf1\xe9\xe4\x76\x72\xd6\xd4\xed\xbb\x16\x02\xa5\xfc\x69\x65\x90\x36\x0d\x61\x85\xc3\x31\x14\xce\x55\x76\x9c\xa6\x8b\x7a\x86\x46\xa1\x43\x9b\x08\x9d\x66\x9a\xdb\x94\x6b\xc5\xb1\x72\x36\xb5\x4e\x1b\x36\xc7\x74\xa9\x65\x5d\xa2\x4d\x4f\x2a\xa3\xff\x89\xdc\x61\x76\x76\x0e\xef\x68\x2c\x84\x4e\x26\x14\x3d\x85\x48\x06\xde\x2b\x11\x03\xb9\x8d\xea\xa8\xa9\x1f\xc6\xb9\xf7\xd9\xb7\x1f\xa6\xe7\x60\x75\x68\x8b\xdf\x7d\x6d\xe1\xfa\xe9\x5d\xdc\x75\x02\xbf\xdd\xc7\xe6\x5d\x1a\x03\xa9\x1c\x13\x0a\xcd\x79\x88\x6f\x54\xb9\x8a\x6d\xd5\xfb\xca\x07\x53\xa1\xa1\x72\x6d\x63\x89\x4b\x54\xae\x66\x52\xae\x93\xa6\xe0\xd5\x1b\x07\xb6\xae\x62\x23\x26\xd4\x4a\xab\x11\x41\xa0\xd6\xd9\x3f\x0a\x4c\x32\x3b\xd5\x0b\x54\x0f\x04\x68\x6f\x18\x2d\x4e\x4d\x6d\xe9\x08\xe4\x8a\xf5\xb7\x2b\xf7\x5f\x08\xe8\x79\x74\x83\xb7\x37\x47\xc7\x0b\x50\xda\x94\x4c\xee\xf5\x5c\x6e\x74\x09\x6f\xd2\x25\x33\xa9\xa9\x55\x1a\x74\xda\xad\x14\x88\x8c\x91\x2f\x75\x64\xeb\x9b\x08\xe0\xf4\x13\x59\xe3\x98\x5d\xd8\x34\x9c\x40\x46\xac\xaa\x24\x55\x98\xd0\x6a\x14\x37\x81\xe6\x55\xf3\xf3\x24\xfc\x16\x6a\x3e\x72\x05\x8e\x58\x25\x46\x84\x6f\xc4\x46\x95\xce\xce\xa2\x42\xa6\x32\xa8\xa8\x5b\x38\x4d\xc5\x13\x33\x24\xc6\x7b\x27\xd2\xcd\x22\x3d\x14\xe8\x28\xd0\xf5\x9d\x2f\xe6\x4a\x1b\xcc\xa8\x56\x07\x62\x1b\xf6\x71\x97\x6c\x4e\x86\x43\x12\x85\xca\xdc\xe2\x77\x5f\xdb\x09\xfb\x76\xf5\xa9\x1c\x79\xf4\xf1\x8a\xe9\x31\xb4\x8d\xc5\xa3\xeb\x4b\xe5\xab\x2e\x1e\x9d\xc3\x74\xf5\x4d\xc6\x36\x23\x2e\xfb\x43\xf6\xc0\xe3\xe3\x3f\x9b\xdc\x1f\xa1\xc9\x85\x8d\xf3\xcf\xf6\xf5\xff\xd9\xbe\xba\xe8\x1f\x74\xae\xaa\x2d\x3e\xdc\x3c\x35\x1d\x2c\x5c\x15\xfe\x64\x75\x6d\x38\xc6\x3b\xc8\x5f\x7d\x18\x1e\x01\xcb\x32\x5a\x21\xc7\xe0\xcf\x95\x85\xb6\x8e\xce\xb2\x97\x57\x83\xdd\xb3\x47\x1e\x0e\xb1\x73\x26\x25\xae\xc7\x57\x57\x17\x07\x1d\xda\x75\xed\x66\xba\x56\xd9\x34\x9c\x6f\xe2\x01\xd4\xbf\x02\x28\xfd\xca\xbc\xdb\xda\x07\x99\x92\x32\xec\xcb\x41\xae\xc7\x2e\xdc\xfa\x7e\x36\x41\xe7\x84\x9a\x8f\x07\x2e\x41\xa3\xb8\x1d\xda\xee\x5e\xf4\xaf\xdd\x39\x27\x9c\xd0\xc2\x35\x72\x03\xf0\xa4\xf9\x0b\xd3\x9b\xa7\xe6\xd0\x25\xb4\xf2\x77\x52\xba\xa6\x93\x9e\x5b\x21\x2a\xb8\xf3\x75\xf8\x17\x7f\xe6\xe9\x65\xfe\xb9\x4f\xdf\x0d\x22\x9b\x44\x99\x51\xda\x34\x48\x1a\xc3\xe5\x85\xdd\xd6\x7a\x72\x02\xd7\xb7\xef\xaf\x1f\x6f\xee\x6e\x61\x72\x37\x9d\xbe\x7b\xfc\xfb\x84\x9e\x76\xff\xb5\xf8\x3e\x14\x68\x10\x6c\xa1\x6b\x99\x85\xae\xf0\xc6\xc6\xc4\xa9\x8d\xc7\x42\x65\x42\x8d\x9a\xb2\x3d\x1c\x2c\xe3\xad\x84\xd1\x2f\xbd\x1e\xd9\xa1\xcb\xc5\x3c\x8e\x98\x14\x1d\x4f\x3d\x75\xea\xa9\x8f\x3b\xb7\x14\x08\x95\xc5\x3a\xd3\x1b\xc7\xbb\x50\x8f\x54\x1a\xde\xe6\xc6\xe4\x48\x72\x13\xea\x7f\xdc\x07\xd0\x97\xe8\x07\xa3\x0f\x54\xbc\x03\xcd\xd0\xa1\x29\x85\x42\x28\xf4\x0a\xa4\x56\x73\x60\x0a\xb4\xcc\x82\xf8\x96\xb7\x32\xda\x5f\xfa\x46\x37\xcc\xa8\x95\x57\x0e\x98\x14\x4b\x04\x96\x3b\x34\x9e\x8f\x73\x66\x85\x56\x4c\x82\x41\xa9\x59\xd6\xc0\xcb\x0c\x13\xea\x36\xba\x6b\x0c\x6f\xbf\x6a\x02\x52\x31\x3a\x93\x4e\x8a\xda\x65\x7a\xd5\xa3\xb8\x2c\x77\x63\x06\x4f\xda\x38\x5a\x2f\x0c\xc6\xac\x90\xc2\x3a\x54\x16\x4e\xb5\x0a\x69\x0b\x54\x73\x67\xde\x3d\x2c\x2b\x85\xf2\xab\x04\x53\x59\x2b\x0b\x7e\xd4\x35\x70\xa6\x00\x5f\x90\x83\x50\xf1\x52\x63\x30\x5e\x14\x4c\x06\x95\xce\x28\xd5\x5a\x01\xbc\x36\x32\x24\xa3\x57\x40\xbd\x0a\x4e\xfd\x43\xea\xdf\xe3\x34\xdd\xa8\xfd\x8b\x8b\xf4\x8c\xba\xa7\x9e\x91\xcc\x56\x48\x26\xd8\x5c\x69\xeb\xfc\xfd\x47\x4e\x83\xc5\xe7\x91\x9f\x21\x21\xae\x30\x41\x6c\xc9\x9b\xc9\x20\xd7\xb9\x4b\xe6\xc2\x15\xf5\x8c\x46\x83\x4f\xc6\x30\x20\x74\x85\xc1\x75\x36\xf5\xb8\x92\xc2\x95\xb2\xe5\xf7\xab\x91\x36\x48\xe1\x66\x42\xb6\xce\x27\x7b\xaf\x89\x9c\x3c\x3b\x06\x8f\x77\xc7\xeb\xb4\xe3\xd1\x3e\x52\x1b\x83\x8a\xaf\xc9\x1a\x06\xb6\x42\x2e\x72\xc1\x9b\xcb\xf5\x70\x71\x42\x1d\x72\xeb\xca\xfd\xc9\xfb\x74\xa5\xcd\x82\xa8\x0a\x83\x2c\x6b\xeb\xb4\x3f\x74\x2f\xe0\x34\xf6\x89\xb3\x73\x12\xa1\xc0\x3a\x46\xe1\xee\x73\x7a\x43\x90\xf1\x02\x6e\x9e\x9e\xe3\xb3\x94\x6b\x83\xbd\xca\x6f\x70\x0e\x5e\xcf\xf8\xef\x10\x7d\x63\x62\x6f\xed\xec\x8d\xdd\x1f\x7f\x1e\xe6\x75\x86\x71\x34\x70\x2c\xc5\xbc\x70\xd6\x61\x75\xdc\x89\x88\x5f\x66\x9a\x0e\x07\xd0\x12\x75\x8f\xc8\xe8\xeb\xd0\xf6\xc9\x3b\xe4\xab\x7b\xa2\x9a\x38\xac\x60\xc2\x1c\x4a\x29\x1c\x42\xa5\xb5\xec\xf1\xb4\x83\x62\xe0\x2a\xd8\x03\x4a\x5a\x55\x49\xa4\xed\x60\x45\xa5\xe1\xa3\x8d\x9f\xc0\xed\x4c\xef\x2d\xda\x61\xcf\x26\x3c\xfb\x51\x78\x11\x5e\xc2\x61\x48\x3a\xfa\x6d\x34\x1f\x0a\x74\x05\x9a\x1e\x00\x4a\xff\x3d\x10\x7a\x4d\xc7\xd2\xe4\xc5\x9e\xa8\xf0\xe0\x20\x38\x81\x74\x1b\x89\xbf\xcf\x88\x5d\x80\x8e\x09\x4d\xf9\xfb\xcf\x23\x05\x02\x67\x7e\xd9\x71\x9a\x9c\x16\xce\x36\x4b\x34\x22\x5f\x13\xc1\xf4\x7e\xd2\x13\x16\x48\xf7\xdd\x9f\xec\xe0\xe9\xc8\x3b\x4c\xed\x8e\x70\x40\x0a\xfe\x4b\x54\x0b\xa1\x3e\x95\x7f\x81\xe2\x93\xc9\xf7\x0f\x4f\x02\x5c\x4b\x89\xdc\x69\xd3\xd2\x0e\x6f\x41\xd1\x88\x20\x78\x38\xd5\x3e\x9f\xab\xfb\xb9\xb7\x57\xa4\x2d\x89\x91\xf1\xc0\xef\x21\xe3\xab\xb7\x97\x97\x9b\xa2\xbb\x65\xea\x37\xfc\x06\xd2\xef\x95\x0f\x35\x6d\xc4\x94\x17\xfe\xa3\x00\x2a\xd7\xe4\x76\xb3\xa9\x58\x91\x21\x67\xc6\xfa\xf5\xc5\x8f\x9d\xb6\x71\x56\xa4\xa4\xd7\xc9\x5a\xc5\xd7\xbd\xef\x0b\x0f\xcf\xd3\xe7\xeb\xfb\x9f\xba\xcc\xeb\x94\x37\xa1\x0d\x13\x32\xc8\x7e\xf2\x1f\xab\x9b\x05\x42\x58\x30\xb5\xa2\xdc\x6e\xe6\x72\x73\x24\xba\xde\x5c\x45\xc3\xae\xbc\xef\xa3\xbd\x5f\x6a\x2f\x07\x97\xda\xdf\xd7\x19\x8f\xdf\x3f\xde\xfd\x8f\xdd\x70\xb1\xbd\x9b\x8f\x46\xa3\xa3\xde\xcf\x7f\x07\x00\x00\xff\xff\x0a\x0b\x78\x42\x74\x21\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 8074, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x59\x5f\x6f\xdc\x36\x12\x7f\xf7\xa7\x18\xe8\x02\xb4\x05\xb2\x5a\x3b\x6d\x8a\x42\x40\x70\x50\x6d\x27\xe7\xc2\x5e\x2f\xbc\x9b\xe2\xfa\xb4\xa0\xa9\xd9\x15\x63\x8a\xd4\x91\x94\x1c\xc1\xf1\x77\x3f\x50\xd2\x6a\x45\xfd\xf3\x26\x57\xdc\xf5\xe1\xfc\x66\x72\xfe\x0f\xe7\x37\x33\x5a\x92\xb2\xdf\x51\x69\x26\x45\x00\x24\x4d\xf5\x3c\x3f\x3b\x79\x60\x22\x0a\xe0\x02\x53\x2e\x8b\x04\x85\x39\x49\xd0\x90\x88\x18\x12\x9c\x00\x08\x92\x60\x00\x4c\x1b\x26\x67\x29\xe3\xd2\x3c\x3d\x81\xff\x3b\xe1\x19\x6a\x3f\xaf\x24\xc1\xf3\x73\x4d\xa8\x53\x42\x31\x00\x4b\x72\x87\x1c\x89\x46\x7f\xb1\x3f\xae\xa8\xfe\x06\xeb\xdb\x8b\xdb\x00\x22\xdc\x92\x8c\x1b\x30\x98\xa4\x9c\x18\x84\x48\xa2\x16\xdf\x19\x88\x49\x8e\x60\x62\xa6\x5f\xc3\x63\xcc\x68\x0c\x52\x20\x30\x0d\x8a\xed\x62\x03\x7f\x3f\x01\xe0\xe4\x1e\xb9\xb6\xb6\x81\x75\x21\x80\xd2\xac\xf2\xdf\xa7\xa7\x19\xb0\x2d\x08\xec\x99\xe8\x79\xa5\x7a\x80\x7c\xef\xfd\x98\x1f\x95\x14\x14\xd1\xfe\x5f\x55\x79\xd2\x77\xcb\x12\x58\x5a\x45\xc4\x0e\xe1\xd5\x03\x16\xaf\xe1\x55\x4e\x38\x04\xef\x1a\xd1\xa5\x6d\x7e\xd4\xc4\xf6\xba\x34\xfe\xa0\xa9\x64\x83\xe7\xe7\x00\x3c\xfb\x8f\xe5\x7e\x7e\xf6\x4e\x3a\x26\x94\xe1\x3f\x38\x4a\x84\x90\x86\x18\x26\x45\x1d\x06\x1a\x23\x7d\xd0\x59\x32\xa7\x52\x6c\xd9\x6e\x96\x4b\x9e\x25\x38\x43\x91\xcb\x22\x28\xd5\x30\x41\x79\x16\x21\x7c\x9f\x2a\x26\x0c\xbc\xf2\xd7\x75\xe0\xfd\x5f\x89\xc6\x25\x31\x31\x78\x35\x77\x42\xd2\x8a\xd3\x2f\x48\xc2\xbd\x1f\xc0\x87\x2f\xa0\x63\xf2\xe6\xed\xcf\x3a\x4b\xf6\x26\x0d\xab\xfc\x16\x65\xa3\x6a\x74\x8a\x34\x38\xd9\xe7\x54\x9a\x4e\x50\x49\x66\xa4\xa6\x84\xe3\xa5\x20\xf7\x1c\xa3\x7d\x3a\xd8\xb6\x43\xa8\x30\xe5\x8c\x92\x73\x99\x09\x53\x99\x5f\x9f\x68\xe7\x15\x0c\x13\x97\x99\xe0\x1a\xbb\x8c\x67\xed\x1c\x39\xe9\xd2\x46\x11\x83\xbb\xa2\x4a\x8d\x92\x9c\x33\xb1\xfb\x98\x46\xc4\x60\x75\x04\x90\x90\xcf\xab\x4c\xed\xd0\x8a\x69\x4e\x3e\x0a\x92\x13\xc6\xad\x2f\x01\x9c\x5a\x41\xc8\x91\x1a\xa9\x2a\xae\x84\x18\x1a\x5f\xb7\xde\xfe\x51\xcf\xbd\x57\x22\x47\x55\x40\x99\xc5\x83\xd7\x03\x4f\xb0\x57\x27\xfb\x42\xae\x8d\x6d\x21\x88\xfd\xe3\x8e\xdd\x03\x46\x1d\xe9\xcc\x91\xd6\x0f\xd8\x6f\xa1\xa7\x8c\x1e\x64\x1a\x23\xb8\x2f\xc0\xc4\x08\xdf\xd5\x38\xf4\x1d\x68\x54\x39\xa3\xe8\xc3\x7b\xa9\xf6\x4a\x30\x82\x43\xe5\x6a\x78\xc4\x2a\x09\xf0\xc8\x4c\x6c\x5d\x00\x22\xa2\x3d\xad\xdf\xd2\xb3\x8e\x99\x06\x92\x4b\x16\xe9\x06\xe8\x0e\x82\x20\x65\xf4\x81\x89\x5d\x69\x00\x25\x82\xa8\xa2\xe1\x1d\x88\xb2\x13\xe7\x3a\x48\xf8\xaf\x21\x80\xf5\x2a\x94\xd6\x85\x36\x98\xb4\x63\x16\xa3\x62\x86\xd8\xe7\xb6\x66\x9c\xa3\x6a\x2e\x1a\x68\x2b\x39\x9b\x63\x1a\x13\x65\xf6\x56\x74\xa0\x68\x00\x7d\xec\x9f\x66\x11\x52\xa2\xfc\x52\x90\xcf\xe4\x9c\x89\x4f\x48\x4d\x00\xde\x96\x70\x8d\x5e\x4b\xf6\x14\x54\x3d\x3d\xc1\x57\x03\xd4\x10\x3a\x4d\x21\xd4\xb1\x3a\xc6\xa5\x57\xc0\x54\x3b\x5e\xbd\x9b\x90\x52\x8b\x18\x8b\x6e\xb7\x9c\xd5\xf7\x33\x52\x11\x74\x11\x6a\xc7\xe5\x3d\xe1\x7e\xaa\x98\x54\xcc\x14\xe7\x9c\x68\xbd\xef\x2d\x95\x82\xde\x55\xd5\x2a\x8e\x10\xd0\x6b\x23\x00\x54\x0a\x43\x98\x40\xd5\x4a\xdd\xac\xee\xf1\x11\xd3\x54\xe6\xa8\x8a\xbd\x8d\x35\xb1\x06\x6f\xee\x75\x50\x92\x25\x64\xe7\x14\x17\x40\x79\xe4\xda\xe6\xd2\x7a\x1d\x2c\x9d\x60\xac\x9d\x8a\xb3\x7b\x78\x7e\x9e\x8f\x48\xfc\xd2\xd4\x96\x57\x1e\x7b\xb6\x8d\xf6\x85\x18\xb2\x1b\x8e\x45\xa3\x7b\x99\x71\xbe\x94\x9c\xd1\xc2\x41\x95\x9a\xbf\x43\xd2\x56\x1b\xf2\x47\x52\x68\xcf\x15\x49\xd4\xae\x15\x5c\x1b\x5e\xaf\x89\xac\xe7\x9c\xcf\x66\x89\x14\xcc\x48\xc5\xc4\x2e\x8c\x22\xf5\x2e\x38\x7b\x7b\x7a\xf6\xd3\xc8\x13\xe1\x72\xb7\x63\x62\xe7\x73\xcc\x91\xbb\x2a\xad\x28\x2e\x77\x1b\x99\x99\x34\x33\x9b\x92\xe2\x5d\xdf\x93\x9e\x84\x3a\x24\xfd\xbe\x79\x60\x08\xf5\x6f\xda\x45\xd6\x83\x3a\xa2\x37\x9f\xb4\x14\xc3\x91\xb5\x44\x91\x4c\x08\x13\xce\xe1\xd0\xcb\x95\x9f\x0b\x9f\xf2\x4c\x1b\x54\x17\x25\xc7\x40\x27\xaf\x89\xa5\xc0\xce\x40\xd9\x0a\xf3\x8c\x78\x3d\x5d\x83\x63\xe8\xa8\xc1\x1a\x69\xa6\xf0\x83\x4a\xa9\xcd\x87\x2b\xdd\x1b\x31\xc9\xa8\x4c\x9b\x83\xdd\xae\xc0\xf2\xb2\x8e\xc3\x40\x46\x3a\xbc\x7d\xa0\x6f\xde\x3d\xcf\x76\xb6\x12\x7b\x0a\xea\x8b\x77\xbd\x1a\x69\x71\x8c\xba\xfb\x80\x98\x12\xce\x72\xbc\x21\x9f\x57\xa8\x72\x54\xe7\x52\x08\xa4\x16\xdb\xc3\x1d\xba\xfe\xf7\x34\xbc\xc0\x5d\x16\xdd\x41\x42\x2a\x95\xe9\xd4\x45\x03\x46\x4b\x69\xdb\xcd\x2f\xa7\xbf\x9c\x4e\xdd\xdb\xe2\x68\x13\x28\x24\x11\x13\xa8\xf5\x52\xc9\x7b\x6c\x8b\x06\x88\x8d\x49\x3f\xa0\x71\x0f\x01\x52\x62\xe2\x00\xe6\x96\xb3\xe8\x5e\x0d\xd9\x00\xc0\x04\x33\x8c\xf0\x0b\xe4\xa4\x58\x21\x95\x22\xd2\x01\xbc\x75\x48\x52\x54\x4c\x46\xcd\xe5\x8f\xae\x00\xc3\x12\x94\x99\x19\xe4\x45\x91\xbb\x11\xa9\x80\x78\x79\x7b\xb1\x59\x84\x37\x97\x8e\x9c\xdc\x86\xfe\xbd\x92\x49\xd7\xa7\x2d\x43\x1e\xdd\xe1\xb6\x7b\x6e\x87\xac\xc3\xae\x97\x9f\xf5\xae\x4b\xc6\x65\x19\x91\xfd\xb8\xe6\x5b\x03\x26\x2c\x5a\x2d\xc3\xf3\xff\x95\x59\x65\xf5\xb6\xa8\x07\x47\x7d\x14\xb9\xfb\xcc\x8f\xdb\xcf\x7a\x6c\x7b\xc7\x0f\x0b\x5a\xdf\xeb\xce\xca\xe6\xea\xec\xd5\xdb\x44\x6d\x97\x26\x18\x45\x28\xae\x48\x92\xda\x6d\x61\xd8\x98\xe5\xd5\xf5\xed\x7a\xb3\xbe\x0b\xcf\x2f\x37\xab\xf0\x66\x79\x7d\xb5\xf8\x30\x66\xd6\xb4\xf0\x91\x6e\xe8\x2a\xba\xb8\x5a\x85\xbf\x5e\x5f\x6e\xfe\x79\xb1\xda\xdc\x84\x77\xab\x7f\x84\x56\xe1\x66\x7d\xbb\x09\x17\x7f\x0c\xea\x3d\xf3\x06\x84\x9d\xdf\x2e\xde\x5f\x7d\x98\x7a\x3e\x03\x5b\x58\x35\x84\xf5\x40\xbb\x17\x35\x92\xa6\x0d\x51\x0f\x1d\x2b\xfd\xe1\x72\xf9\xa2\xf2\x4f\x92\x09\xf0\x5e\x77\xa7\x9c\x9e\xf4\xc1\xa8\x29\xd4\x32\x53\x14\x75\x30\xb6\x7e\xd6\xf7\x95\x04\x30\xf2\x0f\x92\xf0\x51\xa2\x2f\xc0\x44\x64\xd7\x84\xb3\x37\xdd\xfd\xb3\xcf\x5c\xf7\x91\x7a\x22\xb9\x9b\x14\xd2\xb5\xbb\x9a\x87\x6f\xec\x54\xaa\x87\x60\xc8\x19\x9b\x9d\xc0\x25\x96\xa7\x2a\xd1\x39\x1a\x3a\x2f\xe7\xdd\x7a\x70\x1e\xe9\x92\x16\xcb\x95\xe4\x4b\x4e\x04\xae\x6c\x97\x65\xa6\x68\xed\xed\x5d\xdd\xf5\x04\x6d\x47\x83\xc9\x69\xd4\x99\x21\x8e\x1b\x4a\x07\x59\xfe\x8c\xd9\x74\x50\xf0\x5f\x60\x20\x7d\xb9\xf3\xda\xce\x7a\x36\x39\xc2\x56\x99\x68\x9f\x0c\x4e\x77\xaf\xbe\x77\x3a\xc5\x0f\xbe\xce\xa9\x7f\xf4\xc8\xe7\x8a\xaf\x17\xa7\xf3\x8a\xca\xb9\x6c\xed\x57\xdd\x79\xab\x5e\xe8\xde\x33\xee\xf6\xb1\x79\x4e\xd4\x9c\xb3\xfb\x79\xb9\x38\xce\x0f\xeb\xa3\x6f\x92\x94\x77\x3f\x42\x1c\xff\x78\x7b\x66\xb7\x69\xc3\xcc\xc4\x55\x92\x1c\xa2\x9b\x8f\xeb\x8f\xe1\xf5\x66\x7d\xbd\x72\x57\xfc\xde\xeb\x3b\x52\xde\xe2\x76\x71\x39\xf4\xb1\x60\xda\xa9\x3f\x71\x6e\xfd\x6a\xdd\x47\x2e\x16\x13\x72\xff\x3f\x3c\xfd\x47\xc3\xd3\xde\xb6\xab\xc5\x6a\x1d\x2e\xce\x2f\x37\x57\xcb\xff\x9e\x65\xda\x10\x93\x69\x3f\x95\x91\xa3\x75\xbc\x8f\x3a\xb0\xf1\x42\x3b\x1d\xa1\xfd\xcb\x74\xd5\x0a\xbb\x28\x2a\xa3\x27\x7b\x6a\x9f\xc2\x6e\x2d\xb7\x82\x17\x01\x18\x95\x0d\x25\xb3\xfa\xe0\x54\x42\xdb\xac\x6e\xc6\x63\x1a\x1c\x34\x1c\x1f\xaa\xeb\x40\xe8\x48\xfb\xd8\x6f\xd6\x07\xcd\x3a\xd2\xb3\x2c\xd2\x33\xbb\x5f\x4d\xea\x54\x99\x98\xeb\xe8\x48\xbf\xc6\x8d\xc9\x34\xae\x2d\x04\x3d\x4a\x65\xe2\xe2\xb7\x47\x33\x6c\x56\x15\x6b\x23\x1f\x50\xbc\x6c\x15\x52\x85\x46\xcf\x4b\x6a\xfd\x95\xd3\xbc\x73\x5f\xbd\x80\xee\x47\xfa\x63\x42\x3a\x83\x58\xea\xca\xb0\x76\xff\x1e\x0f\xdf\x68\xf4\xbf\x29\x74\x53\x61\x4b\x95\xfc\x84\xd4\x60\xd4\xb6\xac\xa9\xd7\x76\xe8\xdd\x0f\xa2\x6b\x2b\xa5\x0b\x16\x24\x8b\x18\x0a\x8a\x43\xd3\xcd\x68\x5b\xb2\x7f\xf8\x39\x65\xaa\xfc\xf4\xdc\xec\xd3\x3f\xfd\xf8\xe6\xf4\x74\x70\xcd\xef\xbb\xd1\x4b\x55\xef\x60\x7a\xf6\xad\x4e\x6f\x48\xda\x76\xa8\x15\xb3\xa9\x9f\x24\x8e\x28\xd2\x09\xf1\x7d\xae\x31\x5d\xdf\x3e\xc1\x4c\x21\x54\x55\x1d\x4e\xee\xcb\x93\xd6\xf7\x6e\x7f\xea\xab\xf7\x81\x4f\xa6\x36\x7d\x84\x37\xd5\xde\xff\x7d\x61\xbb\x65\x82\x99\xc2\x29\xa0\xfa\x17\x45\x4f\xc8\x08\xf7\x04\x5e\xf9\x93\x61\x0d\xc9\x3f\xbb\x59\x6d\x18\x52\x19\x85\xc2\xb0\x70\x94\x67\x78\x1b\x97\x1c\xab\x87\xd6\xda\x2a\x5b\x87\xc1\xe8\x22\xd7\xe6\xec\x2b\xaa\x1d\x9d\xcd\x66\x27\xff\x0e\x00\x00\xff\xff\xbc\x0c\xca\x7e\x8a\x1f\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/enable-mesh-mtls.yaml": &vfsgen۰CompressedFileInfo{ - name: "enable-mesh-mtls.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 1203, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x92\x3f\x6f\xdb\x30\x10\xc5\x77\x7d\x8a\x87\x64\x48\x52\xd4\x2c\x8a\x6e\xda\xdc\xa6\x83\x01\xb7\x0d\x6c\x27\x6b\x71\x16\x4f\x16\x61\x8a\x14\x78\x47\x07\x81\x90\xef\x5e\xd0\x7f\x50\xc3\xed\xd2\x21\x53\x37\x89\x7c\x38\xbe\x7b\xbf\x37\x8e\x70\x2d\xcc\x13\xf9\xcc\x62\x1a\x9f\x45\x39\x2d\x58\x62\x4e\x0d\x0b\x5e\x5f\xab\x6b\xdc\xb3\xa8\x0b\xa4\x2e\x06\xa4\xec\x19\x1a\x61\x9d\xd0\xda\x33\x6e\xfb\xbb\xd5\x7c\x89\xe7\x8e\x03\x94\xfc\xd6\x85\x4d\xb9\x9e\x3e\xcc\x20\x9c\x76\x9c\xde\x83\xe4\xec\x17\x36\xb2\x84\x1b\x45\x47\x3b\x86\x38\xcb\x0d\x25\x53\x5d\xe3\x4b\x16\x8d\x3d\x27\x48\x17\xb3\xb7\x20\x6b\x21\xae\x77\x9e\x12\xec\x85\x01\x41\x1b\x13\xa2\x76\x45\xce\x69\xe7\x8a\x55\xed\x48\x61\x63\xd0\x9b\x8b\xd9\x34\xb8\x27\x4e\xe2\x62\xa8\x11\x58\x9f\x63\x2a\x2e\x8d\x13\x75\xd1\xb8\xf8\x61\xf7\x91\xfc\xd0\xd1\xa7\x6a\xeb\x82\xad\xcf\xb7\x5d\x64\xcf\x55\xcf\x4a\x96\x94\xea\x0a\x08\xd4\x73\x8d\x2b\x1a\xdc\xe4\xb0\xce\xd5\xf1\x50\x06\x6a\xb8\xc6\x38\xc2\x2c\xd8\x33\x09\x9b\xef\xa7\xe3\x12\x22\xe0\x69\xcd\x5e\xca\x10\x20\x1d\x24\x7f\xea\x8b\x54\x06\x6e\x8a\xac\x8b\xa2\x35\xae\xb6\x79\xcd\x29\xb0\xb2\x18\xcb\x2d\x65\xaf\x46\x76\xcd\x89\x94\xf1\xb1\x21\x5f\x5c\x68\xa2\xb6\x75\xcd\x43\xf4\xae\x79\x39\x3c\xa3\xa7\xf7\x80\x3e\x5a\xae\x71\x3f\x5b\x4e\x3f\xcf\xbf\x56\xd5\x64\x32\xa9\xaa\x71\x9c\x9c\xb3\xdf\xf8\xb8\x26\x6f\x7a\xf5\x62\x38\x14\xb8\xb6\xd8\x29\x68\x62\x4a\x2c\x43\x0c\xb6\xd0\xbd\x84\x51\x70\x37\x31\xb4\x6e\x93\x13\xa3\xf1\x8e\x83\xee\xc3\x2f\x17\x59\x18\x7d\xd6\x4c\x1e\x7f\xa9\x49\x75\x0d\x0a\x2f\x27\x84\xb8\x2d\x2b\xdf\xc1\x05\x68\xc7\xe8\x59\xba\xb7\x80\x77\x4c\xf1\xed\xc9\xbd\xfb\x37\x38\xb3\xe5\x6a\xf6\xe3\xe7\xb7\xc7\xd5\xe3\x74\xbe\x07\x54\xf8\xb0\x97\xfd\xe8\xff\x28\x87\x53\x49\x8f\x1d\x05\x87\x7d\x0f\x7f\x7f\xfd\x0a\x00\x00\xff\xff\x0e\xe2\x1a\x5a\xb3\x04\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 507, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x90\x31\x4f\xc3\x30\x14\x84\x77\xff\x8a\x53\xf7\x04\x75\xf5\x06\x62\x44\x08\x31\x74\x7f\x89\x5f\xcb\x13\x2f\xb6\x15\x3b\x91\x50\xd4\xff\x8e\x5c\x37\x50\x11\x10\xa3\xad\xbb\xef\xde\xdd\xb2\x34\x90\x23\xda\x03\xe9\xc4\xa9\x3d\x69\xe8\x48\x5b\xc7\x47\x9a\x34\xbf\x04\xf7\x28\x69\x9c\x62\x96\xe0\x1f\x26\x77\xe2\xdc\xb2\xa7\x4e\xd9\xe1\x7c\x36\x14\xe5\xc0\x63\x92\xe0\x2d\x62\x50\xe9\x3f\xee\xe6\x7d\xc7\x99\xf6\xe6\x5d\xbc\xb3\xf8\xc5\x6f\x06\xce\xe4\x28\x93\x35\x80\xa7\x81\x2d\x24\x65\x09\x4d\x14\x0d\x79\x59\xbe\x2e\x99\x2b\xb9\xe4\x54\x61\x8a\xd4\xb3\x45\x91\xbc\xb2\x32\x25\x6e\x9f\xd7\xef\xaa\x52\xea\x58\x53\x01\x03\x14\xa3\xc5\x85\x79\x79\x8e\xd5\xb1\xb5\x57\x27\xea\x11\xab\x23\x45\xee\x0b\x66\x10\x7f\x3f\x93\x68\x69\x6c\xb1\x37\x40\x62\xe5\x3e\x87\xb1\x86\x0c\x94\xfb\xb7\xa7\x9b\xd4\x4d\x2e\x70\x1d\xd8\xf3\xa6\xd9\x6e\x77\xcd\x06\xe6\x75\xc6\xbf\x06\x58\x49\xec\xdd\xf7\xc7\xbf\xa5\x7e\xd4\x6a\x9a\xc6\xdc\x40\x3e\x03\x00\x00\xff\xff\x7c\x14\x17\x52\xfb\x01\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 541, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\x91\xcd\x6a\xeb\x30\x10\x85\xf7\x7e\x8a\x21\x77\x2d\x63\xc3\x2d\x04\x3d\x43\xe9\xa2\x29\xd9\x4f\xa5\xa9\x3b\x54\x96\x84\x46\x35\x0d\x26\xef\x5e\x2c\xd9\x10\x9c\x66\xe7\x9f\xef\x7c\x33\x9c\xc1\xc8\x67\x4a\xc2\xc1\x6b\x98\xfa\xe6\x8b\xbd\xd5\x70\xa2\x34\xb1\xa1\x66\xa4\x8c\x16\x33\xea\x06\xc0\xe3\x48\x1a\x58\x32\x07\x15\xd9\x85\x3c\xcf\xd0\x9e\xd1\x7d\x93\xb4\x53\x35\xc0\xf5\xba\x82\x12\xd1\x90\x86\x05\x79\x25\x47\x28\xd4\xbe\x6c\x9f\x2b\xe5\xf0\x9d\x9c\x2c\x62\x00\x8c\x51\x43\x71\x96\xd7\x54\x13\xf7\xf1\x9a\x84\xba\xc4\x96\x90\x48\x66\xd1\xc4\x90\x72\xf1\xa9\xf2\xa8\xa1\x7f\xea\xfa\xae\xf0\x75\xf5\x21\x45\xa3\x7e\xac\xc0\x3f\xb0\x9c\xc8\xe4\x1d\xdb\xdf\xb0\x9f\x39\x47\x59\xe1\xf1\xed\xf9\x74\x83\x1e\xbb\x63\xb7\x23\x95\xa3\x01\xcd\x45\x59\x16\x13\x26\x4a\x97\x47\x23\xfe\xef\x83\x63\xf0\x9c\x43\x62\x3f\x34\x00\x42\x8e\x4c\x0e\xa9\x96\x32\xcf\x0a\xf8\x03\x3c\xdd\xb5\x7c\x38\xac\x3d\xec\x7a\x9b\xb6\x3b\x3e\xba\xcc\x22\x05\x72\xf2\x77\x91\xdb\x50\xf2\x76\xf9\xaf\x94\x6a\x7e\x03\x00\x00\xff\xff\xdc\xa0\xfa\x6c\x1d\x02\x00\x00"), - }, - "/charts/istio-control/istio-discovery/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 371, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8e\x4d\x6a\x04\x21\x10\x85\xf7\x9e\xa2\x2e\xa0\x90\xad\xbb\x5c\x20\x84\x19\x98\x7d\x8d\xfd\xd2\x48\xaa\x55\x2c\x9d\x8d\xcc\xdd\x43\xff\x0c\x84\xce\x26\x3b\x7d\xbc\xef\xab\x37\x06\xc5\x2f\x72\x37\x96\x0e\x75\x41\xba\x36\xd4\x0b\x34\xf7\x1a\xa0\xf4\x7c\x1a\x2e\xf1\x86\xaa\x31\x27\x4f\x8f\x37\xf3\x1d\xd3\xe4\xe9\x8a\xfa\x88\x01\xef\x21\xe4\x9e\x9a\x19\xc3\xfe\xd6\xcc\x92\xef\x2c\x2e\x2e\x3c\xe3\xb3\x8b\x5c\x11\x2a\xda\x66\x3b\x67\x7e\x63\x2b\xa7\x19\xff\xc1\x89\x2c\x25\x5e\xe0\x69\x0c\x72\x6b\xb2\xe2\x48\xd3\xe9\xb9\xa0\xf1\xc4\x8d\xbd\xa1\xa3\x1f\xb5\xc5\x6c\x4b\x94\xdc\xac\xee\xeb\x2d\x1f\xf3\xf7\x8e\x16\x0e\x87\xf8\x02\x01\x2b\xdc\xc7\x2b\xde\x6f\x0b\xdf\x21\xba\x3a\x89\xb8\x14\x4f\x9b\x6e\xfb\xd6\x9d\xf8\x8b\xaf\xa4\xb5\xd6\x8c\xf1\xda\xf6\x13\x00\x00\xff\xff\x52\xea\x8a\x5b\x73\x01\x00\x00"), - }, - "/charts/istio-control/istio-discovery/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 3474, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x56\xcd\x6e\x1c\xc9\x0d\xbe\xcf\x53\xd0\xa3\xc3\xee\x02\xd2\xac\xb4\xc9\x02\x46\x03\x39\x68\x65\x69\x31\xc8\x6a\x1d\x78\xe4\xe4\x10\xe4\x50\xd3\xcd\xee\x26\x54\x5d\xec\x14\xd9\x33\xea\x04\x01\xfc\x20\xf1\xcb\xf9\x49\x02\x56\xd5\x8c\x24\x5b\x31\x92\x20\x97\xc1\x54\x35\xf9\x91\xfc\x8a\x7f\x27\xab\x3f\x3a\x3f\xa1\xac\x46\xf2\xac\xd0\x72\x84\x86\xa4\xe6\x1d\xc6\x19\x5c\x68\x60\x40\xe9\x61\x4f\x0d\x42\xcd\xa1\xa5\x6e\xb1\x38\x39\x81\x37\x47\x91\x0d\xaa\x52\xe8\x64\x91\xf4\xab\x05\x80\x9b\x94\xa5\x76\x1e\xaf\x83\xdb\x7a\x6c\x2a\xd0\x38\xe1\xd3\x0f\xb7\x14\x2a\xb8\x78\x76\xe3\x1e\x2a\xf8\x71\x01\x10\x71\xf4\x54\xbb\x2b\x9e\x82\x9a\xcc\x02\xe0\x04\xae\x5c\x80\x2d\x82\x83\x76\xf2\x1e\xfa\x69\xfb\x3d\x0d\xae\xc3\x4a\x5d\xb7\x00\xc8\xff\x21\xd9\x5f\x00\x68\x74\x35\x6e\xdc\x30\x7a\x0a\x5d\x05\x17\xab\xf3\x0c\xf2\x0e\x85\xa7\x58\xa3\xa4\x18\x1d\xc8\xe0\xbc\xcf\x5a\x40\x41\xd4\x79\x9f\xec\x17\x29\x8b\xc4\x8e\x7f\x9d\x50\xb4\x9c\x00\xea\x71\xaa\xe0\xc7\xf3\xf3\xa1\x9c\x07\x1c\x38\xce\x15\xfc\x70\xfe\xdb\xd7\xb7\x94\x0d\xfd\xea\x06\x94\xd1\xd5\x98\x0c\xad\x45\x89\x0f\xd4\x41\xf9\x73\x14\xa9\x80\xec\xfb\xd9\x81\x5a\xd3\xbf\x1c\x13\x05\x4a\x1c\x04\xc2\x11\xcc\x93\x68\x71\x77\x70\xc1\x75\x28\x46\xe0\x38\x1e\xb1\xa4\x82\x3f\xff\xc5\x20\x30\xec\xb2\xbf\x3f\xbf\x7d\x73\xfd\xd3\xfb\x9f\x2b\xe8\xea\xc4\xca\xef\x12\x9f\x16\x43\xfa\xac\x2e\x76\xa8\x97\x3b\x8c\xae\xc3\xf7\x4a\x9e\xfe\x96\xac\x56\xf0\x3a\x71\x16\xb8\xc1\x0d\x7a\xac\x95\x63\x05\x7f\xff\x87\x91\xcb\x1e\x63\x76\xed\x60\xed\x04\x36\x23\xd6\xd4\xce\xa0\x3d\xc2\xc8\x0d\xb8\xa0\x74\xe6\xda\x96\x02\xa9\xdd\x3a\x05\xe7\x3d\xef\x05\x66\x9e\x40\x13\x1b\xa2\xd1\x51\x80\x7d\x4f\x75\x9f\x0c\x49\x82\x9a\x79\x8a\x09\x83\x04\xd0\x53\x47\x5b\x8f\xa6\xb1\x45\x90\xba\xc7\x66\xf2\xd8\xc0\xd6\x09\x36\xc0\x01\xbc\xdb\xa2\x17\xfb\x37\x72\x23\xc5\x52\xc4\x84\xe4\x7c\x44\xd7\xcc\x10\xa7\x10\x28\x74\x26\x64\xfe\x99\x29\x88\x4e\x7b\x8c\x26\x1f\x5e\x02\x4b\xee\xac\x12\xca\x5d\x8f\x11\x0d\x13\xea\x29\x46\x0c\xea\x67\xd0\x3d\x83\xce\x23\x0a\x70\xfb\x3c\xd6\x2a\xe9\x00\xc0\xd2\xf2\x86\x22\x36\x6f\xa6\x48\xa1\xdb\x64\xd7\x29\x74\xeb\x2e\xf0\xf1\xfa\xfa\x01\xeb\xc9\xb8\x5c\x1e\xf5\xc6\x88\x2d\xc6\xff\x52\x31\x93\xd8\x60\x60\x45\xf8\xf4\xe1\x9f\xbd\x8b\xcd\xa7\x0f\x1f\x61\x27\x2b\x3b\x0a\xb7\x6a\xc7\xe2\xd3\x80\x41\xe5\x34\x3d\x45\xed\x02\x34\xd8\x52\xc0\x4c\xfc\x2e\x75\x82\x84\x49\x01\x96\x23\x37\x97\x41\xe9\xb2\x44\xf7\x8b\x11\x74\xc8\x87\x65\xea\x0d\x9f\x8b\xdc\x61\x1c\x9e\x8b\x25\xb0\x9a\x63\x44\x19\x39\x34\x14\x3a\x3f\x67\x6a\x6f\x38\x02\x3e\x58\x9d\x62\xe6\xed\x6b\xe6\xb2\xc4\x19\xdc\xe3\x5c\x81\x60\x3d\x45\xd2\xb9\xb0\xc6\xa3\xa5\xa4\xa5\xe8\x3a\x94\xab\x1c\x48\x05\x9b\x8b\xd3\xcd\x0f\xe5\x4e\x79\x64\xcf\xdd\xfc\x7b\x83\x58\xde\x4f\x5b\x8c\x01\x15\x65\x45\xfc\x7d\xcf\xa2\x56\x69\xcb\xf2\xe8\x24\x2f\x24\x72\x9c\x3c\x82\xb8\xb9\x24\xda\x21\xdb\x0b\xad\x02\x81\xf5\xf3\x54\x4d\x70\x1c\x94\xc1\xe5\xcc\xa3\x36\x2b\xe7\x83\x7c\x91\xa5\x2e\x41\xee\x49\xfb\x9c\x8f\xd0\xbb\x9d\xdd\xdf\x63\x8e\xd6\x9e\xb3\x44\x6f\x4f\x6a\x6f\x90\x62\xb5\x0f\x9b\x8b\x4f\x1f\x3e\x1a\xb7\x5f\x25\xd2\xaa\xf6\x0b\x91\x2f\xde\xed\xb1\xb8\xef\x7a\xeb\x63\x56\xbe\xe6\x07\x09\x4c\x56\x2f\xca\xe0\x69\x20\x85\x9e\xf7\xe0\x39\x79\x2e\xd4\x60\xed\x62\xca\xaa\x6d\x9a\x16\x01\x6b\x2d\x24\x24\x0a\x52\xf7\x5a\xc1\x5a\x61\xeb\xbc\x0b\xd6\x8b\x79\x52\xf0\xec\x1a\x70\x75\x64\x91\xa7\xfd\x38\x7d\x2f\x44\xd7\x2c\x0a\xdc\x96\xd4\xac\x23\x3a\x31\x77\x64\x16\xc5\x01\xea\x7e\x8a\xc1\x22\xbf\x47\x1c\x9d\xa7\x9d\xcd\x93\x0d\xc6\x1d\xc6\xab\xec\x05\x71\xb8\xb4\x21\xf1\x9b\xf3\xa1\x34\xd9\xa6\x21\xbb\x75\xfe\x50\xf8\xe6\xe1\x38\x5a\x7d\x73\x32\xd9\xe0\xe8\x79\xb6\x6a\x31\xe4\xc7\x53\xe2\x49\xaa\x45\xc2\x39\x81\x5b\x1b\x8f\xb9\x7d\x83\x1c\x66\x61\x32\xf1\xbe\x10\x65\x73\x32\x96\xf9\xa9\x91\xfd\xd9\xe8\x5d\x40\x08\xa8\x7b\x8e\x56\x6d\x36\x61\x7f\x4d\xa7\xfb\x32\x68\xc2\xe1\x64\x5d\x37\x81\xad\xf3\x84\x4a\x9e\x0d\x4f\x4c\x0e\x6e\x3c\x85\x0e\x83\x95\x00\x36\xd0\x46\x1e\x4a\xf6\xaf\x66\x37\xf8\x5c\x6a\xeb\x16\x5a\xe7\x05\x4f\x0b\xbd\x7b\xf2\xf6\x8c\x56\xfb\x6e\xf2\x5a\x14\xe0\xdb\xed\x7c\xb8\xfa\x0e\x38\x9a\x48\x3c\x93\xc9\xc6\x11\x36\x07\xd4\xe3\x0c\xbb\x75\x63\x99\xec\x79\x46\xe7\xe0\x04\x3c\x76\xae\x9e\xe1\xfe\xb5\x00\x85\x2e\xa2\xe4\x86\xf2\x36\xf8\x19\x38\x60\x71\x61\x8c\xdc\x92\xd5\x53\xcf\x93\x6f\x00\xd3\xaa\x70\x50\x00\x33\xca\x51\xe1\xd5\xab\x57\x36\xe0\xf3\x6d\xa6\x26\x45\x83\xc3\xa8\xf3\x69\xaa\xa2\xb3\x24\x68\xa5\x24\x32\x0d\xd8\xac\x92\x54\x51\xb1\x1c\xa0\xc7\x29\x5b\x6e\x3b\xa7\xb8\x77\x73\x81\x7b\x73\x7d\x73\xf9\xfe\x97\xbb\xca\x66\x14\xac\x8b\x03\xc7\x35\x20\xd5\xa2\x25\xa9\x0b\x81\x35\x4d\x3e\xa3\x26\x55\x68\x02\x7d\xf2\xa1\x00\x6e\xee\xde\xad\xaf\xee\x2a\x60\x8b\xf8\x6b\x82\x6f\x6f\x6e\x2a\x08\x7c\x8c\x9a\x23\xc8\x1c\xea\x67\x11\x14\x5a\x3d\xc6\x5b\x6e\xb0\x82\xe5\xdb\x9b\x9b\xe5\xa2\x00\xa4\xcd\xcd\x52\x4c\x50\x6d\x70\x7d\xd6\xd5\x0a\xc4\xaa\xf6\x4e\x64\xf9\xc4\x7e\x4e\xf6\x5a\x69\xe7\x14\x4f\xad\x29\x0d\xa5\x1f\x65\xdf\x0b\x7c\xea\x83\x24\x87\x0e\xd7\x94\xee\xd6\x50\xdb\xa2\xcd\xc2\x3c\x40\xbf\x49\xd1\x7d\x93\x50\x26\xaf\x34\x3e\xbe\xa3\xd5\x6f\x44\x18\x23\x4a\x29\xa3\xc7\xb8\xcc\xa7\xf2\x2e\x16\x8e\xa2\xc7\x01\x35\xce\x87\x57\xfe\x13\x79\x9f\x5a\x6a\x19\x50\x03\x3d\x60\xbc\xea\xb1\xbe\xcf\x85\x9d\x77\x53\xbb\x7c\x87\x96\x02\xf9\x36\x29\xe3\xb3\xbd\x33\x75\x3b\x4f\xf5\xff\x15\x39\x95\x93\x41\x4f\x82\xb7\x57\x7f\x38\x98\xb2\x7e\x60\x8a\x8f\x9d\x20\xe1\x54\x2f\x05\xb8\x41\xb5\x6d\x97\xa3\xfe\xe4\xb4\xee\x6f\xdd\xc3\x75\xd0\x48\x98\x1e\xe7\xdc\x7e\xac\x44\x73\x27\xca\x65\xba\x35\x39\x6b\x7b\x5b\xb4\xb1\xc0\x11\xbe\xa5\x15\xae\x4e\x01\xd3\x26\x7e\x71\x7e\x7e\xdc\x57\xbf\x5b\x15\x2b\x97\x30\xb2\x90\xd2\x0e\xcb\xa0\xa0\xd0\xd8\x72\x69\x66\x6c\x1d\x9a\x86\x2d\x46\x5b\x64\x0e\x9a\xc7\x2d\x2a\x9b\xb3\x75\x0b\x5b\x8e\xf8\x18\x00\x34\x4e\x5d\x81\x27\x01\x49\x99\x90\x7b\xe6\x50\x82\x3f\x12\xf6\x62\x80\x95\xb9\xba\xf8\xb7\x34\xdc\xd1\x80\xff\x33\x07\xb6\x1c\x70\x68\x5e\x8a\x5f\x0d\xf7\x25\x12\x06\xf7\x40\xc3\x34\xc0\xde\x91\x66\x29\xa1\x50\x67\xbb\xde\x89\x1e\xb8\xb1\xbe\xe9\x5f\xe6\x61\xfb\x05\x5d\x5b\x4c\x03\xea\x3f\x27\xc7\xc2\xae\xe0\x42\x16\xff\x0a\x00\x00\xff\xff\x51\xec\xf9\x73\x92\x0d\x00\x00"), - }, - "/charts/istio-policy": &vfsgen۰DirInfo{ - name: "istio-policy", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - }, - "/charts/istio-policy/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 283, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8e\x41\x6e\xc4\x20\x0c\x45\xf7\x3e\x85\x35\xfb\x40\xc9\xa6\x1a\xa4\x76\xdd\x13\xcc\x9e\x82\x27\xb1\x0a\x18\x01\x93\x26\xb7\xaf\x92\xb4\x95\x66\x63\x59\xff\x3d\xcb\xdf\x15\xbe\x51\x6d\x2c\xd9\xe2\x62\x20\xbb\x44\x16\xb9\x75\x96\xa1\x48\x64\xbf\xc1\xf2\x87\x8d\x32\xea\x05\x5c\x29\xb7\xe7\xa4\x73\x8c\x54\xff\xc3\xcb\xfb\xdb\xa8\x5e\xd5\x78\x81\x40\xcd\x57\x2e\xfd\x88\x3f\x28\x26\xf4\xb3\xab\x1d\xef\x52\x31\xf1\x4a\x15\xcf\x17\x18\xa8\x44\xd9\x12\xe5\x0e\x5f\xb4\x7d\x4b\x0d\xcd\x02\xe2\x70\x16\x39\xb6\xc3\x87\x26\x8f\xea\xe9\x17\xce\xbd\x17\xab\xf5\xc4\x7d\x7e\x7c\x2a\x2f\x49\x1f\xfa\x39\x81\xf2\xc4\x99\x2c\x4e\xd2\x4b\x04\xf6\x7b\x87\xfd\xa2\x59\x7d\x1a\x8a\x45\xdf\xdd\xb2\x93\xa6\x5d\x0e\x55\x38\x0c\xe6\x3a\xae\xe6\x3a\xaa\x92\x27\xf8\x09\x00\x00\xff\xff\xd2\x9b\xe3\xae\x1b\x01\x00\x00"), - }, - "/charts/istio-policy/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - }, - "/charts/istio-policy/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 3060, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\x9b\x30\x10\xbd\xe7\x57\x8c\xa2\x1c\xda\x55\x80\xf4\x8a\xd4\x43\xa4\xee\x61\xd5\xaa\xaa\xba\x55\xef\x0e\x1e\x88\x15\xc7\xa6\xc6\xa4\x89\x68\xfe\x7b\x65\x43\x88\x21\x7c\x65\x77\xb5\x37\x34\xcc\xcc\x1b\x3f\xbf\x79\x2e\x8a\xe0\x01\x48\x1c\x33\xc1\xf4\x09\x3c\xd8\x6a\x9d\x66\x61\x10\xec\xf2\x0d\x2a\x81\x1a\x33\x9f\xc9\x80\xca\x28\x0b\x22\x29\x22\x4c\xb5\xfd\x88\x59\x92\x2b\xa2\x99\x14\x01\xc9\x32\x96\x08\x2f\x95\xd4\x13\x92\x62\x00\x0f\xc1\xf9\x3c\x9b\x15\x85\x07\x14\x63\x26\x10\xe6\x26\x7e\xc1\x98\xc3\xf9\x3c\x03\x30\xa1\x75\x15\x0a\x67\x00\x00\x0a\xff\xe4\x4c\x21\xfd\x92\x2b\x26\x92\xe7\x68\x8b\x34\xe7\x4c\x24\x4f\x89\x90\x75\xf8\xf1\x88\x51\x6e\x60\xcb\x1a\x03\xc2\x44\xc4\x73\x5a\xa1\x5c\x5a\xfe\xec\x69\x36\x07\xbf\xc4\x07\x48\x15\xc6\xa8\xde\x0a\xf0\x47\x5f\xb7\x0a\xd1\x14\xa2\xa0\xd0\x45\xcd\xf8\xd0\xd5\xc8\x25\x6d\xcf\xc8\x31\xd2\x52\xfd\x42\xb5\xcf\xc2\xea\x87\x07\x7b\xa2\xa3\xed\xe3\x31\x55\x98\x65\x4c\x8a\xfa\x8f\xf9\xb7\xc3\x53\x08\x1b\xd4\xc4\x6f\xde\x2b\x51\xd1\xb6\x4e\x03\x90\x29\x2a\xa2\xa5\x0a\xe1\x49\x38\xe1\x03\xe1\x39\x3a\xfd\xcc\xfc\x8a\x88\x04\x61\xb1\xc3\xd3\x12\x16\x07\xc2\x21\xfc\x0c\xfe\x6f\x9b\xe8\x27\x5c\x6e\x08\xf7\x4d\xf3\xeb\xe4\x35\x7b\x31\x24\x1a\x3e\xd8\x9a\x7f\xc0\x84\xfe\x08\xab\x66\x96\x07\x45\x61\x3b\xdf\x16\x57\x0c\x8e\x84\x16\x2e\x4b\x66\x30\x8a\x31\xc9\xb9\x6e\x0f\x58\x85\xbf\xbb\xd9\x97\x94\x3d\x3b\xa2\xf2\x53\xc9\x59\x74\xf2\x1b\xfd\xbc\x16\x5a\x17\x13\xcd\x09\x9c\x82\xea\x2a\x3a\x0f\x38\x91\xfd\x0b\x41\x06\xaa\x9b\x8b\x29\x5a\x1b\xd0\xab\x6d\xfa\x82\x3b\x1e\xbb\x5d\x0f\xfe\x22\x4b\xb6\x3a\xac\xc7\xb7\x19\xd7\x43\x94\x1b\x89\x22\xc2\xeb\x69\xdf\x4f\xd5\x1d\xc2\x6b\xe8\x6b\x02\xc1\xa9\xa4\x6b\xa1\xd9\xda\xb5\xba\x8a\x95\x3e\x69\xb5\x4a\xbe\x91\x0d\xf2\x61\x31\xb6\x2a\x8c\x0b\x34\xaa\xec\xb0\xad\xa4\xd0\xbd\xa0\xfb\xe7\xa8\xe8\x78\xb5\x43\xb7\x40\x26\x98\x74\x6b\xc3\xef\x38\xc1\x0d\x2f\x6f\xe7\xfb\x2d\xa4\x31\xeb\xef\xdf\xce\x89\x3a\x1a\x7d\x17\x9c\x65\x65\x82\xe2\x71\x09\x0b\xa6\x71\xef\xee\xeb\xdd\x97\xed\x01\x77\xc3\x77\x6c\xa4\x59\x22\x03\xef\x0f\x38\x5c\x9d\x73\x09\x75\x3e\x14\x65\x4a\xb9\xa8\xcd\x84\xdb\xe5\xb5\xc6\x7f\x20\x3c\x33\xa7\xce\x52\xce\x34\xcc\x97\xf3\x81\x16\x2e\x69\xc6\xdf\xac\x6f\xdb\x06\x1d\xaf\xd1\x61\xf4\x2d\xea\x08\x6a\x99\x4a\x2e\x93\xd3\xd7\x06\x2b\x4e\x74\x58\x1d\x43\x92\x18\xb3\xef\x57\x6b\xa2\x77\x7d\x3c\xeb\x2d\x4e\xd6\xf5\x12\x7a\x04\x33\x24\x99\x09\xa2\xb9\x43\x36\x13\x84\xd3\x25\x9d\x17\x88\x67\xb2\x7c\x7a\x04\xd4\x23\xa1\xce\xf0\x64\x19\x41\xfd\xc0\x7e\x5a\xad\x06\x84\xf5\x3f\x00\x00\xff\xff\x88\x28\xe1\xf2\xf4\x0b\x00\x00"), - }, - "/charts/istio-policy/templates/_helpers.tpl": &vfsgen۰CompressedFileInfo{ - name: "_helpers.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 1043, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x53\x4d\x6b\x1b\x31\x10\xbd\xef\xaf\x78\x2c\x0d\xb4\x01\x2b\x87\x42\x0f\x86\x9c\xd2\x1e\x4a\x21\x85\x06\xda\xb3\x76\x77\x54\x0f\x68\xb5\x5b\xcd\xc8\xb5\x49\xf3\xdf\x8b\x24\xc7\x1f\xa5\x86\x38\xb7\x41\xfb\xe6\xcd\x7b\x6f\x66\x1f\x1f\x6f\xae\xb1\xe6\x71\x09\x21\x85\x63\x4f\xba\x9d\xe9\x76\x4c\xa2\xb6\x5f\xd1\x12\xd7\x37\x4f\x4f\x4d\x46\x35\x9f\x36\xb3\x0d\x03\x74\x45\x08\x76\x24\x4c\xae\xd4\xfd\xca\x46\x35\xcd\x0e\xb7\xc0\x40\x8e\x03\xa1\x1d\x79\x43\xd1\x64\x64\x8b\xc5\xe1\x9b\x4d\x5e\x61\xee\x4a\xd3\x7d\xa6\x31\xdf\xad\x4f\x24\xa6\xe2\xe7\xc9\x73\xbf\x2d\x6d\x5f\xd7\x14\x23\x0f\x84\x3f\xd0\x98\x42\x8f\x0f\xef\x4b\xc9\xe3\x43\x72\x8e\x37\x68\x17\x07\x66\x0a\x43\xa9\xab\xd4\xbb\x48\x56\x09\x76\x3f\xd0\x25\xef\xb7\xf8\x95\xac\x67\xc7\x34\xc0\xce\x73\x31\x61\x9a\x1f\x54\xd9\x0b\x5e\xf3\x8c\x6c\x48\xd0\x51\x6f\x93\x10\x64\x1a\x09\x5f\x52\x47\x31\x90\x92\x54\xeb\x8e\xc9\x0f\x02\x1b\x09\x9e\x47\x56\x1a\xa0\x13\x74\xc5\x82\xb7\xdd\xb6\xc4\xf2\xf1\xfe\x21\x63\x39\xfc\x84\xcc\xd4\xbf\x33\xcd\x67\x87\x48\x9e\xac\xec\xf2\xeb\xa7\xa0\x96\x83\xd4\x04\xeb\x1b\x2b\x7e\xb3\xf7\xe8\x08\x49\xb2\x4e\x81\x2d\xe2\x77\x6a\xcf\xa4\x9c\x11\xa7\x49\xb3\xfb\x7f\xb0\xcf\xc8\x7d\xb8\xcf\x0d\x2f\x43\xbf\x68\x15\x5e\x0e\xb4\x6f\x8a\xad\xe5\xed\x2b\x57\x7f\x64\x67\x1f\x57\xa5\x34\xdf\x6a\x96\x95\x69\xef\xe2\xe4\xf5\x62\xb5\x73\xe4\xa0\x0e\xed\x95\x2c\xae\xa4\xfd\x87\xad\xce\xbd\xe4\x18\xcf\xd5\x27\x47\x7a\xb4\xfd\xfc\x7b\xad\x29\x0a\x4f\x21\x6f\xbe\x5c\xc0\xee\x9c\x2a\xca\xdb\x8e\xfc\xd9\x2b\x28\x98\x83\x8a\xe3\xa4\x2f\x51\xfd\x37\x00\x00\xff\xff\x26\x89\x11\x85\x13\x04\x00\x00"), - }, - "/charts/istio-policy/templates/autoscale.yaml": &vfsgen۰CompressedFileInfo{ - name: "autoscale.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 627, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x52\xcd\x6a\xf3\x30\x10\xbc\xfb\x29\xf6\x05\xac\x90\xef\xe8\x5b\xe0\x3b\xf4\xd2\x52\x4c\x9b\xfb\x46\xde\x84\xa5\xfa\x59\xa4\x75\x48\x62\xf2\xee\x45\x91\x5d\x0a\x69\x0a\x3d\xee\xac\x66\x76\x66\xd0\x34\xb5\xc0\x7b\x30\x5b\x74\x23\x65\xe3\xf9\x44\xc9\x48\x74\x6c\xcf\x06\x47\x8d\xd9\xa2\xa3\x67\x0e\x70\xbd\x36\x28\xbc\xa5\x94\x39\x86\x0e\x96\x1d\x87\xc3\xea\xf8\x6f\x47\x8a\xeb\xe6\x83\xc3\xd0\xc1\x53\x4c\x7c\x89\x41\xd1\xbd\xc6\x61\xb3\x48\xa4\xc6\x93\xe2\x80\x8a\x5d\x03\x10\xd0\x53\x07\x9c\x95\x63\x5b\x8f\xcd\x60\x16\xb4\xd4\xc1\x34\x81\xe9\xc9\x11\x66\x32\x2f\x0b\x5c\x2c\x00\x38\xdc\x91\xcb\x45\x04\x00\x45\xee\x54\x00\x52\x25\xde\xab\x14\x81\x2c\x64\x2b\xd9\xe3\xa9\x27\x71\x6c\x31\xd7\xa7\xbf\x57\x80\xa7\x7a\x1f\xc0\x73\xf8\x0b\xb1\x76\x57\x88\xb7\xf9\x0d\xd3\x81\xb4\xa7\x7d\x75\x51\x42\x7c\x6b\x55\x24\xaf\x8e\xeb\x79\x53\xfb\xfc\x4f\xe2\xe2\xd9\x53\xd0\x19\xfe\xb1\x3c\x00\x4f\x9a\xd8\xce\xcd\xb4\xa0\x67\xa1\x0e\x7a\xca\x71\x4c\x96\x66\x6a\x9a\xc7\xe5\xf6\x22\x66\x65\xfc\x42\xf4\x66\x70\x73\xa4\x84\x07\x7a\x57\x76\x7c\x41\xbd\xb9\x7b\x94\xd5\xca\x68\x1e\xb1\x4a\xf6\xb6\x6d\x9b\xf2\xcf\x28\x0c\x65\xfc\x0c\x00\x00\xff\xff\x73\xfa\x5d\xd6\x73\x02\x00\x00"), - }, - "/charts/istio-policy/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 669, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x91\x3f\x6f\xe3\x30\x0c\xc5\x77\x7d\x0a\xc2\xb7\x1d\xce\x3e\xdc\x76\xf0\x9a\x03\x6e\xeb\x90\xa1\x4b\x91\x81\x91\x99\x84\x88\x2c\x0a\xa4\x9c\xfe\x09\xf2\xdd\x0b\xc9\x29\x8a\xfc\x19\x8a\x4e\x24\x6d\xbe\xf7\x23\x9e\x30\xf1\x23\xa9\xb1\xc4\x1e\x74\x8d\xbe\xc3\x29\xef\x44\xf9\x0d\x33\x4b\xec\xf6\x7f\xad\x63\xf9\x7d\xf8\xe3\xf6\x1c\x87\x1e\x16\x61\xb2\x4c\xba\x94\x40\x6e\xa4\x8c\x03\x66\xec\x1d\x40\xc4\x91\x7a\x60\xcb\x2c\x6d\x92\xc0\xfe\xd5\x01\x04\x5c\x53\xb0\xf2\x1b\x40\x29\x10\x1a\xf5\x70\x3c\x42\xb7\x9c\x87\xee\x01\x47\x82\xd3\xa9\x2e\x60\x4a\x57\x06\x3a\x05\xb2\xde\xb5\x80\x89\xff\xab\x4c\xc9\x7a\x78\x6a\xbc\xc4\x0d\x6f\xbb\xba\xd9\xb1\x34\x2b\xf8\x31\xcb\x60\xb1\xfc\x07\xcf\x98\xfd\x8e\xd4\x15\xa0\xc9\xa4\x9e\xaa\xe8\x67\xb3\x72\x00\x07\xd2\xf5\xec\xa1\x84\x99\x9a\x5f\xd0\x6c\x29\x97\x12\xd8\x6a\xad\xf2\xd2\xa4\xda\xac\xae\xe1\x98\x98\x5e\x32\xc5\x92\x97\x9d\xc3\xa9\xd6\x17\x34\x3f\x59\x96\xf1\xe3\xd3\x40\x1b\x8e\x5c\xd2\xb4\xcb\x2b\xee\xb2\x6f\x90\x77\xec\x6b\x02\x23\x26\x2b\x32\x8a\x43\x12\x8e\xb9\x0e\x49\x86\x5a\x8d\xf4\xc0\x9e\x6a\x5f\x9e\xc6\x12\x9e\x27\x23\xaf\x34\x2f\x2b\xa5\xc0\xbe\xbe\xb3\x97\x98\x55\x42\x20\xfd\xd6\x8d\x9f\x99\x94\x25\x4c\xc9\x6e\xaf\x3e\xd3\xac\xc0\xbf\x84\x68\x5b\xf7\x1e\x00\x00\xff\xff\xd0\x3e\x5c\xa6\x9d\x02\x00\x00"), - }, - "/charts/istio-policy/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 412, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\x90\xb1\x4e\x03\x31\x0c\x40\xf7\x7c\x85\x7f\xc0\x41\x6c\x28\x1b\x30\xb0\x31\x1c\x12\xbb\x2f\x67\xc0\x34\x17\x47\x71\x52\x09\xaa\xfe\x3b\xba\x3b\x84\x44\x5b\x75\x8d\xfc\x5e\xfc\x4c\x45\x5e\xb9\x9a\x68\x0e\x50\x47\x8a\x9e\x7a\xfb\xd0\x2a\xdf\xd4\x44\xb3\xdf\xdd\x99\x17\xbd\xd9\xdf\xba\x9d\xe4\x29\xc0\x63\xea\xd6\xb8\x0e\x9a\xf8\x41\xf2\x24\xf9\xdd\xcd\xdc\x68\xa2\x46\xc1\x01\x64\x9a\x39\x80\x58\x13\xc5\xa2\x49\xe2\x17\xd2\x34\x4b\xc6\xaa\x89\x71\xdc\x08\x3c\x1c\xc0\x0f\x9c\x98\x8c\xfd\x33\xcd\x6c\x85\x22\xc3\xf1\xe8\x00\x12\x8d\x9c\x6c\x51\x01\x50\x29\xff\x5d\xeb\x6b\xdd\xc0\x00\xa7\x96\x45\xb0\x7c\x33\xf0\xdb\xc2\x53\x91\xa7\xaa\xbd\x5c\xc9\x72\x00\x67\x55\x17\x23\x9c\xf5\xf1\x93\x63\x5b\x17\xc3\x5f\xe8\x85\xeb\x5e\x22\xdf\xc7\xa8\x3d\xb7\x75\xb7\x0b\xf9\xb6\x4d\x21\x9d\x8c\xad\xcd\xe7\x11\x7f\xa7\x40\x44\xf7\x13\x00\x00\xff\xff\xc2\x2b\x2d\x7a\x9c\x01\x00\x00"), - }, - "/charts/istio-policy/templates/config.yaml": &vfsgen۰CompressedFileInfo{ - name: "config.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 8704, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x59\x5f\x6f\xdb\x38\x12\x7f\xcf\xa7\x18\x38\x07\xec\xee\x61\xa3\xa4\x7b\x7b\xf7\x60\x60\x1f\xb2\x75\xee\x10\xa0\x69\x82\xd8\xed\xab\x40\x53\x63\x9b\x30\x45\xb2\x24\xe5\xc4\xd7\xee\x7d\xf6\x03\x29\xda\xa2\x2c\xd9\xa2\x8b\x45\xbb\xe8\x4b\x23\xfd\x7e\x33\xa3\xe1\xfc\xa5\x89\x62\x1f\x51\x1b\x26\xc5\x18\x46\x54\x8a\x05\x5b\x66\xcc\x58\x26\x33\x26\xaf\x37\x6f\x08\x57\x2b\xf2\xcb\xe8\x62\xcd\x44\x31\x06\x62\xad\x66\xf3\xca\x62\x49\x04\x5b\xa0\xb1\x17\x25\x5a\x52\x10\x4b\xc6\x17\x00\x82\x94\x38\x06\x4f\x56\x5a\xbe\x6e\xc3\x23\xa3\x08\xc5\x31\x7c\xfe\x0c\xd9\x33\x72\x24\x06\xb3\xf7\xbb\xc7\xf0\xc7\x1f\x17\x00\x9c\xcc\x91\x1b\x27\x02\x80\x28\x15\x64\x5c\x29\xc9\x19\xdd\xfa\xa7\xba\x26\x76\xa5\x38\x01\x46\x21\x75\xe4\xbd\x75\x41\x94\xd4\x6c\xc9\x44\xc6\x54\xfd\x27\xc0\x86\xf0\x0a\x67\x5b\x85\x63\xb8\x7f\xca\x6f\x27\x93\xe7\xbb\xe9\x34\x86\x56\xac\xe8\xc1\x4e\x67\xcf\xf7\xef\xff\xd3\xc2\x19\xd4\xa7\x81\x1a\x3f\x55\x68\x6c\xb6\x42\x52\xa0\x36\x47\xc1\xf9\xc3\xed\x53\x8b\x30\x64\xc1\x5e\xb0\x34\x36\x0d\x59\xa2\x5d\xc9\x44\xa9\x8a\xd8\x55\x1a\xb2\xd2\x3c\x4f\x47\x7f\xaa\x50\x6f\x73\x45\x34\x29\xcf\xf0\x85\x46\x62\xa4\x48\xd3\xa0\x71\x81\x3a\xf5\x54\x0c\x5d\x61\x89\x69\x58\x2b\x2d\xe1\xb9\x61\xff\xed\xc3\xdf\xbf\x9f\xfd\xeb\xd7\xb6\xe8\x54\xa0\x65\xbd\x16\xcc\xee\x1f\xee\xa6\xb3\xdb\x87\xb6\x27\x5c\xc0\x91\x25\x8a\xc1\x23\x37\x4a\x0a\x83\x19\x95\xc5\x90\x15\x01\x59\x54\x9a\x58\xd6\xeb\xe5\xc9\x87\xe7\xdb\xd9\xfd\xe3\xfb\x36\xe1\x8c\x88\x0e\x8c\x64\x0f\x06\x7c\x3a\x32\xd1\x87\x01\xbd\xd4\x8a\xe6\xc6\x12\x5b\x1d\xb7\xbe\x87\x51\xa2\x31\x64\x39\x10\x2d\x46\x56\x9a\xe2\x70\x01\xd9\xe1\x5c\x01\x81\x4b\x98\xdc\x3d\x3d\xdf\xbd\xbd\x9d\xdd\x4d\x52\x58\x4a\x33\x41\x99\x22\xfc\xb4\x8e\x02\x8d\x65\xc2\x9f\xea\xb0\x41\x31\xf8\x2b\xe4\x2b\xa9\xfb\x62\xb2\x39\x2b\x2a\x85\x40\xea\xb1\xb8\x19\x0c\xe0\x08\x3d\x64\x78\x04\xd5\x48\x91\x6d\xb0\xc8\xe6\xdb\x7d\xf1\x1f\x36\xa7\xcd\xca\x7d\x94\xa6\x72\x0d\x0a\x7b\x9e\xb6\x86\x71\x9e\xa6\xd4\xfc\x8c\x28\xa5\xe5\x7d\x66\xfd\xfe\xf8\xf8\xae\xeb\x03\x5f\x5f\xb0\xc8\x0d\xea\x0d\xea\xdc\xf7\xf0\x21\xbf\x5b\x7c\xb5\x99\xd2\xd2\x4a\x2a\x07\x62\x25\x42\xbf\x6e\x73\xd4\x5a\xea\xfc\x48\x71\xea\x61\xb9\xfc\x36\x96\x94\x7d\x1d\xbc\x9d\xe4\x31\x63\x10\x7c\x09\x13\x54\x1a\x29\xb1\x58\xfc\x0c\x6b\x54\x16\x16\x52\x03\x95\xa5\x22\x96\xcd\x19\x67\x76\xdb\x92\xaa\xd1\xc5\x39\xea\x8c\x4b\xda\x7b\x74\xb1\x6f\xdb\x0c\x3f\x38\x25\x7d\xec\x9e\x32\x98\xb3\x44\xb1\xcc\x9d\x17\xa3\x03\x7e\x74\xc0\x4d\x98\xee\x06\x81\x52\xe1\xd1\x50\x3b\x80\xa6\x9d\xfd\xae\x79\x91\xca\xae\x52\x6b\x4b\x8b\x43\xaa\x82\xa1\xa0\xbd\x49\x76\x5c\x0f\xba\x54\x4b\x9d\x04\x3c\x87\x72\xc2\xce\x99\x4b\x3c\x49\x93\x97\x7c\x80\xd8\x26\x29\x96\xaf\x71\x3b\x00\x9e\x13\x9a\x29\xd4\x25\x33\x86\x6d\x30\xdb\x75\xa2\x84\x9c\x39\xa4\xe2\x62\xe1\x92\x7c\x83\x79\x3d\x47\xe7\x83\x05\x75\x85\x74\x9d\x9d\x4c\xd1\xa8\x42\x45\xe0\xa4\x06\x59\x13\x28\xa1\x2b\xcc\x57\xac\xaf\x0d\xec\x73\xe8\x53\x25\x2d\x19\x86\x5e\x5d\x5d\x5d\xfc\xe9\xdb\xcb\xba\x9a\xa3\x16\x68\xd1\x7c\xef\xed\x25\xf4\xfc\x94\xed\x25\x40\x63\x43\x4e\x85\x71\x80\xc7\x1f\x9f\x44\x18\xee\x0d\x11\xb0\xf6\x5b\x0a\x5a\xbe\x88\xa1\x6c\x0d\xc8\x50\xf3\x6e\x29\x95\xd5\xd0\x24\xd1\xa6\x0c\xe4\x68\x00\xbf\x48\xbd\xe6\x92\x14\xc9\x63\xdc\x9e\x90\xec\x9a\x16\x23\xc1\x47\xf1\xac\x95\x12\x0a\x31\x3e\x35\x1e\x62\x4e\x7a\x50\xc4\xac\x84\x23\x8c\xe1\xc3\xde\x8a\xd1\xae\x3f\x12\x26\x50\x9f\xc9\xfb\x0a\x0f\x87\x68\x39\x6f\x6a\xde\x91\xce\xb3\x2e\x66\x7d\xa5\x95\xc3\x57\x00\x3d\xac\xa4\xe4\x89\x79\xe9\x49\xd1\xcb\x3a\xcf\x2b\xe7\xa4\x87\xab\xff\x9f\x3f\x5f\x01\x5b\x40\xf6\xd1\xbd\x35\x59\xc9\x5e\x51\x67\x75\xe5\xcd\x48\x41\x94\x45\x6d\xb2\xa6\xa6\xa3\xd8\x64\x28\xc8\x9c\x63\xe1\x4a\xef\x59\xdd\x63\x45\x44\xc1\x51\x9f\xec\x19\x28\x36\xdf\xba\x6d\xb8\xa1\x95\x71\x2c\x6e\xeb\xaf\xed\x5a\x13\x5f\xba\x5c\xc2\xcb\x0a\x05\xe8\x4a\x08\x26\x96\xb0\xd0\xb2\x04\xef\x33\xd0\x52\xda\x9f\xa1\x32\x08\x76\x85\xb0\x90\x9c\xcb\x17\x07\xa9\xbd\x02\x64\x61\x51\x03\x29\x0a\xf7\x8c\x04\x59\x66\x5b\xce\x9d\xb5\xc0\x99\x58\x83\x95\x40\x22\xe5\x3b\xe6\x82\x71\x84\x0d\x0b\x05\xe5\x32\x50\xff\x06\x5c\xc0\x95\x81\xff\x5d\xfb\xd3\xb9\x0e\x60\x6f\xcb\x75\x38\xb8\xeb\x46\x98\xff\x6f\x8d\x69\x89\x69\x1e\xd7\x77\x51\x30\x4a\x90\x30\xba\x38\x7f\x74\xd0\x15\xc7\x23\x27\xef\xfa\xf6\x12\x85\x43\x78\xd4\xb7\x1e\x1b\xfc\x22\xe7\xe5\x5c\xed\x62\xb4\x1b\x04\x00\x4c\x18\x4b\x9a\x59\xfa\x2a\x9a\x37\xfe\x34\x77\x58\xaa\xfe\x02\x1e\x29\x89\xa5\xab\x71\x67\x4f\x85\xdf\x7e\x83\x91\xa5\x6a\xf4\xbd\x9c\xb6\x13\xd6\xe3\xb8\x48\xec\x77\x2a\x1f\x33\x2c\x15\x27\xf6\x70\x02\x6e\x17\x8f\x27\x62\x8c\xaf\x0f\x6e\xa7\x61\x1a\x8b\xc6\x70\x70\x1f\xe4\x6a\x80\x7b\x1d\xd2\x2f\x9a\x7b\x72\xd7\x3c\xa2\x4b\x32\xf8\x02\xa3\x51\xfc\x9e\xa9\x71\x33\xf1\xc2\x17\x60\xea\xc7\xd1\x4d\xe6\xff\x8d\x7e\x82\x4b\x28\x70\x41\x2a\x6e\x9d\x86\x4a\x38\xe3\xd9\x82\x61\x01\x4c\xb9\xa2\xa4\x0f\xfb\x48\xad\xee\xe0\x1e\xac\xd1\x19\x23\xfd\x05\x56\xe7\x4a\x0b\xbe\xc0\x4d\x3c\x93\xff\xce\x84\x2b\x7d\x7b\x4f\xfc\x9b\x71\xee\x3f\x55\xe0\x4b\x74\x7a\x75\x45\x8d\x5c\x00\x4a\xcb\xa2\xa2\x58\x80\xac\xac\xaa\x6c\xb6\xab\x7f\xb2\xb2\xe0\xaf\xac\x8d\x2f\x9c\x62\x1f\x1d\x20\x17\xf0\xe8\xb1\xbb\x23\x81\xb0\x5f\x1d\x6c\x05\x5e\x46\x16\xdc\xa7\x64\x91\x77\xfd\x16\x33\xbc\x47\x0e\x29\xc1\x2b\x95\x58\x0b\xf9\x22\x46\x3d\xcb\x44\x8b\x52\x3f\x83\x2f\x80\xa5\xb2\xdb\xa9\xd5\x4c\x2c\x1f\x88\xfa\xf1\xa7\xce\x96\xd0\xd1\xe4\x9e\x1e\x53\x15\x05\x7c\x4c\xdb\x3f\x76\xbc\x70\xfe\xa3\xee\xe2\xd0\xe2\xf8\x47\xc7\xf4\x1c\x4c\x40\x2d\x62\x78\x97\x93\xfa\xe5\x49\x7b\x5b\x13\x51\x4b\xca\xee\xcd\x29\xc7\xb6\x27\xa3\x7e\x7a\x92\xf6\x23\x6e\x6b\x09\xd9\xfb\xaf\x25\xe9\x60\xa9\xa8\xe9\xed\xa4\x38\x1a\x4e\x87\x97\xcb\xfd\xe4\xbe\xef\xef\x59\x4d\xba\xe4\xd3\x21\xd6\x59\x22\xfa\xb5\xf7\xba\xef\xc4\x4a\xd1\x95\xb2\x07\x0c\xcb\x3a\x3c\x86\x58\xcc\xf1\x10\xee\x6e\x4f\x5d\x76\x7f\x30\x9f\x98\xe9\xbb\x22\x92\xc2\xfa\xe8\xb4\xdf\x95\x77\x32\xc0\x8f\xcf\xff\x27\x04\xa5\x5b\x74\xca\xd1\x03\x41\xef\xd6\x04\x14\x7e\xe6\x77\x6d\xfb\x12\xde\xfa\x5e\x1d\xae\xd6\x41\x20\x16\x58\xc0\x7c\x0b\x0f\x7e\x81\xb8\xb8\xac\xff\x03\x94\x57\xc6\x55\x71\x66\xa0\x40\xce\x36\xe8\x7a\xde\x86\x11\x78\x3b\x99\x5e\x5c\xc2\xd4\xf7\xa1\x6d\x18\xa1\x77\x60\x83\xd6\xba\x5e\xd1\x9a\x0e\x04\x5a\x67\x23\x13\xdd\x01\xe1\x1f\x61\x3e\x98\x34\xdf\xf3\xdc\x3f\x5f\x1d\xb4\xf8\x6f\x3a\x28\xf8\x65\xb3\xc5\xcd\x8e\x29\xcd\xcc\x86\xfa\x97\x61\x2b\x5b\x72\x39\x27\xbc\xfe\x09\x20\x0b\x5e\x9a\xc8\x92\x30\x51\x5b\x78\xb0\xc4\x05\x78\x48\x97\xfa\xa4\x3e\x32\x13\xee\xe5\xa7\xc1\xbb\x35\x15\x5f\x5d\xb7\x9e\xc9\x7a\x92\xfb\xe1\xef\x3f\x04\x71\xe1\xb0\x01\xac\x26\x8b\x05\xa3\x4f\xde\xe2\xda\x09\xfd\xea\x5c\xc6\x6b\xc9\x9f\x38\x11\x38\x45\x5a\x69\x66\xb7\x77\xcd\xaa\xe8\x88\x4e\xd5\x3b\xdc\x20\xdf\xd9\xb0\x9b\x0a\xe3\x1f\xc1\x00\x44\x55\xce\x5d\x3e\xbf\xf9\xe7\xcd\xcd\xaf\xe1\x69\xf4\x8b\x0c\x40\x29\x0b\x1c\xc3\xfd\x74\x76\xff\x98\x3f\x7c\x98\x7d\xb8\x7d\xb7\xb7\x0b\x45\x11\x94\x35\x3f\xd2\x3c\xc9\xe6\xa2\x7d\x65\xad\x6a\x04\xb9\xbf\x7e\x79\x20\xaf\xcf\xf5\x15\xb3\x19\xc3\x9b\x9b\x9b\x9b\x9b\x46\x51\xf3\xea\x09\xf5\xdb\xbd\xc4\x1d\xce\xe5\xc2\xff\x03\x00\x00\xff\xff\xd7\x55\x18\x40\x00\x22\x00\x00"), - }, - "/charts/istio-policy/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 6644, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x58\x5b\x6f\xdb\x3a\x12\x7e\xcf\xaf\x20\x8c\x3e\xec\x02\x2b\xc9\xce\xa6\x8b\x46\x40\x1e\x0c\x27\x5d\xb4\x48\x52\x23\x97\x02\xe7\xc9\x60\xa4\xb1\xcd\x86\x22\x05\x92\x52\xa2\xe3\xe6\xbf\x1f\x50\xd4\x85\x92\x68\xd9\xed\xb9\xe6\x29\x1e\xce\x7c\x33\x9c\x19\x0e\x3f\x0a\xa7\xe4\x2b\x08\x49\x38\x0b\x11\x4e\x53\x19\xe4\xb3\x93\x67\xc2\xe2\x10\x5d\x42\x4a\x79\x91\x00\x53\x27\x09\x28\x1c\x63\x85\xc3\x13\x84\x18\x4e\x20\x44\x44\x2a\xc2\xbd\x94\x53\x12\x15\x95\x50\xa6\x38\x82\x10\xed\x76\xc8\xbf\x03\x0a\x58\x82\x7f\x5b\x8b\xd1\xdb\xdb\x09\x42\x14\x3f\x01\x95\x1a\x04\x69\x5f\x03\x14\x64\x04\x21\x4a\xc8\x2b\x88\x52\x20\x0c\xd2\x10\x56\x23\xca\x14\x22\x8d\x26\x20\xa5\x24\xc2\xd2\x68\x7d\xc5\x34\x03\xe9\x97\x18\xbe\xc1\xf6\x2b\x8d\x05\xcf\x98\x32\xb1\x48\x25\xb0\x82\x4d\x61\xa2\x11\x9c\x52\xc2\x36\x8f\x69\x8c\x15\x18\x11\x42\x09\x7e\xbd\xcf\xc4\x06\x42\x34\x6b\x25\x8f\x0c\xe7\x98\x50\xfc\x44\x21\x44\x53\x0d\x04\x14\x22\xc5\x85\xb1\x4a\xb0\x8a\xb6\xd7\xd6\x3e\xf7\xed\xd4\xb1\xd7\x4a\xe4\x95\x12\x4f\x15\x29\x84\xa8\xb1\x50\x90\xa4\xb4\x09\xce\x2e\x88\xfe\xa3\x1d\x8f\xfb\x7d\x3a\xbd\x8e\xfa\x2d\xd1\x18\xe3\x0a\x2b\xc2\x99\xe5\x42\x92\x18\x22\x2c\xfc\xd2\xd6\x27\x3c\x20\xec\x1b\x44\x2a\x44\x93\x35\xa6\x12\x26\x27\xbb\x9d\x87\x5e\x88\xda\xba\x2b\x92\xf2\x78\xde\xc2\xea\x9a\xec\x76\x48\xf1\x5f\x70\x42\x91\x8f\xbe\x23\xc2\x62\x60\x0a\x7d\x30\x2b\x1e\x02\x16\x9b\xc2\x21\x54\x97\xbd\xfc\x1f\x44\x4e\x22\x98\x47\x91\x2e\xed\xed\xa0\x37\xbd\x4a\xc1\xc3\x46\xa3\xc4\x22\xeb\x26\xa6\x0d\xe5\x4f\x98\xfa\xa9\x20\x5c\x10\x55\x2c\x28\x96\xb2\x6e\x2f\xe3\x61\xb0\x14\xa2\x89\xd5\x66\x23\x00\x93\x7e\xe0\x08\xe5\x9c\x66\x09\x34\x59\xf4\x3a\xa7\x29\x02\xa1\x64\x9b\x5f\x88\x04\xa8\x36\xdf\xb5\xc4\xda\xa3\x3f\xba\xd3\xd6\x90\xa7\x3a\xc9\x98\x86\x48\x89\x0c\xaa\x05\x77\x22\x64\x2c\x7d\x60\xba\xbb\xad\xa8\x3d\xb4\xe5\x52\x2d\xb1\xda\xda\xe1\xa4\xfa\x37\x0a\x72\x2c\x02\x91\xb1\x40\xc6\x6d\xec\x66\x57\x32\x96\x5e\x16\x4b\x4f\x2b\x1e\x74\x9a\x49\x78\x10\x99\x54\x2f\x5c\xa8\x6d\xf1\xf9\x45\xd9\xee\xed\x2c\x29\xfe\x0c\xac\xf1\x94\x0a\xae\xbb\x0e\xe2\x4e\xa2\x78\x26\x22\x90\xb6\xc8\xeb\x75\xca\x83\x46\xb1\x15\xca\x3e\xcf\x62\x02\xac\x1e\x62\xdd\x18\x95\x0e\xee\x92\x27\x98\xb0\x36\xb2\xfa\x0f\x5e\x53\x22\xca\x4e\xbe\x87\x88\xb3\x58\x86\xe8\xec\xbf\xa7\xd3\x69\x4f\xcd\x64\x6c\xb8\x8d\x41\x9b\x0c\x04\x75\x0a\x74\x3a\x25\x8f\x9e\xa1\x2d\x2f\x24\xa9\x2a\x2e\x89\x08\xd1\xae\xaf\x5d\x35\x06\x8e\x71\xaa\x40\x78\xa6\x7f\x8e\x6c\xb0\x71\xdb\x3d\x3d\x85\xd7\x6b\xc2\x88\x2a\x42\xbb\xdc\x2c\xa2\x59\x0c\x68\xc2\x78\x0c\xb5\xc2\xc4\x3e\xe3\xff\xeb\x6e\xbc\x31\x28\x47\x84\x22\xf3\xbd\x36\xbd\x6e\xea\xcc\x17\xc5\x29\x88\x76\xb8\x18\x78\x4b\x18\xda\xf3\xe6\x10\xc0\xd0\x6d\xa7\x3a\x11\x67\x0a\x13\x06\x62\x70\xb0\xcd\x98\xad\xe2\xac\xd4\x24\x9a\x04\x13\xb7\x4f\x92\xe0\x0d\xd8\xed\x55\x0a\xba\x03\xc7\x69\x50\x8d\x1a\x2a\x0f\x59\x57\xdd\xbc\xcd\x9e\xd0\xdb\x5b\x70\x08\x36\x74\x9c\x03\xbc\x71\x8f\xb6\xca\xdd\x32\xa3\x74\x59\xa2\xb8\x4e\x51\x4f\x05\x7d\x47\x31\xac\x71\x46\x15\x9a\xcc\xe9\x0b\x2e\xe4\xc4\x06\x4c\xb9\x50\xd6\x29\xf6\xda\x44\x2f\xb9\x50\x21\x9a\xbd\x9f\xce\xce\xf6\x2f\x9f\x9d\x9e\x9d\x9e\xb6\x57\xa2\xd8\xf4\x26\x82\xe7\x25\x9c\x11\xc5\x05\x61\x1b\x6d\x71\xd1\xc5\x33\x2a\x38\x8e\x05\x48\xd9\x91\x66\x8c\xbc\x86\x41\x10\xe8\x93\x18\x98\xc4\x55\x87\xd2\x3d\xdf\x28\xdf\x6c\x08\xdb\xf8\x14\x72\xa0\xdd\xe9\xa1\x5d\x50\xbe\x59\xf1\x4c\xa5\x99\x5a\x95\x1a\x17\xc3\xbc\x0d\x10\xaa\xf4\x0f\x0f\x41\x6b\x30\x97\x9f\x25\x67\x6e\x77\x58\xae\xbe\x49\xce\xec\x2a\xba\x71\x32\x09\x37\x8b\x65\x0d\xe2\xd6\xd1\x69\x17\x9c\x2e\x29\x66\x70\x0f\x51\xa6\xef\xc1\x2b\x73\x87\x0c\x9c\x47\x9c\xad\xc9\xe6\x5e\x71\x01\x8f\x77\xd7\x17\x49\x94\xca\x30\x08\xcc\x48\xdc\x60\x4a\xa1\xf0\x87\xbb\x37\x46\x36\x99\xf4\x65\x1e\x85\xba\x5c\xe7\x4d\x5c\xfd\xe6\xdf\xe7\xef\xa7\xdd\x9d\x9f\x4f\x67\xad\xb7\x36\x69\x47\x39\x7e\xfe\xa0\xf7\xe9\x3a\x35\xb6\xfa\xa5\x39\x0c\x8d\x6b\x47\x27\x0c\x83\xb3\x90\xc6\x06\x62\x35\xc9\xcb\x9b\x76\x6e\xfe\x5f\xdc\x5d\xca\x61\x28\xdd\xf5\x0b\x6b\xbc\x8f\xa7\xba\x67\x57\xb2\xc0\xbe\xa1\x6b\xeb\xfa\xe6\xaf\xc8\xed\x5e\xc3\x61\xd3\x29\x81\x23\x10\xfe\xaf\x24\x7d\x26\xcc\xaf\x4e\xe9\x10\xbc\x54\x5b\x19\xad\x55\x26\xe8\xc5\x56\x29\xdd\x02\x1a\xf4\x48\xc4\x00\xa7\x24\xc8\x67\x81\x4c\x31\x93\x47\x65\x62\x9f\xd3\x0a\xda\x31\x54\x81\x42\x02\x4a\x14\x76\x5d\xc3\xf3\xb3\xd9\x6c\xd4\x79\x37\x9b\x63\xc5\x07\x96\xdb\xaa\xc0\xf2\xb0\x63\x27\x30\xdb\x00\x7a\xf7\x0c\xc5\x7f\xd0\xbb\x1c\x53\x14\x5e\x1c\x05\x54\xdf\x73\xbb\x5d\x69\xdc\x4d\x45\xae\xed\xcd\xf5\x53\x62\xea\x6b\xe3\x40\xfc\x3d\x91\x80\x86\xca\x8d\xed\xae\x51\xeb\x3d\x23\xc6\x75\x9b\x4b\x7d\x36\xed\x1f\xe5\x21\x46\x55\xa8\xea\xb6\xba\x1b\x05\xe9\xee\xc1\x50\xfe\x1b\x4d\x3a\x87\xdb\x70\x4e\x59\x74\xe0\x65\x80\x50\xa2\xd1\x96\x86\x7f\x83\x8a\x82\xfe\xba\x00\x1c\x7f\x61\xb4\xa8\xc8\x99\x23\xaa\x11\x42\xd9\x85\xd7\x8b\x03\xab\x43\xe4\xd0\x06\x68\xde\x07\xa5\x92\x0c\x9a\xf7\xa2\x01\x09\x2a\x90\xfd\xd1\xd7\x62\x4a\x72\x60\x20\xe5\x52\xf0\x27\xb0\x6f\x72\x7d\xba\xfe\xdf\x65\xb2\xed\xeb\xc4\x7c\xdb\xe8\x2e\x39\xc8\x03\x42\x9a\x63\x12\x4c\x2f\x81\xe2\xa2\x61\xf1\xef\xed\xf7\x0e\x08\xc2\xe3\xc1\x52\xb7\x52\xa9\xe0\xaf\xc5\x28\xe1\x6b\x1e\x8c\xfc\xf5\x38\xc2\xe7\x34\xf8\xfd\x84\xcf\x09\xfb\x0f\x27\x7c\xe7\xd3\xf3\xd9\x28\x1d\x9c\x8e\xd0\xc1\xd9\xfb\xe9\xb9\xfd\x22\x4b\x05\x57\x3c\xe2\x34\x44\x0f\x8b\xa5\x25\x37\xe5\xd4\x4d\xe5\x01\xcb\x79\xa1\x6b\x9a\xec\xa1\x91\x1e\x32\x05\x6f\x7f\x7b\x5e\x5c\x3e\x12\x2d\xd1\xbb\x7f\x2d\xbf\x5c\xae\x6e\xe7\x37\x57\xf7\xcb\xf9\xe2\xea\xdf\x9a\x4d\x38\x2e\x01\x53\x89\x88\x66\x52\x81\x18\xbe\x34\x35\x74\xf5\x86\x5d\x18\x1d\x6b\xc9\xf9\xa9\xa7\xbc\x8a\xaa\x9b\xf5\x23\xa1\x60\x2d\x94\x53\xa3\x34\x0a\x4a\xb7\x41\xb9\xd3\x55\x35\x23\x0b\x9c\x50\x5f\x25\x29\x1d\x7d\xb5\x8f\xd0\xbe\x7e\xdc\xb6\xea\x3c\x53\xdb\x65\x3f\xd0\x9b\xc7\x87\xc7\xf9\xf5\xea\xe1\xfa\xde\x7e\x01\xf7\xba\xfb\x28\xa4\xdb\x2f\xb7\x57\x63\xcf\x6a\x17\x93\x70\xbe\xec\xcd\x45\x9e\x49\x55\x15\xd4\xc1\xc5\x9c\x96\x47\x7a\x75\x12\xf4\x3e\x3d\xdf\x83\xd8\xbb\xc0\xeb\x09\x54\x77\x59\xff\x0a\xfe\x28\x78\xd2\x1d\x8e\x6b\x02\x34\xbe\x83\xf5\xe0\x03\x88\xf5\x31\x38\x9f\xf5\x16\x4b\x23\x33\xd4\xeb\xcf\x8f\xbe\x76\xbc\x37\x8e\xb2\xdb\xff\xe2\x60\x4a\xf2\x34\x88\xe8\xd3\xed\xfd\xc3\xfc\x76\x71\xb5\xfa\xb4\xfc\xf3\xe3\x91\x0a\xab\x4c\xfa\x29\x8f\x2d\x6f\xfb\x99\x4c\xe7\xf4\x1f\x60\x32\x7b\x74\xff\x16\x26\xd3\xcf\xf1\x1f\xc2\x54\x6a\xf1\x0f\x7c\x9c\x6c\x23\x70\x7c\x6f\xec\x87\xe0\xfa\x58\xf9\x13\x41\x8c\x7c\xac\x1c\xff\x5c\x39\x4e\x8d\x4a\x5d\xf9\x83\x1c\xf9\xc7\x98\x9c\xe7\x79\x27\x27\xbf\x05\x00\x00\xff\xff\x93\xb2\x3b\x96\xf4\x19\x00\x00"), - }, - "/charts/istio-policy/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 471, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x91\xc1\x4a\x03\x31\x10\x86\xef\x79\x8a\xff\x05\x12\xe9\x35\x37\xc5\xa3\x88\x78\xe8\x7d\x76\x33\xad\x83\xb3\x49\xd8\xcc\x16\xcb\xd2\x77\x97\xed\x5a\x14\x5a\xc5\x63\x7e\xf8\xbf\xf9\x32\x33\xcf\x1e\xb2\x43\xd8\x92\x4e\xdc\xc2\x5e\x4b\x47\x1a\x12\xef\x68\x52\x7b\x29\xe9\x51\xda\x38\x55\x93\x92\x1f\xa6\xb4\x67\x0b\x9c\xa9\x53\x4e\x38\x9d\x1c\x55\xd9\xf2\xd8\xa4\xe4\x88\x5a\x54\xfa\xe3\xdd\x61\xd3\xb1\xd1\xc6\xbd\x4b\x4e\x11\x37\xfa\x6e\x60\xa3\x44\x46\xd1\x01\x99\x06\x8e\x90\x66\x52\xfc\x0a\xf8\x0a\x5b\xa5\x9e\x23\xe6\x19\xe1\x95\x95\xa9\x71\x78\xbe\xc4\xcb\x64\x40\xa9\x63\x6d\x0b\x04\xa0\x5a\xaf\x28\xc0\xb8\x16\xaf\x29\x2b\x00\x6b\x23\x62\x90\x0f\x1e\xbf\x03\x7f\x7e\x7b\x3b\x56\xbe\xfc\xca\xb5\xca\xfd\x32\x6a\x90\x7c\x7f\x20\xd1\x65\x03\x11\x1b\x07\x34\x56\xee\xad\x8c\xab\xc8\x40\xd6\xbf\x3d\xfd\x30\xfb\xcd\xed\x1f\x76\x37\xfc\xfe\x30\xf4\xde\x3b\xb7\xdc\x92\xf3\xf9\x34\x9f\x01\x00\x00\xff\xff\x82\xc1\x0e\xc4\xd7\x01\x00\x00"), - }, - "/charts/istio-policy/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 454, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\x90\xc1\x4e\x2b\x31\x0c\x45\xf7\xf9\x0a\xff\x40\xa2\x8e\xf4\xde\xa2\xd9\x21\xc4\x82\x0d\x42\x20\x75\xef\x66\x3c\xc5\x22\x93\x44\xb1\xa9\xa8\x46\xfd\x77\x94\x99\x41\x14\x0a\xdb\x7b\x8f\x4f\x1c\x63\xe1\x1d\x55\xe1\x9c\x3c\x1c\x3b\xf3\xca\xa9\xf7\xf0\x4c\xf5\xc8\x81\xcc\x48\x8a\x3d\x2a\x7a\x03\x90\x70\x24\x0f\x2c\xca\xd9\x96\x1c\x39\x9c\xd6\x50\x0a\x06\xf2\x30\x4d\xe0\x9e\x28\x12\x0a\xb9\x87\xcf\x18\xce\x67\x03\x10\x71\x4f\x51\x9a\x04\x00\x4b\xb9\xb2\xc0\x12\x78\x18\xf9\x9d\xea\x1c\xd4\xc5\x74\xad\x6d\x46\x29\x14\x9a\xad\xe4\xaa\xb3\xd6\xae\xdb\x1d\x6a\x09\xf6\x4b\xd2\x7a\x0f\xdb\xcd\xb6\xfb\x95\xb1\xa3\x46\xb9\x00\xbb\xff\x9b\xcd\xbf\x0b\xf2\x45\xb5\xac\x4b\xda\x31\x27\xd6\x5c\x39\x1d\xbe\x0f\x74\x6d\x40\x28\x52\xd0\x5c\xff\xfa\xe1\x34\x59\xe0\x01\xdc\x0e\xe3\x1b\x89\x9b\x1f\x77\x4b\xe7\x84\xa4\x1d\xff\x66\x18\x38\xb1\x9e\xee\x12\xee\x23\xf5\xcb\xdd\x7e\x74\x1e\x6e\x23\x53\xd2\xfb\xc7\xd9\x48\x69\xc6\xac\xb5\xc6\x7c\x04\x00\x00\xff\xff\x62\xd3\xd5\x46\xc6\x01\x00\x00"), - }, - "/charts/istio-policy/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 335, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8e\x41\x6a\x03\x31\x0c\x45\xf7\x3e\x85\x2e\x20\x43\xb7\xde\xf5\x02\xa5\x34\x90\xbd\xe2\x51\x07\x51\x8d\x6d\x2c\x4f\xa0\x98\xdc\xbd\x38\x9e\x2e\x9a\x6e\xb2\x33\x0f\xbd\xe7\x4f\x45\xce\x5c\x4d\x72\x0a\x70\x7d\x71\x5f\x92\x96\x00\x27\xae\x57\x89\xfc\x1a\x63\xde\x53\x73\xbd\x23\xc8\x27\xf8\x33\xe9\xce\xe6\x57\xcd\x17\x52\x2f\x1b\xad\xfc\xbe\xab\x9e\x38\x56\x6e\x06\xb7\x9b\x7b\x64\xe1\xee\x56\x4a\x2b\x3f\xa3\x03\x20\x24\xda\x38\x40\xef\xe0\x07\x19\x3a\xa7\xe5\xe1\xb9\x71\xa3\x85\x1a\x05\x07\xc7\xbd\x58\x93\x8c\x25\xab\xc4\x6f\xb4\x39\x1f\xe9\xd8\x3f\x8f\xac\x50\x3c\xca\x1f\xac\x4c\xc6\xfe\xed\x17\xcf\xcf\x95\x2e\xac\x36\xa2\x00\x54\xca\xdf\xea\x9d\xd6\x29\xfe\xaf\x8c\x00\x22\xba\x9f\x00\x00\x00\xff\xff\xed\x82\x7d\xce\x4f\x01\x00\x00"), - }, - "/charts/istio-policy/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 1354, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x54\xdd\x6e\xf3\x44\x10\xbd\xef\x53\x8c\xc2\x6d\x1b\x08\x12\x12\xb2\xc4\x45\xa1\xa5\xaa\xa0\xe2\x22\xed\x15\xe2\x62\xb2\x1e\xdb\xab\x6e\x66\xcc\xec\x6c\x12\x83\x90\xfa\x20\xf4\xe5\xfa\x24\x68\xd7\x76\xda\x92\x7e\x9f\xf4\xdd\x79\xcf\x9e\x39\xf3\x77\xd6\x5b\x7f\x20\xad\xce\x00\x7a\x09\xde\x0d\xf9\x0b\xc0\x6f\xb1\xa5\x0a\xca\xdd\x59\x41\x94\xfa\xe0\x1d\xfe\x24\x89\xad\x82\x55\xc1\x30\x99\x44\x87\x81\xae\x19\x37\x81\xea\x0a\x4c\x13\xbd\xbf\xba\xf3\x7c\x42\xbf\xc3\x43\x05\xdf\x15\xcc\xf5\x69\xcc\x08\x60\xa8\x2d\xd9\xe5\x8e\x14\x5b\x7a\x30\x1f\xfc\x5f\x68\x5e\xb8\x82\xef\xbf\x19\x6b\xe8\xa5\xbe\x64\x16\x2b\x70\xac\xe0\xef\x7f\x46\x9c\x78\x37\x8b\xdc\xfc\x76\x75\xfd\xe3\xc3\x4d\x05\xad\x33\x45\x47\x3f\xac\x46\x0a\xd6\xd8\x1b\x69\x9c\x79\x8f\x69\x43\xca\x64\x14\xdf\x04\x67\xa5\xb7\x8d\x14\x98\xa5\xa6\x35\x05\x72\x26\x5a\x52\x96\x5a\x25\x90\xce\x65\xfc\xfe\xc7\xc8\xfc\x0a\xd6\x3d\x39\xdf\x0c\x60\x1d\xe5\x62\x01\xd9\xfc\x05\x36\x8d\x67\x6f\x19\x45\x03\x0c\x41\xf6\x11\x06\x49\x60\x02\x4e\x38\x9a\xa2\x67\xd8\x77\xde\x75\x25\x59\x9c\xc4\x06\x49\x5a\x54\x7c\x04\x0a\xbe\xf5\x9b\x40\x39\x66\x43\x10\x5d\x47\x75\x0a\x54\xc3\x06\x23\xd5\x20\x0c\x01\x37\x14\x62\xfe\xea\xa5\x8e\x53\x2e\xa5\x49\x0b\x83\x12\xd6\x03\x68\x62\xf6\xdc\x66\x5a\xae\x31\xa7\x03\x45\xeb\x48\x73\x04\x7f\x24\x57\x4a\x5a\x4e\x3a\xf7\x1d\x29\x65\x5d\x70\x49\x95\xd8\xc2\x00\xb6\x17\xb0\xa1\xa7\x08\xd2\xbc\xef\xb8\x9a\xa2\x00\x60\xa1\xf4\x67\xf2\x4a\xf5\x55\x52\xcf\xed\x7a\x6c\xc0\x73\x7b\xdb\xb2\x1c\xe1\xeb\x03\xb9\x94\xa7\xba\x78\x13\xd9\x2b\x35\xa4\x5f\x1c\x3a\x0e\xb4\x26\x16\x23\x78\x79\xfa\xb7\x43\xad\x5f\x9e\x9e\x61\x17\x97\xf9\x18\xa5\xb1\x7c\x9c\xea\xda\x12\x5b\x3c\x2f\x6b\x71\xc8\x50\x53\xe3\x99\xc6\x15\xec\x30\xa4\xe3\x52\x3c\xc3\xa2\xd8\xd0\xfc\xe5\xd4\xe5\xaf\x79\x54\xb3\x43\x16\x80\x5c\x9f\x50\xee\x49\xb7\xef\x69\x93\x9c\x13\x55\x8a\xbd\x70\xed\xb9\x0d\xc3\x3c\xe6\x9f\x45\x81\x0e\xb8\xed\x03\xcd\x33\xfc\x5c\xd2\x99\x73\x01\x8f\x34\x54\x10\xc9\x25\xf5\x36\x1c\x67\x28\x7d\x36\x6b\xb6\xef\x2d\x1f\xc1\xb1\xad\x0a\xd6\xab\xf3\xf5\xb7\x47\xd4\xa4\x97\x20\xed\xf0\x4b\x16\x5a\xbc\xbe\x92\xa5\x97\xaf\x3b\x89\xc6\xb8\xa5\xc5\xd1\x0c\x3e\x7e\x60\x73\x4d\x81\x20\xe2\x30\x99\x70\x7e\x0b\xd3\xa0\x23\xb0\xd8\xff\x6d\x3c\x09\x0a\x9b\x00\x8e\xae\xf4\xcd\x18\x3e\x1e\xe2\x89\x83\xb1\x88\xee\xbd\x75\xa3\x57\xa1\xc3\x5d\xc6\x1f\x69\xee\x3b\x2f\x79\x9a\x44\x5e\x74\xde\x4b\xe9\x39\x5f\xac\x57\x2f\x4f\xcf\xcb\xd7\x9f\xca\xa7\x06\x9b\xdf\xf6\x07\xa4\x93\x7d\x16\xe2\x7f\x01\x00\x00\xff\xff\xd4\x6b\xb4\xb5\x4a\x05\x00\x00"), - }, - "/charts/istio-telemetry": &vfsgen۰DirInfo{ - name: "istio-telemetry", - modTime: time.Date(2019, 7, 3, 23, 31, 21, 60040770, time.UTC), - }, - "/charts/istio-telemetry/grafana": &vfsgen۰DirInfo{ - name: "grafana", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - }, - "/charts/istio-telemetry/grafana/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 128, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x4a\x2c\xc8\x0c\x4b\x2d\x2a\xce\xcc\xcf\xb3\x52\x28\x33\xe4\x4a\x49\x2d\x4e\x2e\xca\x2c\x28\x01\xf3\x1d\x15\x3c\x52\x73\x72\x15\x92\x33\x12\x8b\x4a\x14\xd2\xf2\x8b\x14\xbc\x4b\x93\x52\x8b\xf2\x52\x4b\x52\x8b\xb9\xf2\x12\x73\x53\xad\x14\xd2\x8b\x12\xd3\x12\xf3\x12\xb9\xca\x60\x46\x18\xea\x19\xea\x19\x70\x25\x16\x14\x84\xa1\x8a\x94\x64\xe6\xe4\xa4\x16\xc1\x05\x95\xec\x6c\x8d\xf4\xcc\xf5\x8c\x94\xb8\x00\x01\x00\x00\xff\xff\x6c\x42\x6d\x27\x80\x00\x00\x00"), - }, - "/charts/istio-telemetry/grafana/dashboards": &vfsgen۰DirInfo{ - name: "dashboards", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - }, - "/charts/istio-telemetry/grafana/dashboards/galley-dashboard.json": &vfsgen۰CompressedFileInfo{ - name: "galley-dashboard.json", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 41115, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\x5b\x6f\xdb\x3a\x12\x7e\xcf\xaf\x20\xf4\xb0\x48\x0e\x9c\x73\x62\xe7\x72\xd2\x00\xe7\xa1\x27\x4d\xda\xa2\xb7\x6c\x92\x76\xb1\x68\x03\x81\x96\xc6\x32\x6b\x99\x54\x49\xca\x8d\xd7\xf0\xfe\xf6\x05\x49\xc9\xa2\x65\xc9\x49\x9a\xf8\x12\x2f\x5f\x5a\x89\x94\xc5\x99\x21\x67\xbe\x8f\x43\x8a\x19\x6d\x21\xe4\xf9\x3e\xa1\x49\x2a\x85\x77\x82\xbe\x6e\x21\x84\xd0\x48\xff\x8b\x90\x47\x71\x1f\xbc\x13\xe4\xbd\xba\xf2\x2f\x2e\x3f\x7d\x38\xbb\x7e\x73\xf6\xf9\xca\x6b\xe4\xd5\x31\x6e\x43\xac\xea\x2f\x38\xeb\x83\xec\x42\x2a\x8a\xca\x10\x44\xc0\x49\x22\x09\xa3\xea\x91\xa2\x42\x0e\x13\xfd\xd2\x10\x4b\x2c\x58\xca\x03\x28\xea\x92\x38\x8d\x08\x7d\x1b\xaa\xfa\xa4\xe2\xa5\xa6\xfe\x63\x26\x96\xd5\xac\x7e\x60\xbc\x85\xd0\x8d\x7a\xd6\xc3\x94\x32\x89\x55\xdb\x4a\x2b\xa3\x8f\x17\x13\x21\x27\x3a\x16\x5a\x22\xe4\xb5\x53\x12\xcb\xb7\x4a\xce\x66\xa3\x28\xb5\x04\x3c\x41\xde\xee\x2e\x7a\xcd\x71\x07\x53\x8c\x76\x77\x3d\xeb\x31\xa0\xb8\x1d\xab\x47\x24\x4f\xc1\x2a\xef\x92\xb0\xa2\x94\x04\x8c\x9e\xb2\x98\x71\xf5\x4e\x1e\xb5\xf1\xf6\x5e\x03\xb5\x9a\xcd\x06\x6a\x1d\x1e\x36\x50\x73\xc7\x7e\x75\x6e\xff\x97\x85\x3a\xe8\x1f\xe8\x65\x0c\x5c\x0a\xfb\xb9\xc2\xa4\xa2\xdb\x66\x98\x87\x5e\x56\x37\xd6\xff\xdf\x6c\x21\x34\xd6\x76\x81\x90\xc8\x4c\xda\x0e\x8e\x85\x16\xcc\x8b\x28\x48\x6d\x72\x9a\xc6\xb1\x29\xe1\x38\xe9\x5e\x33\x16\x4b\x92\x78\x27\x68\x4f\x17\xc6\x84\xf6\xf4\x18\x31\x26\x4e\x30\x85\xb8\x62\xcc\xe0\x98\x60\xa1\x35\xd4\xa6\x1f\x4f\xfa\xae\x8d\x75\xc9\xa4\xdd\xcc\xc6\xa2\xfb\x1e\x68\x24\xbb\xca\xf8\x7b\x53\xe5\x50\xf5\xb8\xdd\x25\x55\xc3\xae\x43\xe2\xd8\xee\x47\x2f\xe2\x24\xbc\x60\xc5\x30\x30\x7d\xe3\x9d\xa0\x43\xcb\x80\x3f\xbd\x13\xd4\x3a\xb0\x0a\x6e\x73\xb5\xb3\xfb\xa1\xba\xcf\x8d\x3a\x79\x37\x51\x56\x3b\x38\x2a\x1c\x02\x22\xa0\xe1\x74\x53\x78\x10\x95\xd5\x40\xc8\x0b\x52\xce\x81\xca\x8a\x9a\x3e\xbe\xad\x2a\x25\xb4\xa2\x54\x74\xd9\xcf\xd9\x21\x26\x99\xc4\x71\xc5\xd3\x03\x1c\xa7\x85\x4d\x67\x94\x89\x09\xd5\xb5\xf6\xdb\x74\xe1\x4f\x12\x9a\xee\xb1\x4b\xad\xa1\x60\x86\x6a\x1a\xc7\x17\x8c\x50\xf9\x81\xe9\x61\xaf\x0b\x2c\xc7\x05\x1e\x00\x95\x38\x82\x99\x3e\x4d\xd4\xaf\x38\x0e\x49\x2a\xec\x5e\x31\xe5\xb3\x43\x80\x03\x0d\x81\x83\xf6\x9f\x4e\xcc\x64\xd1\x86\x00\x4e\x40\x7c\x1a\x00\xe7\x24\x84\x92\x7c\x22\xc1\x01\x54\x8d\x34\x21\x71\xd0\x9b\x69\x45\x48\x48\x12\x08\xdf\x13\x3a\x2b\xb0\xc4\x3c\x02\x2b\x5c\xa2\xa9\x60\xa2\xbc\xec\x36\xd1\xe2\x89\xb4\xbf\x4d\x84\x24\xcc\x57\x01\x26\x1c\x05\xac\x9f\x30\x0a\x54\xfe\xf5\xcd\x8b\x70\x1c\xc3\xf0\x9b\x37\xde\x41\xed\x21\xda\x96\x38\xb2\x3d\x5f\x0d\x64\xc6\xfb\x58\x0d\x10\x4f\x92\x3e\xf8\x46\xb9\xe9\x47\x08\x95\xc0\x07\x38\x3e\xc7\x81\xd4\x01\xa5\x39\x55\x6d\x46\xe3\xf9\xe4\x3d\xa3\x11\x92\x38\x42\xe3\xf1\xf4\x5b\x38\x74\x4c\xc0\x7d\xe9\x4d\x8a\xc7\xd9\x55\x61\x3f\xd9\xe5\x20\xba\x2c\x0e\x4b\x76\x55\xc2\x9d\x73\xd6\xb7\xc2\xc7\xa4\xfc\x12\xa2\x2c\x02\x97\x7e\x70\xd5\x25\x1d\x39\xfb\x0b\xa9\x03\x93\xf7\x5a\x9b\x06\x7d\x01\x2e\xf4\xcf\x8b\x27\x26\x11\x69\x64\xfb\x00\xe6\x10\xce\x7a\x81\x60\x5c\x96\x9c\x58\x3b\x80\x9f\x07\x4b\x42\x43\x32\x20\x61\x8a\x63\x6f\xc6\x17\xf2\x67\x74\x20\x2c\x04\xb8\xc5\xb7\xa4\x14\x49\xda\x69\xd0\x33\x83\xc1\x56\x46\x79\x6c\xe6\x07\x4a\xdf\x8a\x98\x5e\x7a\xba\xda\x93\x27\x1e\xfb\xf5\x66\x46\xc4\x21\xbe\x85\x39\x63\xb0\x18\x3e\xa2\xab\x2c\x31\x3d\x32\x32\xe0\x9e\x16\x42\x55\xb0\xe8\x6f\x2c\x60\x66\x28\x99\xa0\x34\xf3\xb8\x89\x4a\x33\xc5\x96\x32\xc5\x88\x6a\xac\xad\x9c\x76\x38\xac\x1a\xfa\xc3\xd9\x5e\xc7\x31\x89\xaa\x02\xb2\x2e\x7f\x0f\x83\x89\xd4\x53\x38\x9c\xd9\x60\x02\x95\x01\x8b\x63\x9c\x08\x3d\x7a\xa7\x43\x4c\x2d\x68\x35\x1f\x0a\x5a\x87\x35\xa0\x55\x04\xc0\x02\xc8\x6f\x66\x7d\xf1\x12\x0c\xdc\xa2\xcf\x42\xc5\xee\x19\x07\xe1\xec\xa7\x57\xa9\xdb\xb3\xa1\x01\xc7\x25\x8b\x1e\xdd\x61\xd0\xa3\x6a\x83\xee\x3b\x16\xe0\x58\x40\x25\x0b\x48\x38\x0b\x40\x08\x7f\x40\xb8\x4c\x71\xec\xf7\xa1\xcf\xf8\xd0\x6f\x0f\x25\x88\xd1\x77\xd6\xb6\xc9\xc0\xe3\x29\x40\x6b\x2e\x05\xf8\x62\x64\x40\x1f\xb4\x0c\xf7\xe0\x01\x35\x51\xbb\xac\x1b\x07\x41\x42\xa0\x72\xa5\xca\x5d\x66\x42\xcc\xd7\xee\xef\xfb\x6b\x17\x31\xa5\x8f\x90\x58\x0a\xbf\x0b\x38\xf1\xc5\x50\xac\x46\x35\xd5\x3a\x12\x43\x51\xa3\xd3\xe9\x23\x74\xc2\x71\xcc\x82\x15\x6a\xa5\xdb\xaf\xd1\xeb\xd5\xaf\xe9\xb5\x42\x95\x5e\xce\xd1\xe6\xfc\x11\xbd\x44\x68\x2a\x60\x35\x2a\xbd\x51\xbd\x44\xe8\x6e\x2a\xa0\x46\xb1\xd7\xbf\xa6\x98\x8e\xb9\xab\xd4\xec\x4a\x09\x30\x5f\xb5\x37\xf7\x57\x4d\xcd\xf6\x02\x46\x25\x26\x14\x78\x1e\x08\x53\x45\x9b\x32\xed\x8a\x4a\x35\x07\xf8\xeb\xbf\x85\xa6\x0d\x94\xb0\x70\x52\xaa\xa7\x8c\xbb\xa6\x6e\xf7\xf7\xdf\xd4\x1c\x71\xd1\x53\xc3\x6b\x45\x16\xd0\x76\x8f\x88\x9d\x1a\x43\x9c\xad\xc9\xe4\xb0\x14\xdb\xdd\x9c\xd0\xcd\x09\x17\x21\xe7\xca\xe6\x84\x1b\x33\x6f\x3a\xba\xe7\xbc\xe9\xd8\xcd\x9b\xdc\xbc\xa9\x0e\x4f\x39\x96\x60\x81\x6a\x90\xa4\x19\xa2\x0a\x08\x18\x0d\x85\xaf\x7b\x2b\xe3\x0d\xbd\xb4\x0d\x9c\x82\x04\xb1\x1b\xe0\x70\x40\x04\xe3\xdf\xbc\xc6\xaf\xa3\xee\xd7\x66\xff\x66\xe7\x09\xa0\x77\x3e\x09\xc9\xa1\xf7\xb8\x16\x7a\x1f\x30\x1f\x5b\x13\x9b\xe9\x94\xf6\xf4\x4b\x16\x6e\xc7\xd1\x08\x4d\xb7\x88\xc6\xe3\xb9\x66\x7d\xc0\x44\x90\x68\x9b\xe6\x93\x5d\x65\xd1\x2a\x5b\x4e\x78\xab\x36\xc2\xa2\xf5\x35\xad\xa1\x6d\x01\x71\x67\x97\x43\xc2\xb8\x84\xb0\x4e\xd7\xd3\x35\x61\x6f\xa7\x17\x9f\x1d\x75\x73\xd4\x6d\x89\x72\x3a\xe6\xf6\x60\xe6\xd6\x6c\xdd\x8f\xba\x1d\xb4\x1c\x75\x73\xd4\xad\x0a\x2f\x73\xa4\x64\x09\x50\xbf\x13\x2e\x3d\xb1\xf3\x29\x01\x8a\xce\x5f\x09\xb4\x6d\x9a\x7c\x02\x66\x55\x70\x8b\x8e\x78\xa2\xac\xce\x4a\x18\xd1\x3d\xc8\xd0\x2a\x09\xc2\x2b\x22\x7a\x8e\x21\x38\x86\xe0\x92\x3b\xeb\x4d\x11\x8e\xef\x49\x11\x0e\x1c\x45\x70\x14\xa1\x0a\x4f\x23\xe6\x47\x8c\xb3\x54\x2a\xcb\x66\xfc\xc0\x86\xc8\x25\xe0\x63\xd1\xbe\x99\xc6\x3f\x9e\x24\x18\xd1\xfd\x7e\x90\xf8\xc6\x13\xfd\x20\x26\x40\x65\x65\x03\x4f\xbf\x8a\x33\xa7\xb1\x5f\x5c\xfe\xbe\xab\x8b\xfe\x58\xb1\xc6\x78\x10\x59\x32\xfa\x09\xf0\xac\xfd\x35\xcf\x83\xbc\x9e\xc8\xec\xc8\x8e\x23\x3b\x1b\x99\x0e\x59\xc6\xe6\xc6\xe6\x41\x35\xed\x68\xde\x77\x77\x63\x4a\xa7\x06\xf0\x06\x6d\x6b\x3c\x2a\xd9\xf2\xf8\x2e\x53\xd6\x6c\x14\x75\x39\x1e\x47\xe0\xe6\x2f\x35\x65\x14\x80\x1b\x5f\xf2\x85\x54\xa5\xd1\xd0\x67\xd4\x0f\xba\x98\x46\x60\xa8\x40\xb6\x32\xf4\x1b\x3a\xda\x5b\x34\x2b\xb8\xca\x44\x40\xa7\xba\x7d\x74\x36\x50\x8c\xe4\x09\x57\xd7\x4a\x2a\x67\xe9\x2e\xc6\x7d\xd0\x2d\xe5\x05\x10\x2e\x5d\xf5\x8b\xbc\xe5\xf9\x4a\x3f\x80\x05\xde\xad\xb4\xa0\x38\x11\x5d\xa6\xf4\x4e\xdb\x31\x11\xdd\x15\xe8\x7d\x95\xc9\x80\x2e\x72\x11\xd6\x9c\x01\xea\xee\x41\x97\x58\x3a\x0a\xb8\x40\x0a\x68\xcc\x2c\xfe\x50\x08\xf3\x1c\xa8\xa0\xb7\x34\x29\x97\x47\x04\x37\x86\x32\x95\x73\x5e\x75\x94\xc9\xe5\xbc\x1c\x65\xfa\x35\xca\xa4\xee\xb8\xdf\xc7\xb7\xfa\xca\xe7\x80\x83\x55\x80\xe9\x07\x7c\x8b\xae\x49\x1f\xd0\xa5\x11\x60\x71\xcc\xa9\xa4\xf9\x8f\x94\x80\x08\x56\xa7\xf8\x3f\x4d\xfb\x77\xe8\xfd\x04\xe4\xa9\xa4\x37\x07\x01\x79\xca\x6c\x89\xea\xaa\x3e\xe6\xe8\x52\x37\xbe\xe6\x74\x29\x13\xd5\xd1\x25\x47\x97\x36\x3e\x73\xb6\x31\x84\xa9\x59\xde\x03\x5e\xc7\x98\xdc\x1e\xf0\x27\x64\x4c\xfb\xab\x62\x4c\x53\x6a\x3f\x09\x61\xea\x12\x21\x59\xc4\x71\xdf\xff\x91\x62\x2a\x49\x0c\xdb\x7b\xbf\x1f\xee\x35\x90\x48\xfb\x7a\x8f\x71\x0c\x3b\xe8\xee\xc4\x44\x9e\x96\xd1\xdd\xea\x9b\x08\xfd\x14\x1b\xbb\xef\x48\xc5\x1c\xee\x3d\x9e\x38\x55\x5a\xe0\xc5\x73\xb1\xc0\x8b\x3a\x0b\x3c\x80\x42\x55\x5b\xe0\xf0\xb9\x58\xe0\xf0\xf1\x9f\xec\x56\x5b\xe0\xc5\x73\xb1\xc0\x8b\x7b\x7c\xdc\xbb\x4a\x6a\x69\x38\x0f\xba\x00\x8e\xf2\x2c\xa2\xa3\x98\x6e\x51\xd6\x51\xcb\x75\xa6\x96\xe5\x5c\x5c\xab\x59\xcd\x2c\xdd\xa9\x2c\x2e\x17\x57\x97\x99\x31\x07\xaf\x0d\x13\xf8\x7c\xf9\x7e\x16\x40\x85\xc4\xd2\x44\x6e\x9f\x50\x21\x31\x0d\xf2\x7d\x62\x4b\x39\xa8\xcd\x88\xb5\xfe\x87\xb5\x5d\x29\x33\xa1\xeb\x61\x02\xe8\x6d\x6e\x26\x07\x9f\x8b\xcb\xd0\x9c\xb2\xb4\xbc\xbb\xcd\x21\xe8\x86\x6d\x6b\x6a\xfd\x59\x0d\x66\xfb\xc5\xca\xd2\xdc\x6d\x4d\x5f\x70\x4c\x42\x7d\x5c\xac\xdb\xd9\x74\x82\x5a\xc7\xd5\xd6\x6c\xb9\xac\x93\xe3\x06\xf3\xb6\x71\x0f\x26\x6e\xe4\x07\xc0\xa5\xdf\x83\xa1\x9f\x26\x21\x5e\xc8\x49\x45\xf3\x19\xc1\x3b\x18\xa2\xcf\xa6\xe9\x27\xdb\xa5\x5e\xaf\x9e\x0f\x9c\x33\xbe\x42\x25\xd1\x99\x16\xe0\x04\x8d\x46\x48\xcb\x52\xcf\x83\xd6\xe5\xc3\xb5\x22\xe6\xa2\x7f\x41\xbb\xcb\x58\x0f\x9d\x02\x97\xa4\x43\x02\x2c\xc1\x31\x22\x97\x50\xd8\x48\x3a\xb4\x31\xac\x61\x26\xa1\x50\xc3\x1a\xf6\xf7\x1c\x6b\x70\xac\xa1\x0a\x56\x45\xda\xdf\x9e\x85\xd6\x04\x0b\x01\x61\x19\x4a\xcd\x09\x39\x11\x67\x69\xd2\x40\x03\x73\xd0\x79\x03\xf1\xec\xb0\xe5\xc5\x27\xe5\xb5\x50\x1a\x5e\xb5\x0c\x68\x3c\xfe\x63\x34\xca\x05\x31\x77\xb9\x30\xf7\xca\x40\xdc\xc1\x38\xaa\x4d\xd3\xc1\x24\x7e\xa8\x69\xd4\x15\x16\x8c\x2e\xdc\x44\xe7\x5a\xb8\xfb\x9a\x08\x6d\x8f\x46\x99\x64\xe3\xf2\x69\x8d\x6b\x47\x55\x26\x67\x7a\x57\xce\x13\x1d\x3f\x71\xfc\x64\xd1\x72\x3a\x7e\xf2\xf8\xbd\x34\xb5\x04\xc5\x7d\xb1\xe5\x08\xca\x03\x50\xb8\x2b\x65\x62\x26\xfc\xd5\x48\x2c\x24\x96\x69\xf9\x10\xbd\x85\xac\x79\x98\x96\xd6\x7f\xc9\xc3\x9a\xea\xbf\xb9\xbe\xbe\xc8\x92\x15\x0e\x42\x1d\x84\x6e\x24\x84\x2e\x63\xc5\x63\xbf\xee\x43\xee\x02\xcc\xe6\xae\x78\xbc\x9b\x1c\x63\x8a\xae\x4a\x7f\x52\xf0\xff\x77\xe1\x63\xbf\x66\xb7\x6d\xd3\x7d\xa0\xe4\x18\x42\x25\x43\xb0\x3f\x55\xc9\x8e\x73\xe9\xa5\x6d\x30\x3b\x07\x7d\x91\x06\xfa\x54\xbf\xe2\x33\x95\xe5\x7c\xda\x6b\x9a\x7d\x7c\x16\x62\xbe\x76\x9a\x02\x2d\x5b\x37\x4d\x1d\xd6\x3c\x5d\x60\x02\x2a\x2a\x3e\x58\x76\x4c\xc7\x7d\x80\xb3\xd1\x8c\x67\x63\x18\x41\x79\x51\xa3\x96\x11\xb8\x6d\x92\x8e\x11\x3c\x08\x33\xc3\x21\xc5\x7d\x12\xf8\x01\xa3\x03\xe0\x12\xf8\xaa\xd8\xc1\x08\x27\x24\xfb\x4b\xb1\x7f\x7d\xf3\x46\xd6\xed\x78\xfc\xcd\x6b\xe8\xdc\xbd\xae\xd0\x57\xba\xac\x47\x68\xa8\x8b\xd4\x85\x2a\x59\xf7\x84\x83\x35\xbb\xf9\xd4\xfe\x0e\x81\x44\xa7\xda\xec\x7a\x25\x22\xa3\x47\x6e\xd7\xe5\x62\x77\x5d\xe6\xf6\x76\xd8\xec\xb0\x79\x31\x09\xfd\x3a\x70\x6e\xb9\xe9\xba\x03\xe7\x47\x82\x73\x07\x93\x38\xe5\xb0\x4e\xd3\xdb\x67\x01\xae\xe7\xc6\x6e\x0e\x5b\x17\x88\xad\xb9\x8d\x1d\xb0\x6e\x7c\x9a\xff\xa0\xe6\x2b\xbd\xe2\x38\xf9\xf9\x69\xfe\x0f\x20\xba\xca\x3d\x3b\x24\x4a\xb9\x59\x81\xbb\xe0\x4c\xb2\x80\xc5\x2e\xe1\x7f\x82\x0e\x5a\x35\x0c\xc2\xed\x59\x74\x0c\xe2\xae\x2d\x01\x75\x47\xb8\x2f\x7c\xe5\xff\xd4\xb4\xb6\xe6\x34\xe1\x94\x51\x0a\x81\x84\x10\x95\xe5\x75\x94\xc0\xad\xf7\x2f\x5e\xce\xe5\x11\x81\x8d\x81\xc7\x72\xf6\xbb\x16\x1e\xdd\x8e\x39\x07\x8f\x73\x0e\x09\xd8\x56\xd4\x18\x02\x45\x37\x77\xb6\x89\x3d\xe9\xb6\x30\x93\xc3\x8f\x14\x84\xf4\x71\xd0\x9b\xc9\x81\x2f\x1c\x42\xd7\x1c\x3b\x2f\x8d\x6d\xd0\xcb\xd3\x77\x0e\x36\x17\x38\x93\x56\xf6\x75\xb3\x68\x07\x9e\x0b\x49\x4f\xd7\xa2\xa7\x5b\x3b\x76\xe8\x79\x67\x7a\xba\x02\x29\x69\x15\x54\x3e\x35\x52\xae\x2d\x16\x7e\x74\x60\xb8\x58\x30\xfc\xe8\xd0\x70\xf9\x68\xb8\x95\xbd\x56\xf9\x9d\x72\x29\xa5\xf5\xa1\x19\xe6\x9e\x08\xba\xd0\xc7\xd9\xe6\x8c\x09\xc2\x78\x42\x0e\x8d\x67\x84\x98\x9b\x3f\xfd\xeb\x49\x1c\x15\x7e\xe5\x49\xe8\x27\x31\x96\x84\x46\x13\x11\xbd\x98\x08\x99\x8f\x9d\xb1\x79\x8a\xe8\xb1\x97\xd5\x77\x8c\xd3\x7a\x94\xfd\xdc\x3d\xec\x67\x26\xf7\x24\xcb\xca\xbc\xa9\x9f\x25\x24\xe8\xe9\x80\x9a\xfd\x38\x93\xdd\xcf\x43\x8b\x3d\x14\x73\x6d\xf4\x75\x73\xcf\xba\xd9\xb7\x6f\x9a\xfd\xe2\xfa\xd0\xba\x6e\xda\x37\xfb\x7b\x76\x8d\xe5\x8b\x2d\xeb\xba\x19\x1a\x17\xbe\xc9\x75\x50\x81\x90\x25\x32\x8f\x3d\x77\xb6\x62\xbf\xf8\xc8\x7e\xb1\xdd\x4a\xeb\xc0\xbe\x29\x0e\xbe\xf7\xfe\x0c\x6d\x79\x73\x59\xa6\xcc\xf7\x1f\xa6\x41\xc2\xcb\xfa\x2e\x0f\x74\x6f\x85\x24\x0c\xbd\xd6\xe1\x1f\xbd\xc2\xa2\xdb\x66\x98\x9b\xb7\x79\xa9\x66\x0e\xde\xf5\xd5\xd9\xbf\x8f\xbe\xbf\xef\x67\xdd\x3e\x28\x86\xc6\xd6\x78\xeb\x7f\x01\x00\x00\xff\xff\xf1\x6b\x4d\x35\x9b\xa0\x00\x00"), - }, - "/charts/istio-telemetry/grafana/dashboards/istio-mesh-dashboard.json": &vfsgen۰CompressedFileInfo{ - name: "istio-mesh-dashboard.json", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 26084, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\x7b\x73\xdb\x36\x12\xff\xdf\x9f\x02\xc7\xbb\xeb\xd8\x37\x7a\x90\xb2\x95\x58\x4a\x9c\x4e\x6c\x27\x4d\x6f\xe2\xd6\x13\xbb\xb9\xc9\x44\x19\x0d\x44\x42\x14\xce\x24\xc0\x02\xa0\x2c\xd7\xe3\x7e\xf6\x1b\x80\x2f\x90\x84\x1e\x76\x94\x38\xd7\xf0\x8f\xc4\xd2\x2e\x88\x05\x76\x7f\xd8\x5d\xbc\xa8\xdb\x1d\x00\xac\xf1\x18\x93\x28\x16\xdc\x1a\x82\x8f\x3b\x00\x00\x70\xab\xfe\x07\xc0\x22\x30\x44\xd6\x10\x58\xa7\x17\xe3\xf3\x77\xbf\x9e\xbd\xba\x7c\xf3\xea\xb7\x0b\xab\x95\xb1\x03\x38\x41\x81\xe4\x9f\x33\x1a\x22\x31\x43\x31\x2f\x98\x1e\xe2\x2e\xc3\x91\xc0\x94\xc8\x22\x05\x43\xdc\x44\xaa\x52\x0f\x0a\xc8\x69\xcc\x5c\x54\xf0\xa2\x20\xf6\x31\xf9\xd9\x93\xfc\xc8\x50\x69\xc2\xff\x25\x6d\x96\x26\x56\x15\xb8\xdb\x01\xe0\x53\x2b\xe9\x12\x43\xbf\xc7\x98\x21\x43\xa7\x32\xf9\x3e\x83\x53\x48\x60\x51\x39\xf6\x8c\xe4\x4c\x09\x3f\x55\x19\x73\xc4\x78\xda\xbb\x7e\xa7\xd7\xd9\x4f\x1b\xd1\x32\x8b\x8b\x20\x41\x81\x41\x58\x34\x33\x8a\xd2\xc9\x25\x41\x76\xc7\x5e\x2d\xc8\xa4\x57\xbc\x54\xa3\xa4\xae\xcb\x07\xca\x35\x76\x90\x63\xe2\x07\x88\x0b\x28\xea\x22\x2f\x0c\xbc\x2d\x88\x14\x70\x12\xa0\xba\xb4\xcb\x32\x79\x1b\x82\xd0\xc2\xd0\xab\xcb\x12\x75\x89\x98\x1c\xa8\x90\x10\x2a\xa0\x1c\x24\x12\xa9\x89\x5c\x2b\xc0\x5c\xe4\xb8\x2d\x5a\x03\x80\x35\x89\x71\x20\x7e\x96\xd5\x39\xad\x82\xaa\x59\x7c\x08\xac\x76\x1b\xa4\x50\x05\xed\xb6\xa5\x15\x43\x44\xa9\x60\x08\x04\x8b\x91\x46\x9f\x61\xcf\x40\xc5\x2e\x25\x27\x34\xa0\x4c\xd6\xc9\xfc\x09\xdc\xb5\x5b\xa0\xe7\x38\x2d\xd0\xeb\xf7\x5b\xc0\xd9\xd3\xab\xce\x3a\xff\xb2\xe8\x0e\xf8\x01\xbc\x0c\x10\x13\x5c\x2f\x57\x60\x94\xcf\x26\x14\x32\xcf\x4a\x79\x77\xea\xef\xa7\x9d\xd4\x04\x16\xf2\xb0\x48\x5b\x3b\x85\x01\x57\x0d\xb3\x7c\x82\x84\xf2\x0d\x24\x0e\x82\x84\x22\x07\xca\x25\xa5\x81\xc0\x91\x35\x04\xb6\x22\xe2\x52\x91\x00\x93\x2b\xe5\x05\x12\x85\x2b\x4b\x1a\xbc\x82\x4b\x89\x40\x44\xaa\xdd\x7a\xee\xe1\xf9\x8b\x11\x01\x40\x7e\x00\x5c\xdc\x04\xe8\x68\x64\x45\x94\x63\xd9\xb1\x21\x80\x13\x4e\x83\x58\xa0\x67\x60\x42\x85\xa0\xe1\x10\xd8\x23\x4b\x3d\x00\xc0\x73\x08\x66\x0c\x4d\x8f\x46\xd6\x4c\x88\x88\x0f\xbb\x5d\xcc\x05\xa6\x1d\x4c\x47\x16\x10\x90\xf9\x48\x1c\x8d\xac\xf1\x24\x80\xe4\x6a\x64\xe5\x95\x4f\x29\x11\x6d\x8e\xff\x40\x43\xb0\x6f\x47\x8b\x67\x40\x62\xab\xed\x21\x97\x32\x98\x08\x25\x94\xa0\x67\xc0\x95\x06\x19\x02\x4c\x66\x88\x61\x31\xb2\x5e\x3c\xc7\xa1\x0f\x38\x73\x0d\x02\xbb\x38\xf4\x93\x2f\xed\x80\xfa\xb4\xc3\xe7\xbe\x26\x71\x86\xb0\x3f\x13\x43\xd0\xb7\xa3\xc5\xc8\x7a\x01\x7e\x96\x05\x9f\x77\x61\xd2\xf1\xee\xfd\x55\xf0\x0c\xb0\xa4\x46\xfb\x19\xd0\xba\xe3\xf4\x55\xfd\x89\x76\x94\x10\x80\x39\x80\xc4\xa0\x29\x1f\x8b\x59\x3c\xe9\xb8\x34\x4c\x9a\x9d\xfc\x6f\xd2\xdb\x0b\x1a\x21\x02\xa2\x00\x8a\x29\x65\xa1\x6c\x35\x10\x33\x28\x40\xc4\xe8\x1c\x7b\x88\x03\x08\x62\x82\x25\x0f\x5c\xc3\x1b\x20\x28\x70\x29\x21\xc8\x15\xad\x75\x56\xea\x7a\xd4\xe5\x5d\x97\x12\x17\x45\x82\x77\x05\x83\xd3\x29\x76\xdb\x21\x24\xd0\x47\x21\x22\xa2\x4b\xe7\x88\xcd\x31\xba\xee\xcc\x44\x18\x18\x1b\x97\x14\x96\xad\x6a\x01\x48\x3c\x70\x4f\x99\x04\x89\x6b\xca\xae\xda\x90\x78\x6d\x18\x8b\x59\x57\xfe\xb7\x5c\x1a\x47\x6e\xcc\x94\x34\x10\x62\x97\x51\x2e\x9b\xe7\x22\xde\x49\xc5\x4e\x58\xaa\xfc\x5f\x10\xf2\xc0\x0c\x05\xd1\x8f\xe0\xdf\x14\x13\x20\x66\x68\x55\xa3\x5c\x1a\x86\x31\xc1\xe2\xa6\x6b\x14\x9b\x98\x32\x2f\x24\xe5\x77\x74\xe8\x24\x7f\x0b\x47\xe8\x33\xec\x9d\xd3\xc2\xc9\x25\x9e\xc7\x1a\x82\x7d\xcd\x3d\x5c\x5b\x43\xd0\x3b\xd0\x08\x8b\x6c\x50\xa7\xdf\x6f\xe4\xf7\xcc\x65\xe4\x75\x27\x58\x56\x3e\xd6\x8e\x16\x15\x37\xed\xec\x17\xf9\x4a\xc9\x15\x28\x52\x48\x95\xef\xb3\xa4\x7a\x8b\x07\x15\xe0\xcb\x4d\xcd\x21\x2d\x4b\x3b\x87\x91\xb0\x6a\xcd\x10\x58\xa8\xa7\xf4\x5c\x87\x41\xc2\x23\xc8\x12\xcf\xa2\x7b\xd8\xdc\x15\xaa\x28\x62\x0c\x3e\x2e\x74\x67\xe8\x12\x87\x88\xc6\x42\xf3\x68\xa9\xbb\x0a\x28\x3b\x86\xee\x95\xcf\x68\x4c\x3c\xdd\x4d\x16\xfc\xf7\x30\x88\x91\x99\xc5\xb5\xf8\x02\x52\xff\xde\x3b\xe8\xb7\x40\xff\x20\xf9\x67\x77\x06\x25\x0f\x9f\x94\xd8\x7f\xda\x02\x4e\x6f\xd0\x02\x07\xb6\x2c\x72\x68\x28\xd3\xb7\x5b\xc0\x79\xda\x6b\x01\x59\x9b\xdd\x19\x3c\xdd\xcb\x34\x55\x68\xbd\x1c\xb0\x4c\xa9\x87\x1c\xbb\x50\x99\x94\x46\x1a\xd9\x87\xb1\x5f\x31\x4c\x08\x17\x59\x3f\x1d\x5b\xc7\x4a\x88\x49\xc6\xd0\xc9\x7c\x46\xaf\xab\x3a\x91\xe6\x98\x31\xc4\x67\x34\xf0\xde\xca\xa4\x96\xaf\x2a\x71\x06\xd9\x15\x52\x1a\x94\x06\xad\xc1\x60\x63\xa4\x3f\x59\x03\xf4\xfd\x5a\xd5\x0a\xd0\x3d\xbb\xf8\x4e\x04\x62\x73\x18\x54\xd1\x61\x02\x3a\x8c\x22\x4c\xfc\xcb\x04\x75\x8e\x89\x5e\xc6\x44\xd1\x78\x2d\xbe\xcf\xa5\x42\xa5\x3f\x2d\xe5\x3e\xaa\xc8\x3c\x33\x42\x4e\xbc\x6b\xad\xae\x8c\x41\xe2\xaf\xa9\xac\x57\x54\x56\x03\x51\x08\x17\xa7\x50\xc0\x73\x8a\x89\x9a\xbb\x68\xd6\xb7\xa4\x36\x14\xe3\x2c\x1d\xdf\xa9\xff\x47\x9e\x55\x2a\xa3\x92\xb5\x8a\xf2\x22\xca\xc5\x14\x2f\xca\x03\x39\x25\xbe\xa6\x44\x5c\xa4\x4e\xa0\x6f\xff\x53\xe3\x33\x54\x7f\x46\xd1\x96\x3e\xa2\xba\x7f\x06\xa3\x15\x6a\x9f\x32\x1a\xca\xe7\x64\xfb\xca\x0a\x12\x49\xc3\xad\x5f\xba\x2f\x2b\x0c\x9a\x3f\xb0\x42\x77\xd2\x27\x5d\x05\x98\x54\x9d\x1c\x0e\x82\x72\xce\xb7\xef\xb4\x80\xe3\x1c\xb6\x80\x73\x38\x90\xc3\xd9\x39\x2c\x8d\xf8\xa9\x94\x53\x4b\x1d\x65\xc5\x7a\x35\x49\x2d\x3d\xe9\x18\x06\xfb\xa5\xe7\xd3\xc1\x68\x1c\x47\x2a\xff\x3b\xa1\x41\x1c\x56\x27\x90\x2a\x18\xad\x50\x1b\x5a\x44\x89\x68\xe9\x1a\x77\x79\x1c\xee\x62\x06\x05\xda\x55\xb1\x4d\xcd\x0c\x11\x17\x7c\x2c\xa8\x80\xc1\x2d\x43\x11\x65\x02\xb1\xa3\x91\x9c\xb2\x0a\x4c\x54\xc2\x35\xb2\xee\x3e\x3a\xe1\xa7\xbd\x3d\xd9\x69\xdb\x2e\x65\xbb\xda\xc0\x7b\x0d\x5d\xa1\xba\xe9\x94\xd8\x0c\x4d\x93\x39\x6c\xc5\x38\x5c\x20\x99\xa6\x1e\xac\xb0\x4c\xee\x65\x78\xa5\xd3\x59\x70\xf9\x29\xa0\x13\x18\x80\x77\x49\x2f\xc0\x7b\xa9\x20\xb4\x2c\xe2\x94\x3d\x7f\x16\x72\x4c\x93\x32\x35\xe2\x74\xac\x1e\xea\x58\x55\xdc\xd5\x58\xa5\xb2\x67\xd6\xd1\x86\x30\xcd\x06\xf8\x5a\xa4\xaa\x82\xd9\x84\x1f\xce\xfd\x26\x54\x2e\x0f\x95\x11\x62\x2e\x22\x42\x26\x64\x9f\x1d\x32\x0f\xbf\x54\xcc\x54\x45\xb6\x17\x34\x9f\x6c\x18\x34\x9d\x26\x68\x36\x41\xb3\x09\x9a\xeb\x83\xa6\x0c\x97\xf7\x8f\x96\x2d\xc0\x10\x8f\x28\xe1\x68\xec\x52\x0f\xfd\xed\xcf\x91\xd5\xef\xfc\x2b\x8f\xa2\xa0\x0b\x1e\x56\x6f\xfa\x7c\xd9\x5c\x85\xc7\x13\x38\x44\x63\x8e\x18\x46\xfc\x71\x02\xf4\xa0\xdf\x02\x83\x81\xfc\xd7\xe9\x2f\x0f\xd6\x17\xb1\xeb\x22\xce\xc1\x3b\x28\x10\xd8\x25\x94\xb4\xfb\x8b\x45\xae\x31\xbe\xd7\x84\xef\x26\x7c\x7f\x4f\x33\x5d\xa7\xb7\x61\xd4\xee\x35\x51\xbb\x89\xda\x4d\xd4\xde\x2c\x6a\x3f\x60\x92\x5b\x09\xdb\x47\x7f\x8e\xac\x03\x3d\x6c\x7f\xb3\x71\xd7\x10\x6b\x0f\x16\x0b\xde\x04\xd2\x26\x90\x7e\x57\x81\xf4\x70\xc3\x40\xba\xdf\x04\xd2\x26\x90\x36\x81\xf4\x6b\x06\xd2\xfe\xff\x6b\x20\xed\x37\x81\x54\x46\xbc\x38\x24\x15\x7f\xb8\x49\x0c\x2a\xfa\xeb\xd8\x7a\x87\x97\xba\xf8\x9e\x53\xf1\xf1\x6b\x37\xc0\x9f\xd4\x60\x3f\xc3\x9e\x8a\xfa\xbf\xce\x11\x63\xc9\x69\x9e\xb2\xa1\x54\x10\x78\xba\x72\x27\x3c\x82\x3e\x4a\x9b\x5e\x72\x6d\x0c\x45\x08\xd6\x1c\x5e\x42\x3d\xc5\x0c\xb9\xd9\x09\xbf\xb9\xb6\x7f\xee\x32\x5a\x1b\xe4\x6a\xe0\xbe\x41\xd0\x43\xac\xc6\xa1\x4c\x94\x35\xe3\x52\xf9\xb8\xae\x09\x0f\x71\x77\xd9\xb0\x57\xfb\xf5\x2b\xa0\x04\x03\x0c\x15\xda\xff\x43\xd9\x55\x40\xa1\x57\xc6\x8e\x4a\x6f\x52\xaf\xaf\xf7\x12\x2c\xc9\x7d\xc0\x46\xf9\x0f\xd8\x30\x07\x02\x1b\xe4\x41\x40\x87\x30\x48\xb1\x88\x5e\xe7\x6e\xe4\xc3\x87\x0f\x1f\xda\x67\x67\xed\xd3\x53\xf0\xe6\xcd\x30\x0c\x87\xbc\xe2\x4e\x3c\xe4\xe2\x10\xaa\x24\xa5\x57\x62\x48\x24\xd4\x33\x97\x94\x71\xa9\xbc\xe6\x71\x00\x57\x95\xc9\x4f\x5f\xe5\xda\x05\xc5\xf1\xae\x5a\xf1\xdf\x98\x3a\x31\xda\xcd\x8b\x74\xbd\x49\x7a\x4a\xe9\x3a\x7d\xbc\x9d\xf3\x7e\x9c\x43\xd6\x96\xa1\x9f\x47\xd0\x45\x47\xff\x18\x8f\x5d\x14\x04\xe3\xde\x0f\x92\x9e\x15\xcf\xc9\x65\x61\x11\x14\x02\x31\x85\x4c\xcd\x53\x8f\xaf\x8d\x08\x88\x18\xe2\x88\xcd\x0b\x8d\xd6\xfb\xca\x21\xc1\x22\x19\x1f\x75\x66\xc9\xa7\x7e\x2c\x5b\x2a\x73\x92\x33\xec\x79\x88\x94\xe5\xaa\xad\x9a\xa1\x1a\x1a\x4c\x58\x6b\xb3\xa0\x1c\xc7\x0d\x7e\x0d\x66\x96\x1e\xd0\x7a\x54\xb3\xa4\x9b\xb2\xbc\x31\x8f\xc1\x3c\x6a\x66\x05\xfe\x5e\xcd\x3d\x37\x30\x11\x89\xc3\x09\x62\x66\x13\xc9\xb9\xde\xe6\x06\x3a\xef\xdb\xe0\x2d\x14\x88\xb8\x37\x8d\x8d\x96\xdb\xe8\x78\xbb\x36\xba\x97\x85\x06\x8d\x85\x36\xb0\xd0\xe9\x63\x5a\x68\xd0\x58\x68\xbd\x85\x5e\x3d\x9e\x85\xf4\xed\xc6\xe5\x26\xb2\x64\xd2\x64\x60\x7f\x4f\x46\x7a\xbd\xca\x48\xe5\x56\x77\x06\xfd\x6a\x47\x80\xd3\xb1\xed\xe5\xcd\xde\xc4\xac\xfa\x91\x9d\xcd\x0d\xdc\x4c\x63\x96\x4c\x63\xca\x8b\x4a\xf5\x19\x4a\x3a\x55\xd8\xee\x04\xa5\x36\x11\x49\xe6\x27\xf5\x79\xcb\xfe\xbd\x66\x28\xe3\x39\x64\x5b\xf6\x21\xf7\x4c\x67\x2f\x92\xab\x04\x0d\xca\xbe\x2a\xca\xd2\x0b\x1c\x15\x90\xa5\xd4\x0c\x4b\x1b\x21\x89\x9b\xec\xb7\x09\x88\xb8\x60\x98\xf8\xcd\x54\x75\xbb\xe8\x59\x37\xde\x73\x87\xf1\x65\x27\xb1\x3b\x95\x3e\x6e\xbe\x36\xae\xee\xfb\x8e\xff\x4b\x31\xd9\xdd\xca\x29\xb1\xa3\x91\xd5\xb3\xed\x62\x91\x7c\x72\x03\x76\x4d\x9a\x69\x81\xd5\xfa\x2a\xf3\x53\xd4\xef\xb5\xc0\x68\xa9\x5f\x95\x4d\x19\x59\x9d\xe4\x8f\xa9\xd0\x72\x4e\x21\x76\x64\x2d\x3f\x97\x56\xba\x6c\xaa\x98\x33\xc3\xba\xac\x62\x60\xc2\x05\xac\xdd\x0f\x4a\x59\x2b\x37\x01\x02\xe4\x23\xe2\x15\xd0\xbc\xbd\x35\x2a\xea\xee\xae\xb3\x84\x53\xf4\x05\xdc\xdd\x95\x9b\xab\x6d\x30\xac\x1d\xeb\x06\x7c\xcc\x30\x17\xd4\x67\x30\x1c\xff\x1e\x43\x22\x70\x80\x76\xed\x8e\x1c\x74\x66\xe0\x8c\xbd\x98\x65\xd6\x73\x29\xf1\xf8\x78\x12\xbb\x57\x48\xac\x3b\x17\xa8\x20\x13\x20\x33\x40\xd6\xc1\x66\xaf\x81\xc8\x76\x20\x72\xbc\x3d\x88\x0c\x1a\x88\x7c\xa3\x10\x01\x9f\x87\x91\xd3\x2d\x62\x64\xd0\x60\xe4\x2f\x89\x91\x57\x0f\xc2\xc8\x76\x72\x91\xda\x89\xf5\x87\x26\x23\x9f\x7d\xd6\xfd\xe1\x92\xff\x4a\x40\xac\x4f\x1d\xbe\x09\x88\xbe\x5e\x99\x48\xe3\x10\xbd\x4e\x8e\xdf\x94\x36\xcb\xf3\x93\x15\x6f\x2e\x2f\xcf\xbb\x3f\xbd\x3b\x3f\x01\xd9\x0a\x4e\xf5\xa0\x85\xd4\x67\x5d\x9b\x1b\x1d\xc2\x48\x1e\xd9\x01\x8f\x7a\x9a\xa1\x74\x20\x6d\xa3\xd3\x0c\xbd\xa7\x3b\x95\x21\xbf\xe1\x71\x06\xc7\x1e\xe4\x84\x7b\x9f\x67\xf8\xd2\x27\x17\xf4\x03\xee\xcd\xc9\x85\x2f\xb9\x18\xb3\x95\x93\x0b\x9f\xb7\x62\x23\xdc\xe8\x3e\x87\x17\x8c\xa7\x17\xbe\xa3\xc3\x0b\xc7\x37\x02\x71\x70\x21\x7d\x59\x03\xe6\xba\xc1\x37\xd9\x27\x2f\xb7\xfa\xf3\xb6\x20\x8e\xef\xb5\x83\x9e\x18\xef\x1d\x72\x11\x9e\xa3\xc6\x1b\xad\x30\xe0\xc9\x76\x17\xef\xef\x67\xa6\xc6\x30\x06\xc3\x3c\xfe\x01\xa1\x26\x8a\x7f\x4b\x1b\x77\x86\x1d\x3a\xf3\xc9\xc2\xde\x57\xd8\xb8\x6b\xf6\x5c\xbe\xf0\xe8\x7f\xcc\x3d\x97\x75\x06\x6b\x76\x5a\xbf\xd3\x9d\xd6\xfb\x6c\xd7\xef\x54\x14\xbe\x8d\x8d\x3b\xe1\x46\x63\x96\x26\x73\xe3\x89\xcc\xed\xea\x8b\x54\xc9\x22\x41\xb3\x4d\xf7\xe5\x17\x4f\x97\x2c\x3a\x9d\x3c\x68\x5d\xd4\x60\x69\x8e\x88\x68\xac\xfc\x8d\x5a\xf9\xe5\x67\x2d\x2d\x5e\x9e\x9c\x7f\xe5\x45\x45\x15\xbc\x4e\xb2\x30\x74\x5b\xac\x69\x4d\x20\xab\x5d\x86\x55\x6f\xfc\x7d\x8b\x88\x2f\xd4\x2a\xa1\x5d\xa2\x23\x53\xf1\xb5\x8b\x93\x58\xad\xd3\x39\xeb\xd7\x24\x07\xf7\x5d\x92\x3c\xe8\xef\x54\x46\x5b\xba\xe2\xe8\x14\xd2\x12\x73\x97\x85\xc1\x00\xfb\xe4\x25\xbf\xac\xbe\xb8\x38\x63\xcf\x7d\x03\xd5\x8d\x99\xc9\x02\xc9\x65\x55\x13\x15\x13\x03\x55\xbd\x7b\xf7\xc2\x88\x6a\xfd\xc2\xa4\x46\x55\x0e\xc0\x50\x5a\xdd\x8f\x5b\xfe\xa2\xae\x00\x13\xc4\xab\xab\xa0\x92\x78\x8d\xbd\xc4\xb6\x3a\xb5\xba\x28\x5b\xbb\x63\x5b\xba\xa5\x9a\x9d\x86\x84\x7e\x7d\xc9\x37\x92\x4f\x31\xe8\xe1\x58\x56\xd9\x2f\xd3\xeb\xf8\x61\x88\x78\x88\xa9\xf5\x5a\x6b\x1a\x50\xed\x5e\x62\x72\xd9\x32\x5b\x5a\xae\xb4\x4f\xb9\x12\x13\x4c\xb9\x80\x6e\x6d\x25\x51\xdd\xb6\x8c\x90\xf7\x36\xb9\x14\x5b\x19\x41\xf7\xba\x71\xaa\x5c\xf4\x24\xc6\x81\x97\x78\x5e\x97\x86\x11\x25\x88\x88\x16\x10\xd0\xdf\xfa\xfb\x8f\x0c\xce\x2a\x97\x08\xee\xee\x86\xe0\xf6\x56\xca\x7d\xa8\xb3\x32\x27\x3e\x2b\x9c\x58\x88\x2e\x66\x78\x5a\xbb\x65\x98\x7b\xb7\xe4\x6d\xc3\x27\x59\x13\xb9\xd4\xd1\xfb\xf4\xd5\xea\x45\xe9\x3c\x2f\xbc\xd5\xc1\x0f\x19\xf2\xea\xf0\x4f\x17\xee\xed\x2a\xf2\xc7\x99\xe7\xc3\xc4\xc3\x73\xec\xc5\x30\x30\xbc\xe9\x77\x03\xcf\x59\x79\xb5\xff\x02\x2e\x70\xc5\x37\x25\x7b\xd3\xbc\x96\xdd\xe7\x2f\x25\x16\xe5\xf5\x8a\xec\x12\x7c\xa5\xb4\x79\x78\xe7\xc3\xf8\xe3\xa7\x5a\xf3\x6f\xe0\x62\xd5\x9e\x43\x01\xaf\x24\x03\x2d\x23\x27\xfd\xcd\x87\xda\x84\x24\xa0\xfe\x31\xe4\xa8\x06\xb5\xc4\x8b\xd5\x8a\x27\x6e\xac\x46\xae\x5f\xee\x5e\x9e\xf3\x7c\x03\xed\xd4\x7d\xa4\x69\x24\xdc\xd4\xad\xae\x82\x84\x29\x3a\x48\xfa\x5b\x34\xcf\x5b\xbd\xa3\x57\x5a\xfc\x62\x00\x43\x53\x39\xba\x64\xb7\xfb\xc9\xa0\xb7\xb8\x3b\x43\x21\x7c\x9f\xff\xd4\x80\xf3\x24\x21\xa7\x6f\xb1\xb6\x3c\xc8\xae\x92\x92\x02\xfa\xc5\x98\xb4\x04\x0a\xa3\x00\x0a\x4c\xfc\xfa\x6f\x0f\x14\xaf\xe2\x57\x28\xcc\xf9\xf9\xeb\x05\xe8\x75\xbb\x1f\xa6\x3a\xcf\xde\x20\x40\xaf\xad\xd2\x63\x11\x76\xaf\x94\x0f\x4e\x1f\x4e\xdb\x3e\xce\xbc\x93\x0e\xc2\xac\x37\xea\xb3\x63\x6b\x5f\xf6\xf5\x2f\x4e\x58\x7c\xee\x6b\x9f\x1d\xfd\xcb\xbe\xad\x73\xb4\x51\xd8\xd3\x3e\x3b\xe9\x8f\x0f\x7c\xca\xfa\x20\x7d\x29\x8d\xb2\xdf\x62\xf8\xb8\x56\x8a\x5e\xf1\x13\xbd\x62\x5d\x4a\xef\x40\xff\xa2\xbd\x4a\xe2\xa9\xa7\xb7\x37\x6b\x4b\x49\x7d\x7f\x50\x15\x57\xac\x09\xa3\xd7\x3c\x9d\x25\x56\x7d\xe2\x19\xe2\x33\x70\x5a\x9a\xfe\x6a\x3f\x3a\x71\xb0\x73\xb7\xf3\xbf\x00\x00\x00\xff\xff\x46\x83\x03\x48\xe4\x65\x00\x00"), - }, - "/charts/istio-telemetry/grafana/dashboards/istio-performance-dashboard.json": &vfsgen۰CompressedFileInfo{ - name: "istio-performance-dashboard.json", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 763334986, time.UTC), - uncompressedSize: 45499, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\xeb\x6f\xdb\x38\x12\xff\xde\xbf\x62\x4e\x1f\x0e\x49\xcf\x49\x6c\xb7\x49\xda\x00\x3d\xa0\x6d\xb6\xbb\x05\xf6\x11\x74\xbb\xbb\xc0\x35\x85\x41\x4b\x63\x9b\x17\x99\xd4\x91\x94\x13\x37\xeb\xfd\xdb\x0f\xa4\x64\x59\x4f\xbf\x9f\x59\x7e\x8a\x4d\x53\xe4\x3c\xc8\x99\xdf\x70\x86\xd1\xe3\x33\x00\x87\x30\xc6\x15\x51\x94\x33\xe9\x5c\x81\x6e\x02\x70\x7c\x2a\x95\x73\x05\x5f\xcc\x37\x88\x5b\xcd\x2f\xed\x90\xfa\xea\x23\x73\xae\xa0\x51\x9b\xb4\x7a\x44\x11\xc9\x43\xe1\xa2\x73\x05\xce\xc9\x09\x7c\x2f\x48\x87\x30\x02\x27\x27\x4e\xaa\x1b\x32\xd2\xf6\x75\x17\x25\x42\x4c\xb5\xf7\xa8\x57\xd2\x4a\x5d\xce\xde\x73\x9f\x0b\x3d\xa6\xe8\xb6\xc9\x51\xbd\x06\xcd\x46\xa3\x06\xcd\xf3\xf3\x1a\x34\x8e\xd3\x43\x33\xd2\x37\x73\xbf\x9d\xb0\x03\xff\x84\xb7\x3e\x0a\x25\xd3\xfd\xd4\x30\x30\xfd\x3c\x22\x7b\x6d\x4e\x84\xe7\xc4\xbf\x8d\xcc\xdf\xaf\xcf\x00\x46\xba\xbb\x83\x1e\x55\x31\xb5\x1d\xe2\x4b\x43\x98\xd3\x65\xa8\x3e\x7a\xce\x15\xb0\xd0\xf7\xa3\x16\x41\x82\xde\x67\xce\x7d\x45\x03\xe7\x0a\xea\xa6\x91\xea\x2e\xaf\xcd\x47\x9f\xb2\x3b\x2d\xd8\x2f\x5f\xcd\xd7\x80\x30\xf4\x65\x22\xda\xb1\x60\x1d\x97\xfb\x3e\x09\x24\x7a\x39\x31\x38\x5d\x41\xbd\x1b\x3e\x51\x4d\x24\xaf\x9c\xf8\xef\x9d\x2b\x68\xbe\x4c\x35\x3c\x8c\x49\x89\xbf\x0f\xf5\xf7\x31\xa3\xc9\xd8\x86\xcc\x66\x32\x50\x9e\xb8\xac\xe6\x0d\x91\x4c\x21\xd3\x0b\xc3\xf9\xdc\x43\x70\x7b\x44\x28\x09\x9c\x81\xea\x51\x09\x89\x44\x81\x08\x04\xaa\xbb\x7a\xe8\x81\xe2\x20\x7b\xfc\x1e\x3e\x4a\x45\x39\xf4\x09\x65\xe0\xf2\x7e\xc0\x19\x32\x25\xc1\xe5\x52\x01\x65\xa0\x50\xf4\x25\x08\x8c\x16\x91\x84\x50\x51\x9f\x7e\x33\x7a\x84\x90\x79\x28\x40\x2a\x24\xde\x10\x7c\x4e\xbc\xd3\x5b\x76\xcb\x4e\xe0\xf9\xf3\xc1\xfb\x9b\xdf\xce\x1a\x77\x20\x02\x79\xf5\xfc\xb9\x99\x47\x82\x6e\xcc\x3c\xdf\x1e\x82\xea\x61\x34\x75\x44\x45\x8a\x00\xc6\x45\x9f\xf8\xf4\x1b\x7a\xba\x5f\xa3\x5e\xaf\x83\xc0\xff\x85\x28\x95\x3c\x93\xe8\x72\xe6\x9d\xc2\x1f\x3d\x64\x40\x3d\x1f\x81\x0b\xf0\xf9\x3d\x28\x41\x3a\x1d\xea\xd6\x22\xc6\x8d\x1c\xe0\x9e\xfa\x3e\xb4\x11\xda\x3e\x61\x77\xa7\x60\x04\x14\x8a\x01\x42\x87\x0b\xa0\x7a\xda\x93\x40\xf0\x87\x21\x08\xec\xa0\x90\x5a\x2e\x9a\x2a\x89\x62\x40\x35\xc7\x92\x7a\xe8\x12\xa1\xe5\xe9\x0f\x4f\x27\xfc\x69\xc6\xca\x58\xca\x73\x52\x03\xc6\x55\x8a\x9d\x78\x88\x9f\xb0\xcf\xc5\x50\x0f\xd2\x37\x9f\xa0\xc3\xb9\x0a\x04\x65\xca\x10\xa6\x49\x98\x8c\x71\x0a\x9f\xd1\xc7\x3e\x2a\x31\x04\xc2\x3c\x08\xb8\x4f\xdd\xa1\xd1\x67\x4e\x4e\x46\xe6\x35\xd3\x89\x71\xd0\xdb\x1f\xa8\x34\x0a\x60\x00\xf7\x5a\x5e\xaa\x87\x7a\x19\x68\x09\x8f\xe5\x75\x0a\x1f\xb4\x2c\x58\x57\xa0\x94\xe6\xd9\x94\x5c\x6a\x86\x96\xf1\x48\x01\xea\x8e\x52\x11\xe6\x62\xcc\xc9\xbb\xa1\x42\xa9\x87\x62\xb2\x83\x42\xa0\x77\x06\x12\xdd\x89\xde\xf5\xe3\x2c\xec\xb7\x51\x00\xef\x40\xdb\xf4\xee\xf8\xfc\x9e\xb2\x2e\xa8\x9e\xe0\x61\xb7\x07\x48\xdc\x5e\x5e\x72\x66\x35\xdd\xb2\x94\x91\xa8\xd8\x76\xc9\xd6\xbb\xa8\x65\xdb\xf2\xdb\xaf\x6c\x0b\x26\xdb\xb0\x91\x6a\x1a\x65\xe6\x34\xdb\xb1\xf1\x3a\xd3\x96\x35\x1f\x49\x73\x9f\x1b\x83\xe9\xf4\x89\xb8\xf3\xf8\x7d\x8e\x78\x45\xfb\xf8\x41\xf0\x7e\xca\x4e\x65\x7e\xfb\xb5\x47\x3b\xaa\xfc\x47\x65\x0c\x9e\x73\x83\xa2\xa3\x15\xce\x5c\x84\xeb\x64\x5f\x7f\xfa\xee\xed\xf5\x4f\xdf\xe5\xe6\xd2\xfa\x08\x88\x88\xec\x42\xd6\x82\xa7\xcc\xad\xc2\x07\xe5\x24\x3f\x8c\xe2\x4f\x09\x53\xb3\x66\xfe\x99\x2b\x9c\x98\xf1\x64\x54\xc1\xef\xa3\x41\x63\x41\x96\x9a\xd3\xc4\x7a\x57\x2a\x76\x39\x7b\xda\x28\xb7\xa7\x17\x25\xe6\xb4\x84\x4f\xb3\xa5\x7f\x93\xa4\x8b\x0b\xb0\x45\x7c\x4a\xa4\x71\x89\x86\x81\xc9\xcc\x6d\x62\x5a\xb2\xac\x6a\x83\xfc\x23\xb2\xae\x32\xec\xd5\x33\xed\x58\xec\xde\xa1\xbe\x9f\x96\x43\xb5\xa8\x5e\xe5\x44\xd5\x68\xce\x10\x55\xb3\x5c\x54\x89\x84\x1d\x1f\xbb\xc8\xbc\xec\x4c\x64\xd0\xcd\xd3\xa8\x35\x1b\x8a\x78\xad\xe5\x7f\xe9\x93\x87\xb2\x56\xca\x4a\x5a\xb5\xc5\x28\x02\x0e\xc5\x15\xf1\x4b\x7a\x0f\x88\x1f\x4e\x04\x56\xe0\xc5\xa7\xcc\xfc\x9a\xf1\xdb\xba\xf1\x9e\x7a\x2a\xb3\xb4\x4a\xb6\xb3\xa3\x37\xe1\x0d\xa7\x4c\xfd\x14\xef\x69\xdd\x30\x59\x13\x01\x0a\x17\x99\xd2\xeb\x24\xaf\xb0\x40\x3f\x25\x88\x47\x43\x3d\x64\x33\xdb\x5e\xd4\xaf\xd0\xfe\x58\xa0\x41\x53\x1d\x9f\xab\xc9\x1c\x12\x05\x45\xf9\xcb\x00\x85\xa0\x1e\xe6\xe8\x93\x01\x71\xb1\x6c\x19\x49\x45\xdc\xbb\xc2\x2c\x52\x61\x10\xa0\xf7\x23\x65\x45\x82\x15\x11\x5d\x54\x53\x00\x06\x3e\x04\x86\xbc\x23\x19\xf6\x8f\xa8\x20\x0a\x8f\x34\xe6\x20\x94\xa1\x68\xb9\x41\xd8\x0a\xf5\x86\x69\x45\x7e\x59\xb6\x8c\xbe\x1e\xff\xcb\xdb\x6f\x6e\x9d\xbb\xb0\x8d\x82\xa1\x42\x79\xe2\x12\x6f\x40\x25\x17\xb7\x4e\x2d\xe0\x5e\x4b\x23\xc3\x37\x7f\xdd\x3a\x91\xaf\x51\x63\x07\x77\x72\xfa\xfc\xd6\xa9\x4d\x86\x1f\x77\xeb\xd3\x07\x14\x7f\xa6\x1c\xd3\xad\x33\xfa\xd2\xe8\x7f\x3d\x3e\x3e\x83\x23\xc1\x43\xe6\xa5\xa8\x33\xdd\x5a\x63\xc0\x10\x11\x14\x75\xae\x41\xfd\xb4\x5e\x6f\x1c\x9f\x69\x48\x61\x9e\x9d\xfe\xd4\x63\x84\x7c\x5a\xf7\x5c\xdc\x69\x8c\xf3\x66\x4c\x70\xec\x2e\xbb\x44\xe1\x3d\x99\x10\x03\xff\x6e\x73\xee\x43\xa3\x7e\x9c\xb5\xc7\xc6\x78\x1a\x88\xa6\x2d\x7d\x2b\x52\x6d\xb6\x4b\x8c\xb6\x73\xab\x5c\x6f\x4a\xa6\x50\x0c\x88\xff\x81\xb8\xca\xa0\xee\x46\xd6\x17\x99\x4d\xfa\x21\x99\x20\x27\xd0\xec\x24\x02\x3b\x06\x28\x3b\x6f\x53\x66\xbf\xb6\x33\xb5\x67\xa5\x58\xaa\xfb\x71\xd7\xac\xd2\x61\x4e\xad\xcf\xad\xbf\x1a\x08\x0c\xb8\x50\x28\xde\xdc\x3a\xd1\x43\xc9\x64\xb9\x45\xb3\x63\xcd\x66\x29\xaf\x50\xef\xbb\x1d\xa8\x57\xab\xcb\x98\xa5\x7f\x24\x52\xd6\x03\x0a\xee\xcf\xab\xd5\xa7\xb2\x95\x97\xd2\xab\x11\x45\x85\x3a\xdf\xef\xc5\x6e\x8d\xe2\x8e\xbf\xaf\x85\x5e\x4e\xad\x46\x68\x15\x7a\xbd\x9e\x0a\xbe\x7b\x02\x65\x8f\xfb\x5e\x01\xac\x96\xc6\x11\xa6\xfd\x13\x76\xe3\x23\xa3\xdc\x03\x65\xc1\x45\x0e\xf6\x9e\xc5\xf1\x63\x0a\xf9\x26\x07\x28\x8f\x69\x90\x46\x44\xe1\x40\x44\xb7\x73\xa1\x72\x20\xd3\x20\xb4\xd6\x18\x3f\x53\xe6\xd1\x01\xf5\x42\xe2\x3b\x05\xb0\x36\xee\x63\xce\x6d\x26\x04\x3c\x90\x07\x9a\x43\xba\xed\xd0\xbd\x8b\xd0\x4a\x36\x4e\x4a\x82\x2f\xcd\x6d\xc9\x11\x54\xae\x77\x39\xd4\x4c\x20\xe5\x97\xaf\x05\x12\x87\xe4\x01\xa7\x80\xa4\xc9\xfa\x91\x3d\x2d\x89\xec\xd2\x20\x6d\xf4\xcb\x42\x3b\x9f\x77\xdf\x11\x89\x85\xb5\x14\xa1\xe6\x42\xf7\x08\x36\x17\x9a\x53\xcc\xcc\xb4\x13\x7b\x47\x67\x61\xdd\x0f\x8b\x4a\x27\x3e\xed\x96\x05\x0c\xa6\xfd\x47\x1c\x24\x44\x3f\x4b\x0f\x7a\xa8\x71\x5a\xa6\x61\x4a\xa0\x76\x69\x03\x35\x1b\xa8\x95\x61\x00\xed\x31\xf7\x2d\x4c\xdb\x8e\xb7\x5d\x63\xd8\xb3\x31\x21\x2e\x1d\xf4\x6c\x47\x84\xeb\x8e\x2f\xd6\x24\xc7\xd5\xa3\x8b\x83\x82\xf1\x1b\x5b\x7d\xcb\x82\x78\x8b\x96\x33\x68\xd9\x82\x64\x0b\x92\x9f\x24\x48\xde\x4a\x8e\xa6\x22\xe9\xdd\x78\x31\x01\x61\xd3\xb2\x34\x51\xf6\xd4\xa4\x2a\xaf\x89\x22\xf0\x89\x2c\x96\x87\x3a\x94\x40\xa0\x20\xb7\x8a\xe4\xd6\xeb\x7a\xd3\x86\x02\x36\x14\x28\xc3\x11\xe6\xf4\x6c\xe2\xe7\xa3\x6a\x83\x18\x46\x98\x64\xfc\xe3\x2c\x94\x3f\x32\x87\xed\xf3\x1c\xdd\xc1\x19\x44\x87\x76\xb3\x1f\xd8\xf7\x53\xbb\x44\x04\xc5\x53\x31\x58\x25\xa0\x58\x50\x13\x25\xa1\x82\x51\x87\xcb\x43\xa6\xd6\x30\x58\x0e\x01\x6a\x68\x7d\xf3\xcb\xb5\x9e\x64\xd3\x62\x36\x95\x24\x1b\x8b\x37\xa6\x4a\x66\x95\x48\x62\x4e\xe1\xaf\x34\xc5\xd6\x44\x0f\xeb\x4c\x39\x2c\xb8\x18\x53\x61\xc8\x12\x06\x66\x05\xfb\xb2\x4f\x56\x26\x2e\xe4\x9a\x61\x62\xf6\x25\xec\x89\x51\x57\xbe\x3a\xc6\x86\x3f\x4b\x84\x3f\x66\x5b\xec\x3e\xac\xb0\xe1\xcf\xa1\x86\x06\x85\x1c\x41\x55\x6c\xd0\x68\xd8\xd0\xc0\x86\x06\x55\x40\x29\xeb\x41\x65\xc0\x99\x8c\x7d\x76\x4b\x86\xfd\x47\x0f\xa5\xa2\xcc\x14\x37\x17\x5d\x69\x82\x91\x27\xfe\xf3\x5f\x50\xe1\x96\x97\x1f\xf3\x20\xf3\x06\x33\xc4\xba\x8e\xa2\xa4\xc3\x4d\x06\x2c\x26\x9c\xd6\x54\x2c\x3d\x45\x40\xa5\x8b\x71\xae\x15\x3e\xff\x94\xa9\xa7\x17\xdb\x04\x1b\x65\x72\x9e\x1d\xb7\x1a\x8f\x07\x97\x4a\x59\xc5\xce\x45\x28\x7d\x8d\x46\x2e\x37\xe0\x56\x84\xd9\x3a\x88\xcc\x4a\xe1\x32\x09\x98\xdb\x24\x36\xda\x58\x2d\xda\x78\x97\x8f\x2d\x6d\xac\x51\x4d\xe7\xf6\x62\x8d\xad\xa4\x5a\x5e\x57\x84\x05\x93\xe2\xa1\xa9\xa9\x96\xe8\x56\xd6\xfb\xf1\xad\x2c\xf8\x1d\x85\x34\x3b\xbb\xb0\x51\x0e\x2d\xdb\x32\x53\x74\xcd\xaa\x2c\xd5\xb9\x8d\xa8\x6c\x44\x55\x89\x34\x8c\xb7\x6d\x87\xd4\xf7\x8e\xa1\x3d\x84\xa3\xe4\x46\x63\x0d\x14\xe9\x6e\xdc\xdb\x3f\x3e\x4e\xee\x50\xc2\x68\x74\x05\x8f\x8f\x7a\x5e\x18\x8d\xe6\x08\x6d\x76\xe9\xfb\x73\x96\x46\x6a\xe1\xc5\xd6\xc6\xfa\x7f\x5b\x6c\x61\x11\xc0\x92\x08\xe0\x45\xc5\xc1\xe0\x65\xd9\x7f\x18\x28\xbb\xfa\x6b\xae\xc7\x7f\x8a\xff\x07\xc0\x7e\x5d\x8e\xcd\xfe\x83\x8b\x1b\xc1\xfb\xa8\x7a\x18\xa6\xd0\xc9\xfc\xf8\xe0\x32\x27\xd8\x8b\x59\x72\xad\xaa\xca\xb6\xb5\x18\x6b\x84\x07\xe7\x4f\x0c\x1e\x4c\x4d\x93\xae\x3d\x33\x3c\xff\xcd\xc3\xe6\x6c\x50\x91\xa6\x0d\x46\x23\x38\xba\x7b\x25\x8f\x2b\x8f\x04\xb3\x66\x56\x61\x90\xba\xc7\xb0\x17\x89\x4c\x0b\x2a\x6c\x0a\x73\xa3\x74\xa6\xcd\xea\xd3\xc9\x61\x6e\xd3\xe5\x5e\xcc\xeb\x72\x5f\x58\x97\x6b\x5d\x6e\x95\xcb\x5d\xc3\x35\x8a\xcd\xdc\x2f\x59\x97\x77\xfe\xac\xe9\x9f\xea\x8e\xdf\xee\xb3\x3b\xb6\xd7\x29\x6c\x84\xff\x64\x23\xfc\x27\xe3\x8b\x0b\x05\x47\x95\xce\xd8\x5e\x46\xb0\xde\x78\x9e\x00\xb8\x23\x37\x1b\xfc\xae\x21\xc6\x3d\xc4\xe8\xf6\x9a\xca\x3b\xeb\x4e\x37\x16\xdb\x3a\xce\x8e\x9d\xa9\x87\x2e\xed\x13\xbf\x28\xbe\x0c\x07\x8c\x33\x5c\x94\x81\x7a\xf6\xbf\x65\x1e\x58\xd4\xbb\x95\xb3\xf4\x8a\x6c\xfa\xc5\xeb\x89\x95\x9e\x7a\x96\x4e\x7d\xae\xec\x59\x7a\x41\xae\x2f\x2b\x52\xed\x36\xd3\x6e\x91\x44\x29\x92\x08\x04\x77\x51\xca\xd6\x80\x0a\x15\x12\x7f\x7c\x98\x1e\x21\x89\x28\x92\x0f\xf4\x5e\xbb\x75\x46\x4b\xe0\x06\xa9\x48\xd9\x02\x5a\x1c\x53\xfc\x1e\x91\x07\xb9\x13\x67\xc8\xa0\x89\x8f\xb3\xd0\x44\x85\x23\xc8\xcb\x42\xa0\xa4\x1e\x32\xb5\x66\x61\x2c\xc4\xf0\xa7\x98\x86\xe9\x1c\xff\xb0\x22\xc7\x5d\xae\x79\x94\x8a\x28\xd9\xea\x21\x09\x5a\x72\x28\xd7\xc3\x6e\xe9\xbf\xbc\x5f\x5c\x0c\x9a\x28\x90\xc3\x35\x5c\x1a\x2d\xb0\x4a\x7c\x9f\xbb\xfb\xc7\xac\x21\x6b\x8e\xea\xd2\x05\xd8\x5d\x23\xa7\x0b\x72\xf4\x76\x0a\x33\x1f\xd6\xbd\x76\x29\x0b\xc7\xb5\xc8\x6b\x52\xe8\xca\x66\xeb\x07\xad\x51\xca\x4e\x42\x89\x15\x52\xf8\x6e\x8d\x52\x30\x6e\x62\x9d\x62\x58\x90\xdb\x5f\xf5\xfc\xd3\xd9\xfd\x7e\x45\x76\x17\xcd\xfc\xfe\x75\xeb\x78\x54\xba\x7c\x80\x62\x98\xfd\x6f\x3c\x35\x28\xb9\x4b\xab\x05\x15\x5f\xa5\xdd\xe3\x43\xe8\xf7\x2b\x0a\x71\x2b\x02\xb4\x29\x76\x9b\x62\x3f\x84\x63\x08\x7b\xaa\x6f\x53\xec\x9b\x48\xb1\x57\x45\xe2\x17\xf6\x54\xdf\xc6\xe2\xdb\xcc\xb1\x2f\xed\xc1\x0f\x3f\x19\x3f\x07\x98\xdc\x3b\x79\xc7\x57\x1d\xd2\x43\x3e\xa5\x72\xc5\x19\x2a\x89\x2e\x83\x8e\x0f\x62\xb4\x36\xca\xf4\x30\x0e\x68\x8c\xc4\x76\x26\x1c\x43\x05\x1c\x49\xf4\x3b\x27\xf1\x35\x5f\x6f\x69\xc8\xbe\x4b\x8c\x69\xeb\x46\x6c\xdd\x88\xad\x1b\x81\x3d\x07\x98\x85\xba\x91\x2a\x84\x79\x69\xdf\x3b\x66\x01\xe6\xd4\x04\x07\x0f\x90\xb5\x3a\xde\x06\xcf\xbd\x67\x27\x7e\x8a\x09\xf4\x05\xdd\xef\x2f\x01\x32\xf8\x70\x2d\xe1\xc8\xd0\x5f\x0d\x12\xe7\x06\x1f\xf3\x56\xd4\x6c\xef\x4c\xcc\x56\xde\x58\x40\x02\xb6\xf2\x66\x7e\x06\x0e\xbb\xf2\xe6\xe9\x60\x95\x57\x73\x62\x95\x97\xbb\x3f\x0d\xcb\x37\x5b\xb4\xb2\x27\x68\xa5\xcb\x5b\x5d\x2e\x78\xa8\xb4\x64\x63\xa8\x92\x72\xa9\x5b\xf0\xa7\x3f\x27\xaf\xdb\xfe\x3e\x21\xe4\x10\x2f\x86\x94\x50\x6f\xbd\xea\xba\xc3\xfc\x9d\x7b\xd5\xbf\x71\x90\xbf\x8d\x92\xd5\x97\x97\xe5\x2e\xec\xf5\xbc\xef\xda\xa0\x0f\x28\x6c\xc9\x6a\x51\xae\xaf\x2a\xe4\x6a\x8f\x31\x2c\x30\x58\xae\x66\xb5\xf8\x02\x8e\x3f\x73\xff\x30\xd2\xd6\xb2\x6e\x46\x48\x87\x57\xe3\xba\x01\x31\x1c\x5e\xed\xeb\x9e\x0b\x61\x0b\x35\xb1\xbb\xdf\x0d\x3b\xad\x95\xdd\xdc\x02\x78\x12\x35\xb4\xbb\x5f\x1d\xfb\x59\x5b\x5b\xf2\x96\xcb\xb2\x23\xf0\xfc\x7b\xb0\xf6\xb8\xa6\x64\xcb\xb5\xb5\xcb\x09\xf0\x09\xd5\x83\xc4\x9f\x6c\x6d\x2d\x1c\xea\x91\x88\xad\xad\xb5\xe9\x84\x6d\xd7\xd6\x56\x1d\x19\xd8\x6b\xae\xf6\xc8\x60\xbb\xa5\x9e\xcb\x39\x70\x5b\x5a\xbb\x0b\x79\xdb\xd2\xda\x59\xa5\xb5\xb3\xe3\x9c\xdd\x96\xdc\x1a\xed\xdb\x92\x5b\x0b\x3c\xf7\x28\xcb\xb5\xbf\xc0\xd3\x96\xdc\x46\x0d\x6b\x2c\xb9\xad\x02\x9e\x17\x16\x78\x5a\xe0\x59\xe6\x75\x4b\x4b\x6e\xb7\x7a\xdc\xbe\xd5\x52\x5c\xe3\xa0\xb7\x5b\x8a\xbb\xa5\x23\x34\x5b\x8a\x6b\x81\x0a\xd8\x52\xdc\xf9\x19\xb0\xa5\xb8\xfb\x81\x61\x0a\xa5\xb8\x55\x18\xe6\x72\xd7\x18\xc6\x56\xe2\xc6\xe2\xd8\x37\x10\x53\x5d\x89\x9b\x7e\xcd\xb4\xad\xc6\x9d\xcf\xa5\xda\x6a\x5c\x5b\x8d\xfb\xb4\xe2\xff\x67\xf1\xb0\x7a\x03\xea\x6d\xa4\xb9\x6e\xd4\xa3\xe5\xed\x48\xb7\x87\x7d\x32\x7e\x01\xe1\xd8\x21\x39\x52\x0d\xa3\xed\xe0\x11\x11\x21\x4c\x47\x91\xee\x64\x33\x39\x0a\xfb\x81\x4f\x14\x65\xdd\x84\x46\xc7\xa7\x52\x8d\xd7\xcc\x28\xea\x45\xcd\x9a\x8b\x7f\xef\x44\x3b\xd5\x61\xfc\xfe\xe4\xbc\x1f\xcb\xdc\x51\x3c\x6e\x73\x32\x8f\x05\xd4\xbd\x33\xe6\x37\x7e\x38\x26\xbe\x35\x36\x4b\xe9\x25\xe8\x9c\xa7\x36\xeb\x98\x35\xf3\xe5\x45\xfa\x4b\xa3\x3f\xf9\x7c\x9e\xfa\xdc\x48\x7f\x79\x51\x4f\xff\x92\xda\x83\xcd\xd4\xe7\x86\x17\x6d\xdd\xaf\x63\x1e\xb4\x11\xe5\x81\x1a\x1b\x9c\x99\xb3\xa4\x07\xbe\x48\x0f\x9c\x9e\xa5\xf9\x32\xfd\xc5\x9b\x7c\xbe\xf4\xd2\xf4\x8e\x69\xc9\x88\xef\x1b\x37\x2e\xc5\x89\x75\x97\x7d\xfb\xe4\x0d\x0a\xb3\x01\x98\x8b\x70\x4d\x64\xaf\xcd\x89\x88\x86\x74\x42\x83\x36\x9c\x41\xf8\x0a\xeb\xbf\xff\xf1\x9f\x58\xf7\x83\x64\x7d\x34\x9b\xcf\x46\xcf\xfe\x1f\x00\x00\xff\xff\xbf\x24\x7f\x61\xbb\xb1\x00\x00"), - }, - "/charts/istio-telemetry/grafana/dashboards/istio-service-dashboard.json": &vfsgen۰CompressedFileInfo{ - name: "istio-service-dashboard.json", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 84070, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\xdd\x72\xdb\x38\xb2\xbe\xcf\x53\x60\x38\x73\x4e\x39\x29\xd9\x11\x65\xc9\xb6\x5c\xc9\x54\xd9\x4e\x32\x27\x73\x3c\x99\xac\xed\xca\x54\x6d\x9c\x55\xc1\x24\x2c\xa1\x4c\x91\x1a\x10\x94\xed\xb8\x3c\xcf\xb0\x17\x7b\xbf\xaf\xb8\x8f\xb0\x05\xfe\x88\xe0\x9f\x7e\x29\x09\x94\xfa\x22\x15\x0b\x20\x41\xb0\xf1\x35\xfa\x43\x37\x88\x7e\x7a\x81\x90\x86\x6d\xdb\xe1\x98\x53\xc7\x76\xb5\x63\x24\x8a\x10\xd2\x2c\xea\x72\xed\x18\x7d\xf5\x7f\xa1\xb0\xd4\xaf\xb9\xf1\xa8\xc5\x3f\xda\xda\x31\xd2\x6b\x71\xa9\x89\x39\x76\x1d\x8f\x19\x44\x3b\x46\xda\xee\x2e\xfa\x85\xe1\x5b\x6c\x63\xb4\xbb\xab\x49\x97\x11\x1b\xdf\x58\xe2\x12\xce\x3c\x22\x95\xf7\xa8\x99\x53\x4a\x0d\xc7\x3e\x73\x2c\x87\x89\x36\x59\xf7\x06\xef\xd4\x6b\xa8\xa1\xeb\x35\xd4\x68\xb5\x6a\x48\x7f\x29\x37\x6d\xe3\xbe\xff\xec\x93\xf8\x75\xd0\xff\xa2\x13\x8b\x30\xee\xca\xd7\xf1\xc7\x81\x7f\x9d\x89\xdd\xde\x8d\x83\x99\xa9\x85\x75\xcf\xfe\xff\xdf\x5e\x20\xf4\x2c\x2e\xd7\x88\x49\x79\xd8\xdb\x5b\x6c\xb9\x7e\xc7\xb4\xae\x4d\xf8\x47\x53\x3b\x46\xb6\x67\x59\x41\x09\xc3\x83\xde\x95\xe3\x58\x9c\x0e\xb4\x63\x54\xf7\x0b\x29\x27\xcc\xef\x83\x10\x53\x6b\xff\xa0\xd9\x6c\xb4\xea\x7a\xab\xee\x8b\x4c\xb3\xa8\x7d\x27\x64\xfd\xf5\x9b\xff\x73\x80\x6d\x62\xb9\x23\x69\x47\xb2\xd6\x0c\xc7\xe6\xc4\x16\xc3\xa0\xbd\x31\xe9\x10\x19\x16\x76\xdd\xb7\xd7\x71\xcf\x77\x7b\x04\x9b\x84\x21\x4e\x1e\xf8\xae\x41\x6c\x4e\xd8\xb5\xf6\xf3\xb5\xfd\xc6\x1d\x60\xfb\xe7\xcb\xf7\x17\x5f\x3e\x9e\xbd\x3f\x46\x3f\xb9\x84\x0d\xa9\x41\xde\xbc\xf6\xcb\xaf\xed\x37\xaf\x4d\x3a\xfc\x79\x24\x14\xad\xcb\xa8\xf9\xd9\x89\x47\x3f\x18\x12\xed\x18\xed\x4b\x72\xbb\xd7\x8e\x51\xa3\x29\x15\x3c\x44\x6f\x1b\xfe\x7e\x14\xbf\x23\x59\x8e\xda\xa6\x42\x58\x47\xed\xd1\xef\xe4\xbb\xfb\x45\x7d\xc7\x1f\x7c\xad\xc7\xfb\x56\xdc\x29\x4e\xb9\x2f\x7b\x4d\x2a\x62\xd8\x76\x07\x98\x05\x42\x91\xc1\x32\x1a\x55\x21\x8a\x60\x40\xc3\x2e\xc4\xd2\xc4\x46\x8f\x5c\xd1\x3e\x71\x3c\x2e\x8d\x5f\x28\x69\xcb\x61\xa7\xd8\xb8\xeb\x32\xc7\xb3\x4d\x79\xc4\xe3\xfa\x2f\xd8\xf2\x48\x7e\x95\x2b\xa9\x0a\x0a\xa1\xda\x68\xb6\x6a\xa8\xd5\x0c\xfe\xd5\xf7\xda\x09\xb0\x06\x57\xec\x1f\xd6\x90\xde\x68\xd7\x50\xb3\x2e\x2e\x39\xca\xb9\xa6\x55\xaf\x21\xfd\xb0\x51\x43\xa2\xb5\xfa\x5e\xfb\xf0\x65\x04\xd7\x58\x7e\x49\xdd\xfb\xcc\x9c\x3e\xe1\x3d\xe2\xc5\xa8\xd7\x6e\x1d\xd6\xc7\x3e\x90\x9c\x81\x54\xdc\xc5\x5e\x97\x24\x47\xbd\x8f\x1f\xa2\xf7\xd4\xeb\xf2\xe8\xf6\xa9\x1d\x55\xc8\xc5\x6e\xcf\xb9\x4f\xcb\x44\x0c\x47\x8f\x11\xb7\xe7\x58\xe6\x39\xbe\x09\xb0\x5d\x78\xc5\x6f\x98\xdd\x11\x5f\x82\x62\x40\x33\xf8\x29\xc4\x66\x33\x85\xcd\x83\x09\xd0\xdc\xcf\x87\xa6\xde\x88\x7f\x0b\x05\x1a\x62\x2b\x8d\x8e\x3c\xc8\xe2\xc1\x80\xda\xdd\xab\x00\x75\x7a\x5e\x79\x12\x13\x71\xe7\xa5\xa9\x6a\x28\x04\x8a\xb8\xe3\x2b\xb0\x34\xf4\x28\xac\x12\x4d\x8f\x0a\x9f\x6b\xe3\x1b\x63\xd8\xee\x4e\x68\xac\x11\x37\x96\x01\x51\x1f\x3f\xbc\xc3\x1c\x7f\x76\xa8\xcd\xdd\xe4\xe8\x6b\x42\x1a\x7e\xc5\x6f\xa1\xa6\x1a\x8e\x6d\x13\x83\x13\x53\x4b\x5c\x73\x25\x9e\x9c\x12\xde\xc0\x71\xf9\x2d\x7d\x48\x2a\x72\x58\xf8\xc1\xb1\xf9\x25\xfd\xee\x37\xd9\xaa\xff\x8f\x54\xcf\x48\xf6\x1e\xbf\xac\xf0\x16\xff\xf5\x7f\xc3\x83\x31\x62\xbf\x65\x4e\x5f\xdc\x27\xfa\x97\x14\x10\x0f\x3a\xae\x7d\x7a\x7d\x92\xaa\x70\x46\x37\x8c\x91\x9d\x98\x93\xee\x2c\x6a\xa7\x74\xe9\x96\x5a\x56\xd2\x7c\xed\xeb\x35\xa4\xeb\x47\x35\xa4\x1f\xb5\x85\x3a\xeb\x47\x09\x8d\xbf\x15\xcf\xc9\x58\x41\xd1\xb0\xdc\x4c\xd0\x4a\x43\x4c\x0c\xed\xfd\xc4\xfd\xa1\x32\xe6\xea\x91\x6f\xca\xce\x1c\xcb\xeb\xdb\xa9\x49\x15\xb3\x2e\xe1\x63\xc4\x46\x1e\x06\xc1\xa3\xc5\xd4\xb8\xe3\x7a\xfd\x1d\xca\x30\x27\x3b\xd4\xe5\xd4\xe9\x30\xf2\xa7\x47\x5c\xee\x76\xb8\xc3\xb1\xf5\xc4\xc8\xc0\x61\x9c\xb0\xb7\xd7\x5a\x30\x25\x5d\x6b\x35\x93\xb8\x9c\xda\xbe\x39\xec\x84\xa6\xe8\xed\x5f\xd7\x5a\x64\x96\xae\xb5\xe7\xaf\xad\xfe\xb7\x97\x2f\x85\x44\xea\xf5\x84\x55\x4f\xcc\x5d\x9c\xf6\x89\x68\x80\x12\x37\x79\x49\xa4\xb8\x1f\xb0\xc1\x7d\x31\xe9\x89\x6a\x46\x6e\x7d\x93\xad\xa5\x06\xd7\xe5\x44\x58\xec\xe6\x98\x91\x1d\xcd\x52\x6e\x4a\x68\x91\x71\x3a\xb3\x28\xb1\x39\xba\x08\xa4\x80\xbe\x08\x01\x93\x22\x8b\x95\xb4\x1c\x91\xc9\x72\xa9\xdd\xb5\x88\xcb\x71\xac\xb5\x81\xc6\xca\x58\x3f\x92\xb1\xee\xd7\x8e\xc7\xba\x23\xde\x4c\x7b\x3b\x25\xcc\xa3\x09\x62\x22\xd2\xfd\x0b\x3f\x85\x33\x8e\xe1\x31\xff\xc5\x94\x30\xb7\x39\x86\x72\x1e\x7b\x9b\xb5\xda\x73\x98\x5b\x93\x18\xb4\x8f\x7d\xb3\x97\x78\xef\x18\xca\x03\xc2\x04\x5f\xf3\x6c\xca\x17\x36\xc7\x47\xcb\xb2\xc7\xfe\x25\xe5\x19\xe4\x83\x29\x0d\x72\x13\x0c\x32\x18\x64\x30\xc8\x93\x0d\xf2\x32\x4c\x71\x8d\x11\x77\xe0\xd8\x2e\xe9\x18\x8e\x49\x7e\xf8\xeb\x5a\x6b\xed\xbd\x1a\x59\x68\xf4\x1a\x2d\xd1\xfe\x2f\xcd\xee\x9f\x8e\xc3\x4a\xd2\xc4\xb7\x5b\x35\xd4\x6e\x8b\x7f\x7b\xad\x62\x73\x7f\xe9\x19\x06\x71\x5d\x74\x81\x39\x41\x3b\xb6\x63\xef\xb6\x1e\x1e\x50\x24\x3a\xf7\xe5\x96\x10\x00\x3c\xec\xe6\x1b\x7f\x6c\x51\xec\x9e\x45\xa6\xfa\x29\x06\xfd\x0d\x66\x19\xe3\xe3\xfb\x33\xce\x89\xdd\xe5\x3d\x7f\x9a\x4b\x94\x93\xbc\xcb\x27\x2e\x77\xa9\xaf\xb6\xfa\xe2\x36\x2b\x5e\x1d\x8e\x37\x5a\x47\x87\xb1\x71\x22\x5d\xe2\x73\x1a\xe9\x51\xd8\xa2\x5d\xfb\xc4\xbd\x4a\xbb\x93\xa2\xea\x61\x37\xa7\x34\xa2\x57\xd9\x9a\x1e\x35\xc9\xfb\xfe\x80\x3f\x16\xd4\xfd\x9d\x30\x27\xa7\xaa\x8f\x1f\xf2\x4a\xa9\x9d\x53\xca\x68\xb7\xc7\x2f\x73\xbd\x72\xd2\xa4\x26\xf3\x07\xa1\xfe\x39\x0d\xf9\x80\x29\x66\x13\x62\x2e\x75\xd3\xce\x1c\x51\x78\x4f\xcd\x00\x0f\xe3\xac\x7e\xc6\x0e\x26\x2c\x49\xc4\xb2\x70\x37\xcb\x23\x07\xe2\x2e\x86\x4d\xea\x89\x26\x5b\xc9\xf2\x2c\xe6\x18\xb1\x4d\xc2\x88\x3f\xed\xde\x5a\x8e\xa4\xa8\xc1\xbc\xf4\xfb\x90\x30\x46\x4d\x92\xea\x9f\x3b\xc0\x06\xc9\x83\xb6\xcb\xb1\x71\x97\x79\x8a\x58\x90\x0c\x88\x79\x1e\x18\xae\xd4\x64\x31\xad\x55\xe8\x51\x97\x3b\x5d\x86\xfb\x9d\x3f\x3d\x6c\x73\x6a\x91\x9d\xfa\x9e\x60\xc7\x05\x33\x77\xc7\xf4\x58\x34\x37\x1b\x8e\x6d\xba\x9d\x1b\xcf\xb8\x23\x7c\xde\xa9\x5c\xf7\x0d\xc5\xcd\x23\xda\xb1\xc8\x02\x73\x7a\xc2\x26\xa2\x29\x66\xfb\x40\xef\x3e\x8c\x9e\xf0\xb9\x55\xd7\x8a\x96\x81\x13\x39\xdc\x58\x61\xb6\x2b\x23\xcc\xd0\xad\x9e\xd2\xc9\x39\x64\xd9\x2e\x92\xe5\xe9\xa2\xb2\x6c\x6f\x9f\x2c\xdb\x05\xb2\x3c\x9b\x9a\xa6\x48\x53\x8c\xe8\xef\x87\x80\x47\x27\x68\xbe\x28\xbf\xec\xd1\xdb\x0c\xff\x2f\x72\x5d\xbc\x0b\xa5\x2d\x71\x97\x51\x50\xe3\x49\x9e\xfd\x31\x23\x66\x8e\x55\x70\x18\x4f\x79\x5d\xfd\xa9\xbf\x13\xb1\x1c\x6a\x9b\x74\x48\x4d\x0f\x8f\xf8\xc5\x73\x86\x09\xf9\xb1\x94\xb8\x03\x0f\xf8\x81\xa6\x8c\x76\x00\x81\xf4\xca\x5a\x0a\x22\x88\xf7\xce\x09\x0b\xa5\xae\xce\xb7\x61\x23\x5b\xf5\xf5\x5b\xa6\x8b\x8f\xf8\x61\xdc\x0a\x32\x06\x50\x0a\x36\x96\x58\x70\x67\x3a\x20\x2a\x9c\xee\x29\x76\x49\x06\x2f\x81\x95\xce\x5c\x1e\x98\xe9\x4c\x71\x76\x85\x51\xac\x88\x52\x1f\x7b\x62\xb4\xd6\xd0\x4f\x99\x04\xe4\xa1\xfc\x31\x3b\xe2\x3e\x77\xca\x23\x4d\xa2\xfc\x9c\x0c\x47\xbd\x7e\x21\x37\xba\x46\x77\xd4\x8f\x8d\x76\xdb\x68\x1e\xcc\xea\x7e\xfa\xd1\x6c\x36\xf1\x3e\x5e\x2c\xbc\x73\xba\x35\xe1\x1d\xfd\x68\x4a\x66\x0e\xee\xa4\x68\xe4\xc1\x9d\x04\xee\xa4\x1c\xb1\x15\xb9\x93\xb8\x31\xe8\x30\x62\x10\x3a\x24\x66\xe7\xe6\x91\x93\x71\x3e\x1e\x34\x2d\x01\x5b\x1b\xef\x9a\x62\x31\x30\x9e\x74\xe5\x85\x7f\xae\xce\x3e\xa3\x8b\x50\x46\xe8\x54\xc8\x68\xdb\x5d\x3f\xb0\xcd\x62\xbb\xb7\x59\x1c\xe6\x9b\xe1\xf6\x21\x98\x61\x30\xc3\x60\x86\xcb\xdf\x66\x21\x19\xde\x0d\xdf\x6b\x71\x49\xd8\x90\x30\xd8\x6b\xb1\x76\x9b\x0b\x7b\x2d\x50\xd9\x46\x79\xc9\x7b\x2d\x8a\xac\xf2\x11\x58\x65\xb0\xca\x60\x95\xcb\xdc\x6b\x31\xa3\x3d\x2e\x71\xc3\xc5\x7c\x4c\xa0\x02\xbb\x2e\x42\xc3\x0f\xbb\x2e\xb6\x75\xd7\x45\x91\xf9\x92\x3e\x2b\x81\x5d\x17\xb0\xeb\x22\xaa\xdc\x90\x5d\x17\x33\xcf\xe7\xb0\xf5\x42\x31\x89\x6e\xfc\xfe\x8b\xea\x0a\x54\x91\x4d\x18\x29\x9f\x06\x6c\xc2\x80\x4d\x18\xb0\x09\x03\x36\x61\x54\x24\xf8\x93\xd9\x84\x51\x40\xd4\x65\x7f\x0a\x38\x9a\xc0\xd1\x04\x8e\xa6\x8c\xd8\xc6\xed\xc2\x70\x89\xcd\xcb\xdb\x81\x81\x36\x6f\x0b\xc6\x25\xb1\x39\x6c\xbf\x40\x8b\x9f\x19\x72\x76\xfe\xf1\xfd\xa7\x2b\xf4\xc7\xef\x17\xff\x7f\xfe\xfb\xc9\xbb\xcb\x15\x1c\x19\xa2\xeb\xf9\x36\xa3\xd9\x1a\x6b\x1a\x56\x72\x66\x88\x1a\x1e\xb5\xfa\x64\xa9\x1f\xa4\xa4\x9e\xf0\xa0\xe5\x4a\xbd\x99\x2f\xf5\x86\x24\xf5\x3c\x97\xda\x02\x3e\xb3\xd4\x84\x3b\x8b\x5f\x4c\x75\xe7\x17\xc2\x2e\xfa\x4e\x98\xb3\xe5\x4e\xb0\xa9\xb6\x2e\x84\xac\x26\xf4\x2b\x78\x8c\xf2\xc7\xce\xc0\xb1\xa8\xf1\xf8\xf6\x5a\xeb\x7b\xdc\xc3\x56\x87\x5b\xee\x94\xb1\x93\xac\x1d\x0c\xfe\xe8\xdc\x3b\xec\xce\x72\xb0\x19\xdc\xc1\x8c\x7b\x2b\x5b\xd7\x11\xac\xce\x17\x54\x74\x95\xed\xc6\xa1\x97\x9b\x47\xb4\x93\xba\xa1\x86\x0a\x5b\xa8\xa1\x44\x20\x67\x69\x1b\x2c\xd2\x36\xf5\xe9\x29\xdd\x27\xf4\xfc\xbc\x97\x2d\x8d\x7b\x8a\x9e\x9f\xd1\x31\x7a\x7a\x4a\x76\x58\x94\xee\xfc\xe7\xdf\xff\xfa\x67\xff\xea\xfc\xf2\x65\xa1\xb7\x29\xb9\x9e\x0c\x36\x75\x34\x26\xb2\xe7\x92\x00\xf2\x43\x1a\x21\x93\x39\x8f\x18\x96\x1c\xae\x34\x0e\x24\xc5\x92\x53\x08\x25\x65\x51\xb2\x12\xe1\x53\xc8\xee\x26\x60\x66\x3c\xe5\x2b\xc5\xcb\xf6\xd1\x36\x9c\x3e\xb5\xbb\x91\x9f\xcd\x15\xc3\x76\xe9\xbf\x21\x3a\xb1\x4d\x74\x11\xbe\x0a\x3a\x13\x93\x7a\x7c\xff\x58\xdf\x5b\xc6\x48\x6d\x94\xf3\x2d\xb9\x3e\xe3\x58\xe2\xa6\x0b\xf8\xe5\xe4\x7d\xb1\x01\x1e\x4b\xf5\x78\x69\x29\x37\x39\x38\xe6\xa6\x73\xcc\xa9\xc1\x73\xa7\x88\x1c\x4f\xe4\xb9\x99\xd0\x71\x21\xd1\x3d\x58\x15\xd1\x2d\x29\x36\xac\x3a\x07\xde\x72\xee\x3b\xc7\xb9\x28\x68\x7a\x2a\x3c\x05\xd1\xc9\xdf\x47\xb4\x3e\xaa\x33\xe7\x61\x31\xe5\x0a\x65\x7d\x6f\x5f\x31\x46\x37\x91\xfa\x4f\xa4\x71\x13\xa8\x7f\xb9\x50\x98\x67\x25\xb0\xf9\x0a\x32\xd7\xfa\x08\x34\x64\x2a\x0d\x99\x77\x45\xbc\xca\xd5\xcd\xa4\x0d\x92\xe8\x34\x5a\xf5\xc0\xfe\x82\xc5\xf6\x17\xe4\x7d\x53\x80\x16\x58\x28\x68\xfa\x5e\x5d\xd7\x60\x45\xb3\x29\x2b\x1a\x93\xb8\x06\xa3\x83\xf0\x04\x78\xad\x8c\xa5\xce\x51\x6a\xa5\x93\xf6\xe8\x37\x0a\xce\x5e\x6f\xac\xed\x68\xb2\xe5\xac\x83\xe4\x3d\xb2\xb0\x46\xaa\xd4\x1a\x69\xa9\x47\x93\x29\xb8\x70\xd0\xe7\xf2\x10\xaf\x75\x63\xe4\xd3\x53\xaa\x67\x3e\x33\x2a\xec\xed\xf3\x33\xfa\xdc\xaa\x4f\x5e\x3d\xbc\x5b\x70\xf5\xb0\xd4\x73\xd8\x00\x39\x6b\x42\x4e\x7b\x0a\xe4\x2c\xba\xee\xcc\x47\x4e\x0b\x90\x53\x6d\xe4\xb4\x96\x1f\xac\x5c\xea\x79\x85\x80\x9c\x75\x21\xa7\x3d\x19\x39\x67\xcb\x40\xce\x0a\x78\xce\xda\xfc\x3f\xdb\x01\x9d\xc2\xaf\x9a\xde\x57\x94\xdd\x00\x5e\x96\x4c\x6f\x0a\xf0\xf2\xa1\xa2\x9c\x06\xf0\xb2\x64\x52\x53\x80\x97\x5f\x2a\xca\x64\x00\x2f\x4b\xa6\x32\x05\x78\xf9\x3f\x95\x82\x12\xe9\x4f\x1b\xe3\xad\x57\x10\x84\x50\xf8\x23\x47\x08\x3c\x24\xca\xab\x12\x78\x28\x2f\xbe\x90\xfe\xb4\xaf\x30\xbe\x70\xa4\x48\x7c\x01\x82\x08\x10\x44\xc8\x23\x33\xc1\x87\x73\xe0\x8b\x51\x8f\xc0\x28\x19\x39\x00\xb8\x28\x0a\x17\x45\xe3\x05\x80\x17\x45\xf1\xa2\x66\x90\x00\xe0\xa2\x28\x5c\x14\x0d\x0d\x2c\x82\x17\xf0\xbf\x6c\x49\x3c\x00\x40\xa2\x2c\x48\xd4\x09\x02\x00\x48\xd4\x05\x89\x32\x9e\x7f\x00\x89\xba\x20\xa9\x94\xbb\xff\x92\x7e\x27\xf0\xbd\x41\x59\xae\x7e\x93\x18\x37\x89\xe3\x8d\x10\x78\xfc\x53\xfd\x04\x8f\x7f\x58\x30\xb7\xc7\x5f\x4f\x67\x8d\x28\x72\xf9\x1f\x80\xcb\x1f\x5c\xfe\x6a\xba\xfc\xc3\x4f\x3c\xc1\xcb\xa2\x2a\x8b\x51\xcc\xe7\x0f\x78\x51\x1b\x2f\xca\x39\xfd\x01\x30\x6a\x03\x46\x35\xaf\x3f\xe0\x45\x6d\xbc\x28\xe7\xf6\x2f\x01\x30\xe0\x88\xd9\x78\xbf\x3f\xa0\x44\x75\x94\xa8\xe0\xf8\x07\x94\x28\x8f\x12\x05\x3c\xff\x80\x12\xe5\x51\xa2\xb2\xeb\x7f\x74\x78\x2a\xb8\xfc\xe5\x0e\x83\xcb\x1f\x5c\xfe\x41\xa1\x42\x2e\xff\x89\x79\x01\x1a\x07\x19\xc4\xfa\x2e\xff\x38\xf1\x75\x29\xc7\xa5\xc2\xc1\xa7\x72\x79\xa5\x9d\xf3\xf9\x67\xba\x73\x63\xd0\x61\xc4\x20\x74\x48\xcc\xc9\xa9\x6b\x36\xc3\xf7\x51\xc5\xd3\xdc\x57\x71\xf4\xe7\x72\x11\x52\x29\xea\xa9\x70\x5a\x08\xa5\x8f\xb8\xf4\x73\x3b\xa1\x8b\x10\x2e\xe8\x96\x39\x7d\x34\xda\x72\x72\x75\xf6\x19\x9d\x8d\xf0\x01\xbc\x73\x31\xde\x79\x0a\x47\xf4\x4f\x9d\xe3\x13\x18\x67\x09\x27\xf4\x17\x52\xce\x06\x50\x4e\xa0\x9c\xb3\x11\x8a\x4c\xa6\xc4\x19\x98\xe5\x7c\x49\x15\x81\x4b\x28\xc7\x2a\x67\x00\x41\x96\x3c\x02\x0a\x4a\x44\x81\xf2\x8c\xd2\x4f\x1c\xca\x1d\xe0\x92\xc0\x25\xb7\x87\x4b\x2e\x98\x23\xf6\xf2\xfd\xc5\x97\x8f\x67\xef\x57\x9a\x24\x76\xbf\x91\xcf\x11\x0f\xda\xe3\xb8\x13\x24\x89\x4d\x48\x7d\x66\x67\xf0\x7e\x2b\x5f\xea\xed\x72\x9d\xc1\x90\x24\x16\xc8\xfb\x6a\x92\xc4\x4a\x17\xa7\x6e\x4d\xf0\x36\xd3\xe5\x3e\x6f\xcb\xbb\x20\xc5\xdd\x4c\x97\xa7\x53\xe0\xe4\xdd\x95\xa4\x90\x79\x21\xe9\xb5\x65\x8f\xcd\xeb\x58\xc8\xec\xc6\xf7\x79\x7b\xf3\xc8\x26\x61\x94\x2b\xa6\x04\x8e\x26\x08\x52\x49\x20\x95\x18\x92\x28\x1f\x61\xf3\x2e\x29\x57\xb0\xae\xc8\x4d\x35\xfb\x2e\x7e\x4d\xc8\x37\x9b\xbf\xca\x90\x07\x0e\xf2\xcd\xc2\xfe\x89\xaa\x7a\xb3\x0b\x39\xb3\xbe\x2a\xce\x0c\xf9\x66\xb7\x81\x46\x4f\x9f\x39\x32\xc5\x56\x56\x92\x74\x56\x25\x4a\x34\x5b\x9e\xcd\x65\x4a\x4b\x2d\xb1\x54\x96\x12\x2a\x94\xab\x76\x6a\xb4\x94\x99\xb0\x56\x29\x14\x2d\x47\xb9\xe6\x5a\xa1\x29\x25\x97\xaa\x6a\x97\xc2\x21\x1b\xc8\x73\x0b\x79\x6e\xc7\x77\x17\x56\x52\x2b\x5e\x49\xad\x21\xcf\x6d\x53\x2f\x58\x60\x35\xc7\x2f\xb0\x20\xcf\x2d\xac\xcd\xd4\x3b\xaf\x66\xea\x7c\x3b\x15\x5a\x97\xe8\x0b\x7a\xb0\xd7\xfc\x75\xde\x62\x8b\x13\xd5\x0e\xb8\x01\x80\x6d\x1a\xc0\x14\x3b\x10\x07\x00\xb6\x71\x00\x53\xeb\x04\x1d\x00\xd8\xc6\x01\x4c\xad\x13\x77\xca\x07\x98\x02\xee\xab\xed\x46\x98\x0a\x47\xf4\x00\xac\x36\x0e\x56\x2a\x9c\xe9\x03\xb0\xda\x3c\x58\x29\x70\x08\x10\xc0\x6a\xf3\x60\xa5\xf2\xa9\x41\x90\x1f\x38\x7a\x0b\xc8\x0f\x0c\x01\x9b\x0a\x6c\x7d\x9b\x94\x1f\xb8\x30\x2e\xd3\x52\x24\x2e\x03\xc1\x17\x08\xbe\xcc\x92\xf2\x08\xdc\x49\x15\xe1\x39\x4a\x46\x5c\x00\x55\xd5\x46\x95\xa2\x71\x16\x80\x55\xb5\x61\xa5\x66\x70\x05\x50\x55\x6d\x54\x29\x1a\x52\x59\x18\x56\xe0\x42\x5a\x3b\xb5\x52\x25\x8e\x02\x58\xaa\x3a\x96\xd4\x09\x9e\x00\x96\x2a\x8f\x25\x65\x22\x26\x80\xa5\xca\x63\xa9\x52\x61\x12\x48\xb2\x20\x77\x18\x92\x2c\x40\xa4\x24\x28\x54\x38\x52\x92\xc9\xab\x5c\x18\x2a\x39\x80\x50\x09\x84\x4a\x94\x0c\x95\x4c\xc8\x11\x05\x8e\xa2\x8a\x90\x1d\xc5\x62\x25\x00\xab\x8d\x80\x95\x72\xc1\x12\xc0\xd5\x46\xe0\x4a\xb5\x68\x09\xc0\x6a\x23\x60\xa5\x5c\xb8\xa4\x2c\x5c\x81\x2f\x69\xed\xf4\x6a\xfd\xf1\x12\x00\xd3\x86\x80\x49\x85\x80\x09\x80\x69\x53\xc0\xa4\x40\xc4\x04\xc0\xb4\x29\x60\x52\x39\x64\x02\xf9\xa8\x21\x54\x02\xa1\x92\xa0\x42\xf5\x50\xc9\xc4\x14\x24\xcd\xc3\x0c\x62\x83\x50\x09\x24\x07\x84\xa0\x46\x45\xf2\x51\xab\xc4\x3c\xaa\x9d\x10\x62\x4b\xb3\x55\x6f\x06\x80\x56\x8a\x93\x79\x7d\xc5\x2b\xe0\xa7\x90\xcb\x1a\xf2\x0f\x2a\x41\x57\x21\x97\x75\x50\x50\x62\xf6\x8f\x42\xba\xba\x0f\x74\x15\xe8\xea\x6c\x74\x63\x1d\xb9\xac\x81\x69\xa4\x99\xc6\x64\x6f\xd8\xb6\x65\xba\x06\x8c\xcc\x8c\x11\xe5\xd9\x28\xe4\xc1\x06\x1e\xba\xf9\x3c\xf4\x45\xd8\xac\xd0\x40\xa1\x47\xe2\xad\xf5\x7a\x30\x34\x9a\x6b\xf4\x48\x1f\x7f\x21\xcc\x0d\x92\x19\x04\xbb\xb6\x35\x97\x3f\x06\x8a\x62\x62\x76\x17\x5c\xc9\x71\x37\x56\x3f\x8d\x93\xfe\xc0\xc2\x9c\xda\xdd\x51\x1f\x35\x8b\xba\x5c\xc2\x45\xa2\xe7\xd6\x17\x81\xa8\x2c\xfc\x26\x12\xd7\xd8\x07\x23\x2b\x14\xb5\x0d\xcb\x33\xc9\x89\x95\xc7\xe6\xa2\xf1\xd3\x2e\x83\xe9\x5b\x6e\xab\xef\x59\x9c\xe6\xdc\x13\x2a\x87\xe6\x66\x6f\x71\xfc\x44\x0f\xc9\xa9\x07\x21\xed\x4f\x8f\x30\x41\x7e\x83\xc7\x75\x02\x8d\xd9\xc9\xb1\x24\xf2\x2c\x2d\x8d\x81\x9e\x28\xed\x12\x3f\x51\x88\x36\x7e\x1e\xe1\xb8\xeb\xcb\xd1\xfd\x5b\xf4\x70\x2d\x59\x9b\xe9\xa5\x28\xcb\xbf\x38\x9c\x68\x82\xd7\x90\x2a\x3c\x97\x5c\x05\x0d\xe5\x92\xe1\xa9\x46\x35\xe6\xf0\x09\xad\xf3\xb3\x89\x0b\x6a\x20\xf1\x5f\x34\x9a\x6e\x44\xcd\x4f\x9d\x0e\xb6\xa4\x24\x98\xcf\x25\x43\x25\x35\xcd\x8d\x90\x72\x66\x51\x61\x0b\xfe\x88\x0c\xdc\xa7\xc8\x8c\xe5\x61\x27\xd5\xc8\x08\x3a\xcc\xb0\xdd\x59\x80\xe3\xff\xd1\x61\xc4\xf5\x2c\xbe\x13\x04\x8e\x67\xcb\x24\x95\x47\x5b\x64\xd6\xf2\x1c\x50\x8c\x40\x68\x79\x3c\x02\x39\x4c\x7a\x6e\x2e\xb7\x9a\xed\xe9\x7f\xcd\xf4\xf8\x59\x34\xe3\xf5\xde\xab\x98\x4b\x5d\x6b\x3b\x5f\xff\x71\xad\x7d\x7b\xf5\x72\xef\xd5\xeb\x1c\x9d\x69\x80\xce\xac\x5c\x67\x66\xd3\x94\x7b\x6b\xed\x9a\x92\x22\xf8\x85\x30\x0d\x2e\x14\xca\x5d\x04\xe9\x25\xeb\xd1\x62\x7d\x9b\x51\xc9\x46\x6b\x9b\x49\x3a\xb6\x0f\x3a\xb6\x7c\x1d\x0b\x19\xcc\x62\x86\xc9\x5f\x75\xae\x5d\xdd\x72\x2c\xc3\x84\x55\xee\x4a\xac\xd3\x84\x3e\x80\x89\xda\x24\xf5\x99\x4d\x69\xd4\xb3\x51\x33\xb8\x98\x8a\xd1\xbd\x74\x6b\x55\x4e\x2f\x37\xdc\x6e\xf9\xff\x7f\x7b\x11\xea\x42\xe0\xac\x19\xad\xa4\x6f\x03\xa7\x96\x66\x3b\xf7\xbb\xad\x7e\xd8\x9a\xc6\x9d\xb0\x4c\x4b\xdc\x36\xa0\xc6\x9d\xef\xf4\x0f\x6f\x0e\x65\xd5\x89\x7c\x7d\xb2\xaf\x46\x6b\x49\x21\xa1\xc8\x09\xe0\xff\xd8\x97\x7f\xe8\xfd\xf8\xef\x96\xf4\xb7\x2e\xff\xd8\xaf\xcb\x35\x92\xb3\xaa\x21\xfd\xad\x9b\x81\xd6\x7f\x8b\xde\x81\xf6\x49\x47\x52\xa5\x89\x4f\x91\x1b\x3e\x90\x1b\x96\x9f\xd2\x68\xca\x3f\x62\x35\xd7\x0e\x4d\xb9\xbf\x51\x5f\x12\xe2\xfb\xee\xf8\x81\x0c\x2d\xf4\x72\x8c\x8e\xa0\x10\xca\x81\xa2\x09\xe4\x1d\x76\x7b\x37\x0e\x66\x41\x73\x9a\xe7\x87\xb7\xb4\xf3\x5f\x3b\xde\xaf\x27\xc3\x7e\xe8\x21\x19\xc6\x5e\x94\x17\xcf\x2f\xfe\x1b\x00\x00\xff\xff\x33\xf6\x73\xa5\x66\x48\x01\x00"), - }, - "/charts/istio-telemetry/grafana/dashboards/istio-workload-dashboard.json": &vfsgen۰CompressedFileInfo{ - name: "istio-workload-dashboard.json", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 77268, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\xdd\x72\xdb\x38\x96\xbe\xf7\x53\x60\x38\xb3\x5b\x76\x56\x76\x44\x59\xb2\x2d\x57\xd2\x55\xb1\x9d\xcc\xa4\x36\x7f\x1b\x39\x99\xaa\x8e\xb3\x2a\x98\x84\x25\x94\x29\x52\x0d\x80\xfe\x89\xcb\xfd\x0c\x7b\xb1\xf7\xfb\x8a\xfb\x08\x53\xe0\x8f\x08\x92\x20\xa9\x7f\x41\x12\x2e\xba\x63\x01\x20\x00\x02\xdf\xc1\xf9\x70\x0e\x88\xf3\xb4\x03\x80\xd1\xed\x62\x77\xe8\x33\x6a\x9c\x82\x1f\x3b\x00\x00\xf0\x14\xfc\x1f\x00\xc3\x85\x03\x64\x9c\x02\xe3\xa2\xd3\xfd\xf2\xf5\xf3\xc7\xb7\x97\xff\x78\xfb\xad\x63\xd4\xe2\x6c\x07\x5e\x23\x87\xe7\x7f\x21\xde\x00\xb1\x3e\xf2\x69\x92\x69\x23\x6a\x11\x3c\x64\xd8\x73\x79\x91\x24\x83\x3d\x0e\x83\x4a\x6d\xc8\x20\xf5\x7c\x62\xa1\x24\x6f\xe8\xf8\x3d\xec\xbe\xb7\x79\xfe\x50\x52\x69\x98\xff\x29\xea\x96\xd0\x6c\x50\xe0\x79\x07\x80\x9f\xb5\xf0\x95\x08\xfa\xc3\xc7\x04\x49\x5e\x2a\x6e\xbf\x47\xe0\x0d\x74\x61\x52\x39\xb6\xa5\xc9\xf1\x20\xfc\x3d\x9b\x71\x87\x08\x8d\xde\xae\x75\x50\x3f\x68\x46\x9d\xa8\xc9\x9b\x1b\x42\x17\x39\x92\xc6\x86\x7d\x69\x53\x62\x72\xa6\xa1\x7a\x79\x43\xb2\x71\xc5\x85\x23\xea\xe6\xc7\x72\xca\x76\xa5\x2f\x48\xb1\xdb\x73\x10\x65\x90\xe5\x9b\xec\x48\xf2\xe6\xd0\x24\x43\x0f\x92\xc6\x2e\x53\xa9\x05\xcd\x8c\xf0\x03\x5d\xd7\x63\x90\x63\x97\x03\x28\x6c\xd7\x70\x30\x65\x23\x38\x25\xbd\x01\xc0\xb8\xf6\xb1\xc3\xde\xf3\xea\xcc\x5a\x92\x2a\x4c\xc4\x29\x30\xf6\xf7\x41\x84\x20\xb0\xbf\x6f\x08\xc5\x90\x0b\xaf\x1d\x5e\x84\x11\x1f\x09\xe9\x7d\x6c\x4b\x52\xb1\xe5\xb9\xe7\x9e\xe3\x11\x5e\x27\xe9\x5d\xc3\xdd\x7a\x0d\x34\x4c\xb3\x06\x1a\xad\x56\x0d\x98\x7b\x62\xd5\xf1\xcb\xbf\x49\x5e\x07\xfc\x3b\x78\xe3\x20\xc2\xa8\x58\x2e\x81\x0e\xed\x5f\x7b\x90\xd8\x46\x94\xf7\x1c\xfc\xfb\x73\x27\x9a\x02\x03\xd9\x98\x45\xbd\xbd\x81\x0e\x0d\x3a\x66\xf4\x5c\xc4\x02\x91\x75\x7d\xc7\x09\x53\x38\x7e\x2f\x3d\xcf\x61\x78\x68\x9c\x82\x7a\x90\x88\x53\x45\x30\x43\x04\x46\x8b\x83\xd9\x3a\x34\x0f\x9b\xad\xe6\x91\xd9\x3c\x6a\x05\xb9\x0e\x76\x6f\x03\xd1\x0d\xa7\x23\x98\x67\x89\x28\x5b\x9e\xcb\x90\xcb\x27\xc5\x78\x65\xe3\x3b\x60\x39\x90\xd2\xd7\x57\xc9\x7b\xec\xf7\x11\xb4\x11\x01\x1c\x13\xfb\x16\x72\x19\x22\x57\xc6\x6f\x57\xee\x2b\x3a\x84\xee\x6f\xff\xfc\xfc\xf5\x3f\x3f\x7c\x7e\x73\x71\x0a\xfe\x76\xef\x91\x5b\xc7\x83\xf6\xc1\xdf\xf8\x98\xd1\x21\xb4\xd0\xab\x97\x41\xa1\x2b\xf7\xd5\x4b\x1b\xdf\xfd\x96\x80\xa7\x47\xb0\xfd\xc5\x4b\x80\x11\xce\x96\x71\x0a\x0e\x85\x21\xbd\x37\x4e\x41\xa3\x29\x24\x3c\xc4\x03\x11\xfd\x7e\xe4\xbf\xe3\x61\x4e\x43\xf8\xa4\x9d\x2c\xb1\xa9\x81\x08\x92\x06\x5e\x80\x0b\xa3\xcf\x06\x02\xf6\x19\x66\xc1\xb4\x88\x0b\x2d\x81\x2e\x1d\x42\x12\x8e\x90\x88\xa3\xd1\x84\x07\xb2\x22\x15\x31\x0b\x5a\x7d\x74\x89\x07\xc8\xf3\x99\x30\x6f\xd1\xb0\x3b\x1e\x39\x83\xd6\x6d\x8f\x78\xbe\x6b\x8b\x60\x48\xf2\xbf\x43\xc7\x47\xf2\x2c\x2a\x48\x11\x88\x50\xdc\x68\xb6\x6a\xa0\xd5\x0c\xff\xab\x1f\xb4\x53\x38\x0e\x4b\x1c\x1e\xd7\x80\xd9\x68\xd7\x40\xb3\xce\x8b\x9c\x48\xca\xb4\xea\x35\x60\x1e\x37\x6a\x80\xd7\x56\x3f\x68\x1f\xef\xc5\x48\x4e\xc6\x2f\x2d\x96\xb2\x75\xef\xc6\x23\x03\x18\xa0\xca\x1b\x0a\xc9\x3d\xe8\xf7\x50\x7a\xd6\x07\xf0\x21\x7e\x4f\xb3\x2e\xce\xee\x00\xbb\x71\x86\x98\x4c\xfb\xde\x7d\x76\x4c\xf8\x74\xf4\x09\xa2\x7d\xcf\xb1\x3f\x70\x8d\x4a\xcb\x4a\x7c\x84\xe4\x16\x05\x23\xc8\x27\x34\x87\x9f\x42\x6c\x36\x33\xd8\x3c\xa9\x80\xe6\xa1\x1c\x9a\x66\x23\xf9\xcd\xa5\xe9\x0e\x3a\x59\x74\xc8\x20\x0b\x87\x43\xec\xf6\x2e\x43\xd4\x99\xb2\xf4\x34\x26\x92\xce\x0b\xab\xd8\x1d\x1f\x50\xc0\x3c\x90\x5a\xe1\x83\x22\x77\xf1\x24\x8c\x12\x9f\x6b\xe5\x95\x11\xe8\xf6\x2a\x2a\x6b\x24\x95\xe5\x40\x34\x80\x0f\x17\x90\xc1\x2f\x1e\x76\x03\xe2\x24\xcc\xbe\xc1\x47\x23\xc8\xf8\x18\x49\xaa\xe5\xb9\x2e\xb2\x18\xb2\x8d\x54\x99\x40\x25\x65\x06\x6f\xe8\x51\x76\x83\x1f\xd2\x82\x1c\x25\xbe\xf3\x5c\xd6\xc1\xbf\x82\x2a\x5b\xf5\x7f\x13\xf2\x09\xca\x3f\x13\xa4\x15\x3e\x12\xbc\xfe\x47\x38\x2c\x19\xf6\x1b\xe2\x0d\xf8\x73\xbc\x7f\xe9\x01\x62\x61\xc7\x8d\x4f\x2f\xdf\x64\x32\xbc\xd1\x03\x25\x63\xc7\xd7\xa4\x5b\x07\xbb\x19\x59\xba\xc1\x8e\x93\xd6\x6c\x87\x66\x0d\x98\xe6\x49\x0d\x98\x27\x6d\x2e\xce\xe6\x49\x4a\xe2\x6f\x78\x3b\x39\x05\xc9\x2b\x16\xab\x09\x6b\x69\xf0\x85\xa1\x7d\x98\x7a\x3e\x12\x46\xa9\x1c\x05\x5a\xee\xdc\x73\xfc\x41\x96\xbd\x42\xd2\x43\xac\x64\xd8\xd0\xc3\x30\x6c\x9a\x2f\x8d\xbb\xd4\x1f\xec\x62\x02\x19\xda\xc5\x94\x61\x2f\xa0\xa5\x88\x32\xda\x65\x1e\x83\xce\x13\x41\x43\x8f\x30\x44\xb8\xce\x42\x94\x61\x37\x50\x89\x57\x46\x4d\xf8\xd5\x8d\x75\x53\x77\xa4\x9a\x5e\xff\x79\x65\x24\x8a\xaa\xa0\x78\x50\x28\xfe\x71\x65\x3c\xff\x68\x0d\x7e\xee\xed\xf1\x71\xac\xd7\x53\x34\x21\xb5\xe2\x31\x3c\x40\x5d\x8a\x08\x46\x34\x5d\x24\x16\xf7\x77\xd0\x62\xc1\xe0\x9a\xa9\x6c\x82\x6e\x42\xda\x9e\x81\x04\x65\x88\x53\x80\x66\x09\x1e\x46\x6b\x1b\xcd\x0c\x75\xac\xd2\xde\xbb\x96\x37\xc0\x6e\x0f\x7c\x0d\x47\x0f\x7c\xe7\x13\x83\x8a\x34\x5d\x5a\xe3\xc4\xaa\x4e\xc6\x44\x03\x49\x17\x65\xe4\x44\x94\x91\x20\xb7\x5c\x46\x3c\xfe\x6e\xc6\xeb\x31\xc5\x23\x5e\x58\x2a\x25\x24\x28\x18\xef\x72\x2c\x9f\x04\x2f\xa6\x84\x9a\x96\x28\xd8\x69\xf4\x74\x5e\xdb\x4f\xa1\xa6\x6d\x64\xe1\x01\x0c\xd4\x65\xea\xbd\x13\x30\x0f\x11\xe1\xa4\xcf\x77\x31\x9b\x59\x8d\x9f\x2c\x4a\x8f\x07\x45\xe6\xa7\xc8\x4f\xc6\x54\xe4\x4d\xad\xc8\xb5\x22\xd7\x8a\xbc\x5a\x91\xab\xa3\xc2\x6b\x04\xd1\xa1\xe7\x52\xd4\xb5\x3c\x1b\xfd\xe5\xcf\x2b\xa3\x75\xf0\x62\xa4\xd9\xc1\x4b\xa0\x4e\x57\xa3\x3e\x2d\x8c\x65\x9c\x95\xe1\x32\x4d\x28\xda\xad\x1a\x68\xb7\xf9\x7f\x07\xad\x32\x72\xd1\xf1\x2d\x0b\x51\x0a\xbe\x42\x86\xc0\xae\xeb\xb9\xfb\xad\x87\x07\x10\x0f\x39\xdd\xdb\x12\xba\x01\xef\x7a\x72\xaa\x01\x1d\x0c\xe9\x79\x4c\x0c\x9e\x12\x11\xbb\x86\x24\xa7\xea\x02\x13\xcc\x07\xe4\xf6\x58\x3f\x58\x54\x53\xe9\x48\x56\xbc\x72\x53\x8e\x83\x45\xc2\x9c\x5d\x43\x9a\x47\xe3\xa9\xc8\x93\xe3\x44\x15\xa2\x1e\x0a\x18\x94\xd0\x14\x74\x70\xcf\x7d\x43\x2f\xb3\xf6\xb0\x38\xfb\xae\x27\x49\x8d\xc9\x5c\x3e\xa7\x8f\x6d\xf4\x76\x30\x64\x8f\x05\x79\xbf\x23\xe2\x49\xb2\x06\xf0\x41\x96\x8a\x5d\x49\x2a\xc1\xbd\x3e\xeb\x48\xcd\x8a\xc2\x12\x2a\xb2\x15\xbe\x6c\x48\x2a\x0a\x00\x53\xcc\x5d\xf8\xca\x4d\xb3\x26\x27\x9e\x78\x8f\xed\x10\x0f\x65\x1c\x23\xa7\x75\x53\x7a\x2b\xe6\x74\xb0\x97\x67\xad\x43\xfe\x14\x81\x36\xf6\x79\x95\xad\x74\x7a\x1e\x73\x04\xb9\x36\x22\x28\x58\xe4\x6f\x1c\x4f\x10\xd4\x70\x65\xfa\x7c\x87\x08\xc1\x36\xca\xf4\x2f\x58\x05\x65\xd0\xa6\x0c\x5a\xb7\xb9\x56\xf8\x06\x68\x88\xec\x0f\xa1\x9a\xcc\x2c\x16\xe3\xea\xa0\x3e\xa6\xcc\xeb\x11\x38\xe8\xfe\xe1\x43\x97\x61\x07\xed\xd6\x0f\x38\x17\x2f\x58\xf1\xbb\xb6\x1f\x5a\x57\xbb\x14\x59\x9e\x6b\xd3\xee\xb5\x6f\xdd\x22\x36\x99\x0a\xc8\xaa\x1f\x30\x99\x9e\x78\xfe\x61\x06\x7a\xe9\xfa\x11\xec\x3a\x68\x06\x65\x90\x52\xdc\x60\x0c\x35\x11\x8a\xeb\xbb\x51\x0b\x5f\x5a\x75\xa3\x68\xb7\x5a\x49\x34\x4b\xe7\xa0\xbd\xe9\x73\x10\x79\x21\x32\x2b\xc0\x14\x53\xd0\x2e\x9a\x82\xb3\x59\xa7\xa0\xad\xa7\x60\xcc\x29\x68\x17\x4c\xc1\xf9\xd8\x6c\x4a\x58\x07\x79\x7f\xdf\x85\x5b\x8b\xd4\xce\x87\xa7\x77\xfa\xf8\x26\xb7\x25\x1a\x51\xae\xd8\x8c\x73\x11\xcd\x8e\xc0\xac\x46\x3e\xa3\x27\x51\x37\x41\x82\x6c\x89\xce\xf2\x08\xcb\x58\xae\x03\xc5\xd4\x8d\x39\x18\x76\x6d\x7c\x87\x6d\x1f\x8e\xd8\xcf\x73\x8e\xa7\x65\x3c\xb0\x0f\xf0\x01\x67\x28\x45\x08\x99\xac\x95\x41\x70\xc4\xf0\x17\x96\x78\xdd\x32\xa5\xe5\x1a\x76\xa4\x49\x7f\xfc\xcc\x75\xf1\x11\x3e\x94\xed\xa6\x13\xe4\x64\xf0\x12\xbb\xe5\xd3\x1d\xe0\x19\x5e\xef\x0c\x52\x94\x03\x4a\xc8\x21\x72\xc5\x43\x12\x91\x4b\xce\xef\xb6\x8a\x05\x57\xe8\x63\x9f\xcf\xd6\x0a\xfa\x29\x52\x14\x01\xde\x52\x8a\xbb\x44\x6b\xda\x5f\x1b\xed\xb6\xd5\x3c\x9a\xd4\x7a\xf6\x57\xbb\xd9\x84\x87\x70\x36\xaf\xd6\xd9\xc6\x7a\xb5\x12\xf7\x54\x81\x5b\xeb\xb8\x80\xea\x6b\x6b\x58\x3c\xf3\xda\x1a\xa6\xad\x61\x92\x61\x2b\xb2\x86\x31\x6b\xd8\xa5\xc8\x65\xdd\xeb\x47\x86\x2a\x0d\x4d\x13\x52\x27\x79\xf9\x9c\xa9\x29\xe4\x57\xff\x91\x63\x81\xbc\x6f\x04\x59\x08\xdf\x21\x7b\xe5\xfd\x5b\x19\xed\x1b\x63\xe7\x53\xce\xf9\x64\x2e\xb9\xcb\xf3\x2f\xa0\x83\xc8\x1d\x22\xe0\x92\xc0\x9b\x1b\x6c\x6d\xbb\x79\x4c\x73\x07\xb0\x61\xdc\x21\x95\x50\x46\x1e\x5a\x9a\x3c\x68\xf2\xa0\xc9\xc3\xfc\xc9\x43\xb8\x28\x71\x3d\x1b\xfe\x35\x96\x4a\xce\x14\x9d\x2b\x5b\x58\x5c\x87\x36\x8f\x1e\x9c\x3b\x18\xb9\x4c\xd3\x83\xb0\xd4\x8c\x47\x95\xdf\x7f\x3a\xfb\xfc\xed\xd3\x05\x88\x8f\x2c\x77\x96\x70\x3a\xd9\x34\xe5\xfa\xae\xd9\x2a\xd5\x6b\x4b\x39\x9e\xac\x86\x33\xb2\x5e\x3d\xea\x47\x93\x5a\x28\xcc\xa6\x7c\xd4\x1b\xc2\xa8\xcb\xbc\x91\x33\xb8\x1b\x33\xda\x62\x12\x97\xa2\xea\x7e\x43\x00\x29\xf8\x85\x88\xb7\xe5\xfe\xc3\xb1\x0e\xa3\x46\x94\x2c\x72\x97\xf8\x04\xb3\xc7\xee\xd0\x73\xb0\xf5\xf8\xfa\xca\x18\xf8\xcc\x87\x4e\x97\x39\x74\x41\xdb\xe4\x1a\x28\xde\x95\xcb\x34\x28\x25\xd6\xbd\x53\xad\x89\x29\xb1\x5c\x9a\x9c\x91\xb9\x7e\x04\xbb\x99\x07\x4a\x6a\xa8\x81\xd4\x89\x9b\x85\x1d\x9e\xcd\xea\xe4\xa7\xa7\x6c\x9f\xc0\xf3\xf3\x41\x3e\x35\xe9\x29\x78\x7e\x06\xa7\xe0\xe9\x29\xdd\x61\x9e\xba\xfb\xff\xff\xf7\xbf\xff\x33\xb8\xfc\xd0\xd9\x2b\xf4\xbf\xa5\xd2\xa3\x03\xbb\x8d\xca\x5d\xc3\x9c\xb0\xf5\x17\x0d\xae\x19\xc1\x35\x2f\x26\x38\x47\xd4\x15\x92\xca\x0a\xa8\x95\x33\xcd\xb9\x38\x1f\xb3\x87\xc9\x29\x9f\xb6\x4e\xf0\x86\xe0\x8d\x6b\x83\xaf\xd1\xab\x80\x73\xae\x46\x92\xe7\x4b\x3d\x93\x39\xb5\xb8\x51\xae\xc9\xf4\x76\x96\x41\x81\x0e\xcf\xe0\xb5\x14\xbf\xad\x0a\xf1\x38\x57\x7f\xa0\x91\x39\x6f\xb0\xc1\x6e\x4b\x35\xc8\xf0\x18\x27\xf3\x2a\xc9\x70\xce\xe4\x56\xc8\x86\x8f\x96\xc5\x86\xe7\x74\xf6\x4e\x75\xa2\xbc\xe5\x04\x79\xda\x93\xd3\x60\xc5\xa4\x59\x7e\x22\x7c\x75\xa4\x66\x96\x53\xe8\xab\x1e\xcb\xd5\x0d\xda\x9a\x51\xbe\xca\x2d\x45\x25\xcf\xab\xd8\x52\x2c\x00\x41\xcb\xd9\x66\x6c\x89\x38\x2e\x69\xcf\xa6\xe5\x71\x2c\x79\x9c\x76\x5f\xbf\xcc\xcd\x56\xd5\xc7\x35\xe0\x2c\xde\x84\xe9\xc3\xa0\xb3\x1d\x06\x95\x7d\xf3\x0a\x66\xd8\xb7\x18\xe6\x41\xdd\x34\xf4\x06\x6b\x85\x1b\xac\xc2\xab\xb4\xa6\xdf\x79\x55\x5d\xff\xd1\x28\xb8\x9a\xa6\xb1\xb2\x6f\xa2\x16\xb3\x2d\x13\x3f\x89\xd2\x5b\xb6\xb5\xda\xb2\x2d\xfe\x9b\xa8\x59\x37\x24\x33\x7e\x38\x32\x1f\x02\x64\x4e\x65\x9a\x5e\xe9\x87\x2a\x4f\x4f\x99\x9e\x05\x1c\xa8\xb0\xb7\xcf\xcf\xe0\x4b\xab\x5e\xbd\x2b\xb9\x98\x71\x57\xb2\xf8\x0f\xc0\x34\xe0\xd6\x06\x70\xed\x31\x00\x37\xeb\x36\x58\x0e\xb8\x96\x06\xdc\x56\x02\xae\xb5\x78\x57\xee\xe2\xbf\xaf\xd4\x80\x5b\x1f\xc0\xb5\xab\x01\x77\xbe\x08\xc0\x2d\x8b\xc3\x8d\x67\xc5\xd2\x88\x5b\x1a\xe2\x0a\xbf\xd2\x7f\xbb\xce\xcc\x4d\xc3\x4c\x31\x98\x15\xde\x44\xf0\x6e\x9d\xf9\x9a\x86\x99\x6a\x30\x6b\x15\xc0\xec\xef\xeb\xcc\xd2\x34\xcc\x54\x83\x59\xd1\xa5\x1e\xff\x50\xc9\xff\x93\xbd\xf2\x23\x39\x74\xa7\xfd\x3d\x0a\x5f\xfe\xa1\x7d\x3c\xea\x1f\xa2\xab\xba\x00\xb6\xd0\x95\x73\xa2\x88\x2b\x47\xfb\x6b\xb4\xbf\x46\x46\x5b\xc2\x6f\x30\xb5\x45\x69\x63\xa8\x8a\x92\x4e\x1a\x8d\xb2\xcd\x42\x99\xa2\xae\x19\x0d\xb3\xcd\x82\x99\x9a\xfe\x18\x8d\xb2\xcd\x42\x99\xa2\x5e\x98\x99\x61\xa6\xad\x48\x6a\xe1\x4c\x21\xd7\x8b\xc6\xd6\xa6\x61\x4b\x1d\x7f\x8b\xc6\xd6\xc6\x61\x4b\x19\x27\x8b\xc6\xd6\xc6\x61\x6b\xad\x3c\x2b\x1d\xfc\x0b\xe9\xaf\x68\xe6\xe5\x55\xb1\x91\x15\x08\xb4\x76\xae\x68\xe7\x4a\xfc\x5b\x1a\x3b\xa8\xc8\xbb\x72\xa4\xbd\x2b\xda\xbb\xa2\xa6\x77\x25\xfa\x44\x59\xdb\x8a\x36\x8c\xaf\x28\xe6\x5e\xd1\x30\xdb\x48\x98\x29\xe7\x5f\xd1\x38\xdb\x48\x9c\xa9\xe6\x60\xd1\x30\xdb\x48\x98\x29\xe7\x61\x99\x17\xce\xb4\x39\x49\x2d\xa0\x29\xe1\x62\xd1\xe0\xda\x50\x70\xa9\xe0\x63\xd1\xe0\xda\x54\x70\x29\xe0\x64\xd1\xe0\xda\x54\x70\xa9\xec\x65\x19\x5d\x06\xad\xbd\x2b\x62\x87\xb5\x77\x45\x7b\x57\xe6\xe1\x5d\xa9\x0c\x86\xd2\x38\xca\x81\x2c\x0c\xb9\x56\x2f\xf7\xae\x4c\xe8\x3e\xd1\x17\x39\x8b\xe9\x6b\xed\x07\x91\x47\xa3\x98\x22\x12\xe8\x26\x5c\x46\x3c\x0d\x83\x58\xc7\x38\x14\xcb\xb8\x93\x78\x09\xc0\x5a\xa3\x6b\x75\x97\x8b\xac\x25\x00\x68\x5a\x03\xf3\x12\x48\xe8\x19\x87\x15\xf8\x1a\xa1\x0c\xdc\x10\x6f\x00\x46\xc7\x7f\x82\x48\x7b\x23\x44\x69\x62\x3a\x1b\x31\x3d\xd3\x31\x49\x4a\x38\x69\xba\x9f\x5b\x42\x49\x73\x21\x49\x0a\x39\x69\x43\x73\x52\xcd\x49\x27\xa3\x0e\xb9\xe0\xb7\x13\xb0\xce\xa5\x06\xb1\xd7\xac\x41\x39\xda\x39\x01\x76\xf2\xc4\x52\x83\x67\xf5\xe0\x51\x9e\x72\x76\x90\xcb\x00\xf3\x34\xd9\xd4\x64\x53\x69\xb2\x39\x63\x6c\xed\xcf\xdf\x2e\xc3\xe0\xda\x9d\xb7\x5f\xbf\xbf\x3f\x7f\xbb\x8c\xd8\xda\x87\x0d\x39\x89\x3c\x6a\x97\x91\x2b\x1d\x5b\x3b\x35\xea\x13\x9b\x93\x0f\x5b\xf2\x51\x3f\x9e\xaf\x39\x59\xc7\xd6\xd6\xec\x7e\xfa\xd8\xda\xe5\x74\xa8\xd2\xcb\x2c\xd2\x2e\x81\xe5\x85\x45\xb3\x84\x8d\x22\x72\x87\xa3\x9a\x6d\xca\xe8\x9d\x95\x8e\x99\x25\x29\xbb\xc2\x98\xd8\x92\xde\x6c\x52\xdc\xeb\x6d\x99\xf8\x39\xfa\x09\x26\x41\xc4\xb4\x1b\xb4\x25\xd0\xed\xcf\x3e\xeb\x79\xd9\x98\xd4\x17\xc9\xbb\xe9\xc0\xd4\x72\xf2\x2d\x4e\x9c\x0e\x4c\xad\x0f\x26\x2c\xd1\x0a\x5c\x48\x25\xcd\x65\x51\x49\x1d\x98\x7a\x1b\xd8\xe5\xf8\xd1\x5b\x13\x45\xbf\x12\xb2\x59\x14\xfa\x76\x46\xd6\x31\x59\x04\xdb\x15\x8f\xc1\xcc\x2f\xab\x20\x97\x52\x28\xd8\xf3\x38\xb3\xbb\x48\x5a\xbd\x36\x10\x5f\xe8\xde\x62\x8d\x31\x2e\x87\xb8\xc2\x76\xf8\xd1\xc6\x60\x9c\xf8\xc9\xc2\x86\x41\x9b\xe6\x75\x10\x65\xbd\x19\x58\x75\x10\xe5\xa6\x59\xb0\x47\xa8\x38\x29\xa2\x83\x28\xeb\xed\x85\x7a\xd7\xc6\x8c\x1d\x4b\x68\x1e\x24\xbc\xea\x04\xc1\xb8\x27\x12\xe4\x04\xc5\x2c\xb7\x73\xae\xf8\x13\xaa\x22\x26\xae\xda\x05\x2f\x1a\x10\xab\x06\x84\x62\x37\xb1\x68\x40\xac\x1c\x10\x6a\xdd\x99\xa2\x01\xb1\x72\x40\xa8\x75\xb9\xc9\x5c\x01\x51\x69\xe5\xd0\x88\x90\x92\x88\xd5\x5f\x43\xa2\x61\xb0\x72\x18\xa8\x70\x61\x88\x86\xc1\xea\x61\xa0\xc0\xd5\x1e\x1a\x06\xab\x87\x81\xca\x97\x70\x64\x4f\xc7\xa4\x82\xc8\x6a\xa3\xf7\xdc\x8c\xde\xfa\xd4\xcb\x46\x18\xba\x17\x17\x49\xb6\xd0\x9e\x7d\xa8\x88\x3d\x5b\x1b\xad\xb5\xd1\x7a\x92\xd8\x2c\xda\xec\xb0\x4d\x96\x6a\x8d\x82\xa5\xef\x31\x15\x34\x4f\x6b\x14\x2c\x7d\x8b\xa9\xa0\x4d\x5a\xa3\x60\xe9\x3b\x4c\x05\x0d\xd1\xb3\xa0\x40\x1b\x1a\xa6\x81\x81\x3a\xd6\x67\x3d\xf7\xdb\x6b\x72\xd6\x73\xbf\xbd\x76\x66\x3d\xf7\xda\xb8\x5c\x66\x5c\x8e\x6f\x7a\xd6\x86\xe5\xb9\x19\x96\xf5\x75\xcf\xda\xbe\x3c\x56\x30\xcd\x42\x03\x73\x53\x1b\x98\xb5\x81\x59\x49\x03\x73\x45\x5c\x0a\x6d\x4f\xd8\x0e\x0b\xb3\x86\x81\x36\x31\x6b\x18\x68\x1b\xb3\x86\xc1\x0a\x61\xa0\x9c\x95\x79\x0e\x38\xd0\x26\x87\x69\xd6\x03\x15\xcc\xcc\x7a\xf2\xb7\xd8\xce\xac\x27\x7f\x8b\x0d\xcd\x7a\xf2\xb5\xa5\x39\x6f\x69\xce\xc5\x12\xd4\x16\x66\x6d\x61\xd6\x16\xe6\xe5\x06\x14\x6c\x1e\xe7\x40\x16\x5a\x98\x8f\xca\x2d\xcc\x3a\x78\xcb\xb6\xda\x82\x17\x1e\xbc\x25\xa1\x03\x4b\xbd\xa4\xab\x54\xc5\x2b\x70\xab\xf3\x06\x44\x56\xd1\x33\xbb\x66\xd7\xad\x09\x61\x4f\x3c\x17\x8c\x8e\x06\xe8\xb0\x27\x62\x87\x75\xd8\x13\x45\xc2\x9e\x6c\x0e\x4b\xcb\xdd\xae\x5c\x48\xd3\x4e\x34\x4d\xd3\x34\x6d\x32\x6d\x5e\x15\x9e\x57\xfd\x3b\x83\x15\x57\xe8\x2a\xc7\x5e\x5e\x83\xdb\x72\x15\x9f\x5d\xe5\xe9\x5a\x3a\x30\xb2\x26\x6d\x9a\xb4\x2d\xac\x9b\xd3\x90\xb6\x9d\x48\x06\xb8\xe8\x70\x01\xe0\x1d\x35\xeb\xe1\x68\x1a\xd4\xea\xa3\x01\xfc\x8e\x08\x0d\xaf\xa5\x0d\x4f\x44\x1a\x94\x3d\x86\x08\xb7\x21\xb9\x0d\x4b\x32\xd8\x4b\xe4\xc6\x60\x68\x30\x74\x20\xc3\x6e\x6f\x04\x24\xc3\xc1\x94\x09\x53\x99\x3a\x1f\xe9\x7c\xe7\x20\xc8\x23\x26\xa1\x46\x4f\xc2\xf0\x56\x93\xbf\xc4\x9c\x2f\x8a\x06\x76\x2d\xc7\xb7\xd1\x1b\x47\xc6\x88\xe2\x99\x30\x3e\xc5\xcb\xa7\x58\xdb\xc0\x77\x18\x96\x3c\x15\x01\xdd\x70\x65\x0f\x79\xc1\x6d\xbe\xe9\xe5\x04\x00\xe3\x0f\x1f\x11\x4e\x22\xc3\x3f\xba\x04\x51\xdf\x61\xa1\xf6\x90\xdc\xad\x9e\x5f\x7a\x25\x61\x44\x81\x47\x40\x52\x81\xcc\x46\x30\x56\x35\xe2\x2a\x2e\xe0\xc1\x4c\xa5\xf6\x50\x70\x63\xf4\xcb\x83\x17\x82\xde\xb9\x32\x76\x7f\xfc\xf7\x95\xf1\xf3\xc5\xde\xc1\x8b\x97\x46\xf9\x0a\xc5\x60\x2f\x98\x6e\xfa\x5f\xf1\x40\x18\xe9\xdc\xdc\x88\xf1\x34\x79\xe1\x68\x09\x0b\x87\x54\xc8\xf0\x29\xba\x0c\x2b\x92\x12\x5c\x65\xc1\xf7\xcf\x68\x52\x26\xc1\xde\xbd\xe4\x99\x89\xa0\x57\x88\xbd\xa7\xc9\x82\xed\x3e\x17\x83\x2c\x83\xd0\x4c\x33\x63\xf3\x99\x67\x69\x80\xdd\xbd\xa0\xf6\xdd\x72\x01\x58\xd8\xbb\x48\x1b\x9b\xf9\x8d\x26\x14\xc5\x11\xbf\xab\x12\x44\x53\x0b\xa2\x28\x88\x19\x2e\x32\x92\xc3\xf7\xee\x35\xe7\xf4\x20\x96\x47\x50\xaa\x15\x32\xb5\xc4\x82\x19\x84\x86\x9e\x5a\x2a\x8b\xc5\x65\xb2\xe0\xd8\xaf\x4b\x18\xff\xb4\xf8\x9c\x48\xf5\xa8\xd5\xdf\x09\x05\x6b\x7c\x15\xd7\xd0\x92\x35\x8d\x64\x4d\x26\x4f\xf7\xce\x9a\xcb\xd3\xb8\xe1\xe4\xe5\x6a\x41\x31\x61\x9b\xed\x65\x16\xa5\xe2\x0e\xb5\x20\x8e\x23\x88\x62\xfc\xce\x4e\x68\x4e\x99\x40\x16\x43\xfb\xd0\x62\x85\xb1\xd0\x3f\x39\xfd\xe1\x32\x09\xad\x1b\x45\xb9\x9a\x48\xb6\x96\xdb\xb7\x09\x45\x45\x66\xd4\xab\x92\x9a\xa6\x1a\x52\x13\xfc\xfb\x73\x27\x92\x9f\xd0\xb0\x34\x32\x21\xdc\x84\x66\x38\xc3\xf5\xee\xf7\x5b\x83\xa8\x36\x83\x79\x51\x9a\x91\x7a\x6c\x88\xad\xdb\xc0\x35\x10\x3d\x1c\x0d\x5b\x37\x36\x3c\x8a\x76\x25\xa3\x25\x38\x8e\x62\xeb\x47\xf0\xe3\x50\xfc\x61\x0e\x92\xbf\x5b\xc2\xdf\xa6\xf8\xe3\xb0\x2e\xe6\x08\x86\xb5\x86\xf0\xb7\x69\x87\xf6\xb8\x9f\xf1\x3b\xe0\x01\xea\x0a\x12\x54\xd9\x8a\x58\xf1\x91\x58\xb1\xd8\x4a\xa3\x29\xfe\x48\x54\xad\x71\x6c\x8b\xfd\x8d\xfb\x92\x1a\xbe\x5f\x5e\xe0\xee\x30\x22\xf3\x4e\x6c\xd3\x7c\xcf\xa5\x23\xa1\xc5\x17\x90\xf6\xaf\x3d\x48\xc2\xfa\x0c\x3f\xf0\x82\x19\xdf\xae\x69\xe7\xf7\xcb\x0b\x1c\xd9\x86\xee\x12\xfb\xd1\xce\xf3\xce\xbf\x02\x00\x00\xff\xff\x7f\x65\x48\xa8\xd4\x2d\x01\x00"), - }, - "/charts/istio-telemetry/grafana/dashboards/mixer-dashboard.json": &vfsgen۰CompressedFileInfo{ - name: "mixer-dashboard.json", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 43096, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\x6b\x73\xdb\xb6\xd2\xfe\x9e\x5f\x81\x97\xd3\x79\x47\xce\x48\xae\x2e\x96\x73\x99\xb4\x33\x6e\x9c\x34\x9e\x93\x34\x39\xb9\x7d\xa9\x32\x1a\x88\x5c\x51\xa8\x49\x80\x01\x40\x47\x3a\x8a\xce\x6f\x3f\x03\x90\x14\xef\xb2\x64\x59\x97\xa6\xf8\x92\xd0\x00\x05\x2e\x76\x17\xfb\x3c\x5c\x2e\xc1\xf9\x03\x84\xac\xe1\x90\xd0\x20\x94\xc2\x7a\x8a\xfe\x7c\x80\x10\x42\x73\xfd\x2f\x42\x16\xc5\x3e\x58\x4f\x91\x75\xf9\x61\xf8\xee\xfd\xdb\x37\x2f\x3e\xbe\x7a\xf1\xe9\x83\xd5\x4c\xba\x3d\x3c\x02\x4f\xf5\xbf\xe3\xcc\x07\x39\x81\x50\xa4\x9d\x0e\x08\x9b\x93\x40\x12\x46\xd5\x29\x69\x87\x9c\x05\x7a\x50\x07\x4b\x2c\x58\xc8\x6d\x48\xfb\x02\x2f\x74\x09\xbd\x72\x54\x7f\x50\x31\x68\xd4\xff\x47\x2c\x56\xe6\xb2\xfa\x84\xc5\x03\x84\xbe\x34\xa3\x29\x71\xf8\x1a\x12\x0e\x15\x93\x4a\xae\xef\x72\x3c\xc6\x14\xa7\x83\x13\xa7\xb2\x39\x51\xc2\xef\xc5\x8e\x1b\xe0\x22\x9e\x5d\xff\xb4\x7b\xda\x8b\x85\x68\x56\x5f\x2e\xc0\x14\xbc\x8a\x8b\x05\x93\xca\x4b\x65\x9b\x73\x17\x6a\x9f\xb6\x57\x5f\xa8\x4a\xaf\xa4\x56\xa3\xb4\xac\xcb\x3b\x5e\xb7\x72\x82\x12\xa6\xb2\x7c\xb1\x8f\xb9\xd6\x9a\xcb\x2c\x8d\x89\x29\x65\x12\x2b\x47\x52\xd6\x8c\xae\x6b\x79\x44\xc8\xa5\x6d\x53\x69\x10\xb2\x46\x21\xf1\xe4\x95\x1a\xae\xd3\x4c\x5b\x33\x5a\x79\x8a\xac\x56\x0b\xc5\xe6\x44\xad\x96\x95\x39\x0d\x28\x1e\x79\xea\x14\xc9\x43\xc8\xb4\x4f\x88\x53\xd1\x4a\x6c\x46\x9f\x33\x8f\x71\x35\x26\x77\x47\xb8\xd1\x6e\xa2\x6e\xa7\xd3\x44\xdd\x7e\xbf\x89\x3a\x27\xd9\xa1\x3d\xe2\x13\x25\x72\xa7\xdd\xce\xb4\x26\x2a\xb9\x48\x27\x89\xfe\x1f\x5d\x78\xc0\xa5\xc8\xfe\x5a\x4c\xd8\x37\x3d\xa9\xec\x8f\x53\x93\x8b\xc9\x88\x61\xee\x58\x71\xdf\x42\xff\xff\xe5\x41\x6c\x2d\x0b\x1c\x22\xe3\x89\x8d\xb1\x27\xf4\x1c\x2c\x97\x82\xd4\x4b\x8d\x86\x9e\x17\xb5\x28\xbf\xfb\xc8\x98\x27\x49\x90\xe8\x2f\x32\xe4\xf2\x14\x22\x81\xe3\x78\x51\x77\xfa\x67\xbd\xc7\x8f\x3b\xdd\x5e\xb7\xdf\xeb\xe9\x5e\x8f\xd0\x6b\xbd\xe4\x22\xcb\x69\x97\xa8\x58\x82\x36\xa3\x12\xa8\x52\x86\xf5\xcc\x06\x2a\x81\xff\xfa\x6c\xd2\xfd\xf5\x12\x02\x8f\xcd\xc0\x41\x9f\x23\x8f\x10\xcf\x7e\x9e\x74\x7f\x7d\xf6\x73\x7c\x4a\xea\x31\x2e\x27\xce\x3b\x96\x7a\x43\x64\x22\xeb\x29\xea\x65\x94\xf3\xcd\x7a\x8a\xba\x67\x99\x86\x69\x41\x7b\x33\xf5\x77\xa2\xb0\xe5\xd8\x13\x20\xee\x44\x8b\x76\xd6\x2e\x78\xf3\x79\x37\x0d\x7d\xb9\x89\xea\x26\x9f\x69\x17\xb1\x26\xd2\xcf\x2c\x03\x49\xa4\x56\x7b\x36\x00\x72\x4c\x45\x80\x79\xa4\x81\xac\x4b\x2d\x0d\xaa\x97\x4d\xe5\x6a\xc3\x1e\xc1\x42\xfb\x9c\x9e\x7e\x2a\xf7\x08\xeb\x96\xa5\x79\x63\xaf\x17\x93\xd7\x40\x5d\x39\xd1\x8e\x97\x6b\x87\xaa\xd3\xb3\x8b\xa4\x2a\x24\x8c\x89\xe7\x65\x57\x56\xbd\x29\xfa\x9b\x9a\xa2\x57\x32\x45\xa4\xf4\xb3\x54\xe9\xe0\x02\x75\xf2\x97\xc2\x37\x6e\x71\x1a\xca\xc1\x42\x1e\xab\xb7\xd8\xe3\xe3\x69\x55\x2b\xa1\x15\xad\x6a\xcd\x95\x17\xbd\x64\x12\x7b\x15\x67\xdf\x60\x2f\x4c\x75\x5a\x9a\x8c\x47\xa8\xee\xcd\xd9\x5b\x35\x7e\x23\x4e\x64\x9e\x55\xce\xa5\xd6\xdf\x3b\x46\xa8\x7c\x13\x7b\x99\x6a\xc8\xe0\x22\x70\xb5\x48\xb0\x0b\x25\x9b\x06\xea\x57\x1c\x3b\x24\x14\x59\xab\x44\xed\x65\x17\xe0\x40\x1d\xe0\xa0\x23\xda\xd8\x63\x99\x30\x2d\x80\x13\x10\x6f\x6f\x80\x73\xe2\x40\x41\x3e\x11\x60\x1b\xaa\x3c\x4d\x48\x6c\x5f\x97\xae\x22\x24\x04\x01\x38\xaf\x09\x2d\x0b\x2c\x31\x77\x21\xc3\x46\x50\x2e\xbc\xab\x60\x36\x0d\xb4\x78\x22\xf4\x1b\x44\x48\xc2\x86\x2a\xe4\x3b\x73\x9b\xf9\x01\xa3\x40\xe5\x2f\x03\xcb\x27\x53\xe0\x03\x6b\x71\x82\x46\x33\xd4\x90\xd8\xcd\x86\x62\xe5\xc7\x8c\xfb\x58\xaf\x72\x49\x7c\x18\x46\x73\xcb\x9f\x42\x54\xd0\xb9\xc1\xde\x4b\x6c\x4b\x1d\xe1\x3b\xb9\xee\xc8\x19\x5f\x2e\xc7\x99\xcf\x91\xc4\x2e\x5a\x2c\xf2\xa3\x70\x18\x47\x74\xe6\xc2\x5a\x36\x2f\xe2\xa3\x54\x7d\x72\xc2\x41\x4c\x98\xe7\x14\xd4\xaa\x84\x7b\xc9\x99\x9f\x89\xc0\xcb\xf6\x0f\x13\x32\x96\xe5\x8e\x38\xdc\xbc\x51\x0a\x58\x06\xd2\x4c\xf0\x59\x46\xf7\x79\xd6\xd1\x31\x07\xa7\xec\xea\x82\x71\x59\x58\xa9\xda\xcb\x87\x49\x9c\x22\xd4\x21\x37\xc4\x09\xb1\x67\x95\x1c\x3e\xc3\xb3\xb2\x64\x66\x8a\xa7\xa4\x10\x2e\x46\xa1\x7d\x1d\x59\x3c\x3b\x97\x4c\x48\x55\xd3\xb5\xca\xa0\x59\x38\xbb\x7a\xb9\x2e\x97\xe5\x9f\x5f\x4a\x22\xce\xf0\x14\x56\x38\x5a\xea\x24\x62\xa2\x34\x91\xb7\x7f\x4c\x7e\xf3\x42\xa8\x0e\xe6\xfe\x86\x05\x94\x1c\x26\x8a\x3c\xa5\xd3\xa3\xd0\x53\x6a\xce\x4c\x26\xf5\x9b\xe6\xd1\xca\x99\x8d\x79\x55\x0e\x3e\x2b\x5b\x1d\x7b\xc4\xad\x8a\xba\xba\xfd\x35\xdc\x2c\xa5\xce\x71\x9a\x22\x1e\xd6\x50\x89\xf7\x10\xe1\x18\xfa\x24\xb0\x0b\xbb\xe7\x11\x8f\x37\xe1\x11\xdd\x27\x86\x47\xac\xcd\x23\x1e\x15\x4c\x71\x7e\x8b\x25\x3a\x9d\x6a\x1e\xd1\x37\x34\xc2\xd0\x88\x3a\x1a\x11\x70\x66\x83\x10\xc3\x1b\xc2\x65\x88\xbd\xa1\x0f\x3e\xe3\xb3\xe1\x68\x26\x41\xcc\xff\x62\xa3\x5f\xfe\x3b\xb0\x34\xd5\x68\x49\xf0\xc0\x07\xc9\x67\xdf\xa3\xbf\x03\xe6\x11\x7b\xb6\x64\x1a\x7f\xb1\xd1\x5d\x98\x86\x90\xb8\xca\xcd\xaa\x58\x48\x77\x25\x0b\xf9\x1c\x4d\x00\xbd\xd1\x13\x40\x8d\xf9\x1c\xfd\xc5\x46\x68\xb1\x38\xa9\xa1\x25\x57\xd6\xad\xf0\x52\xa5\x28\x0e\x82\x38\x40\xe5\xde\x35\xb5\x91\x36\xde\xc7\x52\xae\xaf\x8e\x57\x9b\xa9\xc3\x65\x4a\x01\x42\x62\x29\x86\x13\xc0\xc1\x50\xcc\xc4\xbe\x74\x51\x99\x92\xd8\x5c\x47\x4a\x6c\x24\x66\x62\x0d\xe5\x5c\x6c\xa9\x1c\xec\x79\xcc\xfe\x3b\xaa\x47\x0b\xbe\x86\x82\x2e\xef\xae\xa0\xbd\xea\x66\x43\x1d\x5c\xac\x39\xfd\x97\x5b\xfa\x07\xa1\xa1\x80\x3d\xfb\xc7\xd6\x11\xf7\x95\x72\x10\x42\x5b\xa1\x80\x35\x54\xf4\xe2\xee\x2a\xd2\x10\xb8\x5f\x1d\x6d\xa8\x8a\x0f\x4a\xc2\xf5\x75\xf1\xfb\x66\xba\xd0\x37\x32\x43\x0e\x81\x87\x6d\x68\x28\xde\x8f\x09\x05\x9e\x20\x50\xa8\x88\x7e\xac\x98\xb4\x53\xdd\x29\x2a\x1d\xe9\x7c\x40\xa2\x19\xce\xa6\xb3\x81\xd5\x44\x01\x73\x96\x27\x14\x94\xd8\x3a\x7d\x98\xd3\x63\xeb\xf4\xe1\xc0\x5a\x34\xd1\x40\xf1\x97\x1b\x62\x83\xfa\xfd\xc0\xfa\xa9\x33\xb0\x90\x3a\x48\x86\x8a\x9a\x1b\xab\x4c\x72\xa2\xc7\x3a\x89\xcc\x12\x8f\x76\x38\xf7\x9d\xcf\x51\x2c\x03\x5a\x2c\x90\x26\xa5\xa8\x71\xfd\x58\xd4\x19\xed\xb9\x31\x5a\x23\x2f\x69\x13\x1d\x99\x11\x5b\x68\x3e\x47\x79\x19\x55\xf3\x2a\xab\xfe\xb6\xe7\xe4\x94\xb6\xbe\x49\x4a\x6d\x97\x94\xd2\xcb\xc6\x24\xa5\x8e\x30\x29\xf5\xc3\x24\x57\xce\xd7\x4c\xae\x9c\x9b\xe4\x8a\x49\xae\x54\x71\x80\x3c\xfe\x2b\x46\xc0\xb1\xcc\x12\x01\x3b\x08\x63\x16\x20\xc0\x66\xd4\x11\x43\x6d\x3b\xcd\x6d\x07\xd6\x75\x38\x02\x4e\x41\x82\x68\xd9\xd8\xb9\x21\x82\xf1\x81\xd5\xdc\x15\x53\xf8\xb3\xe3\x7f\x89\x21\x3e\xf9\xed\xc9\x7d\xb2\x87\x23\xe1\x07\xb7\x93\xbc\x0d\x6e\xf4\xff\xae\x06\x2e\x72\xb8\x1f\xd9\xe0\x5b\x12\xc2\x35\x68\x3e\xd1\x46\x4f\x92\x83\xca\xe4\x65\x63\xdf\x7e\xa7\x9a\x31\xcf\x41\x6f\xe9\x97\x77\xae\xea\xfe\xcc\x1b\xb7\x38\x04\x8c\x4b\x70\xd6\xb9\x27\xda\x03\x7b\x7e\xfe\xee\x93\xa1\xce\xe6\x79\xee\x1e\xe5\x34\xcc\x79\x63\xe6\xdc\xe9\xae\x49\x9d\x1f\x19\xea\x6c\xa8\x73\x1d\xae\x26\x88\xca\x02\xa0\xc3\xb1\x73\xd0\xc7\x26\xb7\x3f\xa3\xcc\x95\x27\xa0\x3b\x00\xef\xdb\x00\x28\x7a\x79\xb9\x83\x67\x51\x75\x79\xc8\xb1\xf8\xa7\xe7\x20\x77\xc0\x2c\x8f\x23\xc9\x78\x49\xc4\xb5\xe1\x49\x3b\x4b\x31\x16\x56\xfa\xfe\x59\x92\x03\x36\xf1\xb1\x57\x56\x5f\x6e\x06\x94\x51\xd8\x74\x02\xed\x6c\xb9\x97\x49\x3e\x1e\x8c\x42\x3d\x5e\x93\x42\x1d\xbc\x42\xbc\xd8\x6c\x38\xd4\x11\x71\x28\x97\x0d\x5d\xc6\x59\x28\x95\x76\x8f\xee\x99\xf9\x1f\xa1\x3f\x02\x8e\xd8\x18\xfd\xbe\x14\x72\x43\xfa\xb3\x07\x2c\x4d\x65\x33\x88\xba\xb3\xcc\xc3\xc1\x11\xf5\x1f\x9c\x77\xa8\x29\x23\x8f\xde\xa2\x50\x01\xed\x86\xc0\xb7\xdd\x97\x91\x77\x56\xd7\x91\x07\xd3\x42\x25\x79\xaf\xbd\x0a\x11\x4c\x25\x79\xce\x1a\xe7\xb7\xf0\x8d\xa2\x31\xba\x35\x74\xe3\xc9\xa1\xe9\x86\xc9\xd8\xa0\xa3\x65\x1b\xfa\x41\x88\xcb\x03\x7b\x48\x98\xe2\x07\x37\xc0\x87\x36\xf3\x03\x0f\x24\x38\x43\x1e\xd8\x22\x7a\xca\x71\xb0\x87\x1b\x3a\xa1\x81\x1a\x1f\x95\xd3\xdc\xd3\xd3\x9f\x75\xe7\xac\x49\x95\x3e\x2f\x3e\x49\x2d\x66\x56\x7c\xac\x72\xff\x1c\x2b\x9e\xf2\x7c\x8e\xca\x17\x5f\xc1\xb1\xf6\xfc\x58\xe7\x8a\xda\xcc\x27\xd4\x45\xef\xe1\x6b\x08\x42\x1a\xaa\xb5\x25\xd5\x62\x81\xa9\x8e\x32\x09\x8a\x1d\x12\x86\x62\x75\x54\x1d\x61\x78\x6c\x08\xc3\xb1\x12\x86\xea\xd5\xa9\x3d\x54\x67\xbb\x0b\xb9\xec\x64\x4d\x74\x56\xac\x9b\x43\x30\x8f\x09\x11\x92\xb9\x1c\xfb\xc3\xaf\x21\xa6\x92\x78\xd0\x68\x9f\xf6\x9b\xa8\x0e\x9d\xe3\xff\x3c\x2c\x81\xda\xb3\x61\x14\xcb\xe7\x8b\x95\x30\xdd\x44\x1e\xdc\x81\xb7\x6c\xfe\x7c\xa1\x12\xa4\x51\xfb\xb4\xbf\x3d\x5b\xa9\xd4\xd3\x93\x1f\x4c\x4f\x4f\xb6\x2f\xdd\xaf\xd6\xd3\x0f\xa7\xa8\x3a\x4d\x5d\xee\x97\xf9\xbd\x07\x11\x30\x2a\x00\x5d\x86\x3c\xde\xe7\xc8\x50\xbf\xad\xa8\x9f\x6f\x98\x9f\x61\x7e\x3b\x64\x7e\xa5\xea\x9e\x3a\xea\xd7\xe9\x18\xee\x77\xac\xdc\xef\x98\x92\x45\x31\x3a\x4d\x30\x75\x3c\x70\xe2\xaa\x59\xdd\x63\x33\x47\xd7\x99\x7c\xa2\xd7\x94\x7d\xa3\xdf\x3f\x51\xe2\x07\x1e\xf8\x40\x25\x38\xdf\xaf\x14\x18\x52\xec\x7d\xbf\xc4\x12\xbf\x66\x42\xe4\xcb\x68\xf5\x08\x7b\xca\xb2\x44\xb9\xf2\x04\x6e\x97\x38\x7b\x1c\xc5\x20\x1f\xb4\x7e\xd1\x0b\xce\x19\x47\xef\xb1\x04\xd4\xe8\x4f\xa7\x88\xc7\xc8\x9b\xa9\x83\x36\x88\x6b\x2a\x6a\x77\x2f\xa7\xc1\xdc\xcd\x31\xb7\x58\x0e\x52\x8b\xb9\x5d\x83\xb9\x06\x73\xeb\x30\x97\xac\x0b\xba\xff\xf7\xcb\xc0\x7a\xfb\xaf\x81\xd5\x5c\x9e\x4b\x6c\x8d\xc4\xa7\x0f\xdf\xc4\xbb\x0b\x1a\xa4\x2d\x23\xed\x1f\x8c\xb6\x44\x68\xdb\x20\x04\x08\xd4\x38\x9b\x4e\x0d\xb8\x1a\x70\xfd\x41\xc1\xb5\xa6\x6c\xe4\xc2\xc1\x81\x04\x2e\x10\xa6\x0e\x7a\xce\xe8\x98\xb8\xbb\xaf\x1d\xe9\x3e\xaa\x86\xc3\xee\xe3\x55\x30\x61\x6a\x44\x72\x5a\x2f\xd6\xa4\xe6\x6e\xf4\x2b\x77\x2d\x2e\xef\x20\x1d\x91\x90\x9e\x21\x21\x86\x84\xac\x26\x21\xba\x2e\x61\xc8\x43\xaa\x89\x81\x43\x44\x80\xa5\x3d\x81\xe4\xa5\x59\x1c\x45\x11\x45\x39\x7e\x8a\x8f\xf3\x9c\x23\x6e\xdc\x47\x0a\x3d\xbe\xd4\xd1\x6c\x6f\x1c\x47\x58\x74\x19\x2b\x0d\x3d\x67\x21\x95\x86\x67\x18\x9e\x61\x32\xe7\xc7\x0d\xa0\xa5\xd4\x79\x2d\x82\x1e\xfc\xb5\x0e\x83\xa0\xe8\x28\x11\x74\x55\xb5\xc3\x2a\x64\x1d\x3a\xf1\xf3\xd5\xe5\xee\x14\xf1\x73\xea\x75\x91\x76\x6f\x4f\xac\x53\xb8\x45\x2d\x14\xf4\xdb\xdb\xbf\x04\xbb\xaa\xf2\xe1\x47\xd4\xd9\x93\x36\xda\x55\xb9\xc8\x8f\xac\xb5\x75\x6a\x47\x0e\x41\xef\x92\xca\x88\xed\x18\x5e\xc7\x30\x3c\xc3\xee\x0c\xbb\xdb\xdf\xc7\x18\x7a\x35\x39\xa9\xf3\xb6\xe1\x76\x86\xdb\x55\x41\xae\xb0\xb1\x87\x79\x43\xb2\xe0\xba\xd1\x69\x22\x1f\x4f\x63\x88\xb5\x75\x1a\x75\xc8\x43\x0f\x92\x63\x5b\xdd\xf3\x2f\xb7\xc3\x18\x13\xf7\xea\xf2\xe4\x3e\x40\x73\xf5\x87\x9e\xde\x87\x5e\x71\x84\x3b\xed\x4a\xb2\xc1\x44\x81\x73\xc6\x0f\x34\xdd\x28\x7d\x1d\x55\x4e\xd4\x4d\x7b\x93\xf7\x85\x36\x98\xb6\xaf\xa9\xd4\x21\x27\xff\x46\x93\x8f\x95\x73\xdf\x64\x43\xec\x5b\xe6\x1e\x52\x81\x25\x11\x63\x02\xce\x10\xdb\x9a\x3e\x46\xcf\x26\x0f\x35\xfd\x4f\xa9\x40\xe8\xc2\xce\x57\xa6\xe6\xb5\xb0\xef\x8a\xd9\xdc\x1a\x34\xd9\x3e\x93\xed\xdb\xbd\x9c\x86\x0e\x6e\xbd\x7d\x74\x1d\x1d\xec\x9b\xfd\xa3\x0d\x1d\xbc\x13\x64\x46\xdb\xd2\xd9\x07\xa6\x84\x57\xb1\x14\xeb\xd0\xc2\x3d\xa0\xe3\x52\x1c\x44\x28\x7a\x8d\x25\x08\x19\x57\x21\x18\xc8\x34\x90\x69\x20\xf3\x98\x21\xb3\xfc\x78\xac\x0e\x33\xcd\xe3\x31\x83\x99\x77\xc2\xcc\xf4\x9e\xf2\x80\x90\xf9\x2a\x12\xe2\x48\x10\x33\x91\xc6\x00\xa6\x01\xcc\x43\xca\x69\x00\x73\xfb\x5d\x42\x6b\x01\xd3\x6c\xc3\x61\x00\xf3\x4e\x80\x89\xa5\xe4\x64\x14\x4a\xb8\x3f\xac\xdc\xe0\x83\xcf\xab\x71\xf4\x22\x91\xed\x48\x90\x34\x95\xc7\x60\xa9\xc1\xd2\x43\xca\xb9\x3f\x2c\xad\x79\x0b\xe4\x6a\xe9\x97\x28\x79\x21\x64\xf7\x6f\x81\x9c\x9d\x55\xa3\x5f\xb7\xb7\x0a\x15\xf6\xf3\x16\x88\xcd\x3c\x0f\x07\x42\x2f\xf2\x7c\xa8\xae\x9d\x7f\x67\xe3\xf9\xd7\xa0\xff\x59\x9a\x62\x0e\x30\x05\xaf\xa0\x00\x0e\x01\x44\xde\x1b\x17\x44\x55\x68\x21\x29\xd8\x4a\xac\x69\x95\xa6\xce\xd9\xb7\x7f\xda\xfb\x2f\x67\xe5\x1d\x6b\xa3\xea\x5d\xf3\x5d\x1b\xc3\xb6\x2a\xd9\x56\xfe\x53\x2c\xdb\xbe\x09\xd3\x1c\x58\x71\x3e\x23\xf9\xb0\x0a\x6a\xfc\xd4\x3b\x89\xfe\xc8\xf5\x34\x4e\x1f\x9e\x0c\x06\x83\xc1\x69\xfe\xe0\x0e\x5f\xe9\xdb\xbc\xca\x32\x16\x44\x7f\x52\x4e\xd7\x33\x3c\x45\xf3\x39\x42\xfa\xf0\x78\x76\x79\xcf\xbf\x4c\x83\x7e\x9b\xa1\x38\x2f\x62\x98\x9b\x61\x6e\xa6\xf2\xf2\xb8\x81\xb9\xf4\xe0\xa0\x16\x99\x4d\x1e\xc4\x20\xf3\x1a\xc8\x7c\xeb\x9e\xa2\xf7\xfd\xea\x43\x0c\x92\xcd\x08\x16\xa3\x37\x20\x9a\x28\x85\xf1\xa1\x0e\x4f\x47\x0b\xf3\x41\xbf\x1d\x7d\x0f\x2d\x27\x6e\x01\xf2\x37\x41\xfc\x9a\x70\xbd\x81\xb5\x76\xfa\xa6\xca\xdf\xdd\x5c\x4f\xee\xc1\x5c\x97\xf7\x6b\x2e\x63\xaf\x55\xf6\x7a\xb2\xbd\xbd\x5e\x1c\x88\x50\x27\xaf\x2f\x19\x4e\x7d\x7f\x9c\xda\xf0\xe9\x23\xc8\x84\x3e\x88\x87\x55\x4b\x4c\xad\x1e\x35\xeb\x7e\x64\x1a\x4b\xd8\x13\xf0\xf1\x67\xe0\x82\x30\x35\x74\xe7\x3c\x6a\x96\xb3\x68\x75\x38\x98\x47\x1f\xe8\xb4\x24\x76\xd3\x35\x67\x49\xf0\x03\x0f\x4b\x42\xdd\xa5\x88\x96\x47\x84\xcc\x78\x45\x4e\x70\xef\xb3\xf2\xa7\xb2\xf3\xa5\x9c\x75\x9e\x31\xd5\xed\xac\x3c\xfd\xd8\x4a\x76\x95\x11\x6a\x7b\xa1\x03\x17\x9a\xb0\x17\x1c\x7a\xf9\x05\xaf\x62\x66\x50\x19\x2a\xf4\x24\x29\xff\x24\x5e\x2f\xa5\x74\x23\x42\x16\x0b\xa2\x4a\xfb\x6c\x10\x42\xc8\xfa\x1a\x02\x9f\xa5\x48\x12\x2d\xa2\xaa\x3d\x40\x32\xb6\xe8\xe6\x5a\x5d\x98\x5a\xf9\xcf\x8c\x55\xbd\x18\x29\xb1\xab\x15\x2a\xfe\x9d\x5c\xd0\xca\xf7\x96\x24\x53\x6d\xd5\x27\xc7\xf1\x26\x12\x3d\xd3\x11\x0a\xf8\x18\x0d\x94\xe3\xf6\xfa\x7f\x15\x13\x16\x91\x23\x10\xad\xa3\xd8\x05\xc6\x51\x08\xb6\x28\xfb\xd6\xea\xfb\xf1\x68\x96\x64\x71\x9b\x95\xfb\x59\x40\xec\x6b\xcd\xb9\xe3\x1f\xc7\x2a\x19\x26\xa0\x93\x0d\x31\x89\xc3\xea\xe3\x4e\x3b\xf3\x47\x2f\xfb\x47\xc7\x4f\x8f\xfb\x99\xe3\x4e\xf6\x8f\x5e\x3b\xdb\x93\x89\xb1\xdd\xcc\x71\xc7\x89\x42\xf3\x97\x64\x0e\x0a\x22\x33\x56\xbf\xf5\x2a\xd9\x81\xcf\xb3\x03\x67\xaf\xd2\x3d\xcb\xfe\xe1\xa4\xc7\x8f\x9c\xac\xbc\x89\x2c\x39\xf5\xfd\x87\xd1\x34\xf1\x9f\x29\x2c\x15\x92\x30\x14\x6d\x3f\x77\x89\xc5\x64\xc4\x30\x8f\x06\xb3\x6e\x96\xcb\xfc\xec\xc1\xe2\xc1\xff\x02\x00\x00\xff\xff\x99\x09\xdd\xd8\x58\xa8\x00\x00"), - }, - "/charts/istio-telemetry/grafana/dashboards/pilot-dashboard.json": &vfsgen۰CompressedFileInfo{ - name: "pilot-dashboard.json", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 41204, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\x6d\x4f\xe3\xba\xf2\x7f\xbf\x9f\xc2\xff\xe8\xaf\xab\x82\x28\xa2\x85\xb2\x1c\xa4\xf3\x82\xc3\xc3\x1e\x24\xf6\x2e\x82\xdd\xbd\x57\x67\x41\x91\x9b\x4c\x5b\x1f\x52\x3b\xb2\x9d\x42\x4f\xb7\xfb\xd9\xaf\xec\xa4\x4d\x9a\x87\x3e\x40\xe8\x03\xf8\xcd\x6e\xe2\xb8\xc9\xcc\x78\x3c\xbf\x9f\xc7\x93\x30\xf8\x80\x90\x85\x29\x65\x12\x4b\xc2\xa8\xb0\x8e\x91\x6a\x42\xc8\xf2\x88\x90\xd6\x31\xfa\xa1\xcf\x50\xd4\xaa\xaf\x34\x03\xe2\xc9\x4b\x6a\x1d\xa3\xda\x4e\xdc\xea\x62\x89\x05\x0b\xb8\x03\xd6\x31\xb2\xaa\x55\xf4\x89\xe3\x16\xa6\x18\x55\xab\x56\xa2\x1b\x50\xdc\xf4\x54\x17\xc9\x03\x48\xb4\x77\x88\x9b\xd3\x4a\x1c\x46\x4f\x99\xc7\xb8\xba\x27\x6f\x37\x71\x65\x6f\x07\xd5\x6b\xb5\x1d\x54\x6f\x34\x76\x50\x6d\x2b\x79\x6b\x8a\xbb\xfa\xd9\x27\xb1\x3a\xe8\x5f\xe8\xc4\x03\x2e\x45\xb2\x9f\xec\xfb\xba\x9f\x8b\x45\xa7\xc9\x30\x77\xad\xe8\xda\x50\xff\x7f\xff\x01\xa1\xa1\xea\x6e\x81\x4b\x64\x24\x6d\x0b\x7b\x42\x0b\x66\xb5\x29\xc8\x4b\xd7\x3a\x46\x34\xf0\xbc\xb0\x85\x63\xbf\xf3\x95\x31\x4f\x12\x7f\x64\x14\x8b\xa8\x2e\x87\xfa\xd0\x23\xf4\x41\x19\xf6\xc7\xbd\x3e\xf5\x31\x05\x4f\x8c\x4d\x3b\x32\xac\xe5\x30\xcf\xc3\xbe\x00\x37\xf9\x38\x7d\xa5\xcd\x89\x7b\xcd\xe2\xb1\x09\x0d\x96\xb2\xff\xa3\x75\x8c\xea\x07\x89\x86\x27\xeb\x18\xed\x25\xce\xfb\xea\x7c\xa4\xe9\xf8\xde\xa1\x9c\xe3\x7e\x09\xe9\xee\xc7\x6d\x92\x48\x6d\x04\xeb\x0c\x7c\x8f\xf5\xc1\x45\xdf\x81\x0b\xed\x2e\x71\x9f\xc8\xa8\x9c\x3d\x86\xe6\x8c\x1e\x31\x56\x0f\x7b\x04\x0b\x3d\x96\x5a\x91\x58\x82\x26\xd6\x2d\x93\x2a\xab\xb1\xb9\x02\xda\x96\x5a\xcd\xbd\x89\x76\xc8\xeb\x9e\x74\xbe\x6b\xce\xba\x20\x3b\x10\x24\xe4\x6b\x11\xcf\x4b\x5a\xac\xd8\xa8\x8d\x45\x8d\x5a\xcb\x37\x6a\xe3\x70\x7c\xee\x41\x1b\xa8\x3b\xf9\x28\xdc\x6b\xa7\xd5\x50\x4e\x10\x70\x0e\x54\xe6\x5c\xe9\xe2\xa7\xbc\x56\x42\x73\x5a\x45\x87\x3d\x66\x27\x93\x64\x12\x7b\x39\xbd\x7b\xd8\x0b\x62\x9b\x66\x94\xf1\x08\xd5\x57\x93\x77\xd3\x8d\x8f\xc4\x95\x13\x5e\x98\xf2\x74\xdd\xa4\x66\xc9\x35\x23\x54\x7e\x66\x7a\x82\xeb\x86\x78\x58\x7c\xe0\x0e\x50\x89\xdb\x90\x19\x53\x5f\xfd\x8a\x63\x97\x04\x22\x39\x2a\x61\x7b\xd6\x05\x38\x50\x17\x38\xe8\x48\xd1\xf2\x98\x8c\x9f\x21\x80\x13\x10\x5f\x7a\xc0\x39\x71\x21\x25\x9f\xf0\xb1\x03\x79\x9e\x26\x24\x76\x1e\x32\x4f\x11\x12\x7c\x1f\xdc\x2b\x42\xb3\x02\x4b\xcc\xdb\x20\x45\x22\x68\x26\xc3\xa6\x8a\x27\x4f\xbe\x16\x4f\x04\xdd\x0a\x11\x92\x30\x5b\x85\x52\x77\xe0\xb0\xae\xcf\x28\x50\xf9\xfb\x9d\xe5\x13\x8f\xc9\x3b\x6b\xb8\x85\x9a\x7d\x54\x91\xb8\x9d\x0c\x71\xca\x8f\x19\xef\x62\xe5\x1f\x96\x24\x5d\xb0\x43\xdd\x26\xbb\x10\x2a\x81\xf7\xb0\x77\x81\x1d\xa9\x23\x67\x6d\xe2\x72\xe8\x8c\x17\xe3\xfb\x0c\x06\x48\xe2\x36\x1a\x0e\x27\xef\xc2\xa1\xa5\xc3\x9c\x75\x62\x8d\x9b\x87\xd1\x51\x22\x34\x74\x38\x88\x0e\xf3\xdc\x4c\xc8\xe8\xc2\x05\x67\xdd\x44\x9c\x1c\xb7\xdf\x40\x3b\x82\x9a\xd4\x0f\x6e\x3b\xa4\x25\xb3\xbf\x88\x82\xcf\xb5\xb2\x4c\x5e\xe4\x19\x47\xde\x41\x72\x06\x60\xae\x23\x69\x6a\x0e\x08\xc6\x65\x6a\x0a\x6b\xf7\xb7\x47\xf1\x8b\x50\x97\xf4\x88\x1b\x60\xcf\xca\xcc\x84\x51\x1f\x1d\xf0\x63\x01\x9e\xf0\x13\x49\xc5\x91\x66\xe0\x3c\x84\xae\x90\xd4\x45\xcd\xd7\x68\x16\x28\x75\x73\xb0\x2b\xd5\x3b\x7f\x1e\x8f\xe7\xeb\x8f\xfb\x8c\x88\x7d\xfc\x04\x53\x3c\x30\xf6\x1e\xd1\x51\x96\x98\x74\x0c\xdc\x04\x2f\x23\x84\xba\xc0\xda\x7f\x60\x01\x19\x4f\x0a\x43\x52\xa6\x7b\x18\x93\x32\xcd\x09\x65\x62\x87\xda\x59\x5b\x39\x93\xc1\x30\xcf\xf3\xfb\xd9\x51\xc7\x1e\x69\xe7\x85\x63\xdd\x7e\x05\xbd\xb1\xd4\x13\x7c\x23\x0d\x94\xcb\xe0\x01\x87\x05\x3c\xa0\x3e\x1f\x0f\xb8\x81\x10\x6c\xd1\x37\xa1\x22\xf7\x1b\x24\x01\x1f\x53\x16\x3d\x9c\x61\xd0\x8f\x05\x1c\xc0\x50\x00\x43\x01\xf2\x28\x80\xcf\x99\x03\x42\xd8\x3d\xc2\x65\x80\x3d\xbb\x0b\x5d\xc6\xfb\x76\xb3\x2f\x41\x0c\xfe\x66\xcd\x04\x13\x78\x06\xfe\x0b\x89\xf3\x1c\x28\x8f\x1b\xd4\xa7\x72\x83\xef\xa1\x78\xe8\xb3\x16\xaf\x80\x20\x5c\x4e\xb6\x2b\xfb\xa8\x1b\xcf\x0c\xf2\x69\x5b\x70\x10\xc4\x05\x2a\x4b\x36\xc6\x42\x0a\xdf\x44\x32\x4c\xd7\xf8\xcf\x17\x6a\xdc\x66\x4a\x47\x21\xb1\x14\x76\x07\xb0\x6f\x8b\xbe\x28\x47\xdd\xdc\x65\xf4\xe2\x66\x50\x42\x21\xd1\x17\x73\x50\xc2\x45\x55\xc5\x9e\xc7\x9c\xf5\x53\x56\x8b\x55\xa0\xee\xd9\xf3\xd4\x2d\x51\xd3\x05\x35\x3a\x99\xa2\xcc\x45\xd9\xbe\x4b\x68\x20\xa0\xd4\x01\x7d\x71\xd8\xfa\x53\x8d\x28\xa1\xd5\x40\x40\x81\x15\xce\x4b\xb4\x82\x86\x89\x32\xcd\xb0\xa0\xb6\xb7\xea\xf9\xd3\xd5\xfd\xf4\x42\x75\xd5\x8a\xd5\x61\x54\x62\x42\x81\x8f\xe2\x73\xa0\xc8\x5f\xa4\x71\x7c\x51\xad\x64\x7e\xff\x75\x67\xb9\x44\x38\xac\x07\xbc\xff\x53\x2f\x75\xab\x3e\x67\x4f\xfd\x3b\x6b\x07\xf9\xcc\x1d\x77\x8a\x2e\x29\x43\x55\x77\xb7\xd5\xb2\x77\x65\x3e\xf3\x55\x51\x23\x54\x79\x38\x12\x5b\x05\x46\x3c\x7d\xa1\x11\x97\x62\xc0\x95\xd9\x6f\x30\x40\x93\x3a\xa0\xe1\x70\xaa\x39\xff\x98\x65\xce\xe8\x68\x25\xc9\x86\x14\xfc\x9b\x24\xc3\xb3\x92\x0c\xda\xb5\x4d\x92\x61\x0d\x93\x0c\x6f\x66\x21\x7e\x38\xdf\x42\xdc\xe4\xe2\xcd\x42\xbc\x90\xd9\x70\x2c\x21\x41\x6f\x1c\x3f\x88\xa0\x59\x80\xc3\xa8\x2b\x6c\x3d\x5a\x11\xab\x7b\x08\x9a\xc0\x29\x48\x10\x55\x07\xbb\x3d\x22\x18\xbf\xb3\x76\xca\x82\xef\x1f\xb5\xee\xfd\xd6\x3a\x93\xa0\x93\x12\x98\xe4\xda\xd9\x5b\xef\xb5\x4c\xde\x72\x75\x63\x50\x3e\x91\x9a\x31\x24\x44\x8f\xc7\x28\x0b\xa3\x46\x23\x6f\x1c\x46\xab\x19\x6d\xb1\x95\x19\x47\x4b\x81\x2a\x02\xbc\x56\x95\x83\xcf\xb8\x04\xf7\xd9\x7c\x7d\x95\x04\xf3\xf4\xfa\x9b\x61\x97\x66\x0b\x6b\x89\x72\x1a\x72\xb9\x30\xb9\xac\xd5\xe7\x63\x97\x1f\x0d\xbb\x34\xec\x32\x0f\x5a\x47\xa0\xca\x7c\xa0\x76\xcb\x7d\xc5\x8c\xf7\xec\x2d\x1f\x75\xe3\x17\xe5\x19\xbf\xf8\x40\xd1\xc5\x99\x40\x15\x2d\x7f\x31\x43\x9c\x9b\x79\xc4\x3c\xa7\x25\xd6\x23\x1b\x56\x02\x57\xdb\xc4\x74\xd7\x19\x11\x0f\x86\x8e\xbc\x5a\xb2\x2b\x35\xef\x96\x4f\x46\x5c\x70\x48\x17\x7b\x59\xf3\x4d\x68\x40\x19\x85\x45\x15\xd8\x4b\xd6\x9a\x98\x34\xd8\xca\x98\xca\xd1\x7c\x4c\xe5\x60\xd5\x4c\x25\xdd\x6c\xa8\xca\x9a\x50\x95\x36\xb3\xdb\x8c\xb3\x40\x2a\xcb\x46\x3c\x25\x81\xa7\x4b\x00\xd3\x7f\x07\xdd\x26\x70\xc4\x5a\xe8\xd3\x58\x90\xe7\x66\xa1\x56\x09\xa6\x39\xd2\x1b\x48\x2d\x7b\x85\xbf\x72\x48\x7d\xc7\xeb\xfb\x65\x54\xa8\xd6\x0e\xf2\x01\xac\x71\x14\xc7\xdc\x69\x25\xaa\x61\xb5\xf8\x75\x20\x3a\xe8\x92\x86\x63\x45\x18\x2d\xb1\x54\x75\x02\x79\x16\x65\x06\x20\x1c\x4e\x7c\x2d\xd1\x31\xb2\x6e\x3b\xec\x51\xa0\x30\xb5\xe9\x07\xfa\x17\xcf\xa0\x08\x47\x29\x13\x4f\x24\x2f\x72\x4d\xdc\xc8\x37\xf1\x61\xbd\xbe\x6a\x96\x50\x6e\x3e\x63\xd2\xf8\x2f\x63\x09\x08\x0b\xf4\x0f\x70\x96\x60\x0b\x05\x58\xbd\xfe\x2c\x62\xc2\x85\xcb\xdd\x4d\xd3\xce\x6c\x3f\xb9\xc2\x0e\x1d\x7a\xa0\xe6\xdb\xff\xfd\xba\xb3\x76\xb7\x6d\xa1\xd5\xe1\x93\xbb\x2f\xea\xfa\x73\x5e\x75\x29\x25\xef\x31\xfb\x05\x99\xbe\xbf\xa9\x4b\xfb\x38\x10\xce\xcf\x47\x32\xb3\xf2\x4d\x11\x92\xe4\x58\x85\x91\x65\xdc\xf2\x02\xae\xc2\xfc\x57\xad\x74\xb1\xf6\xac\x4d\xa6\x2a\xef\x75\x85\x9f\x42\xfa\x53\xec\xcb\x80\x83\x40\x18\xf5\x30\x27\x20\xfb\x6a\xb9\x13\x22\x3f\x70\xae\x84\x7c\x0d\xe4\xcf\xec\x63\x14\x42\xbf\xd9\xc9\x30\xe9\x81\x5c\x64\xd7\x61\xc2\xe6\xe0\x7b\xd8\x81\x8a\xc2\xf9\x18\xe2\x1d\x57\xd8\x1c\xfe\x06\x47\xa6\xf6\x37\x42\x68\xa7\xcc\x85\x1d\xe5\xde\x5b\x3b\xe8\xce\x52\x67\x77\x96\x3a\xfa\xff\x5a\xf8\x7f\xdc\xb2\xbb\xfd\x6b\x77\xfb\x57\x65\x77\x7b\xeb\xd7\xee\xf6\x9d\xf5\x9a\x65\x06\xd3\x21\xff\x46\x6b\x03\x2e\x3a\x3d\xbb\x45\xa7\x8c\xb6\x48\x5b\xa0\x2a\x1a\x0c\x90\x12\x16\x0d\x87\xc7\xea\x18\x38\x2f\x26\x05\xa7\xf3\x6f\x83\xc4\x96\x84\x22\x4b\xae\xde\x12\xe7\xb1\x25\x5e\xfe\x9a\x44\x8a\x23\x3e\x72\x22\xc1\x56\xba\xb0\x20\xad\xf9\xf3\xea\x4d\x16\xd4\xf2\x3f\x4a\x00\xf4\x35\x14\xa0\x48\xbf\x8b\x67\xeb\xa7\x38\xf0\x2a\xd5\xd3\xcb\xe0\x19\xda\x7d\x9a\x5f\xbb\x02\x96\x6f\x87\x08\x96\xa7\xe0\xea\x66\xb2\x56\xfd\x5c\x0b\x86\x2a\x31\x93\x2f\xda\xbc\xbc\x5c\xab\x97\xdd\xcf\x53\x94\xc0\x64\x11\x4d\x9d\xd0\xab\xcb\xb9\x3c\x6e\xbe\x8c\x3c\x62\x7d\xbf\x80\xe9\xc6\x3b\x61\x53\xf3\x88\x4f\x67\xb7\x25\x26\x0d\xd7\x66\x3f\xf1\x30\x65\xc7\xa3\x59\x66\x2c\x48\xc7\x1e\xec\x99\x05\x83\x59\x30\x14\x91\x84\xb0\xb2\x18\x68\x8f\xf5\x6d\xc7\x0b\x84\x04\x6e\x07\xbe\x8b\x25\xd8\x22\x70\x1c\x10\x62\x30\x6a\xd6\x25\x3c\x77\xd6\x93\x2b\xaa\x6d\xee\x3b\xab\x27\x0e\xff\x3d\xbb\x45\x9f\x6e\xae\x4f\xd1\x6d\x28\x69\xe1\x5e\xe4\xe9\x9a\x50\x86\x6f\xda\xb0\x86\x2d\xbc\x90\x2d\xbc\x72\x1e\xaf\x24\xae\xb0\x22\x29\xdf\x6b\x1a\xaf\x3c\x60\x4d\xd7\xe9\x14\x02\xeb\x1b\xdb\x83\x33\xc0\x5a\x16\xb0\x72\x16\x50\xb7\x32\x5e\x83\xe7\xa2\x2b\x96\x12\xba\xbe\x9c\x89\xae\xa8\x8a\xa6\xdf\x68\x5e\x98\x2e\x21\x85\x31\xbd\x38\x68\x0c\xc7\x9b\x58\x11\x74\x81\x89\x17\x70\x83\xcd\xef\x03\x9b\xcd\x26\xdb\xc6\xa2\x73\x2d\xfd\x3a\x79\x21\x3c\xd7\x0c\x3c\x1b\x78\xce\x83\x67\x85\xa7\x69\x28\x15\x92\x03\xee\xda\xce\x93\x8d\x1d\x49\x7a\x30\x05\x4e\x5f\x1d\x48\xc3\xcc\x72\x65\x84\xa7\x1b\xf9\xf2\xec\x89\xb6\x22\x3a\x65\x94\x82\x23\xcd\xe7\x60\x4d\x8e\xfc\xcd\xe6\xc8\x37\x06\x5a\xd3\x45\x28\xb3\x32\xca\xfb\x05\xdf\xa2\x3f\x30\xdf\x4c\x35\xc8\x3a\xa5\x4c\xc2\x61\xb4\xe5\x11\x47\xda\x84\x36\xd5\x4a\xd8\xf6\x88\x90\x40\x81\x97\xfe\xd5\xbd\xe9\xf9\xe1\xcb\xf0\xf1\xe8\x2a\x7a\x7c\x51\x7a\xf8\x8f\x45\xeb\x40\xc6\x0a\xb2\x40\x4e\x6a\x68\x77\xa4\xf4\x6d\xd6\x03\x6e\x47\x0e\x6f\x4b\xc7\x5f\xb2\xde\x5f\x22\xa9\x62\xc5\x51\x45\xc9\x85\x94\x5c\x28\x92\x0b\x49\xc7\x2f\xe1\xfd\xe0\x99\x06\x91\xce\x5a\xda\x43\x3a\xf3\x9b\x63\xe1\x3a\xa1\x45\xcc\xa1\x06\x66\x1d\xed\xa1\xe4\x2a\x32\xc8\xd9\x9a\xec\xa7\x9c\x46\x76\x36\xdc\xd2\x70\x4b\xc3\x2d\xd7\x9a\x5b\xa6\x37\x55\x0a\xb9\xa5\x29\x6f\x36\xdc\x72\x0a\xb4\xf6\x08\x97\x0a\x03\x7b\xc4\x79\x85\xaf\x38\x4f\xc7\xcd\xd1\xa7\xf6\x6f\xa3\xc7\x97\xc5\x9e\x56\xa4\xce\x0c\x35\x16\x60\xc5\x1b\x55\x79\x3e\xfb\x5b\xf4\xef\xa4\xf0\xbc\x34\x43\x94\x5a\x77\x3e\x56\x78\xc9\xb3\x21\xca\x54\x2a\x75\xa8\x1b\x45\xcb\x7c\x65\xce\x4d\x11\xfd\xfb\x28\xa2\xcf\x7f\x4d\x76\x45\x7a\xc1\x5c\xc5\xf1\x7f\xbe\x6c\xec\x8a\x5f\x0f\x58\xca\xd0\x6d\xde\x4b\x00\x27\x67\xb7\xe8\x33\xa3\x44\x32\x4e\x68\xdb\x2c\x43\xcd\x32\xd4\x2c\x43\xd7\x79\x19\x9a\xa9\x1e\x28\x5c\x87\xfe\x66\xd6\xa1\x66\x1d\x9a\x87\x9b\x9b\xb1\xd8\x59\xfc\x03\x1a\xd1\xea\x05\x69\xf8\x0d\x97\x2f\xf3\xec\x0f\xac\x12\x7d\xf3\x96\x62\x06\x83\x0d\x06\x1b\x0c\x5e\xa7\x0f\x61\xce\x2c\x33\x38\xca\x87\xe0\x86\xa9\xaf\x37\x10\xbc\x30\x04\x17\xa6\xc9\x36\x08\x82\x2b\x83\x01\x70\xbe\x41\xf8\x9b\x97\x01\x34\xf8\x6b\xf0\xf7\xf5\xe5\x34\xf8\xbb\x30\xfe\x66\xb6\x62\x8b\xf0\x77\xe5\x5f\xa2\x36\xf8\x8b\x36\x0e\x7f\x3d\x83\xbf\xcb\xc7\xdf\x2b\x83\xbf\x06\x7f\x0d\xfe\x6e\x06\xfe\x66\x73\xd0\x45\x00\xbc\x6f\x00\xd8\x00\xf0\xa2\x00\xcc\x0d\x00\x2f\x1f\x80\x6f\x0c\x00\x1b\x00\x7e\x5f\x00\x1c\xdf\x66\xf4\x96\xc3\xcf\xa3\xbd\x9f\x3f\x5d\x68\xe1\xc0\x93\xd5\x8e\x94\x7e\xb5\x89\x9d\x07\xa0\xee\xee\x43\xd0\x84\xaa\xe8\x0b\x09\xdd\x5d\xd1\x73\x76\xa3\x97\x6b\x77\x3d\xe6\x84\x5f\x7f\xe7\xed\x26\xae\xd4\x1b\x8d\x1d\x14\xff\xb3\xb7\xfb\xdb\xc7\xad\xac\xaf\x6f\x1a\xdc\xa7\xd3\xdd\x07\x05\x1f\x76\x6e\x98\xf7\xd5\xd7\x16\xed\xf3\x63\x81\x9e\x10\xea\xf7\x2f\x9d\x00\x13\xb3\x7c\x34\x7f\x6b\x53\xe6\xf8\xaa\xde\x9a\x9f\x4c\xb3\x87\x7f\xda\x21\x5b\xb8\x1c\xfd\xb1\xee\x50\xc5\x65\xd0\x86\xe8\x51\xc5\x05\xb7\xeb\xc2\x17\xce\xcf\x6e\xd1\xe5\xc8\x6a\x86\x28\x18\xa2\xf0\x36\x88\xc2\x87\xe8\xb6\x6a\xc2\xa9\xb9\xa4\xb4\x6e\x84\xfe\x6d\x09\xa7\x03\x5d\xfc\x1d\xb8\x08\xff\xc0\x42\xf8\x67\x10\x2d\x21\xfb\xe1\x94\x70\x31\x0f\xff\xae\xa9\x25\x71\x3b\x9e\x50\x96\x84\xae\xef\x61\x49\x68\x7b\x2c\xa2\xe5\x11\x21\x47\x4e\x33\x0c\x7b\x11\xed\x74\xd1\xf5\x56\x38\x5b\x2d\xca\x1e\xab\x8d\x6e\x64\x72\x4b\xb2\xa8\xcd\x9a\xf8\x99\x4f\x9c\x07\x1d\xfe\xa3\x1f\x47\xb2\xdb\xa3\xf0\x93\xf4\xc1\x91\x36\xfa\xb8\xb6\x97\x38\xd9\x4f\x9e\xd4\xba\xf1\x71\x23\x71\x5c\x4b\x9e\xec\xef\x25\xaf\x24\x26\x61\x3d\x71\x5c\x73\xc3\xb9\x7b\x3f\xd2\x41\x05\x4b\xe6\xcb\x51\xd0\x99\xf9\x94\xe4\x8d\x0f\x93\x37\x4e\x3e\xa5\x7e\x90\x3c\x71\xe3\xe3\x8f\x6e\x52\xde\x91\x2c\x13\xe6\xfb\x87\x69\x30\xb1\x9a\x9c\x3d\x0a\xe0\xd1\x10\x8e\x02\xdd\xa5\x90\x84\xa1\xf0\x43\x26\x67\x58\x74\x9a\x0c\xf3\xf0\x9e\x56\xa0\xd9\x8e\xb5\x5f\xad\x7e\xbe\xfa\xfe\xd7\x5f\xd1\xe0\xf7\x62\x07\xf9\x30\xfc\xf0\xbf\x00\x00\x00\xff\xff\x4c\x75\xfe\x57\xf4\xa0\x00\x00"), - }, - "/charts/istio-telemetry/grafana/fix_datasources.sh": &vfsgen۰CompressedFileInfo{ - name: "fix_datasources.sh", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 384, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x8d\xc1\x6a\x02\x31\x14\x45\xf7\xf9\x8a\xdb\x18\x1c\x2d\xd8\xd8\x2e\xba\x91\x59\xb4\x2a\xe8\xa2\x28\xc6\x01\x41\x44\x12\xf3\x6c\xd2\x8e\x49\x99\x28\x2e\x86\xf9\xf7\x32\x42\xbb\x6f\xdf\xe6\x6d\xce\xb9\xa7\x73\x27\x8d\x0f\xd2\xe8\xe4\x18\x4b\x74\xc6\x80\x18\x5b\xcf\xe6\x6a\x3f\x99\xaf\x72\x2e\x7a\x38\x58\xb4\xcf\xfa\x2a\xe8\x13\x81\x8b\xfa\xf5\x45\xcd\xf6\x6a\x51\xac\xc6\xd3\xed\x70\xd7\x70\xf4\x39\xba\x5d\x7c\x5d\x2d\xfa\x9c\x15\x9b\x5c\xf4\x2e\x2d\xdb\x67\xec\x18\x2b\x58\x03\x1f\x5a\xef\x67\xb6\xe1\xd2\xea\xe4\x4c\xd4\x95\x4d\xf2\xfe\xe1\x23\xc5\x30\x82\x8d\x0c\x00\xfc\x11\xdb\x2d\x44\x5d\x6c\x1a\xe4\x39\xf8\x44\x57\x57\x1f\x38\x76\xbb\x11\xce\x8e\xc2\x0d\x6a\xaf\x83\xe4\xa8\x2c\x0f\x8e\x0e\x9f\xb0\x3e\x69\x53\x52\xae\xc6\x4f\xc3\xc7\xe7\x5f\x26\x91\xc5\xc0\x23\xcb\x90\x25\x29\xea\x89\xda\x2f\x57\x8b\xb7\xe9\x7a\x36\x2d\x54\x23\x97\x55\x3c\xd1\xd9\xd1\x25\xc9\xf7\x0c\x5c\x58\xc3\x6f\x26\x95\x89\xfe\x95\xf9\x43\xe3\xe8\x99\x8d\x81\xd8\x77\x00\x00\x00\xff\xff\x3f\xcb\x16\x26\x80\x01\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - }, - "/charts/istio-telemetry/grafana/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 3025, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\x9b\x30\x10\xbd\xe7\x57\x8c\xa2\x1c\xda\x55\x80\xf4\x8a\xd4\x43\xa4\xee\x61\xd5\xaa\xaa\xba\x55\xef\x0e\x0c\xc4\x8a\x63\x53\x63\xd2\x44\x34\xff\xbd\xb2\x21\xc4\x10\xf3\x91\xdd\xd5\xde\xd0\xf0\x3c\x6f\xfc\xe6\xcd\xb8\x2c\x83\x07\x20\x49\x42\x39\x55\x27\xf0\x60\xab\x54\x96\x87\x41\xb0\x2b\x36\x28\x39\x2a\xcc\x7d\x2a\x82\x58\x44\x79\x10\x09\x1e\x61\xa6\xcc\x47\x42\xd3\x42\x12\x45\x05\x0f\x48\x9e\xd3\x94\x7b\x99\x88\x3d\x2e\x62\x0c\xe0\x21\x38\x9f\x67\xb3\xb2\xf4\x20\xc6\x84\x72\x84\xb9\x8e\x5f\x38\xe6\x70\x3e\xcf\x00\x74\x68\x5d\x87\xc2\x19\x00\x80\xc4\x3f\x05\x95\x18\x7f\x29\x24\xe5\xe9\x73\xb4\xc5\xb8\x60\x94\xa7\x4f\x29\x17\x4d\xf8\xf1\x88\x51\xa1\x69\xab\x33\x9a\x84\xf2\x88\x15\x71\xcd\x72\x49\xf9\xb3\x27\xd9\x1c\xfc\x8a\x1f\x20\x93\x98\xa0\x7c\x2b\xc2\x1f\x7d\xd9\x6a\x46\x7d\x10\x79\x0c\x2e\x69\xc6\x8b\xae\x4b\xae\x64\x7b\x46\x86\x91\x12\xf2\x17\xca\x7d\x1e\xd6\x3f\x3c\xd8\x13\x15\x6d\x1f\x8f\x99\xc4\x3c\xa7\x82\x37\x7f\xf4\xbf\x1d\x9e\x42\xd8\xa0\x22\x7e\xbb\xaf\x44\x46\xdb\x06\x06\x20\x32\x94\x44\x09\x19\xc2\x13\xb7\xc2\x07\xc2\x0a\xb4\xf2\xe9\xfa\x25\xe1\x29\xc2\x62\x87\xa7\x25\x2c\x0e\x84\x41\xf8\x19\xfc\xdf\x06\xe8\xa7\x4c\x6c\x08\xf3\x75\xf2\x6b\xe5\x8d\x7a\x09\xa4\x0a\x3e\x98\x33\xff\x80\x72\xf5\x11\x56\x6d\x94\x07\x65\x69\x32\xdf\x1e\xae\x15\x1c\x09\x2d\x6c\x95\x74\x61\x31\x26\xa4\x60\xaa\x5b\x60\x1d\xfe\x6e\xa3\x1b\x88\x24\x09\xe1\xc4\x6f\xa5\xf2\x3a\x44\x2e\x11\xda\xe4\xd6\x81\xba\x0b\xce\xbb\x4d\x14\xfe\xa2\x8d\xa6\x72\xcb\x30\xc5\x66\x03\x56\x35\x49\x5f\xd0\xde\xb1\xc6\x7a\xf0\x17\x69\xba\x55\x61\x53\xbe\x41\x5c\x2f\x51\x0d\x23\xf2\x08\xaf\xb7\x7d\x3f\x43\x3b\x3c\xd7\xb2\xd6\x04\x81\x33\x11\xaf\xb9\xa2\x6b\x7b\xcb\xd5\xaa\x38\x5c\xd5\x41\x7f\x23\x1b\x64\xbd\x16\xec\x80\xf5\xd8\xb7\x0e\x98\x12\x3b\xa0\xd0\x6e\xcb\x5d\xec\xf5\xfd\x5f\xbd\x8d\x3b\x24\x13\x16\x72\x67\x9a\xa7\x15\x7f\xa3\xc6\xdb\xad\xf7\x0e\xd3\xd8\x86\xef\x9f\xc4\x89\x9e\x19\x5d\xff\xd6\x60\x52\x1e\xe3\x71\x09\x0b\xaa\x70\xdf\x9a\xcd\x3b\x5a\xec\x01\xb3\xc3\x77\x0c\x9e\x9e\x15\xcd\xec\x0f\x2c\xb2\x06\x73\x09\x39\x9f\x82\x0a\x52\xcd\x63\x1b\x70\x3b\xa3\x66\xb5\x1f\x08\xcb\xf5\x85\xf3\x8c\x51\x05\xf3\xe5\x7c\x20\x85\xad\x97\x5e\x63\x66\x3d\x9b\x04\x8e\xf7\xe6\x30\xfa\xda\x38\x82\x4a\x64\x82\x89\xf4\xf4\xb5\xa5\x8a\x15\x1d\x36\xc6\x90\x1b\xc6\xb6\xf4\x6b\xec\xd0\x3b\x34\x9e\xd9\x23\x16\xea\xaa\x7f\x8f\x57\x86\xdc\x32\xc1\x2f\x77\x38\x66\x82\x67\x5c\xae\x79\x81\x6f\x26\x3b\xa7\xc7\x3b\x3d\xee\x71\x86\x27\x3b\x08\x9a\x27\xf4\xd3\x6a\x35\xe0\xa9\xff\x01\x00\x00\xff\xff\x06\xca\x1e\xf4\xd1\x0b\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates/configmap-dashboards.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap-dashboards.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 431, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x90\x41\x4f\x03\x21\x10\x85\xef\xfc\x8a\x49\xb3\x49\xab\x11\x8c\x57\x12\x4f\x26\xf6\xa4\x07\x4d\xbc\xcf\x76\x67\xb7\xe8\x2e\x10\x86\x9a\x1a\xc2\x7f\x37\xec\x16\xb7\x07\x6f\xf0\xe6\x7d\x6f\x1e\xa4\x24\xa1\xe9\xcd\x48\x0c\xfa\x11\xd4\xf3\x7c\xca\x59\x14\x3d\xa0\x1d\x08\x1a\x8f\xf1\x78\x07\x4d\xfb\x13\xaf\x4d\x6a\x3f\xba\x16\x36\x1d\xf2\xb1\x75\x18\x3a\xbe\xbf\x55\x9f\xec\xec\xa6\xd2\x73\xaa\xc5\x89\x0a\x13\x83\x99\xde\x4f\x7d\x6f\xce\xb0\xa3\x73\x5c\x42\x6f\x60\xd7\x22\x53\xbd\xe4\x2c\xd0\x9b\x0f\x0a\x6c\x9c\xd5\xf0\xfd\x20\xbe\x8c\xed\x34\x3c\x39\xdb\x9b\xe1\x05\xbd\x98\x28\x62\x87\x11\xb5\x00\x28\xc9\x1a\x0c\x47\xe3\xe4\x10\xb0\x47\x8b\xf2\x30\x3b\x4f\x01\xa3\x71\x56\xae\xd5\x64\x4a\x57\x75\x72\xbe\xe0\xec\xf1\x40\x1a\xca\x50\xbd\xd1\x48\xc8\xa4\x5e\xab\xbe\xd8\x46\x6c\x69\xe4\xb2\x0f\x00\xbd\xd7\x70\x59\x35\x0b\x61\x61\xfe\x49\x58\x60\x58\xea\xad\x50\xed\x9e\x12\xac\x0f\x87\x9c\x35\x6c\x6b\x43\x56\x7b\x8a\x7f\x83\xad\x90\x52\xce\xbf\x49\xb6\x2b\xa1\xbf\x01\x00\x00\xff\xff\x61\x31\xf8\x5d\xaf\x01\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates/configmap.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 1002, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x52\xb1\x6e\xdb\x30\x14\xdc\xf5\x15\x87\xc0\x63\xa5\x24\x40\x5b\x20\x04\x3a\x35\x4b\x86\x16\x41\x87\x00\x1d\x9f\xcd\x67\x9b\x0d\x45\x0a\x7c\x94\x11\x83\xce\xbf\x17\x94\xa8\x4a\x75\x9a\x34\x9e\xac\xc3\xdd\xbd\x77\xc7\x97\x12\x56\x9a\x22\x89\xef\xc3\x86\x05\xea\x0b\x8c\xd3\xfc\x84\xe6\x81\x6c\xcf\xd2\xec\x02\x6d\xc9\x51\xb3\x24\x5d\x2c\x3e\x9a\x23\xb5\xf6\x02\xcf\xcf\x15\x75\xe6\x81\x83\x18\xef\x14\x0e\xd7\xd5\xa3\x71\x5a\xe1\xab\x77\x5b\xb3\xfb\x46\x5d\xd5\x72\xa4\xac\x53\x15\xe0\xa8\x65\x05\x23\xd1\xf8\xba\x0c\x28\xa8\x74\xb4\x61\x85\x94\xd0\xfc\x60\xcb\x24\xdc\x7c\x9f\xe0\x3c\x04\xb0\xb4\x66\x2b\xd9\x05\xa0\xae\x53\x98\x0d\x80\x30\x6a\x5e\x1a\x8c\x5a\x8c\x33\x67\xcd\xb4\xd0\x79\x20\x85\x53\x5d\x26\xcc\xa1\xae\x07\x64\x41\x1d\x97\xa8\x4b\x9c\xfb\xe0\x5b\x8e\x7b\xee\x65\x80\x81\x78\xec\x58\xa1\x3b\x87\x7d\xd8\xdd\xe9\xec\x96\x52\x0d\xb3\x7d\xd1\xf4\x2c\x38\x4b\x9e\x7f\x7d\xb0\x0a\xfb\x18\x3b\x75\x79\x39\x13\x9b\x1c\xf7\x5d\x36\xea\xe6\xea\xe6\xaa\x4a\x09\x6c\xe5\xbf\xb6\x13\xb9\x06\x3b\x3d\x93\x69\xb3\x61\x91\x21\xd9\xd3\xb1\x60\x46\x6e\x79\x4b\xbd\x8d\x0a\x31\xf4\x5c\xd0\x5f\xe2\xdd\x6d\xa9\xb8\x74\x62\x5a\xbe\x73\x91\xc3\x81\xac\xc2\xa7\xa9\x13\xd6\x26\xd2\xda\x72\x51\x4f\xd5\x2c\x4f\xf3\xaf\x0b\x2c\xbb\xe4\x37\xca\xd4\x40\x6e\xc7\x58\x3d\xf2\xf1\x03\x56\x87\xdc\x43\x3e\xe4\xb7\xd4\x29\x21\xfa\x9f\xd4\xda\x89\x7f\x1a\xee\xde\x45\x7c\x1e\xcd\xa7\xd4\xf5\x40\xfe\xd3\x40\xf5\xda\xab\x69\x92\xfd\xda\x53\xd0\xf7\xc1\x1f\x8c\xe6\x20\xb3\xcf\xbf\xd7\x7b\xbf\xc3\x20\xcd\x8f\x87\xd3\x1b\x8b\x7f\x7c\x7d\xf1\xfc\xff\x77\x00\x00\x00\xff\xff\x70\xb0\xb0\x1b\xea\x03\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 3931, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x57\x4d\x8f\xdb\x36\x13\xbe\xef\xaf\x18\x08\x39\xe4\x7d\x51\xcb\x49\x5a\xb4\x80\x80\x1e\x14\x7b\xd7\x59\x64\xd7\x36\x6c\xef\x16\x7b\x32\x68\x69\x64\x33\xa1\x48\x81\xa4\xdc\x15\x9c\xfd\xef\x05\x45\x59\xa6\x64\xc9\xd9\x36\xbd\xd4\x27\x8a\x9c\x79\x66\x9e\xe1\x7c\xd0\x24\xa3\x8f\x28\x15\x15\x3c\x00\x92\x65\x6a\xb8\x7f\x7f\xf5\x95\xf2\x38\x80\x31\x66\x4c\x14\x29\x72\x7d\x95\xa2\x26\x31\xd1\x24\xb8\x02\xe0\x24\xc5\x00\xb6\x92\x24\x84\x93\xea\x5b\x65\x24\xc2\x00\x0e\x07\xf0\x17\xc8\x90\x28\xf4\xa7\xc7\x6d\x78\x79\xb9\x02\x60\x64\x83\x4c\x19\x7d\x30\x66\x5c\x00\x00\x69\x75\xce\x01\x8c\xae\xca\x30\x32\x7a\x12\x33\x46\x23\xa2\xac\xd4\x23\x61\x39\x2a\xbf\x42\xf1\xab\xc3\x91\xc8\xb9\xb6\x06\x15\x32\x8c\xb4\x90\xd6\x64\x4a\x74\xb4\xbb\x73\x7c\x38\xf3\x42\x63\x9a\x31\xa2\xb1\x92\x77\x08\x9b\x1f\x6b\xa8\x76\x50\x30\xbf\x68\x47\xa4\x3e\xdf\xde\xa1\xa4\x9a\x6c\x31\x80\x15\x65\x0c\x65\x7d\x50\xd3\xa6\x4a\x53\x31\x50\x85\xd2\x98\x1e\xbd\xe3\x5c\x68\xa2\xa9\xe0\x8e\x55\x45\x63\x8c\x88\xf4\x4b\x79\x9f\x8a\x21\xe5\x5f\x30\xd2\x01\x78\x09\x61\x0a\xbd\x52\xf0\x18\xaf\x72\x8d\x51\x2e\xa9\x2e\x46\x82\x6b\x7c\xd6\x27\x24\x99\xf3\x50\x3d\x28\x94\x01\xfc\xf2\xdb\x87\x7a\x3b\x51\x13\x29\xf2\xcc\x6e\x1e\x0e\x03\xa0\xc9\x29\xd4\x4c\x6c\x08\xf3\x33\x49\x45\x09\xc9\x88\x52\xc7\x3b\xb2\xda\x67\x47\x01\x78\xee\x5d\xf5\x03\x78\xa5\x31\xe4\xb1\x01\xeb\xb6\x4b\x53\xb2\xc5\x79\xce\xd8\x12\x23\x89\x5a\x9d\xcc\xb6\x4f\x82\x12\x41\x12\xbe\xc5\xd7\x83\x00\x0c\xaa\xcc\x36\x1e\x1f\xdd\x70\x3c\xaa\x96\xd5\x4d\x0b\xae\x09\xe5\x28\x9d\xcb\x71\xf5\x47\x26\x13\xfc\x66\x74\x6a\x57\x5b\x51\xa9\x32\xb8\x3c\x32\x79\x2c\x14\xd5\x42\x16\xf0\xf2\x12\xf4\x8a\x69\xb2\x2d\xa3\xd6\x42\x36\xcc\xe6\x82\xd1\xa8\x68\x16\x49\x8b\xbc\x15\x81\x6f\x10\x63\x42\x72\xa6\xc1\x0b\xd9\x9f\xa4\x50\x5e\xd3\xd9\x4c\x48\xed\xf0\x33\x0c\x6b\xde\x73\x61\x32\xfd\xe7\x77\xef\xde\x39\xe7\x12\x49\x4c\x39\x2a\x35\x97\x62\x83\xae\x26\xc0\x4e\xeb\x6c\x82\xba\xb9\x09\x90\x11\xbd\x0b\x60\xc8\xc4\x96\xf2\xf6\x51\x97\x09\xe4\xfb\xa6\x47\x36\xe6\x93\x45\x78\x13\x4e\xc3\xf5\x7c\xb6\x58\x35\x60\xf6\x26\x02\x01\x78\x06\xc6\x3b\xcb\xac\x2a\xa6\xc7\x2a\xf1\x91\x93\x0d\xc3\xb8\x19\x86\xda\xc6\xcd\x7a\x79\x3d\x7a\x58\xdc\xae\x9e\xd6\xe1\xf8\xfe\x76\xba\x7e\x58\x5e\x2f\xce\xad\xdd\x48\x91\xb6\x69\xaa\x32\xdd\x3e\x63\xb1\xc0\xa4\x7d\x06\x4e\xde\xf4\x39\x66\xf5\xcf\xf3\xc9\xfe\xbe\x62\x71\x59\x3d\x57\x28\x8d\x91\xcf\x58\xbc\x96\xdb\x3c\x5c\x2e\xff\x98\x2d\xc6\xff\x09\x7e\x19\x51\x2a\xdb\x49\xa2\x2e\x32\x0c\x1f\x56\x9f\xd6\x1f\xc3\xe5\xed\x68\x7d\x3d\x0d\x3f\xde\x5d\x77\x90\x0b\xc0\xd3\x32\x47\xef\x02\x42\x38\x9d\x4d\x9f\xee\x67\x0f\xcb\x8b\x28\x4e\x43\xee\x86\x19\xdf\x2e\x8d\xf6\xfa\x6e\x36\xb9\x9d\xae\x6f\x66\x8b\xfb\x4b\x38\x65\x07\x62\x0a\x7f\x94\xdc\x77\xdd\x7a\x1d\xbb\xd7\xc7\x68\xb6\x98\xac\x17\xb3\xbb\xeb\x2e\x98\x30\x4e\x29\x3f\x6f\xae\x2d\xc0\x79\xb8\xfa\xb4\x5c\x8f\xc3\x55\xd8\x85\x31\x34\x53\x7a\xd8\x1e\xb9\xa6\x17\x29\x91\xcb\x08\xab\x69\xd0\x51\xf5\xb5\x84\xed\xf0\xa0\xc5\x13\x49\xd9\x05\xb1\x6f\x40\x79\x8c\x5c\xc3\xfb\x0f\xf5\x50\xa8\xae\xa4\x43\xdd\xf6\xdc\xaa\xc3\x2e\x2e\x82\xb4\xc9\xef\x05\xcb\x53\xbc\x37\x6f\x19\xd5\xd5\xed\x0c\xe5\x46\x2c\x52\x23\x3a\xb7\xad\xb4\x27\x1e\xa7\x91\xf8\xc6\xf4\xdc\x9f\xe0\xcd\xa6\xd0\xa8\x20\xf8\x1d\xfc\x1b\xca\x50\xf9\x13\x26\x36\xe0\xc5\x44\xed\x36\x82\xc8\x58\x0d\xff\xef\x7f\x51\x82\xb7\x86\x82\xc1\x79\x93\x50\x86\xc6\x15\xa3\xad\x25\x4d\x97\x79\x92\xd0\x67\x78\x8b\xcf\xda\xc2\xff\x0f\xde\x6e\x88\xc2\xe3\x47\xe7\xd5\x9e\x2c\x0d\xec\xfb\xe7\x70\x70\x90\x5b\x6d\xc0\x61\xe8\x0d\xf7\x44\x0e\x19\xdd\x1c\x59\x0e\x1d\x9f\x4b\xa4\xe1\xe1\x00\x27\xf3\xad\x41\x09\xa0\xf2\x8d\x45\x6a\x8b\x35\xa4\xcc\x30\x9b\x71\x56\x04\x60\x92\xbd\x15\x81\xde\x7c\x8d\x04\x4f\xe8\xb6\xdf\x75\xd4\x51\xed\x76\x26\xc5\x9e\x9a\x87\x37\xe5\xdb\xf2\xda\xaa\x1c\x71\xd7\x7e\x41\x52\xd6\xe3\x7e\x5b\xec\xdf\x75\xa7\x0e\x69\xbd\x2c\x05\x62\x94\xdf\x71\xaa\x53\xfa\xf8\xaa\x4d\x12\xca\xa9\x2e\x8e\x59\x5d\x96\x26\x8f\x58\x1e\x23\x78\x5c\xc4\x78\x14\xf0\xc0\x3f\x95\xca\xaf\xa7\x58\x37\x14\x32\x11\x87\x5c\xd3\xb0\x57\xa7\xa7\xf2\xb5\x60\x28\xed\xdb\xfa\x84\xec\x6c\x06\x17\xda\x81\xab\x7b\x6e\xac\x91\x17\xb6\x8c\xeb\x0a\xee\xb9\x13\xfb\x79\x4f\x32\xb7\xd2\xad\xa4\x2d\x8b\x66\x2d\x37\x7a\x40\x0f\xbf\xcc\xfc\x9f\x53\xda\xcd\xd0\x6a\x0b\xb9\x7e\x2c\xbd\x1a\x31\x42\x1b\x53\x3c\x32\x1b\xd3\x73\xb3\x83\x6c\x1f\x75\x4e\x1f\x4c\x33\x5d\x8c\xa9\x0c\xe0\x70\xf6\x56\xfe\xe7\x8d\xe6\xc7\xda\xcb\xdf\x6e\x2d\x17\x82\xdf\x0a\x83\x95\xcc\xed\xd5\x0f\x1c\x03\x6d\x68\x27\x14\x7f\x05\x00\x00\xff\xff\xe2\x81\xd5\x04\x5b\x0f\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates/destination-rule.yaml": &vfsgen۰CompressedFileInfo{ - name: "destination-rule.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 220, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x74\xcb\xcd\x4a\xc5\x40\x0c\x05\xe0\xfd\x3c\x45\x9e\x60\x44\xdc\xcd\x4e\xa9\x0b\x41\x44\x2a\xb8\x0f\xd3\xb4\x0d\x9d\x26\xc3\x24\x2a\x52\xfa\xee\x97\x72\x7f\x76\x77\x77\xce\xe1\x7c\x58\xf9\x9b\x9a\xb1\x4a\x02\x21\xff\xd3\xb6\xb0\x4c\x91\xcd\x59\x23\xeb\xc3\xef\x23\x96\x3a\xe3\x53\x58\x58\x86\x04\x1d\x99\xb3\xa0\xb3\x4a\xff\x53\x28\xac\xe4\x38\xa0\x63\x0a\x00\x82\x2b\x25\x98\x1a\x8e\x28\x78\xe9\x56\x31\x53\x82\x6d\x83\xd8\x53\x21\x34\x8a\x1f\xd7\x19\xf6\x3d\x58\xa5\x7c\xd8\x59\xcd\x6f\x36\xde\xbd\x03\x78\xc3\x71\xe4\xfc\xa9\x85\xf3\xff\x21\x01\xbc\xd8\x39\x00\xac\x3a\x50\x82\xee\xed\xeb\xf9\xe5\xfd\x35\x9c\x02\x00\x00\xff\xff\x64\x66\x4a\x29\xdc\x00\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates/grafana-policy.yaml": &vfsgen۰CompressedFileInfo{ - name: "grafana-policy.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 305, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\xce\x4d\x6a\x03\x31\x0c\x05\xe0\xfd\x9c\x42\x17\xb0\x4b\xb6\x3e\x44\x09\x5d\x64\xff\xc6\xa3\x26\xa2\x1e\xdb\x48\x9a\xd0\x12\x72\xf7\x32\x3f\x2d\x94\x6e\xc5\x7b\x9f\x1e\xba\x5c\x58\x4d\x5a\x4d\x84\xc5\x6f\x5c\x5d\x32\x5c\x5a\x8d\x62\x2e\x2d\x4a\x7b\xb9\x9f\x50\xfa\x0d\xa7\xe1\x43\xea\x94\xe8\xdc\x8a\xe4\xaf\x61\x66\xc7\x04\x47\x1a\x88\x2a\x66\x4e\x74\x55\xbc\xa3\x22\xf4\xa6\x6e\x61\xf6\x62\x61\x12\xc3\x58\x78\x3a\x32\xd6\x91\x39\xd1\xe3\x41\xf1\x8d\x0b\xc3\x38\xbe\xfe\x9c\xe9\xf9\x1c\x88\x0a\x46\x2e\xb6\x9a\x44\xe8\xfd\x17\xdd\x0e\xba\x77\xfe\x03\x6b\xd7\x3a\xe7\xb5\xe7\xd0\x2b\xfb\x46\x84\xbf\xc3\x36\x63\x1b\xb7\xfb\x81\xea\x32\x8f\xac\xbb\x77\x41\x59\xd8\xe2\x91\x8d\xc6\x7a\x97\xcc\x91\x3f\x9d\xb5\xa2\x9c\x9b\xfa\xfa\xe6\x3b\x00\x00\xff\xff\x66\x77\x99\x62\x31\x01\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates/pvc.yaml": &vfsgen۰CompressedFileInfo{ - name: "pvc.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 349, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\x90\xbd\x6e\xeb\x30\x0c\x85\x77\x3d\xc5\x79\x01\x0b\xb8\xc3\x5d\xb4\x76\xe8\xd4\xa0\xe8\xe0\x9d\x95\x4f\x02\xa1\xfa\xab\x28\x67\x31\xf2\xee\x85\x62\xb7\x05\x82\x8e\x24\xcf\x47\x7d\xe2\xb6\x4d\x08\x67\xd8\x59\xe2\x4a\xb5\x97\x26\x67\xc9\x62\x2b\x9b\x06\xed\xb8\xdd\xcc\x47\xc8\x8b\xc3\xeb\xde\x60\xee\x73\x89\x6b\xe2\x53\x94\x90\x8c\xd4\x30\x8f\x41\xc9\x0e\xd7\x7f\x26\xb1\xcb\x22\x5d\x9c\x01\xb2\x24\x3a\x04\xed\xa1\x4c\xc7\xd6\xa9\x5e\xbd\x01\xa2\xbc\x33\xea\xc8\x00\x52\xab\xc3\x31\xbe\x37\x1a\x23\x45\xe9\xb0\x6d\xb0\x6f\x7b\x61\x4f\x92\x38\x54\xb4\xd2\x0f\x4e\x7b\x69\x72\x19\x0e\xaa\xa7\xfb\x3b\x23\xfd\xf0\x85\xc7\xd0\x58\x00\x88\xf7\x54\x7d\x29\x0b\x0f\x83\xe9\x2f\xf6\x37\xb5\x53\x8d\x5a\xd6\xe6\xbf\x99\xc6\xcf\x95\xda\x8f\xea\xc7\xc7\xe1\xff\x73\x30\xe3\xa2\xcc\xcb\x00\xbf\x02\x00\x00\xff\xff\x4b\xba\x51\xb3\x5d\x01\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 849, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x52\x4d\x6f\xe2\x30\x10\xbd\xe7\x57\x3c\x21\x8e\x4b\xc4\x6a\x6f\x96\xf6\xd2\x9e\x2a\x55\x55\x04\x15\xf7\x69\x32\xa0\x08\x63\xbb\xf6\x80\x8a\xd2\xfc\xf7\xca\x8e\x29\x20\x4a\xd4\x13\x78\x32\xef\x63\x66\x1e\xb9\x76\xc5\x3e\xb4\xd6\x28\x1c\xfe\x16\xdb\xd6\x34\x0a\x4b\xf6\x87\xb6\xe6\x62\xc7\x42\x0d\x09\xa9\x02\x30\xb4\x63\x85\x8d\xa7\x35\x19\xca\xef\xe0\xa8\x66\x85\xae\x43\xb9\x60\xcd\x14\xb8\x7c\x39\x95\xd1\xf7\x05\x40\xc6\x58\x21\x69\xad\x09\x91\x04\xe8\xba\x19\x3c\x99\x0d\x63\xba\xe5\xe3\x1f\x4c\x0f\xa4\xa1\xfe\xa3\x5c\x91\xde\x73\x28\xb3\x40\x19\x06\x0b\xe5\x05\xc1\xc0\x18\x29\x12\x16\x7d\x9f\xa4\x13\xc3\x27\xde\xf7\x56\xf8\xdc\x32\x03\x9b\x66\x78\x6a\x7a\x63\x9d\xe5\xc9\xb9\xcb\x21\x00\x3f\xf8\xbe\x1d\x22\x62\x83\xe3\x3a\xe2\xe4\xe8\x72\xc7\x1d\x97\xb1\x61\x10\x73\xd6\x4b\xd6\x9a\xa5\xc7\x28\x8e\x3f\x84\xbd\x21\x5d\x59\x2f\x27\xef\x80\x90\xdf\xb0\x54\x09\xfc\x6f\x3e\x9f\xe7\xb2\xf3\x56\x6c\x6d\xb5\xc2\xeb\x63\x95\x6b\xc3\x55\x46\x14\x4c\x1e\x05\x08\xac\xb9\x16\xeb\x7f\x58\x44\x5c\x57\xbb\xbe\xcb\xa1\x2d\x35\x0f\xa4\xc9\xd4\xec\x9f\xaa\xbc\xd4\xab\x9a\xc2\x64\xc4\xc3\x0d\x7e\x52\x5c\x1d\xa8\xeb\x7e\x29\xbe\xb4\x7b\x5f\xf3\x22\xc6\x27\xdc\xb8\xb8\xfc\x78\xca\x5a\x4e\x5a\xfa\x79\x6e\x83\x8c\x25\x6d\x54\x28\x5e\x33\x66\xed\xcc\xf4\x9d\x34\x36\x4d\x9e\x22\xfd\xfb\x0a\x00\x00\xff\xff\xf2\x09\x1a\xc2\x51\x03\x00\x00"), - }, - "/charts/istio-telemetry/grafana/templates/tests": &vfsgen۰DirInfo{ - name: "tests", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - }, - "/charts/istio-telemetry/grafana/templates/tests/test-grafana-connection.yaml": &vfsgen۰CompressedFileInfo{ - name: "test-grafana-connection.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 863, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x52\xbb\x6e\xdc\x40\x0c\xec\xf5\x15\x84\x1a\x57\xb7\x42\x80\x54\xdb\x19\x69\x52\x19\x87\x20\x70\x13\xa4\xe0\xad\x28\x89\xf1\x8a\x2b\x2c\x29\xc3\x87\x8b\xfe\x3d\xd0\x2b\xf1\xe5\x2e\x48\x3b\x3b\x33\xe4\xcc\xf2\x72\x39\x00\x37\xe0\x9e\x31\x8e\xa4\xae\x8d\xe9\x84\xd1\x91\xe0\x29\xd2\x67\x8a\xfd\x57\x52\x83\x69\x2a\x70\xe0\x67\xca\xca\x49\x3c\xbc\x7e\x28\x5e\x58\x6a\x0f\xc7\x54\x17\x3d\x19\xd6\x68\xe8\x0b\x00\xc1\x9e\x3c\xb4\x19\x1b\x14\x3c\x18\xa9\x6d\xa0\x0e\x18\xc8\xc3\xe5\x02\xee\x0b\x45\x42\x25\xf7\xb4\xc3\xb3\x3b\x40\xc4\x13\x45\x9d\x4d\x00\x70\x18\x6e\x5c\x00\xf2\x2a\xbc\x75\x59\x0d\x00\x58\x8d\xd3\x6f\x61\x01\x80\x22\xc9\xd0\x38\xc9\x66\xac\x5c\x53\xc0\xec\x16\xa6\xe3\x54\xb1\xfc\xa0\x60\x1e\xca\x06\xa3\x52\xb9\x90\x3a\x8a\xbd\xd3\xae\xea\x52\x7a\xf1\x30\x8f\x3f\xe8\x18\x02\xa9\x16\x3a\x50\xf0\xc5\xfd\xca\x86\xcc\x29\xb3\x9d\x3f\x45\x54\xfd\xb3\xd6\x0d\xec\xa1\x9c\x03\xfc\x5f\x5c\x2e\x83\x48\xea\xd5\x28\x24\x31\x64\xa1\xbc\x65\x39\x6c\x6d\x97\xef\x8b\x5a\x13\x00\x70\x8f\xed\xd6\xd4\xf5\xa0\x6e\x3c\xc1\x34\x55\xf7\x36\x48\x6f\x67\xb7\xe8\x60\x9a\xfc\x2d\xc1\xb0\xdd\x8b\xde\xfc\x8f\x63\x8c\xc7\x14\x39\x9c\xef\x66\xfa\x8b\xb3\x24\x5a\xd5\x21\xf5\x3d\xce\xf7\xf3\xed\x21\x8c\x39\x3e\x7c\xdf\x70\xcc\xad\xce\x60\x67\x36\xf8\xaa\xda\x82\x5d\xed\xb2\x42\x4e\x29\xbf\x72\x20\x47\x6f\x46\x59\x30\x1e\x53\x9e\xaf\x74\x71\xca\xa4\x86\xd9\xf6\xcd\x9e\xe8\x95\xf2\x7c\x0c\x4d\xc3\xc2\x76\x5e\xdb\x5b\xfe\x50\x42\x1c\x6b\x82\x52\x52\x4d\xfb\x73\x09\x0e\x7e\x02\x4b\x4d\x62\xf0\x71\x4f\x7c\x45\x1f\x52\xfd\x28\xc6\x8f\xff\x54\xbc\xfb\xb7\x5f\x01\x00\x00\xff\xff\x5b\x4b\x06\x4d\x5f\x03\x00\x00"), - }, - "/charts/istio-telemetry/grafana/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 2593, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x56\xc1\x6e\xdc\x36\x13\xbe\xef\x53\x0c\xd6\x87\x5c\xe2\xb5\x9d\x1f\x7f\x80\xe8\x96\xc6\x2d\x60\xb4\x49\x8d\x6c\xda\x1e\x8a\x1e\x66\xc5\x91\xc4\x86\xe2\xa8\x33\x23\xdb\x42\x51\x20\x0f\xd2\xbc\x5c\x9e\xa4\x20\xa9\xdd\x95\x63\x27\x45\x4f\x36\x87\x33\x1f\xe7\xfb\xe6\x23\xb5\xad\x60\x83\x11\xab\x15\x00\x45\xdc\x05\x72\x15\x98\x8c\xb4\x02\x10\x1a\x82\xaf\xf1\x15\x8f\xd1\x2a\xb8\x58\x01\xf8\x1e\x5b\x4a\xa9\x79\x93\xd5\x1b\xcb\x54\xc1\x8c\x71\x36\xff\xcd\xfb\x86\x6d\x05\xcf\x37\x17\x9b\xe7\x2b\x80\x81\x44\xbd\x5a\x05\x0d\x06\x4d\xd0\x6a\x2c\xd8\xd2\xab\x80\xaa\x6f\xb0\xa7\x0a\xd6\xeb\x15\x00\xd6\x35\xa9\xbe\x66\x47\x15\xbc\x25\x74\xbf\x88\x37\x7a\x8d\x71\x4a\x25\x54\x8f\xe2\x6d\x2a\xc7\x1f\x7a\xdd\x23\xe6\x04\x21\x2b\x68\xcb\x4e\x46\x25\x89\xd8\xd3\xf7\x34\x55\x87\x45\xde\x19\x50\x75\xe8\x04\xb5\xec\x1d\x97\xab\x15\x40\xcd\xd1\xe8\xce\xae\xd1\xba\x0a\x16\xd4\x94\xe4\xc6\xd7\xb3\x0a\x18\x23\x1b\x9a\xe7\xa8\x15\xfc\xf9\x57\x8e\xc5\xdc\x41\x67\x36\x14\x21\xa6\x81\x2a\x78\x15\x46\x35\x92\xab\xeb\xd2\xfd\x9d\xa5\x36\xc2\x35\x8b\x55\xf0\xbf\xf3\xf3\xf3\x1c\x0e\x8c\xee\x1b\x0c\x18\xeb\x94\x59\x3d\x88\x6d\x79\x94\x9a\xde\x62\x6c\x49\xab\xd4\xa3\x8f\xad\x90\xea\x17\x25\x39\x39\x81\x9f\x94\x1c\x18\x43\x2d\x84\x46\x80\x11\xae\x4a\x11\x08\xd5\x2c\x6e\x93\x13\x3b\x56\x9b\x61\x00\x4e\xf7\xf2\x6d\x02\xd7\x18\x1e\x10\x9d\xd3\x4e\xe0\xfd\xb8\x23\x89\x64\xa4\x1b\xcf\x67\x73\x33\x9b\x3a\x0d\xb5\x82\xd8\xfa\x78\xf7\x85\x54\x0b\x7a\x8a\x75\x1e\x7b\xf2\xda\xba\x08\x15\x16\xd0\xdb\x3c\x4c\x85\x7e\x54\x83\x1d\x41\x8f\x71\xc4\x10\xa6\x99\x87\x03\x1f\xc1\x3a\xca\x62\xeb\x80\x35\x6d\x0e\xa5\xa7\x8f\x39\xe1\xd4\x82\x1e\x32\x3e\xe3\x7b\xf2\x28\xeb\x55\xda\xf8\x71\x48\x94\x31\x54\x30\x08\xf7\x64\x1d\x8d\x0a\x3d\x4e\xa9\x25\x47\x43\xe0\xa9\xb4\x82\xe0\x7c\xd3\x90\x50\xb4\x63\x4b\x19\xe1\x58\xf7\x66\x1f\xaf\xc0\xab\x79\x3e\x35\x0a\xd4\x93\xc9\x54\xce\x7a\xe9\x9c\x2f\xa7\x81\x43\x43\xcd\xc3\xd6\x0d\x5c\x1f\x4f\xf6\xb1\x0e\xa3\x3b\xb2\xaf\x39\x36\xbe\x85\x1e\x87\x44\x7f\x51\x55\xa8\x2d\x61\x26\xec\xc3\x9e\x30\x0e\xfe\xe7\x74\x23\x39\x96\x6b\xfd\x59\x6e\xb5\x90\xb2\x98\xf9\xd8\xc2\xb3\x85\x66\xc5\xd9\xc3\xa3\x7b\x2c\xed\x95\xab\x60\x19\x1a\x25\x94\x6b\x51\x9d\x9d\x1d\x8b\xaa\x17\xe7\x2f\xce\x17\x59\xe5\x09\xc8\xb0\x77\xd3\x22\xee\xf5\x92\x1a\x1c\x83\x2d\xfd\x5d\xb6\x7e\x57\x8e\x97\x68\x78\x7f\x9e\xe6\x7b\xba\x8a\x46\x72\x93\xc6\xf7\xff\xe5\xf4\xc9\x79\x4b\x77\x65\x7e\xe9\xb2\x74\xda\xed\x18\xc5\x5d\x0b\xdf\x78\x47\x72\x50\x70\x8e\x0f\xfb\xf8\xbf\x0a\x39\xdc\x47\x28\xd6\x2a\x32\x3e\xc9\x73\x7f\x72\x88\x1f\x64\xba\x58\x84\x1a\x0e\x8e\xe4\xb1\xe4\xa2\x77\xe3\x03\x2d\x82\xce\x6b\xa2\x72\x49\x81\x2c\xf7\xb1\x54\x27\x1f\x31\xdc\xbb\xb5\x73\x93\xe5\x55\xbb\x41\x39\x0b\x7e\xb7\x7f\xdd\xce\x0e\x74\xf5\x2c\x9f\x9e\xa4\x89\xec\x68\x4b\x81\x6a\x63\x99\xdf\x38\xe3\x40\xb2\x7f\xf5\x7e\xfd\xad\xd8\x77\x3b\x50\xed\x9b\x29\xfb\x72\x60\x07\x18\xcd\x9f\x62\xd3\xf8\xe8\x2d\x45\xd1\x00\x43\xe0\x5b\x85\x89\xc7\xfc\x22\x71\x54\x13\xf4\x11\x6e\x3b\x5f\x77\xf9\x20\xcd\x50\x13\x8f\x92\x31\xbc\x02\x05\xdf\xfa\x5d\xa0\x54\xb1\x23\xd0\xba\x23\x37\x06\x72\xb0\xc3\xf4\xb2\x71\x84\x80\x3b\x0a\x9a\xfe\x1b\xd8\xe9\x7c\x92\x94\xdb\x87\x41\x08\xdd\x04\x32\xc6\xe8\x63\x9b\x92\xf2\xab\xc1\x8e\x40\xd0\x3a\x92\x94\x1f\x1f\x03\xcb\xed\x6c\x32\xca\xbb\x8e\x84\x12\x26\xd4\xa3\xa4\x3b\x1e\x26\xb0\x5b\xce\x03\x51\xe0\xe6\x3e\xd7\x6a\x35\x5b\x70\x2d\xf4\xc7\xe8\x85\xdc\xe5\x28\x3e\xb6\xdb\xd2\xba\x8f\xed\x55\x1b\xf9\x10\xfe\xf6\x8e\xea\x31\x69\xb9\x3e\xd4\x0d\x42\x0d\xc9\x7f\x2c\x2c\x22\x3a\x8a\x6c\x04\x9f\x3e\xfc\xdd\xa1\xb8\x4f\x1f\x3e\xc2\x8d\x6e\xd2\x52\xb9\xb1\xb4\x9c\x7b\xea\x29\x9a\x3e\xcd\xa3\xa8\x31\x82\xa3\xc6\x47\x2a\xc2\xdf\x60\x18\xe7\x41\xf8\x08\xeb\x81\xdd\xcb\x68\xfe\xe5\xcc\xee\x87\x24\xd0\xde\x0f\x6b\xc0\xe8\x1e\xa4\xbc\x23\xe9\xef\xa7\x65\xb0\x9a\x45\x48\x07\x8e\xce\xc7\x36\x4c\x45\xda\xef\x58\x80\xee\xb0\x1f\x02\x15\xdd\xbe\x76\x5c\xc9\x38\x85\xf7\xe9\x6b\xbd\xff\x3d\x30\xab\xc6\x43\xb2\x64\xb2\xe8\x55\x9c\x43\x85\x48\x05\xdb\x8b\xa7\xdb\x67\x73\xcc\x78\xe0\xc0\xed\x94\x3f\xf8\xeb\xfb\x5f\xa5\xf4\x51\x48\x17\x75\x3d\x0f\xdd\xeb\x23\x46\x96\x31\x10\x28\x4e\xb3\xd1\xf6\x6e\x9f\x65\x55\x88\x6c\x9f\x5b\x35\xc3\x71\x34\x06\x2c\xce\xf3\x4d\x29\x2e\x0b\x7d\xe0\x52\xcc\x90\xb7\xde\xba\xe2\x47\xe8\xf0\x26\xc5\xdf\x53\x61\x9b\xc6\x39\xb3\x4f\x23\x4d\x33\xc8\x5c\xd3\xc6\xf6\xe2\xd3\x87\x8f\x49\xdb\xaf\x0a\x99\x6e\xed\x83\x94\x07\x73\xcb\x69\xff\x04\x00\x00\xff\xff\x61\x0f\xb4\x4e\x21\x0a\x00\x00"), - }, - "/charts/istio-telemetry/kiali": &vfsgen۰DirInfo{ - name: "kiali", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - }, - "/charts/istio-telemetry/kiali/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 205, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8e\xc1\x0a\x83\x30\x10\x44\xef\xf9\x8a\xc5\x73\x89\xd5\x4b\x41\x68\x7f\xa0\x77\xef\x31\xae\xb8\x6d\xcc\x86\xdd\xad\xd2\xbf\x2f\x0a\x2d\xf4\xf8\xde\x30\xc3\x84\x42\x3d\x8a\x12\xe7\x0e\xd6\xc6\x8d\xa8\x51\xa8\xd8\xc1\x77\x0a\x89\x80\x14\x42\x06\x2e\x98\x41\xf9\x25\x11\xa1\x08\x3f\x30\x1a\x4c\x2c\xa0\x28\x2b\x45\x84\x05\x75\x06\x1e\x76\x0c\x03\x25\xb2\xf7\x09\x04\x27\x14\x30\x86\xd9\xac\x68\x57\xd7\xdb\xb6\xf9\xe7\x3e\xea\x89\x8f\xf6\x88\x16\x28\xa9\x77\x39\x2c\xd8\xc1\x91\xb9\xf5\xfb\xa7\xf1\x8d\x3f\xbb\x50\x4a\xff\x6f\x8c\x52\x42\xf9\xc9\xea\x76\x6d\xfd\xc5\xb7\x95\xfb\x04\x00\x00\xff\xff\xeb\x91\x7e\xba\xcd\x00\x00\x00"), - }, - "/charts/istio-telemetry/kiali/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - }, - "/charts/istio-telemetry/kiali/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 2971, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\xc1\x8e\x9b\x30\x10\xbd\xe7\x2b\x46\x51\x0e\xed\x6a\x81\xed\x15\xa9\x87\x95\xba\x87\x55\xab\xaa\xea\x56\xbd\x3b\x78\x20\x56\x1c\x9b\x1a\x93\x26\xa2\xf9\xf7\xca\x40\x88\x21\x06\xbc\xe9\xaa\x37\x34\x3c\xcf\x9b\x79\x7e\x33\xae\xaa\xe8\x0e\x48\x9a\x32\xc1\xf4\x11\x02\xd8\x68\x9d\x17\x71\x14\x6d\xcb\x35\x2a\x81\x1a\x8b\x90\xc9\x88\xca\xa4\x88\x12\x29\x12\xcc\x75\xfd\x91\xb2\xac\x54\x44\x33\x29\x22\x52\x14\x2c\x13\x41\x2e\x69\x20\x24\xc5\x08\xee\xa2\xd3\x69\xb1\xa8\xaa\x00\x28\xa6\x4c\x20\x2c\x4d\xfc\xcc\xb1\x84\xd3\x69\x01\x60\x42\x8f\x6d\x28\x5e\x00\x00\x28\xfc\x55\x32\x85\xf4\x53\xa9\x98\xc8\x5e\x92\x0d\xd2\x92\x33\x91\x3d\x67\x42\x76\xe1\xa7\x03\x26\xa5\xa1\x6d\xce\x18\x12\x26\x12\x5e\xd2\x96\xe5\x9c\xf2\xfb\x48\xb2\x25\x84\x0d\x3f\x40\xae\x30\x45\xf5\x56\x84\xdf\xc6\xb2\xb5\x8c\xe6\x20\x0a\x0a\x2e\x69\xe6\x8b\x6e\x4b\x6e\x64\x7b\x41\x8e\x89\x96\xea\x07\xaa\x5d\x11\xb7\x3f\x02\xd8\x11\x9d\x6c\x9e\x0e\xb9\xc2\xa2\x60\x52\x74\x7f\xcc\xbf\x2d\x1e\x63\x58\xa3\x26\x61\xff\x5e\x89\x4a\x36\x1d\x0c\x40\xe6\xa8\x88\x96\x2a\x86\x67\x61\x85\xf7\x84\x97\x68\xe5\x33\xf5\x2b\x22\x32\x84\xd5\x16\x8f\xf7\xb0\xda\x13\x0e\xf1\x47\x08\x7f\xd6\xc0\x30\xe3\x72\x4d\x78\x68\x92\x5f\x2a\xef\xd4\x4b\x21\xd3\xf0\xae\x3e\xf3\x07\x98\xd0\xef\xe1\xa1\x8f\x0a\xa0\xaa\xea\xcc\xd7\x87\x5b\x05\x67\x42\x2b\x5b\x25\x53\x18\xc5\x94\x94\x5c\x0f\x0b\x6c\xc3\x5f\x6d\xf4\x19\xd2\x4b\x11\x0c\x08\x5c\xcd\xf7\x49\xad\x03\xad\xfa\xce\x9e\x3c\x05\x3f\x6b\x62\xa8\xdc\xed\xfb\xd8\x6b\xc2\xa2\x75\xd2\x1b\xae\x75\xee\x42\x03\xf8\x8d\x2c\xdb\xe8\xb8\x2b\xbf\x46\x5c\x9a\x68\x86\x10\x45\x82\x97\x6e\xff\x9f\x91\x1d\x5e\xeb\x59\xca\x43\xe0\x5c\xd2\x47\xa1\xd9\xa3\xbd\xdd\x5a\x55\x2c\x37\x0d\x50\x5f\xc8\x1a\xf9\x95\xe5\x06\x20\x33\xde\x3d\x60\x5d\xd2\x00\x14\xdb\xd7\xe0\xc5\xd6\xf6\xf9\xcf\xdb\x76\x40\xe2\xb1\x70\x07\xd3\x3a\xab\x92\x5b\x80\xb7\x58\xdc\x03\xa2\xb9\xdd\x3d\x3e\x6b\x9e\xae\x98\x5d\xec\xd6\xe8\x31\x41\xf1\x70\x0f\x2b\xa6\x71\x67\x4f\x9f\xcf\xa5\x06\xc0\xed\xf0\x2b\x46\xca\x4c\x81\x61\x0c\x27\x56\x54\x87\x39\x87\x9c\xcb\xbd\x81\x34\x93\xd6\x07\x5c\x4f\x5f\xbd\xac\xf7\x84\x17\xa6\xd1\x22\xe7\x4c\xc3\xf2\x7e\x39\x91\xc2\xd6\xc9\x2c\xa8\x7a\xf1\xd6\x09\x1c\x2f\xc8\x7e\xf6\xfd\x70\x04\xb5\xcc\x25\x97\xd9\xf1\x73\x4f\x15\x2b\x3a\x6d\x88\x29\x17\xcc\xed\xdf\x5b\x6c\x70\x35\x23\x17\x2b\x18\xa4\x85\xba\xe8\x3e\xe2\x91\x29\x97\x78\xf8\xe4\x15\x4e\xf1\xf0\x8a\xcb\x2d\x37\xf8\xc5\xdb\x31\x23\x9e\x19\x71\x8d\x33\xec\xed\x1c\xe8\x1e\xc5\x0f\x0f\x0f\x13\x5e\xfa\x1b\x00\x00\xff\xff\x24\x32\x1b\x37\x9b\x0b\x00\x00"), - }, - "/charts/istio-telemetry/kiali/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 4279, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x56\x3f\x73\xdb\x3e\x0c\xdd\xfd\x29\x78\x9e\x7f\xd6\xef\xba\xf5\xbc\x76\xe8\xd6\x21\x43\x97\x5e\x07\x88\x44\x2c\x54\x14\xc1\x82\x90\xdc\x34\x97\xef\xde\x93\xe4\x58\x94\x1d\xa7\x49\xf3\xe7\x3c\x78\x33\x1e\x41\xf9\x01\x7a\x80\x1e\x44\xfa\x8a\x92\x88\xc3\xda\x48\x09\xb6\x80\x56\x2b\x16\xfa\x0d\x4a\x1c\x8a\xfa\x63\x2a\x88\xff\xef\x3e\x2c\x6a\x0a\x6e\x6d\x3e\xf9\x36\x29\xca\x15\x7b\x5c\x34\xa8\xe0\x40\x61\xbd\x30\x26\x40\x83\x6b\x53\x13\x78\x5a\x18\xe3\xa1\x44\x9f\x7a\xdc\x18\x88\x71\x3a\x30\x46\xd0\x23\x24\x5c\x9b\xdb\x5b\x53\x5c\x8d\x41\xf1\x05\x1a\x34\x77\x77\x0b\x69\x3d\x0e\xd7\x56\x06\x22\x7d\x16\x6e\x63\x5a\x9b\x6f\xcb\xe5\xf7\xdd\xdd\xc4\xad\x58\xdc\x3d\xb9\x4f\xb3\x1c\xae\x69\xd3\x40\x4c\x7b\x08\x83\x8b\x4c\x41\x27\xa4\x27\x97\x22\x58\xcc\x20\x76\x59\x14\xd9\x4d\x41\x42\xe9\x28\xcf\x15\x8c\x9e\xec\xd0\x0f\xcb\x41\x85\xbd\x47\x19\x8f\x3b\x94\x32\x63\xb3\x41\xdd\xff\xf6\x94\xa6\x60\x0b\x6a\xab\xe3\xba\xf0\x97\x62\xe8\x7b\x9f\x96\xff\x99\x25\xc4\x98\x4e\x57\xea\x30\x7a\xbe\x69\x30\x2f\x2c\x29\x28\x5e\xb7\x3e\xa1\x1e\xd1\xdd\x63\x2f\xe4\x08\xad\x72\xb2\xe0\x29\x6c\x4e\x93\x1b\x14\xc3\x41\xc1\x47\x76\xf7\x37\x5e\xa9\x49\x65\x0f\x3f\xa2\x00\xe1\xf0\x83\xcb\xa9\xfe\x7d\xf0\xc2\xff\x1d\xa5\x55\x50\x52\xe2\x82\xf8\x34\x03\x88\x54\xe3\xcd\x44\x60\x36\x41\x13\x6c\x2b\xb4\x75\x60\xad\x28\x6c\x32\x94\xc4\x72\x68\x53\xa6\x37\x87\x81\xee\x7b\xd7\xc7\xd7\xbe\xc5\xa0\x99\x42\x2b\x08\xce\xe7\x19\x75\x5b\xa2\x04\x54\x4c\x18\xba\x07\xe1\x34\x2b\x7d\xa0\x92\x3f\xa0\x07\x31\xa8\x50\x9e\xc8\x9b\x43\xa8\xc1\xe6\x67\xcb\x0a\x39\xa2\x42\x76\x8a\x39\x66\x87\x51\xb8\x41\xad\x70\x56\xdd\xc1\x03\xc6\x30\xa2\x2d\x29\xb8\x59\x67\xf6\x27\x99\xb4\x4b\xb0\x33\xa1\xb3\xe8\x51\x47\x87\x25\x32\x8d\x08\x7b\x90\x2d\x05\x97\x73\x48\x0a\xb6\x76\x42\x5d\xde\x83\x7e\x98\x52\xbe\x07\xd4\x11\x3f\xa8\x24\x2b\x08\x8a\xd9\xfb\xf2\x98\x85\x27\x75\x16\x77\x3a\x7b\x54\x75\x01\x75\xcb\x52\x53\x78\x8a\xf2\x1c\x26\xa5\x30\xe8\x6c\x5e\xf5\x06\x14\xb7\x70\x73\xb4\xd4\x0e\x5f\x68\x22\x87\x16\xb2\x26\x74\x24\xda\x82\x9f\xed\xc0\x77\xac\xbe\x1f\x1d\x0c\xba\xdb\xb6\x4f\xe8\x40\x64\x4f\x76\x2e\xd1\x54\xcd\xc0\x77\x64\x3f\x7c\x3f\xff\xce\xd9\x8e\xdf\xd0\x3e\x7b\xdc\x31\x73\x81\x1f\x62\xbb\x77\x21\x3c\x93\xf5\x04\xce\x06\xe7\x1d\xab\x6d\x38\x90\xb2\xf4\x4a\x1d\x3e\xef\x8f\xd6\x3c\x25\x3b\x48\x55\xc9\x20\xee\xe4\x92\x5e\xad\x56\x8b\xd7\xb7\x25\xab\x8e\x70\x8b\x72\x71\x27\x17\x77\x72\x71\x27\x17\x77\x72\x26\xee\x64\x9c\xe6\xdd\xe0\x8e\x57\x4e\x9d\xbe\xad\xa7\x79\xae\xfe\xce\xdf\xa7\xfc\xc3\x2a\x79\x63\xef\xf1\x5c\x46\xe7\xe7\x27\x9e\x5b\xc1\x9b\x79\x84\x3f\x01\x00\x00\xff\xff\x39\xe9\xd1\x63\xb7\x10\x00\x00"), - }, - "/charts/istio-telemetry/kiali/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 848, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x91\x41\x4f\xf3\x30\x0c\x86\xef\xfd\x15\xfe\x03\xc9\xa7\xef\x86\x7a\x03\x0e\x9c\x00\x69\x48\xbb\xbb\x8d\xc7\xcc\xd2\xb8\x8a\x93\x22\xa8\xf6\xdf\x51\xd2\x69\x9a\x36\x31\x71\x42\xe2\xd6\xca\x79\xed\xe7\xd5\x33\xcf\x06\x78\x03\x41\x12\xd8\x35\xfa\x4c\x6a\x77\x8c\x9e\xad\x43\xdd\x76\x82\xd1\xd9\x89\xe9\xfd\x39\xf8\x8f\x47\x71\x04\xfb\x7d\x83\x23\xaf\x29\x2a\x4b\x68\x21\x76\xd8\x5b\xcc\x69\x2b\x91\x3f\x31\xb1\x04\xbb\xbb\x51\xcb\xf2\x6f\xfa\xdf\xec\x38\xb8\x16\xee\x7d\xd6\x44\x71\x25\x9e\xee\x38\x38\x0e\xaf\xcd\x40\x09\x1d\x26\x6c\x1b\x80\x80\x03\xb5\xc0\x9a\x58\x4c\xbd\x6c\xd0\x0d\x1c\x4c\x14\x4f\xa6\x5b\x02\x66\x9e\xc1\xae\xc8\x13\x2a\xd9\x27\x1c\x48\x47\xec\x2b\x0b\x80\xc7\x8e\xbc\x96\x4d\x00\x38\x8e\x2d\xd4\x25\xf5\x37\x2e\x89\x16\xce\xe3\x25\x59\xf6\xaf\x68\x53\x82\x38\xf2\x43\x94\x3c\x5e\xa9\xd3\x00\x5c\xb4\x39\xc2\x2f\x17\x35\x77\x6f\xd4\xa7\x8a\x62\x0e\xaf\x5f\x28\x4e\xdc\xd3\x6d\xdf\x4b\x0e\xa9\x42\x9d\x44\x8c\x2e\x63\x83\x67\xf3\x5a\xef\x12\xfb\xd8\xba\x48\x23\xaf\xbf\x62\xa3\xd8\xa7\xf8\xe7\x74\x1c\xb8\x4f\xac\x7c\xeb\xe4\xba\x91\x1f\xfb\x08\xae\x7c\x7e\x05\x00\x00\xff\xff\xef\x2c\xd7\x5a\x50\x03\x00\x00"), - }, - "/charts/istio-telemetry/kiali/templates/configmap.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 804, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x91\x4f\x8f\x9b\x30\x10\xc5\xef\x7c\x8a\xf9\x02\xeb\xb0\x3d\xad\x7c\xed\xb5\xad\xaa\x95\x9a\x2b\x1a\x60\x20\xd3\x38\xb6\x65\x4f\x68\x10\xe5\xbb\x57\xfc\x31\x44\x6d\xd4\xcd\xd1\xf0\x7e\xef\xbd\x99\x41\xcf\x47\x0a\x91\x9d\xd5\xd0\xbd\x66\x67\xb6\xb5\x86\xcf\xce\x36\xdc\x7e\x45\x9f\x5d\x48\xb0\x46\x41\x9d\x01\x58\xbc\x90\x86\x33\xa3\xe1\xf5\x15\x3d\x56\xa4\x61\x18\x40\xbd\x93\x21\x8c\xa4\xbe\xa5\xcf\x30\x8e\x19\x80\xc1\x92\x4c\x9c\x68\x00\xf4\x7e\xc7\x01\xc2\x42\xfc\x8b\x4f\x64\xca\xac\xe6\x26\xaa\xc7\x8b\xd1\xf0\x7b\xe6\x38\x0a\xbb\xe2\xb9\x78\x80\x48\xa1\xa3\xb0\x14\x00\xf0\x2e\x88\x86\x4f\x79\x9e\xbf\x66\xc3\xf0\x02\xdc\x80\x3a\xa2\xb9\x52\x54\x73\x31\x55\x39\x2b\x74\x93\xef\x28\xa7\xe4\x00\xf0\x8b\xca\x22\x38\x27\x4b\xd4\xff\xf4\x93\x27\xd9\x3a\xa1\x74\x13\x0a\x16\x4d\x31\xb5\xe0\x8a\x62\xea\x31\xcf\x90\x1e\x00\xd7\xb0\x49\x8a\x2e\x5d\xe3\x24\xe2\xf5\xe1\x30\x4b\x5f\x3c\x1b\x27\xea\x2e\xbe\x35\xae\x44\xa3\xe6\xbf\xf7\x43\xeb\xb7\xfc\x2d\x3f\xac\x26\x6b\xc0\x4f\xa4\x76\xdf\xc1\x1c\xf7\x60\x94\x1a\xe3\xa9\x74\x18\x6a\xb5\xe8\x7f\xbc\x7f\xd9\x57\xd0\x06\x6c\xd0\xe2\xf3\x1e\x2b\xb0\x9a\x3c\xdc\x75\xa4\xea\x1a\x58\x7a\x45\x16\x4b\x43\xdb\xd6\xb8\x26\x2b\x2c\x7d\x0a\xab\x28\x48\xd1\xb0\xa1\x07\x81\x9b\xc7\x26\xda\x3b\xfb\xc0\x1d\x0a\x15\x67\xea\x3f\xc4\xff\xd6\xde\x1d\x73\x1c\xff\x04\x00\x00\xff\xff\x01\x26\xf6\x88\x24\x03\x00\x00"), - }, - "/charts/istio-telemetry/kiali/templates/demosecret.yaml": &vfsgen۰CompressedFileInfo{ - name: "demosecret.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 318, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\x90\x41\x4b\x33\x31\x18\x84\xef\xf9\x15\x2f\x7c\xe7\x2f\x20\x78\x0a\x78\xf3\x5c\xa1\x42\x8b\xc7\xe9\x66\xa4\xa1\x49\x36\xe6\xcd\x0a\xb2\xf4\xbf\x4b\x36\x56\x41\x8f\xc9\xcc\xf3\x64\xc8\xba\xfe\x97\xf0\x2a\xf6\x80\xb8\x50\xed\x25\x20\x06\x3b\x55\xa2\xf1\x91\x69\x7e\xe6\x54\xd9\xe4\x7a\x35\x28\xe1\xc0\xaa\x61\xce\x4e\xde\xef\xcc\x25\x64\xef\x64\xc4\x26\xb1\xc1\xa3\xc1\x19\x91\x8c\x44\x27\xeb\xfa\x4b\xe9\xa1\xe7\xd3\x8c\xea\xad\x6e\xcc\x0e\x89\x5d\x3b\x00\x2d\x98\xbe\xa8\x3d\x23\xa1\xb4\xbb\xdb\xf5\x68\x45\x9c\x18\xb5\x3f\x20\x82\x52\x9c\x6c\xda\xed\x58\x07\xf1\x17\xef\x64\xfb\x28\x74\xf2\x54\xf0\xb6\xd0\xdc\x36\x2e\xca\x3a\x76\xbe\x1c\xf7\x0d\xc7\xfb\x07\x11\xf9\x27\xf0\x29\x64\x23\x52\xa0\x5a\xce\x75\x73\x7e\x17\x7e\xe2\xfe\x65\xcc\xbe\xdb\x3f\x03\x00\x00\xff\xff\x15\xdd\x82\xa9\x3e\x01\x00\x00"), - }, - "/charts/istio-telemetry/kiali/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 3110, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x56\xcd\x6e\xe3\x36\x10\xbe\xe7\x29\x06\xba\xec\xa5\x96\xbd\x5d\xb4\xc0\xea\xe6\x66\xdd\xee\x02\x9b\xc4\xb0\xbd\x29\x7a\x32\xc6\xd4\xd8\x62\x43\x91\x04\x49\xb9\x75\xb3\x79\xf7\x82\xa2\x6c\x51\x96\x6c\xf7\x01\xea\x43\x10\xcd\xcf\x37\xc3\x6f\x3e\x0d\x85\x9a\x3f\x93\xb1\x5c\xc9\x0c\x50\x6b\x3b\xde\xbf\xbf\x7b\xe1\x32\xcf\xe0\x13\x69\xa1\x0e\x25\x49\x77\x57\x92\xc3\x1c\x1d\x66\x77\x00\x12\x4b\xca\xe0\x85\xa3\xe0\xcd\x93\xd5\xc8\x28\x83\xd7\x57\x48\x17\x24\x08\x2d\xa5\x8f\x47\x33\xbc\xbd\xdd\x01\x08\xdc\x90\xb0\x3e\x1b\x7c\x91\x36\x1d\xc0\x84\x8c\x7e\xba\xcf\xb4\x9a\x98\xcf\x32\xa4\x05\x67\x68\x43\xd4\x33\x8a\x8a\x6c\x5a\x63\xa4\x8d\xeb\x5e\x55\xd2\x85\x62\x96\x04\x31\xa7\x4c\x28\x57\xa2\x63\xc5\xd7\xa8\xfe\x59\x07\x8e\x4a\x2d\xd0\x51\x13\x1d\x1d\xd4\xff\xba\x87\xf5\x3f\xd1\x81\xea\x1d\xe7\xe6\x91\x9a\x2c\x29\x95\x43\xc7\x95\x8c\xa0\x2c\xcf\x89\xa1\x49\xb9\x75\x5c\xa5\x5c\x8d\xb9\xfc\x93\x98\xcb\x20\xd9\xa2\xb0\x94\xb4\x81\xac\xa0\xbc\x12\x64\x52\x14\xba\xc0\xf4\xa5\xda\x90\x91\xe4\xc8\xfa\x2c\x66\xb8\xe3\x0c\xc5\x48\xab\x3c\x83\xa4\x4d\xd3\x46\x95\xe4\x0a\xaa\xea\x30\xcb\x0c\x6a\xca\x20\x71\xa6\xa2\x4b\x41\x5a\x19\x5f\xff\xe3\xe4\xe3\xa4\x0d\x09\xc4\x73\x35\x36\x95\x74\xbc\x24\x9b\xc1\x4e\xfd\xd0\x72\x70\x9c\x5a\xfd\x3f\x99\x3d\x67\x34\x65\xcc\x0f\xe8\xb1\xa5\x73\xd4\x78\x46\x18\x5c\x77\xaf\xaf\x23\xe0\xdb\xd3\x74\x77\x42\x6d\x50\xa4\xda\x70\x65\xb8\x3b\xdc\x0b\xb4\xb6\xcb\x61\xcf\x95\x41\x12\xc9\xe3\x0a\x40\x52\x17\x23\x99\xb7\x60\x4c\x49\x87\x5c\x92\x39\xcd\x63\x04\xbc\xc4\xdd\x19\x68\x38\x7a\x51\x6d\xe0\xed\x6d\x5c\x3f\x64\x3d\xaf\xc3\x5d\x5d\xe3\x48\x57\x0d\x33\xaf\x84\x98\x2b\xc1\xd9\xa1\xa3\xe1\xa6\xc9\xb3\x10\xf8\x0e\x39\x6d\xb1\x12\x0e\x92\xa9\xf8\x0b\x0f\x36\x69\x3b\x1d\x12\xa5\xef\xbf\x2c\x51\xe6\xad\x98\x46\x90\x8c\x95\x76\xa1\xc9\xf0\x37\x89\x9d\x23\xa6\xe4\x96\xef\x3a\xb6\x10\xd6\x78\x2a\x53\xeb\x73\x1c\x9e\xd2\x03\x96\xa2\x0b\xb0\xef\x3c\x7e\x48\x22\xfd\x63\xce\x25\x59\x3b\x37\x6a\x43\x6d\x4b\x00\x85\x73\xfa\x37\x72\xb1\x09\x40\xa3\x2b\x06\x5e\x6c\x3f\x11\xfa\xdb\xcd\xd1\x15\x9e\xec\x82\x50\xb8\xe2\x9f\x6e\x66\xad\xce\x1f\x27\x93\xc9\xfb\x8e\xdd\xbf\x1f\x9e\x22\x0f\x1a\x49\x2a\xe0\x5a\x62\x95\x17\x44\x4a\x12\x37\x82\xbc\x06\xe0\xdd\xe7\xd5\x6a\xbe\x7c\xe7\xe3\x49\x58\x3a\x99\x82\x25\xd6\x49\x3d\x50\xc9\x1d\x47\xf1\x89\x04\x1e\x96\xc4\x94\xcc\x6d\x06\x3f\x45\x01\x9a\x0c\x57\xf9\xc9\xf5\x61\x72\xf2\x09\xbe\xa7\xff\x99\x19\x62\x86\xe4\x3e\x16\x6f\xd0\xf8\xf4\x7e\xf5\xe5\x79\xb6\x7e\x9c\x3e\xcc\x96\xf3\xe9\xfd\x2c\x42\xda\xfb\xce\x7f\x35\xaa\xec\x52\xb6\xe5\x24\xf2\x05\x6d\xbb\xd6\xc6\x3e\xaf\xf9\x3c\xee\xf8\xf4\x74\x77\xf5\xea\xce\x17\x4f\x0f\xb3\xd5\xe7\xd9\xb7\xe5\x7a\x39\x5b\x3c\x7f\xb9\x9f\xad\xbf\x2d\xbe\x46\x90\x97\x96\xd5\x71\x77\x9e\xdd\x7f\x9d\xa6\xb3\x7a\xd8\xd9\x78\x1c\xad\xda\xa1\xbd\x35\x84\x95\xf9\x4d\xdc\xe9\xe3\x38\x96\xff\x50\xa5\x9f\x7c\x5a\x82\x67\xe7\x19\xd2\x59\x8f\x24\xcf\xcc\x6c\xb1\xfe\x7d\xf6\xcb\x7a\xf1\xf4\xb4\xea\x37\x70\x43\xb8\xfd\x25\x0c\xb0\x57\xa2\x2a\xe9\xc1\x5f\x08\xb6\x2f\x87\x81\xf5\x14\x55\x2d\x7d\x56\x18\xf1\xe0\x26\x4b\x2e\xe1\x91\x71\x37\x60\xc8\xb8\x4b\xd9\x96\x98\xa1\x1b\xf9\x21\x26\x5e\x90\x56\x55\x86\x91\xcd\x86\x89\x3f\xf9\x03\x4b\xe0\xd4\x1f\x58\x8a\x8b\x41\xdf\x81\xcb\x9c\xa4\x83\xf7\x93\x13\xad\x8d\x28\xfa\xc9\x8d\xbc\x9a\xfb\x65\x71\x15\x24\x9e\x4d\x98\x4c\x74\x3b\xde\x1e\x49\xb0\x3e\xa0\x8e\x5f\xc6\xfe\xe5\x75\x65\x1a\x81\xb8\x38\x3d\x58\xc2\x6d\x1f\xbe\x93\xae\x7e\x4d\x48\xe5\x6e\x2f\xb9\x08\x5e\x69\x7f\x02\x14\x19\xf8\xaf\xa2\x88\x85\xe0\x1e\xec\xf8\x4c\x01\xd7\x7b\xee\xbd\x13\x39\xda\x62\xa3\xd0\xe4\x69\x1b\x76\xb5\xa7\x60\xc4\xed\xd6\x2f\xdb\xc3\xb1\x4e\x7d\x5e\xc9\x44\x95\x13\x24\x52\xe5\x74\x0c\x48\x20\x6d\x67\xfb\x73\x8b\xdc\x49\xd0\x2a\x9f\x4a\xc7\xa7\x17\x73\xfe\x0d\x00\x00\xff\xff\x87\x4e\x01\xac\x26\x0c\x00\x00"), - }, - "/charts/istio-telemetry/kiali/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 252, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\xce\xb1\x0a\x83\x30\x10\xc6\xf1\x3d\x4f\xf1\xbd\x80\xa2\x1d\xb3\x76\x2f\xa5\x2d\xdd\xaf\xf1\xa0\xc1\x68\x8e\xcb\xe1\x22\xbe\x7b\x91\x2a\x0e\x8e\xf7\xc1\xef\xf8\x93\xc4\x37\x6b\x89\x79\xf4\x98\x5a\xd7\xc7\xb1\xf3\x78\xb2\x4e\x31\xb0\x1b\xd8\xa8\x23\x23\xef\x80\x91\x06\xf6\xe8\x23\xa5\xb8\x5d\x45\x28\xb0\xc7\x3c\xa3\x7e\x70\x62\x2a\x5c\xdf\xf6\x19\xcb\xe2\x80\x44\x1f\x4e\x65\xd5\x00\x89\x1c\x1c\xd0\xbf\x38\xf3\x55\x16\xe1\xb0\x2a\xc9\x6a\x1b\xaf\xb6\x80\xaf\x99\x54\xc7\x1b\x40\x34\x5b\x0e\x39\x79\xbc\xae\xf7\x7d\xcb\x6a\x1e\x97\xa6\x69\x5a\x07\x14\x4e\x1c\x2c\xeb\xa9\xe3\x17\x00\x00\xff\xff\x6e\xfd\xac\xfb\xfc\x00\x00\x00"), - }, - "/charts/istio-telemetry/kiali/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 323, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8e\x31\xce\x83\x30\x0c\x85\x77\x4e\xe1\x0b\x24\xd2\xbf\x66\xfb\x2f\x50\x55\x45\x62\x37\xc1\x45\x16\x26\x44\x49\x60\x89\xb8\x7b\x15\x42\x3b\x94\xa5\xe3\x7b\xd6\xf7\xf9\xa1\xe7\x8e\x42\xe4\xc5\x19\xd8\xfe\x9a\x89\xdd\x60\xa0\xa5\xb0\xb1\xa5\x7f\x6b\x97\xd5\xa5\x06\x20\x67\x05\xfc\x04\xdd\xa1\xac\x14\xf5\x28\x4b\x8f\xa2\x79\xc6\x91\xee\xab\x48\x4b\x36\x50\x8a\xb0\xef\xcd\x77\x67\x4e\x3a\xa0\x1b\xe9\x17\x81\x02\x87\x33\x19\xc8\x19\x74\xc9\x15\x27\x37\x5c\xc2\x4c\x09\x07\x4c\x58\x5e\x54\x66\x62\x14\x56\xb1\xae\x57\xf8\x99\x5f\xae\xd1\xa3\x3d\xb5\x0f\x12\xc2\x48\xfa\xf6\xae\xab\x5a\xb0\x27\x39\x06\x03\xa0\xf7\xa7\xee\x88\xa1\x12\x57\xbc\x90\xaf\x00\x00\x00\xff\xff\xab\xf2\x5d\x3e\x43\x01\x00\x00"), - }, - "/charts/istio-telemetry/kiali/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 2752, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x56\xcd\x6e\x1b\x37\x10\xbe\xeb\x29\x06\xd2\xd5\x52\xea\x1e\xf7\x96\x36\xfd\x71\xe3\x26\x45\x14\xa3\x28\x8a\x22\x19\x91\xb3\x5a\x56\x5c\xce\x96\x9c\x95\xbc\x28\x0a\xe4\x41\x9a\x97\xcb\x93\x14\x43\x72\xe5\x3a\x36\x02\x14\xe9\xc5\xf2\x92\x33\xdf\xfc\x7d\x33\xc3\xd5\x62\x05\x68\x2d\x07\x38\x38\xf4\x6e\xb1\x5a\xe4\xdf\x66\x01\x40\x01\x77\x9e\x6c\x03\x2d\xfa\x44\xb0\x82\x17\x2c\x04\xd2\xa1\x80\x6b\x61\x4c\x2e\xec\x41\x3a\x02\x4b\x3d\x03\xc7\xfc\xbb\xc6\x51\x3a\x98\xb0\xf7\x70\xea\x28\x80\x0b\x49\xd0\x7b\x15\x3d\x3a\x84\xef\xc9\xf7\x17\x20\x9d\x4b\x60\xa9\xc5\xd1\x0b\x9c\x9c\xf7\xb0\x23\x78\x2b\x71\xa4\xb7\x9b\x05\x40\xa4\xc1\x3b\x83\x5f\xf3\x18\xa4\x81\xcb\x05\x40\x37\xee\x1a\xb0\x6c\x0e\x14\x37\x8e\x9f\x14\x4f\x01\x04\xf7\x0d\x1c\x2f\x37\x97\x9b\x2f\x16\x00\x86\x83\xd0\xad\xfc\x84\xd2\x35\x50\x64\x60\x05\xaf\x3b\x82\xc8\x2c\xf3\x35\x0c\x28\x1d\x08\x03\x1a\x43\x29\xe5\x00\x9e\x67\xd9\x9b\x2b\x35\x1e\xd8\xd2\x96\x3c\x19\xe1\xd8\xc0\x9f\x7f\x2d\x16\x00\x2b\xd8\x0e\x64\x5c\x3b\x65\xe9\x81\x2d\x60\x10\xb7\xc6\xb6\x75\xc1\xc9\x54\x52\x82\xde\xf3\x29\xc1\xc4\xa3\xa2\x1b\x0e\x49\x22\xba\x00\xa7\xce\x99\x2e\xc3\xa6\x0c\x35\xf1\x18\x33\x86\x4b\x40\xde\xed\xdd\xce\x93\x6a\xec\x08\x92\xe9\xc8\x8e\x9e\x2c\xec\x30\x91\x05\x0e\xe0\x71\x47\x3e\xe9\x7f\x03\xdb\x54\x2d\x45\xca\x48\xe8\x23\xa1\x9d\x20\x8e\x21\x68\x82\x39\x64\xff\xd4\x14\x44\x94\x8e\xa2\xca\x87\xc7\xc0\xb2\x3b\x9b\x8c\xf2\xba\xa3\x48\x8a\x09\x66\x8c\x91\x82\xf8\x09\xe4\xc4\x20\xd3\x40\x09\xb8\xbd\x1f\x6b\x93\x75\x00\x60\x19\xe9\x8f\xd1\x45\xb2\xcf\xc6\xe8\xc2\x7e\x5b\x5c\x77\x61\x7f\xb5\x0f\x7c\x3e\xfe\xe6\x96\xcc\x28\x8e\xc3\xf2\xac\x37\x44\x6a\x29\xfe\x47\xc5\x92\x44\x4b\x41\x19\xf8\xe1\xdd\xdf\x1d\x46\xfb\xe1\xdd\x7b\x38\xa6\x8d\x7e\x26\x6e\x45\x3f\xab\x4f\x3d\x05\x49\x17\xb9\x14\x06\x83\x32\xcd\x05\x2a\x89\x3f\xa2\x1f\x6b\x21\x5c\x80\xe5\xc0\xf6\x69\x10\xf7\xb4\x46\x77\xad\x09\x9a\xab\xbf\x04\x0c\xf6\x81\xc8\x6b\x8a\xfd\x7d\xb1\x0c\x66\x38\x46\x4a\x03\x07\xeb\xc2\xde\x4f\x25\xb5\xdf\x72\x04\xba\xc5\x7e\xf0\x54\xf2\xf6\x29\x73\x45\x62\x0d\x07\x9a\x1a\x48\x64\xc6\xe8\x64\xaa\x59\xe3\x81\x22\x66\x42\x5e\x85\x7a\x54\x02\x69\x60\x7b\x79\xb1\xfd\xb2\x9e\x09\x0f\xec\x79\x3f\x3d\x57\x88\xe5\x61\xdc\x51\x0c\x24\x94\xb4\x67\x3a\x4e\x12\xb0\xa7\x65\x2d\xba\x4b\x8f\x10\x39\x8e\x9e\x20\xe1\x54\x89\x36\xb3\xbd\xa6\x35\x41\x60\xf9\x98\xaa\x19\x8e\x83\x36\x54\x61\x9e\x6b\x8b\x72\xf9\x48\x0f\x58\x8a\x19\xf2\xe4\xa4\x2b\x7c\x84\x0e\x8f\x7a\x7e\xa0\x12\xad\x96\xb3\x46\xaf\x25\xd5\x1a\xe4\x58\xf5\x62\x7b\xf9\xe1\xdd\x7b\xcd\xed\x27\x13\x09\xbf\xfe\xf6\x50\xe4\x41\xdd\xb2\xd8\x02\xc0\x85\x7d\xa4\x94\x34\xfd\x1f\x8f\xbc\x7c\xb4\x5a\xc1\x8d\xf6\x8f\x36\x75\x24\x14\x02\x0c\x70\x55\x94\x20\x92\xe1\x68\x37\x59\x50\x33\x5c\x61\x40\xeb\xa8\x43\x65\xe3\xd9\xa0\xcf\x67\x18\x02\x0b\x2a\xa5\xab\xd0\x0a\xee\x57\xa8\x3a\xb2\x31\x1e\x53\x6a\x20\xec\x5d\xb8\x7d\x54\x50\x7c\x5a\xa3\xe9\xa9\x81\xa5\xce\xcc\x65\x16\x12\x7f\x86\xdd\x92\x89\x24\x09\xfa\x31\x89\xd6\xaa\xc7\x30\xa2\xf7\x53\xf5\xdf\x2a\xf3\xf3\xa0\xc0\x9e\xd2\x80\x86\x36\x55\x71\xad\xbc\x8b\x24\x2f\x50\xc1\x73\x00\x6b\xf1\xa9\xde\xde\x8b\x70\xf5\x48\x94\x0b\x00\x8b\xa9\xdb\x31\x46\x5b\xa4\x1e\xc0\xc1\x0a\x7e\xe1\xb1\x78\x36\x67\xb3\x4a\x15\x4a\xe4\xd5\xa0\x8e\xc1\x1a\x38\x64\x02\x29\xe9\x86\xc8\x47\x67\x75\x8a\x8d\xb2\xe6\x76\xbd\xe3\xdb\xe2\xf4\x98\x28\xaa\x78\xa6\xfc\xfc\x31\x13\xdc\x95\xf1\x7e\xa0\xa9\x40\xaa\x85\x1a\xfb\x6c\xb3\xe3\x44\x95\x5f\x55\x1a\x8d\x8c\xe8\xcf\x58\xc5\xcc\x80\x29\x0d\x5d\xc4\x54\x0c\xdd\x7d\xfe\x1f\xa6\xee\xd0\x8a\xb1\xa3\xa3\xd3\xcb\xe0\xa7\x1f\xd9\xd2\xdd\xf2\xfd\xca\x05\x5b\xf1\xe2\xd1\x19\xd5\x36\xba\x21\xf3\x2e\x83\xc8\xbe\x18\x05\x0e\x7e\x02\x6d\xb9\xba\xe1\x32\xe4\x3e\x62\x8b\x01\x6f\x5e\x5d\x37\x5a\xbb\xab\x36\x0f\xc7\x0e\x8f\x04\xdf\x95\xab\x79\x53\x93\xcd\x2d\xe7\x24\xf7\x6e\x46\x98\x37\x94\xf1\x8e\x82\xc0\x2e\xf2\x29\x51\x4c\xba\xc7\x29\x40\x22\x29\x55\x13\x06\x27\x09\xe8\x56\x34\x73\x1e\x6e\x5e\x5d\x6f\xea\x6a\xcd\x3b\x3e\x92\x75\x91\x8c\xe4\xd4\x66\xf1\xac\x76\xf3\xea\xba\x3c\x15\x66\x47\x7a\x92\xe8\x4c\xca\x2b\xa9\x0e\x9b\x8e\x4f\xa1\xe4\xe6\x77\xa4\x3d\xc5\xc7\xe2\xf8\x21\xdf\x7c\x7e\x18\x43\xd4\x69\xab\x5b\xfd\x33\xe3\xa9\x0e\x49\x44\xa3\xf3\xad\x64\xe8\x2e\x9a\x3c\xec\x5e\x0e\x3a\x10\xd0\x37\x6a\xb6\x27\xe9\x68\x4c\xd0\xe3\xa4\x72\x96\x06\xcf\x53\x69\x57\x04\xeb\xda\x96\x74\x3d\xdf\xb5\xad\x0e\xb9\xb3\xd6\x8b\xf9\xb4\x29\xc8\x3f\xab\x0b\x3a\x1e\x2e\xfe\xdd\x61\xe5\xa9\x35\xcf\x81\xcc\x17\x3c\xbf\xc4\xce\xed\xa3\x99\x53\x52\x9e\x74\xb6\xe9\xf4\x6b\x47\x0f\x6d\x7d\xe1\xe5\x67\x43\x41\x78\x46\x3d\x97\x61\xd3\x64\x53\x6a\x79\x9e\xdd\x1f\xcd\xd3\x7c\xad\x27\x86\xa2\xbc\x69\x9d\xa7\xf9\x8d\xb6\xd6\x93\x27\xfa\x67\x6d\x3a\x74\x61\x33\x50\x5f\x7a\x2e\xba\x23\x0a\xbd\x39\xd0\xf4\x88\xc2\x81\xa6\x2c\xf9\x4f\x00\x00\x00\xff\xff\xfb\x40\xfd\x7c\xc0\x0a\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry": &vfsgen۰DirInfo{ - name: "mixer-telemetry", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - }, - "/charts/istio-telemetry/mixer-telemetry/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 279, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8d\xc1\x6e\xec\x20\x0c\x45\xf7\xfe\x0a\x34\xfb\xc0\x4b\x36\x4f\x83\xd4\xae\xfb\x05\xb3\xa7\xe0\x49\xac\x02\x46\xc6\x93\x4e\xfe\xbe\x4a\xd2\x56\xea\xc6\xb2\xce\x3d\x57\x37\x34\xba\xa1\x74\xe2\xea\xcd\x3a\x42\x0d\x05\xbd\x29\xf4\x44\x19\x14\x33\x16\x54\xd9\x60\xfd\x31\x46\x3b\xda\x7f\x10\x5a\xbb\xfd\x25\x4a\x39\xa3\xfc\xc2\xcb\xeb\xcb\x64\xff\xdb\xe9\x02\x09\x7b\x14\x6a\x7a\xe0\x37\xcc\xc5\xc4\x25\x88\x9a\x3b\xcb\xb9\x62\x12\xb6\xcc\x5b\xc1\xaa\xf0\x81\xdb\x27\x4b\xea\x1e\x8c\x19\x0c\x75\x25\x3e\xbe\x43\x84\xce\x0f\x89\xf8\x1d\x2e\xaa\xcd\x3b\x37\x93\x2e\x8f\x77\x1b\xb9\xb8\x43\x3f\x2f\x60\x9d\xa9\xa2\x37\x33\x6b\xcb\x40\x71\x1f\xdf\x1b\xdd\xbb\xd3\xb0\xc4\xee\x1e\xd6\x3d\xe9\x2e\xd4\x24\x4c\x69\x18\xaf\xd3\x73\xbc\x4e\xb6\xd5\x19\xbe\x02\x00\x00\xff\xff\x32\x18\x79\x96\x17\x01\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 12, 20, 54, 28, 739259109, time.UTC), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 3081, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\xda\x30\x10\xbd\xf3\x2b\x46\x88\x43\xbb\xda\x24\xf4\x1a\xa9\x07\xa4\xee\x61\xd5\xaa\xaa\xba\x55\xef\x26\x9e\x04\x0b\x63\xa7\x8e\x43\x41\x29\xff\xbd\xb2\x13\x82\x13\xf2\x05\x45\xbd\x45\x2f\xf3\xe5\x37\x6f\x66\x8a\x22\x78\x02\x12\xc7\x4c\x30\x7d\x04\x0f\x36\x5a\xa7\x59\x18\x04\xdb\x7c\x8d\x4a\xa0\xc6\xcc\x67\x32\xa0\x32\xca\x82\x48\x8a\x08\x53\x6d\x3f\x62\x96\xe4\x8a\x68\x26\x45\x40\xb2\x8c\x25\xc2\x4b\x25\xf5\x84\xa4\x18\xc0\x53\x70\x3a\xcd\x66\x45\xe1\x01\xc5\x98\x09\x84\xb9\xc1\xcf\x39\xe6\x70\x3a\xcd\x00\x0c\xb4\xaa\xa0\x70\x06\x00\xa0\xf0\x57\xce\x14\xd2\x4f\xb9\x62\x22\x79\x8b\x36\x48\x73\xce\x44\xf2\x9a\x08\x59\xc3\x2f\x07\x8c\x72\x93\xb6\xf4\x31\x49\x98\x88\x78\x4e\xab\x2c\xe7\x90\xdf\x7b\x82\xcd\xc1\x2f\xf3\x03\xa4\x0a\x63\x54\x8f\x4a\xf8\xad\x2f\x5a\x95\xd1\x38\xa2\xa0\xd0\x45\xcd\x78\xd1\x55\xc9\x25\x6d\x6f\xc8\x31\xd2\x52\xfd\x40\xb5\xcb\xc2\xea\x87\x07\x3b\xa2\xa3\xcd\xcb\x21\x55\x98\x65\x4c\x8a\xfa\x8f\xf9\xb7\xc5\x63\x08\x6b\xd4\xc4\x6f\xf6\x95\xa8\x68\x53\x9b\x01\xc8\x14\x15\xd1\x52\x85\xf0\x2a\x1c\x78\x4f\x78\x8e\x4e\x3c\x53\xbf\x22\x22\x41\x58\x6c\xf1\xf8\x0c\x8b\x3d\xe1\x10\x7e\x04\xff\xa7\x35\xf4\x13\x2e\xd7\x84\xfb\x26\xf8\xa5\xf2\x9a\xbd\x18\x12\x0d\xef\xac\xcf\x1f\x60\x42\xbf\x87\x65\xd3\xca\x83\xa2\xb0\x91\xaf\x9d\x2b\x06\x47\xa0\x85\xcb\x92\x29\x8c\x62\x4c\x72\xae\xdb\x05\x56\xf0\x57\xd7\xfa\x6c\xb2\x63\x07\x54\xbe\x46\x8e\x3b\xd4\xea\xe8\x37\x42\x7a\xad\x84\x5d\x64\x34\x8b\x70\x1c\xaa\x6e\x74\xbe\x71\x62\x03\xce\x1c\x99\x54\xdd\x74\x4c\x91\xdb\x80\x64\x6d\xd0\x3b\xda\x3c\xd6\x60\x0f\x7e\x23\x4b\x36\x3a\xac\xcb\xb7\x16\x97\x47\x94\x43\x89\x22\xc2\xcb\x6b\xff\x9f\xb0\x3b\xb4\xd7\x90\xd8\x04\x82\x53\x49\x57\x42\xb3\x95\xbb\xed\x2a\x56\x06\xd4\xd5\xf2\xfa\x42\xd6\xc8\x47\x25\xd9\x72\x32\xeb\xa0\xe1\x68\x4b\x6e\x19\x85\x6e\x9b\xee\xaa\xa6\xe2\xe5\x9f\xb7\x75\x2b\xc9\x84\x85\xdd\x9a\xf6\xdb\x1e\x71\xc5\xce\xe3\xce\x40\x2b\xd3\xd8\x25\xe8\x9f\xd4\x89\x9a\x1a\x3d\x13\xce\xe0\x32\x41\xf1\xf0\x0c\x0b\xa6\x71\xe7\xce\xee\x3d\x2d\xf7\x80\xbb\xf0\x0d\x03\x6a\x66\xca\x54\xe0\x0f\x2c\xbc\xda\xe6\x0c\x75\x9e\x8e\xd2\xa4\x9c\xdb\xa6\xc1\xf5\x2c\xdb\x53\xb0\x27\x3c\x33\x0f\xcf\x52\xce\x34\xcc\x9f\xe7\x03\x21\x5c\xde\xcc\xba\xb3\x6b\xdc\x06\xe8\xb8\x4f\xfb\xd1\xeb\xd4\x01\x6a\x99\x4a\x2e\x93\xe3\xe7\x06\x2b\x0e\x3a\x2c\x90\x21\x55\x8c\x6d\xf3\x47\xc8\xa2\x77\x88\x3c\xbb\x67\x1c\xab\x4b\x1f\x7a\x34\x33\xa4\x9a\x09\xba\xb9\x41\x39\x13\xb4\xd3\xa5\x9e\x3b\xf4\x33\x59\x41\x3d\x1a\xea\x51\x51\x27\x3c\x59\x49\x50\x9f\xdc\x0f\xcb\xe5\x80\xb6\xfe\x06\x00\x00\xff\xff\xde\xfa\x2c\x9d\x09\x0c\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/autoscale.yaml": &vfsgen۰CompressedFileInfo{ - name: "autoscale.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 648, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x92\xcd\x6a\xeb\x30\x10\x85\xf7\x7e\x8a\x79\x01\x3b\xe4\x2e\xbd\x0b\xdc\xc5\xdd\xdc\x52\x4c\x9b\xfd\x44\x3e\x09\x43\x65\x49\x48\xe3\x90\xc4\xe4\xdd\x8b\x22\x3b\x14\x42\x5a\xba\xf3\xfc\x9c\x33\xc7\x1f\x9a\xa6\x9a\x64\x4f\xcd\x96\xed\x88\xd4\x0c\x72\x42\x6c\x14\x16\x03\x34\x9e\x1b\x1e\xd5\x27\xc3\x16\xff\xc5\xd1\xf5\x5a\x71\x90\x2d\x62\x12\xef\x5a\x5a\x66\xe2\x0e\xab\xe3\x9f\x1d\x94\xd7\xd5\x87\xb8\xbe\xa5\x7f\x3e\xca\xc5\x3b\x65\xfb\xea\xfb\xcd\x62\x11\xab\x01\xca\x3d\x2b\xb7\x15\x91\xe3\x01\x2d\x49\x52\xf1\xf5\xfd\xde\xdc\x4f\x81\x0d\x5a\x9a\x26\x6a\x3a\x58\x70\x42\xf3\xb2\xb4\x73\x0a\x22\xcb\x3b\xd8\x94\x7d\x88\x62\x59\x79\xdc\x2f\xab\x44\x1c\xc2\xe3\xa5\x14\x60\x8a\x7e\xe0\x53\x87\x60\xc5\x70\x2a\x1e\x3f\xb2\xe0\xd3\x62\x3d\x88\xfb\xa5\xb6\x70\xcc\xda\x5b\xfd\xc6\xf1\x00\xed\xb0\x2f\x59\x72\xd8\x2f\x84\x43\x48\xab\xe3\x7a\x9e\x14\xb6\x7f\x11\xac\x3f\x0f\x70\x3a\xb7\x9f\x81\x24\xca\x5f\x62\x66\x4a\x35\xe9\x39\xa0\xa5\x0e\xc9\x8f\xd1\x60\x56\xc7\xb9\x5c\xce\x2f\x7e\x26\x8c\xf7\x8e\xde\x32\x6e\x8e\x88\x7c\xc0\xbb\x8a\x95\x0b\xeb\x2d\xe0\x37\x7f\x6c\xc2\xd8\x3c\x13\x66\x02\x75\x5d\x57\xf9\xf1\xc1\xf5\xb9\xfc\x0c\x00\x00\xff\xff\xcf\xd6\x49\x96\x88\x02\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 5, 22, 39, 54, 493476534, time.UTC), - uncompressedSize: 696, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x92\x3f\x8f\xdb\x30\x0c\xc5\x77\x7d\x0a\xc2\xdd\x8a\xda\x45\xb7\xc2\xeb\x15\xe8\xd6\x21\x43\x97\x22\x03\x23\xbf\xbb\x23\x4e\x96\x04\x52\x4e\xd3\x06\xf9\xee\x85\xe4\x04\x45\xfe\x0c\x45\x27\xd2\x26\xdf\xef\x11\xcf\xe6\x2c\xdf\xa1\x26\x29\x8e\xa4\x3b\xf6\x03\x2f\xe5\x35\xa9\xfc\xe6\x22\x29\x0e\x6f\x9f\x6d\x90\xf4\x71\xff\xc9\xbd\x49\x9c\x46\x7a\x0a\x8b\x15\xe8\x26\x05\xb8\x19\x85\x27\x2e\x3c\x3a\xa2\xc8\x33\x46\x12\x2b\x92\xfa\x59\x0e\xd0\xfe\x78\xa4\x61\x83\x00\x36\x0c\xdf\x78\x86\x65\xf6\xa0\xd3\xc9\x11\x05\xde\x21\x58\x95\x11\x71\xce\x17\x5d\x41\xc0\x8c\xa2\xbf\xda\x40\x57\xed\x48\xb7\xa0\xca\xd0\x25\xc0\x46\xd7\x13\x67\xf9\xaa\x69\xc9\x36\xd2\x8f\xce\xa7\xf8\x2c\x2f\x43\xa3\x0d\x92\xba\x2d\xbd\x5b\xd1\xf4\xb4\xf9\x42\x3f\xb9\xf8\x57\xa8\xab\x68\x4b\x8b\x7a\x34\xd1\xfb\x6e\xeb\x88\xf6\xd0\xdd\xca\x50\x70\x41\xf7\x81\xba\x17\x94\x5a\x82\x58\xab\x4d\x5e\x9b\xdc\x9a\xed\xad\x39\x67\xc1\xa1\x20\xd6\x28\xed\x9c\x5b\x43\x5f\xb9\xf9\xc5\x4a\x9a\x2f\xaf\x26\x3c\x4b\x94\x1a\xb4\x5d\x5f\xf1\xd0\xfb\xce\xf2\x01\xbe\x25\x30\x73\xb6\x2a\x43\x9c\x72\x92\x58\xda\x43\x4e\x53\xab\x06\xdd\x8b\x47\xeb\xe3\xe5\xbb\x9c\x27\x5e\xb1\x2e\x2b\x72\x10\xdf\x7e\x01\x9f\x62\xd1\x14\x02\xf4\xbf\x6e\xfc\x9b\x49\x5d\xe2\x9c\xed\xfe\xea\xb3\x9b\x55\xf3\x7f\xb2\xe8\x7b\xf7\x27\x00\x00\xff\xff\x7f\x87\x4b\x7c\xb8\x02\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 437, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\xcf\x3d\x4e\xc4\x40\x0c\x05\xe0\x7e\x4e\xe1\x0b\x4c\x10\x1d\x4a\x07\x14\x74\x14\x8b\x44\xef\x4c\x1e\x60\x76\xfe\xe4\x71\x56\xc0\x6a\xef\x8e\x92\x00\xc5\x06\xa8\x6d\x7f\x7e\x8f\xab\x3c\x42\x9b\x94\xdc\x93\x0e\x1c\x3a\x9e\xec\xa5\xa8\x7c\xb0\x49\xc9\xdd\xfe\xaa\x75\x52\x2e\x0e\x97\x6e\x2f\x79\xec\xe9\x36\x4e\xcd\xa0\xbb\x12\x71\x23\x79\x94\xfc\xec\x12\x8c\x47\x36\xee\x1d\x51\xe6\x84\x9e\xa4\x99\x14\x9f\xe4\x0d\xea\x79\x4c\x92\xbd\x96\x08\x3f\xac\x07\xfe\x78\xa4\x6e\x87\x08\x6e\xe8\xee\x39\xa1\x55\x0e\xa0\xd3\xc9\x11\x45\x1e\x10\xdb\x2c\x11\x71\xad\xdf\x94\x21\x22\xc1\xf4\x7d\x19\xe8\x7a\xdb\xd3\x39\x34\x1b\xf3\xa7\x1d\x9e\x66\x82\xab\xdc\x69\x99\xea\x3f\xc5\x1c\xd1\xa6\xd7\xaf\x35\xfe\xcc\xdc\xa6\xe1\x15\xc1\x96\xcc\xfe\x0b\x7b\x80\x1e\x24\xe0\x3a\x84\x32\x65\x5b\x32\x6f\xc5\xb6\x2e\x79\x3e\xdb\x5a\xe4\x6d\xb7\x9f\x87\xde\x7b\xf7\x19\x00\x00\xff\xff\x79\x0e\x57\xcb\xb5\x01\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/config.yaml": &vfsgen۰CompressedFileInfo{ - name: "config.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 29, 275393070, time.UTC), - uncompressedSize: 34529, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x3d\x6d\x6f\xdc\x36\xd2\xdf\xf3\x2b\x88\xcd\x83\xc6\x29\xbc\xca\x3a\x4f\x7b\x77\x58\xa0\x1f\x9c\xd8\xb9\xdb\xbb\x26\x36\xbc\x9b\x1e\x70\x45\x21\x70\xa5\xd9\x5d\xc2\x5a\x52\x25\x29\xdb\x9b\x38\xf7\xdb\x0f\xa4\x28\x89\x92\xa8\x97\xf5\x39\xb5\x9d\x53\x5b\xb8\x36\x35\x33\xa4\x86\xf3\xc6\x19\x8a\xc4\x31\xf9\x05\xb8\x20\x8c\x4e\xd1\x28\x60\x74\x45\xd6\x1e\x11\x92\x30\x8f\xb0\x57\x57\x47\x38\x8a\x37\xf8\xf5\xe8\xd9\x25\xa1\xe1\x14\x61\x29\x39\x59\x26\x12\xb6\x98\x92\x15\x08\xf9\x6c\x0b\x12\x87\x58\xe2\xe9\x33\x84\x28\xde\xc2\x14\x69\xe4\x98\xb3\x9b\x9d\x69\x12\x31\x0e\x60\x8a\x3e\x7f\x46\xde\x05\x44\x80\x05\x78\x1f\xb2\x66\xf4\xe5\xcb\x33\x84\x22\xbc\x84\x48\x28\x12\x08\xe1\x38\x36\x34\xc6\x12\x22\xd8\x82\xe4\x3b\xfd\x80\xa7\xb8\x75\x42\x8a\x86\x88\x21\x50\xf8\xf9\x00\x0d\x35\xc6\xc9\x9a\x50\x8f\xc4\xe9\x9f\x08\x5d\xe1\x28\x81\xc5\x2e\x86\x29\x9a\x9d\xfb\xc7\x27\x27\x17\xa7\xf3\xb9\x0d\x9a\x90\xd0\x01\x3b\x5f\x5c\xcc\x3e\xfc\xb5\x04\x27\x80\xb7\x03\x72\xf8\x3d\x01\x21\xbd\x0d\xe0\x10\xb8\x68\x04\xf6\xdf\x1f\x9f\x97\x10\xba\x46\x90\x13\x66\x42\xf6\x83\xdc\x82\xdc\xb0\x9e\x54\x63\x2c\x37\xfd\x20\x13\x1e\xf9\xfd\xa1\x7f\x4f\x80\xef\xfc\x18\x73\xbc\xdd\x83\x17\x1c\xb0\x60\xb4\x5f\x0f\x1c\x56\xc0\xfb\xce\x8a\x08\x36\xb0\x85\x7e\xb0\x92\x49\x1c\xf9\x82\x7c\x72\xc1\xcf\x3e\x2c\xfe\xf4\x43\x99\x74\x5f\x40\x49\x9c\x23\x58\xcc\xde\x9f\xce\x17\xc7\xef\xcb\x9c\x50\x02\x87\xd7\x40\x3b\xa7\x5c\xc4\x8c\x0a\xf0\x02\x16\x76\x8d\xc2\x40\x86\x09\xc7\x92\x38\xb9\x7c\xf2\xf1\xe2\x78\x31\x3b\xfb\x50\x46\xd8\x43\xa2\x0d\x46\x6f\x0e\x1a\xf8\xfe\x90\x3d\x79\x68\xa0\xd7\x3c\x0e\x7c\x21\xb1\x4c\x9a\x47\xef\xc0\xd8\x82\x10\x78\xdd\x21\x2d\x82\x25\x3c\x80\x6e\x03\x92\xc1\x29\x03\x82\x9e\xa3\x93\xd3\xf3\x8b\xd3\xb7\xc7\x8b\xd3\x93\x3e\x58\x31\x27\x34\x20\x31\x8e\xda\xfb\x08\x41\x48\x42\xf5\xac\x76\x0f\xc8\x06\xbe\x03\xfd\x98\x71\x97\x4c\x16\x73\x15\x30\x4a\x21\xd0\xb0\x70\xd5\x29\xc0\x16\x74\xd7\xc0\x2d\x50\x0e\x01\x90\x2b\x08\xbd\xe5\x2e\x37\xfe\xdd\xc3\x29\x63\xf9\x5a\x4a\xfb\xe2\x0a\xa0\x72\xbf\xde\x0a\x8c\xfd\x7a\xea\xab\x9f\x16\xca\x56\x46\xae\x61\xbd\x39\x3b\xfb\xb9\xce\x03\x6d\x5f\x20\xf4\x05\xf0\x2b\xe0\xbe\x76\xe3\x5d\x7c\x97\x70\x23\xbd\x98\x33\xc9\x02\xd6\x21\x2b\x16\xf4\xcd\xce\x07\xce\x19\xf7\x1b\x8c\x93\x03\x4b\xe9\xb7\x90\x78\xeb\xf2\xe0\x65\x25\xb7\x31\x3a\x81\x9f\xa3\x13\x88\x39\x04\x58\x42\x78\x88\x2e\x21\x96\x68\xc5\x38\x0a\xd8\x36\xc6\x92\x2c\x49\x44\xe4\xae\x44\x95\x83\x92\x73\xe0\x5e\xc4\x02\xe7\xd4\xd9\xbc\x2d\x63\xe8\xd8\xa9\xd7\xcb\xe6\x28\x9d\x3a\x8b\x63\xe2\xa9\xf9\x22\x41\x07\x1f\x15\xe0\x95\x09\xf0\x3a\x01\x59\x0c\x8d\xa2\x56\x01\xed\x37\xf7\x99\xf3\xc2\x89\xdc\xf4\xb5\x2d\x25\x1c\x9c\x84\x04\x68\xe0\x54\xb2\xe6\x7e\x40\xa9\x5a\xdf\x48\x40\xe3\x04\x11\x26\xfb\xc4\x25\x1a\x89\xe3\x6b\xbf\x03\xb1\x8c\x14\x13\xff\x12\x76\x1d\xc0\x4b\x1c\x78\x31\xf0\x2d\x11\x82\x5c\x81\x97\x79\xa2\x1e\x3a\x53\x45\x85\xd5\x4a\x29\xf9\x15\xf8\x31\x8b\x48\xb0\xf3\x3b\x0d\xea\x06\x82\x4b\xaf\x55\x45\x2d\x0b\x65\x01\xf7\x72\x90\x29\x42\x80\x83\x0d\xf8\x1b\xe2\x72\x03\xb9\x0e\xfd\x9e\x30\x89\xbb\x41\x9f\x8d\xc7\xe3\x67\xf7\xbe\x82\xb9\x4c\x96\xc0\x29\x48\x10\x8f\x60\x05\x63\xfc\x7e\x9f\x15\x8c\x01\xb5\xc7\xd2\x26\xca\x06\xdc\x7e\xff\x5e\x08\xdd\xfe\xc1\x02\x4c\x59\xd7\x07\x9a\x5d\xd3\x2e\x8d\x35\x90\xc6\xee\x1d\x07\x01\x4b\xba\xa2\x89\x32\x4a\x87\x9e\x1a\xe0\x6b\xc6\x2f\x23\x86\xc3\xde\xa1\x5c\x8e\xd0\x9b\x35\x25\x8c\x1e\x3c\xb2\xe3\xad\x3e\xa2\x60\xc3\xf7\x95\x07\x1b\xa7\xbf\x50\xd8\x58\x3d\xa6\xd0\x06\xef\xe6\x96\x0d\xad\x7c\x24\x26\x14\xf8\x9e\x78\x77\xe0\xb0\x91\x96\xfd\x22\xe7\x0c\x69\xbf\xd1\xd9\x58\x77\x1c\x65\x77\x1a\xc0\x81\xd5\x4b\x79\x6c\xbc\xfe\x4a\xe1\xc4\xda\x8f\x2b\xfb\xa8\x87\x72\x01\x9f\x3f\x8f\x11\x59\x21\xef\x17\xf5\x54\x78\x5b\x72\x03\xdc\xc3\x21\x8e\x25\x70\xe1\x09\x19\x12\xe6\x01\xc5\xcb\x08\x42\x65\x6b\xf7\xf2\x18\x1b\x4c\xc3\x08\xb8\xc3\x4f\x68\xba\x0f\xe0\x22\x54\x90\x4a\x22\x08\x8f\xd3\x17\x2c\x06\x62\x27\x57\x58\x22\xe3\x44\x1e\x8b\xbf\x0b\xf5\x96\x8a\x5c\x1b\x73\x6c\x68\xd5\xd5\xde\x7e\x95\x50\x21\x31\x0d\xc0\xc1\x26\x1c\x04\x20\x44\xc4\xd6\x0f\xc8\xaa\x05\x6c\xe3\x08\x4b\x98\xa2\x88\xad\x81\xa6\x34\x6c\x76\x09\xb8\x02\x4e\xe4\x6e\x8a\x5e\x8c\x66\x74\xc5\x46\x2f\x74\x73\xb1\xfa\x28\x25\x6d\x9e\xa5\xa2\xc8\x89\x12\xa9\xdc\xb4\xa6\xb6\x7d\x16\x4f\x0b\xa7\x8d\x6e\x11\x89\x0f\x46\x13\x4f\xff\x3b\x7a\x59\x82\x3c\x8e\x0b\xd0\xf4\x95\x7f\x1d\xe1\x38\x1e\xfd\x86\x6e\xd1\x68\x54\x02\x3d\xcf\x43\xe7\x5a\x22\xa0\x0e\xfc\x21\x95\xce\xc2\x09\xd7\x41\xfe\x69\x14\x6c\xea\x74\x48\x6e\x92\x66\xde\xaa\xce\xbd\x0e\x7c\xa6\xdd\x40\xc9\xaf\xdb\x40\x96\xa2\x6b\x0e\xd4\x7d\x95\x83\x0d\x16\xd0\xac\x82\xd3\xc8\x65\x0b\x68\x9e\x5a\xbd\xbf\x29\x53\xd9\x68\x44\x1b\xfa\x2b\x78\xd5\x68\xa2\x1a\x30\xd3\x89\xa8\x3a\xa3\x16\x60\xc3\x62\xa7\xfb\x6a\x40\x33\xcc\xae\xb9\xe1\x06\x70\x4b\x90\x9c\x69\x1f\x1b\x0d\xc7\xe4\x6d\xba\xba\x69\x5a\xf6\x54\xa0\xff\x01\xbb\x69\x75\xb1\x83\x6e\xab\x89\xf0\x5f\x47\x37\x63\x1c\x93\xf1\x25\xec\xca\x73\x9c\x2f\x29\x2b\x49\x5a\x74\x5b\xcb\x38\x28\xb4\x8d\x94\x71\x86\x6a\x12\xdc\x95\x84\xb7\x4d\x3c\xe1\x16\xdd\x18\xcb\x8d\xfd\x30\x5b\x63\xbd\x55\x6b\x9e\x72\x0a\x15\xdd\xa2\x49\x05\xea\x5d\x84\xd7\x62\xda\x98\xd7\x70\x11\x9e\x93\x4f\x36\x61\x41\x3e\xd9\x84\x8b\x25\xdb\x45\x79\x20\x6d\x4b\x41\xd5\x0d\x65\x14\x46\x8d\x44\xce\xf5\xa2\x6f\x76\x52\x27\xe4\x58\x18\x56\xc9\x19\x56\x65\x03\x2f\x32\xdb\x25\x86\xe8\xe6\x99\xc5\x78\x6b\x8e\x4d\xd3\x98\x84\xe5\x69\x0e\x22\x02\x54\x2e\x38\x0e\xa0\x01\x33\x85\x18\x4b\x05\x52\x43\x57\x66\x9c\x06\xbb\x69\x3d\x7f\xad\xa0\x26\x5b\x91\xf7\x93\xe7\xb8\x7c\x01\x41\xa2\xac\xbb\x79\x5d\x3d\x77\x21\x51\x8f\x70\x74\x70\xe0\x4c\xd8\x28\x62\x84\x2e\x59\x42\xc3\xd1\x4b\xf4\xd3\x4f\x68\xc4\x12\x99\xfe\x79\x88\x46\x09\xbd\xa4\xec\x9a\x8e\x0e\x4b\x94\x2a\x09\x38\x74\x8b\x56\x38\x12\x70\x88\x46\xdb\x44\x26\x38\xf2\x65\x24\x14\xb6\xe6\xf3\xcb\x97\x65\x2e\x42\x38\xd7\xf9\xb7\xd4\x68\x74\x25\xe8\x4a\xa2\x2d\x80\x1f\xeb\xca\x40\xbd\x58\xe0\x12\xc6\x85\xed\xd4\xac\x34\x7a\x0e\x96\x26\x45\xdf\xe8\xdc\xa6\xa3\x08\x62\x49\x80\x00\x2a\x73\xb8\x5a\xae\xbf\x24\x2a\x69\x6d\xa6\x5a\xac\xb1\xc7\xa7\x14\xfa\x38\x91\x1b\x96\x3a\xe2\x9a\x60\x4c\x71\xf6\x50\x4b\x84\x5d\x06\xb3\xc9\xdc\xbc\x63\xfc\x1a\xf3\x10\xc2\x77\x8c\x3b\xe5\x6b\x95\x01\xa8\xdf\x52\xe9\xca\x7c\x47\x3e\xdc\x54\x14\xfe\x7b\x49\x49\xbd\xa0\xfa\xcd\xb2\xb7\xb9\x8b\x5a\xf3\x38\x98\xa7\xe5\x08\x67\x91\xc2\x7e\x2f\xd5\xfc\xde\xe4\x59\xdc\xf5\x89\x02\x7a\xcb\x28\x91\x8c\x43\xe8\x73\x48\x47\xe0\x4b\x1d\x34\xbf\x18\xad\x23\xb6\xc4\xd1\xe8\xc5\xbd\xc6\x78\x32\x88\xbf\x91\x30\xcf\xce\x22\xa3\xdb\xe2\xc9\xc1\xe8\xf5\xe4\xe8\xcf\xe3\xc9\xd1\x78\x72\xb4\x98\x4c\xa6\xfa\xbf\x7f\x99\x89\xac\x85\x82\x85\xfa\x9e\xea\x8a\x47\xad\x06\x52\x8f\x9a\x86\xb8\x71\x88\x1b\xbf\x8d\xb8\xb1\x88\xe3\x5c\x61\x9b\x0c\xe2\xba\x87\x3e\xc9\x4a\x5c\xae\xba\xd7\xff\xaa\x5f\xaf\x38\xe2\xc6\xba\xa5\xdb\x1f\x3b\x0b\x8f\x16\xa8\x76\xd3\x17\x3d\xbb\x48\x0b\x96\x55\xec\x79\x47\x6f\x35\xac\x3f\xca\xad\xee\x1d\xa9\x7f\x15\x7f\xc9\x93\xc8\xe5\x2b\x1f\x2a\x6d\xb4\xc5\x32\xd8\x38\x74\x52\xb1\x56\xaf\xa5\xd0\xad\x63\xa1\xa5\x9e\xaa\x18\x43\xf1\x09\xeb\x09\xd6\x83\x19\x67\x79\xb1\xe2\x7d\x50\x1e\x20\x98\xe1\x8e\xad\xd4\xcf\xbd\x32\x4f\x06\xf1\x23\xe3\x9f\x31\x6a\x7b\x33\xa8\x14\x37\x7d\xfe\x3c\x46\x40\xc3\x2c\xff\xd6\x9e\xd4\x8c\x39\x53\x8b\x5c\x48\xc4\x9d\x33\x9b\x2d\xf1\x9c\xb1\x4d\x3a\x47\xfc\x28\xe2\x39\x45\x80\x04\x95\x68\x4e\x27\x83\xa7\x68\x74\x94\x2a\x71\x48\xb6\x40\x45\x36\x01\x7f\xa4\xbd\x31\x26\xe3\xba\x33\x3a\xca\xfc\x8b\x1b\xcf\xa7\xb5\x70\xa9\x9e\x09\x6f\x26\x13\xb7\x07\x7b\x6e\x24\xdc\x16\x4c\xba\x51\xb2\xed\x04\x55\x34\xd3\xee\x44\xb5\xb8\x66\xb1\xa9\x35\x30\xea\x41\xc1\x66\x58\x7b\xfd\xa0\x83\x60\xdc\x23\xbc\x69\x41\xc7\x9d\xf1\x68\x0b\x72\xce\x4e\x17\x81\xbe\x3c\xcd\xf6\x82\xb4\x06\xa9\xdd\xf8\xe9\xe6\x9f\xc6\x0a\xd5\x1e\x44\x1c\xb3\x52\xab\x75\x39\xc8\x19\xc3\xe3\x17\x31\xa4\xbd\xd9\xa4\x21\x13\x58\xa3\x61\xef\x98\xa8\xa5\xf3\x5e\x4f\xaa\x09\x3d\x7f\xd5\x1d\x27\x8c\xeb\x79\x36\xbf\xda\xd1\xdd\xd2\x75\x05\x99\x34\x8a\x25\xe1\x9d\x12\x76\x4f\x23\x2c\x6e\x09\xb4\x3e\x7e\x98\x9f\x9f\xbe\x9d\xbd\x9b\x9d\x9e\xdc\x73\x76\xc2\x08\x55\xb6\x9e\x78\xf4\x0e\xad\x3d\xb3\x39\xb8\xb9\xc1\xcd\x0d\x6e\x6e\x70\x73\x8f\xdb\xcd\xa1\xc1\xcf\x3d\x94\x9f\x13\xe4\x13\x3c\x01\x1f\xe7\x28\x29\x0e\xae\x6d\x70\x6d\x83\x6b\x1b\x5c\xdb\xe0\xda\x06\xd7\x56\x75\x6d\x29\x83\x9f\x88\x6f\x73\xed\xf3\x19\x9c\xdb\xe0\xdc\x06\xe7\x36\x38\xb7\xc1\xb9\x0d\xce\xad\xb6\x7b\x4a\xd7\xcb\xe1\x09\x14\xdb\xda\xb7\x15\x0c\x3e\x6e\xf0\x71\x83\x8f\x7b\xda\x3e\xee\x69\x18\xea\x3b\xb9\xc7\x87\xb4\xee\xd9\x86\xaa\xa7\x64\xe1\x1b\xf6\x99\x0d\x56\x7e\xb0\xf2\x83\x95\x1f\xac\xfc\x60\xe5\x4b\x56\xbe\x78\x41\xc1\x62\xa0\x4f\xc0\xd4\x0f\x3b\xe7\x06\x83\x3e\x18\xf4\x16\x83\xbe\xa7\x2d\x1e\x0c\xfa\xb7\x6a\xd0\x83\x88\x89\xc1\xa0\x0f\x06\x7d\x30\xe8\x83\x41\x1f\x0c\xfa\xe3\x35\xe8\xcd\xa7\xf5\x14\x1f\xcc\x3c\x86\x23\x7b\x4a\xa3\xb1\x0d\x79\x6a\xdd\xc5\xe9\x4d\x4c\xd2\xbd\xbf\xe9\x29\x0e\x99\x19\xb7\x1f\xef\x8a\xaf\x26\x47\xcd\x07\xfc\x58\x1f\x0a\x39\x91\xd1\x97\x2f\x23\xbb\xe7\xec\xd3\xa4\xf2\x96\xb2\xf4\x53\x3e\x33\x88\xcc\x6b\xfa\xf5\x8f\x85\xbc\xec\x99\xd7\xc2\x57\xf5\x4f\x3a\x5d\x6f\xcf\x3e\x7e\x58\x9c\x5e\x98\x36\xcd\xef\x54\x65\xb2\xf7\x1d\xe7\x8e\x2b\x6f\x28\xac\x75\xb5\x29\xb7\x51\xd5\x07\x99\x11\x6c\x6a\x2f\xd4\xb4\x0a\x61\x8c\x4e\xde\x5c\x31\x75\xce\xf6\xfa\x30\x5c\x06\xbb\xf5\xa1\x63\x40\x0e\x3b\xe9\x7c\x66\x4c\x4b\xdb\x33\x4d\xbd\x13\xa0\xdc\x7d\xb5\xf2\x69\x3d\xb0\xca\x88\xf5\x56\x6d\x14\xf2\xe6\xa6\xea\x64\x2b\x40\x56\x76\xcc\x81\x9a\x2d\xa3\x4b\x76\xfd\x6c\x17\xbd\x02\x66\x34\x14\xad\x52\x9c\x01\xef\x29\xc8\x27\xb3\xf9\xe2\x62\xf6\xe6\x63\x7e\x18\xef\x20\xcd\x83\x34\xdf\x8b\x34\x23\xb4\x4c\x82\x4b\x90\xb9\x10\x21\x04\x37\x71\x44\x02\x22\xfd\xda\x13\x84\xb4\x8b\x17\x53\xf4\xeb\xc4\x9b\x4c\x7e\x3c\x44\x13\x6f\x72\xa4\x7f\xbe\x4e\xff\xd0\x3f\x75\x4b\xda\xf0\xe3\x21\x3a\x3a\x44\xaf\xd5\xff\xd5\xaf\x93\xdf\x9c\x2a\xa4\xf3\xff\xad\x7a\x23\xc8\x27\x18\x74\x66\xd0\x99\x47\xac\x33\x8c\x02\x95\x04\x47\x6f\xea\x5a\x43\x93\xed\x3b\x42\x89\x84\xec\x19\xfa\x8b\xf5\x54\x04\x38\x82\x29\x3a\xb2\x9a\xd6\x9c\x5d\xcb\xcd\x3b\x1c\x48\xc6\xa7\xe8\x68\x52\xd1\x1a\x33\xee\x56\xb5\x29\x36\x34\x0e\x7a\x33\xe8\xcd\xa0\x37\x3a\xe5\xe6\x0b\xa0\xc6\xdd\xb4\x2d\x39\xac\x1d\x53\xc3\x8a\xe3\x1b\xd5\x9b\x4e\x59\x75\xea\x8a\x2d\x4b\xd9\xf6\x85\xde\xf2\x94\xef\x77\x18\x64\x6a\x90\x29\xb7\x4c\x59\x35\x01\x3f\xad\xf2\x76\xc8\x55\xad\x2a\x3c\x08\xd7\x20\x5c\x3d\x84\x2b\xad\x38\xf5\x17\xae\x14\x7e\x10\xae\x41\xb8\x8c\x70\xdd\xd7\x91\x5b\x31\x67\xdb\x8d\x94\x0f\x78\xe4\xd6\xc1\x5d\xcf\x2c\x7b\x89\xbe\xfb\x0e\x1d\x68\x2a\x07\x07\xce\xb3\x71\xc7\xa3\x97\x87\x68\x74\x99\x2c\x61\x1c\x73\xb6\x84\xef\xd3\x62\x89\xae\x7b\xf4\xc5\x3e\xcf\x33\xec\x25\xec\xc6\xf3\xc0\x4a\xb9\x7f\xc7\xa1\x60\x95\xc3\xb7\xac\x26\xeb\x04\x13\xab\xd5\x7c\x13\x67\x8b\x80\x6e\xba\x4f\x01\x78\x62\x47\xae\x75\xb1\xb8\xfc\xc5\x85\xd5\x92\xef\xd2\xbd\x67\xe6\x15\xea\xab\x82\x80\x47\xc8\x4a\x2d\xeb\x07\xae\x63\x6a\x29\xce\x0a\x88\x31\xa4\x75\xfe\x3b\xf3\xbc\xbe\x43\xee\xab\xb1\xf9\xc1\x36\x6c\xdc\x03\xa3\xf5\xd8\xef\x8d\xd3\x86\x13\x7b\x9d\x2e\x58\x5c\x81\x05\xf4\xea\x2b\x5c\x9d\x52\xa2\xff\x18\xea\xb1\xd5\x01\xd9\x25\xd9\xe7\xe8\x7a\x03\x14\xf1\x84\x52\x42\xd7\x68\xc5\xd9\x16\x69\x7e\x21\xce\x98\x3c\x44\x89\x00\x24\x37\x80\x56\x2c\x8a\xd8\xb5\x02\x49\x19\x83\xf0\x4a\x02\x47\x38\x0c\x55\x1b\x36\xb4\xc4\x6e\xbb\x54\x7e\x1b\x45\x84\x5e\x22\xc9\x10\xb6\x3a\xcf\x30\x57\x24\x02\x74\x45\xcc\xfd\x4b\xcf\x0d\xea\xff\xa1\x88\xa2\xb1\x40\xff\x7e\xa5\x27\xe8\x95\x01\xd6\x63\x79\x65\xe6\xee\x55\x41\x4c\xff\x9a\xc2\x94\xc8\x14\xcd\xe9\xf5\xbd\x68\xd4\x83\xc2\xe8\x0e\x97\xad\x35\xe8\xaa\x22\x8a\xa5\xe4\x6b\xa0\x0a\x42\x43\x3d\xc0\x45\x6b\x4e\xd5\xaa\xca\x81\xeb\x50\xd3\xfc\x86\xb6\x7b\xe3\x88\x0c\xe2\xc7\xc1\x94\x3b\x3b\xdc\xaf\xcc\xb7\xb6\xeb\x85\x0a\xb2\x8f\x61\x77\x5e\xe9\xf2\xc0\xb2\x15\x39\xc7\x42\x68\x43\xa1\xe2\x36\xc2\x21\x2c\xc6\x8e\xd4\x3b\x29\x63\xa0\x1e\x1b\x3d\xd4\x58\x66\x19\x94\x90\x62\x27\x5d\x42\xac\x8b\x4d\xcc\x73\xd2\x76\x78\x3c\x7a\x8e\x42\x58\xe1\x24\x92\xaa\x87\x84\xaa\xc1\x93\x15\x81\x10\x91\x58\x59\xa7\xb4\x27\x7b\x19\xa2\xbb\xb3\xf7\x2b\x95\xfa\x2c\xad\xb5\x18\xaf\x9c\x8c\xae\x5a\xcc\x97\x42\xf9\xeb\xbd\x21\x54\xd9\xc0\x9c\x13\xef\x48\x14\xe9\x57\xa5\x70\x6d\x4d\x60\x6a\x5a\x2d\x16\x28\x4f\x17\x26\x01\x84\xe6\x3a\x2b\x2f\x33\x84\x2c\x91\xe9\x95\x12\x42\x5b\x50\x9a\x0b\x08\x62\x2b\x74\xa6\x61\xb3\x29\x41\xe6\x72\x04\x8b\x5d\x9e\x62\x97\xa2\xe1\x65\x0b\x57\x16\xfa\x0d\xc7\xc1\x17\x4c\xaf\xa3\x18\xae\x94\xf6\x6d\x95\x36\x02\x96\x51\xd2\x36\x74\x8b\x60\x1b\xcb\xdd\x5c\x72\x42\xd7\xef\x71\x7c\x50\xea\x28\x15\xea\x6a\x4f\xce\x1d\x67\x16\x86\x91\x79\x1b\xad\xb4\xb5\xcc\xcc\x7f\x09\x2f\xbd\xad\xaf\x84\x93\x9f\x00\xef\xea\xa7\x72\x73\x5c\x09\x31\x5b\xb7\xe2\xf4\x61\xeb\x78\x4b\x37\xc9\x95\xa8\xe4\xab\xef\x16\xc6\x96\x6f\x94\x73\xa3\xf7\xea\xbd\x81\x6d\xf5\x0c\x40\x8d\x92\x2d\xed\xb9\x24\x95\x95\xa2\x51\x9c\x2a\x4a\xd5\x80\xec\x7a\xff\xfa\x96\x48\x07\x72\xbb\x88\xd9\x24\x2c\xf6\x55\x7b\x77\xb2\xcf\xc6\xad\x5c\xc5\x58\xa7\x92\x03\x74\xd3\xaa\x4e\x83\x4d\xa6\x59\x84\x6d\x0a\xb6\x1c\xdb\xd8\x6e\x61\x76\xec\xc2\x2c\x4b\xb4\x2b\x1d\xd3\x2a\xd6\xce\xdd\xb6\xee\xb9\x6d\x15\xf0\xc6\x5d\xbb\x6d\x84\xfa\x8f\xa8\x8d\xd1\x1d\x42\x5f\x59\x3a\xd8\x9e\x9b\x82\x54\xc8\x84\xd6\x9d\xf7\xff\x1b\xdf\x7d\x52\x74\x74\xe1\x0e\x7f\xea\xee\xf7\x8f\xf6\xe3\xfa\x0e\xcd\x2a\x7a\x63\x0a\xd5\x13\x57\x81\x67\xed\xb8\x4c\xaf\x08\x48\x37\xbc\x7a\x41\x94\x08\x09\xfc\x84\x6d\x31\xa1\xe9\x38\x2b\x6b\x2d\x03\x6e\x04\xfa\xad\x0e\x7d\x7e\x21\xc2\xdc\x3a\x3e\x07\x29\x95\xaf\x4c\x51\xe1\x46\xf9\xd3\x05\x4b\xc3\xad\x17\xdf\xbf\x30\xe4\xcc\x74\x20\x24\x39\x5e\xad\x48\x60\xef\x12\x75\x77\xa7\x74\x92\xb3\xe8\x3c\xc2\x14\xe6\x26\x83\x78\x5a\x2c\xec\x14\xa2\xea\xea\x67\xb8\x82\x28\x1b\x43\x16\xba\xd9\x57\xfc\xeb\xa2\xef\x52\x69\xdc\xd1\x8f\x93\xc9\x0f\xa6\xd5\xba\x6f\x1e\xa1\xad\x3e\x6f\x64\x36\x5f\xcc\xce\xfc\xf7\x1f\x17\x1f\x8f\x7f\xce\xc7\x05\x34\x34\x9d\x15\x2b\xd4\x73\x56\x5c\x23\xbe\x91\x32\x2e\x08\xa9\xbf\x5e\xbf\xc7\x37\x17\x26\xd1\x35\x45\x47\x93\x49\x7e\x3e\x8a\x0a\x57\xf3\x47\xe7\xc0\xdf\xe6\x14\x33\x38\x25\xad\xff\x09\x00\x00\xff\xff\xa2\xcb\xe8\xfb\xe1\x86\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/configmap-envoy.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap-envoy.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 10878, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5a\x5f\x6f\xdb\x38\x12\x7f\xf7\xa7\x20\x72\x07\x34\x69\x21\x4a\x4e\xdb\xeb\x45\xc0\x21\xe8\xa6\x3d\x5c\x1f\xae\x0d\xd2\xec\xbe\xd4\x3d\x82\xa6\xc6\x36\x2f\x94\xa8\x25\x29\x5f\x0c\x6f\xbe\xfb\x81\xa2\x64\xeb\xbf\xe5\xa4\x87\xc5\x2d\x32\x0f\x41\xcb\x3f\x33\xc3\x99\xe1\xf0\x37\x23\xd3\x94\xff\x02\x4a\x73\x99\x84\x68\x3d\x9d\xdc\xf1\x24\x0a\xd1\x95\x4c\x16\x7c\xf9\x4f\x9a\x4e\x62\x30\x34\xa2\x86\x86\x13\x84\x12\x1a\x83\x4e\x29\x83\x10\x6d\xb7\x08\xdf\x80\x00\xaa\x01\x7f\x2e\x87\xd1\xc3\x43\xb1\x2a\x44\x06\x04\xc4\x60\xd4\xc6\x83\x64\x2d\x37\x1e\xcb\x39\x4e\x10\x12\x74\x0e\x42\x5b\x76\x08\x29\xc7\xa1\xcd\xce\x72\x2a\xa5\xfe\x09\x7d\xbc\x4f\x05\x67\xdc\x88\x0d\x8a\x60\xc1\x13\x88\x90\x87\x62\xb9\x86\x08\x2d\x94\x8c\x11\xd7\x86\x4b\xdf\xfd\x4d\xb9\x90\xc6\x8f\x24\xbb\x03\x85\x27\x08\xe5\xd2\xf1\x86\xc6\x02\x9b\x38\x15\x21\xfa\xcd\xcb\x45\xd3\x28\xe6\x89\xd3\x02\x21\xca\x18\x68\x4d\x84\x5c\x92\x94\x9a\x55\x88\xfc\x08\xd6\x7e\x92\x09\x51\x2e\x88\x22\x05\x5a\x97\xeb\x11\xd2\x56\x80\x21\xad\xf1\xfd\x52\x34\x3d\x7f\x87\x03\x1c\xe0\x69\x65\x32\x95\xca\x90\x35\x15\x19\x84\x68\xfa\x36\x08\x82\x7c\x4e\x1b\x6a\x34\x71\x16\x2a\x59\x65\x1a\x08\x15\x82\x44\xb0\xa0\x99\x30\xc4\xd0\xa5\x0e\xd1\x82\x0a\x0d\xc5\x0a\xb7\x2b\x1f\x2f\x46\x3c\x64\xe8\x92\x38\xfb\x33\x91\x69\x03\x2a\xff\xdf\x4e\x01\x05\x4b\xb8\x0f\xd1\x8b\x7f\x15\xb3\x33\x7c\x7a\x8a\x5f\x5d\x9e\xce\x30\x7e\x75\x39\xc3\x7a\xcd\x66\x78\x37\x25\x24\xa3\xe2\xec\xf2\x6c\x86\xcf\x5e\x74\x08\x30\x2c\x25\xa9\x82\x05\xbf\x6f\xb3\x37\x2c\xcd\x59\xbf\xcc\x77\xcf\xfe\xf3\xea\xf2\xcf\x5d\x2c\x14\xe8\x54\x26\x1a\x08\x93\x51\x5b\x49\xa2\x7e\x3d\x25\xa7\xb3\x68\xfb\xfa\xe1\xec\xec\xf0\x7e\xc2\x04\xd5\xba\x97\xcb\xfd\x7d\x0f\x93\x95\x31\xa9\xb5\x7d\x42\x62\x9a\xd0\x25\x28\x22\xb8\x36\x90\x80\xea\x3d\x5e\xb9\xe0\xf4\xf2\x6f\x33\x7c\x86\x5f\x5e\xce\xb0\xe5\x62\x8f\x7c\x7a\x19\x7e\x23\xf8\x5b\x18\xf1\x25\x37\xe1\xf7\xef\x2f\x7f\xfb\x46\x66\xdf\x66\xdf\xe9\xfb\xf9\x4f\xec\x2a\xfa\x00\x1f\x17\x7f\xaf\xcc\x9e\xf5\x59\xb7\xad\x55\x9f\x32\x3f\x5a\xf2\xee\xf4\x45\x20\xf7\x1f\xff\xf1\x52\x77\x51\xcf\x19\x51\xa0\x65\xa6\x18\xec\xa2\xb8\x08\xc0\x4a\x54\x3b\xc5\x52\x25\x63\x30\x2b\xc8\x34\xc9\x43\x7f\xa7\x98\xd9\xa4\x10\xa2\xaf\xb7\xef\x6f\x3f\x5d\xed\x06\xad\xed\x80\x19\x62\x78\x0c\x32\x33\x21\x0a\xf0\xf9\xdb\x60\xbf\x49\xcc\x49\x2a\x05\x67\x9b\x10\xdd\x7c\xf9\xf9\xf3\x07\x72\xf3\xe5\xa7\x4f\x9f\x77\xd3\x2b\xa9\x4d\xe5\x5a\x7b\x03\x17\x1e\x59\xcd\x8c\x64\x52\x84\xe8\xf6\xea\xba\x36\x33\x98\x0c\xba\xd2\x41\xe3\xcc\x3c\x99\xcb\x2c\x89\xc8\x45\x70\x71\xbe\x3f\x1a\x57\x2c\xe3\x86\xcc\x15\xd0\xbb\x8a\xa1\x72\x5b\xac\x14\xe8\x95\x14\x51\x6d\xd4\x43\x31\xbd\x27\x85\x49\xb8\x4c\xac\x42\x41\x50\xa6\x9f\x92\xec\x9a\x14\x92\x88\x27\x4b\xa2\xe0\xd7\x0c\xac\x09\xfa\x16\x8e\x58\x60\x14\x07\x1d\xa2\xd7\xfd\x3e\x99\xe2\x20\xa8\xf8\xa4\x65\xf4\x94\xa7\xd0\x30\xb5\x4b\xcf\xd6\x1b\x7e\xcc\xef\x41\x61\xe7\x98\x3d\x0f\x63\xd2\x73\x52\x7a\x84\xc8\xb4\x38\xef\xf6\xa1\x69\x5b\x99\x19\xbc\xa4\x42\xc0\x06\x4f\xdf\x06\xd3\x8b\x31\x2c\xc6\x9e\xa4\x0c\xc9\x9b\x4f\x57\xb7\xe4\xc3\xe7\xaf\x93\x27\x38\x6f\xac\xfb\x8e\x70\xe0\x08\x17\xb6\x9c\xb8\x3f\x9b\xc8\xdf\x2a\x03\xf7\xa6\xaa\x26\x93\x71\x2c\x13\xd2\x33\x5b\x6c\x03\x65\xf8\x82\x33\x6a\xa0\x75\xc4\xca\x1c\x61\x2b\xba\x7f\x9c\xf7\xb4\xe0\x02\x9c\xef\x7c\x30\xcc\xb7\x3b\x74\xfe\xd7\xcb\x37\xe0\x14\xe2\xc6\x9e\x54\xf1\xb5\x65\x78\x07\x9b\x91\xec\xee\x60\xd3\xe2\xb3\xa6\x82\x47\xd4\x5a\xbe\xfb\x68\x08\x19\x65\x73\x56\x44\x18\x1d\x29\x46\x49\x69\x3c\xfb\xcf\x0e\xa5\xd7\xa0\xf8\x62\x43\x74\x36\xff\xb7\x8d\x31\x2a\x8c\x4b\xcd\x8d\x65\x1e\xd2\x29\x5f\x2c\x20\xf4\xfd\x22\x65\xba\x27\xdb\x4f\xb4\x6f\xf1\xd4\x2f\x36\xaf\x68\xbc\x14\x72\x4e\x05\x76\xe8\xa2\x0a\xd5\x7c\x4d\x1d\x66\xf2\xdc\x2d\xf0\x34\xa8\x35\x67\xe0\x51\xc6\x64\x96\x98\x49\xdf\xbd\x3c\x94\x0e\x2b\x69\xaf\xca\x1f\x8f\x51\xaa\xe9\xbf\x7a\x82\x9c\x5e\x4c\x4a\xad\xca\x47\xa8\xf5\x4c\x9c\x4c\xdf\x06\x17\xc1\xc9\xa4\xa9\x4b\x85\xf3\x13\x73\x79\x90\x67\xf2\x60\x28\x93\x5f\xec\x67\x17\x5c\x58\x1c\x96\x47\x68\x2d\xb9\xb9\x89\x86\x5d\xdd\x19\x1c\x68\xdd\x61\x00\x77\xeb\x4b\x24\x50\x93\x5b\x07\x8d\xfb\xd1\x08\x18\x71\x49\xe8\xfd\xcf\xb7\x5f\x1a\xd3\xf6\xf9\x2c\xf0\x44\x88\xea\x6f\xa9\x23\x25\x33\x7b\x0b\x3b\x79\x23\xb4\xe6\xca\x64\x54\x90\x56\x58\xd4\x0f\x31\xa7\xec\x0e\x92\xa8\x35\x8f\x50\x24\xe3\xba\x31\xaa\x9b\x5f\xbc\x7c\xd1\x31\x9e\x6b\xd4\xb3\x23\xa6\x86\xad\xba\xa6\x50\xee\x4f\x77\x4c\x3f\x3f\xa7\xbf\x07\x11\x9d\xeb\x73\x31\x7d\xac\x8a\x5b\x36\x80\x44\x1c\xe5\x7e\xeb\xf0\x2e\x6a\x79\x38\x17\xa7\x9a\x0f\x93\x8d\xe0\xe0\xcd\xa3\x23\xf8\x98\x38\x0d\xde\x3c\x32\x4e\x0f\xc7\xdd\x3f\x6e\x6f\xaf\xcf\x3b\x2c\xd3\xf1\xb2\xb6\xec\x5d\x3c\x77\x2c\x53\x0a\x12\x43\xb4\x51\x40\xe3\xfc\x9d\x7a\xf7\xfa\xdd\x9b\xe9\x5f\xcf\xdf\x34\xb6\x2c\x6d\x2a\xb0\x89\xbe\x78\xd3\x08\x8f\x42\x9b\x94\xe1\x28\xd7\xf4\x05\x3c\x42\x65\x15\x16\x81\x36\x3c\x71\x4f\x41\x91\x2e\xcb\x24\xb7\x2b\x78\x71\x5f\x6d\x6c\xeb\x2b\x5c\x4b\xd5\x1d\x92\x0a\xae\xc5\xe5\xeb\x8c\x78\xf4\x04\x89\x7d\xb1\x1d\x71\x4d\xe7\xc2\xbe\xbc\xc0\xee\x08\xa3\x42\xe8\x8a\x01\xb7\xdb\x93\xed\xf6\xe4\xe1\xc1\x43\x7c\x81\xf0\x07\xb7\xf6\x06\x6c\x30\x5d\xd9\xa5\x28\x9f\x3d\x69\xa5\xef\x26\x77\x95\x6f\x19\x60\x0f\x49\x74\x88\x57\x8e\xfa\x08\x35\x46\xf1\x79\x5f\x4e\x70\x34\x66\x8d\x75\xed\xce\xa5\xb8\x30\x3e\xb6\x99\x6d\x68\x8f\x4d\xa1\xca\xa2\xac\xe2\x26\xfd\xd0\x08\x18\x52\x2c\xe3\xd1\xd1\x7a\x85\xbe\xdf\xa7\x8f\x5f\xf0\xd5\x7e\xe3\x04\x47\xaa\xd5\x05\x4f\x8e\xb0\xd7\x23\xa4\xb9\x36\xd4\x11\x22\x07\x1a\x56\x63\x64\x1f\x69\xf8\xbb\x6c\x0e\x2a\x01\x1b\x7a\xd6\xfa\x2e\xbc\x11\xbe\x96\x51\xde\xdd\x2a\x43\xbc\x37\x50\x46\x6a\xf5\x48\x4b\x3c\x45\x24\x4f\x87\x65\xcd\x37\x06\xf4\x5e\x54\xe5\xe4\x9f\xae\x0f\x5d\xed\xa6\x2c\x9b\x2c\x86\xa5\xf1\xc4\xfc\xe5\x4d\xf7\x7b\xd6\xa6\x02\xbb\x63\x97\x85\x40\xe1\xbc\xd7\x79\x4c\xd8\xba\x6a\xfc\x18\x11\xbf\x7f\xdc\x18\x45\x13\xdd\x6f\xc9\x22\xe1\x97\xd0\xc6\x65\x57\x37\x68\xef\x5b\x03\x6e\x96\x54\x26\xf2\x72\x5b\x67\x9f\xa2\x24\x87\x6a\x72\xce\x63\xd0\x50\x43\xd2\x20\x14\xed\x06\x4c\x25\x1d\x04\xaa\x8f\x00\xa2\x45\x5f\xe6\x47\x26\xfc\x21\x6c\x1b\x01\x93\x8a\x1a\xa9\xfa\xa2\x48\xa6\x16\xf8\xe4\xdd\x7b\xf7\x20\x77\xae\x1b\x07\x91\x9f\x00\x89\x07\x03\xc0\x51\xa5\x13\x57\xeb\x95\x38\xaa\xd5\x24\x5d\x0e\x1d\x5b\x19\x6d\xb7\x0e\xa5\xb4\x2a\x4d\xa3\xa4\xb8\x16\x34\x81\xaf\xc0\x32\xc5\xcd\xe6\x63\x62\x41\x49\x54\xbf\x36\xbd\xfd\x8b\x43\xfd\x0d\x84\xa8\x48\x93\x1d\xb8\xed\x80\x97\xab\xa6\x65\x86\x5b\x22\x23\x9b\x22\x8f\x69\x8b\x1c\x68\x8c\x1c\xd1\x1a\x19\xd3\x1c\x19\x6e\x8f\x1c\xdd\x20\xb1\x10\x9f\x2b\x20\x4c\x70\x5b\x1c\x54\x4c\x54\x83\x94\x0e\x4c\x3e\xb4\xda\x7e\x27\x17\xc1\xc5\xf4\x7f\x5f\x5c\x59\x29\xcf\xb5\xd5\xa1\x43\xa1\xe7\xda\xea\xb9\xb6\x6a\xd2\x73\x6d\xf5\x5c\x5b\x0d\x48\x7b\xae\xad\x7e\x87\xda\xaa\xf6\x9c\xb5\xe9\xb9\xb4\xea\xd2\xf8\x8f\x50\x5a\xd5\xd1\x52\x49\xcf\x95\x55\x49\xff\x6f\x95\x55\xdb\x9f\x63\x0a\xab\x26\x86\xce\x0d\xee\x3e\x9b\x3f\x1d\x4a\x8f\xfa\x6d\x44\xe5\xfb\x7c\x0f\x9a\xee\xc1\xd3\xe8\x51\xdf\xd5\x50\xef\xb7\x35\x34\x02\x8b\xb7\xcd\xde\x30\xd5\x9e\xc6\xc2\x76\x34\x0e\xba\x77\xec\xdb\xff\xb8\xad\x9b\x6b\xdd\x38\xb6\x18\x23\xfb\x2d\x7d\xd1\xd9\x6b\x1a\x47\x95\x5f\xd1\x69\x13\xc9\xcc\x74\x29\x36\x54\x30\x74\xa9\x56\xff\x5a\x56\xa5\xe1\x4c\x86\x6a\x8d\x22\xeb\x86\xce\x25\x07\x72\x5a\x5d\xa3\xea\x87\xed\x6e\x76\x68\xf8\x43\xe7\x9e\xa1\xcd\x86\xbd\x0b\xfa\x33\xd8\x9e\xc1\x60\x0a\x2a\x69\x38\x15\xd5\xc4\x1d\x62\xb5\x4b\x4d\xbd\xbf\xa0\xe9\xa6\x66\x9a\xf2\x3c\x6f\xf2\xdf\x00\x00\x00\xff\xff\x51\x9e\x4f\x0b\x7e\x2a\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 6675, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x58\x4d\x6f\xe3\xbc\x11\xbe\xe7\x57\x10\xc6\x1e\x5a\xa0\x92\xec\x34\x5b\x6c\x04\xe4\x60\x24\xd9\x62\x17\x49\xd6\xc8\xc7\x02\x3d\x19\x8c\x34\x96\xb9\xa1\x48\x82\xa4\x94\xa8\xde\xfc\xf7\x82\xa2\x3e\xa8\x0f\xcb\xde\x16\xdb\xf7\xf5\x21\x88\xc8\x99\x67\x86\xc3\xe1\xf0\x19\x62\x41\xbe\x83\x54\x84\xb3\x10\x61\x21\x54\x90\x2f\x4e\x5e\x08\x8b\x43\x74\x05\x82\xf2\x22\x05\xa6\x4f\x52\xd0\x38\xc6\x1a\x87\x27\x08\x31\x9c\x42\x88\x88\xd2\x84\x7b\x1a\x28\xa4\xa0\x65\x51\x8d\x2b\x81\x23\x08\xd1\x6e\x87\xfc\x7b\xa0\x80\x15\xf8\x77\xf5\x30\x7a\x7f\x3f\x41\x88\xe2\x67\xa0\xca\xe0\x20\x63\xae\x06\x4a\xc9\x1b\xc8\x72\xb0\xfc\x0e\x51\x3b\x20\x2d\xd0\x10\xd5\x02\x22\x17\xc1\xd3\x85\x80\x10\xb5\x6e\x29\x01\x91\x31\x26\x41\x50\x12\x61\x65\x51\xbe\x63\x9a\x81\xf2\x4b\x15\xbf\x11\xf6\x2b\xa1\x4b\x9e\x31\x6d\xc1\x95\x96\x58\x43\x52\x58\x7f\x25\xa7\x94\xb0\xe4\x49\xc4\x58\x83\x1d\x42\x28\xc5\x6f\x0f\x99\x4c\x20\x44\x8b\x76\xe4\x89\xe1\x1c\x13\x8a\x9f\x29\x84\x68\x6e\x80\x80\x42\xa4\xb9\xb4\x5a\x29\xd6\xd1\xf6\xc6\x89\xc4\xc8\xb2\xa7\xd7\x85\x90\x86\x54\xd0\xc6\x0f\x77\x83\xcc\x8f\x76\xc0\xab\x50\xbb\xea\x7b\xad\x1e\xb2\x5b\xa2\x31\xc6\x35\xd6\x84\x33\xc7\x84\x22\x31\x44\x58\xfa\xa5\xba\x4f\x78\x40\xd8\x0f\x88\x74\x88\x66\x1b\x4c\x15\xcc\x4e\x76\x3b\x0f\xbd\x12\xbd\xdd\x1b\x7f\xc1\xe3\x65\x8b\x6c\x76\x60\xb7\x43\x9a\xff\x0b\xa7\x14\xf9\xe8\x27\x22\x2c\x06\xa6\xd1\x27\x3b\xe3\x21\x60\x71\x9d\x03\xf5\x3e\x97\xff\x83\xcc\x49\x04\xcb\x28\x32\x1b\x79\xe7\xa4\xab\x5d\x53\x35\xef\x61\x2b\x50\x69\xe5\x9c\x66\x29\x34\xeb\xf1\x3a\x79\x1e\x81\xd4\xaa\x5d\x29\x44\x12\x74\xbb\xf2\x7a\xc4\x31\xe5\x1f\x36\x68\x7e\x5c\x98\xa5\x62\x1a\x22\x2d\x33\xa8\x26\xcc\xd2\xc8\xa6\x89\x52\x42\xf9\x33\xa6\xbe\x8a\x95\x0f\xcc\x64\x54\xb3\x68\xe3\xe5\x96\x2b\xbd\xc2\x7a\xeb\x7a\x23\xcc\x37\x0a\x72\x2c\x03\x99\xb1\x40\xc5\xad\xeb\x76\x51\x2a\x56\x5e\x16\x2b\xcf\x08\x1e\x34\x9a\x29\x78\x94\x99\xd2\xaf\x5c\xea\x6d\xf1\xf5\x55\xbb\xe6\x3b\xc5\x80\xbf\x00\x6b\x2c\x09\xc9\xcd\xf6\x43\xdc\x89\x13\xcf\x64\x04\xca\x1d\xf2\x7a\xfb\xf5\x68\x50\x5c\x81\x32\xe1\xb2\x98\x00\xab\x4b\x4b\xd7\x47\x6d\x9c\xbb\xe2\x29\x26\xac\xf5\xac\xfe\xc1\x9b\x20\xb2\xcc\xa7\x07\x88\x38\x8b\x55\x88\xce\xfe\x7e\x3a\x9f\xf7\xc4\x6c\xc4\x86\xcb\xe8\x65\xd9\xc8\x40\x1d\x02\x13\x4e\xc5\xa3\x17\x68\xb7\x17\x52\xa1\x8b\x2b\x22\x43\xb4\xeb\x4b\x37\x39\xef\xe1\x18\x0b\x5d\xe6\x88\xc9\xa0\x23\x53\xec\xa0\xfa\x9e\xcc\x1a\x9a\x07\x96\xf3\xc2\x8b\x38\xdb\x90\xa4\xd1\xb6\x9f\xb7\x58\xb8\xf6\x8f\xd0\xc4\x9b\x0d\x61\x44\x17\xa1\x9b\x53\x2c\xa2\x59\x0c\x68\xc6\x78\x0c\xb5\xc0\xcc\x3d\xce\xff\xe8\x46\xb7\x51\x28\xab\x81\x26\xcb\xbd\x3a\xbd\x94\xed\x57\x13\xcd\x29\xc8\xb6\x94\x58\x0b\xce\x60\xe8\x56\x97\x23\x30\x86\xc6\x3b\x89\x10\x71\xa6\x31\x61\x20\x07\x25\xc4\x56\xd7\xca\xdb\x4a\x4c\xa1\x59\x30\xdb\x6b\x96\xa4\x38\x01\x37\x99\xcb\x81\x10\xcd\x26\x2e\xaf\x5a\xc7\xd6\x59\xa0\xea\x10\x40\x75\x7c\xb6\xd9\x33\x7a\x7f\x0f\x8e\x40\x0e\x47\xce\x1e\x4e\x5a\x93\x6e\x34\x2a\x8b\xab\x8c\xd2\x15\xa7\x24\x2a\xc6\x4e\x6e\x4f\x04\xfd\x44\x31\x6c\x70\x46\x35\x9a\x2d\xe9\x2b\x2e\xd4\xcc\x05\x14\x5c\x6a\xa7\x72\x78\x6d\xc4\x57\x5c\xea\x10\x2d\x3e\xce\x17\x67\xfb\xa7\xcf\x4e\xcf\x4e\x4f\xdb\xfb\x50\x26\xbd\x2a\xe4\x79\x29\x67\x44\x73\x49\x58\x62\x34\x2e\xba\x78\x56\x04\xc7\xb1\x04\xa5\x3a\xa3\x19\x23\x6f\x61\x10\x04\xe6\xf4\x07\x36\x76\x55\x21\x18\xaf\xa9\x94\x27\x09\x61\x89\x4f\x21\x07\xda\xad\x58\xc6\x04\xe5\xc9\x9a\x67\x5a\x64\x7a\x5d\x4a\x5c\x0c\xe3\x36\x40\xa8\xc2\x3f\x3c\x13\xad\xc2\x52\x7d\x55\x9c\x8d\x9b\xc3\x6a\xfd\x43\x71\xe6\xee\xe2\x38\x4e\xa6\xe0\xf6\x72\x55\x83\x8c\xcb\x98\xb0\x4b\x4e\x57\x14\x33\x78\x80\x28\x93\x44\x17\xd7\xf6\xde\x1a\x18\xb7\xd5\xe3\x41\x73\x09\x4f\xf7\x37\x17\x69\x24\xc2\x20\xa0\x3c\xc2\xd4\x5c\x6b\xa1\xd9\x81\xf3\xc6\x54\x3f\xa5\x27\x20\x6c\x21\x4f\x30\xa5\x50\xf8\xc3\xf8\x59\x1d\x97\x98\xfa\x2a\x8f\xc2\xf3\xf3\xf9\xa2\xb5\xd6\xc6\xe1\x28\xc3\x2f\x9f\x54\x18\x04\x63\x07\xc1\x15\xbf\xb2\xf9\xdd\x98\x1e\xd9\xdc\xe6\xdc\xf5\x88\x73\xfd\x1b\xad\x7a\xd5\x35\x50\x5e\xd6\x4b\xfb\xff\xe5\xfd\x95\x1a\xba\xd1\x9d\xbf\x70\xee\x86\xe9\x30\xf7\xf4\x4a\x46\xd7\x57\x1c\x5b\xb6\x21\x0f\x15\x51\xdd\xab\x38\xcc\x21\x2d\x71\x04\xd2\xff\x37\x11\x2f\x84\xf9\xd5\xa1\x1b\x82\x97\x62\x6b\x2b\xb5\xce\x24\xbd\xd8\x6a\x6d\xb6\xdf\x80\x1e\x89\x18\x60\x41\x82\x7c\x11\x28\x81\x99\x3a\x2a\x12\xfb\x8c\x56\xd0\x47\x6e\x68\x78\x7e\xb6\x58\x4c\x1a\xef\x46\x73\x74\xd7\x81\xe5\xae\x0c\xb0\x3c\xec\x28\x48\xcc\x12\x40\x1f\x5e\xa0\xf8\x1b\xfa\x90\x63\x8a\xc2\x8b\x69\x84\xfa\xc6\xda\xed\x4a\xad\xee\xe2\x73\xa3\x68\xaf\x90\x12\xcc\xd4\xfd\x03\x1e\xf7\x86\x24\x34\xfc\xef\xc0\xdd\xdd\x48\xf6\x9a\x80\x83\xe2\xcd\x25\xbd\x98\xf7\x8f\xef\x10\xa6\xda\xa0\xea\xd2\xb9\x9f\x04\xe9\xae\xc4\x36\x0b\xb7\x86\xaf\x0e\x17\x33\x5a\x2c\xd1\x81\x9e\x02\xa1\xd4\xa0\xad\x2c\x75\x07\x1d\x05\xfd\x79\x09\x38\xfe\xc6\x68\x51\x31\xba\x11\xaf\x26\xb8\x68\x17\xde\x4c\x0e\xb4\x8e\x20\x95\x2e\x46\xd3\x5d\x94\x42\x2a\x68\xda\xbe\x06\x27\xa8\x70\xf6\xaf\xa1\x1e\xa6\x24\x07\x06\x4a\xad\x24\x7f\x06\xf7\x5a\x36\x67\xeb\x9f\x5d\x1e\xdc\xb6\x37\xf6\xd5\xa2\x3b\x35\xc2\x04\x10\x32\xfc\x91\x60\x7a\x05\x14\x17\x4d\x1b\xf0\xd1\x6d\x98\x40\x12\x1e\x3b\x53\xa3\xfd\x8d\x90\xfc\xad\x98\xe4\x71\xd5\xce\x97\x82\x47\x91\xb8\x51\x85\xff\x9d\xc1\x8d\xc2\xfe\xc9\xe9\xdb\xf9\xfc\x7c\x31\x49\xee\xe6\x13\xe4\x6e\xf1\x71\x7e\xee\xf6\x74\x42\x72\xcd\x23\x4e\x43\xf4\x78\xb9\x1a\x34\x31\x26\xab\xaa\xfe\x45\x48\x9e\xee\x21\x85\x1e\xb2\x1b\xde\x7e\x7b\x5e\x5c\xb6\x99\xce\xd0\x87\xbf\xac\xbe\x5d\xad\xef\x96\xb7\xd7\x0f\xab\xe5\xe5\xf5\x5f\x0d\x91\x18\xb9\x03\xec\x4e\x44\x34\x53\x1a\xe4\xb0\x57\x35\xd0\x55\x17\x7c\x69\x65\x9c\xa9\xe1\x4b\x5b\xab\x54\x3f\x02\x7d\x26\x14\x9c\x89\xf2\x70\x52\xf2\x1c\x94\x8b\xb4\x7f\xfd\x02\xa7\xd4\xd7\xa9\xa0\x93\x1d\xff\x04\x7d\xeb\x7b\xec\x8a\x2e\x33\xbd\xb5\x69\xe0\x88\xdc\x3e\x3d\x3e\x2d\x6f\xd6\x8f\x37\x0f\x6e\xf7\xdc\xcb\xeb\xa3\x90\xee\xbe\xdd\x5d\x4f\xb5\xe4\x63\x14\x62\xf4\x55\xc0\xde\xe0\x99\xd2\xd5\x56\x8e\x11\xb0\x31\xcd\x23\xad\x8e\x12\xed\x3e\xcd\xde\x83\xd8\xbb\xc0\xeb\xda\x53\xe7\x57\xff\x26\xfe\x2c\x79\xda\xad\x8b\x1b\x02\x34\xbe\x87\xcd\xe0\xf1\xc4\x79\xe1\xcd\x17\xbd\xc9\x52\xc9\x96\xf4\xfa\x0d\xd1\x37\x86\xf7\xfa\x51\xe6\xf9\xff\xd9\x99\x92\x35\x0d\x3c\xfa\x72\xf7\xf0\xb8\xbc\xbb\xbc\x5e\x7f\x59\xfd\x7e\x7f\x94\xc6\x3a\x53\xbe\xe0\xb1\x63\x6d\x3f\xa1\xe9\x9c\xfb\x03\x6c\x66\x8f\xec\x1f\x42\x65\xfa\x31\x3e\xf0\x52\x34\xa4\x04\x4d\xd5\xf9\x3d\xac\xa7\x1e\xfe\x85\x37\xd2\xd6\x83\x91\x67\xcf\xb1\x25\xf4\xdf\x4c\xff\x0b\x27\x26\xde\x4c\xa7\x5f\x4d\xa7\x39\x56\x29\xab\x7e\x91\x75\xff\x1a\x2b\xf4\x3c\xef\xe4\x3f\x01\x00\x00\xff\xff\x2b\x75\xf4\x87\x13\x1a\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 767334970, time.UTC), - uncompressedSize: 486, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x91\xcd\x6a\xeb\x30\x10\x85\xf7\x7a\x8a\x79\x01\xf9\x92\xad\x76\xb7\x74\x59\x4a\xe9\x22\xfb\xb1\x7d\x92\x0e\x1d\xfd\x20\x8d\x43\x83\xc9\xbb\x17\xc7\x2d\x29\xd4\x84\x2e\x75\xe0\x7c\xf3\xa1\x33\xcf\x9e\xe4\x40\xdd\x9e\x75\x42\xeb\x8e\x9a\x7b\xd6\x6e\xc4\x81\x27\xb5\x97\x3c\x3e\x4a\xab\x53\x31\xc9\xe9\x61\x1a\x8f\xb0\x0e\x89\x7b\xc5\x48\x97\x8b\xe3\x22\x7b\xd4\x26\x39\x05\x2a\x59\x65\x38\xff\x3b\xed\x7a\x18\xef\xdc\xbb\xa4\x31\xd0\x46\xdf\x45\x18\x8f\x6c\x1c\x1c\x51\xe2\x88\x40\xd2\x4c\xb2\x37\x28\x22\xac\x9e\xbf\xf2\x56\x78\x40\xa0\x79\xa6\xee\x15\x0a\x6e\xe8\x9e\xbf\xe3\xe5\x38\x91\x72\x0f\x6d\x0b\x87\x88\x4b\xd9\x02\x11\xd5\xb5\xfb\x1b\xb4\x32\x68\x2d\x05\x8a\xf2\x81\x7a\x0b\xfc\xf5\xed\xed\x5c\x10\xe8\x46\x6c\x05\xc3\x72\x30\x4a\xfa\x7f\x62\xd1\xe5\x2b\x02\xed\x1c\x51\x83\x62\xb0\x5c\x57\x9d\xc8\x36\xbc\x3d\xfd\xf0\xbb\x63\xf8\x07\xc7\x0d\xcb\xfb\x9e\xde\x7b\xe7\x96\x69\x91\xae\x4b\x7d\x06\x00\x00\xff\xff\x84\xed\x5a\xe5\xe6\x01\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 495, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\x91\xcd\x4a\x2b\x41\x10\x85\xf7\xfd\x14\xf5\x02\xdd\x64\x42\xee\x22\xbd\xbb\x88\x0b\x37\x22\x0a\xd9\x77\x26\x67\x92\xc2\xfe\xa3\xbb\x12\x0c\x43\xde\x5d\x66\x26\xea\xa8\xc1\xed\x39\x1f\x1f\xc5\x29\x97\x79\x83\x52\x39\x45\x4b\xa7\x46\xbd\x72\xdc\x59\x7a\x41\x39\x71\x0b\x15\x20\x6e\xe7\xc4\x59\x45\x14\x5d\x80\x25\xae\xc2\x49\x0b\x3c\x02\xa4\x9c\xaf\x79\xcd\xae\x85\xa5\xbe\x27\xf3\x0c\x0f\x57\x61\x1e\x3f\x62\xba\x5c\x14\x91\x77\x5b\xf8\x3a\x78\x88\x5c\xce\xb7\x44\x34\x65\x96\x02\xbf\xa1\x8c\x41\x99\x64\xbf\xcd\x83\xb4\x66\xb4\x83\x30\xa7\x22\xa3\x59\x5f\x6f\xdc\x97\xdc\xea\x2f\xc9\xd0\x5b\x5a\x2f\xd6\xcd\x4d\x46\x07\xf1\x75\x06\x36\xff\x16\x8b\xd5\x8c\x3c\x88\x64\x1d\x52\x64\x49\x85\xe3\xfe\x3b\xd9\xcc\xc9\x5c\x52\x80\x1c\x70\x9c\xeb\x56\xcb\xd5\x72\xa9\x88\x2a\x3c\x5a\x49\xe5\x8f\x09\xfa\x5e\x13\x77\x64\x36\xce\x1f\x51\xcd\x78\x9d\xf9\xac\x4d\x45\x1d\xde\xf4\xbf\xeb\x38\xb2\x9c\xef\xa3\xdb\x7a\xec\xa6\x79\x7f\x74\x96\xee\x3c\x23\xca\xc3\xd3\x28\x45\x1c\x31\xad\xb5\x7a\x0f\x00\x00\xff\xff\x16\xb2\x7b\xdf\xef\x01\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 337, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8e\x41\x6a\xc3\x30\x10\x45\xf7\x3a\xc5\x5c\x60\x04\xdd\x6a\xd7\x0b\x94\xd2\x40\xf6\x13\xf9\xd7\x0c\x1d\xc9\x46\x23\x87\x16\x93\xbb\x17\xc7\xce\x26\xdd\x74\x27\xbe\xfe\x7b\xf3\x65\xd6\x33\x9a\xeb\x54\x13\x5d\x5f\xc2\x97\xd6\x21\xd1\x09\xed\xaa\x19\xaf\x39\x4f\x4b\xed\x61\x5d\x99\xf4\x93\xe2\x59\x6c\x81\xc7\xd1\xa6\x8b\x58\xd4\x22\x23\xde\x17\xb3\x13\x72\x43\x77\xba\xdd\xc2\x73\x96\xee\x6c\x93\x3a\xe2\x3f\x38\x11\x53\x95\x82\x44\xeb\x4a\x71\x4b\x36\x1c\x75\x78\x7a\x16\x74\x19\xa4\x4b\x0a\x74\xf4\xd5\xbb\x4e\x5c\xf4\x1b\x8d\x7d\x5f\xcf\x72\xcc\xdf\x3b\x3e\x4b\x3e\xc4\x1f\x30\x88\x23\xbe\x3d\xe2\xfd\xb6\xc9\x05\xe6\x9b\x93\x48\xe6\xf9\x21\xed\x30\x14\xf4\xf6\x73\xff\x68\x3b\xfb\x57\xb4\x39\x98\x39\xfc\x06\x00\x00\xff\xff\x72\xd3\xf5\x37\x51\x01\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/templates/stackdriver.yaml": &vfsgen۰CompressedFileInfo{ - name: "stackdriver.yaml", - modTime: time.Date(2019, 8, 12, 19, 6, 32, 175109574, time.UTC), - uncompressedSize: 33761, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5d\xdd\x6f\xe3\x36\x12\x7f\xcf\x5f\x31\xd0\x02\xed\x06\x88\x95\x64\xef\x13\x06\xfa\xd0\x4f\x20\xb8\x6b\x0f\xd8\x66\xf7\x80\x2b\x0e\x06\x2d\x4d\x6c\x5e\x24\x92\x47\x52\xde\x4d\x93\xfe\xef\x07\x52\x94\x4c\x49\x94\x3f\xf6\x36\x8d\x9d\xb0\xdd\x87\x78\x66\x38\x1c\xce\x90\xf3\xe3\xd0\xb2\x78\x7f\x3f\x01\x7a\x03\xe9\x7b\x52\x54\xa8\xd2\x92\x7e\x44\x99\x92\x9c\x08\x8d\x52\xa5\x4a\x93\xec\x36\x97\x74\x85\x32\x45\x46\xe6\x05\xe6\xf0\xdb\x6f\x27\x44\xd0\xf7\x28\x15\xe5\x6c\x0a\x49\xc6\xd9\x0d\x5d\xa4\x54\x69\xca\x53\xca\xcf\x57\x97\xa4\x10\x4b\xf2\x26\x39\xb9\xa5\x2c\x9f\xc2\x92\xb0\xbc\x40\x79\x52\xa2\x26\x39\xd1\x64\x7a\x02\xc0\x48\x89\x53\xf0\xb4\x3b\x9a\x12\x24\xc3\x29\xdc\xdf\x43\xfa\x16\x0b\x24\x0a\xd3\x9f\x1a\xb2\xe9\x18\xa0\x20\x73\x2c\x94\xd1\x01\x40\x84\x98\x82\xed\x77\xa2\xb1\xc0\x12\xb5\xbc\xb3\x0c\x59\xb7\x1d\x2a\x32\x3a\x94\xc0\xcc\xb4\xcf\x78\x29\x68\x81\xf9\xd7\xf5\x60\xfb\xe6\x08\x22\x49\xe9\x3a\x12\x95\x5a\x5e\x31\x8d\x72\x45\x8a\x29\x5c\x5e\x28\x4b\x35\xfd\xd1\xec\x8a\xdd\xf0\x5a\x0a\x40\xa1\x5c\xa1\x9c\x48\xfc\x6f\x85\x4a\x4f\x32\x5e\x31\x9d\x52\xa6\x34\x61\x19\xa6\x63\xa3\x6a\x5a\x03\xbc\x82\xef\x2a\x04\xcd\x81\xc0\xbc\x5a\x00\x65\xb0\xe0\x0b\x2e\x24\xd7\x1c\x72\x54\x28\x29\x29\xe8\xaf\x44\x53\xce\xce\xe0\x7b\x56\x95\xca\xc8\x94\x44\x28\x28\x2b\xa5\x61\x8e\x9e\x2a\x33\x4e\x7a\x43\x31\x87\xf9\x1d\xe8\x25\x52\x09\x94\x69\x5c\xa0\x84\x95\x09\xf6\x19\x30\xae\x61\x45\x24\x25\x4c\x5b\xef\xa7\xf0\x33\xfa\x1a\x96\x5a\x0b\x35\x3d\x3f\x5f\x50\xbd\xac\xe6\x69\xc6\xcb\xf3\x05\xe7\x8b\x02\x89\xa0\xca\xff\x73\x5e\xf0\xf9\x79\x49\x94\x46\xe9\xc8\xe7\x44\xd0\xf3\xda\x41\xa9\xb5\xdf\x53\xfb\xa3\x25\xff\x8d\xb2\x1c\x08\xcb\xc1\xce\xbc\xeb\x3b\x81\x70\xc3\xa5\x31\xb4\x36\x4f\x19\x3f\x08\xc9\x57\x34\xc7\xb4\x6d\x5d\x4f\xa9\x3f\xc0\x2b\xf8\xf6\xdd\x8f\xef\xfe\xfe\xf5\xf5\xd5\xfb\xef\x5b\xa6\x6d\x37\x85\x37\xf0\x0a\xae\x7e\xba\xfe\xf3\x1f\x5b\x46\x6d\xc8\x4c\xdf\x09\x9c\x42\xd2\xce\x54\x13\x2e\x9a\xe1\x79\x1d\xb6\x73\x17\xb6\x99\x0d\x5b\x12\x0e\xe9\xfc\x4e\xa3\xda\x27\xa4\xbb\x18\xfc\x27\x13\xf8\xab\x9f\xaf\xdf\x5e\x7d\xf3\xee\xfa\xea\x1f\x3f\xb5\xfc\x79\x95\xdd\xa2\x56\x6b\x6d\x00\xf8\x51\x70\x86\x4c\x53\x52\x7c\x33\xe4\x02\xb0\xaa\xfc\x81\x32\xaa\xb1\xe1\xc2\x9b\x8b\x8e\x80\xca\x48\x81\x53\xb8\xec\x10\x17\x92\x7f\xd0\xcb\x1f\x48\xa6\xb9\x9c\xc2\x9b\x4f\x74\x9c\x75\xce\xc0\x71\x4a\x70\xa6\x30\x7a\x2e\xec\xb9\xda\x3b\x9b\x5d\x57\x10\x8d\x2c\xa3\xd1\x7d\xa3\xee\x6b\x3d\x34\x70\x61\x86\x74\x85\x79\x3d\xfb\xf6\x4f\xc8\x8f\x9b\x6e\x6a\xdb\xea\xd8\x07\xb3\x8e\x42\xa6\x0f\xd1\x74\x63\x57\xc8\xec\xac\xa0\xc6\xe2\x4f\xc6\xbf\x47\xb1\xb9\x36\x2a\x9c\xdd\x7b\x06\xc7\x1c\xb5\xc1\x71\x9d\x14\xd5\x3a\x2e\x66\xf7\x4d\x9e\x0b\x65\xf7\xc6\x75\xbc\x62\xb9\x96\x54\xc4\xf4\x3e\xea\xbf\xc6\x45\xc3\xfc\xde\xce\xbf\x03\xcc\xef\x6d\xf4\xc7\xf3\xbb\x33\xff\xe0\xf2\xbb\x33\x3d\x9c\xdf\x0b\xbe\x08\x14\x3b\x24\xcb\x50\xa9\x82\x2f\x26\x7e\xb1\xb8\xc7\x40\x6c\x45\x67\x59\x6b\xda\x04\x14\xaf\x64\x86\xb3\x8a\xe6\x43\x22\x15\x43\x1a\x11\x01\xa2\x90\x94\x65\x54\x90\x62\xc8\x32\xf5\xce\x90\xfa\x81\xcb\xdb\x82\x93\x40\x9f\x6d\x75\x3a\x64\xf1\x0f\xcc\x56\x8c\x0d\x39\x47\xa5\x29\xb3\x55\x5a\xcf\x7e\x9f\xd3\x35\xd8\xe7\xd0\x31\x86\x8b\xd2\x6c\xc9\x95\x1e\x11\x09\x0c\xc0\x67\xf7\x46\xdd\x67\xf5\x07\xe8\xf3\x37\x8d\x32\xe4\x67\x22\x68\xbf\x3b\x43\x5a\xd5\xe7\x06\x3d\x6a\x56\x10\x5a\xaa\x1e\xf1\x16\xef\x3c\x4a\x03\x43\x5c\xa0\xb4\xbd\x7a\x3c\x5b\x61\x66\xdc\xef\xbe\x44\xbd\xe4\xbe\x1b\x2a\x59\x74\xb4\xb9\xd4\x9c\xf1\x1c\x43\x74\x45\x7f\xc5\x40\xef\x23\xe4\x4e\x94\xeb\x64\xe5\xdb\xde\x04\x8e\x54\x7a\x69\x72\x6c\xe6\xdc\xc6\x0b\xda\x91\xab\x14\xca\x19\x59\x20\xd3\x21\x93\x34\x2d\x51\x69\x52\x8a\x0e\xd3\x4f\x32\x9d\x2e\x9b\x25\xdc\x91\xbe\x41\xd9\x46\xd1\x2d\x60\x9d\x89\xc7\x5a\xc4\x19\x67\x0c\xb3\x7a\x52\xe7\x61\x3a\xae\xba\xa3\x8d\xeb\x7e\xc8\x38\xaa\x75\x1f\x58\x8b\x26\xdc\x75\xb4\xf3\x6a\xb0\x76\x77\x5d\x1b\xfb\xcd\x74\xcd\x35\x29\x66\xa3\x6d\x6a\xb6\xd7\x72\x32\x99\x9c\xbc\xda\xf7\xbf\x5e\x0b\x77\xb0\x05\xdf\xda\x03\x51\xd8\xa1\xc5\x2e\x7d\xec\x75\xd6\x2a\xab\x02\x37\x1f\xb4\x4e\xea\x55\xff\x04\xe7\xad\x25\xd1\xd9\x72\x0a\xaf\x33\xce\x34\x7e\xd4\x69\x33\x51\xe0\xab\xaf\x20\x59\x6a\x2d\x12\x78\x78\x80\x20\x77\x21\x45\x96\x9c\xc2\x17\x5f\xac\x5b\x4b\x14\x5c\x6a\x94\xa9\x19\x38\x3c\x40\x42\xd9\xdc\x6c\x17\x13\xdb\xa0\xf9\x70\x7a\x02\x40\xec\xd4\xb3\x43\x98\x34\x87\xd1\xfd\xc3\x5e\x80\x26\xd7\xb9\xa1\x4e\x82\x67\xb9\x61\xd6\x7a\x72\x4d\xc2\xa7\x5e\x23\xbc\x76\x53\x6b\x67\xdf\xe7\x8e\x73\xbd\x95\x7b\xe6\x71\xe6\x95\xfe\xbf\x03\x1d\x3a\xb4\x08\xb3\xfc\x60\x06\x0b\xe0\x1e\x6f\x58\xe1\x3d\x4a\xa4\x0d\x80\x3f\xf5\xaa\x0e\x86\x53\x67\x22\x79\xa2\x45\x3b\x2c\x0b\xbb\x12\xfd\xca\xeb\xd1\x02\xf3\xd4\xcb\xf0\x73\x04\xe6\xb3\xae\xb2\xd1\xc8\x8c\xd4\xc4\xfb\x47\xa6\xe9\x3b\x14\x9d\x70\x52\x7f\xaa\xaf\x1e\xaf\xb1\x14\x26\x37\x4c\x5d\x5d\xde\xfb\xda\xd1\x55\xf1\xc9\x65\x5d\x7f\xe7\xb4\x44\xa6\x1a\xe7\x5b\x4a\x60\x93\x58\x0f\xd4\xe3\xa4\x8e\x93\x1a\x8e\x89\x6d\xc5\x6e\x19\xff\xc0\x92\x2d\x4a\x9c\x43\xc6\x34\xd5\x8e\xd9\xac\xce\x4c\xaa\xae\x06\x43\x81\x07\x68\x8e\x8e\x06\x45\x9d\x9d\xb0\x39\x35\x7f\x92\xe2\xf5\x10\x43\xbc\xfe\x4e\xd7\x90\x71\xd6\x28\x4a\x05\xd1\x4b\x5f\x68\xcd\xa9\x0b\xc2\x8e\x82\x9e\x11\x4d\x27\x81\x45\x33\x1c\xa6\x57\xcb\x4e\xcd\x87\xd4\x7d\x18\x11\xad\xa3\x62\xe4\x9c\x0f\x03\x72\x9d\x9a\x74\xda\x7e\x4c\xcd\x47\xcf\x67\x1b\x37\xcc\x23\xfe\x1b\x5d\xdf\xa7\xdd\x05\x7e\xe6\x7b\xce\xd7\xb4\xae\xd8\xd2\x52\x17\x0a\x1e\xe0\x86\x14\x0a\xcf\x20\x29\x2b\x5d\x91\x62\xa6\x0b\x65\x5a\x33\xce\x30\x39\x6d\x3c\xdb\xab\xae\xfc\x69\x55\xb3\xd2\x86\xb5\x71\x4a\x85\xd4\x84\x35\x8c\x37\xb6\x65\x4c\xdb\xc8\x7e\xda\x32\x79\x43\x56\xfb\x53\x79\x27\xd3\x47\x15\x6e\xd0\xb5\x45\x8d\x1b\x89\xdf\x7c\x97\xe1\xb4\xb5\x5a\x6f\x41\x36\xe4\x71\xd7\x79\x2d\x9d\xfb\xc6\x1b\x95\x9c\x51\xcd\x25\xe6\x6f\xb1\x96\xbd\xb6\x27\x8d\x5f\x26\xb7\x7f\x55\x33\x33\x1b\x09\x65\x28\x93\x2f\xc3\xc2\xdf\x0d\x32\x9c\x90\xfc\x3f\x98\xe9\x19\xcd\x8d\x12\xd7\x0e\x20\x2b\x2a\xa5\x51\x3a\x4f\x7a\x8c\x36\x16\xdb\x9c\x3c\x16\xb0\x82\x67\x2e\x11\xf9\xdd\x35\x86\x3b\xad\x9d\x35\xe6\x77\xd1\x0f\xdf\x69\xaa\x34\x91\x5a\xfd\x93\xea\xe5\xeb\xa4\x87\x17\xc9\xa9\xd9\x08\xef\xdd\xbe\x5e\xe8\xc9\xa9\x59\x7b\xf4\x23\xca\xe4\xac\x33\xca\xd6\xd6\xa1\xb2\xc6\xa7\x3c\x34\x05\x07\x33\xef\x73\xe2\xee\xc8\x1e\x3b\xe2\x6e\xc4\xdd\x88\xbb\x11\x77\x23\xee\x3e\x2a\xee\x0a\x9e\xff\x7e\x88\xbb\xcf\x04\x0b\x82\xed\x1a\x9e\x9c\xaa\x47\x45\xa6\x91\xb3\xbc\xc3\x46\xa6\x26\xb7\xba\x63\xec\xe6\x3b\xa9\x08\x54\x11\xa8\x22\x50\x45\xa0\x3a\x5a\xa0\x8a\x05\x62\x2c\x10\x23\x0c\x47\x18\x8e\x30\x1c\x61\x38\xc2\x70\xac\x17\x0f\xb9\x5e\xec\x7d\xef\x7f\xe8\x48\xe5\x72\x54\x84\xaa\x08\x55\x11\xaa\x22\x54\x3d\x17\xa8\x8a\x15\xe3\x8b\xaf\x18\x23\x10\x47\x20\x8e\x40\x1c\x81\x38\x02\x71\xac\x19\x8f\xa3\x66\x5c\x3f\x0e\x7e\x34\x70\xd5\xf9\xe1\x4e\x04\xab\x08\x56\x11\xac\x22\x58\x1d\x2d\x58\xc5\xaa\xf1\xa5\x57\x8d\x81\x9f\x66\x45\x2c\x8e\x58\x1c\xb1\x38\x62\x71\xc4\xe2\x58\x38\x8e\x02\xf0\x13\x15\x8e\xc1\x1f\x4d\x1e\x36\x5c\x79\xc9\xa1\xb1\x3f\xb5\xf6\xb7\x59\xeb\x19\x43\xd7\x5e\xa8\x11\x73\x77\xcc\xdd\xc7\x99\xbb\x63\x1d\xf5\xd2\xeb\xa8\x88\x4c\x11\x99\x22\x32\x45\x64\x3a\x34\x64\x8a\x55\xc5\xd6\xaa\x62\xf0\xa2\x95\x23\xca\xdb\xc6\xf6\x98\xb3\x63\xce\x8e\x39\xfb\x19\xe5\xec\x58\x4d\xbc\xf0\x6a\x22\x22\x52\x44\xa4\x88\x48\x11\x91\x0e\x06\x91\x62\x15\xb1\xb5\x8a\x08\xbe\x39\xfc\x20\x12\x77\xc1\x17\xc8\x6a\x1d\x7e\xea\x56\xb8\x42\x49\xf5\x9d\x71\xdd\x15\xbb\xe1\xce\x7d\xed\xcb\xd5\xbd\x9f\xf5\x52\xf7\xd2\x6c\x7b\x47\xda\xbc\x58\xbf\xdb\xdc\xcd\xb3\xca\x84\xda\xf9\xba\xa2\x36\x4d\xf5\x66\x22\x15\xad\x00\x15\xf0\x00\x54\xbc\x4e\x2e\x52\xfb\x7f\xd2\xcb\x39\x76\xf8\x4e\xb6\x76\xcb\x2f\x09\x11\x22\xf9\x77\x40\xed\x96\x09\xde\x93\x0e\xce\x89\x91\x54\x35\x9e\xa5\x02\x4a\xbb\x99\xb1\x33\x5f\x77\x4b\x66\xa1\x65\x6f\x9d\xea\x2f\xf8\x9e\x67\x7d\x59\xeb\x33\x5f\x76\xd4\x71\x7e\x2b\xda\x6b\x34\x1a\x99\x10\xd2\x2e\xb9\xd2\x61\x90\x35\x9c\xb1\x2e\xd7\xee\xdd\x98\x44\x43\x4d\xc7\xb7\x62\x63\xd2\x81\xd4\x1f\x8c\xcd\xae\x39\xfa\x53\x93\xf3\xd6\x47\x1d\x76\x79\x6c\xc2\x97\xa9\x6f\x89\x58\x2f\x50\xb3\xa1\x48\x25\xf9\xe0\x18\x7d\xf1\x5b\xbc\xf3\x64\x6b\x02\x3c\xb4\x94\x25\x92\x1c\xa5\xfa\x25\xf9\x38\x21\x82\x4e\x6e\xf1\xae\x3b\x65\x0e\xe2\x31\x94\xf5\x46\xab\x91\x55\xd9\x12\x6d\xfc\x43\xfd\xdb\xd7\x6b\xbb\xa6\xb5\xd2\x69\xa0\x93\x46\xa2\x92\x9e\xde\xc6\xba\x3d\x1f\x3c\xe9\x5c\x98\xe1\x89\x99\x8f\x81\x8d\x63\x23\xe5\xc6\x12\x16\xa2\x9e\xd5\x5e\x94\x9a\x97\x43\xd0\xbc\x1b\x28\x77\xdf\x46\xe0\x09\x29\x23\x75\x51\xaa\x23\xdc\x88\xae\x6f\x02\x59\xbb\xc2\xd0\x2c\x29\x18\xa6\x0e\x80\x35\x3f\x32\xa2\xed\xb5\x0f\xdd\xab\x10\x42\xef\xae\xe8\x3c\x4d\xd4\x5c\x8c\x10\xfc\xc5\x52\x27\x64\xf6\x46\x91\xb5\x3e\x47\x58\x9b\xd8\xee\x9c\x66\xd2\x6d\x9d\xdc\xed\x43\x07\x51\xf4\xc7\x5a\xff\xf7\xae\xf5\xb7\xdd\x3a\x73\xdc\x7b\xc7\x26\x6d\x18\x12\x3c\xac\x39\xaf\x93\x37\x17\x97\x7f\x99\x5c\x5c\x4e\x2e\x2e\xaf\x2f\x2e\xa6\xf6\xdf\xbf\x5c\x1c\x3e\x61\x7f\xd9\xb9\x59\xa7\x73\x10\x31\x2a\x67\x6f\xda\xe9\x88\x5a\x4a\xdc\xb5\xc6\x5d\x6b\xdc\xb5\x0e\xa7\xe1\xe6\x23\x2e\x9d\x09\x7f\x89\x75\x6f\x37\xea\x2c\xb2\xe3\xdf\x8b\xf4\xb7\x0e\xdb\x9f\x9f\xe8\xee\x20\x36\x9f\x92\x42\xf0\xae\xa6\x0d\xbd\xcc\xac\xfc\xa0\xfd\xd6\x1e\x7b\xed\xe2\xbe\xe4\x05\xee\x4b\x76\xb8\xb4\xa5\xe0\x8b\x67\x7e\x69\xd2\xe7\xbb\x67\x27\xbc\x81\x7b\xa4\xa8\x98\x2d\xe3\xa1\x45\xc6\xc0\xc0\xd3\xb8\x7e\x7c\xff\x6c\xdc\x7f\x7f\x3f\x01\x64\xb9\x19\xc7\xff\x02\x00\x00\xff\xff\x5a\x0f\xfc\x13\xe1\x83\x00\x00"), - }, - "/charts/istio-telemetry/mixer-telemetry/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 2601, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x55\xdd\x6e\x1d\x35\x10\xbe\xef\x53\x8c\x4e\x2e\x02\x22\x0d\x39\xa8\x45\xed\x4a\x5c\x84\x26\x44\x01\xaa\xa2\x26\x15\x48\x88\x0b\x1f\x7b\x76\xd7\xc4\xeb\x59\x66\xec\x9c\xb3\x45\x48\x7d\x10\xfa\x72\x7d\x12\x34\xde\x9f\xfc\xaa\x12\x77\xeb\xd9\xf1\x37\x9e\xef\xfb\x3c\xee\xfc\x0e\xb9\x7a\x02\x90\x30\x60\x87\x89\x07\x5d\x00\xf8\xce\x34\x58\x41\xf9\x5d\x02\x18\xcd\x26\xa0\xab\x20\x71\xc6\x12\x61\xec\x83\xb7\xe6\x15\xe5\x98\x2a\x58\x97\x98\xc9\x89\xc4\x9a\x80\xa7\x0f\xd2\x97\x5f\xaf\x7d\x7c\x90\xfe\xda\xec\x2a\x78\x5e\x62\xb6\xcf\xe3\x11\x00\x92\xe1\x06\xd3\xf1\x35\xb2\x69\xf0\x5d\xf2\xc1\xbf\x37\xc9\x53\xac\xe0\xc5\x51\x49\x11\x14\xf1\x14\x8f\xeb\xda\x47\x9f\x86\xa5\x68\x6d\x82\xe0\x93\x92\xb2\x37\xf6\x00\x81\x8c\x03\x69\xd1\x39\x1f\x1b\xb0\x14\x6b\xdf\x64\x2e\x70\x87\x53\xe2\xaf\x2d\xc6\x29\xdb\x61\x42\x9b\x04\x52\x6b\x12\xf8\x04\x5e\x80\xae\x91\x15\x04\xdd\x81\x46\x24\x19\x4e\x02\x8c\x7f\xa2\x4d\x0a\xd9\x70\x6f\x81\xf1\xaf\x8c\x92\x64\x84\xd4\xf4\xb9\xe4\xdc\xd3\x1e\x38\x2f\xe5\x98\x07\x10\xa8\xa1\x18\x06\x20\x06\x8c\x35\xb1\xc5\x29\xa9\x23\x87\xd5\xbd\xd8\x1e\x6c\x8c\xa0\x03\x8a\xd0\xa1\x91\xcc\xd8\x61\x4c\x02\xeb\xa3\xa3\x4e\xa0\x7f\x7e\x04\x89\x4d\x94\x60\x12\x0a\x24\x82\xfe\xe5\x4b\xa0\x1a\x72\x74\xc8\xb0\x96\x43\xb8\x6c\xbd\x94\x46\xae\xa0\x26\xbe\x11\x1c\xb6\xad\xb7\xad\xfe\xf1\xb1\x45\xc6\x98\xc2\x00\x46\x86\x68\x0f\xa7\xd2\x8a\x19\xed\x70\xd9\x32\x4a\x4b\xc1\x55\x63\xd1\xc9\x05\x42\x99\x2d\xca\xdc\xe0\x4c\xc1\xbc\x1e\x15\xd5\x1d\x47\xdd\x12\xea\xb0\x23\x1e\x2a\x58\x9f\xcd\x25\x7c\xe7\x6f\xef\xd9\x83\xf3\xc2\xfa\x06\x25\x69\x37\x8e\xa0\x25\xf6\xef\x29\x26\x13\x40\x3d\xa3\x9c\x53\x3d\xe9\x95\x45\x97\x4a\x1b\x9b\x84\x5a\x11\x4c\x08\x64\x6f\xe9\x3b\x69\x8c\xd0\x9a\x6b\x04\xdc\xf5\xc8\x5e\x19\x34\x21\x0c\x50\x53\x8e\x6e\x54\x3b\xb5\x28\x08\xd7\x26\x64\x14\xd8\x12\x5f\xc1\x16\x43\x38\xbc\xdb\xcd\xb3\x17\x8f\x75\xf3\xec\x4c\x3d\x87\xf1\x7a\xec\xe3\xec\xcd\xc9\xe9\xf7\xef\xce\x2a\x68\x6c\x62\x63\xf1\xbb\xf5\xec\x48\xb3\x83\x9e\xc9\x0a\x48\x4b\x39\x38\xd8\x20\x58\xf4\xe1\x0b\x3d\x77\x61\x02\xbe\x82\xf5\x97\x13\xc8\xeb\xe3\xdf\x7e\x79\xfb\xe6\xd5\x45\x05\xab\x6f\x57\x5a\xc0\x38\xd3\x27\xe4\x89\xad\x3d\x90\xe4\x3c\x29\x59\x06\x1c\x6e\x72\x33\x27\x80\x8f\xe0\x25\x79\x7a\xba\x68\x7d\x30\x99\x39\x52\x02\x46\x4b\x5d\x87\xd1\xa1\x2b\x86\xe8\x99\x5c\xb6\x4a\x18\x64\xc1\xb1\xe1\x02\x7d\x63\xdd\xf3\x1a\x04\x8b\x1e\x7a\xad\x0f\x60\xeb\x43\x00\xe3\x1c\xec\x73\x0e\xb8\x0f\x26\x3a\xd8\x2f\x7b\xf6\xa1\x35\xd1\x05\xe4\x02\x6d\xac\x45\x11\xf5\xbb\x1c\xde\x06\x2b\xf7\xf4\x40\xcb\xf1\x88\x15\x11\x9d\xc2\xcf\xf7\x13\x55\x0e\xcf\x40\xdb\x08\x5a\x42\x80\x72\x12\xef\x50\xa5\xf7\x51\x54\x3d\xe4\x19\x13\xef\xde\xff\x31\x48\x39\xf5\x39\x1d\xcb\x8f\xa2\x83\xe3\xd6\x64\xe8\x99\x3a\x4c\x2d\xe6\xc5\x76\x0f\x67\x9c\x6a\x9b\xd8\x5b\x39\xdd\xf5\x9e\x87\x93\x69\x62\xa8\x9d\xbb\x11\xe5\x2a\x6f\x90\x23\x26\x94\x45\xf7\xfb\x40\x13\x93\xc6\x5e\x39\xf6\xd7\xe3\xb8\x7d\xe4\xb8\x93\x9a\x17\x98\xca\x3c\x49\x7a\x5d\x13\x8d\x3f\x95\x76\x9d\x46\xa8\x5c\x1d\x8f\xf2\xbe\x7a\x7b\x22\x93\xfd\xcb\x30\xca\x3d\x18\x6e\xb2\x7a\x7a\xd9\x57\x30\xef\x6e\xb9\x53\x2e\x92\xc3\x0b\x0c\x68\x13\x71\x05\x7f\xff\x53\x82\x89\x02\x8e\x7d\x4a\x05\xbf\xff\xb1\x1c\xac\x47\xeb\xeb\xa1\x9c\xa2\x27\x07\x26\x26\xff\xd4\x4c\xa3\x77\xbc\x3b\x7a\xe7\xb6\x02\x03\xe5\x49\x44\x49\x6c\x7c\x9c\x26\x8c\x16\x93\x09\x6c\xa0\xcc\x05\xc5\x0b\x60\xf0\x8d\xdf\x04\xd4\x3d\x1b\x04\xb1\x2d\xba\x1c\xd0\xdd\x0c\xbc\x60\x36\x18\x44\xbf\x7a\x72\xd3\x54\x36\x8c\x13\x96\x09\x8c\xc6\x0d\xc0\x39\xc6\x32\x15\x62\x39\xa3\x96\x03\x36\xa9\x45\xd6\x1d\xf1\x31\xb8\x72\xa4\x79\xfe\x5f\xea\xf4\x53\x5c\xb0\x99\xa7\x39\x98\xb6\x04\x69\xe8\xd5\x78\xf5\xdd\x8e\xe7\xdb\x07\x00\x2b\x9d\x79\x9e\xd1\x9d\x64\xf6\xb1\xb9\x18\x1b\xf0\xb1\x39\x6f\x22\x2d\xe1\xd3\x1d\xda\xac\xac\xae\x6e\xed\xec\x19\x6b\xe4\xff\xbd\x75\x24\xd4\x61\xa4\x84\xf0\xe9\xc3\xbf\xad\x61\xf7\xe9\xc3\x47\xb8\x96\x43\x5d\x0a\xd5\x49\x97\xd3\xb9\xca\x43\x71\x50\x64\xb1\x26\x82\xc3\xda\x47\x1c\x25\x18\xe7\xdc\x84\xea\x23\xac\x7a\x72\xc7\x31\xf9\xf9\x49\xfd\x59\xa9\x9a\x1d\xb2\x2a\x17\xfc\x7e\xca\x25\x72\x77\x37\x6d\x82\xb3\xc4\x8c\xd2\x53\xd4\xf7\x2f\x0c\x33\xcd\x3f\xe8\x73\xb7\x33\x5d\x1f\x70\xe6\xf0\x73\x45\xe7\x9c\xa7\x70\x85\x43\x05\x82\x36\xb3\x4f\xc3\xc2\x21\xf5\x6a\x56\xb5\xef\x79\x5c\x82\x63\x5b\x15\x5c\xac\x0f\x2e\xbe\x59\xa2\x89\x7a\x0a\xd4\x0c\x3f\x29\xd0\xea\xe6\xe6\x1e\x7a\xfa\xba\x25\x49\xd1\x74\xb8\x5a\xcc\xe0\xe5\x11\x9b\xeb\x10\x02\x31\x83\x2c\x8f\x45\x49\x9a\x88\x1e\x07\xeb\x3d\x1b\x4f\x80\x14\x13\x81\x19\x5d\xe9\xeb\x71\xfb\xb8\x90\x07\x0e\x36\x05\x74\xeb\x53\x3b\x7a\x55\xdf\x2c\x8d\x5f\xe1\xdc\xb7\x8a\x3c\x31\xa1\x42\xab\x2e\xa5\x67\xfd\x71\xb1\xfe\xf4\xe1\xe3\xc8\xf6\x67\x89\xd5\xbb\xfd\x48\xd2\x03\x3d\x4b\xe2\x7f\x01\x00\x00\xff\xff\xd3\x41\x4a\xe3\x29\x0a\x00\x00"), - }, - "/charts/istio-telemetry/prometheus": &vfsgen۰DirInfo{ - name: "prometheus", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - }, - "/charts/istio-telemetry/prometheus/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 131, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\xcc\x3d\x0a\xc2\x40\x10\x47\xf1\x7e\x4e\x31\xe4\x00\x43\xb2\x8d\x12\x50\xb0\x13\xec\xed\xd7\xf8\x97\x2c\xec\xc7\x30\x3b\xc9\xf9\x05\xc1\x94\xef\x15\xbf\xa8\xe9\x09\xeb\xa9\xd5\x99\xf7\x89\xde\xe8\x8b\x25\xf5\x5f\xdf\xf8\x8e\x5c\x78\x59\xa3\x39\x7f\x9a\xf1\x63\x7b\xc1\x2a\x1c\x9d\x6a\x2c\x98\x59\xad\x15\xf8\x8a\xad\xd3\xfe\x57\x26\x99\x64\xa4\xa8\x7a\xb8\x41\xce\x32\x92\xa7\x9c\x61\xc7\x1c\xae\x97\x20\x27\x09\x03\x7d\x03\x00\x00\xff\xff\x66\xc0\x9a\xfc\x83\x00\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - }, - "/charts/istio-telemetry/prometheus/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 3046, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4f\x8f\x9b\x3e\x10\xbd\xe7\x53\x8c\xa2\x1c\x7e\xbf\xd5\x02\xe9\x15\xa9\x87\x48\xdd\xc3\xaa\x55\x55\x75\xab\xde\x1d\x18\xc0\x8a\x63\x53\x63\xd2\x44\x34\xdf\xbd\xb2\x21\xc4\x10\xf3\x27\xbb\xab\xde\xd0\xf0\x3c\x6f\xfc\xe6\xcd\xb8\xaa\x82\x07\x20\x49\x42\x39\x55\x27\xf0\x20\x53\x2a\x2f\xc2\x20\xd8\x95\x5b\x94\x1c\x15\x16\x3e\x15\x41\x2c\xa2\x22\x88\x04\x8f\x30\x57\xe6\x23\xa1\x69\x29\x89\xa2\x82\x07\xa4\x28\x68\xca\xbd\x5c\xc4\x1e\x17\x31\x06\xf0\x10\x9c\xcf\x8b\x45\x55\x79\x10\x63\x42\x39\xc2\x52\xc7\x2f\x1c\x4b\x38\x9f\x17\x00\x3a\xb4\x69\x42\xe1\x02\x00\x40\xe2\xaf\x92\x4a\x8c\x3f\x95\x92\xf2\xf4\x25\xca\x30\x2e\x19\xe5\xe9\x73\xca\x45\x1b\x7e\x3a\x62\x54\x6a\xda\xfa\x8c\x26\xa1\x3c\x62\x65\xdc\xb0\x5c\x52\x7e\x1f\x48\xb6\x04\xbf\xe6\x07\xc8\x25\x26\x28\xdf\x8b\xf0\xdb\x50\xb6\x86\x51\x1f\x44\x1e\x83\x4b\x9a\xe9\xa2\x9b\x92\x6b\xd9\x5e\x90\x61\xa4\x84\xfc\x81\x72\x5f\x84\xcd\x0f\x0f\xf6\x44\x45\xd9\xd3\x31\x97\x58\x14\x54\xf0\xf6\x8f\xfe\xb7\xc3\x53\x08\x5b\x54\xc4\xef\xf6\x95\xc8\x28\x6b\x61\x00\x22\x47\x49\x94\x90\x21\x3c\x73\x2b\x7c\x20\xac\x44\x2b\x9f\xae\x5f\x12\x9e\x22\xac\x76\x78\x7a\x84\xd5\x81\x30\x08\x3f\x82\xff\xd3\x00\xfd\x94\x89\x2d\x61\xbe\x4e\x7e\xad\xbc\x55\x2f\x81\x54\xc1\x7f\xe6\xcc\x1f\xa0\x5c\xfd\x0f\xeb\x2e\xca\x83\xaa\x32\x99\x6f\x0f\x37\x0a\x4e\x84\x56\xb6\x4a\xba\xb0\x18\x13\x52\x32\xd5\x2f\xb0\x09\x7f\xb5\xd1\x17\x48\x2e\xc5\x1e\x55\x86\x65\xe1\x77\xb2\x79\x3d\x2e\x97\x0e\x5d\x7e\xeb\x40\xd3\x08\xe7\xf5\x66\x6a\x7f\x91\x47\x53\xb9\x95\x98\xe3\xb4\x11\xb7\x9a\xa4\xaf\xe8\xf0\x54\x6f\x3d\xf8\x8d\x34\xcd\x54\xd8\x96\x6f\x10\xd7\x4b\xd4\xf3\x88\x3c\xc2\xeb\x6d\xff\x9d\xa7\x1d\xb6\xeb\xb8\x6b\x86\xc0\xb9\x88\x37\x5c\xd1\x8d\xbd\xe8\x1a\x55\xdc\xc6\xea\x1d\xf8\x42\xb6\xc8\xc6\x8c\xd8\xc3\xeb\xf9\xef\x9c\x31\x85\xf6\x40\xa1\xdd\x9c\x7b\x6b\x68\x84\x78\xf3\x66\xee\x91\xcc\x58\xce\xbd\xc9\x9e\x5d\xff\x8d\x26\xef\xb7\xed\x7b\x4c\x53\x0b\x7f\x78\x2a\x67\xfa\x67\xf2\x35\xb0\x86\x94\xf2\x18\x8f\x8f\xb0\xa2\x0a\xf7\xf6\x9c\xde\xd9\x68\x0f\x98\x1d\xbe\x63\x0e\xf5\xe8\x68\x72\x7f\x64\xaf\xb5\x98\x4b\xc8\xf9\x38\xd4\x90\x7a\x3c\xbb\x80\xdb\x91\x35\xcb\xfe\x40\x58\xa1\xef\x5c\xe4\x8c\x2a\x58\x3e\x2e\x47\x52\xd8\x92\xe9\xad\x66\xb6\xb5\x49\xe0\x78\x81\x0e\x93\xef\x8f\x23\xa8\x44\x2e\x98\x48\x4f\x9f\x3b\xaa\x58\xd1\x71\x6f\x8c\x19\x62\x6a\x69\xbf\xd1\x11\x83\xa3\xe3\x99\x9d\x62\xa1\xae\x2d\x18\xb0\xcb\x98\x61\x66\x58\xe6\x0e\xd3\xcc\xb0\x8d\xcb\x38\xaf\xb0\xce\x6c\xf3\x0c\xd8\x67\xc0\x40\xce\xf0\x6c\x13\x41\xfb\xa8\x7e\x58\xaf\x47\x6c\xf5\x37\x00\x00\xff\xff\x9f\x8d\x9d\x49\xe6\x0b\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 422, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8d\x3f\x4f\x33\x31\x0c\xc6\xf7\x7c\x0a\xeb\xe6\xb7\x57\xbd\x1b\xca\xca\xc0\x82\x18\x4e\x82\x05\x75\x70\x73\xa6\xb5\x9a\xc4\x91\x9d\x94\x3f\x55\xbf\x3b\xba\xb4\x12\xa8\x13\x53\xf2\xd8\xcf\xef\x67\x2c\xfc\x42\x6a\x2c\xd9\x83\x6e\x31\x8c\xd8\xea\x5e\x94\xbf\xb0\xb2\xe4\xf1\x70\x67\x23\xcb\xfa\xf8\xdf\x1d\x38\xcf\x1e\xee\x63\xb3\x4a\x3a\x49\x24\x97\xa8\xe2\x8c\x15\xbd\x03\xc8\x98\xc8\x43\x51\x49\x54\xf7\xd4\x6c\x75\x3a\xc1\x38\x51\x24\x34\x1a\x9f\x30\x91\x15\x0c\x04\xe7\xb3\x03\x88\xb8\xa5\x68\x0b\x05\x80\xa5\xfc\xc6\xfa\x4c\x2f\x98\x87\x5b\xc7\x82\x6b\x8b\x64\xde\xad\x00\x0b\x3f\xa8\xb4\x62\x1e\x5e\x87\x61\xe3\x16\xce\xa4\x69\xa0\xae\x5e\x41\x96\x99\xac\xff\x8c\xf4\xc8\xe1\x1a\x28\xcf\x45\x38\xd7\x4b\x2a\x32\xdb\x4f\x7b\x5d\x54\x3e\x3e\x1d\xc0\x91\x74\xdb\xc5\x3b\xaa\xc3\x3f\x18\x22\x5b\x7f\xdf\xb1\x86\xfd\xb0\xf9\xcb\xf9\x20\xf9\x8d\x77\x09\x8b\xdd\xfa\x16\x3c\x4b\x9e\xae\xfd\xe7\xe9\xb1\xaf\xd6\x89\xaa\x72\xb0\x2e\xbb\x01\xbe\x03\x00\x00\xff\xff\xdf\xbc\xfd\x66\xa6\x01\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/clusterrolebindings.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebindings.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 384, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x8f\x31\x4e\x03\x31\x10\x45\x7b\x9f\x62\x2e\x90\x45\x74\xc8\x1d\x50\xd0\x51\x2c\x12\xfd\xac\xf7\x43\x86\x78\x3d\xd6\x8c\x9d\x82\x28\x77\x47\x1b\x22\x84\x08\x42\xa2\xfd\xd2\x7b\x7a\x9f\xab\x3c\xc3\x5c\xb4\x44\xb2\x89\xd3\xc0\xbd\x6d\xd5\xe4\x9d\x9b\x68\x19\x76\x37\x3e\x88\x5e\xed\xaf\xc3\x4e\xca\x1c\xe9\x3e\x77\x6f\xb0\x51\x33\xee\xa4\xcc\x52\x5e\xc3\x82\xc6\x33\x37\x8e\x81\xa8\xf0\x82\x48\xd5\x74\x41\xdb\xa2\xfb\xe6\x70\xa0\x61\x44\x06\x3b\x86\x47\x5e\xe0\x95\x13\xe8\x78\x0c\x44\x99\x27\x64\x5f\x29\x22\xae\xf5\x3b\x76\xda\xec\x13\x8b\xf4\xd3\xb1\xe2\xa6\x19\x23\x5e\x56\x9a\xab\x3c\x98\xf6\xfa\x47\x7f\x20\xba\xc8\xff\x57\xad\xf7\xe9\x0d\xa9\x79\x0c\x9b\xb3\xe9\x09\xb6\x97\x84\xdb\x94\xb4\x97\xf6\x8b\xec\x3c\x9d\x14\x97\x1f\xbe\xcc\x1f\x01\x00\x00\xff\xff\x58\x9c\xc9\x4e\x80\x01\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/configmap.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 10030, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x59\x5b\x6f\xdb\xb0\x15\x7e\xcf\xaf\x38\x68\x02\xd8\x6e\x23\x29\x69\xb3\x0d\x95\x51\x14\xc5\xf6\xb0\x62\xe8\x56\x6c\x45\x5f\xba\x54\xa0\xa9\x63\x8b\x31\x4d\x6a\x24\x6d\xc7\x48\xfb\xdf\x07\x5e\x74\xf1\x35\x76\x92\x36\xed\x96\x3c\x38\x86\xc4\x73\xfb\xce\xe1\x77\x78\x68\x52\xb2\xcf\xa8\x34\x93\x22\x85\xd9\xf9\xd1\x98\x89\x3c\x85\x3f\x4b\x31\x64\xa3\x0f\xa4\x3c\x9a\xa0\x21\x39\x31\x24\x3d\x02\x10\x64\x82\x29\x94\x4a\x4e\xd0\x14\x38\xd5\xe1\x91\x2e\x09\xc5\x14\x6e\x6e\x20\xfe\x27\x72\x24\x1a\xe3\xbf\x57\x8f\xe1\xfb\xf7\x23\x00\x4e\x06\xc8\xb5\x55\x01\x40\xca\x72\x45\x07\x80\xf2\x62\xeb\x3a\xac\x78\x65\xbd\x91\x89\x17\x13\x9e\xc2\xb7\xc8\xc9\x8e\xb8\x1c\x10\xee\x75\x03\x68\xaa\x48\x89\x19\x13\x06\xd5\x8c\x70\xaf\xf1\x33\xe1\x53\xd4\x71\x4b\x81\x5f\xf6\x3e\xac\xf2\x4e\xd6\xc2\xd4\x05\xaf\xd3\x23\xf7\xf0\x18\x3e\xb0\x6b\x54\xfe\x65\xc9\xc4\x28\x86\xbf\xe0\x90\x4c\xb9\xd1\x60\x24\x7c\xac\x95\x02\x11\x39\x4c\xdc\x5a\x29\x40\x5b\xef\x6b\x74\x62\xaf\xca\x7d\x46\x70\x25\x07\x99\xc7\xb2\xc3\xb4\x61\x32\x9a\xa0\x2e\x3a\x21\x82\xf1\x74\x80\x4a\xa0\x41\x9d\xe9\xbc\xf1\xc5\xbf\x8c\x40\x49\x8e\x29\xa0\xc8\x4b\xc9\x84\xd1\xe1\x79\x2b\x11\xf5\xda\xfa\x69\xfb\x41\xb4\x2b\x4d\xd5\xdf\xcd\x4d\x04\x8a\x88\x11\xc2\xc9\x18\x17\xa7\x70\x32\xb3\x00\x42\xfa\x66\x13\x94\x36\x3d\x5a\x4e\x15\x45\xbd\xac\xc5\x99\x0a\xa2\x6b\xea\x51\xe4\xcd\x43\x85\xae\x40\xd6\x83\xf5\x7a\xb3\x50\x3e\xf0\x25\xcb\x6c\x39\x66\x6d\x88\x50\xcd\x18\x45\x07\xe7\x29\xac\xbf\xaf\x80\xca\x4a\xa9\x8c\x5b\x75\x59\x7b\x42\xa8\x71\x55\x3f\x46\x2c\xeb\x87\x0a\x47\x78\x9d\x82\xcf\x8b\x41\x8e\x13\x34\x6a\xd1\x6f\x15\x6c\xa8\x8a\x7f\xb9\x62\x01\xef\x33\x0c\xa5\x02\x14\x33\xb9\x00\x6d\x48\x48\xcb\x52\xa2\xdd\xcb\xc8\xbd\xac\x32\x6d\x35\x33\xaa\xb3\x92\x98\x22\x85\xc4\xbd\x4b\x56\x76\xc6\x9e\xf5\x50\xca\xfc\xe8\xfe\x60\x96\xd2\x19\x30\x84\x09\x54\x87\x22\xd6\x89\x9f\x47\x3e\x48\x1b\x42\x67\x87\x59\x92\xe7\x0a\xb5\xce\xb2\x4d\x09\xb3\x3e\x10\x21\xa4\x21\xd6\x54\xd6\xc0\x91\x31\xe9\x5c\x5a\xf7\x46\x61\xc9\x09\xc5\x55\x87\xba\x5f\xbe\xa6\x97\x2f\x7a\xdd\xb7\x69\xfa\xef\xfc\x45\xef\x6d\xbf\x6b\xff\xb5\x56\x39\xa9\x09\x0a\x93\xc2\xc9\x79\x7a\xfe\x87\xb3\xd7\x67\xf5\x5b\x43\xd4\x08\x8d\xf7\x3a\x85\x96\xcf\x75\x5c\x95\x75\xb7\x64\x42\xd6\xf0\xd8\x1c\x9a\xcf\x4d\x37\xae\x1d\xd9\x27\x2f\xf5\xde\xbe\x3d\xf6\x65\xbf\x6b\xc1\x03\x8b\x60\x73\xd6\x77\xdb\xaa\xe4\x8e\xb6\x91\x5c\x29\x39\xa3\x8b\x9f\x49\x73\x81\xac\x7c\x87\x88\xbd\xfd\x25\xca\x7b\x80\x3d\xf3\x63\x09\xc8\xfb\xdc\x2f\x8c\x29\xc3\xf7\x68\x22\x05\x33\x52\x31\x31\xda\x8a\x74\x4d\x5b\x8f\xde\x53\x7e\x75\x7c\x1b\x82\x77\x10\xef\xc4\xb6\x64\x5c\x9a\xc7\x2b\x5f\xe7\xf0\x6f\x05\xae\x03\x6c\x0f\x60\x47\x84\x73\x7c\x44\x62\xf0\x36\x7e\x2b\x68\x3d\x64\x7b\x60\x4b\x99\x21\x39\xf2\x27\x22\xb8\x05\xd0\x80\xd3\x66\x44\x8f\xc3\x64\xd0\x3e\xec\xbd\xfb\xf8\x1e\xac\x4b\xa8\x36\x1c\xf6\x1a\xb7\x22\x52\xb2\xb0\xec\x67\xe5\x20\xf7\xd3\x49\x3d\x10\x15\x68\x7d\xb2\x81\x55\xca\x0c\xd7\xc1\x6e\x23\x49\x49\x36\x64\xd6\x72\x32\x23\x2a\x51\x53\x91\x68\xa4\x0a\x8d\x4e\x1a\x7f\x63\x26\x93\x90\x06\x42\xa9\x9c\x0a\x93\x50\x12\x53\x55\xd9\x1a\x20\x51\xa8\x32\x23\xc7\x28\xee\xa4\xcd\x49\xfe\xba\xa5\xd2\xa8\xe8\x7b\x38\xb7\x56\x87\x90\x39\x6a\xe8\x5a\x01\x8e\xa6\xb7\xb3\x42\xdc\xda\xce\xef\x9e\xae\xbd\xaa\xda\x86\x7a\x5b\x7a\x0f\x3f\x57\x5b\xad\x9b\x0e\xd6\xb7\x9d\xe1\x57\x66\x80\x56\xa8\x61\x0b\xc5\x7a\x46\xd3\x8b\x8b\x57\x87\x1c\xd5\xad\x2f\xcb\x15\x55\x8d\x23\x71\x6b\xf8\x58\x75\xad\x3d\x0a\x6e\xf3\x2f\x21\x25\x4b\x66\xe7\x89\xab\x97\xe4\xe4\xe6\xfc\xbb\x1d\x16\xaf\x17\x49\x10\xde\x3e\x98\xfe\xcd\x97\x21\xd0\x77\xf9\x8c\x69\xa9\xda\xb7\x11\xc7\xf0\xa9\x60\x1a\x98\x06\x85\xff\x99\x32\x85\x79\x2d\xe2\x43\x82\xf3\xf8\x4f\xf1\x2b\x77\xb9\xc1\x89\x41\x75\x0a\xf3\x02\x15\xd6\xca\xaa\x31\x36\x68\xeb\x9a\x42\x6a\x84\xb9\xfb\x74\xec\x04\x03\x1c\x31\x01\x73\x66\x0a\xe8\x34\xe3\x65\xa7\x07\x05\x99\x21\x0c\x10\x05\x28\x9c\xc8\x99\x35\xad\xe4\x04\x4c\x81\x41\x59\xe5\x78\x30\x51\xb3\x62\x0c\xde\xeb\x2b\x39\x08\x9b\x4f\x5b\xa9\xc6\xa7\x6a\x21\x18\x19\x54\x29\xab\x02\x67\x08\xde\xbf\xa0\x71\x19\x89\xf7\x62\x35\xee\xb3\xc8\x7e\xbe\x3c\xb5\xda\x1b\x29\x20\x0a\x41\x0a\xbe\x00\xbc\x2e\xa5\xc6\x1c\xa4\x58\xb2\x1f\xf4\xfd\xf5\xd3\xa7\x8f\xb5\x2b\x7d\x98\x6a\x84\x67\xb7\xa4\x34\xbd\x38\x7f\x7d\xb1\x9c\xd7\x67\x41\x1b\xb3\x36\x88\x01\x4a\x34\x42\xd7\xe6\x03\x85\x9e\xb6\x32\xd1\xd1\xde\xa2\xef\x37\x50\x10\x2d\x3a\xc6\xe3\x9b\x33\x4d\x06\x1c\x73\x97\x85\xa0\xcf\x3a\x1c\x45\x94\x78\xe1\xc8\x72\xe1\x9b\xb3\x1a\xf2\x21\x27\xa3\xde\x86\x42\xb1\x90\x33\x0d\x42\x1a\x10\x48\x51\x6b\xa2\x16\xae\x38\x74\x21\xa7\x3c\x87\x01\xd6\xc9\x64\x2b\x70\xfe\xd1\xae\x0b\xba\x90\x28\xce\x50\xc1\xcc\x5f\x3d\xea\x53\x90\x0a\x98\x81\x39\xe3\x1c\x28\xb1\x50\x59\xff\x2a\xc0\x8d\xb4\x8a\x7d\xaa\x73\x30\x73\x56\x5d\xa9\x6d\x23\xd5\x2a\xac\x27\x5e\x7d\xe2\xd5\x7b\xf2\x6a\x52\xd5\xd2\xf6\x76\x1f\xf2\xd7\x9c\xda\x76\x17\x67\x58\x1e\xd5\xcb\xef\x75\x34\x7c\x80\x83\xd2\xd6\x0b\x37\x1f\xea\x7e\xa7\x23\xa3\xa6\x87\xdc\x33\xed\x61\xdb\x6e\xd9\x43\xaf\xa1\xb2\x20\xb7\x94\x6d\x5f\x28\x6e\xef\xbf\x3d\xe4\xe2\xed\x56\x1f\x6d\x5d\x1d\xee\xe1\xd6\xaa\x5c\x2d\xe8\x83\x6f\x4f\x6f\x77\x78\xaf\x1b\xd4\x7d\x76\xf8\x5d\xee\x58\x4f\x5e\xde\x83\x8e\xaa\xd8\x7e\xee\x15\xea\x26\x1d\x77\x1c\x45\xee\x69\x7a\xc3\x74\xdf\xe2\x94\x52\xe6\x87\xd1\x48\x29\xf3\x2d\x04\xe2\x8e\x42\x43\x18\x32\xa5\x0d\x98\xb9\x0c\x3f\xdf\xb9\x53\x4f\xa9\x50\xa3\x30\xa7\x56\xbc\xd5\xf2\xab\xce\x0c\x83\x85\xeb\xdb\x7e\xa8\xd6\x48\xed\xf9\xe4\x4a\x0e\xe2\x03\x20\xdb\xf9\x0b\xc0\x0f\x24\xa4\x15\xbb\x9a\xe5\x48\x89\xca\x5c\x28\xce\xb4\x21\x66\xaa\xd7\x4d\xe7\x4a\xae\x99\x3e\xb0\x3a\x57\x4c\x7b\x93\x13\xc3\xf7\xb5\x66\x23\xbd\x87\xbd\x5f\x9b\xd3\x1e\xed\x17\xa1\x9a\xad\x9e\x7e\x0e\x7a\xd0\x9f\x83\x56\x58\x2b\x6a\x93\xc5\xdd\xcf\xeb\x68\x68\x12\xee\xf2\x50\x19\x9d\x28\x29\x8d\xfb\x1a\x97\x38\x69\xd6\xa3\x32\xdb\x24\xec\x67\x44\x0b\xc2\xc4\x92\xc8\x18\x17\xdb\x24\xc6\xb8\x58\x5a\xca\x84\x8f\x22\xd3\x63\x56\x66\x33\x54\x6c\xb8\xf0\x3c\x64\x39\xb5\xa9\x5c\xc8\x25\xfa\x19\x4a\x4f\x4b\x5b\xc2\x10\xa8\x52\x90\x09\x13\xa3\xf8\x61\x78\xfc\x91\x39\xf7\x18\x02\x85\x82\x67\x4e\x68\x0c\xd8\x09\x92\xe4\x39\xe6\xb6\x5f\x54\xab\x98\xb8\x42\x6a\xa4\xaa\xa7\x44\x37\xf4\x3a\x2a\x9c\x4b\x35\xe6\x92\xe4\x8e\x13\x33\x32\x60\x9c\x99\x05\x50\x22\x5c\xef\x29\x91\xb2\x21\xa3\x84\xf3\x05\xb8\x92\x74\xf3\x38\x71\x2d\xca\x48\x60\x22\x67\x94\x18\x04\x66\x34\x54\xb2\x46\x82\x42\x8a\x6c\x86\x60\x75\x82\x51\x64\x38\x64\xf4\x1e\x7d\x6a\x4b\xbf\xd8\x83\xd1\x76\xd1\xfd\x26\x8c\xbb\xdd\x2f\x5f\xfb\x97\x2f\x7a\x7d\xf7\xff\x79\xaf\xf7\xad\x1b\xbe\xf5\x7d\x27\xf8\x9f\x68\x05\x97\x36\xfd\xff\x10\x7c\xe1\x30\x80\xf0\xdc\x5f\x81\x30\x0d\x85\xd4\x26\xb5\x5b\x67\x23\x64\xbe\x78\xa4\x29\x50\xcd\x99\x46\x20\x02\xf0\xda\x28\x12\x7c\x0d\x97\x51\x76\x06\xed\x34\xb5\x68\x27\x39\xc7\x37\x81\x7d\xb6\xb4\x8f\xb4\xdd\x35\x9e\xba\xd9\xff\x57\x37\xfb\x6f\x00\x00\x00\xff\xff\x2b\xd7\xed\xe1\x2e\x27\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 2194, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x9c\x55\x4d\x6b\xe3\x3a\x14\xdd\xe7\x57\x5c\xfc\x16\xdd\xd4\x4e\x5b\x1e\x0f\x2a\xe8\x22\xb4\xf0\x36\xd3\x36\x94\xa1\x30\xcb\x1b\xf9\x26\xd6\x8c\x2c\x09\xe9\x3a\x43\x48\xf3\xdf\x07\xc5\x76\xfd\x11\x27\x33\x8c\x57\x41\xba\xe7\xdc\x8f\x73\xae\xf2\x0f\x7c\x7d\x7d\x7a\x15\xc0\x05\x81\xf5\x6a\xa3\x0c\x6a\x60\x2a\x9d\x46\x26\x28\x30\x40\x20\xbf\x55\x92\x00\xa5\xb4\x95\xe1\x6b\xf0\x56\x53\xb8\x06\x62\x39\x43\xa7\xde\xc9\x07\x65\x8d\x00\x74\x2e\xcc\xb7\xb7\xb3\x1f\xca\xe4\x02\x9e\xc8\x69\xbb\x2b\xc9\xf0\xac\x24\xc6\x1c\x19\xc5\x0c\xc0\x60\x49\x02\x9c\xb7\x25\x71\x41\x55\x68\x8e\x82\x43\x49\x02\xf6\x7b\xc8\xde\x48\x13\x06\xca\x5e\xda\x63\x38\x1c\x66\x00\x1a\x57\xa4\x43\xa4\x80\x98\x69\xc4\x01\xe0\x6b\xd8\x29\x47\x84\x07\x47\x32\x42\x3d\x39\xad\x24\x86\x3a\xea\x1d\x75\x45\x21\xeb\x88\xb2\xe6\xfe\x31\xf6\x59\xa7\x0d\xa4\x49\xb2\xf5\x75\xe2\x12\x59\x16\x5f\x7a\x95\x4c\xd5\xd2\x0e\xaf\x81\xf4\x9a\x8f\x9f\x1e\xa0\xa7\x7b\xf9\x6d\x3f\x0d\xd4\x18\xcb\xc8\xca\x9a\x1e\x5f\x50\x39\x49\xf4\x99\x0a\xac\x6c\xa6\xec\x5c\x99\xef\x24\x59\x40\xb2\x46\x1d\x28\x39\x06\xb6\xf3\x38\xfe\xae\xe5\x5d\xd4\xea\xbe\x8c\xf5\xd9\xef\x53\x50\xeb\xcf\x61\x6d\xb4\x5d\xa1\xce\x9c\x57\xd6\x2b\xde\x3d\x6a\x0c\x61\x58\xd5\xc9\x95\x80\xa4\x37\xed\x0b\x04\xc9\x31\x19\x99\xbc\x23\x93\xd6\x30\x2a\x43\xbe\xd7\x61\x3a\x65\xa2\xf6\x53\x25\x6e\x46\x19\x7b\xfa\x16\xd5\x0a\x0e\x87\x79\x77\x22\xa6\xe3\x18\x37\xc7\x7a\x46\xbc\xcb\x4a\xeb\xa5\xd5\x4a\xee\x06\x06\x6a\x5a\x1a\x85\xc0\x07\xe4\xb4\xc6\x4a\x33\x24\x0b\xfd\x13\x77\x21\xe9\xfa\x3a\xca\xe7\x37\xbd\xae\xea\xce\xae\xd2\x34\xb0\xf5\xb8\xa1\x8c\x43\xbe\xca\x3c\x31\x99\xa8\xf0\xc3\x39\xc3\x36\xf7\x70\x38\x5c\x9d\x72\x49\x6b\xd6\x6a\x93\xad\x95\xa6\x87\x39\xb1\xec\x75\xde\xfb\x99\xed\x4a\xdd\x07\x3b\xeb\xf9\xa4\xb2\x4f\x25\x96\xd6\xb3\x80\xfb\x9b\xfb\x9b\x41\x44\xbb\xda\x05\xb3\xeb\x5d\x68\xb5\x25\x43\x21\x2c\xbd\x5d\xd1\x90\x33\x46\xfe\x4f\x2c\x46\x34\x0e\xb9\x10\x30\x4f\xe7\x05\xa1\xe6\x62\x37\xbe\x9e\x4a\xef\x09\x73\xf5\x97\x69\x22\xf6\x0f\x93\x04\x5b\x79\x49\x41\x8c\x97\x62\x20\x48\x13\x14\xb5\xde\xef\x81\xed\x37\x2c\xf5\xe5\xc8\x0f\x50\x26\x27\xc3\x70\x7b\x57\xa3\x52\x20\x1d\x68\x9a\xa1\x31\x5b\x63\xad\xb7\x8b\x24\xfd\x4d\x8a\xdf\xd6\xea\xaa\xa4\xe7\xb8\xe7\x03\x7d\xdb\x8d\xaa\xed\x92\xd6\x61\x83\x91\x94\x11\xb3\xac\x47\x36\xf4\xd1\x80\x66\x1c\x76\x7c\x84\x52\x49\x9e\xc3\xec\xd4\x2a\xa7\xb7\x75\xe6\xcf\xda\x2e\xd7\x55\x9f\x3e\xa3\xeb\xb7\x72\xe6\x69\x48\xcf\xa6\x8c\x0f\xa0\xf4\x43\x7f\x34\xc3\x7d\xb6\x39\x09\xf8\xf7\xee\xa6\xd5\xdb\x58\x9e\x52\x32\x90\xac\xe2\x5b\x96\x91\xc1\x95\xa6\xd1\xd0\xad\x8b\xfb\x89\x5a\x00\xfb\x8a\xa6\x85\xa9\x4b\x78\xe9\x4a\x6c\xf5\x6d\x5f\xfa\xf5\x5a\x19\xc5\xbb\xb6\xc8\x63\x3d\x46\xea\x2a\x27\x48\x8c\xcd\xa9\x0d\x48\x20\xeb\x9c\xf0\x5f\x97\x64\x00\x70\x36\x5f\x18\x56\x8b\xb3\x98\xf3\xf6\x66\xab\xc9\xd7\x7f\x39\x1d\x79\xef\x50\x5c\xf6\x7c\x1f\x7e\x9a\xb2\x19\xcb\xaf\x00\x00\x00\xff\xff\xef\xdf\x2b\x86\x92\x08\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/destination-rule.yaml": &vfsgen۰CompressedFileInfo{ - name: "destination-rule.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 479, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\xcf\xb1\x4a\x03\x41\x10\xc6\xf1\x7e\x9f\x62\x5e\xe0\x56\xc4\x6e\x3b\x25\x16\x82\x88\x44\xb0\x1f\xf6\xe6\xbc\x21\xb3\x3b\xcb\xce\x6c\x24\x84\xbc\xbb\x04\x15\x2b\x8b\x14\xe9\x3e\x3e\xf8\x15\x7f\x6c\xfc\x4e\xdd\x58\x6b\x82\x4a\xfe\xa9\x7d\xc7\xf5\x23\xb2\x39\x6b\x64\xbd\xd9\xdf\xa2\xb4\x15\xef\xc2\x8e\xeb\x9c\x60\x43\xe6\x5c\xd1\x59\xeb\x76\x08\x85\x42\x8e\x33\x3a\xa6\x00\x50\xb1\x50\x82\xd6\xb5\x90\xaf\x74\xb0\x9f\xcb\x1a\x66\x4a\x70\x3c\x42\xdc\x92\x10\x1a\xc5\x97\xdf\x1b\x4e\xa7\x60\x8d\xf2\x99\xaf\x6a\xfe\xc7\x87\xc5\x7f\x05\x80\x77\x5c\x16\xce\xaf\x2a\x9c\x0f\x67\x0c\xe0\x62\xdf\x03\xa0\xe8\x4c\x09\x36\x4f\x6f\xf7\x0f\xcf\x8f\x61\x9a\xa6\x70\xb5\xca\x61\xd3\x32\x44\xae\x95\x1a\x6d\x9f\x63\x96\x61\x4e\x3d\x8a\x66\x94\x0b\xe3\xbf\x02\x00\x00\xff\xff\x9e\x1e\x09\x77\xdf\x01\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/inrgess.yaml": &vfsgen۰CompressedFileInfo{ - name: "inrgess.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 1146, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x52\xb1\x6e\x1b\x31\x0c\xdd\xef\x2b\xde\xe0\xb1\xbe\x24\x40\x97\x08\xe8\x07\x74\x09\x82\x0e\x01\x3a\xd2\x77\x4c\x4e\xb0\x2c\xa9\x22\x6d\xa4\x70\xf4\xef\x85\xa4\x73\x6d\x37\x41\x9c\x6e\xb9\x89\x24\xf4\x1e\x1f\xdf\xbd\xfd\x7e\x09\xfb\x88\xfe\x81\xdc\x96\xa5\x8f\x29\x6c\x58\x27\xde\x4a\x6f\xfd\x53\x62\x91\x9e\x3d\xad\x1c\x8f\x58\xe6\xdc\x51\xb4\x0f\x9c\xc4\x06\x6f\xc0\xcf\xca\xbe\x94\x72\xb5\xbb\x59\xb1\xd2\x4d\xb7\xb6\x7e\x34\xf8\xde\x80\xdd\x86\x95\x46\x52\x32\x1d\xe0\x69\xc3\x06\x47\xf6\x79\x24\x91\x06\x36\xd8\xef\xd1\xff\x60\xc7\x24\xdc\xdf\x1d\xc6\xc8\xb9\x03\x1c\xad\xd8\x49\xa1\x00\x28\xc6\x7f\x38\x80\xd4\x60\xaf\x39\x1a\x9c\xbc\x0f\x4a\x5a\x54\x36\x8e\x72\x6f\x22\xff\xc4\x58\xac\xf9\xf7\x17\x2c\x76\xe5\x70\x98\x6f\xef\x59\x70\xc2\xd2\x68\x1b\x53\xa5\x40\xce\x75\xf9\x4c\xf4\x82\x5f\xdb\xa0\x7c\x78\x56\xd6\xb1\x1f\x4b\x2b\x91\x87\xa2\x21\x6d\x1d\x8b\xe9\x2e\x1b\x3f\x05\x51\x39\x25\x9a\x75\x97\xf9\x05\xc1\x67\xd0\x25\x4a\xdb\x44\x56\xec\xdf\x13\x26\xd5\x68\xe6\x1a\x88\xa4\x93\x1c\xdb\x02\x2c\xa3\x0a\xb4\x8f\x58\xbc\xb1\x6f\x08\x5e\xf9\x59\xef\x49\x27\xe4\x5c\x37\x7c\xe8\x15\x3b\x29\x16\xe1\xaa\x36\xcd\x1f\x9c\x7c\x2b\x1a\xd6\xec\x47\x73\x36\x04\x84\xd3\xce\x0e\x7c\xf7\x3a\x4c\x6f\xbc\xba\x0f\x49\x0d\x6e\xaf\x6f\xaf\xcf\xfe\x44\x89\x71\xad\x9b\x84\x83\x43\xff\xe3\xc4\x87\x4e\xfc\x8c\x3e\x9c\xa4\xb1\x19\xf2\x7e\x00\xd5\xcd\x19\x52\x57\x03\x0b\x0d\x3f\x69\xe3\x2e\x41\x5e\x60\xfd\xc8\x5e\xf1\xf5\xb8\xe8\xcc\xf9\x56\xff\x09\x00\x00\xff\xff\x9b\x41\x95\x22\x7a\x04\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 962, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x52\x4d\x6f\x13\x31\x10\xbd\xfb\x57\x3c\x89\x4a\xbd\x74\x4d\xe1\x56\x4b\x9c\xb8\x57\x15\x1f\xbd\x0f\xde\x49\x62\xd5\xf1\x18\xcf\x24\xa8\x0a\xf9\xef\x68\x77\xb3\x62\x29\xa4\xaa\x50\x8f\x3b\xfb\x3e\x3c\x6f\x1e\xd5\x74\xcf\x4d\x93\x94\x80\xfd\x3b\xf7\x90\x4a\x1f\xf0\x99\xdb\x3e\x45\x76\x5b\x36\xea\xc9\x28\x38\xa0\xd0\x96\x03\x6a\x93\x2d\xdb\x86\x77\x7a\x1a\x69\xa5\xc8\x01\x87\x03\xfc\x27\xce\x4c\xca\xfe\x76\x1e\xe3\x78\x74\x00\x95\x22\x46\x96\xa4\xe8\xa0\x83\x85\x86\x4f\xf2\x56\x63\xa3\xca\x01\x97\xd6\x76\x7c\x39\x02\x0e\x87\x0e\x69\x05\x7f\x4f\x79\xc7\xea\x17\x78\x9d\x1e\x36\x09\x4f\xc0\x46\x65\xcd\xb8\x78\xe0\xc7\x2b\x5c\xec\x29\x23\x7c\x78\x86\xe9\x17\xaf\xf9\xad\x32\xd2\x71\x3c\x8e\x7b\x8c\x22\x3f\xf1\x7d\x27\xf6\x87\x11\x97\xfe\x9f\x9f\x99\xbe\x71\x3e\xad\x46\xb5\x3e\xc9\x08\x68\x53\x2c\x7f\x67\x34\xd0\xb5\x72\x1c\xa8\xca\x99\xa3\x49\x3b\x27\x53\xa5\xd9\xe8\xd1\x9d\x0e\xb1\x31\xab\xdd\x13\xa7\xda\xc4\x24\x4a\x0e\xf8\xf2\xf1\x6e\x9a\x48\xb3\x80\x9b\xeb\x9b\x6b\xe7\x5e\x94\xea\x1b\x7c\xd5\x54\xd6\x50\xae\xd4\xc8\x18\xa9\xac\x1b\xab\x62\x25\x0d\x45\x7a\x1e\x14\xaf\x60\x02\xda\x4b\xea\x11\xa5\xac\x72\x8a\x86\x1f\xc9\x36\xa8\x29\x8b\x81\xdf\x33\x8c\xd5\xc6\x9f\x69\xad\xde\x75\x5d\xe7\xfe\xbb\x68\xdd\x6c\xfb\xe2\xc6\xbd\xca\x45\xec\x71\x68\xe5\xad\xf4\x7c\x37\x79\x2f\x4e\xb0\x88\x75\xd0\x2b\x27\xd0\x24\x78\xbe\x7b\x33\xce\x0f\xfc\xb9\x4b\xe7\xce\xf9\x7c\x23\x16\x0d\xfc\x15\x00\x00\xff\xff\x9f\x12\x7f\x50\xc2\x03\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 311, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8d\x3b\x4e\xc5\x30\x10\x45\x7b\xaf\x62\x36\xf0\x2c\xd1\xba\x63\x03\x08\x11\x29\xfd\xc4\xb9\x04\x8b\xf1\x47\xfe\xa4\xb1\xb2\x77\x64\x12\x9a\xd0\xbc\x6e\x74\x34\xe7\x5c\x4e\x6e\x46\x2e\x2e\x06\x43\xfb\x8b\xfa\x76\x61\x35\x34\x21\xef\xce\xe2\xd5\xda\xd8\x42\x55\xbd\x3f\xc8\x7d\x92\x9e\x59\x1a\x8a\xde\x24\x2e\x2c\xda\x79\xde\xf0\xde\x44\x26\xd8\x8c\x5a\xe8\x38\xd4\x9d\x99\x5f\x37\x73\xd8\xf0\x8c\x4e\xf4\xa0\xc0\x1e\x86\x7a\x27\x3d\xc8\xd0\x11\xd6\xdb\xe9\x51\x79\xe5\xca\x46\xd1\xf5\x9f\x72\xf4\xa8\x5f\x68\xe5\x42\x25\xb1\xbd\x3a\x1f\x10\x70\x81\x7e\xfb\xc3\xe7\x94\xf0\x02\x29\x23\x41\xc4\x29\xdd\x1a\x44\xf9\xd4\xfe\x37\x86\xfe\x13\x00\x00\xff\xff\xae\x13\x5f\xc0\x37\x01\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/templates/tests": &vfsgen۰DirInfo{ - name: "tests", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - }, - "/charts/istio-telemetry/prometheus/templates/tests/test-prometheus-connection.yaml": &vfsgen۰CompressedFileInfo{ - name: "test-prometheus-connection.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 899, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x52\xbd\x8e\xdb\x3c\x10\xec\xf5\x14\x03\x15\xe7\xe6\x93\x64\x7f\x49\x8a\xe3\x55\x87\x34\xa9\x0e\x46\x10\x5c\x13\xa4\x58\x93\x6b\x6b\x73\x14\x29\x90\xd4\xe1\x0c\x5b\xef\x1e\xe8\x0f\xf7\x63\x07\x69\x58\x2c\x67\x66\x77\x66\xf7\x74\x2a\x20\x7b\x94\x8f\x64\x3b\x8e\xe5\xc1\xfa\x1d\xd9\x92\x1d\xed\x2c\x7f\x63\xdb\xfc\xe0\x98\xd0\xf7\x19\xb5\xf2\xc8\x21\x8a\x77\x0a\xcf\x9b\xec\x49\x9c\x51\xd8\x7a\x93\x35\x9c\xc8\x50\x22\x95\x01\x8e\x1a\x56\x68\x83\x6f\x38\xd5\xdc\xc5\x22\x71\x4c\x73\x3d\xb6\xa4\x59\xe1\x74\x42\xf9\x9d\x2d\x53\xe4\xf2\x61\x29\x0f\x0d\x00\x4b\x3b\xb6\x71\xd0\x01\xa8\x6d\xaf\x09\x01\x61\xe2\x5e\x0a\x4d\x1a\x80\xc4\x24\xfe\x2d\x37\x03\xc8\x39\x9f\x28\x89\x77\xb3\x7c\x14\xc3\x9a\x42\x39\x82\x4b\xf1\x95\xb8\xdf\xac\x93\x42\xbe\x27\x1b\x39\x1f\x41\x35\xdb\xa6\x8c\x75\x55\x7b\xff\xa4\x30\x4c\x50\xc4\x4e\x6b\x8e\x31\x8b\x2d\x6b\x95\x5d\xcf\xae\x0d\xe2\x83\xa4\xe3\x57\x4b\x31\xbe\x4e\x76\x51\x56\xc8\x07\x0f\xff\x26\xe7\x63\x23\x76\x66\x12\xd2\xde\x25\x12\xc7\x61\xf6\x52\xcc\xb1\xe7\x1f\xe2\x9a\x4c\x00\xd2\xd0\x61\xce\xeb\x7d\xaf\xba\xdb\xa1\xef\xab\x6b\x43\xf8\x97\x63\x39\xf2\xd0\xf7\xea\x12\x90\xe8\xb0\xc4\x3d\xeb\x6f\x3b\x6b\xb7\xde\x8a\x3e\x5e\xb5\xf5\x01\x33\x9a\x9a\xd8\xda\x37\x0d\x0d\xb7\xf4\x73\x15\xeb\xd5\x7f\x58\x15\x7a\x78\xf7\x3e\x40\x20\x0e\x1b\xfc\x8f\x4f\x77\x30\x1e\xba\x0b\x16\x75\x4a\xad\xaa\xaa\x57\xab\xea\x76\x7d\xbb\xae\x8a\x2a\x30\x99\x23\x6e\x6e\xc0\x2f\x92\xb0\xc6\xf9\x8c\x68\x99\x5b\x6c\xbe\x0c\x6c\xc7\x77\xd3\xcf\x66\xf5\x2b\x1b\xae\x28\x26\x0a\x69\x99\xf8\x81\x9f\x39\x0c\x77\xb2\xdf\x8b\x93\x74\x9c\x82\x1d\xd7\xeb\xb4\xed\x0c\x23\x77\xde\xf0\xf2\x9d\xa3\xc4\x19\xe2\x0c\xbb\x84\xcf\x4b\x12\xef\xe0\xad\x37\xf7\x2e\xc9\xfd\x5f\x19\x6f\x56\xfa\x27\x00\x00\xff\xff\x63\x0c\xe9\xcc\x83\x03\x00\x00"), - }, - "/charts/istio-telemetry/prometheus/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 1908, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x54\x4d\x8f\xdb\x36\x10\xbd\xfb\x57\x0c\xec\x6b\xac\x64\xb7\x68\xd1\xea\x16\xa4\x2d\xb0\x68\x51\x04\x70\x7a\x2a\x7a\x18\x93\x23\x89\x58\x7a\x46\xe5\x0c\xed\x15\x8a\x02\xf9\x21\xcd\x9f\xdb\x5f\x52\x90\x92\xbd\x5f\x49\x80\xde\x24\xf2\xcd\x1b\xce\x7b\x8f\x1c\x93\x1c\xc8\x06\xca\xda\xae\x00\x88\x71\x1f\xc9\xb7\x60\x29\xd3\x0a\x20\xd1\x18\x83\xc3\x77\x92\xd9\x5a\xb8\x5a\x01\x0c\x79\xdf\x82\x17\x77\x4b\xa9\x09\xf2\xba\x94\xaf\x00\x0c\xfb\x16\x8e\xd7\xcd\xf7\xcd\x9b\x5a\x65\xc4\x16\x84\x5b\xf8\x6e\x58\xad\x00\x36\xf0\x4e\xd8\x92\x44\x05\x1b\x08\xba\x44\x7f\x65\x62\x37\x81\x74\xf0\x70\x00\x50\x97\x70\x0c\xdc\xaf\x60\xfe\xa4\x1b\x36\x4a\x47\x8c\x2d\x5c\x7d\xab\x85\xc8\x09\x1b\xdd\xd9\x7b\xb4\xa1\x85\xd7\x0f\xa5\x65\x2f\x70\x9f\x48\xeb\x18\x8f\x06\xe9\x30\x2a\xd5\xa5\xcd\x06\x7e\x57\xf2\x60\x02\x2e\x11\x1a\x01\x32\xdc\xcc\x45\x90\xc8\x49\xf2\x4d\x05\x0e\xa2\xb6\xd0\x00\x6c\x1f\x1d\xb0\x89\xe2\x30\xd6\x0d\x64\x16\xc3\x32\xe3\x05\xb9\x81\xdb\xbc\xa7\xc4\x64\xa4\x45\x9a\xe5\x3c\x8d\x8b\xa8\xda\x02\xf7\x81\xef\xbe\x00\xb5\xa8\x5b\x74\x07\x6a\x61\x5d\x84\x5f\x57\x98\xc5\x47\xd4\x3b\x72\x89\x4c\xe1\x90\xd5\x60\x4f\x70\x40\xce\x18\xe3\xb4\x8c\xe2\x21\x70\x95\x96\xf1\x40\x3a\xa2\xa3\xe6\x52\xba\x05\xad\xc5\xbf\x61\x69\xf0\x30\xcd\xd6\xa2\x5e\x40\xcf\xa6\xde\x7c\x69\xf6\x6a\xe6\x55\x73\x0d\xc1\x20\x28\xf8\xa0\x55\x67\xd8\x4f\xe0\xa9\xc3\x1c\x0d\xb6\x65\xcf\x21\x97\x63\x2e\x36\x40\x27\x09\x74\x24\x17\x30\x82\x43\x25\x7d\x05\xfb\x6c\x70\x92\x1c\xfd\xd9\x8d\x51\x92\x55\x7a\x27\xdc\xc5\xe0\x4c\x1b\xb8\x61\xe8\x89\x29\x61\x5c\x1a\xb2\x58\xf5\xea\x70\x20\xf6\xb3\x99\x59\x09\x58\xfc\x4c\xa0\x73\x2b\x4a\xc7\xe0\xce\x5d\x0a\xa0\x47\xa3\x13\x4e\x0a\x81\xd5\x08\x7d\xb3\xda\xc0\x19\xd6\xae\x36\xcf\x2d\x85\xbf\xff\x99\x17\x0b\xf1\x7b\x49\xb6\x60\x5e\x04\x6b\x59\x2d\xad\x5b\xf8\xe6\xfa\xcd\x0f\x6f\x8a\x44\x4a\x2e\xa7\x60\xd3\xb3\x2c\xd6\x4b\xb5\x9a\x49\x77\x14\xc9\x99\xa4\xda\x0a\xc0\x24\x52\x3a\x37\xff\xe3\xcf\x59\xe7\x5d\x51\xac\x9b\xaa\xb1\xa3\x78\x40\xb6\xb0\xc5\xae\x0b\x1c\xac\xac\xa2\x01\xc6\x28\x27\x85\x49\x72\xcd\xb5\xb0\x5a\xc2\xc0\x70\x1a\x82\x1b\x6a\x23\xad\x54\x93\xe4\x54\x39\x82\x02\xc5\xd0\x87\x7d\xa4\x52\xb1\x27\x50\x37\x90\xcf\xd5\x44\x2c\xf7\x43\x18\x22\xee\x29\x6a\xf9\x1a\xc5\xeb\xd2\x29\x51\x65\xc2\x98\x08\xfd\x04\x29\x33\x07\xee\x0b\xa8\x06\xaf\x38\x90\xd0\x06\x4a\x05\xcf\x9f\x23\xab\xc7\x69\x2a\xcb\x87\x81\x12\x15\x4e\x70\x39\x25\x62\x8b\x13\xd8\x49\xc0\xa6\x91\xb4\x3c\x0b\x4f\x66\x6d\x57\x4b\x24\xd7\xe5\xe5\x08\x89\xfc\x8f\x39\x05\xee\x77\xf3\xd1\x03\xf7\x37\x3d\xcb\x65\xf9\xa7\x3b\x72\xb9\x68\xb9\xbe\xd4\x8d\x89\x3a\x4a\xff\xb3\x70\x16\xd1\x13\x8b\x11\xdc\x7f\xfc\x77\xc0\xe4\xef\x3f\x7e\x82\xa3\x36\xe5\x57\xa5\xb3\xf2\xbb\x9c\xe9\x40\x6c\xfa\xaa\x5a\x51\xd2\xef\xa9\x0b\x4c\xb3\xf0\x47\x8c\x79\x31\x22\x30\xac\x47\xf1\x6f\xd9\xc2\xdb\x65\xba\x5f\x8b\x40\xe7\x3c\xac\x01\xd9\xbf\x80\x7c\xa0\x74\x78\x0a\x5b\x6e\x4a\x4a\xa4\xa3\xb0\x0f\xdc\xc7\x69\x96\xf6\x67\x49\x40\x77\x78\x18\x23\xcd\xba\x7d\xad\xdd\x8c\xd8\xc2\x2d\x4d\xed\x25\xb6\x8b\x6a\x32\x96\x48\x96\x88\xde\xf0\xb2\x34\x0f\xd2\xc2\xee\xea\xd5\xee\x7a\x59\x33\x19\x25\x4a\x3f\xfd\x52\x28\xd6\x4f\x1f\xb6\xf2\xa8\x94\x27\x69\xbd\x98\x1e\xf4\x33\x41\x4e\x39\x12\x68\xb9\x9c\x35\x68\xe7\xb4\x2f\xb2\xce\x77\xfe\x59\x54\x2b\x9d\xb0\x09\xe0\x9c\xbc\xd0\xcd\xc5\xf3\x8f\xbe\x48\x29\x56\xca\x53\xb0\x61\xce\x23\x0c\x78\x2c\xeb\xb7\x34\x4f\x5b\xec\x5c\xa6\x2f\x96\x16\x0f\xea\xac\x65\x63\x77\x75\xff\xf1\x53\xd1\xf6\xab\x42\x96\x5b\xfb\x02\xf2\xc2\xb7\x0a\xfb\x2f\x00\x00\xff\xff\xb2\x5d\x49\x32\x74\x07\x00\x00"), - }, - "/charts/istio-telemetry/prometheus-operator": &vfsgen۰DirInfo{ - name: "prometheus-operator", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - }, - "/charts/istio-telemetry/prometheus-operator/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 140, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\x8d\xbd\x0a\xc2\x40\x10\x06\xfb\x7d\x8a\x25\xbd\x8b\x17\x0b\x21\xa0\x60\x27\xd8\xdb\x9f\xf1\x93\x1c\xdc\xcf\xb2\xb7\xc9\xf3\x0b\x82\x29\x67\x8a\x99\xa8\xe9\x09\xeb\xa9\xd5\x89\xb7\x40\x6f\xf4\xd9\x92\xfa\x8f\x6f\x7c\x47\x2e\x3c\x2f\xd1\x9c\x3f\xcd\xf8\xb1\xbe\x60\x15\x8e\x4e\x35\x16\x4c\xac\xd6\x0a\x7c\xc1\xda\x0f\x4d\x61\xd1\x9b\xd1\xf6\xcf\x05\x09\x72\xa4\xa8\xba\x0f\x46\x39\x49\x20\x4f\x39\xc3\x76\x39\x5c\x2f\xa3\x9c\x65\x1c\xe8\x1b\x00\x00\xff\xff\xce\xa7\xa3\x91\x8c\x00\x00\x00"), - }, - "/charts/istio-telemetry/prometheus-operator/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - }, - "/charts/istio-telemetry/prometheus-operator/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 3046, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4f\x8f\x9b\x3e\x10\xbd\xe7\x53\x8c\xa2\x1c\x7e\xbf\xd5\x02\xe9\x15\xa9\x87\x48\xdd\xc3\xaa\x55\x55\x75\xab\xde\x1d\x18\xc0\x8a\x63\x53\x63\xd2\x44\x34\xdf\xbd\xb2\x21\xc4\x10\xf3\x27\xbb\xab\xde\xd0\xf0\x3c\x6f\xfc\xe6\xcd\xb8\xaa\x82\x07\x20\x49\x42\x39\x55\x27\xf0\x20\x53\x2a\x2f\xc2\x20\xd8\x95\x5b\x94\x1c\x15\x16\x3e\x15\x41\x2c\xa2\x22\x88\x04\x8f\x30\x57\xe6\x23\xa1\x69\x29\x89\xa2\x82\x07\xa4\x28\x68\xca\xbd\x5c\xc4\x1e\x17\x31\x06\xf0\x10\x9c\xcf\x8b\x45\x55\x79\x10\x63\x42\x39\xc2\x52\xc7\x2f\x1c\x4b\x38\x9f\x17\x00\x3a\xb4\x69\x42\xe1\x02\x00\x40\xe2\xaf\x92\x4a\x8c\x3f\x95\x92\xf2\xf4\x25\xca\x30\x2e\x19\xe5\xe9\x73\xca\x45\x1b\x7e\x3a\x62\x54\x6a\xda\xfa\x8c\x26\xa1\x3c\x62\x65\xdc\xb0\x5c\x52\x7e\x1f\x48\xb6\x04\xbf\xe6\x07\xc8\x25\x26\x28\xdf\x8b\xf0\xdb\x50\xb6\x86\x51\x1f\x44\x1e\x83\x4b\x9a\xe9\xa2\x9b\x92\x6b\xd9\x5e\x90\x61\xa4\x84\xfc\x81\x72\x5f\x84\xcd\x0f\x0f\xf6\x44\x45\xd9\xd3\x31\x97\x58\x14\x54\xf0\xf6\x8f\xfe\xb7\xc3\x53\x08\x5b\x54\xc4\xef\xf6\x95\xc8\x28\x6b\x61\x00\x22\x47\x49\x94\x90\x21\x3c\x73\x2b\x7c\x20\xac\x44\x2b\x9f\xae\x5f\x12\x9e\x22\xac\x76\x78\x7a\x84\xd5\x81\x30\x08\x3f\x82\xff\xd3\x00\xfd\x94\x89\x2d\x61\xbe\x4e\x7e\xad\xbc\x55\x2f\x81\x54\xc1\x7f\xe6\xcc\x1f\xa0\x5c\xfd\x0f\xeb\x2e\xca\x83\xaa\x32\x99\x6f\x0f\x37\x0a\x4e\x84\x56\xb6\x4a\xba\xb0\x18\x13\x52\x32\xd5\x2f\xb0\x09\x7f\xb5\xd1\x17\x48\x2e\xc5\x1e\x55\x86\x65\xe1\x77\xb2\x79\x3d\x2e\x97\x0e\x5d\x7e\xeb\x40\xd3\x08\xe7\xf5\x66\x6a\x7f\x91\x47\x53\xb9\x95\x98\xe3\xb4\x11\xb7\x9a\xa4\xaf\xe8\xf0\x54\x6f\x3d\xf8\x8d\x34\xcd\x54\xd8\x96\x6f\x10\xd7\x4b\xd4\xf3\x88\x3c\xc2\xeb\x6d\xff\x9d\xa7\x1d\xb6\xeb\xb8\x6b\x86\xc0\xb9\x88\x37\x5c\xd1\x8d\xbd\xe8\x1a\x55\xdc\xc6\xea\x1d\xf8\x42\xb6\xc8\xc6\x8c\xd8\xc3\xeb\xf9\xef\x9c\x31\x85\xf6\x40\xa1\xdd\x9c\x7b\x6b\x68\x84\x78\xf3\x66\xee\x91\xcc\x58\xce\xbd\xc9\x9e\x5d\xff\x8d\x26\xef\xb7\xed\x7b\x4c\x53\x0b\x7f\x78\x2a\x67\xfa\x67\xf2\x35\xb0\x86\x94\xf2\x18\x8f\x8f\xb0\xa2\x0a\xf7\xf6\x9c\xde\xd9\x68\x0f\x98\x1d\xbe\x63\x0e\xf5\xe8\x68\x72\x7f\x64\xaf\xb5\x98\x4b\xc8\xf9\x38\xd4\x90\x7a\x3c\xbb\x80\xdb\x91\x35\xcb\xfe\x40\x58\xa1\xef\x5c\xe4\x8c\x2a\x58\x3e\x2e\x47\x52\xd8\x92\xe9\xad\x66\xb6\xb5\x49\xe0\x78\x81\x0e\x93\xef\x8f\x23\xa8\x44\x2e\x98\x48\x4f\x9f\x3b\xaa\x58\xd1\x71\x6f\x8c\x19\x62\x6a\x69\xbf\xd1\x11\x83\xa3\xe3\x99\x9d\x62\xa1\xae\x2d\x18\xb0\xcb\x98\x61\x66\x58\xe6\x0e\xd3\xcc\xb0\x8d\xcb\x38\xaf\xb0\xce\x6c\xf3\x0c\xd8\x67\xc0\x40\xce\xf0\x6c\x13\x41\xfb\xa8\x7e\x58\xaf\x47\x6c\xf5\x37\x00\x00\xff\xff\x9f\x8d\x9d\x49\xe6\x0b\x00\x00"), - }, - "/charts/istio-telemetry/prometheus-operator/templates/prometheus.yaml": &vfsgen۰CompressedFileInfo{ - name: "prometheus.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 3774, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xc4\x57\x4b\x6f\xdb\xc6\x13\xbf\xf3\x53\x0c\xf8\x0f\x90\x8b\x45\xdb\xf9\xf7\xd0\x10\xe8\x41\x71\x8a\xc2\x40\x6c\x08\x72\x13\xa0\x28\x7c\x58\x2d\x47\xd2\xd6\xcb\x9d\xcd\xee\x50\xae\xaa\xe8\xbb\x17\xbb\x2b\xea\x41\xd9\xb4\xe3\x24\xe8\x49\xe2\xf0\x37\xef\x27\x57\xab\x01\xa8\x29\x14\x9f\x84\x6e\xd0\x17\xd6\x51\x8d\x3c\xc7\xc6\x17\xd2\xa1\x60\x1c\x6d\x09\x63\xf4\xd4\x38\x89\xb0\x5e\x67\xc2\xaa\x4f\xe8\xbc\x22\x53\x42\x4d\x46\x31\x39\x65\x66\x85\x24\x87\xe4\x0b\x49\xf5\xe9\xe2\x3c\xbb\x53\xa6\x2a\x61\x27\x20\xab\x91\x45\x25\x58\x94\x19\x80\x11\x35\x96\xb0\x53\xb7\x21\x79\x2b\x24\x96\xb0\x5a\x41\x31\x46\x8d\xc2\x63\x71\xdd\x92\x83\x62\x00\x2d\x26\xa8\x7d\x10\x01\xe0\x12\xe4\x18\x1f\xa0\xde\xa2\x0c\x30\x55\x8b\x19\x96\x90\x07\xcc\xb1\x97\xf3\x66\x02\xeb\xf5\xe9\x8e\x52\x3e\x8c\x63\x31\x83\xf5\x3a\xcf\x00\x16\xad\xe3\x7d\xc0\x2c\x18\xc7\x68\xb8\x07\xb9\x05\x24\xbc\x97\x4e\x58\xbc\x34\x8c\x6e\x21\xf4\x63\x4c\x87\xa8\x0d\x27\xba\x85\x92\x38\x94\x92\x1a\xc3\xd7\xc7\x91\xdd\x00\xae\x52\xa6\x6e\x50\xa3\x64\x72\x29\x86\xc2\x2c\x4b\x60\xd7\xe0\x11\x6e\x1b\xf8\x3e\x06\xe9\x90\x7d\x09\x7f\x82\xf2\xac\x68\xcf\x52\xb8\xcd\x00\xd0\x88\x89\xc6\x61\x55\x2b\x33\x1c\x5d\x96\x30\x15\xda\x63\xd6\xa9\xb9\x99\xa6\x89\xd0\x85\x75\x8a\x9c\xe2\xe5\x85\x16\xde\xb7\x49\x04\x38\x22\x1f\xa6\xb2\x87\x39\x8f\x8a\xd0\x54\x49\x90\x98\x4e\x95\x51\xbc\x0c\x5e\x44\x0b\x8c\xd4\x4d\x85\x90\x1b\xaa\xb0\x7d\x99\x43\x01\x5f\x40\x99\x0a\x0d\xc3\x9b\xc4\x78\x00\xb6\x54\x0d\x0d\xab\xe1\xa3\xf8\xc7\x1b\x8a\x49\xa3\x13\x21\xe1\x3e\x09\xde\x23\x94\xd9\x6a\x05\x4c\x7f\x88\x5a\x3f\xc5\x7a\xac\x6e\xeb\xa2\xa5\xea\x6a\xaf\xc7\x0e\x9b\x05\x40\x58\xdb\x29\x8c\x27\x9b\x28\x25\xdc\x10\xb7\x66\x26\x1e\xaf\x2a\x94\xc2\x15\x29\xe9\x8a\x4e\x95\xf9\x0b\x25\x97\x90\xc7\x0c\xe7\xb1\xfc\xd3\xb8\xd8\xb6\xea\xe7\x06\x3d\x6f\x25\xd4\x58\x93\x5b\x96\xf0\xd3\xd9\xd9\x95\xca\x06\x83\xc1\xc1\x4c\x71\x13\x21\x0b\xd1\xf0\x9c\x9c\xfa\x27\xaa\x2e\xee\x7e\xf6\x41\xd1\xe2\x7c\x82\x2c\xda\xe1\x72\xa1\x1b\xcf\xe8\xc6\xa4\xb1\x77\xba\x0c\x9e\x39\x50\x1e\x8a\x50\x6f\x7c\x5c\xa3\x83\x87\x03\x10\x56\xfd\xe6\xa8\xb1\xa1\x17\xf2\xfc\xb6\x1b\x80\x01\x84\x2a\xf3\xf1\xdf\xa6\xcb\xd2\x03\x9a\xca\x92\x32\x9c\x9e\x2c\x55\x7e\x87\x0e\x53\xe9\xef\x65\x1a\x39\x93\x28\x78\x86\x9c\x9f\x40\xae\x95\x8f\xbf\xf7\x82\xe5\x3c\xbf\x7d\x8e\x7a\x49\x66\xaa\x66\xb5\xb0\xbe\x2b\x2f\xb0\x1b\x32\xed\x78\xff\x38\xfe\x10\x5f\x9d\xd6\xc8\x4e\x49\x1f\x85\x75\x19\xbe\x3d\x5d\xef\x94\xa9\x94\x99\xfd\x47\x59\x23\x8d\x63\x9c\x06\xee\x36\x70\x3d\x4e\x64\x00\xc7\xd5\xf6\x35\xd6\xfa\x66\x12\xba\x23\xd6\x49\x92\x74\x73\x30\xb1\x5f\xbe\x0e\xbb\x89\x30\xc8\xf7\xe4\xee\xc2\x2e\xde\xb6\xe6\xe2\x5c\x68\x3b\x17\xff\xdf\xe4\xe0\x3d\x7a\x56\x26\xfa\x37\x6e\x9e\x68\x9b\x67\x5a\xd1\x6e\xda\x39\x79\xde\x67\x2f\x7a\xf2\xc7\x2e\x8c\x5c\x39\x22\xad\xe4\x32\xa5\x91\x77\x93\xaa\xa6\x0a\x4b\x78\x7f\x79\x33\x7c\xf7\xe1\xd7\x1f\xed\xe5\x60\xda\x68\xfd\xa3\x5c\x2d\xfc\x42\x16\x32\x15\x4e\xa1\x49\x0a\xfd\x02\xe7\x37\x3b\xc5\x10\x3f\x78\x12\xa4\x62\x2a\xc2\xcc\x18\x91\xe3\x22\x6d\xdd\xaa\x7b\xa8\x6d\x4f\xb2\x4d\xf5\x7d\x9f\x7b\xec\x68\x3b\xec\x59\xa6\xe8\x34\xdd\x2b\x25\xbc\x0e\x17\xc3\xeb\x08\xe8\x6c\xc8\x8d\xf9\xed\xb6\x09\x6f\x9d\x30\x33\x84\x57\x77\xb8\x3c\x81\x57\xe1\xcc\x29\x7f\xe9\x73\x7c\xcf\x84\x9d\x94\xc8\x0e\xeb\x75\x34\x3e\x0a\xf9\x02\x9f\x1b\xe2\x03\x45\xdb\xcd\xd9\x79\xfc\xa6\xe9\xd2\xd6\x88\x3f\x3c\x9b\x8e\xc4\x58\x72\xdc\x2e\x87\x18\xfd\x39\xb3\x1d\x74\x34\x59\x47\x4c\x92\x74\x09\xbf\x5f\x8c\x12\x85\x1c\x97\xf0\xf6\xec\xed\x59\x5a\xfe\xda\x47\xad\xff\x83\x8f\x5e\x99\x19\x78\xb4\xc2\x09\x46\x50\x66\xe6\xd0\x7b\x98\x92\x8b\xeb\x24\xf0\x9d\x00\x13\x88\x05\xa9\x2a\x2e\x04\xad\x24\xc3\xbd\xe2\x39\x58\xa5\x89\x01\xdf\x20\x30\x7a\xde\x6c\x0b\x5f\xbc\xbc\x7e\x06\xad\xca\x17\x1d\xf6\x2f\x8e\x39\x2f\x43\xb1\x5d\x6f\x3a\xe1\x30\xc8\x7b\x81\x0b\xf2\xda\x76\x79\xf4\xd2\xee\xb6\x55\xe0\x6f\xab\xe5\xb1\x84\xf5\xe7\x7c\xaf\xc6\xba\x33\xad\x1b\xdc\x76\x35\x3c\x7c\x2b\xc7\x6f\x9a\x51\xa3\xf5\x4d\x3a\xc0\x83\xc4\x2e\xad\xcc\x76\xad\xf4\x0c\xf6\x5d\x19\x86\x70\x74\x4e\xcb\xbd\xbf\xdf\xfd\x23\xee\xab\x73\xbd\x67\xcc\xbf\x01\x00\x00\xff\xff\x11\x6a\xcd\x4f\xbe\x0e\x00\x00"), - }, - "/charts/istio-telemetry/prometheus-operator/templates/servicemonitors.yaml": &vfsgen۰CompressedFileInfo{ - name: "servicemonitors.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 10432, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5a\x5f\x6f\xdb\x36\x10\x7f\xcf\xa7\x38\xb4\x05\x6c\x27\x91\xdc\x6c\x1d\xb0\x29\x0f\x79\xd8\x3a\xa0\x40\xd7\x0d\xed\xd0\x97\x2c\x15\xce\xd4\xc5\x66\x4d\x93\x02\x79\x76\x23\x24\xfd\xee\x03\x29\xda\x56\x1c\xa7\xb5\x5d\xa7\xcd\xbf\x27\x1b\x12\xf9\xbb\xff\x77\xbf\x03\x84\xa5\x7c\x4f\xd6\x49\xa3\x33\x18\x19\x2d\xd9\x58\xa9\xfb\xa9\x30\x96\x8c\x4b\x85\x19\x75\x27\x07\x3b\x43\xa9\x8b\x0c\xde\x91\x9d\x48\x41\x7f\xd5\xa7\x76\x46\xc4\x58\x20\x63\xb6\x03\xa0\x71\x44\x19\x48\xc7\xd2\x24\x23\x72\x83\x24\x42\xc5\x57\xae\x44\x41\x19\x9c\x9f\x43\xfa\x96\x14\xa1\xa3\xf4\xcd\xf4\x31\x7c\xfe\xbc\x03\xa0\xb0\x47\xca\x79\x28\x68\xa8\xd1\x84\x0c\xaf\x6c\x7d\xfb\x2a\x94\x47\x71\x25\x09\x8f\xe0\x48\x91\x60\x63\x23\x1a\xb2\x18\xbc\x3c\x2b\x2d\x39\x6f\x65\x94\x01\x90\xc0\xf9\x90\xaa\x28\x61\x1f\x4c\x49\x16\xfd\x25\x78\xa5\xf7\x61\x82\x6a\x4c\x2e\x83\xe3\x91\x3c\x23\x7b\xf2\xb9\x69\xc7\xbb\xab\xf0\xc1\x98\x06\xf0\x39\xa4\xef\x03\x42\xda\x57\xa6\x87\x2a\x65\x52\x34\x22\xb6\xd5\x82\xd9\xa4\x8b\xd2\x48\xcd\xe1\x72\x02\xa5\xb1\x9c\x41\x69\xcd\x88\x78\x40\x63\x17\x10\xa5\x66\xb2\x13\x54\x59\x13\x77\x7e\x26\x75\xc2\x62\x49\xaf\xe2\x29\x8f\x9b\x24\xc9\xce\xf6\xe3\x2a\xcc\xa8\x34\x9a\x34\x6f\x39\xb8\x33\x5c\xf7\x03\x43\xbc\x5f\x4a\x65\x78\xbf\x8f\x4a\x51\xb5\x2f\x24\x63\x41\xea\x4b\x71\x47\x5d\x65\xc0\x76\x4c\xd7\x45\x71\xc0\x5c\x26\x73\x6b\x37\x0c\xe5\x02\x5e\x69\x94\x14\xd5\xb7\xc3\x6e\x3b\x43\x48\x4f\x4c\x95\x38\x46\x76\x5b\xce\x8e\xd2\x9a\x33\x49\x37\x9b\x1a\xc9\xdc\x57\x89\xec\x6b\x63\xa9\x99\x2c\x7f\x18\x72\x6f\x0c\xbf\x3c\x93\x8e\x57\x4c\x88\x8f\xa6\xf7\xda\x5b\x75\xc9\x31\x4b\x12\x05\x79\x90\x41\x37\xbc\xed\x2e\x54\x3d\xa3\xed\x13\xff\x13\x42\x7f\xf0\xcb\xf3\xdf\x9e\x6f\x9c\x40\xc1\x6f\x5e\x1b\xa9\xfb\xd1\xfe\x04\x9c\x19\x5b\x41\xaf\x6b\xd7\xc3\x71\x9e\xfb\x98\xe6\xc3\x71\x8f\xac\x26\x26\x97\x97\xa6\xc8\x85\xd1\x8c\x52\x93\xcd\x7d\x0a\xe6\xde\xf0\x93\xe8\x3f\x14\x1c\x12\x67\x48\x54\xc6\x47\x96\xfa\x74\x96\x41\x2b\xdd\x4d\x6a\xab\xbd\x5e\xad\x28\x6f\x7a\x3e\x28\x32\xc2\x85\x3b\x4f\x96\xcb\x0f\x87\xf3\x76\xba\xd7\x79\xb2\xaa\xda\xb3\xe0\x2c\x2a\x6a\xa9\x54\x28\x28\x3e\xad\xbd\x1b\x63\x34\xbb\xb3\x8e\x6f\x96\x39\xe3\x0b\x32\xa6\x57\xb6\x5e\x79\x73\xb5\x92\xd2\x14\xdb\xab\x3e\x8f\x1b\x10\xef\x6a\xe5\x2d\x38\xe6\x6a\xf5\x7d\xdf\x5a\x42\xad\x0d\xa3\xcf\x93\x7c\x2e\x23\x97\x26\xaf\xc5\xac\x50\x57\xde\xc2\xd6\x86\x22\x9d\x2c\x48\xa0\xcd\x83\xd3\x83\x54\x46\x1e\xbb\x7d\x58\x5b\xd9\x01\xad\xd4\x04\xda\xed\xc3\x74\xb7\x73\xd1\x4e\x77\x0f\xfd\xe0\xf2\xff\x8e\x8e\x3a\x9d\x4d\xf5\xaf\xf5\x1e\xb1\x72\x8b\xb2\x0b\x6b\xb6\xe9\xa8\xcb\xe6\xfa\x06\xbd\x46\x91\x07\x74\x2b\x85\x0b\x17\xf3\x7c\xd1\x27\xe9\xde\xf5\x0e\xc0\xa2\xf0\x95\x92\xe7\x6b\xc7\xc4\xf7\xe6\x2f\x2b\x39\x53\xe0\xf8\x43\x76\xb2\xd7\x69\x1f\x65\xd9\x7f\xc5\x5e\xe7\xe8\xb0\xed\x7f\x5a\xb3\x53\xe1\xce\x88\x34\x67\xf0\xec\x20\x7b\xf6\xd3\x72\x1b\x67\x9a\xae\xd4\xda\x5b\x5f\x6b\xed\x2b\x47\xea\xc1\xb7\x76\x47\x62\x6c\x69\xfb\x1d\x3e\x02\xdf\x93\x46\x3f\xb7\x66\x2b\xfd\xbe\xee\x78\x35\xfd\x8e\xcc\x4c\xb9\xdf\x8d\x3e\x95\xfd\xa9\xa1\x02\xff\x94\x8a\x32\xe8\x12\x8b\x06\x8d\xeb\x3a\x12\x96\xd8\x75\x83\x03\x1a\x92\xba\xd6\x18\x4e\x04\x59\x4e\x4b\x1a\x4d\x41\xc8\xf2\x9a\x30\xfe\x4a\x22\x06\x28\x75\x03\x67\x48\xd5\x9a\x30\x43\xaa\x1a\xf7\xa5\xae\xfd\xf7\x6e\x28\xcb\xf7\x64\xe5\x69\x74\x39\xc0\xd3\xc6\x62\x0a\x85\x21\x07\xda\x30\xb8\x71\xe9\x1b\x10\xd4\xb7\x7c\xe4\x7c\xbe\xdf\x9a\x51\xf9\x14\xe2\xe8\x83\x7a\xe2\xc1\x1c\x1c\xa4\x03\x2c\x0a\x2a\xa0\x57\xcd\x4e\x49\xfd\x31\x24\x1c\xa0\x2e\x22\x40\x3d\x7b\x3e\x19\x3b\x54\x06\x8b\x30\x84\x72\xec\x49\x25\xb9\x02\x81\x1a\x7a\x04\xbe\x30\xe4\xa9\x14\xa8\x54\x05\xa1\x51\x14\x60\x34\xa0\xef\x0d\xc0\x06\xa4\x2e\xa4\x40\x26\x90\xec\x60\x7a\x97\x0d\x58\x12\x24\x27\x04\x1e\x13\xd8\xe2\xe9\xa9\x14\xe9\x77\x1f\xf1\xd7\x0f\xd7\xa5\x83\xfd\xf8\xc3\xe1\xc9\x5e\xe7\x30\xfc\xee\x76\x3a\x17\xed\xf8\xef\xb0\xed\xdd\xbe\xf9\x8c\x5f\x85\x69\x2c\x99\xf6\xed\xc0\x2f\xee\xee\xbc\x3f\xf1\x39\xf6\xb7\x56\x55\xf0\x36\xc4\xe7\xc0\x03\x64\x9f\xa1\x03\xe3\x38\xf3\x15\xb6\x24\x34\x75\x7e\x1a\x1e\x90\xfd\x24\x1d\x01\x6a\xa0\x33\xb6\x18\xb5\x84\x4f\x92\x07\xd0\xca\x5e\xbc\xf8\xb9\x35\x4f\xf6\x53\x63\xeb\x66\x16\x5b\xdb\x72\x8e\x90\x35\xa8\xc1\x23\x5b\x79\x64\x2b\x6b\xb1\x15\x57\x9f\xdd\xf2\x32\x3a\x45\xbd\x07\x3c\xa5\x61\xca\x0f\x5b\x4a\xa3\x0e\x77\x67\x31\x5d\x41\xe1\xfb\xb6\x9c\x7e\xd5\xe4\xdb\xb2\xa0\x7e\x5d\xd1\xc7\xb6\xff\x70\xda\xfe\x4d\x2c\xaa\x0b\xe0\xf7\x68\x08\x3c\x2e\xac\x77\x79\x61\xbd\x89\x31\xfa\xb8\xb4\xde\xde\xa5\x75\x43\x16\xf2\xed\x8b\xeb\xad\xe4\x02\xf7\x6f\x79\x7d\x64\x32\x0f\x99\xc9\x28\xe2\xad\xd0\x15\x45\xcd\xaf\x64\x56\x64\x2a\x0b\xe3\xbf\x47\x68\xc9\xfe\x6b\x86\xa4\xe3\x80\x9c\xa0\xed\xda\xb1\x9e\x4d\xc6\xb9\x23\x53\x69\xba\x31\x73\x51\x08\x33\xd6\xdc\x65\x7f\x31\x08\x1f\x18\x6d\xec\x34\x08\x91\x91\x6c\xfa\x29\x41\xf3\xdb\x96\xba\x7d\x5c\x21\x1d\xcb\x39\xc7\x75\x63\xfa\xf6\x9a\x5a\xdb\xf7\xf6\x2a\x27\xb8\xbe\xa7\xcf\x3f\x98\x68\x6b\x62\x3f\x7d\x73\x16\x65\x3e\x76\xd8\xa7\x9c\x0d\xa3\xba\x98\x3e\x1f\x17\x97\x9f\x33\xba\xa1\x0b\xe3\x8f\x2e\x44\x39\xce\xc3\xd8\xc6\x09\x59\x7f\xe4\xe0\xb9\xeb\x44\x49\x97\x4a\x6a\x46\x5e\xf3\x50\x12\xb1\x47\xc4\xcf\x4a\x62\x7c\xba\x02\x8b\x89\x74\x31\x11\x6f\x22\x7e\x0d\x76\xfb\xab\x4b\xb0\x2c\x57\xff\x5a\x2e\x89\xe4\xbe\x72\x1c\x08\xdd\x12\xb2\x7e\xd9\xd4\x28\x61\x5e\xad\xff\x07\x00\x00\xff\xff\x86\x4c\x0f\x3e\xc0\x28\x00\x00"), - }, - "/charts/istio-telemetry/prometheus-operator/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 1730, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x54\xc1\x6e\x1b\x47\x0c\xbd\xeb\x2b\x08\xf5\xaa\x28\xb1\x8b\x16\xad\x6e\x41\x9b\x02\x46\x5b\x34\xa8\x72\x2b\x7a\x18\xcd\x70\xb5\x03\x8f\xc9\x2d\xc9\x91\xb3\x28\x0a\xf8\x43\x9a\x9f\xf3\x97\x14\x9c\x59\xd9\x70\x6c\x04\xa8\x4e\x9a\xd9\xc7\x47\xf2\xf1\x71\x26\xe1\x1b\xb4\x11\xab\xee\x56\x00\x5f\xc1\x0f\x4c\x26\x5c\x14\x6c\x44\x48\x38\x84\x5a\x0c\x34\x4a\x98\x10\x32\x19\xca\x29\x14\xa8\x8a\x09\x32\x35\xcc\x1e\xe5\x94\x23\xfe\xca\x94\x8d\x45\x57\xb0\xa0\xaf\x16\xf0\x0e\x2e\xbe\xd1\x55\xe3\x7e\x47\xe1\x50\x32\x1d\xc1\xc6\xac\xc0\x93\x65\x26\xb8\xcd\xa5\xc0\x11\x09\x25\x18\x42\x80\xf7\x0f\x05\x81\xa0\x72\x95\x88\x1b\x88\xa1\x6a\x0f\x44\xe0\xc9\xa1\x2c\x8d\xd2\x18\xa2\x60\x8f\x7c\x6c\x05\x12\x4e\x85\xe7\x1b\x24\x83\x10\x23\x4b\x6a\xc1\xdc\xe2\xcf\xb9\x12\xe8\x84\x71\x0b\x57\xd6\x6b\x08\x45\xb9\x71\x3e\x10\x6a\x6f\xcd\x65\xc8\x94\xbd\xda\x0d\x24\x54\xcb\x14\x5a\xe9\x52\x0b\xea\x06\x62\xa9\x6a\x28\x20\x5c\x50\x21\x50\x82\x43\x26\xcf\xa8\x1b\x3f\x35\xce\x47\x32\xaf\xa7\x92\x6d\xe1\x37\x2a\xb3\x2b\xf9\x44\x8d\x3c\xc0\xcc\x15\xc6\x70\x42\x20\x36\x08\x45\x30\xa4\x79\xa9\x29\x35\xf6\xc8\x34\xe4\x63\x15\x3c\x53\x4f\xcf\x25\x73\xe0\x6b\x96\x46\x96\x50\xb3\x78\x3f\x29\x7b\xed\xd1\x5e\x0c\x18\x58\xe0\x4a\x2d\xf3\x76\x05\x4b\xba\xc7\x51\xfc\xbe\xa0\x76\x30\x84\xa2\xb8\x02\x18\xeb\x61\x07\x89\xe3\x35\xca\x36\xf3\x6b\x67\x5c\x01\x58\x38\xee\xe0\x74\xb9\xfd\x6e\xfb\x66\x05\x20\x68\x48\xde\xd6\x0e\xbe\x1d\xdd\x02\x8b\x06\xee\x34\x80\x40\xc4\xd6\x84\xd4\x1d\xfc\xfd\x4f\xbb\x23\x4e\xf8\x9e\xc5\x3a\x02\x00\xdd\x31\x98\x1e\xd3\xfa\x6f\x72\x00\x7c\x7d\xf9\xe6\xfb\x37\x4e\xea\x31\x7b\x2c\x18\x8d\x65\x21\x32\x2e\x3e\xe2\x4e\xfd\xc7\x9f\xdd\x7d\xfb\x09\x63\x1e\xe6\xe6\x81\x89\x5d\x4a\xcb\xaf\xc2\xd0\x46\xeb\xb7\xc1\xd5\x2e\x7c\xab\x4d\x34\x37\x16\x93\x9a\x84\x4c\x70\x3b\xe6\x38\xb6\x44\xda\xa8\x66\xae\xd2\x38\xb2\x02\x96\x7c\xcc\x87\x82\x1e\x71\x40\xd0\x38\x62\xaa\x05\x13\x1c\x82\x6f\x09\x13\x94\x70\xc0\xa2\xfe\x6f\xe2\xa4\x4b\x26\xc1\x3e\xbc\x65\xbe\x52\x89\xdc\xa3\xdc\x97\xca\x53\x81\x04\x1b\x51\x1c\x4f\x2f\x91\xb5\x72\xb6\x8d\xe5\xc3\x88\x3e\x60\x41\x88\x55\x04\xc9\xca\x0c\x76\xcb\x60\xf3\x84\x0a\x3c\x3c\xed\xb5\x2f\x3a\x00\xac\x05\xff\xaa\x59\x30\xfd\x58\x25\xd3\x71\xdf\x4b\xcf\x74\xbc\x3a\x12\x3f\x5c\xbf\xfb\x88\xb1\xba\x96\xeb\x87\xb8\x49\x70\x40\xf9\x9f\x81\x5d\xc4\x84\xc4\x86\x70\x7f\xf7\xef\x18\x24\xdd\xdf\x7d\x82\x93\x6e\xfd\xa8\x3c\x98\x1f\x97\x9a\x7c\x77\x75\xd3\x46\x11\x03\xf5\x15\xc4\x2e\xfc\x29\x94\xba\x0c\x22\x13\xac\x27\x4e\x6f\xc9\xf2\xdb\xa5\xbb\x5f\x5c\xa0\xb3\x1f\xd6\x6d\x61\x3e\x87\x7c\x40\xb9\x79\x0a\xeb\x7b\xcf\x22\xa8\x13\xb7\xdd\x2d\x73\x97\xf6\x27\x16\xc0\x8f\xe1\x66\x2a\xd8\x75\xfb\x52\xba\x8e\x78\x05\xd7\x38\xef\x40\x31\x56\xc9\x36\x2f\xaa\x9d\x9f\xad\x1d\x5c\xd1\x72\xd5\x1b\xd9\xc1\xfe\x62\xb3\xbf\x5c\xee\x8c\x27\x2e\x7c\x9c\x7f\x76\x8a\xf5\x75\x3d\xa0\x10\x1a\xaa\x2f\xd9\xc8\x6a\x14\x6e\x70\xbd\x0c\x3d\xeb\x0b\x46\xf6\x47\x09\x34\xcc\x8b\xd1\xce\x6e\x5f\x64\xd5\xf6\xaa\x7c\x66\xd5\x46\xc7\x64\x0c\xa1\x3b\x2f\x0f\x3d\xb8\x1f\xf4\x99\x4b\x43\xa3\xbc\xcd\x36\x76\x3f\xfa\x7b\xe5\xf7\xd7\xd8\xbb\xf5\x71\x2e\xdd\xfb\x48\x7d\x06\xad\x57\xff\xb0\xbf\xb8\xbf\xfb\xe4\xda\x7e\x51\x48\xdf\xda\x67\x90\x67\x73\x6b\xb0\xff\x02\x00\x00\xff\xff\x6f\x0b\xc4\x34\xc2\x06\x00\x00"), - }, - "/charts/istio-telemetry/tracing": &vfsgen۰DirInfo{ - name: "tracing", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 775334938, time.UTC), - }, - "/charts/istio-telemetry/tracing/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 124, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x4a\x2c\xc8\x0c\x4b\x2d\x2a\xce\xcc\xcf\xb3\x52\x28\x33\xe4\x4a\x49\x2d\x4e\x2e\xca\x2c\x28\x01\xf3\x1d\x15\x3c\x52\x73\x72\x15\x92\x33\x12\x8b\x4a\x14\xd2\xf2\x8b\x14\x4a\x8a\x12\x93\x33\xf3\xd2\xb9\xf2\x12\x73\x53\xad\xe0\xbc\x32\x98\x7e\x43\x3d\x43\x3d\x03\xae\xc4\x82\x82\x30\x84\x88\xa9\x9e\x21\x57\x49\x66\x4e\x4e\x6a\x11\x5c\x50\xc9\xce\xd6\x48\xcf\x5c\xcf\x48\x09\x10\x00\x00\xff\xff\xb5\x4c\xd7\x63\x7c\x00\x00\x00"), - }, - "/charts/istio-telemetry/tracing/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - }, - "/charts/istio-telemetry/tracing/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 2715, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x41\x8f\xda\x3c\x10\xbd\xf3\x2b\x46\x88\xc3\xf7\xad\x48\x42\xaf\x91\x7a\x40\xea\x1e\x56\xed\xa1\xea\x56\xbd\x9b\x64\x62\x2c\x8c\x9d\xda\x0e\x05\xa5\xfc\xf7\xca\x49\x48\x1c\x48\x88\x97\xae\x7a\x43\x93\xe7\x79\x9e\xe7\x37\x8f\xb2\x8c\x9e\x80\x64\x19\x13\xcc\x9c\x20\x80\xad\x31\xb9\x8e\xa3\x68\x57\x6c\x50\x09\x34\xa8\x43\x26\xa3\x54\x26\x3a\x4a\xa4\x48\x30\x37\xd5\x8f\x8c\xd1\x42\x11\xc3\xa4\x88\x88\xd6\x8c\x8a\x20\x97\x69\x20\x64\x8a\x11\x3c\x45\xe7\xf3\x6c\x56\x96\x01\xa4\x98\x31\x81\x30\xb7\xf5\x0b\xc7\x1c\xce\xe7\x19\x80\x2d\xad\x9b\x52\x3c\x03\x00\x50\xf8\xb3\x60\x0a\xd3\x4f\x85\x62\x82\xbe\x26\x5b\x4c\x0b\xce\x04\x7d\xa1\x42\xb6\xe5\xe7\x23\x26\x85\xa5\xad\xcf\x58\x12\x26\x12\x5e\xa4\x0d\xcb\xa5\xe5\xb7\x91\x66\x73\x08\x6b\x7e\x80\x5c\x61\x86\xea\xbd\x08\xbf\x8e\x75\x6b\x18\xed\x41\x14\x29\x0c\x49\x33\x7d\xe9\xe6\xca\xb5\x6c\xaf\xc8\x31\x31\x52\x7d\x47\xb5\xd7\x71\xf3\x21\x80\x3d\x31\xc9\xf6\xf9\x98\x2b\xd4\x9a\x49\xd1\x7e\xb1\xdf\x76\x78\x8a\x61\x83\x86\x84\xfd\x77\x25\x2a\xd9\xb6\x30\x00\x99\xa3\x22\x46\xaa\x18\x5e\x84\x53\x3e\x10\x5e\xa0\xd3\xcf\xde\x5f\x11\x41\x11\x16\x3b\x3c\x2d\x61\x71\x20\x1c\xe2\x8f\x10\xfe\xa8\x80\x21\xe5\x72\x43\x78\x68\x9b\x77\x37\x6f\xd5\xcb\x80\x1a\xf8\xaf\x3a\xf3\x1b\x98\x30\xff\xc3\xaa\x8f\x0a\xa0\x2c\xab\xce\xb7\x87\x1b\x05\x07\x4a\x3e\xfa\xde\x79\xa3\xaa\xe9\x03\x73\x4d\x4d\x14\xc0\x2f\x64\x74\x6b\xe2\x6a\xa6\x16\xd1\x0d\x51\xbb\x10\x45\x82\x9d\xbe\xff\xee\x25\x07\xc4\xee\xc9\xec\x21\x70\x2e\xd3\xb5\x30\x6c\xed\xae\x77\xa3\x8a\x54\xad\x74\x57\xa8\x2f\x64\x83\xfc\xe2\xe3\x31\x90\xf5\x77\x0f\x58\x5d\xe9\x0a\x14\xbb\xcf\xe0\xc5\xd6\xcc\xf9\xd7\x71\x73\x45\xe2\x91\x38\x57\x0e\x9e\x54\x69\x58\x80\xf7\x48\xae\x2b\xa2\xa9\xf0\x1a\xdf\x35\x4f\x57\x4c\x26\x9b\xb3\x7a\x4c\xa4\x78\x5c\xc2\x82\x19\xdc\xbb\xdb\xe7\xf3\xa8\x01\x70\xb7\xfc\x86\x95\xb2\x5b\x60\x19\xc3\x9b\xdc\xe9\x56\xa9\xc5\x5c\x4a\x83\xe9\x56\x43\xea\x4d\xeb\x03\x6e\xb7\xcf\x1e\xb1\xa9\xa0\xed\xa0\x3a\xe7\xcc\xc0\x7c\x39\xbf\xd3\xc2\xd5\xc9\x06\x94\x3d\x57\x37\x18\x88\xd0\xc3\x64\x80\x0e\x14\x8d\xcc\x25\x97\xf4\xf4\xb9\xa7\x8a\x53\xbd\x6f\x88\x7b\x2e\x98\xca\xdf\x47\x6c\x70\xb3\x23\x9d\x15\x2c\xd2\x41\x75\xba\x8f\x78\xe4\x9e\x4b\x3c\x7c\xf2\x06\xa7\x78\x78\x65\xc8\x2d\x0f\xf8\xc5\xdb\x31\x23\x9e\x19\x71\xcd\x60\xd9\xdb\x39\xd0\xfe\x29\x7e\x58\xad\xc6\xbd\xf4\x27\x00\x00\xff\xff\xb4\x58\x04\x84\x9b\x0a\x00\x00"), - }, - "/charts/istio-telemetry/tracing/templates/deployment-jaeger.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment-jaeger.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 2519, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x55\x5d\x93\xda\x36\x14\x7d\xe7\x57\xdc\xf1\x3b\x66\x48\x1b\x92\xfa\xcd\x65\x69\x93\xe9\xee\xe2\x1a\x92\xe9\xf6\xc5\x73\xb1\x2f\xa0\x54\x96\x5c\x49\xa6\x61\x48\xfe\x7b\x47\xfe\x00\x7f\x01\x3b\xd3\x29\x6f\xc8\xe7\x9c\xfb\xa9\xa3\xd3\x09\xd8\x16\xe8\x6f\x70\x3f\x23\xcf\x49\xbb\x46\x61\xcc\xc4\xce\xcd\x94\x3c\xb0\x84\x14\x38\x5f\x90\x76\xa4\x1c\xf8\xfe\x7d\x34\xc2\x8c\x7d\x26\xa5\x99\x14\x1e\x60\x96\xe9\xc9\x61\x3a\xfa\x8b\x89\xc4\x83\x07\xca\xb8\x3c\xa6\x24\xcc\x28\x25\x83\x09\x1a\xf4\x46\x00\x02\x53\xf2\x80\x69\xc3\xe4\xb8\x92\xae\x4e\x75\x86\x31\x79\x70\x3a\x81\x1b\x12\x27\xd4\xe4\x3e\xd7\xc7\x36\x16\x00\xc7\x0d\x71\x6d\x55\xc0\x06\xf3\xa0\xcc\xa4\xf8\xaf\x4a\x4a\x9f\x6f\xa9\x3a\xa3\xd8\xd2\x34\x71\x8a\x8d\x54\xa5\x44\x8a\x26\xde\x3f\x36\x34\xbb\xaa\x86\xd2\x8c\xa3\xa1\x0a\xde\xa8\xc2\xfe\x78\x8b\xd9\xcf\xe8\x6e\x56\x15\x4d\x08\x69\xd0\x30\x29\x1a\x5a\x9a\x25\x14\xa3\x72\x8b\x3e\xb9\x4c\x4e\x98\xf8\x42\xb1\xf1\xc0\xd9\x22\xd7\xe4\x9c\x81\x99\x92\x29\x99\x3d\xe5\xda\xa2\x74\xac\x30\x23\x0f\x1c\xa3\xf2\xab\xa0\x4c\x2a\x2b\x34\x9d\xcd\xde\xcf\x9c\xd1\xe9\x34\xb6\x03\xef\x4e\x3b\x96\xc2\xd0\x57\x13\xa0\xd9\x5f\x52\xed\x29\xa1\xd9\x7b\xe0\xd8\xda\x6e\xd2\x27\x29\x19\xc5\x62\x5d\x46\x23\xae\xe9\xae\xe6\x64\x40\xf4\xbc\x81\x3d\x45\x91\xd4\x82\xe5\xa4\x3b\x45\xed\xb8\xdc\x20\x77\x33\xc5\xa4\x62\xe6\x38\xe7\xa8\x75\x7b\x08\xbd\x4f\xed\xb2\x6e\x08\xb4\x32\x18\x8e\xcb\x52\xdc\x51\x90\x73\xbe\xa2\x58\x91\xd1\x97\xb0\xdd\x2f\x65\xe6\x0a\xc5\x8e\x5e\x2f\x02\x30\xae\x6e\x95\xcd\xb8\x4e\xa3\x91\x51\xa3\x3d\x00\x76\x32\xc8\x04\xa9\xc6\xb6\xd5\xfc\xce\xf2\x56\xf9\x0d\x4f\xb8\xc4\xba\xfb\x7c\x63\xc7\x81\x9c\x8f\x99\x18\x4b\x41\xde\x75\xac\xc1\x5d\xd1\xb0\x8e\xbe\x2d\x2a\x90\x9c\xc5\xc7\xb2\x82\x2b\x75\x97\x10\xf8\x06\x09\x6d\x31\xe7\x06\x1c\x9f\xff\x83\x47\xed\x34\x3b\x01\x60\xb7\xbb\x51\x5a\x59\xde\xb9\xe8\xa0\xd8\xfd\x9f\x7e\x9c\x4e\x6f\x23\x8a\xcb\x71\x1b\xf2\xf6\xdd\xbb\xb7\x2d\x44\xb1\xc9\x46\xc6\x92\x7b\xf0\xe9\x21\xb8\xcd\x9e\xbd\xff\x61\xfa\x9f\xd8\x6f\x5e\xc9\x26\x71\x68\x76\xa3\x1e\x75\xb0\x7c\x88\x9e\xfd\xa7\xc5\x2a\xf0\xe7\x8b\x96\xd4\xc1\xb6\xff\x17\x25\x53\xaf\x13\x61\xcb\x88\x27\x21\x6d\xbb\xe7\xd6\xf9\x2e\x8f\xc0\xa1\x5b\x56\x45\x0c\x8a\x7b\x5d\x7b\xa8\x7b\x36\xfc\x81\xdc\xe6\xcb\xc7\xc7\xc5\x7c\xbd\x0c\xa3\x3f\x3f\x06\xbf\x7d\x7c\x8e\x3e\xac\xd7\x41\x14\x2c\xc3\x75\x3f\x51\x0f\x1c\x3b\x4d\x67\x40\xe6\x69\xf1\xb4\x0c\x5f\xa2\x27\xff\x8f\x68\x1d\xfa\xf3\xc5\x6a\x90\x7d\x7d\x5d\x53\x4a\xa5\x3a\xba\x29\x7e\x8d\xec\x17\xd2\x9d\xe5\xad\xe3\xfc\xfe\x69\x11\xbe\x44\x3f\xfb\xab\x45\x14\xf8\xeb\x0f\x43\x51\xca\x47\xf5\xb6\x49\xc2\x5d\x1b\xb5\x88\xca\x3c\xe1\x8e\x3f\x16\xd0\xe6\xb5\xb7\x3f\xce\x0e\x24\x48\xeb\x40\xc9\x0d\xb5\xa7\xb8\x37\x26\xfb\x95\x4c\x77\xb4\xa5\x19\x4f\xba\xa7\x83\x57\x44\x11\x26\xec\xff\x94\xd7\x32\x57\x31\xe9\x9e\xbb\x77\xc6\x76\x06\x96\xf6\x07\x46\xbe\x60\xca\xef\xa3\xbf\x01\x13\x09\x09\x03\xd3\x37\x67\xe3\xac\x5e\xaa\xbe\x4a\x65\x4e\x95\x15\x85\x37\x45\x9a\x63\xc0\xed\x96\x09\x66\x8e\x75\x27\x8a\x52\x44\xcc\xf3\x84\xc0\x11\x32\xa1\x1a\xe0\x80\x7b\x11\x9b\x5d\x04\x5a\x84\x4c\x26\xbe\x30\xcc\xbf\xca\xb9\x6c\xc1\xbf\x01\x00\x00\xff\xff\xe5\x41\xd1\x19\xd7\x09\x00\x00"), - }, - "/charts/istio-telemetry/tracing/templates/deployment-opencensus.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment-opencensus.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 2552, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x56\x4d\x6f\xe3\x36\x10\xbd\xfb\x57\x0c\x74\x97\x1c\x25\xfd\x48\x05\xf4\x10\x64\x81\x5c\xba\xad\x91\x05\x16\xe8\xa9\x98\x90\x63\x9b\x0d\x35\x64\x49\xca\x5d\x57\xc9\x7f\x2f\xa8\x6f\x39\x72\x62\x14\xcd\x25\x12\x39\xf3\xde\xf0\xcd\xe3\x58\x75\x0d\x6a\x0b\xf4\x17\x64\x5f\x51\x57\xe4\xb3\xe0\x50\x28\xde\x65\xd6\x99\x83\x92\xe4\x20\x31\x96\x58\x10\xfb\xca\x27\xf0\xfa\xba\x42\xab\xbe\x92\xf3\xca\x70\x01\x87\x7c\xf5\xac\x58\x16\x70\x6f\x78\xab\x76\x9f\xd1\xae\x4a\x0a\x28\x31\x60\xb1\x02\x60\x2c\xa9\x00\x23\x52\x61\xb4\x26\x11\x8c\x4b\x45\x13\xb8\x02\xd0\xf8\x44\xda\xc7\x28\x00\xb4\xb6\x80\x91\xa6\x59\x13\xa6\xb4\x86\x89\xc3\x32\x40\x4f\xb1\xb0\x57\xc0\x4b\x83\xe0\x48\x90\x3a\x90\xeb\x48\x00\xfe\x51\xf6\x59\x71\xff\x06\x80\x52\x3a\xf2\xbe\x80\x24\xbf\xfe\x31\xbb\xca\xae\xb2\xbc\xf8\xe9\xbb\x3c\x4f\x9a\x08\xfa\x66\x8d\x0b\x4d\x7a\x5d\xa7\x51\xa5\x53\x89\xc6\x8a\xb3\x21\x38\x2a\x54\xd7\x10\xcc\xef\x58\xea\xcb\x32\x5e\x40\xb1\x24\x0e\xf0\x43\x9b\x9c\x02\xb1\x8c\x8f\x69\x9a\xce\xd4\x46\x6b\xfd\x7a\x90\xfc\x13\x59\x6d\x8e\x25\x71\x58\xd0\x5c\xf9\xa0\x4c\xda\xd1\x76\xab\xde\xa2\xa0\x02\xea\x1a\xb2\x47\xd2\x84\x9e\xb2\x5f\xfb\xe5\x48\xf7\x9f\x7b\xd2\xa9\xdd\x40\xbe\xc5\x8f\xd0\xde\x92\x88\xb0\x9e\xda\x8c\x96\xa2\xc4\x20\xf6\xbf\x4c\x38\x97\x58\x4b\xc5\x8f\x84\xf2\xf8\x85\x84\x61\xe9\x0b\xf8\x7e\x05\x60\x9d\xd9\xc5\xd6\x7d\x22\x94\x5a\x31\x0d\x9b\xf9\xf5\xd5\x2a\xd6\x62\xb5\x12\x18\xdf\x57\x00\x81\x4a\xab\x31\x50\x47\x3a\xd1\xaa\x61\x64\x36\x01\x83\x32\xec\x47\x67\x78\x25\x49\xa0\xcb\x1a\x19\x33\x65\xd6\x8a\xff\x24\x11\x0a\x48\xb6\xa8\x3d\x25\x43\xa0\x75\xa6\xa4\xb0\xa7\xca\xc7\x28\x8b\x61\x5f\x40\xb2\x2e\x29\x38\x25\xfc\xd9\x30\xe3\x22\xd4\xed\xed\xed\xed\xb9\x10\x2f\x1c\x5a\x2a\x20\x09\xae\x1a\xe8\xf4\x4c\xaa\xe5\x16\x7d\xd4\xa6\xb6\x13\x27\x86\xde\x69\xf3\x84\x3a\xb3\x4e\x19\xa7\xc2\xf1\x5e\xa3\xf7\x7d\xeb\xfa\xea\x4e\xb6\x0a\x48\x62\xa3\x3f\x06\x48\xa6\x8e\x5e\xe6\x55\x25\xee\x68\x53\x69\xfd\x85\x84\xa3\xe0\x47\xda\xd3\x9d\xb6\x72\x87\xbc\xa3\xcb\x41\x00\xd2\xee\x56\xc4\x8a\x4f\xee\xd8\xe4\xb1\x17\x8f\x03\x2a\x9e\x8c\x8d\x74\x61\x8e\x0d\xd0\x0d\xed\x5c\x8c\x85\xcb\xbe\xaf\x9e\xe0\xf5\x75\x3d\xae\x8c\x48\xc5\xfb\x99\x01\x77\x8d\x88\x33\xbe\x78\xcc\x8d\xd1\x4a\x1c\xdb\x33\x9d\x51\xa2\x0d\x81\x17\x90\xb4\xc5\x4a\x07\x48\xee\xf4\xdf\x78\x6c\xc7\xf8\xc4\x2c\x25\xb2\x1c\x5d\x15\x0f\x9c\xac\x8d\x18\x2a\xfc\x43\x2b\xae\xbe\x25\xf3\x80\xb4\x1b\xb6\x3f\xaf\xe3\xff\xf5\xc2\x18\xce\x8e\x58\xea\x89\xbf\x8d\x0b\x13\xef\xa6\xa3\xd0\x9b\xe6\x3a\xc4\xc1\x3b\xec\x3a\xf2\xa6\x72\x82\x2e\x9a\xbd\x43\xf0\xc5\xb3\x77\xcc\x18\x66\x6f\x7e\x3d\xb8\x41\x7b\x5a\x46\xea\xf4\xed\xd4\x7c\x7c\x17\x64\x6a\x29\x80\x83\xd1\x55\x49\x9f\x4d\xc5\x73\x0d\xce\xfe\x40\xa6\x07\xa3\x27\x82\x97\x31\x73\xd3\x4c\x97\x46\xef\x61\x4b\xab\x03\x31\x79\xbf\x71\xe6\x89\xa6\x3d\xdc\x87\x60\x1f\x28\x4c\x97\x00\xda\xf9\xb4\x9e\xaf\x35\xea\xe7\x37\xf9\xcd\xcd\x44\x7e\x94\xea\xff\x87\x25\x3e\xbc\x3d\xfc\xc3\x6f\x0f\xf7\x93\xcc\x43\x94\x3a\x0e\xc7\xab\xde\x3a\xad\x76\xa7\xd6\x69\xbf\x36\xe6\x75\xbc\xf7\xb9\x31\xfe\xa9\x40\xa5\x9f\x27\x46\xcc\x67\x3a\x7e\x9c\x3b\x9e\xf6\x9c\xe1\x57\x17\x94\x33\x69\x2e\x6e\xb7\x8a\x55\x38\xf6\xf5\x34\x6e\x67\xa1\x2b\x49\x90\xb0\x91\xd4\x07\x24\x90\x9d\x7c\x28\x2c\x24\x58\x23\xef\x38\xa8\xbb\xb3\x39\x75\xdd\x3b\xf3\xdf\x00\x00\x00\xff\xff\x23\x12\x90\xa7\xf8\x09\x00\x00"), - }, - "/charts/istio-telemetry/tracing/templates/deployment-zipkin.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment-zipkin.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 2621, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x93\xda\x46\x10\xbd\xf3\x2b\xba\x74\x4d\xa1\xad\xcd\x21\x07\x55\xe5\xa0\x02\x8c\xed\x84\x45\x01\xbc\xb5\xce\x85\x6a\x46\x0d\x8c\x19\xcd\x8c\x67\x5a\xc4\x04\xf3\xdf\x53\x83\xc4\x22\xbe\x76\xbd\xa9\x54\x38\x21\xe9\xbd\xd7\xaf\xbf\x66\xb6\x5b\x90\x73\xa0\xaf\x10\x3f\xa2\x2a\xc9\xc7\xec\x50\x48\xbd\x88\xad\x33\x6b\x99\x93\x83\xe8\x6f\x69\x57\x52\x47\xb0\xdb\xb5\x5a\x68\xe5\x23\x39\x2f\x8d\x4e\x00\xad\xf5\x77\xeb\xfb\xd6\x4a\xea\x3c\x81\x2e\x59\x65\x36\x05\x69\x6e\x15\xc4\x98\x23\x63\xd2\x02\xd0\x58\x50\x02\xd2\xb3\x34\xed\x5a\xba\x7e\xeb\x2d\x0a\x4a\x60\xbb\x85\x78\x44\x8a\xd0\x53\xfc\x70\x78\x1d\x62\x01\x28\x9c\x91\xf2\x41\x05\x42\xb0\x04\x2a\x27\xfb\x67\x57\x51\x2e\xf9\x81\xea\x2d\x89\x40\xf3\xa4\x48\xb0\x71\x95\x44\x81\x2c\x96\xbf\x37\x34\xcf\x55\x99\x0a\xab\x90\xa9\x86\x37\xb2\x08\x3f\x75\xc2\xbc\x74\xf4\xaa\xab\x9a\xa6\xb5\x61\x64\x69\x74\x43\xcb\xcb\x9c\x04\xba\x78\x5f\xa7\x58\x9a\x3b\xa9\xbf\x90\xe0\x04\xa2\x39\x2a\x4f\xd1\x11\x28\x96\x94\x97\x8a\x5c\x8c\xca\x2e\x31\x5e\x95\x33\x72\x9a\x98\x7c\x60\x09\x27\x59\x0a\x54\x6d\x6b\xf2\x04\xa2\x8a\x56\x15\x63\xbb\x6d\x87\x46\x1f\xba\xbc\x50\x66\x86\x2a\xb6\x4e\x1a\x27\x79\xd3\x51\xe8\xfd\xa9\xcf\x8b\x4f\x09\x44\x21\xab\xd7\x05\xa2\x7d\x30\xd2\x79\x10\xbb\x1e\x57\x16\xb8\xa0\xac\x54\x6a\x4c\xc2\x11\xfb\x63\xd8\xf3\x2f\x95\x73\x87\x7a\x41\x3f\x2e\x02\xd0\xae\x07\x2f\x38\x3e\xd8\x68\x38\xaa\xff\x56\x58\x61\x34\xa3\xd4\xe4\x1a\x0d\x39\xf0\xcf\xfa\x5b\xfb\x3b\x2d\xc5\x61\x63\x2a\x6c\xbc\x2c\x67\xb0\xdb\xdd\x55\x4f\xc9\x6d\x1c\xe3\x62\x5f\xac\x33\xed\x90\x50\x66\x94\x14\x9b\xca\xfd\x8d\x9c\x2b\x08\x7c\x87\x9c\xe6\x58\x2a\x86\x28\x55\x7f\xe1\xc6\x47\xcd\x2a\x00\x58\xe3\xb8\x91\x56\x95\xda\x73\xc2\x99\x71\x7c\x12\xe5\xcc\xe2\xd7\x92\xdc\x26\x80\x4e\x45\x95\x5c\x93\x26\xef\x33\x67\x66\x74\x2a\x2e\xb5\x64\x89\xaa\x4b\x0a\x37\x63\x12\x46\xe7\xfe\xa5\x00\x36\x28\x8c\x19\x1d\x97\x76\xcf\x39\x0d\x04\xc0\xc2\x8e\x8d\x58\x11\x9f\x86\xa9\x12\xfb\x17\xd6\x1d\x61\x2e\xff\x27\xef\x4b\x66\xdb\xbf\xe2\x1c\x79\x99\xc0\xdd\x92\x50\xf1\xf2\xbf\xca\xca\x9b\xd2\x09\xf2\x17\x7b\x7e\xc6\x7f\x06\x56\x8b\x00\x6c\x3e\x63\xa1\x5e\x47\x7f\x07\xa9\x73\xd2\x0c\xf7\x3f\x3f\xaf\x90\xf2\x74\x5d\xa5\x1e\xd5\x7a\x30\x47\x2f\x8a\x34\xf7\x30\xfc\x48\xaf\xcf\xa7\xb5\x5a\xc4\x6c\xd8\x9d\x3e\xa4\x83\xde\x38\x4b\x3b\xbd\xb3\xaa\xad\x43\xdc\x77\xce\x14\xe7\xa5\x06\x98\x4b\x52\xf9\x88\xe6\x97\x5f\xc2\x01\x7e\xbc\xcb\xd6\xf7\x57\x00\x7b\x72\xb6\x6f\xd7\xe1\x32\x88\x9f\x6f\xae\xab\x2e\xff\xf8\xd4\x1b\x7d\x9e\x66\xc3\xd1\xe4\x9a\xc5\x17\x8f\x8d\x66\x6b\xa3\xab\xe2\x1f\xd3\xc7\x74\x3a\xcc\x26\xe3\x1b\xda\xed\xa7\xa7\xa4\x63\xb4\xe8\x77\x26\xcb\x30\xe7\xfe\xd7\xdb\xd1\xb4\xc9\x29\x16\xb6\x0c\x83\x00\x81\x98\xa1\x43\xa5\x48\xbd\x9d\xdc\xfd\x82\x6b\x8c\x4b\x96\x2a\x16\x46\x8b\xd2\x39\xd2\x1c\xbf\x33\x6e\xf5\xd1\x48\x9d\x19\x13\xde\x17\x85\xd1\xb1\xad\x63\x48\x5f\xfc\xb8\xb5\xc2\xdf\x86\x86\xc8\x43\xcb\xfe\x3d\xa1\x85\xdd\x6e\x10\xe0\xdf\xde\x04\x7f\x4a\x7e\xfa\xe4\xa9\x7f\xdf\xef\x40\xdb\x93\x5b\x93\xbb\x5e\xfb\xf1\x64\x38\x4a\xfb\xbd\xe9\xa0\x37\x79\x3f\xec\xde\x68\x40\x41\xc5\x75\xf6\x9f\x1f\xb2\xdf\x3e\x3c\x4c\x8f\x22\x83\xe9\x20\x7d\x1a\x67\xe9\xc3\xad\x5e\xde\x4e\xa2\xc0\x6f\x63\x8b\xda\x37\xc6\x04\xe7\xf3\x70\x76\x6d\x0e\x43\xbe\x3f\x03\xb4\x50\x65\x4e\x10\x85\x72\x1e\x00\x11\xc4\xc7\x2d\xfc\xe5\xb8\x79\x27\x04\x6b\xf2\x54\xb3\x4c\x6f\x72\xb6\xdb\xc3\xde\xfe\x13\x00\x00\xff\xff\xc4\xce\xde\x65\x3d\x0a\x00\x00"), - }, - "/charts/istio-telemetry/tracing/templates/service-jaeger.yaml": &vfsgen۰CompressedFileInfo{ - name: "service-jaeger.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 771334955, time.UTC), - uncompressedSize: 947, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xa4\x92\xcd\x0a\xdb\x30\x10\x84\xef\x7e\x8a\x25\xe4\x58\x19\x52\x8a\x1b\x04\x3d\xe5\xd4\x4b\x09\x6d\xc9\x7d\x2b\x6f\x1c\x35\x8a\xa4\x48\x6b\x43\x50\xfd\xee\xc5\xb6\xf2\x47\x12\x08\xed\xd1\xcb\xe8\x9b\x9d\x59\xa7\x04\x7a\x0b\x74\x84\x72\x83\xa6\xa5\x58\x72\x40\xa5\x6d\x53\xfa\xe0\x3a\x5d\x53\x80\xd9\x6f\xa4\x86\xc2\x0c\xfa\xbe\x40\xaf\x37\x14\xa2\x76\x56\x42\xb7\x28\xf6\xda\xd6\x12\x7e\x50\xe8\xb4\xa2\xe2\x40\x8c\x35\x32\xca\x02\xc0\xe2\x81\x24\x4c\x2f\xc5\xb1\xa5\x70\xca\xc3\xe8\x51\x91\x84\x94\xa0\xfc\x4e\x86\x30\x52\xf9\xed\x3c\x1e\x1c\x00\xd0\x5a\xc7\xc8\xda\xd9\x38\x90\x00\x52\x12\x10\xd0\x36\x04\xf3\x3d\x9d\x3e\xc0\xbc\x43\x03\xf2\xcb\xc3\xc6\x71\xda\xa3\xbc\x01\x4c\xc4\x01\x31\xbe\x85\xbe\x1f\xad\x47\xc2\x1f\x38\xb6\x8e\xe9\x2a\x11\x40\xb6\x9e\x3e\x0d\xfe\x22\x93\xed\xd1\xfb\x73\x92\xf1\x3b\x87\xd2\x76\x1b\xf0\x12\x31\x7b\x8f\x82\x30\xe5\x7a\x0c\x39\xb0\xa3\x27\x35\x70\xbd\x0b\x9c\x0d\x44\x6e\x6b\xac\x49\xec\x98\xfd\x38\x9e\x34\x12\x16\x55\xb5\xac\xce\x93\xe0\xd8\x29\x67\x24\xfc\x5c\xad\xf3\x8c\x31\x34\xc4\xeb\x3b\x6d\x24\x43\x8a\x5d\x78\x4c\x20\x84\xf8\xc7\x2b\x2a\x67\x26\xe8\xdb\x97\x7c\xbf\xc5\x0b\xfb\x3f\x8a\x14\x2f\xd6\x15\xac\x76\x68\x2d\x99\xe2\xa6\xd3\x4f\x1f\xab\xcf\xc5\xf3\x46\xef\xfa\xcc\xba\x97\xec\xcb\xb5\xae\xdc\xe5\x53\xca\xf2\xa9\xdb\xeb\x3b\x01\xf0\xc9\x93\x84\x95\x69\x23\x53\xf8\xba\x2e\x52\xca\xff\xe7\xdf\x00\x00\x00\xff\xff\x96\xe6\x7a\xda\xb3\x03\x00\x00"), - }, - "/charts/istio-telemetry/tracing/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 775334938, time.UTC), - uncompressedSize: 1041, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x92\x4f\x8b\xd4\x40\x10\xc5\xef\xf9\x14\xc5\xb0\x47\x13\x1c\x90\x61\x0d\x78\xf2\x2e\x83\xca\xde\xcb\xe4\x19\xdb\xe9\xad\xee\xe9\xae\x04\xc7\x36\xdf\x5d\x3a\x7f\x70\xc5\xd9\x30\x0a\x1e\x53\xbc\xf7\xeb\xca\xab\xc7\xde\x3c\x20\x44\xe3\xa4\xa6\x61\x5f\x9c\x8c\xb4\x35\x7d\x40\x18\x4c\x83\xe2\x11\xca\x2d\x2b\xd7\x05\x91\xf0\x23\x6a\xfa\x6e\xfc\xc9\xc8\xf2\x19\x3d\x37\xa8\x29\x25\xaa\xde\xc3\x82\x23\xaa\x77\xeb\x98\xc6\xb1\x20\xb2\xfc\x09\x36\x66\x3b\x11\x7b\x3f\x6b\x1f\xd8\xf6\x88\x95\x06\x6e\x8c\x74\x95\x0f\x6e\x30\x2d\xc2\xec\x20\x0a\x33\xea\x4f\x6e\x16\x44\x8f\x26\xe3\xf4\xe2\x71\x95\x16\xe7\xd5\xab\x2c\x98\x89\xde\x05\x5d\x56\x28\xa7\x8f\x4d\x1f\xbe\x29\x82\xb0\x3d\xba\xa0\xeb\x46\x44\xca\xa1\x83\x1e\x27\xf3\xeb\x57\xfb\xfd\x32\xf6\xc1\xa9\x6b\x9c\xad\xe9\xe3\xdb\xe3\x32\x9b\x73\xda\x78\x41\x96\x5f\x21\x8a\xb0\x68\xd4\x85\xdb\xf3\x29\xcb\xb2\x48\xa9\x24\xf3\x99\x04\xcf\x2b\x77\xce\x43\x1a\x48\xec\xe3\x6e\x1c\x8b\xbf\xbc\xf1\x82\xbb\xf9\xc8\x2c\xe2\x94\xd5\x38\x59\x62\xce\x1b\x06\x96\x0e\x74\x77\xc2\xe5\x05\xdd\x0d\x6c\xa9\x7e\xf3\x6c\x22\x4f\x00\x6b\xe4\x29\x4d\x5e\x1a\xc7\xe9\xe9\x89\xf0\x83\xce\xbd\x53\xfc\x92\x94\x04\x69\xff\x73\xd1\x7e\x6b\xcf\x9c\xcf\x17\x55\x5f\x9e\x7b\x84\xcb\x5a\x83\xa9\x17\xf7\x2f\xaf\xb6\x22\xa5\x7c\x2d\x9c\x37\xae\xf5\x95\xd1\x21\xec\xae\xd7\x6d\x7f\x38\xdc\x1f\x32\x05\x36\x62\xa3\x91\x59\x21\xed\x3f\xf6\xea\x49\x96\x3f\x03\x00\x00\xff\xff\x6a\x16\x13\x53\x11\x04\x00\x00"), - }, - "/charts/istio-telemetry/tracing/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 775334938, time.UTC), - uncompressedSize: 2571, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x56\xdb\x8e\x1c\x35\x13\xbe\x9f\xa7\x28\xcd\x5e\xfc\x89\xfe\xdd\x9e\x03\x89\x50\xfa\x2e\x10\x02\xab\x24\x10\x69\x82\x10\x42\x28\xaa\xb6\xab\xbb\x9d\x75\xdb\x4e\xd9\x9e\x9d\x06\x21\xe5\x41\xc8\xcb\xe5\x49\x90\x0f\x3b\xec\x49\x01\xf6\x66\xc7\xd5\x55\x5f\xd5\x57\xf5\xf9\x70\xb2\x38\x01\x94\xd2\x1a\x08\x8c\x42\x99\x01\x84\x35\xbd\x1a\x22\x63\x50\xd6\x2c\x4e\x16\xd5\xde\x2e\x00\xc8\x60\xa7\x49\xb6\xd0\xa3\xf6\xb4\x58\x00\x38\xb6\x7b\x25\x89\x5b\x78\x87\x34\x10\x2f\x00\x8c\x95\xb4\x23\x4d\x22\x58\x6e\xe1\xf7\x3f\x92\xdb\x09\xec\x1c\x09\xd5\xcf\x10\x46\x02\x67\x25\xa0\x09\xea\x0c\xfb\x5e\x19\x15\x92\x15\x03\xa0\xd6\xf6\xd2\xc3\x6c\x23\x04\x9b\xca\xf0\x81\x51\x19\xb8\x1c\x95\x18\x33\xac\xcf\x50\xb3\x8d\x9c\x31\x94\x07\xd2\x6a\x50\x9d\xa6\x14\xd1\x11\x78\x31\x92\x8c\x9a\x24\x74\xe8\x49\x82\x35\xa0\xb1\x23\xed\xd3\x2f\x67\xa5\xaf\x99\x98\x32\x12\x6a\x26\x94\x33\x70\x34\x26\x51\x4f\x5d\x18\x29\xa7\x02\xc6\x30\x12\x27\x7f\x73\x1f\x58\x2e\xa7\xc9\x28\x6f\x46\x62\x4a\x98\x20\x22\x33\x99\xa0\x67\x08\x97\x16\xc2\xec\xc8\x83\xed\x6f\x72\x6d\x73\x0c\x00\x2c\x99\xde\x47\xc5\x24\x9f\x45\x56\x66\xd8\x95\xd2\x95\x19\xce\x07\x63\x8f\xe6\x6f\x0e\x24\x62\x9a\xc4\xf2\x18\xe7\x98\x7a\xe2\xff\x18\x58\x9a\x28\xc9\xd8\x40\xf0\xe9\xc3\x9f\x23\xb2\xfc\xf4\xe1\x23\xec\x7d\x93\x96\xde\xf6\x21\x2d\x6b\x4d\x13\x99\xe0\x4f\xf3\x28\x04\x1a\x90\xd4\x2b\x43\xa5\xf1\x7b\xd4\xb1\x0e\x42\x19\x58\x3a\x2b\x9f\x9a\xa0\x9e\x56\x76\x2f\x53\x83\xae\xa6\xbf\x04\x34\xf2\x8e\xcb\x1b\xe2\xe9\xa6\x5b\x06\x13\x96\x99\xbc\xb3\x46\x2a\x33\xe8\xb9\xb4\xf6\xb9\x65\xa0\x03\x4e\x4e\x53\xe9\xdb\xe7\xd2\x15\x8f\x33\xb8\xa0\xb9\x05\x4f\x22\xb2\x0a\x73\xed\x9a\x75\xc4\x98\x05\x79\x6e\xaa\xa9\x10\x69\x61\xb7\x39\xdd\x6d\xab\x2d\x58\x67\xb5\x1d\xe6\x17\x09\x62\x79\x11\x3b\x62\x43\x81\x7c\xa3\xec\x6a\xb4\x3e\x18\x9c\x68\x59\x87\xae\xfc\x3d\x42\xe6\xa8\x09\x3c\xce\x55\x68\x57\x6a\xaf\x6d\xf5\x60\x6c\xb8\x2d\xd5\x0c\x67\x4d\xb0\x80\x45\x79\xaa\x2f\xc1\x65\xe1\xef\xa8\x14\x33\xe4\xa5\x0a\x63\xd1\x23\x8c\xb8\x4f\xf6\x0b\x2a\x6c\xd3\x38\x2b\xfb\x34\xd2\x34\x83\xcc\x35\x7d\xd8\x6d\x3e\x7d\xf8\x98\x7a\xfb\xd9\x46\xc2\x2f\xbf\xde\x75\xb9\x33\xb7\xec\xb6\x80\xba\xf3\x53\xf7\x01\xc6\xd8\xb5\x20\xad\xb8\x20\x4e\x3d\x2b\x9f\xea\x09\x92\x1d\x02\x0e\x2d\x6c\x9a\x27\x79\x31\xd1\x64\x79\x2e\x91\x00\x13\x1e\xde\x26\xd7\x34\x94\xc7\xeb\xf5\x7a\x9d\xc0\x7f\x53\xee\x42\x99\x7b\xc1\xad\x23\x53\x3e\xff\x8d\xbc\x6d\x36\x8f\x9a\x6d\x5e\x3b\xb6\x1d\xed\x02\x72\x88\xee\x19\x69\x9c\x5b\xd8\xae\xd7\xf9\xd3\xfb\x48\x3c\xbf\xb6\x1c\x5a\x78\xf2\x68\xb3\xc9\x36\x26\x6f\x23\xa7\xe4\xb5\x1c\xad\x26\x15\x8e\x2b\x00\xe1\x62\x0b\x5f\xac\xd7\xd3\xd1\x52\xcb\x87\x27\xeb\xf5\x2b\x55\xad\x69\xd2\xe4\xef\xc4\x6d\x1e\x7f\x36\xee\x1d\xee\xf1\x07\x17\xfc\x77\x84\xae\x85\x2f\x6b\x99\x27\xf0\x9c\xed\xd4\xc2\x18\x82\xf3\xed\x6a\x35\xa8\x30\xc6\xae\x11\x76\xba\xc6\x7d\x55\xff\x75\xda\x76\xab\x09\x7d\x20\xae\xa6\x33\x4f\xbc\x27\x5e\x79\x16\xab\x09\x95\x59\x1d\x29\xde\x74\x38\xf3\x23\x32\xc9\x66\x9e\xf4\xc9\xcb\xc7\x9b\x9a\xfa\x15\x1e\xd4\x14\x27\x30\x71\xea\x88\xd3\x31\xe6\x1d\x1a\x9f\xd4\x7b\x41\xe4\xd2\xe6\x2f\x3c\x1a\x80\x9f\x46\x32\x40\x07\x41\x24\x49\x9e\x82\xd5\x92\x7c\x80\x32\x4b\x78\x90\x04\x18\x46\x52\x5c\x10\x1e\xc2\xa5\xd2\x3a\x6d\x01\x17\x79\x20\xd9\xd4\x84\x4f\xc1\x63\x4f\x40\x3e\xa8\x09\x43\x56\xfe\xe6\x45\xca\x5b\xd2\x80\xa3\x02\x00\x0f\x08\xc5\x58\x7e\xe6\x4d\xb0\x05\x34\xc6\x86\x7c\x5f\x79\xf8\x3f\x6c\xa0\x53\x06\x79\xbe\x66\x7e\x78\x0a\x4e\x47\x5f\x33\x6d\xd6\x6b\x78\xf5\x15\xf4\x96\x01\x73\xd2\x30\x43\x17\xfb\x9e\xb8\x01\xf8\xd9\xc6\xff\x69\x0d\x86\x48\x26\xae\x7b\xe2\x74\x6d\x29\x53\x4e\x3f\x7b\x69\x80\xcc\x5e\xb1\x35\xe9\x8c\x2c\xb5\x4f\x78\xd8\x25\x66\x55\xb6\x65\x78\x69\xf7\x5e\x89\x40\xb8\xe8\x5b\xd8\x26\x3d\xa7\xc1\x09\x32\x3e\xfa\xfb\x35\x3d\x19\x95\xef\xdd\xa3\xa2\xd7\xcd\xd5\x6e\xf9\x77\x0a\xdd\xdc\x91\xd9\xf6\xdb\x7f\x10\xe7\xf6\x3e\x51\x3f\x3a\x8a\x93\x0e\xce\x72\x20\x3e\x86\xf9\x80\xe2\x42\xb2\xda\x5f\xed\xfa\xec\x95\xdf\x06\x6f\xaf\x5e\x0b\x10\x38\xe6\x17\x42\xd2\x98\x12\xb5\x15\xd7\x06\x95\x9f\x06\xb9\x51\x38\x51\xd1\x78\x21\x3d\x3b\x6a\xe1\x6b\x1d\x93\x92\xcf\x5f\xd7\x0a\x02\xb1\x41\x7d\x6d\xcb\x2e\x00\x94\x19\x98\x7c\xad\xea\xd6\xd3\xa4\x0c\xfa\x47\x5f\x86\x28\x98\x92\xa2\xd0\xc0\x79\x89\x01\x26\x61\xb9\x4a\x2f\x1d\xec\x15\x25\x5d\x1f\x95\x41\xa3\xad\x40\x7d\xa7\xea\xea\x76\xf3\x6a\xa8\x95\x34\x42\xa3\xf7\x2d\x98\x41\x99\xc3\xbd\x8e\x41\xfb\x33\x14\x89\xef\x32\xf5\x67\x59\x18\xeb\x23\xec\x8e\x04\x53\xf0\x30\x45\x1f\xd2\x0e\x99\xd0\x44\xd4\x7a\xae\x0c\x64\xd2\x61\x7e\xa1\xe0\x44\xde\xa1\xa0\xe6\x58\xb6\xcf\xa1\xdf\xe7\x66\x56\x0a\x67\x41\x5f\x49\xfe\x16\xcb\xf4\x77\x9b\xe9\xe2\xaf\x00\x00\x00\xff\xff\xb9\x01\xe3\x6a\x0b\x0a\x00\x00"), - }, - "/charts/istiocoredns": &vfsgen۰DirInfo{ - name: "istiocoredns", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - }, - "/charts/istiocoredns/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 178, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\x8e\xb1\xca\xc3\x30\x0c\x84\x77\x3f\x85\xc8\x03\x98\x38\xcb\x0f\x81\xbf\x4b\xbb\x74\xe9\x52\xe8\x1e\x1c\x15\x04\x8e\x25\x24\xd9\xcf\x5f\x5c\x68\xc6\xef\xee\xb8\xbb\x4d\xe8\x85\x6a\xc4\x75\x85\x9e\xc2\x8e\x96\x95\xc4\xbf\x7c\x37\x27\x86\x2b\x2b\xde\x1e\x4f\x10\xe5\x4e\x3b\x1a\x0c\x50\x34\x2e\x6d\xc4\xe0\xcd\x0a\x86\xda\x29\xa3\x01\x55\x38\x5a\x71\xca\xa5\x99\xe3\x30\xbc\x89\xc5\x50\xb7\x03\x57\xa0\x51\x98\x59\x71\xaf\x16\xfa\x6f\x36\xc5\x14\xe7\xb0\x89\x9c\x47\xe6\x98\x82\x53\x29\xa8\xa7\x34\x5d\xfe\x97\xf8\x17\x97\x29\x7c\x02\x00\x00\xff\xff\xec\x99\x0e\x4c\xb2\x00\x00\x00"), - }, - "/charts/istiocoredns/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - }, - "/charts/istiocoredns/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 3060, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x95\xcd\x8e\x9b\x30\x10\xc7\xef\x79\x8a\x51\x94\x43\xbb\x0a\x90\x5e\x91\x7a\x88\xd4\x3d\xac\x5a\x55\x55\xb7\xea\xdd\x81\x81\x58\x71\x6c\x6a\x9b\x34\x11\xcd\xbb\x57\x36\x84\x18\xc2\x57\x76\x57\x7b\x43\xc3\x7c\xf9\xef\xdf\x8c\x8b\x22\x78\x00\x92\x24\x94\x53\x7d\x02\x0f\xb6\x5a\x67\x2a\x0c\x82\x5d\xbe\x41\xc9\x51\xa3\xf2\xa9\x08\x62\x11\xa9\x20\x12\x3c\xc2\x4c\xdb\x8f\x84\xa6\xb9\x24\x9a\x0a\x1e\x10\xa5\x68\xca\xbd\x4c\xc4\x1e\x17\x31\x06\xf0\x10\x9c\xcf\xb3\x59\x51\x78\x10\x63\x42\x39\xc2\xdc\xd8\x2f\x35\xe6\x70\x3e\xcf\x00\x8c\x69\x5d\x99\xc2\x19\x00\x80\xc4\x3f\x39\x95\x18\x7f\xc9\x25\xe5\xe9\x73\xb4\xc5\x38\x67\x94\xa7\x4f\x29\x17\xb5\xf9\xf1\x88\x51\x6e\xca\x96\x31\xa6\x08\xe5\x11\xcb\xe3\xaa\xca\x25\xe5\xcf\x9e\x64\x73\xf0\xcb\xfa\x00\x99\xc4\x04\xe5\x5b\x15\xfc\xd1\x97\xad\xaa\x68\x02\x91\xc7\xd0\x25\xcd\x78\xd3\x55\xcb\xa5\x6c\xcf\xc8\x30\xd2\x42\xfe\x42\xb9\x57\x61\xf5\xc3\x83\x3d\xd1\xd1\xf6\xf1\x98\x49\x54\x8a\x0a\x5e\xff\x31\xff\x76\x78\x0a\x61\x83\x9a\xf8\xcd\x7b\x25\x32\xda\xd6\x6e\x00\x22\x43\x49\xb4\x90\x21\x3c\x71\xc7\x7c\x20\x2c\x47\x27\x9f\xe9\x5f\x12\x9e\x22\x2c\x76\x78\x5a\xc2\xe2\x40\x18\x84\x9f\xc1\xff\x6d\x1d\xfd\x94\x89\x0d\x61\xbe\x49\x7e\xed\xbc\x56\x2f\x81\x54\xc3\x07\x1b\xf3\x0f\x28\xd7\x1f\x61\xd5\xf4\xf2\xa0\x28\x6c\xe6\xdb\xe0\x4a\xc1\x11\xd3\xc2\x55\xc9\x34\x16\x63\x42\x72\xa6\xdb\x0d\x56\xe6\xef\xae\xf7\xc5\x85\x2a\x4d\x45\x64\x38\xe0\xca\x6f\xe4\xf3\x5a\xd5\xba\x94\x68\x76\xe0\x04\x54\x57\xd1\x79\xc0\x89\xea\x5f\x04\x32\xa5\xba\xb5\x98\xc2\xda\x00\xaf\x36\xe9\x0b\xee\x78\xec\x76\x3d\xf8\x8b\x34\xdd\xea\xb0\x6e\xdf\x7a\x5c\x0f\x51\x4e\x24\xf2\x08\xaf\xa7\x7d\x3f\xaa\x3b\xc0\x6b\xf0\x35\x41\xe0\x4c\xc4\x6b\xae\xe9\xda\x5d\x75\x95\x2a\x7d\x68\xb5\x42\xbe\x91\x0d\xb2\x61\x18\x5b\x11\x66\x0b\x34\xa2\x6c\xb3\x2d\xa7\xd0\xbd\xa0\xfb\xfb\xa8\xe4\x78\xf5\x86\x6e\x15\x99\xb0\xa4\x5b\x13\x7e\xc7\x09\x6e\x74\x79\xbb\xbd\xdf\xaa\x34\xb6\xfa\xfb\xa7\x73\x22\x47\xa3\xef\x82\x33\xac\x94\xc7\x78\x5c\xc2\x82\x6a\xdc\xbb\xf3\x7a\xf7\x65\x7b\xc0\x5c\xf3\x1d\x13\x69\x86\xc8\x94\xf7\x07\x36\x5c\xed\x73\x31\x75\x3e\x14\xa5\x4b\x39\xa8\x4d\x87\xdb\xe1\xb5\x8b\xff\x40\x98\x32\xa7\x56\x19\xa3\x1a\xe6\xcb\xf9\x40\x0a\x57\x34\xb3\xdf\xec\xde\xb6\x09\x3a\x5e\xa3\xc3\xe8\x5b\xd4\x61\xd4\x22\x13\x4c\xa4\xa7\xaf\x0d\x55\x1c\xeb\x30\x1d\x43\x48\x8c\xad\xef\x57\x33\xd1\x3b\x3e\x9e\xdd\x2d\x8e\xd7\xf5\x12\x7a\x80\x19\x42\x66\x02\x34\x77\x60\x33\x01\x9c\x2e\x74\x5e\x00\xcf\x64\x7c\x7a\x00\xea\x41\xa8\xd3\x3c\x19\x23\xa8\x1f\xd8\x4f\xab\xd5\x00\x58\xff\x03\x00\x00\xff\xff\x1d\xbb\xc9\xaa\xf4\x0b\x00\x00"), - }, - "/charts/istiocoredns/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 252, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\x8c\x31\x4f\x03\x31\x0c\x46\xf7\xfc\x0a\x2b\x23\x82\x20\x36\x94\x95\x81\x8d\xa1\x03\x0b\xea\xe0\xbb\xb3\x5a\xeb\x72\x71\x64\x3b\xad\x44\xd5\xff\x8e\x2e\x8c\xdd\xfc\xfc\x3e\x3d\x6c\xfc\x4d\x6a\x2c\x35\x83\x4e\x38\x27\xec\x7e\x16\xe5\x5f\x74\x96\x9a\xd6\x77\x4b\x2c\xaf\x97\xb7\xb0\x72\x5d\x32\x7c\x94\x6e\x4e\x7a\x90\x42\x61\x23\xc7\x05\x1d\x73\x00\xa8\xb8\x51\x06\x36\x67\x99\x45\x69\xa9\x16\x00\x0a\x4e\x54\x6c\xd7\x00\xd8\xda\x83\x07\x50\x2a\x84\x46\x19\x6e\x37\x48\x87\x7f\x48\x5f\xb8\x11\xdc\xef\x41\x7b\x21\xcb\xe1\x05\xb0\xf1\xa7\x4a\x6f\x96\xe1\x27\x56\xf2\xab\xe8\xca\xf5\x94\x46\x2e\xb1\xc4\x63\xd8\x53\x26\x5d\x67\x1a\xa3\xa7\xf1\xba\x90\x4e\x03\x4f\xe4\xf1\x19\xe2\x15\x7d\x3e\xef\x47\x61\xf3\x78\x0c\x7f\x01\x00\x00\xff\xff\x26\xab\x9c\x9e\xfc\x00\x00\x00"), - }, - "/charts/istiocoredns/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 402, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\x90\x3d\x4e\x34\x31\x0c\x40\xfb\x9c\xc2\x17\x48\x3e\x7d\x1d\x4a\x07\x14\x74\x14\x83\x44\xef\xc9\x18\x30\x9b\x89\x23\x3b\xd9\x82\xd5\xde\x1d\xcd\x0f\x48\xcb\x22\x9a\x14\x91\xdf\x73\x5e\xb0\xf2\x33\xa9\xb1\x94\x08\x3a\x62\x0a\xd8\xdb\x9b\x28\x7f\x60\x63\x29\xe1\x70\x63\x81\xe5\xdf\xf1\xbf\x3b\x70\x99\x22\xdc\xe7\x6e\x8d\x74\x90\x4c\x77\x5c\x26\x2e\xaf\x6e\xa6\x86\x13\x36\x8c\x0e\xa0\xe0\x4c\x11\xd8\x1a\x8b\x5f\xcf\x24\x4a\x53\x31\xaf\x92\xc9\x8f\x1b\xe1\x4f\x27\x08\x03\x65\x42\xa3\xf0\x88\x33\x59\xc5\x44\x70\x3e\x3b\x80\x8c\x23\x65\x5b\x54\x00\x58\xeb\xee\xda\x2d\xeb\xad\x6e\x60\x84\x9f\x96\x45\xb0\xac\x19\xe8\x65\xe1\xb1\xf2\x83\x4a\xaf\x7f\x64\x39\x80\xab\xaa\xcb\x88\xaf\xc5\xd6\xc7\x77\x4a\xcd\xa2\xf3\x3b\xf2\x44\x7a\xe4\x44\xb7\x29\x49\x2f\xed\x57\xca\xdb\x36\xe3\xf1\x62\x68\xad\xbd\x7e\xfe\xf7\x27\x7c\x06\x00\x00\xff\xff\x6c\x71\xd2\x22\x92\x01\x00\x00"), - }, - "/charts/istiocoredns/templates/configmap.yaml": &vfsgen۰CompressedFileInfo{ - name: "configmap.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 424, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\x8d\xc1\x4e\xc3\x30\x10\x44\xef\xfe\x8a\xf9\x81\xba\x09\x55\x05\xf8\xda\x33\x1c\x38\x70\xdf\x3a\xdb\xc6\xc2\xf5\x5a\x6b\xb7\x02\x85\xfc\x3b\x6a\x4a\xd5\x40\x7d\xf2\x3e\xcd\xbc\xa1\x1c\xde\x59\x4b\x90\xe4\x70\x6a\xcd\x47\x48\x9d\xc3\x46\xd2\x2e\xec\x5f\x28\x9b\x03\x57\xea\xa8\x92\x33\x40\xa2\x03\x3b\x78\x51\xee\x52\xf9\xbd\x4b\x26\xcf\x0e\xc3\x00\xfb\xc6\x91\xa9\xb0\x7d\xbd\x62\x8c\xa3\x01\x22\x6d\x39\x96\x73\x1f\xa0\x9c\x1d\x42\xa9\x41\x6e\x16\x40\x2f\xc5\x7b\xcb\x59\x70\x1d\xdf\x88\xf2\x2e\x44\x76\xf8\x9e\x4a\xd6\xad\x57\x18\xa6\xef\xe5\xb1\xaa\x68\x99\x81\x9e\x29\xd6\x7e\x06\xb2\xca\xe7\x17\xf6\x51\xb6\x14\xd1\x3e\x3c\xda\xc6\x36\xb6\x75\x4f\xcd\x3f\xd3\x94\xac\xe2\x25\x62\xaf\xd9\x23\xa4\xc2\xfe\xa8\x3c\x8b\x8c\x7f\xb5\x07\xae\x3d\x1f\x0b\xdc\x73\xbb\x5e\xdd\x2d\x5a\x2c\xb9\xfa\xa5\x72\x91\x78\xb2\x5e\xd2\x6e\x16\xf1\xe4\x7b\xc6\xaa\x99\x21\xe5\x28\xd4\x99\xdb\xd6\x62\xb1\x30\x3f\x01\x00\x00\xff\xff\xb5\x0e\x73\xb2\xa8\x01\x00\x00"), - }, - "/charts/istiocoredns/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 2586, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x56\x51\x6b\xe3\x46\x10\x7e\xf7\xaf\x18\xf4\x5c\x59\x09\x25\x47\xba\x6f\x21\x86\xb6\xd0\x0b\xe2\x2e\x3d\x28\xa5\x0f\x93\xd5\xc8\xda\xde\x68\x77\xd9\x1d\xa5\x18\xdf\xfd\xf7\x22\x4b\x96\xd7\xb6\x62\xb7\xd0\x9e\x5e\x12\x76\xbe\xef\x9b\x99\x6f\x77\x06\xa3\x37\x9f\x28\x44\xe3\xac\x02\xf4\x3e\x16\xaf\xb7\x8b\xcf\xc6\x56\x0a\x56\xe4\xd9\x6d\x5a\xb2\xb2\x68\x49\xb0\x42\x41\xb5\x00\xb0\xd8\x92\x02\x13\xc5\x38\xed\x02\x55\x36\x8e\x87\xd1\xa3\x26\x05\xdb\x2d\x2c\x3f\x10\x13\x46\x5a\x3e\xed\x8f\xe1\xeb\xd7\x05\x00\xe3\x0b\x71\xec\x45\xa0\xcf\x75\xa6\x02\x10\x06\xe2\xb9\x4a\x2f\x10\x3d\xe9\x9e\x1c\xc8\xb3\xd1\x18\x07\xd4\x27\xe4\x8e\xe2\x32\x95\x5a\x8e\x88\x47\xd7\x59\x19\x52\x47\x62\xd2\xe2\xc2\x90\xbc\x45\xd1\xcd\x2f\x49\x35\xf3\xf5\x08\xb5\x9e\x51\x68\x24\x25\x26\xf4\xdf\xac\x11\xfd\xc7\x47\xc2\x6f\xb5\x7a\xb5\xdd\x91\x6c\xad\x13\x14\xe3\x6c\xa2\x18\x4d\x45\x1a\xc3\xd0\xf4\xd2\xb8\xc2\xd8\x3f\x49\x8b\x82\xac\x46\x8e\x94\xed\x80\x7b\xbb\x76\xff\x53\x78\x35\x9a\x1e\xb4\xee\x2d\x79\x3a\xab\x3c\x1f\x01\x39\x0e\x88\xc5\x76\x9b\x83\xa9\x27\x77\xd7\xec\x5e\x90\x97\x3e\x18\x17\x8c\x6c\x1e\x19\x63\x3c\xae\xf3\x2c\xa4\x20\x4b\xae\xe7\x82\x40\xb6\x4b\x46\xb6\x3a\x88\x69\x67\x05\x8d\xa5\x30\xf5\x9c\x8f\x76\x9f\x3a\x68\x5a\x5c\xd3\xdb\x0f\xa1\xff\xbb\x7a\xfa\xf8\x73\x8f\x3a\xc8\x8f\xb4\xb2\x63\x2e\x1d\x1b\xbd\x39\x12\x18\x4b\x3d\x81\xc0\x17\xa8\xa8\xc6\x8e\x05\xb2\x07\xfe\x0b\x37\x31\x4b\x05\x31\xac\xa3\x82\xdf\x21\xcb\xb5\xb3\x75\xf6\x1d\x64\x05\x89\x2e\xc6\x3a\x8a\x47\x17\xa8\x36\x4c\x19\xfc\x31\x51\x5e\x1d\x77\x2d\xbd\xef\xed\x4e\xae\xf6\xd0\xa8\xad\xcd\x3a\x1f\x40\x53\x14\xa0\xed\xf1\x25\x4a\xa3\x20\xcd\x30\x21\xbc\x0b\xc7\x72\x93\x97\xa5\x0b\xa2\xe0\xee\xfb\x44\x6c\x48\x95\xd2\xfb\x8b\x74\xe2\xb4\x63\x05\xbf\xae\xca\x7f\xab\x93\x8b\xf6\xb3\x5a\xcf\x8f\x17\xb4\x7e\xb8\x9d\x51\x6b\x49\x82\xd1\xf3\x95\xa5\x6a\x6c\x5e\xc9\x52\x8c\x65\x70\x2f\xa4\x12\x78\x23\xe2\x7f\x24\x49\x8f\x00\xfc\xe0\x5c\x43\xc8\xd2\x1c\x47\x76\xa5\xdc\xdf\xdc\xdf\x1c\x1d\x47\xdd\x50\x5f\xce\x4f\xcf\xcf\x65\x12\x30\xd6\x88\x41\x5e\x11\xe3\xe6\x23\x69\x67\xab\xa8\xe0\x5d\x4a\x15\xd3\x92\xeb\x64\x0a\xde\x25\xb1\xd8\x69\x4d\x31\x3e\x37\x81\x62\xe3\xb8\x52\x70\x9b\x44\x6b\x34\xdc\x05\x4a\xa2\x77\xc9\xc6\x88\xae\x0b\x9a\xa2\x3a\x1d\xd1\x93\x05\x38\xc2\xfa\x37\xba\xdd\x82\xb8\xdf\xb0\xe5\x6b\xd8\x2f\x60\x6c\x45\x56\xe0\xf6\x66\xe0\xe5\x40\x1c\x69\x5e\x63\x1c\x93\x71\x28\x3e\x5c\x14\x49\x67\x3b\x4f\x17\x67\xbe\xdf\x3f\x9e\xbb\xb5\xb1\x53\x9b\xda\xb5\x2d\xda\x2a\x7d\xc7\x45\x17\x43\xc1\x4e\x23\x17\x2f\xc6\x16\x27\x84\x7f\xb6\x07\xca\x1d\xe9\xff\xdf\x06\xd7\x86\xf0\xfe\xe6\x8d\xf1\x59\x07\xaf\xaf\xbe\xf8\xff\xfe\x0d\x7c\xe3\x27\x50\xd9\xb8\x77\x7a\x35\x70\xc7\xc0\xb0\xed\x66\x96\xfe\xdc\x2e\x1c\x4e\xdf\xa3\x57\x67\x56\x9e\x2e\x45\x00\x23\xd4\xc6\x14\x98\xc3\x67\xda\x28\xd8\x2f\xe6\x99\x25\x71\x12\xc2\xba\xee\x87\x7e\xb3\x17\xd9\x59\x6f\x35\x77\x15\x41\x66\x5d\x45\x7b\x40\x06\xcb\x83\x03\xef\x0e\x5d\x1f\x11\xbc\xab\x1e\xac\x98\x87\x37\x39\x97\x6e\x56\x1c\x53\x18\x7e\x13\x1c\xe4\x93\x43\x75\x6d\xe4\x53\x81\xf3\xb4\xe3\x5d\xfd\x1d\x00\x00\xff\xff\x17\xf4\xc6\xfe\x1a\x0a\x00\x00"), - }, - "/charts/istiocoredns/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 306, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x7c\xce\xbd\xaa\xc3\x30\x0c\x05\xe0\xdd\x4f\x71\x5e\x20\x81\xcb\xe5\x2e\x5e\x6f\xe7\x12\xfa\xb7\xab\x8e\x06\x53\xc7\x32\x96\xc9\x12\xf2\xee\xc5\x4d\x32\x94\xd0\x8e\x3e\xd6\xf9\x24\x4a\xfe\xc6\x59\xbd\x44\x8b\xf1\xc7\x3c\x7c\xec\x2d\xce\x9c\x47\xef\xd8\x0c\x5c\xa8\xa7\x42\xd6\x00\x91\x06\xb6\xf0\x5a\xbc\x38\xc9\xdc\x47\x5d\x43\x4d\xe4\xd8\x62\x9a\xd0\x9e\x38\x30\x29\xb7\xc7\x2d\xc6\x3c\x1b\x20\xd0\x9d\x83\x56\x04\xa0\x94\x76\x0a\x90\x97\xe2\x5e\xa9\x80\x26\x76\xb5\xac\x1c\xd8\x15\xc9\x9f\xa1\x24\xb9\xbc\xf6\x34\xeb\xb9\x9b\x5f\x3f\x2c\xfe\x7e\x97\x47\x96\x22\x4e\x82\xc5\xf5\xd0\xbd\x0f\x37\xc5\xa5\x6f\x85\xcb\x7f\x67\x9e\x01\x00\x00\xff\xff\x19\xc9\x2c\xaa\x32\x01\x00\x00"), - }, - "/charts/istiocoredns/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 331, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8e\x31\x6e\xc4\x20\x10\x45\x7b\x9f\x62\x2e\x60\xa4\xb4\x74\xb9\x40\x14\x65\xa5\xed\x67\xf1\x8f\x35\xca\x18\x10\x83\xb7\x41\x7b\xf7\x88\xc5\x29\xe2\x34\xe9\xd0\xd3\xbc\xc7\xe7\x2c\x57\x14\x93\x14\x3d\xdd\x5f\xa6\x2f\x89\x8b\xa7\x0b\xca\x5d\x02\x5e\x43\x48\x7b\xac\x53\x6b\x33\xc9\x27\xb9\x2b\xeb\x0e\x73\xab\xa6\x1b\xab\x93\x8d\x57\xbc\xef\xaa\x17\x84\x82\x6a\xf4\x78\x4c\x67\xe6\x9f\x6e\xe1\xb8\xe2\x3f\x3a\xd1\x4c\x91\x37\x78\x6a\x8d\x5c\x27\x5d\x47\x5c\x4e\xcf\x0d\x95\x17\xae\xec\x27\x3a\xee\xc5\xaa\xa4\x90\x0a\x96\x68\xb3\x8d\xf9\x33\x1f\xfb\xc7\x91\x65\x0e\x47\xf9\x03\x0a\x36\xb8\xb7\x1f\x3c\x3e\x57\xbe\x41\xad\x47\x89\x38\xe7\xdf\xd5\x27\x2d\x43\xfc\x5b\xe9\x81\xef\x00\x00\x00\xff\xff\x31\xc3\x4b\x34\x4b\x01\x00\x00"), - }, - "/charts/istiocoredns/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 1402, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x53\xcd\x8a\xe4\x36\x10\xbe\xfb\x29\x8a\x9e\xeb\xb6\x7b\x7a\x42\x48\xf0\x6d\xc9\x24\x30\x24\x2c\x01\xef\x2d\xe4\x20\x4b\x65\x5b\x8c\xba\xca\x51\x95\xa6\xd7\x84\xc0\x3c\x48\xf6\xe5\xe6\x49\x82\x24\xf7\x6e\x26\x1d\x16\xf6\xd6\xaa\xae\xfa\xaa\xbe\x1f\xdf\x34\x37\x60\x9c\x63\x02\x2f\xea\xd9\x72\x44\x47\x02\x1a\x8d\xf5\x34\x81\x65\x1a\xfd\x94\xa2\x51\xcf\xd4\xdc\x34\xff\x6e\xea\x1a\x00\x24\x33\x04\x74\x1d\x8c\x26\x08\x36\x00\x11\x97\xe0\xad\xf9\x81\x13\x69\x07\xc7\x06\x20\x77\xdf\xbf\xeb\x1f\x4e\x66\xc2\x0e\xb6\xd9\xc3\x05\xe3\xd8\x1e\xdb\xbb\x06\xe0\x06\x7a\x4e\xd1\x22\x58\x76\x08\x23\x47\xd0\x19\x61\x09\x69\xf2\x04\xd6\x10\x0c\xb9\x9a\xc8\x81\xd1\xd2\x3e\xab\x2e\xd2\x1d\x0e\x93\xd7\x39\x0d\xad\xe5\xd3\xa1\x1c\xb7\x47\xcb\xb2\x8a\xe2\xe5\xbd\x6d\xda\x57\xac\x32\xfb\xfe\x33\x74\xf0\xa2\x48\x52\x36\xde\xbf\xeb\x21\xe2\x1f\x09\x45\x05\xc6\xc8\xa7\xcb\xb5\x20\x18\x9f\x30\x82\x51\x38\xde\x7d\xd7\xde\xb6\xb7\xed\xb1\xfb\xfe\xf6\xdb\x6f\x3e\xd3\xfb\xb5\xc0\x6d\x24\xcb\xe2\xc3\xeb\xc5\xdd\x6d\x7b\xb7\xaf\x17\x1d\xdb\xac\x0b\xb1\xc3\x1e\x03\x5a\xe5\xd8\xc1\x9f\x7f\x35\x00\xca\x01\xab\xd4\xd2\xc1\x6f\xbf\x37\x55\x97\x05\xad\x1f\xd7\xaa\x07\x3b\x30\xa4\x7e\x6f\xc6\xd1\x93\xd7\x5c\x35\x0a\x26\x04\x3e\x0b\xac\x9c\x40\x39\x7b\x26\x1a\x8d\x27\x38\xcf\xde\xce\x65\x91\x14\xa8\x95\x53\x2c\x18\x5e\x00\x83\x9f\xfc\x10\x30\x4f\x0c\x08\x62\x67\x74\x29\xa0\x83\xc1\x08\x3a\x60\x82\x60\x06\x0c\x92\x7f\x2d\xec\x64\xdb\x14\xb1\x20\x99\x10\xd1\xb8\x15\x62\x22\xca\x39\x61\x2a\xf7\xe5\x55\x10\x8d\xce\x98\xfd\xcb\xae\x5d\x83\x95\x73\xda\x8b\x0f\x11\x33\x26\xd8\x14\x23\x92\x86\x15\xf4\xcc\xa0\xeb\x82\x02\x3c\xbe\xe6\xda\x95\x19\x00\xd8\x65\x93\x7c\x44\x77\x9f\xa2\xa7\xa9\xaf\xa7\x7b\x9a\x1e\x26\xe2\x4f\xe5\x1f\x3f\xa0\x4d\x59\xcb\xdd\xa7\xb9\x25\xe2\x88\xf1\x2b\x07\xab\x88\x0e\x89\x15\xe1\xe5\xf9\xef\xd9\x44\xf7\xf2\xfc\x11\x9e\xa4\xcd\x4f\xe1\x51\xf3\x73\xbb\xe9\x84\xa4\xf2\xa6\x58\x91\x53\xeb\x70\xf4\x84\x55\xf8\x27\x13\xd2\x66\x84\x27\xd8\x2d\xec\xde\x92\xfa\xb7\x1b\xbb\x5f\xb2\x40\x97\x3c\xec\xc0\x90\xbb\x6a\x79\x8f\xf1\xf4\xba\xad\x80\x59\x8e\x11\x65\x61\x72\x9e\xa6\xb0\x56\x69\x7f\xe2\x08\xf8\xc1\x9c\x96\x80\x55\xb7\x2f\xad\xab\x1d\x7b\x78\xc4\xb5\x03\x41\x9b\xa2\xd7\x75\x53\x8d\x97\x1c\xc9\x1c\xd1\x07\xda\x4a\x95\x48\x07\xfd\xf1\x4d\x7f\xb7\xd5\x94\x17\x0e\x3c\xad\x3f\x67\x88\xdd\x63\x1a\x30\x12\x2a\x4a\xeb\xf9\x30\xb3\x28\x99\x13\xee\x36\xd3\xbd\xfc\x4f\x90\x63\x0a\x08\x62\xd6\x2d\x68\x97\xb4\x6f\xb2\x0a\x10\xeb\x7f\xa3\x5a\xe0\x98\x94\xc1\xd4\xe4\xf9\xb1\x0e\xd7\x87\x5c\xa5\xd4\x14\xc8\xb3\xd7\xb9\xe6\x11\x66\xf3\x94\xeb\x8f\x58\xd9\x66\x3b\x37\xf6\xd9\xd2\xec\x41\xe1\x9a\xff\xe8\x8f\x2f\xcf\x1f\xb3\xb6\x5f\x14\x32\x7f\xb5\x57\x2d\x57\xbe\x95\xb6\x7f\x02\x00\x00\xff\xff\xcf\x06\x55\xb3\x7a\x05\x00\x00"), - }, - "/charts/security": &vfsgen۰DirInfo{ - name: "security", - modTime: time.Date(2019, 7, 3, 23, 31, 21, 60040770, time.UTC), - }, - "/charts/security/certmanager": &vfsgen۰DirInfo{ - name: "certmanager", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - }, - "/charts/security/certmanager/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 132, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\xcc\xb1\xaa\x02\x31\x10\x46\xe1\x7e\x9e\x62\xd8\x07\x18\x36\x29\xee\x85\x05\x05\x3b\xc1\xde\x7e\x8c\xbf\x1a\x48\xb2\x61\x32\xee\xf3\x0b\x82\x5b\x9e\x53\x7c\xda\xf3\x15\x36\xf2\xda\x16\xde\x02\xdd\x31\x92\xe5\xee\xdf\x3e\xf1\x19\xa5\x72\x7a\xa9\x39\x3f\x56\xe3\xcb\xfb\x06\x6b\x70\x0c\x6a\x5a\xb1\x70\x82\x79\xd5\xa6\x4f\x18\x6d\x3f\x26\x48\x90\x99\xb4\xf7\x1d\x9e\xe5\x4f\x22\x79\x2e\x05\xb6\xcf\xe9\x78\x88\xf2\x2f\x71\xa2\x4f\x00\x00\x00\xff\xff\x1c\x74\x5d\xa0\x84\x00\x00\x00"), - }, - "/charts/security/certmanager/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - }, - "/charts/security/certmanager/templates/NOTES.txt": &vfsgen۰CompressedFileInfo{ - name: "NOTES.txt", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 226, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x2c\xce\xd1\xad\x2b\x21\x0c\x84\xe1\xf7\xad\x62\x6e\x01\x77\x79\x4f\x0f\xa7\x08\x02\x43\x40\x02\x7b\x65\x1b\x1d\x6d\xf7\x47\x89\x52\xc0\xcc\xff\x15\x5a\xac\x2c\xf9\x45\x43\xcf\x8e\x27\x29\xa8\xbc\xa6\xde\xac\xf0\x5d\x0a\xdd\xdb\x9e\xf3\xfe\x77\x1c\x3f\x6a\xc4\x90\xa6\xb6\x72\x0c\x15\xa8\x20\x3a\x51\x47\x6b\x34\x4a\x20\xee\x8b\x0e\x6d\x18\xee\x9b\xe6\xc8\x52\xd1\xf5\x17\xa1\x28\x2a\x6d\xbc\xb6\xf1\xbd\x59\x47\xc9\x82\x27\xd1\x74\x4b\xc5\x10\xe8\x36\x54\x2d\x7b\x51\xe2\xf3\xfe\x38\x8e\x1e\x71\xf9\x23\xa5\xb7\xf2\xff\x97\x79\x1a\x73\x8d\xce\xaa\xc5\xcf\xa1\x89\x92\x66\x0e\x7a\x24\xe3\x47\x51\x98\xbe\xf5\xb3\xc7\x9a\x7f\x01\x00\x00\xff\xff\x72\x74\x0f\xea\xe2\x00\x00\x00"), - }, - "/charts/security/certmanager/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 3053, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\x9b\x30\x10\xbd\xe7\x57\x8c\xa2\x1c\xda\x55\x80\xf4\x8a\xd4\x43\xa4\xee\x61\xd5\xaa\xaa\xba\x55\xef\x0e\x0c\x8e\x15\xc7\xa6\xc6\xa4\x89\x68\xfe\x7b\x65\x43\x88\x21\x7c\x65\x77\xb5\x37\x34\xcc\xcc\x1b\x3f\xbf\x79\x2e\x8a\xe0\x01\x48\x92\x30\xc1\xf4\x09\x3c\xd8\x6a\x9d\x66\x61\x10\xec\xf2\x0d\x2a\x81\x1a\x33\x9f\xc9\x20\x96\x51\x16\x44\x52\x44\x98\x6a\xfb\x91\x30\x9a\x2b\xa2\x99\x14\x01\xc9\x32\x46\x85\x97\xca\xd8\x13\x32\xc6\x00\x1e\x82\xf3\x79\x36\x2b\x0a\x0f\x62\x4c\x98\x40\x98\x9b\xf8\x05\x63\x0e\xe7\xf3\x0c\xc0\x84\xd6\x55\x28\x9c\x01\x00\x28\xfc\x93\x33\x85\xf1\x97\x5c\x31\x41\x9f\xa3\x2d\xc6\x39\x67\x82\x3e\x51\x21\xeb\xf0\xe3\x11\xa3\xdc\xc0\x96\x35\x06\x84\x89\x88\xe7\x71\x85\x72\x69\xf9\xb3\xa7\xd9\x1c\xfc\x12\x1f\x20\x55\x98\xa0\x7a\x2b\xc0\x1f\x7d\xdd\x2a\x44\x53\x88\x22\x86\x2e\x6a\xc6\x87\xae\x46\x2e\x69\x7b\x46\x8e\x91\x96\xea\x17\xaa\x7d\x16\x56\x3f\x3c\xd8\x13\x1d\x6d\x1f\x8f\xa9\xc2\x2c\x63\x52\xd4\x7f\xcc\xbf\x1d\x9e\x42\xd8\xa0\x26\x7e\xf3\x5e\x89\x8a\xb6\x75\x1a\x80\x4c\x51\x11\x2d\x55\x08\x4f\xc2\x09\x1f\x08\xcf\xd1\xe9\x67\xe6\x57\x44\x50\x84\xc5\x0e\x4f\x4b\x58\x1c\x08\x87\xf0\x33\xf8\xbf\x6d\xa2\x4f\xb9\xdc\x10\xee\x9b\xe6\xd7\xc9\x6b\xf6\x12\xa0\x1a\x3e\xd8\x9a\x7f\xc0\x84\xfe\x08\xab\x66\x96\x07\x45\x61\x3b\xdf\x16\x57\x0c\x8e\x84\x16\x2e\x4b\x66\xb0\x18\x13\x92\x73\xdd\x1e\xb0\x0a\x7f\x77\xb3\x2f\x29\x11\x2a\xbd\x27\x82\x50\x54\x7e\xa3\x9d\xd7\x02\xeb\x22\xa2\x39\x80\x53\x50\xdd\x44\xe7\xf9\x26\x92\x7f\xe1\xc7\x40\x75\x53\x31\x45\x6a\x03\x72\xb5\x4d\x5f\x70\xc5\x63\x97\xeb\xc1\x5f\x64\x74\xab\xc3\x7a\x7c\x9b\x71\x3d\x44\xb9\x90\x28\x22\xbc\x9e\xf6\xfd\x44\xdd\xa1\xbb\x86\xbc\x26\x10\x9c\xca\x78\x2d\x34\x5b\xbb\x4e\x57\xb1\xd2\xa3\xac\x56\xc5\x37\xb2\x41\x3e\x28\xc5\x56\x81\xb1\x80\x46\x91\x1d\xb5\x95\x14\xba\xd7\x73\xf7\x14\x15\x17\xaf\x76\xe7\x16\xc8\x04\x83\x6e\x6d\xf7\xf4\x03\xdc\xb0\xf2\x76\x96\xdf\x42\x1a\x73\xfd\xfe\xcd\x9c\xa8\xa1\xd1\x27\xc1\x59\x54\x26\x62\x3c\x2e\x61\xc1\x34\xee\xdd\x5d\xbd\xf7\xaa\x3d\xe0\x6e\xf8\x8e\x65\x34\xfb\x63\xd0\xfd\x01\x73\xab\x73\x2e\xa1\xce\x27\xa2\x4c\x29\x77\xb4\x99\x70\xbb\xb7\xd6\xf2\x0f\x84\x67\xe6\xd0\x59\xca\x99\x86\xf9\x72\x3e\xd0\xc2\xe5\xcc\x58\x9b\xb5\x6c\xdb\xa0\xe3\x1d\x3a\x8c\xbe\x42\x1d\x41\x2d\x53\xc9\x25\x3d\x7d\x6d\xb0\xe2\x44\x87\xc5\x31\xa4\x88\x31\xe7\x7e\xad\x24\x7a\x97\xc7\xb3\xbe\xe2\x64\x5d\xef\xa0\x47\x2f\x43\x8a\x99\xa0\x99\x3b\x54\x33\x41\x37\x5d\xca\x79\x81\x76\x26\xab\xa7\x47\x3f\x3d\x0a\xea\x0c\x4f\x56\x11\xd4\x4f\xeb\xa7\xd5\x6a\x40\x57\xff\x03\x00\x00\xff\xff\x2f\xe7\x54\x42\xed\x0b\x00\x00"), - }, - "/charts/security/certmanager/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 2047, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x54\x4f\x6f\xdb\x3e\x0c\xbd\xe7\x53\x10\xc6\xef\xf0\xdb\xc1\xee\x7a\x19\x06\x03\x3b\x18\x69\x77\xda\xba\xa0\x03\x0a\xec\x34\xb0\x32\xed\x6a\xa3\x25\x43\x92\xb3\x05\x69\xbe\xfb\xe0\xc8\x7f\xe4\x38\xa9\x93\x53\xf0\xcc\xc7\xc7\x47\x52\xc4\x5a\x3e\x91\xb1\x52\xab\x14\xb0\xae\xed\xcd\xf6\x76\xf5\x5b\xaa\x3c\x85\x3b\xaa\x59\xef\x2a\x52\x6e\x55\x91\xc3\x1c\x1d\xa6\x2b\x00\x85\x15\xa5\x20\xc8\xb8\x0a\x15\x96\x64\x3a\xcc\xd6\x28\x28\x85\xfd\x1e\x92\x47\x62\x42\x4b\xc9\x43\x0f\xc3\xe1\xb0\x02\x60\x7c\x26\xb6\x6d\x0e\x68\xa5\x4e\x93\x00\x18\xcf\x9b\x27\x69\xf9\xb6\x26\xd1\x72\x0d\xd5\x2c\x05\x5a\x1f\xf5\x84\xdc\x90\x4d\x82\x4c\x49\x17\xb0\xd6\x8d\x72\x5e\xd8\x12\x93\x70\xda\x78\xe9\x0a\x9d\x78\xf9\x12\xd4\x72\xb6\x1a\x47\x55\xcd\xe8\xa8\xe3\x04\x0d\x68\x7f\x3c\xa1\x5f\xb0\xb3\x64\xa9\x8f\x19\x82\xf7\xfb\x18\x64\x71\xd6\x54\xad\x73\x5f\x72\xeb\x68\xbf\x07\xa7\x7f\x60\xc5\x0b\xa1\xaf\x20\x55\x4e\xca\xc1\x47\xdf\x87\x51\x85\x54\x3e\x42\xa8\x94\x76\xe8\xa4\x56\x81\x23\x2b\x73\x12\x68\x12\x69\x9d\xd4\x89\xd4\x37\x52\xfd\x22\xe1\x52\x88\x0a\x64\x4b\xd1\x95\x45\x67\x63\xee\xab\x2a\x0f\xe3\xaf\x2a\xbf\x5f\x8b\xe3\x7f\x32\x5b\x29\x28\x13\xa2\x9d\xfd\xc3\x6c\x51\x4f\x4a\x2d\x59\x3f\x23\x27\xb5\x91\xda\x48\xb7\x5b\x33\x5a\xdb\x6f\x9b\x4f\x38\xfb\x94\x42\x14\x6c\xdd\x1b\x09\xa2\xd5\xac\xcd\x42\x2b\x87\x52\x91\x19\xba\x1c\x9f\x7d\x4c\xfe\x27\x2b\x2c\x4f\xe4\xc2\x56\xbd\x34\xcf\x70\x38\xdc\xb4\x50\xdc\x61\x71\x2b\x60\x34\x33\x99\xf4\x02\xcb\x61\x79\xac\x6d\x22\xb2\x69\x98\x37\x9a\xa5\xd8\x4d\x9e\x54\x67\xee\x24\x04\x5e\x21\xa7\x02\x1b\x76\x10\x65\xfc\x07\x77\x36\x0a\x87\x83\xa6\x0c\x76\x28\x86\x38\x16\xdc\x58\x47\x26\x36\x64\x75\x63\x04\xc5\xc3\xad\xf8\xf4\xdf\xff\x9b\x6f\x77\x3f\x1f\xb2\xaf\xf7\xdf\x37\xd9\xfa\xfe\xdd\x84\xc7\x84\x39\x99\xf8\xf8\x72\xa5\x56\xcb\xb4\x37\xf6\x90\xfe\x3a\x83\x99\x29\xaf\x58\xc1\x31\xf4\xdc\xf6\xcd\x66\x0a\x40\x6a\x1b\x1a\xf6\x03\x9d\x14\x38\x7c\x05\xd8\xb6\x82\x9f\x8d\xae\xd2\x00\x04\x28\x24\x71\xfe\x48\xc5\x14\xed\xf0\x0d\xba\x97\x74\x38\x40\xc9\xd0\x87\xe0\xc4\xf8\xce\xda\x74\xc1\xdb\x10\x38\x7a\xbb\x7d\x3f\x35\x77\xf9\x21\xdf\x29\xdb\x6d\xc0\x40\xc8\x7b\xe8\xe2\x29\x3e\xcf\x9b\x75\x71\x51\x79\xad\x55\x21\xcb\x89\xb2\x87\x96\x2c\x4f\xe8\x57\x4d\x14\x8b\x42\x2a\xe9\x76\x69\x58\x9b\x12\xdc\xe4\x04\x91\xd2\x39\xf5\x01\x11\x24\x63\xc6\x0f\x27\x66\x7a\xc2\xf1\xa2\x39\x99\x5d\xe4\xbc\x61\xdd\x69\x26\x33\x9e\x4e\x9f\x3d\x00\x97\xbc\x87\xfc\xb9\x68\x67\xfa\x5f\x00\x00\x00\xff\xff\x5b\xe3\xef\xc9\xff\x07\x00\x00"), - }, - "/charts/security/certmanager/templates/issuer.yaml": &vfsgen۰CompressedFileInfo{ - name: "issuer.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 842, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x51\xc1\x4a\xc3\x40\x10\xbd\xe7\x2b\x06\x3c\x67\xd3\x7a\x92\xbd\x49\xf1\x20\xa2\x87\x0a\xbd\x8f\x9b\xd7\x74\xe9\x26\xbb\xec\x4c\x02\xa5\xf4\xdf\x25\x49\x0b\x55\x41\x10\x14\x3c\xce\x3c\xde\x9b\x37\xef\x95\x65\x59\x70\xf2\x1b\x64\xf1\xb1\xb3\xe4\x90\xb5\xe5\x8e\x1b\x64\xb3\xbf\x13\xe3\x63\x35\x2c\x39\xa4\x1d\x2f\x8b\xbd\xef\x6a\x4b\xab\xd0\x8b\x22\x3f\x8a\xf4\xc8\x45\x0b\xe5\x9a\x95\x6d\x41\xd4\x71\x0b\x4b\x01\x2a\xe8\x5c\x3e\x24\x2d\x45\xb9\xf1\x5d\x73\xc6\x24\xb1\x83\xa5\xe3\x91\xcc\x1a\x01\x2c\x30\x2f\x97\x35\x9d\x4e\x05\x51\xe0\x37\x04\x19\xb5\x88\x38\xa5\x0f\x76\xa6\x65\x9e\x79\x5f\x45\x46\xbe\x24\xb8\x91\xcb\xae\xc5\xac\x21\xc8\x03\xb2\xa5\x9d\x6a\x12\x5b\x55\x23\x72\x31\x55\x0e\x8b\x5b\xc3\xc9\x9b\x2b\xc3\x26\xe6\xa6\xaa\x7d\x86\xd3\x98\x0f\x93\x04\x5a\xf6\x61\xbe\xb7\xe1\xd0\x43\xcc\x75\x44\x13\x3a\x7b\x27\xba\xa1\xc9\x49\xdc\x12\x93\xc0\x65\x28\xf5\x82\x9a\x34\x92\x68\xcc\x20\xdd\x81\xee\x57\xcf\x0f\xc4\xce\xc5\xbe\x53\x4a\xd9\x0f\xac\xa0\x3d\xe6\x63\xe7\xf9\x09\x87\xd7\x89\xbf\xc6\x76\x7e\xe4\xfb\x70\x69\x7a\x70\xb1\xb4\x74\x3c\x15\x7f\xda\xe8\xff\x6a\xf2\xd7\x1b\xfc\x49\xfe\x9f\x73\x7f\x0f\x00\x00\xff\xff\x65\xbf\x42\xa5\x4a\x03\x00\x00"), - }, - "/charts/security/certmanager/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 480, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x84\x90\xcf\x4a\x03\x31\x10\xc6\xef\xfb\x14\xdf\x0b\x18\x29\x78\xca\x4d\xf1\x58\x44\x3c\x14\x3c\xce\x26\xd3\x1a\x9c\xfc\x21\x99\x2d\x48\xec\xbb\xcb\x76\x15\x96\xaa\xf4\x3a\xcc\xf7\xfb\xe6\x37\xbd\xdf\x20\xec\x61\x76\x24\x13\x37\x73\x90\x3c\x92\x18\xcf\x7b\x9a\x44\x9f\xb3\x7f\x0c\xad\x4e\x45\x43\x4e\x0f\x93\x3f\xb0\x1a\x4e\x34\x0a\x7b\x9c\x4e\x03\x95\xb0\xe3\xda\x42\x4e\x16\x25\x4b\x70\x1f\xb7\xc7\xcd\xc8\x4a\x9b\xe1\x3d\x24\x6f\xf1\x47\x7e\x88\xac\xe4\x49\xc9\x0e\x40\xa2\xc8\x16\x8e\xab\x46\x4a\x74\xe0\xfa\x3d\x6b\x85\x1c\x5b\xf4\x0e\xf3\xc2\xc2\xd4\xd8\x3c\xfd\x8c\xe7\x62\x40\x68\x64\x69\x33\x03\xa0\x52\x2e\x21\x40\x5d\x72\xbf\x21\x4b\x1e\xb8\x10\x5f\xe5\x4d\xc9\x7e\x7b\xe6\xcf\xbb\xbd\x43\xf3\x2b\x45\xb9\xb2\xfa\x89\x90\x3c\x27\xc5\xdd\xba\x81\xd3\xf9\x53\xad\xb0\x9b\x8f\x8d\x21\xdd\x1f\x29\xc8\xfc\x42\x8b\xcd\x00\x34\x16\x76\x9a\xeb\xa2\x12\x49\xdd\xdb\x76\xe5\xf6\x8f\xdd\x15\xbf\x55\xf3\x57\x00\x00\x00\xff\xff\xc0\x54\xbe\xc2\xe0\x01\x00\x00"), - }, - "/charts/security/certmanager/templates/rbac.yaml": &vfsgen۰CompressedFileInfo{ - name: "rbac.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 880, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xb4\x92\xbf\x6e\xdb\x40\x0c\xc6\xf7\x7b\x0a\xc2\x63\x51\xc9\xe8\x56\x68\x6b\x3b\x74\xeb\xe0\x02\x59\x82\x0c\xd4\x89\x92\x19\x9f\xee\x0e\xe4\x9d\x10\xd8\xf0\xbb\x07\xfa\x93\xc0\x76\x84\x20\x08\x90\x8d\x47\xde\x47\xfe\x08\x7e\x18\xf9\x8e\x44\x39\xf8\x0a\xa4\x46\x5b\x62\x4e\xfb\x20\x7c\xc4\xc4\xc1\x97\x87\x9f\x5a\x72\xd8\x0e\x3f\xcc\x81\x7d\x53\xc1\x1f\x97\x35\x91\xec\x82\x23\xd3\x53\xc2\x06\x13\x56\x06\xc0\x63\x4f\x15\x58\x92\xd4\xa3\xc7\x8e\xc4\x00\x38\xac\xc9\xe9\x58\x05\xc0\x18\x6f\xcb\x00\x42\x8e\x50\xa9\x82\xd3\x09\xca\xdd\xfc\x28\xff\x61\x4f\x70\x3e\x1b\xc9\x8e\x26\x71\x01\x18\xf9\xaf\x84\x1c\xb5\x82\xfb\xcd\x45\x93\x85\x6e\xf3\xb0\x74\xd3\x90\xc5\xd2\xeb\x2f\x6e\xd9\x62\x22\xdd\x7c\x87\xab\xf7\xb6\x65\x8f\x8e\x8f\x24\x53\x89\x55\xf3\x12\xda\x79\xbb\x8b\x4c\x90\xe6\x2a\xba\xd1\xda\x3d\x3a\x47\xbe\x23\x5d\x20\x06\x92\x7a\x02\xf8\x36\x25\x6e\xd8\x57\x49\x83\x6f\xb9\xeb\x31\x4e\x0d\x95\xac\x50\x9a\x42\x1a\xc8\xa7\x25\x29\x03\xdb\x79\x91\x18\x9a\x8f\xcd\xa2\xa7\x44\x7e\xbc\xab\xae\x4d\x65\xdf\x09\xa9\xae\x73\x17\x45\x61\x3e\xef\x8b\xdf\xec\x1b\xf6\xdd\x57\xdb\x23\x38\xda\x51\x3b\xca\x5f\xd6\x7e\x07\xd4\x00\xbc\xf5\xef\x1a\x96\xe6\xfa\x91\x6c\x5a\x8c\xb7\x86\x3d\xab\x34\xa2\x5d\x21\x9b\xd2\x23\xde\xf8\x6f\x9e\xf8\x7f\x3e\xde\x2f\x6b\x43\xf6\xc9\x3c\x07\x00\x00\xff\xff\xef\xa3\x76\x8a\x70\x03\x00\x00"), - }, - "/charts/security/certmanager/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 313, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8d\x31\x6e\xc4\x20\x10\x45\x7b\x4e\x31\x17\x30\x52\x5a\xba\x5c\x20\x8a\x62\xc9\xfd\x18\xff\x20\x94\x01\x23\xc0\x6e\x90\xef\x1e\xb1\xf6\x36\xde\x66\xbb\xd1\xd3\xbc\xf7\x39\xf9\x09\xb9\xf8\x35\x1a\xda\x3f\xd4\x9f\x8f\x8b\xa1\x11\x79\xf7\x16\x9f\xd6\xae\x5b\xac\xaa\xb5\x81\xfc\x2f\xe9\x89\x65\x43\xd1\x4e\xd6\x99\x45\xfb\xc0\x0e\xdf\x9b\xc8\x08\x9b\x51\x0b\x1d\x87\xba\x33\xf3\x70\x33\x47\x87\x77\x74\xa2\x81\x22\x07\x18\x6a\x8d\x74\x27\x5d\x47\x5c\x6e\x67\x40\xe5\x85\x2b\x1b\x45\xd7\xbf\x45\xae\x81\x23\x3b\xe4\x8b\x95\xc4\xf6\x0a\xfd\x40\xc0\x05\xfa\xeb\x89\xcf\x2d\xe1\x19\x52\x7a\x83\x88\x53\xba\x47\x88\xf2\xe9\xbd\x46\xba\xff\x1f\x00\x00\xff\xff\xf4\x7d\x05\x7d\x39\x01\x00\x00"), - }, - "/charts/security/certmanager/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 1499, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x54\xc1\x6e\xdc\x46\x0c\xbd\xef\x57\x10\xdb\x43\x2e\xf6\xa6\xce\xa1\x07\xdd\x8c\x75\x0a\x18\x4d\x51\x20\x6b\xf4\x52\xf4\x40\xcd\x50\xd2\xd4\xa3\xa1\x32\xe4\x78\x23\x14\x05\xfc\x21\xcd\xcf\xf9\x4b\x0a\x8e\xe4\x4d\xdc\x2d\x0c\xf4\xa6\xa1\xc8\xc7\xc7\xc7\x37\xe3\x28\xeb\x88\x09\x7b\xca\xcd\x06\xe0\x3b\xd8\x7f\x0d\x40\x11\x12\xb8\xde\xff\xfc\x1e\x94\x41\x42\x9f\xc0\xd2\x43\x17\x1c\x2a\xc9\x0e\x0e\x21\x39\x82\x5b\xd1\xc0\xd0\xa3\xd2\x11\x67\x01\xcc\x54\x81\x46\x2e\x49\x43\xea\x41\x07\x82\xbb\x0f\x07\x10\x72\x99\x54\xea\x79\xff\x15\x07\xf6\x1f\x6f\x04\xc6\x22\x0a\x2d\x81\xcb\x84\x4a\x1e\x42\xb2\xbc\x0a\x14\x0c\xff\x52\x66\x51\x1a\x21\xe1\x48\x32\xa1\xa3\x1d\xfc\x62\xcd\x0d\xec\x1b\x52\x30\xa0\x40\x4b\x94\x9e\x81\x2e\x4e\x30\x2b\xc1\x53\xa7\x32\xf9\xda\xa9\x9d\x01\xbd\x37\xa2\x6f\x16\x86\xbf\x72\x2c\x23\xc9\x9b\x1d\x5c\x77\x4a\xb9\xb6\x58\x8b\x2b\x50\x26\x51\xcc\x7a\x01\x37\x24\x1a\x12\x6a\xe0\xf4\xb1\x44\x12\x70\x98\xbe\x9d\xa1\xc8\xf3\xf8\xa6\xe1\xa5\x09\x48\xfe\xa5\x84\x1b\x00\x4a\xd8\x46\xf2\x0d\x74\x18\xc5\xa8\x66\x9a\x62\x70\xb8\x37\xfd\x1a\xb8\xda\x00\x0c\xa5\x6d\xe0\x53\xc1\x79\x17\xf8\xed\x1f\xa4\xa2\xe8\xee\x37\x00\x8a\x7d\x03\x0f\xdf\xef\x7e\xd8\xbd\xab\x75\xc2\x25\x3b\x92\x06\xfe\xfc\x6b\x03\x90\xd8\xd3\x81\x22\x39\xe5\xbc\x86\x94\x23\xe5\x4a\x58\x1a\xf8\xed\xf7\x4d\x9d\xe7\x30\x91\x0b\xdd\x5c\x89\x4e\xec\x01\x93\x86\x4b\xec\xba\x90\x82\x5a\x14\x15\x30\x46\x3e\x0a\xcc\x5c\xcc\x09\x8e\x93\x68\xc6\x90\xe0\x38\x04\x37\xd4\x46\x52\xa1\x66\x2e\xb9\x62\x04\x01\x8a\xa1\x0f\x6d\x24\xab\x68\x09\xc4\x0d\xe4\x4b\x34\xc1\x51\xc8\x03\x27\x88\xd8\x52\x14\xfb\x9a\xd8\xcb\xda\x69\x75\x0f\xc6\x4c\xe8\x67\xc8\x25\x25\x53\x91\xab\x1f\x6a\x2b\xc8\xa8\x43\xdd\x8b\xc9\x7d\x0e\x56\xe9\xec\x2a\xca\xdd\x40\x99\x0c\x13\x5c\xc9\x99\x92\xc6\x19\xf4\xc8\xa0\xf3\x44\x02\xdc\xbd\x9c\x75\xb9\x00\x00\xb0\xcd\xf4\xa9\x84\x4c\xfe\xa6\xe4\x90\xfa\xc3\x42\x3d\xa4\xfe\xb6\x4f\x7c\x0a\xbf\xff\x4c\xae\x98\x96\xdb\x53\xdd\x94\xa9\xa3\xfc\x3f\x0b\x17\x11\x3d\x25\x56\x82\xa7\xc7\xbf\x07\xcc\xfe\xe9\xf1\x0b\x3c\xc8\xce\x8e\xc2\x9d\xda\x71\xe5\x34\x52\x52\xb9\xa8\xab\x30\xbb\x79\xea\x42\xa2\x45\xf8\x07\x8c\x65\x5d\x44\x48\xb0\x9d\xd8\x5f\x27\x0d\xd7\xeb\x74\x1f\x4c\xa0\x67\x3f\x6c\x01\x93\x3f\x4b\xb9\xa3\x3c\xbe\x4c\xab\x60\x8e\x73\x26\x99\x38\xd9\x2d\x89\xf3\x22\xed\x8f\x9c\x81\x3e\xe3\x38\x45\x5a\x74\x7b\xad\xdd\x92\x71\x09\xf7\x34\x37\xf6\x0e\x94\x1c\x74\x5e\x55\xe3\xc9\x2c\x69\x16\xbd\x4d\x6b\x68\x19\xa4\x81\xc3\xd5\xc5\xe1\xdd\x1a\x53\x9e\x38\x72\x3f\xff\x64\x10\xdb\xfb\xd2\x52\x4e\x64\x57\x28\xf0\xdb\x81\x45\xed\x61\xd8\xae\x4b\x0f\xf2\x1f\x46\xce\x25\x12\x88\xbd\x50\xd5\x68\xcf\x6e\x5f\x65\x15\x48\xac\xff\xb6\x6a\x85\xe3\xa4\x0c\xb8\x38\x2f\x74\x4b\xf1\x72\x90\x33\x97\x62\x85\x3c\x06\x1d\x16\x3f\xc2\x80\x0f\x16\xbf\xa7\x65\x5a\x5b\xe7\x3a\xbd\xad\xd4\x76\x50\x67\xb5\x1f\x87\xab\xa7\xc7\x2f\xa6\xed\xab\x42\xda\xad\x3d\x4b\x39\xdb\x5b\x4d\xfb\x27\x00\x00\xff\xff\x21\x0e\x0e\xb3\xdb\x05\x00\x00"), - }, - "/charts/security/citadel": &vfsgen۰DirInfo{ - name: "citadel", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - }, - "/charts/security/citadel/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 278, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8e\xc1\x4e\xc4\x20\x10\x86\xef\xf3\x14\x64\xef\x0b\xd2\x8b\x59\x12\x3d\xfb\x04\x7b\x47\x98\x6d\x27\x52\x86\x0c\xd3\x6a\xdf\xde\xb4\x55\x13\x2f\x84\x7c\xdf\xf7\x27\x13\x1b\xdd\x51\x3a\x71\x0d\x66\xf5\x50\xe3\x8c\xc1\x24\xd2\x98\xb1\xc0\xfa\x6b\xbc\xf5\xf6\x09\x62\x6b\xf7\xff\x44\xa9\x14\x94\x3f\x78\x79\x7d\x19\xec\xb3\x1d\x2e\x90\xb1\x27\xa1\xa6\x07\x7e\xc3\x32\x9b\x34\x45\x51\xf3\x60\x31\xd4\x95\xd8\xc4\x45\x27\xac\x4a\x29\xee\x11\x7c\xe0\xf6\xc9\x92\x7b\x00\x63\xae\x67\x72\xfc\x3a\xa6\x45\x48\x37\xe8\xbc\x48\xc2\x1f\x3f\xa9\xb6\xe0\xdc\x48\x3a\x2d\xef\x36\xf1\xec\x8e\xc5\xf9\x02\xd6\x91\x2a\x06\x33\xb2\xb6\x02\x94\xf6\x1b\xf6\x45\x0f\xee\x2c\x2c\xb1\x7b\xc4\x75\x37\xdd\xc5\x9a\x85\x29\x5f\xfd\x6d\xf8\xf2\xb7\xc1\xb6\x3a\xc2\x77\x00\x00\x00\xff\xff\xfc\x32\x80\xba\x16\x01\x00\x00"), - }, - "/charts/security/citadel/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - }, - "/charts/security/citadel/templates/NOTES.txt": &vfsgen۰CompressedFileInfo{ - name: "NOTES.txt", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 376, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\x90\xc1\x6a\xf4\x30\x0c\x84\xef\x7e\x8a\xb9\xed\xff\xc3\x26\x34\x8f\x50\x0a\x85\xde\x0b\x3d\x9b\x44\x89\x05\x8a\x64\x2c\x99\xed\xbe\x7d\xf1\x96\xed\xc9\x07\xa3\x99\x6f\xbe\xcf\xc2\x8e\xa0\xb3\x4a\x0e\xc2\x6a\x1a\x99\xd5\x11\x85\x70\x71\xd6\x43\x28\x4c\x2f\xa8\xb9\x05\x6c\xc7\x87\x07\xdb\x9c\xd2\xab\x08\x2c\x0a\x35\xac\x76\x56\x53\xd2\x70\x78\xaf\xd5\x5a\xe0\xec\x12\x5c\x85\xc0\xea\x91\x75\x25\xc7\xbf\xda\x6c\x67\x21\xff\x8f\xd6\x55\x59\x0f\xb0\x8e\xd4\x2c\x42\x32\xa7\xf4\x6e\x0d\xbd\x1e\x2d\x6f\x84\xda\x5b\x35\xa7\x2b\x62\xc0\xfd\x15\xc0\x8b\x75\xd9\x46\xc0\x38\xe6\x81\x32\xf9\xdd\x83\x4e\x4c\xb8\x15\x6a\xf4\xe0\xa6\xef\xf1\xa5\x07\x4e\xf2\x82\x95\x5a\xf0\xce\x6b\x0e\x72\xe4\x46\xf0\xb0\x46\xdb\x9c\xbe\x58\xe4\x97\x50\x04\x19\x4a\x37\x6c\x54\xc5\xee\xe7\xe8\xb2\x1d\x6f\x1c\x79\x23\xb9\xa2\x0f\x11\x58\xe6\x05\x13\x38\xb0\x66\x7d\x32\x3c\x07\xe0\xc6\x51\x1e\xe5\x26\xdb\xe4\x71\x7f\x8e\x1f\x9a\x76\x10\x3f\x54\x2d\xf3\x4b\xb2\xf1\x2c\x73\xfa\x09\x00\x00\xff\xff\x90\x29\x63\xf2\x78\x01\x00\x00"), - }, - "/charts/security/citadel/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 3032, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\x9b\x30\x10\xbd\xe7\x57\x8c\xa2\x1c\xda\x55\x80\xf4\x8a\xd4\x43\xa4\xee\x61\xd5\xaa\xaa\xba\x55\xef\x0e\x0c\xc4\x8a\x63\x53\x63\xd2\x44\x34\xff\xbd\xb2\x21\xc4\x10\xf3\x91\xdd\xd5\xde\xd0\xf0\x3c\x6f\xfc\xe6\xcd\xb8\x2c\x83\x07\x20\x49\x42\x39\x55\x27\xf0\x60\xab\x54\x96\x87\x41\xb0\x2b\x36\x28\x39\x2a\xcc\x7d\x2a\x82\x58\x44\x79\x10\x09\x1e\x61\xa6\xcc\x47\x42\xd3\x42\x12\x45\x05\x0f\x48\x9e\xd3\x94\x7b\x99\x88\x3d\x2e\x62\x0c\xe0\x21\x38\x9f\x67\xb3\xb2\xf4\x20\xc6\x84\x72\x84\xb9\x8e\x5f\x38\xe6\x70\x3e\xcf\x00\x74\x68\x5d\x87\xc2\x19\x00\x80\xc4\x3f\x05\x95\x18\x7f\x29\x24\xe5\xe9\x73\xb4\xc5\xb8\x60\x94\xa7\x4f\x29\x17\x4d\xf8\xf1\x88\x51\xa1\x69\xab\x33\x9a\x84\xf2\x88\x15\x71\xcd\x72\x49\xf9\xb3\x27\xd9\x1c\xfc\x8a\x1f\x20\x93\x98\xa0\x7c\x2b\xc2\x1f\x7d\xd9\x6a\x46\x7d\x10\x79\x0c\x2e\x69\xc6\x8b\xae\x4b\xae\x64\x7b\x46\x86\x91\x12\xf2\x17\xca\x7d\x1e\xd6\x3f\x3c\xd8\x13\x15\x6d\x1f\x8f\x99\xc4\x3c\xa7\x82\x37\x7f\xf4\xbf\x1d\x9e\x42\xd8\xa0\x22\x7e\xbb\xaf\x44\x46\xdb\x06\x06\x20\x32\x94\x44\x09\x19\xc2\x13\xb7\xc2\x07\xc2\x0a\xb4\xf2\xe9\xfa\x25\xe1\x29\xc2\x62\x87\xa7\x25\x2c\x0e\x84\x41\xf8\x19\xfc\xdf\x06\xe8\xa7\x4c\x6c\x08\xf3\x75\xf2\x6b\xe5\x8d\x7a\x09\xa4\x0a\x3e\x98\x33\xff\x80\x72\xf5\x11\x56\x6d\x94\x07\x65\x69\x32\xdf\x1e\xae\x15\x1c\x09\x2d\x6c\x95\x74\x61\x31\x26\xa4\x60\xaa\x5b\x60\x1d\xfe\x6e\xa3\x2f\x90\x1c\xa3\x42\x52\x75\xf2\x5b\xb9\xbc\x0e\x93\x4b\x85\x36\xbb\x75\xa0\x6e\x83\xf3\x72\x13\x95\xbf\x88\xa3\xa9\xdc\x3a\x4c\xf1\xd9\x80\x57\x4d\xd2\x17\xf4\x77\xac\xb3\x1e\xfc\x45\x9a\x6e\x55\xd8\x94\x6f\x10\xd7\x4b\x54\xd3\x88\x3c\xc2\xeb\x6d\xdf\xcf\xd1\x0e\xd3\xb5\xbc\x35\x41\xe0\x4c\xc4\x6b\xae\xe8\xda\x5e\x73\xb5\x2a\x2e\x5b\x75\xe0\xdf\xc8\x06\x59\xbf\x09\x3b\x68\x3d\xf9\xad\x13\xa6\xc8\x0e\x28\xb4\x1b\x73\x1f\x7f\x2d\xc1\xab\x37\x72\x87\x64\xc2\x52\xee\x4c\xf4\xc4\xea\x6f\xf4\x78\xbb\x1d\xdf\x61\x1a\x5b\xf3\xfd\xd3\x38\xd1\x37\xa3\x6f\x80\x35\x9c\x94\xc7\x78\x5c\xc2\x82\x2a\xdc\xdb\xf3\x79\x57\x93\x3d\x60\x76\xf8\x8e\xe9\xd3\x03\xa3\xa9\xfd\x81\x6d\xd6\x60\x2e\x21\xe7\x83\x50\x41\xaa\xa1\x6c\x03\x6e\x07\xd5\x2c\xf8\x03\x61\xb9\xbe\x71\x9e\x31\xaa\x60\xbe\x9c\x0f\xa4\xb0\x05\xd3\xbb\xcc\xec\x68\x93\xc0\xf1\xea\x1c\x46\xdf\x1c\x47\x50\x89\x4c\x30\x91\x9e\xbe\xb6\x54\xb1\xa2\xc3\xce\x18\xb2\xc3\xd8\xaa\x7e\x95\x1f\x7a\xc7\xc6\x33\xbb\xc4\x42\x5d\x1b\xd0\x63\x96\x21\xbb\x4c\x30\xcc\x1d\x96\x99\x60\x1a\x97\x6d\x5e\x60\x9c\xc9\xd6\xe9\x31\x4f\x8f\x7d\x9c\xe1\xc9\x16\x82\xe6\x21\xfd\xb4\x5a\x0d\x98\xea\x7f\x00\x00\x00\xff\xff\x96\xe2\x69\x4c\xd8\x0b\x00\x00"), - }, - "/charts/security/citadel/templates/_helpers.tpl": &vfsgen۰CompressedFileInfo{ - name: "_helpers.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 779334922, time.UTC), - uncompressedSize: 2413, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x54\x4f\x6f\xd3\x4e\x10\xbd\xe7\x53\x8c\xac\x56\xfa\xfd\x8a\xec\x48\x20\x7a\x88\xd4\x0b\x85\x03\x42\x2a\x88\xa2\x72\x44\x13\x7b\xb6\x1e\xb1\xbb\x36\x3b\xbb\xa1\x51\xdb\xef\x8e\x76\x37\x71\xfe\xb4\x29\x4d\x11\x27\x7a\x1b\xd9\x6f\xdf\xbc\x79\xf3\xe7\xfa\x7a\x7c\x04\x33\x36\x13\x10\xf2\xa0\x58\x93\x9f\xf7\x74\x62\x82\x78\xac\x5b\x9a\xc0\xd1\xf8\xf6\x76\x14\x51\xa3\x77\x57\x3d\xda\x06\x7c\x4b\x60\xd1\x10\x74\x2a\xc5\x75\x8b\xce\x57\xa3\x05\xae\x84\x86\x14\x5b\x82\x82\xc5\x73\x57\x45\x64\x01\xe5\xea\x1f\x06\xed\xa1\x3a\x4d\x8f\xce\x22\x4d\x75\x81\x3a\x90\x54\x42\x75\x70\xec\xe7\xe9\xc9\xc7\x19\x39\xc7\x0d\xc1\x0d\x78\x17\x6c\x0d\xc7\xaf\x52\xc8\xe6\x3c\x28\xc5\x57\x50\x94\x2b\x56\xb2\x4d\x8a\xb3\xcc\x53\x47\xe8\x09\x70\x48\xa6\x82\xd6\x73\xf8\x11\x50\xb3\x62\x6a\x00\xfb\x3e\x15\x50\x8d\xbe\x52\x66\x4f\x78\x1f\x73\xc4\x62\x04\xa6\x54\x63\x10\x02\xe9\x0c\xc1\x87\x30\x25\x67\xc9\x93\xe4\xb2\x15\x93\x6e\x04\xd0\x11\x68\x36\xec\xa9\x01\xdf\x81\x6f\x59\xe0\xbf\xe9\x3c\x59\xf2\xf6\xec\x3c\x62\xd9\x5e\x82\xf4\x54\xff\x5f\x8d\xde\x2b\x70\xa4\x09\x65\xe1\x5d\xdd\x59\x8f\x6c\x25\xbb\x97\xbf\xb1\x87\x9f\xac\x35\x4c\x09\x82\x44\x9d\x02\x98\xc4\x2f\xd4\xee\x70\x38\x22\x36\x5d\x66\x75\xd7\xd4\x25\x6a\x30\x76\x09\xfe\x3d\xf2\x51\x2d\xd0\xb2\xa2\x3c\x48\xe5\x4c\x4e\x9e\xd0\xee\xb5\x12\x06\x8b\x32\x5d\xf5\x39\xfb\x97\x59\x06\xf5\x1b\x5f\xf7\x56\xda\x3b\xb6\x5e\x41\x71\x28\xe5\xa1\x14\x5b\x6c\x39\xef\x3e\x03\xb8\x2b\xde\x18\xcc\xb5\x8e\xc7\x75\x9a\x91\x13\xee\x6c\xec\x76\xea\xfa\x62\x84\x32\x4a\xe3\x94\xf4\xce\xce\x27\x4c\xb1\xb3\x98\x75\xd3\x73\x7c\xb1\xc8\x75\x03\x8e\x7a\x8d\x35\x41\xf1\xa2\x80\xe2\x5b\xf1\x27\x6b\xb6\xbd\x5e\x75\x67\x15\x5f\x1a\xec\x1f\x1e\xdb\x01\x76\xcf\x00\x3f\xd8\x96\xfc\xbe\x34\x24\x6d\x99\x49\x9e\x24\x7f\x50\x59\xb7\x54\x7f\x97\x60\x1e\xa1\x74\x09\xdd\x52\x0a\x07\xd5\x17\x32\xbd\x46\x4f\xd5\x1b\x14\xfa\x84\xbe\x85\x62\xbc\x7a\x37\x47\xa3\xa3\x48\x69\xf1\xe5\xeb\x63\x09\xe6\x9e\x69\xd9\xff\xc0\x6e\x6c\xd0\xf3\x8d\xfd\x3b\x37\xf6\xce\x59\x7c\x3e\xb3\xff\xce\x99\x1d\xcc\xdb\xba\xb4\xeb\x46\xef\x23\xfc\x57\x00\x00\x00\xff\xff\xbe\x1c\xde\xd5\x6d\x09\x00\x00"), - }, - "/charts/security/citadel/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 613, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x91\x31\x8b\xe3\x30\x10\x85\x7b\xfd\x8a\xc1\xf5\xda\xc7\x76\x87\xda\x2b\xae\xbb\x62\x8b\x6d\x8e\x14\x63\xf9\x6d\x32\x44\x96\x84\x46\x72\xe0\x4c\xfe\xfb\xa1\xc4\x45\x48\x02\xd9\xca\xe6\x89\xef\x7d\x0c\x6f\x5d\x49\xbe\x68\xf8\x64\x5f\xa1\x83\xf3\x55\x0b\xf2\x07\x34\xd6\xec\xa0\x74\x3e\x1b\x4e\xf2\x89\xac\x12\x83\xa5\x3c\xb2\x1b\xb8\x96\x43\xcc\xf2\x8f\x8b\xc4\x30\x1c\x7f\xea\x20\xf1\xc7\xf2\x3e\xa2\xf0\xbb\x39\x4a\x98\x2c\xfd\xda\x7a\xa2\x87\x99\x51\x78\xe2\xc2\xd6\x10\x05\x9e\x61\x49\xb4\x48\xec\x9d\x14\x9e\xe0\xfb\x75\xa5\xe1\x03\x1e\xac\x18\xfe\xf0\x0c\x4d\xec\xd0\xc4\x44\x9e\x47\x78\x6d\x20\x11\xa7\x64\x69\x63\x2e\x41\xbe\x32\x96\xee\x0b\x1a\x9b\xab\x87\x5a\xd3\x13\x27\xf9\x9d\x63\x4d\x6a\xe9\x6f\xd7\xed\x4c\xe3\xb6\xe3\x5a\xe2\x62\xf8\x92\xfd\xcc\x49\x2f\x6f\x0b\xf2\x78\xcd\x33\xb8\xa0\x7b\xa3\x6e\x8f\xd2\x3e\x35\x4d\x2d\xd8\xbd\xae\x54\xb8\x8c\xf2\xaa\xef\xc4\xc5\x1d\xda\x8f\x17\xbd\x15\xbc\x51\x37\xc1\xe3\xbb\xaa\xbc\x88\x03\x3b\x17\x6b\x28\xda\xe0\x2d\xba\xd3\x3f\x95\x3e\x08\xda\xb0\x08\x45\xdc\xed\xb2\x8f\xd6\x12\x8f\x08\x19\x8b\xe0\xf4\xfc\xca\x9d\x31\x7d\xdf\x9b\x75\x25\x84\xa9\xad\xf1\x3f\x00\x00\xff\xff\xe2\x7a\xa2\xa5\x65\x02\x00\x00"), - }, - "/charts/security/citadel/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 448, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x8f\xb1\x4e\xc3\x30\x10\x86\x77\x3f\xc5\xbd\x80\x8d\xba\xa1\x6c\xc0\xc0\xc6\x10\xa4\xee\x17\xe7\x2f\x1c\x75\xec\xc8\x67\x77\xc0\xca\xbb\xa3\xa4\x15\x43\x8b\x90\xba\x7f\xf7\xfd\xdf\xb5\x46\x72\x20\xb7\xe7\x50\xa1\xce\x87\xaa\x05\xb9\x87\xa6\x9a\x3d\x94\x96\xc5\xf0\x2c\x7b\x64\x95\x14\x3b\xca\x03\x7b\xc7\xb5\x7c\xa6\x2c\xdf\x5c\x24\x45\x77\x7c\x54\x27\xe9\xe1\xb4\x1b\x50\x78\x67\x8e\x12\xc7\x8e\x5e\x2e\x9e\x14\xf0\x2c\x71\x94\xf8\x61\x26\x14\x1e\xb9\x70\x67\x88\x22\x4f\xe8\x48\xb4\x48\xb2\x5e\x0a\x8f\x08\xb6\x35\x72\x3d\x02\x58\xe1\xde\x78\x82\xce\xec\xb1\xee\x13\x05\x1e\x10\x74\x3d\x24\xca\x67\xa4\xa3\x6b\x7e\x45\x73\x0a\xe8\x71\x58\x49\x9e\xe5\x35\xa7\x3a\xff\xd3\x6c\x88\x6e\x6a\xef\x8d\xd3\x3a\x7c\xc1\x97\x2d\xce\x5e\x74\xef\xc8\x27\xf1\x78\xf2\x3e\xd5\x58\xb6\xea\xbf\x9c\x7a\xc6\x2c\x5f\x71\x9b\xfb\xf6\xbf\xdf\x49\x6b\xad\x69\xcd\x12\xe2\xb8\x2c\xe6\x27\x00\x00\xff\xff\xd5\x94\xa9\xce\xc0\x01\x00\x00"), - }, - "/charts/security/citadel/templates/deployment.yaml": &vfsgen۰CompressedFileInfo{ - name: "deployment.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 3046, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x56\x4d\x6f\x1b\x47\x0c\xbd\xeb\x57\x10\xaa\x0f\x2d\x90\x95\xec\xa2\x09\x8a\x05\x74\x10\xec\xa2\x68\x91\xba\x46\x9c\x04\xe8\x29\xa0\x67\xa8\xf5\x44\xdc\x99\xc5\x0c\x57\xae\xba\xd9\xff\x5e\xec\x87\xa4\xfd\x92\xea\xea\x24\x90\x7c\x8f\xe4\x1b\x2e\x67\xbe\x03\x13\xc4\x38\xb8\x5d\xc3\x0b\x8a\x7a\x36\x36\x01\x64\x06\x8b\x29\x85\x0c\x15\x85\x19\x66\xe6\x33\xf9\x60\x9c\x8d\x01\xb3\x2c\x2c\x77\x37\xb3\xad\xb1\x3a\x86\x3b\xca\xd8\xed\x53\xb2\x32\x4b\x49\x50\xa3\x60\x3c\x83\x1a\x1b\x37\xbc\x91\x32\x82\x9a\xb8\xb5\xd6\x8c\x31\x14\x05\x2c\x3e\x10\x13\x06\x5a\xdc\x1f\xcc\x50\x96\x33\x00\xc6\x27\xe2\x50\xb1\x40\x95\x2c\x86\x13\x01\x34\x94\x7d\x93\x6f\x68\xc6\x9c\x15\xdd\x2c\x64\xa4\x2a\xae\x40\x4c\x4a\x9c\x6f\x78\xd3\xaa\xd1\xf7\x9d\x44\x13\xcc\x9e\x32\x36\x0a\x43\x43\xfc\x19\x39\xa7\xb0\x08\xa4\x72\x6f\x64\xbf\x68\xbd\xb7\x2e\xb7\xd2\xd4\x1d\xc4\xa3\x50\xb2\x6f\x08\xbd\x63\x36\x36\xf9\x94\x69\x14\x3a\xe4\x48\xf1\xef\xc7\xdc\x27\x14\xc3\xcd\xc9\xf2\xc9\xe2\x0e\x0d\xe3\x13\x53\x0c\xd7\x33\x00\xa1\x34\xe3\x23\xaa\x2b\x6b\xf5\xe3\x5e\xd5\x13\x12\x9d\x91\x09\x00\xad\x75\x82\x62\x9c\xed\xc0\x83\xd1\xa4\xd0\x2f\x6a\xc4\xc2\xb8\xa5\xb1\x5f\x49\x49\x0c\xf3\x0d\x72\xa0\x79\x1d\x78\x10\xb1\xfe\x4f\x7e\x67\x14\xad\x95\xaa\x5a\xbf\x1f\x1f\x74\xd4\x46\x44\xd8\x84\xcc\x8a\x22\x02\xb3\x39\x4a\x98\xb0\x7b\x42\x5e\x64\xde\xb8\x4a\xc9\x5b\xc6\x10\x0e\xc7\xd5\xa4\x18\xb9\x62\x98\x77\xce\xe0\x02\xc1\xbc\x4e\x46\x56\x9f\xc8\x94\xb3\x82\xc6\x92\xef\x34\x1d\xb5\x03\x3a\x94\x0d\xc0\xa4\x98\x4c\xa7\x7b\xce\x9f\xa0\x2c\x97\x53\xb3\x50\x83\xa0\x2c\xe3\x31\x4a\x30\xa9\xcb\x1a\x64\x78\xc8\x99\x1f\x1c\x1b\xb5\xef\x4d\x57\x0b\x1a\x84\xc0\x37\xd0\xb4\xc1\x9c\x05\xe6\x6b\x7e\xc1\x7d\x98\x9f\xda\xab\x0f\xd6\x27\x9d\xe6\xaa\xdf\xb4\xe4\x41\x87\x05\xd9\x6a\xd0\x74\x9f\xa0\x52\x24\x8a\x82\x0e\x51\xeb\x5e\x89\xcf\x69\xc4\xd8\xd3\xf5\x84\xc3\x2c\x23\xab\x23\x6d\x43\x54\x7f\xe1\x63\x70\x15\x95\xf8\x4c\x45\x99\xf3\xb2\xfa\xf9\xfa\xdd\xf5\xc8\x7d\x1c\x1e\x71\x1e\x13\x8a\x8e\xbb\x62\x75\x61\x55\x9c\x69\x77\x9b\x07\x71\xa9\xf9\x87\xa6\xaa\x55\xb5\xb3\x53\xed\xd5\xf7\xb7\xbf\x7d\x5c\xdf\xfd\xf2\xfe\xcb\xdd\xfd\xe3\x0f\x03\x56\xe2\xf0\x3a\x96\xa2\x00\x8f\x36\x21\xb8\xda\xbe\xb9\xda\x41\xbc\x1a\x8f\x89\xb6\xe1\x96\xbc\x04\x28\xcb\xa2\x80\xab\x6d\x3b\x31\x57\x3b\x28\xcb\x37\x45\x31\x96\x77\x52\xf3\x41\xaf\x47\xf6\x40\xbc\x79\x34\x89\x3d\x73\xb6\xc4\x9b\x28\xd4\xee\x48\xe1\xf0\x84\x2e\x75\x3a\x40\xd6\x5b\x61\x1c\x64\x12\x6b\x6c\x12\x29\xf2\xb2\x5a\x92\xa8\xa5\xc2\xea\x7f\x58\x2a\xac\x8d\x8b\x8c\xd2\xb3\xa8\x2d\xed\x47\xa0\x2d\xed\x27\x31\xde\x39\x99\x48\x73\x34\x4f\x82\x2a\x47\xa4\x9e\xd1\xd8\x41\x9e\xa3\x7d\x00\xfb\x5f\xca\x8b\xcf\x83\xdc\xb9\x14\x8d\x9d\x12\xb0\x76\x47\xba\xf6\xaf\xa6\xd6\xc7\x59\xfc\x6b\xaa\x78\x71\x7e\xcb\x0e\x75\x35\x59\x1f\x85\xa7\x0a\x38\x84\x34\x32\x88\x70\xb7\x8a\x8b\xf8\xd7\x14\xd0\xee\x16\x76\xc9\x3a\xfc\x1e\xdc\xa4\x04\xec\x92\x2f\x18\xbe\x7c\x0d\xce\xfe\x17\x3b\x9b\x1d\x59\x0a\xe1\xc1\xbb\x27\xea\x2f\xb5\x67\x91\xec\x57\x92\xbe\x11\x20\x43\x79\x8e\x61\xb9\x6b\x1e\x28\x43\xa7\xf3\x12\xc3\xcd\xdb\xeb\x9b\x9f\x7a\x1e\x63\x8d\x18\xe4\x3b\x62\xdc\x3f\x92\x72\x56\x87\x18\xde\xf6\x42\x32\xf2\xc6\xe9\x49\xa7\xa7\xe0\x72\xaf\x28\xc4\xc3\xcb\xad\xf3\x3e\x68\x43\xaa\xf6\x8a\x02\xc4\xfd\x85\x29\x5f\x8a\xfb\x06\xc6\x6a\xb2\x02\x37\x3f\x36\x98\xd3\x37\x39\xc6\xb7\xaa\xb7\xf7\xc2\x87\x8b\x24\x8d\xc4\x6d\xa1\xd6\xc9\xeb\x77\xc7\xce\x71\x9e\xd2\x1f\xd5\x2d\xde\xbb\x60\x8e\xf7\x67\xf3\x1d\xf5\x64\x4b\xab\xe8\x87\xe6\x4c\x3a\xdf\x5a\x2f\xc6\x13\xea\x3f\x2d\xef\x63\xe8\x2c\xa2\x26\xd9\x31\xcf\xb9\x1c\x81\x94\xef\x0d\x41\x63\xb8\x9f\x2e\xc8\x65\xd5\x7b\x07\xb9\xcd\x34\x1a\x39\xdc\x6c\xaa\x51\xd8\x1f\xf8\x6a\x95\xac\xe2\x5c\x13\xcc\xad\xd3\x74\x08\x98\xc3\xe2\x24\xee\xbb\x13\x41\x0f\x90\x39\xbd\xb6\x62\xd6\x67\x31\x67\x57\x88\x63\xf2\xcd\xd3\xec\x44\xdd\x31\xc6\x97\x46\xa8\x0b\x1e\xa7\x6b\xdb\xfd\x37\x00\x00\xff\xff\x12\xf6\x62\xe5\xe6\x0b\x00\x00"), - }, - "/charts/security/citadel/templates/poddisruptionbudget.yaml": &vfsgen۰CompressedFileInfo{ - name: "poddisruptionbudget.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 366, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\xd0\xc1\x4a\xc4\x30\x10\xc6\xf1\x7b\x9e\x62\x5e\x60\x23\xbd\xe6\xa6\x78\x14\x11\x0f\x7b\x9f\x26\xdf\xae\x83\xd3\x24\x34\xd3\x05\x29\xfb\xee\x12\xab\xa8\x6c\xaf\x1f\xe4\xf7\x27\xb3\xae\x07\x92\x13\xf9\x23\xeb\x82\xe6\xcf\x5a\x46\x56\x9f\x70\xe2\x45\xed\xa5\xa4\x47\x69\xf3\x52\x4d\x4a\x7e\x58\xd2\x19\xe6\x91\x79\x54\x24\xba\x5e\x1d\x57\x39\x62\x6e\x52\x72\xa0\x5a\x54\xe2\xc7\xdd\x65\x18\x61\x3c\xb8\x77\xc9\x29\xd0\xce\x7b\x37\xc1\x38\xb1\x71\x70\x44\x99\x27\x04\x92\x66\x52\x0e\x51\x8c\x13\xf4\x7b\x6d\x95\x23\x02\xad\x2b\xf9\x57\x28\xb8\xc1\x3f\xff\xcc\x3d\x4d\xa4\x3c\x42\x5b\x57\x88\xb8\xd6\x40\xbf\x00\x6d\xe4\xff\x69\xde\x98\x5b\xb3\x73\xad\x22\x76\x6a\x92\x7c\x7f\x61\xd1\xfe\xc5\x40\x83\x23\x6a\x50\x44\x2b\xf3\x16\x9a\xd8\xe2\xdb\xd3\x9f\xf2\x4e\xfb\xa6\xde\x4f\x8c\xfc\x75\xb1\xcf\x00\x00\x00\xff\xff\x1e\x0e\x58\x2e\x6e\x01\x00\x00"), - }, - "/charts/security/citadel/templates/service.yaml": &vfsgen۰CompressedFileInfo{ - name: "service.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 436, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\xcf\xcd\x4a\x2c\x31\x10\xc5\xf1\x7d\x9e\xe2\xc0\xdd\xde\x1e\xa6\x41\x45\xb2\x75\xad\x0c\x2a\xee\xcb\x74\xd9\x5d\x98\x4e\x42\xaa\x66\x36\xc3\xbc\xbb\xf4\x87\x68\xab\xcb\xfc\x39\xfc\xa8\x50\x91\x17\xae\x2a\x39\x79\x9c\x5a\xf7\x2e\xa9\xf3\x78\xe2\x7a\x92\xc0\x6e\x64\xa3\x8e\x8c\xbc\x03\xfe\xe1\xfe\xa8\x86\x91\x2c\x0c\xb0\x81\x11\xb8\x9a\xbc\x49\x20\xe3\xff\xb0\x41\x14\xa2\x38\x2a\x77\x90\x34\x0f\x52\xee\x18\xd4\x73\xb2\xa9\x28\x8d\x8c\x44\x23\x6b\xa1\xc0\x3b\x87\xf9\xe1\x21\x6a\x92\x9b\x20\x46\x1d\xc7\xb5\xce\x13\x8f\xf3\x19\xbb\x47\x8e\x4c\xca\xbb\x87\xcf\x8c\xcb\xc5\x01\x91\x5e\x39\xea\x74\x17\x40\xa5\x78\x7c\x01\x58\xc8\x6d\xaa\x0b\xf3\xdb\x9c\x38\xa7\x85\xc3\x64\x95\x5c\x6d\x45\x9b\xf5\xbc\xbe\x96\xd0\x7c\x97\x96\x95\xc7\xed\xfe\x66\xbf\x06\xa3\xda\xb3\x1d\x7e\xe6\x52\xb3\xe5\x90\xa3\xc7\xf3\xdd\x61\x83\x0e\x66\xa5\x19\x73\x12\xcb\x55\x52\xbf\x71\xdb\xeb\x7d\x7b\xe5\x00\xe5\xc8\xc1\x72\xfd\xe3\x8f\x1f\x01\x00\x00\xff\xff\xe4\xba\x30\xb1\xb4\x01\x00\x00"), - }, - "/charts/security/citadel/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 312, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x8f\x31\x6e\x03\x21\x10\x45\x7b\x4e\x31\x17\x00\x29\x2d\x5d\x2e\x10\x45\xb1\xe4\x7e\x0c\x3f\xab\x51\x66\xc1\x62\x58\x37\xc8\x77\x8f\xf0\x6e\x1a\xa7\x71\x87\xbe\xde\x7b\x62\xf8\x2a\x67\x34\x93\x5a\x22\xdd\xde\xdc\x8f\x94\x1c\xe9\x84\x76\x93\x84\xf7\x94\xea\x56\xba\x1b\xc3\x93\x7c\x53\x38\xb3\x6e\xb0\xb0\x68\xbd\xb0\x06\x59\x79\xc1\xe7\xa6\x7a\x42\x6a\xe8\x46\xf7\xbb\x7b\xde\xe2\xc3\x6d\x5c\x16\xbc\xa2\x13\x79\x2a\xbc\x22\xd2\x18\x14\xe6\x32\x75\x94\xfc\xf4\x5c\xd1\x39\x73\xe7\xe8\xe8\xe0\xc5\xba\x54\x9f\xa4\x73\x86\x7a\xdb\xff\xef\xf9\x38\x60\xa7\xec\xca\xe9\x48\x7f\x41\xc1\x86\xf0\xf1\x37\xcf\xaa\x23\x52\xbe\x40\x6d\x66\x89\xda\xce\xfc\x17\x1e\xec\x6f\x00\x00\x00\xff\xff\x7b\x10\x02\xfe\x38\x01\x00\x00"), - }, - "/charts/security/citadel/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 783334906, time.UTC), - uncompressedSize: 2473, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xa4\x56\xc1\x6e\xe3\x46\x0f\xbe\xeb\x29\x08\xe7\xb0\xff\x5f\xc4\xee\x3a\x28\x0a\x54\x40\x0f\x41\xb2\x29\x82\x2e\x8a\xa2\x4e\x4f\x45\x0f\xe3\x19\x4a\x62\x33\x22\xd5\x19\x2a\x5e\xa1\x28\x90\x07\xe9\xbe\x5c\x9e\xa4\x98\x91\x1c\xc4\x49\xec\x7a\x77\x6f\x9e\x99\x8f\xdf\x47\x7e\xa4\x69\x9f\x14\x27\x10\xd1\xf6\x81\x74\x80\xff\x59\x52\xe3\xd0\xff\x1f\xac\x70\x45\x75\x1f\x8c\x92\x70\x71\x52\x6c\x21\x65\x01\x80\x6c\xd6\x1e\x5d\x09\x1a\x7a\x2c\x00\x02\x76\x9e\xac\xb9\x90\x9e\xb5\x84\x65\x01\x40\xad\xa9\xb1\x84\x89\xad\x00\x88\xe8\xab\x15\xd5\xbc\x8d\x82\x13\x20\x76\x64\x8d\x22\x50\x95\x9f\xe7\x31\xbf\xc3\xc5\x39\x50\x84\x3e\xa2\x5b\x14\x90\xc0\x51\x2f\xa5\x35\xc4\x25\x58\xdf\x47\xc5\xb0\xf0\x62\x8d\x7f\x4a\xa1\x0d\x82\xcb\xa0\x1c\x08\xc4\xb0\xfa\xf9\xfa\xea\xea\x1d\x90\x43\xd6\x54\xda\xaf\xbf\xbc\x2f\x0a\x80\x13\xf8\xee\xed\x57\x67\xdf\x34\xd2\x07\xf8\x1e\xce\x96\xdf\xbe\x6d\x0a\x80\x8d\x84\x5b\x2f\xc6\x5d\x60\xd0\x1b\xf5\xe5\xf4\x90\xf1\x3f\x18\xef\x71\x38\x85\x8e\xbc\x68\x62\x46\x63\x1b\x78\xd3\x05\xa9\xc8\xe3\x1b\x68\xfb\xa8\xd0\x98\x3b\x04\x03\x97\x3f\xad\xc0\x62\xd0\x94\xb9\xe3\x98\xe8\x62\x72\x0c\x80\xa2\x92\xcc\x33\xc7\x3c\x62\xb8\x23\x8b\x73\x63\x6d\xb2\x6c\x31\xbe\x59\x61\x0d\xe2\xcb\xe3\xa1\x47\x12\xe7\xb7\xe5\xf2\x18\xe2\x38\x44\xc5\xb6\x78\x42\x1c\xc9\xa1\x35\x61\x4e\xfc\x07\x5a\x95\xb0\x27\x30\x60\x2b\x8a\xe5\x9e\xa0\x1d\xd0\x22\xde\xd9\x4f\x17\x78\x56\xc4\x1e\x85\x09\xf5\x79\x12\xcf\x1a\xb0\x47\x62\x42\x7d\x9e\x44\x6b\xd2\xfc\xfe\x87\xc2\x08\xfa\xa2\x1a\x8e\x13\xda\x05\x67\xc1\x27\x8a\x75\x9e\xfb\xe3\xda\x31\x62\x0f\x36\xe1\x20\xdd\x33\xeb\x77\xe8\x9e\x1a\x7e\x2c\xdf\x6e\xf9\x3b\x74\xaf\xba\x7b\x4c\x72\x87\x48\xbf\xc0\xc9\x71\xd1\xee\x63\xad\xa8\xde\xb2\xb1\x38\x5c\xa1\xcf\x0d\x2c\xe1\xaf\xbf\xd3\x72\x14\x8f\xe3\x86\x8e\x25\xfc\xf6\xfb\xb8\xaf\x56\x1d\x5a\xaa\x86\xbc\x13\x3b\x71\x60\x58\x69\x6e\xaa\x8a\x38\xad\x41\x6d\x8c\x82\xf1\x5e\x36\x11\x06\xe9\x41\x25\xad\xfa\xa8\x21\xed\xce\x4d\x43\xb6\xc9\x42\x31\x53\x0d\x69\x4b\x26\x0e\x8a\x80\x9e\x6a\x5a\x7b\x4c\x11\x6b\x84\x68\x1b\x74\xbd\x47\x07\x6b\x93\x36\xae\x30\x78\xb3\x46\x1f\xd3\xa7\x4e\x5c\x9c\x94\x02\x66\x26\xe3\x03\x1a\x37\x40\xe8\x99\x89\xeb\x04\x4a\xf9\x25\x29\x08\x46\x1b\x0c\x09\xcf\xaf\x91\xe5\x74\x16\x99\xe5\xa6\xc1\x80\x89\x13\x6c\x1f\x02\xb2\xfa\x01\x74\x23\xa0\x43\x87\x11\xa4\xda\xad\xb5\xcc\x31\x00\x30\x0b\xf8\x67\x4f\x01\xdd\x65\x1f\x88\xeb\xd5\x98\x3a\x71\x7d\x5d\xb3\x3c\x5e\xbf\xfb\x80\xb6\x4f\x5e\xce\x1e\xe3\xba\x80\x15\x86\x4f\x0c\x1c\x4d\x74\xc8\xa2\x08\x0f\xf7\xff\x34\x26\xb8\x87\xfb\x8f\x70\x17\x17\xe9\x18\xa5\xd2\x74\x9c\x72\x6a\x91\x35\x9e\xe6\x56\x58\xc3\xe0\xb0\x22\xc6\xd1\xf8\x3b\xe3\xfb\xa9\x11\xc4\x30\xeb\xc4\x9d\xb3\xd2\xf9\x54\xdd\xfb\x64\xd0\x76\x1e\x66\x60\xd8\xbd\x80\xdc\x60\x68\x77\x61\x99\xcc\x4a\x08\x18\x3b\x61\x47\x5c\xfb\x61\xb4\xf6\x4a\x02\xe0\x07\xd3\x76\x1e\x47\xdf\x0e\xc9\x8d\x88\x39\xdc\xe2\x50\x3e\xfe\x79\x98\x5c\x93\x2e\x8d\x64\x1a\xd1\x6b\x9e\xae\xc6\x42\x4a\x58\x2d\x4f\x57\x67\xd3\x9d\x4a\x27\x5e\xea\xe1\xc7\x44\x31\xbb\xed\xd7\x18\x18\x15\xe3\x82\xe4\xeb\x46\xa2\xb2\x69\x71\x36\x35\x9d\xe2\x2b\x83\x1c\x7a\x8f\x10\xcd\x30\x0d\xda\x76\xda\x27\x5b\x23\xb0\xe8\xf3\x51\xcd\x74\xc2\x2a\x60\xc6\xc9\xa3\x6a\x0c\x1e\x0f\xf1\xc5\x94\x9a\x4c\xb9\x21\x6d\xc6\x79\x4c\x3f\xf3\xe9\xfe\x16\xc7\x6a\x53\x3b\xa7\xea\x53\x4b\x53\x0f\x72\xad\xe9\x61\xb5\x7c\xb8\xff\x98\xbc\x3d\x68\x64\xfa\xd6\xbe\x80\xbc\xe8\x5b\x86\xfd\x1b\x00\x00\xff\xff\xe5\x8e\x34\x9f\xa9\x09\x00\x00"), - }, - "/charts/security/nodeagent": &vfsgen۰DirInfo{ - name: "nodeagent", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 783334906, time.UTC), - }, - "/charts/security/nodeagent/Chart.yaml": &vfsgen۰CompressedFileInfo{ - name: "Chart.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 783334906, time.UTC), - uncompressedSize: 281, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8e\xc1\x4e\x03\x31\x0c\x44\xef\xf9\x0a\xab\xf7\x26\x64\x2f\xa8\x91\xe0\xcc\x17\xf4\x1e\x12\x37\x6b\x91\x8d\x23\xc7\x5d\xe8\xdf\xa3\xdd\x02\x15\x17\xcb\x7a\x33\x63\x4f\xec\x74\x46\x19\xc4\x2d\xc0\xea\x4d\x8b\x0b\x06\x68\x9c\x31\x16\x6c\x6a\xd6\x5f\xcd\x5b\x6f\x9f\x4c\xec\xfd\xfc\x9f\x28\xd5\x8a\xf2\x07\x0f\xaf\x2f\x93\x7d\xb6\xd3\xc1\x64\x1c\x49\xa8\xeb\x8e\xdf\xb0\x2e\x90\xe6\x28\x0a\x17\x96\xc7\x7d\xc8\xd8\x2b\xdf\x96\xed\xd5\x07\xde\x3e\x59\xf2\x08\x06\xe0\x08\x34\x94\x78\xdf\x1e\x65\x06\x5f\x25\xe1\x8f\x61\x56\xed\xc1\xb9\x42\x3a\x5f\xdf\x6d\xe2\xc5\xed\x91\xfb\x34\xd8\x0a\x35\x0c\x50\x58\x7b\x35\x94\xb6\x12\x5b\x62\x04\x77\x77\x58\x62\x77\x89\xeb\xa6\x0c\x17\x5b\x16\xa6\x7c\xf4\xa7\xe9\xcb\x9f\x26\xdb\x5b\x31\xdf\x01\x00\x00\xff\xff\xad\xad\x10\x66\x19\x01\x00\x00"), - }, - "/charts/security/nodeagent/templates": &vfsgen۰DirInfo{ - name: "templates", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - }, - "/charts/security/nodeagent/templates/_affinity.tpl": &vfsgen۰CompressedFileInfo{ - name: "_affinity.tpl", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 783334906, time.UTC), - uncompressedSize: 3039, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xbc\x55\x4d\x8f\x9b\x30\x10\xbd\xe7\x57\x8c\xa2\x1c\xda\x55\x80\xf4\x8a\xd4\x43\xa4\xee\x61\xd5\xaa\xaa\xba\x55\xef\x0e\x0c\xc4\x8a\x63\x53\x63\xd2\x44\x34\xff\xbd\xb2\x21\xc4\x10\xf3\x91\xdd\xd5\xde\xd0\xf0\x3c\x6f\xfc\xe6\xcd\xb8\x2c\x83\x07\x20\x49\x42\x39\x55\x27\xf0\x60\xab\x54\x96\x87\x41\xb0\x2b\x36\x28\x39\x2a\xcc\x7d\x2a\x82\x58\x44\x79\x10\x09\x1e\x61\xa6\xcc\x47\x42\xd3\x42\x12\x45\x05\x0f\x48\x9e\xd3\x94\x7b\x99\x88\x3d\x2e\x62\x0c\xe0\x21\x38\x9f\x67\xb3\xb2\xf4\x20\xc6\x84\x72\x84\xb9\x8e\x5f\x38\xe6\x70\x3e\xcf\x00\x74\x68\x5d\x87\xc2\x19\x00\x80\xc4\x3f\x05\x95\x18\x7f\x29\x24\xe5\xe9\x73\xb4\xc5\xb8\x60\x94\xa7\x4f\x29\x17\x4d\xf8\xf1\x88\x51\xa1\x69\xab\x33\x9a\x84\xf2\x88\x15\x71\xcd\x72\x49\xf9\xb3\x27\xd9\x1c\xfc\x8a\x1f\x20\x93\x98\xa0\x7c\x2b\xc2\x1f\x7d\xd9\x6a\x46\x7d\x10\x79\x0c\x2e\x69\xc6\x8b\xae\x4b\xae\x64\x7b\x46\x86\x91\x12\xf2\x17\xca\x7d\x1e\xd6\x3f\x3c\xd8\x13\x15\x6d\x1f\x8f\x99\xc4\x3c\xa7\x82\x37\x7f\xf4\xbf\x1d\x9e\x42\xd8\xa0\x22\x7e\xbb\xaf\x44\x46\xdb\x06\x06\x20\x32\x94\x44\x09\x19\xc2\x13\xb7\xc2\x07\xc2\x0a\xb4\xf2\xe9\xfa\x25\xe1\x29\xc2\x62\x87\xa7\x25\x2c\x0e\x84\x41\xf8\x19\xfc\xdf\x06\xe8\xa7\x4c\x6c\x08\xf3\x75\xf2\x6b\xe5\x8d\x7a\x09\xa4\x0a\x3e\x98\x33\xff\x80\x72\xf5\x11\x56\x6d\x94\x07\x65\x69\x32\xdf\x1e\xae\x15\x1c\x09\x2d\x6c\x95\x74\x61\x31\x26\xa4\x60\xaa\x5b\x60\x1d\xfe\x6e\xa3\x2f\x10\x63\xd9\x14\xb9\xf2\x5b\xc9\xbc\x0e\x95\x4b\x86\x36\xbd\x75\xa0\xee\x83\xf3\x76\x13\xa5\xbf\xa8\xa3\xa9\xdc\x42\x4c\x31\xda\x80\x59\x4d\xd2\x17\x34\x78\xac\xb5\x1e\xfc\x45\x9a\x6e\x55\xd8\x94\x6f\x10\xd7\x4b\x54\xe3\x88\x3c\xc2\xeb\x6d\xdf\xcf\xd2\x0e\xd7\xb5\xcc\x35\x41\xe0\x4c\xc4\x6b\xae\xe8\xda\xde\x73\xb5\x2a\x4e\x5f\x75\xf0\xdf\xc8\x06\xd9\x80\x0d\x3b\x70\x3d\xfc\xad\x23\xa6\xcc\x0e\x28\xb4\x5b\x73\x67\x05\xb5\x0a\xaf\xde\xca\x1d\x92\x09\x8b\xb9\x33\xd5\x53\xcb\xbf\x51\xe4\xed\x16\x7d\x87\x69\x6c\xd7\xf7\x4f\xe4\x44\xef\x8c\x3e\x04\xd6\x80\x52\x1e\xe3\x71\x09\x0b\xaa\x70\x6f\xcf\xe8\x7d\x6d\xf6\x80\xd9\xe1\x3b\x46\x50\x4f\x8d\xe6\xf6\x07\x56\x5a\x83\xb9\x84\x9c\xcf\x42\x05\xa9\x26\xb3\x0d\xb8\x9d\x56\xb3\xe6\x0f\x84\xe5\xfa\xca\x79\xc6\xa8\x82\xf9\x72\x3e\x90\xc2\x56\x4c\x2f\x34\xb3\xa8\x4d\x02\xc7\xdb\x73\x18\x7d\x79\x1c\x41\x25\x32\xc1\x44\x7a\xfa\xda\x52\xc5\x8a\x0e\x5b\x63\xc8\x0f\x63\xfb\xfa\x75\x86\xe8\x1d\x1c\xcf\xec\x13\x0b\x75\xed\x40\x8f\x5b\x86\xfc\x32\xc1\x31\x77\x78\x66\x82\x6b\x5c\xbe\x79\x81\x73\x26\x7b\xa7\xc7\x3d\x3d\xfe\x71\x86\x27\x7b\x08\x9a\xe7\xf4\xd3\x6a\x35\xe0\xaa\xff\x01\x00\x00\xff\xff\xc9\x4d\x16\x13\xdf\x0b\x00\x00"), - }, - "/charts/security/nodeagent/templates/clusterrole.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrole.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 783334906, time.UTC), - uncompressedSize: 256, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\xcc\x31\x4f\xc3\x30\x10\xc5\xf1\xdd\x9f\xe2\x94\x3d\x46\x6c\xc8\x2b\x03\x1b\x43\x07\x16\xd4\xe1\x92\x3c\xc2\xa9\x8e\xcf\xba\xb3\x3b\x50\xf5\xbb\xa3\x84\x8d\xae\xef\xe9\xf7\xe7\x2a\x1f\x30\x17\x2d\x89\x6c\xe2\x39\x72\x6f\xdf\x6a\xf2\xc3\x4d\xb4\xc4\xcb\x8b\x47\xd1\xa7\xeb\x73\xb8\x48\x59\x12\xbd\xe6\xee\x0d\x76\xd2\x8c\xb0\xa1\xf1\xc2\x8d\x53\x20\x2a\xbc\x21\x91\x78\x13\x1d\x8b\x2e\xe0\x15\xa5\x8d\xb7\x1b\xc5\x13\x32\xd8\x11\xdf\x79\x83\x57\x9e\x41\xf7\x7b\x20\xca\x3c\x21\xfb\x4e\x89\xb8\xd6\x07\x7b\x1c\xf6\x67\x13\xfd\x0f\xed\x0d\xeb\x19\x9e\xc2\x48\x5c\xe5\xcd\xb4\x57\x4f\xf4\x39\x0c\xe7\xb0\x3b\xd7\x6e\x33\x8e\x65\xd6\xf2\x25\xeb\xc6\xd5\x8f\xef\x0a\x9b\x8e\x7d\x45\x1b\xce\xe1\x37\x00\x00\xff\xff\xed\x7b\x6c\x6c\x00\x01\x00\x00"), - }, - "/charts/security/nodeagent/templates/clusterrolebinding.yaml": &vfsgen۰CompressedFileInfo{ - name: "clusterrolebinding.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 783334906, time.UTC), - uncompressedSize: 426, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x8f\x31\x4f\xc3\x30\x10\x85\xf7\xfc\x8a\xfb\x03\x31\x62\x43\xde\x80\x81\x8d\x21\x48\xec\x17\xe7\x51\x8e\x3a\x3e\xcb\x67\x77\xa0\xea\x7f\x47\x49\x2b\x86\x06\x21\x75\xbe\xf7\xbe\x7b\x1f\x67\x79\x47\x31\xd1\xe4\xa9\x8c\x1c\x1c\xb7\xfa\xa9\x45\xbe\xb9\x8a\x26\xb7\x7f\x30\x27\x7a\x77\xb8\xef\xf6\x92\x26\x4f\xcf\xb1\x59\x45\x19\x34\xe2\x49\xd2\x24\x69\xd7\xcd\xa8\x3c\x71\x65\xdf\x11\x25\x9e\xe1\x49\xac\x8a\xf6\x49\x27\xf0\x0e\xa9\xf6\xc7\x23\xb9\x01\x11\x6c\x70\xaf\x3c\xc3\x32\x07\xd0\xe9\xd4\x11\x45\x1e\x11\x6d\xa9\x12\x71\xce\x9b\xee\x7a\x28\xe7\xae\xa7\x6b\xd0\xc2\x28\x1a\x31\xe0\x63\x41\x70\x96\x97\xa2\x2d\xff\x63\xd2\x11\x6d\x44\x6e\xdf\x6d\x6d\xfc\x42\xa8\xeb\xee\xfe\x02\x7c\x43\x39\x48\xc0\x63\x08\xda\x2e\xbb\xff\xa6\xda\x39\xd8\xf3\x55\x72\xa5\x6f\x1d\x7f\x9f\xfe\x04\x00\x00\xff\xff\x2f\x00\x9e\x4b\xaa\x01\x00\x00"), - }, - "/charts/security/nodeagent/templates/daemonset.yaml": &vfsgen۰CompressedFileInfo{ - name: "daemonset.yaml", - modTime: time.Date(2019, 8, 5, 17, 41, 1, 844009718, time.UTC), - uncompressedSize: 2000, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x8c\x55\x4f\x6f\xa3\x3a\x10\xbf\xe7\x53\x8c\x50\x8f\x2f\x44\xef\xf2\x0e\x96\xde\x01\xb5\x7d\x87\xa7\x6d\x15\xb5\xbb\x95\xf6\x54\x4d\xf1\x40\xdc\x1a\x1b\xd9\x03\xab\x88\xe6\xbb\xaf\x0c\x24\x40\x20\xcd\xe6\x14\x8d\x7f\x7f\x66\x3c\xbf\x38\x58\xaa\x17\x72\x5e\x59\x23\x00\xcb\xd2\x6f\xea\xbf\x57\x1f\xca\x48\x01\x77\x48\x85\x35\xcf\xc4\xab\x82\x18\x25\x32\x8a\x15\x80\xc1\x82\x04\x28\xcf\xca\xae\x8d\x95\x84\x39\x19\xee\xeb\xbe\xc4\x94\x04\x34\x0d\xc4\x4f\xa4\x09\x3d\xc5\x8f\xc7\x32\x1c\x0e\x2b\x00\x8d\x6f\xa4\x7d\xd0\x81\xe0\xb6\x24\x04\x5d\x4d\xc0\xb4\xe8\x3a\xc1\xb9\x7a\x10\xf6\x25\xa5\x41\xd4\x93\xa6\x94\xad\xeb\x0c\x0a\xe4\x74\xf7\x6d\xe4\xb8\x28\xcd\x54\x94\x1a\x99\x7a\xce\x68\xd4\xf0\xd1\x13\xfa\x17\x4d\x5f\x6c\xfc\x6a\xf3\xbd\xb0\x31\x96\x91\x95\x35\x23\x37\xaf\x24\xa5\xe8\xe2\x56\x38\x56\x76\xa3\xcc\x3b\xa5\x2c\x20\xca\x50\x7b\x8a\x5a\xe0\x71\xf8\xf6\x3b\xb9\x5a\xa5\x94\xa4\xa9\xad\x0c\x3f\x2e\xed\x6a\xdd\x63\xd6\xd8\x81\x56\x4d\xb3\x06\x95\x41\xfc\x82\xba\x22\x1f\xe7\xda\xbe\xa1\x8e\x4b\xa7\xac\x53\xbc\xbf\xd5\xe8\xfd\xb4\xd5\xd9\x91\x80\x28\x0c\x76\x5d\x20\x6a\xcd\xc8\xc8\x41\x2c\xb5\x86\x51\x19\x72\xa3\xb1\xd7\x7d\xca\x86\x8b\xec\x7b\xec\xc1\x1e\xa2\x4d\x74\xf2\x3b\xa1\x62\x55\x60\x3e\xea\xb3\x5d\x49\x28\x4d\xfb\x9b\xe3\xfb\xb6\xb4\xbf\x4e\xee\x87\xdb\x55\x6f\x70\x38\x6c\xbe\x54\x15\x73\x1a\x63\xbe\x7c\x0b\x27\xb7\x6d\xa5\xf5\xd6\x6a\x95\xee\xbb\xb0\x4c\xf9\x67\x10\xf8\x04\x49\x19\x56\x9a\x21\x4a\xf4\x2f\xdc\xfb\x68\x2a\x89\x2e\x1f\x5d\x2b\xc0\xf2\xaa\xb5\xcd\x13\xff\xbf\xb7\x66\x4a\x0e\x7b\x58\xaf\xb5\xcd\x5f\xd1\xbf\xbe\x7b\x6b\xce\x84\x66\x03\xd4\x56\x57\x05\x3d\x84\x50\x4d\x5c\x83\x50\x11\xaa\x5b\xe4\x9d\x80\x4d\x8d\x6e\xe3\x2a\xb3\xf1\xd2\x4f\x50\xc7\xc7\xc5\x4b\x5f\x49\x5f\x22\xef\x46\xc7\x64\xea\x2f\x26\x19\x6e\x9f\x4c\x3d\xed\x2a\x20\x1d\x9a\x9c\xe0\xe6\x83\xf6\x7f\xc1\x4d\x8d\x1a\xc4\xbf\x7f\x42\x1d\x92\xd8\x34\x2d\xfb\xfc\x18\xa0\x0e\x22\x5d\x44\x5a\xe1\xb0\xdd\x2b\xd7\xb4\x58\x1c\xac\xa2\xef\xae\xf2\xfc\x7a\x67\x0b\x54\x26\xba\x6c\x77\x1e\xad\xc0\xea\x48\x67\x4d\x0c\xd2\x8f\xc9\xc3\xfd\xf3\x36\xb9\xbd\x5f\x52\xfd\xcf\xd9\x42\x9c\x1d\x00\x64\x8a\xb4\x7c\xa2\x6c\x7e\xd2\x9f\x75\x3b\x3d\x3e\x9b\xf1\xe9\x6f\xa0\xc7\x77\x99\x58\xf8\x6d\x2f\x2e\x79\x67\x7d\x17\x92\x89\x5b\x79\x29\x36\x98\x65\xca\x28\xde\x1f\xe1\x6d\x28\x4c\xaa\x2b\x49\x10\xb5\x7b\xed\x01\x11\xc4\xf0\x09\xca\x48\x32\x0c\xff\x0c\x37\x3f\x21\x94\x56\x26\x86\x55\x72\x91\x73\x31\x73\x6c\x35\xb9\xee\xed\x1e\xb4\x47\x45\xb1\x6a\x1a\x60\xfb\x13\x0b\x7d\x85\x3d\x37\x3c\x25\xa5\x2a\x25\x32\x3d\xb3\x43\xa6\xbc\x1f\x99\xf7\x25\x09\x78\xb2\x5a\x2b\x93\xff\x68\x01\xbf\x03\x00\x00\xff\xff\x0f\xe6\x5c\x63\xd0\x07\x00\x00"), - }, - "/charts/security/nodeagent/templates/serviceaccount.yaml": &vfsgen۰CompressedFileInfo{ - name: "serviceaccount.yaml", - modTime: time.Date(2019, 8, 8, 17, 24, 5, 965219572, time.UTC), - uncompressedSize: 192, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x64\xcc\x31\x0e\xc2\x30\x0c\x85\xe1\x3d\xa7\x78\x17\x68\x25\xd6\x6c\x5c\x80\x01\x24\x76\x93\x3e\x21\x8b\xd6\x89\xea\xd0\xa5\xea\xdd\x51\x09\x4c\x5d\xed\xf7\x7f\x52\xf4\xce\xd9\x35\x5b\xc4\x72\x0a\x2f\xb5\x21\xe2\xc6\x79\xd1\xc4\x73\x4a\xf9\x6d\x35\x4c\xac\x32\x48\x95\x18\x00\x93\x89\x11\xea\x55\x73\x67\x79\xa0\x3c\x69\xb5\xf3\x16\x74\xf2\x2b\xda\xce\x8b\x24\x46\xac\x2b\xfa\x2b\x47\x8a\xb3\xbf\xfc\xcf\xd8\xb6\x00\x8c\xf2\xe0\xe8\xbb\x0b\x48\x29\x07\xf8\xfb\x98\x5b\x7b\x84\x76\xe3\x13\x00\x00\xff\xff\x5e\x73\x66\x0d\xc0\x00\x00\x00"), - }, - "/charts/security/nodeagent/values.yaml": &vfsgen۰CompressedFileInfo{ - name: "values.yaml", - modTime: time.Date(2019, 8, 5, 16, 52, 43, 783334906, time.UTC), - uncompressedSize: 1278, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x53\x4d\x6b\x1b\x49\x10\xbd\xeb\x57\x3c\x46\x87\xbd\x58\x5a\xbc\xa7\x65\x6e\xc2\xf2\x82\xd9\x85\x35\x96\xc9\x25\x84\xd0\x9a\xae\x99\x69\xd4\xaa\x9a\xf4\x87\xe4\x21\x04\xfc\x43\xe2\x3f\xe7\x5f\x12\xba\x7b\x2c\x9c\xc8\x18\x72\x9b\xaa\x79\xf5\xaa\xea\xd5\xeb\xf9\x6c\x0e\x16\x4d\xaa\x23\x0e\x68\x84\x5b\xd3\x45\xa7\x82\x11\x9e\xcd\x67\xa7\x3f\xf5\x0c\x20\x56\x5b\x4b\xba\x46\xab\xac\xa7\x19\x60\xf6\xaa\xa3\x3a\x97\x2f\x32\x6a\xb1\xfb\xdb\x67\xe0\x21\xe1\x81\x39\x58\xed\x09\xd2\x42\xc5\xd0\x13\x07\xd3\x64\x66\x0c\x4e\x0e\x46\x93\x5b\x66\xd8\xd5\xea\xf3\xed\xdd\xff\x1f\x6e\xd6\xd7\x77\x35\xaa\x6a\x2a\xbd\x5a\x81\x58\x0f\x62\x38\x9c\x60\xab\xf5\x3a\x43\x80\x57\xfc\xfe\x9d\x06\x7f\x78\x0c\x36\x76\x86\x7d\xe1\xb8\x2d\x41\x6e\x33\x43\x1e\x7d\x43\x96\x9a\x20\xae\xc6\xd7\x6f\x33\x20\x88\xa5\xb2\xbf\xaf\xf1\xf1\x53\x42\xcd\xb1\x19\xa8\x31\xed\x88\xd0\x13\x06\xd1\x50\x1c\xcc\x42\xb5\xad\x61\x13\x52\x56\x05\x28\x6b\xe5\xe8\x31\x4a\x44\x90\x24\xa4\x0f\x4e\x19\xc6\xb1\x37\x4d\x9f\x1b\xf9\x4c\x35\x4a\x74\x99\xc3\x78\x90\x35\x9d\xd9\x5a\x4a\x15\x5b\x82\x6f\x7a\xd2\xd1\x92\xc6\x56\x79\xd2\x10\x86\x55\x5b\xb2\x3e\x7d\x0d\xa2\xfd\xd4\xc9\x51\x66\x52\xd6\x91\xd2\x23\x5c\x64\x36\xdc\x25\x50\x9a\x2f\xb5\x82\x53\xa1\x27\x97\xf0\xfc\x16\x59\x1e\x67\x99\x59\xee\x7b\x72\x94\x38\xd1\x44\xe7\x88\x83\x1d\x11\x8e\x82\x30\x0e\x93\xb2\xaf\x77\xad\x73\x0d\x80\xca\xd1\x97\x68\x1c\xe9\x75\x74\x86\xbb\x4d\x19\xdd\x70\x77\xd3\xb1\x9c\xd2\xd7\x0f\xd4\xc4\xa4\x65\x75\xaa\x1b\x1c\xb5\xe4\x7e\xb3\xb0\x88\xa8\x89\x25\x10\x9e\x1f\xbf\xf7\xca\xe9\xe7\xc7\x27\x1c\xfc\x32\x85\x5e\xda\x90\xc2\x69\xa6\x3d\x71\xf0\x17\xf9\x14\x8d\x62\x68\x6a\x0d\x53\x11\xfe\xa0\x6c\x9c\x0e\x61\x18\xd5\x20\x7a\xc5\xc1\xac\xa6\xed\xfe\x4b\x02\xbd\xf8\xa1\x82\x62\x7d\x06\xb9\x27\xb7\xff\x19\x96\xc9\x1a\x71\x8e\xfc\x20\xac\x0d\x77\x76\x2c\xd2\xfe\x23\x0e\xf4\xa0\xf6\x83\xa5\xa2\xdb\x7b\xed\x0a\x62\x81\x1d\x8d\x35\x3c\x35\xd1\x99\x30\x4e\xaa\xc9\x90\x2c\x99\x2c\x7a\xc3\x53\xaa\x2c\x52\x63\x73\x79\xb1\xf9\x6b\xca\x05\x19\xc4\x4a\x37\xfe\x9b\x28\xaa\x5d\xdc\x92\x63\x0a\xe4\x97\x46\xfe\xec\xc5\x87\xf4\x58\xaa\xe9\xe8\xc6\xbf\x61\x64\x17\x2d\xc1\xab\x71\x32\xda\x8b\xdb\x27\x59\x3d\x58\xc2\xaf\x56\xcd\x74\xc2\x41\xa0\x8a\xf3\x4c\x5b\x8a\x4b\xe0\xcf\x5c\xaa\x32\xe5\xd1\x84\xbe\xf8\x11\xbd\x3a\xa4\xfc\x8e\xca\xb6\xe9\x9c\xd3\xf6\xe9\xa4\xe9\x06\x79\xd7\xf4\x63\x73\xf9\xfc\xf8\x94\xb4\x7d\x57\xc8\xf4\x6a\xcf\x20\x67\x77\xcb\xb0\x1f\x01\x00\x00\xff\xff\xfd\x75\x73\xae\xfe\x04\x00\x00"), - }, - "/profiles": &vfsgen۰DirInfo{ - name: "profiles", - modTime: time.Date(2019, 8, 12, 17, 34, 58, 563923005, time.UTC), - }, - "/profiles/default.yaml": &vfsgen۰CompressedFileInfo{ - name: "default.yaml", - modTime: time.Date(2019, 8, 12, 17, 34, 58, 563923005, time.UTC), - uncompressedSize: 17476, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x5b\xe1\x6f\xdb\xb8\x92\xff\x9e\xbf\x82\x48\x0e\xd8\xf7\x0e\xcf\x8e\xed\xa6\xb9\x56\xc0\x7d\x70\xed\xb4\xf5\xbb\x38\x36\x6c\x77\x77\x1f\x0e\x07\x83\x96\xc6\x32\x37\x14\xa9\x25\x29\x27\xee\xe1\xfe\xf7\x03\x49\xc9\xa6\x28\xc9\x76\xd2\xee\x5d\xb1\x78\xfd\x50\x20\x1a\x72\x38\x1c\x0e\x67\x7e\x33\x1c\xe3\x94\xfc\x0c\x42\x12\xce\x02\x44\x98\x54\x98\xd2\x36\x91\x8a\xf0\x36\xe1\xd7\xdb\x2e\xa6\xe9\x06\xf7\x2e\x1e\x09\x8b\x02\x34\xd2\xdf\x07\x9c\x29\xc1\xe9\x94\x62\x06\x17\x32\x85\x30\xb8\x40\x68\x93\xad\x02\x14\x87\x42\x4f\x32\xb3\x5b\x02\x28\x60\x09\x17\x08\x29\x1c\x07\x28\xc1\x52\x81\x68\x51\xac\x40\xaa\x56\x84\x09\xdd\x5d\x20\x14\xc1\x1a\x67\x54\x3d\xe0\x04\x64\x8a\x43\x08\x90\x9d\x2c\x77\x52\x41\x72\x71\x81\xd0\x15\x5a\x08\xbc\x5e\x93\x10\x25\x98\xe1\x18\x12\x60\x0a\xad\x01\xab\x4c\x18\xde\x96\x38\xde\xd3\xb4\x30\x08\x01\xc3\x2b\x0a\x51\x80\x94\xc8\xc0\x7c\x09\x79\x92\x72\x06\x4c\x49\x3b\x02\x21\xe6\x2f\x1a\xda\x8d\xe5\xe4\x94\x50\xae\x8a\xb1\x66\x7e\xc2\xd9\xe1\x6f\x84\x1e\xdf\x49\xf7\x4f\xbd\xe8\xb6\xfc\x01\xa1\x96\x59\x25\x40\xd3\xc9\x70\xf9\xd0\x1f\xdf\x79\x64\x84\xb6\x98\x66\xf0\x51\xf0\xc4\x9f\xa9\xff\xad\x09\xd0\x68\x06\xeb\x3a\x1a\x42\xee\xc1\x6d\xbb\xb5\x43\x0c\x83\x29\x56\x9b\x00\x25\xa0\x70\x84\x15\x6e\x6b\x81\x4e\x48\x39\x9f\xf6\x07\x3f\x8a\xa8\xe6\x84\x1a\xe4\xfd\x34\x19\xde\x7d\xf8\xf2\xa9\x5e\x52\x6d\x8e\x4a\xe0\x10\xfe\xdd\x5f\x70\xbf\xdd\xd1\xfd\x64\xb1\x5c\xcc\xfa\x83\xbb\xe5\xbc\x3f\x9e\xde\x8f\x1e\x1a\x79\x5d\x76\x2f\x8f\x72\x19\x8e\xe6\xfd\x0f\xf7\x77\xcb\x5f\x87\xf3\xe5\xb8\x3f\x9b\x7f\xee\x6b\x6e\xcb\xc5\x64\xd9\x7f\xf8\xc7\xcb\x99\x0e\x26\x0f\x1f\x47\x9f\x4e\x1d\x86\x63\xb8\x6b\x12\x97\xc6\x6c\x52\x3c\xcf\xaf\xa6\xfb\x2f\xc1\xcf\x33\x48\x29\x09\xb1\x0c\xd0\x5b\x9f\x48\xd8\x81\xe8\x2b\x4d\x86\x98\xc2\x02\x8b\x18\x54\xed\x31\xbb\x47\x8c\xd3\x54\x5e\xd7\x9c\xb3\x75\x22\x43\x48\x29\xdf\xe9\xbb\x5a\x19\x60\x37\x6f\x37\x65\xee\x9f\x2f\x21\x28\x41\x42\x59\x5d\xbd\x85\xd4\x2e\x85\x00\xcd\x40\xf2\x4c\x54\x0c\x46\xff\x13\x39\xa9\xde\x42\xed\xca\x61\x9a\xd5\x52\x95\xd9\x77\x7f\x0b\x02\xc7\xf0\x45\x11\x4a\xbe\x62\x65\xb6\xfa\xae\x73\x51\x5e\x04\x47\x84\x81\x94\x53\xc1\x57\x95\xa5\x36\x4a\xa5\x9f\x40\x55\x25\x48\x8d\xdd\x5f\xeb\xd9\xbb\x2a\x91\x0b\xa5\x17\xf2\x96\x42\x88\x30\xa2\x08\xa6\x43\xa0\x78\x37\x87\x90\xb3\xa8\xe6\x50\x53\x10\x84\x47\x7b\xf2\x1b\x9f\x89\x22\x09\xf0\x4c\x35\xcc\x2f\x94\x56\x51\xb9\x80\xdf\x33\x90\xaa\xe6\x28\xc2\x34\x0b\xd0\xdb\x4e\x27\xa9\x50\x12\x48\xb8\xd8\x05\xa8\xd7\xb9\x79\x37\x26\x17\x0e\xdd\x58\xb3\xc7\x8b\x24\x38\x86\x00\x55\xcd\xc0\x5c\xea\x39\x4e\x52\x4a\x58\x1c\xa0\x6e\xbb\xbc\x25\x7b\x19\x2a\x11\xa5\xe6\x8e\x3c\x02\xa4\x98\x92\x2d\x8c\xf1\xf3\x1c\xc4\x16\xc4\x80\x33\x06\xa1\x3e\xd9\xbe\x5e\xfb\x8d\xb7\x09\xcb\x63\x8c\x53\x27\xae\xec\xc5\x65\xb1\x00\x59\xd1\x47\xfe\x59\xb3\x27\x07\x61\xf2\xaf\x31\x56\xf0\x84\xfd\x13\xcf\x89\x79\x98\xa5\x20\xc6\x3c\xd2\xce\x62\xf2\xf1\xa3\xef\x2e\x8a\xa1\x14\x4b\x99\xf3\x2e\xab\x0a\x28\xe8\x3b\xb3\xf3\xc5\xaa\xc6\xc7\xe2\x5f\xca\x29\x09\x9b\xc7\xaf\x31\x95\xe5\x09\x99\x84\xf1\x60\x9a\x73\x2a\x62\xa7\xe0\xcf\xbb\x63\xb1\xf3\xd8\x81\xeb\xb9\xdb\x5e\x59\xf1\x34\xd3\xe8\x61\xc8\x13\x4c\x58\x80\x2e\xf3\xbf\xdb\x94\x87\x98\x5e\x7e\x17\x8b\xed\x1e\xb3\xd8\x6e\x4f\x1b\x6c\x99\x46\x49\x42\x1a\xb9\xf5\x3a\x2f\x63\x17\x72\x16\x66\x42\x00\x0b\xf5\xfd\x28\x91\x70\x18\x82\x94\xf7\x3c\xbe\x63\x21\x8f\x8c\xc9\x2f\xee\x7e\x5d\x94\xc6\x50\x1e\xdf\xc3\x16\x68\x80\x9e\xb0\x60\x84\xc5\x1e\xf3\x1c\xfa\xdc\xef\x87\x5d\x26\x44\x86\x01\x08\xc1\x45\x59\x7d\x11\x93\x33\x58\x0b\x90\x9b\x19\x56\xe6\x0a\x74\x64\xd9\x3e\x04\xd9\x12\x0a\x71\xbd\x31\x58\x3b\x19\x70\x01\xc3\x2c\x49\xeb\x46\x48\x85\x55\x26\xa7\xc6\xa7\x75\xdf\x76\x7a\x0d\xfe\x73\x54\xe7\xdb\xba\x0d\xbe\xb6\xec\xe2\x7a\xf5\xa3\x3e\x62\x42\x33\x01\x8b\x8d\xde\x1c\xa7\x51\xc5\x17\x12\x16\xd2\x2c\x82\xd1\x74\x86\x59\x0c\x32\x40\x97\xff\x5a\xd6\x0d\xce\x14\x1f\xb1\xdf\x20\x54\x41\x71\x21\xaa\x8e\x49\x04\xe8\xf2\x2b\x49\x1f\x09\xbb\xb4\xf0\x75\x6a\x2e\x94\x03\x59\xdd\x1b\xf6\x2a\x9c\x6a\x19\x14\x57\xcd\xbb\xaf\x67\xe0\x54\x61\x83\xfc\x80\x67\x4c\xf9\x4a\xfd\x13\xe0\x06\x57\x3b\x7b\x11\x7f\x74\xe0\x70\x24\x77\x38\x81\x72\x2f\xf7\x30\xf7\xf2\x3c\x07\x9b\x90\x67\x10\x65\xc3\x8e\x70\xaa\x40\x54\xd4\xf3\x98\xad\x40\x30\x50\x20\x6b\xc4\xf3\x8d\xd7\xe6\x6a\x45\xc0\x71\x53\xb4\x72\x10\x7a\x95\xc9\xef\x79\xe4\x03\x6a\x02\xdb\x6b\x12\xb4\xe3\x2a\x3e\xaa\x60\x77\xf2\xb8\xff\xeb\x74\x36\x19\xcc\x1b\xe6\xdf\x5e\xfe\xc9\xae\x98\x7f\x1a\x7b\x29\x7f\xf4\x5b\x76\xcc\xf3\x7d\x03\x70\x38\x16\xea\x7d\xa3\x3a\x0a\x1b\x6e\xde\x1d\xe3\x75\xf3\xe9\xb5\x17\x5c\x82\xd4\xc7\xdf\x5f\xaf\x75\xce\xb0\xbb\x6b\x46\x73\x94\xe3\x48\x6e\x20\x32\x40\xc3\x3f\x5e\x83\x43\x81\xad\x79\xf5\x08\x29\x56\x1a\xbc\x38\xd1\x55\x03\x2a\x69\xbd\xc2\x1c\xc2\x4c\x10\xe5\x3a\x05\x99\x7f\xfa\x06\x9f\x70\xa8\x11\x99\x09\x44\xe1\x08\xe8\x2b\x41\x67\x3e\xdb\x53\x1a\x5d\xcf\x49\xcc\x0a\xb9\xd0\x15\x22\x2c\x22\x21\x56\x80\xc8\xda\x90\x5b\xd2\xd0\xd1\xa0\x8f\x88\xd4\x48\x38\x6a\x7b\x88\x20\x93\xaa\x40\xad\x25\xd0\xea\x32\x53\x1b\x40\x91\x19\x64\x58\x20\xc2\xd0\x7c\x3a\xfa\xf8\xf1\x0e\x91\x08\x98\xd2\x8a\xfb\x32\xbb\xf7\x61\xda\x00\x44\xd5\x8e\x9c\xd4\xb9\x25\x6d\xce\xd1\xc2\x61\xa8\xed\xbd\xed\x6a\xad\x94\x64\xb7\x6b\xf5\x09\x42\xd9\xaa\x9a\x38\xa6\xd3\xc6\xc4\xa0\x4e\xd9\x47\x81\x47\xb6\x0a\xd0\xef\x19\xde\xb5\x09\xbf\xfe\x0d\x94\x54\x38\x7c\x2c\x2b\x13\xc7\x01\xda\x76\xda\xb7\xed\x5e\x21\x24\xe3\x11\xf4\xe3\x7d\xd5\xef\x85\x22\x9e\x1f\x1f\x06\xfd\xe5\x74\x36\xf9\x79\x34\xbc\x9b\x35\xf8\xf8\xfa\xd0\x30\xe8\x2f\xfb\xc3\xe1\xcb\xe6\x4c\x69\x16\x13\x26\xcf\x98\x73\xc4\x9e\xb5\x62\x5a\x58\x6b\xa6\xf5\xf8\x2e\xbf\x85\x03\x93\xbd\xd6\x97\x51\x8b\xcc\xf6\xbb\x57\x51\x63\x4c\x29\x7c\x3f\x78\xfa\x4d\xd9\x9d\xd1\x42\x3f\x53\x1c\x11\x83\xe2\x09\x67\x8e\x0a\x0e\xe8\x9e\x14\x02\x7e\x87\xfd\xdb\x95\xf8\xd1\x3b\xf4\xd2\xab\x92\x9f\xb1\x24\x11\x84\x58\x2c\x8b\x25\x6a\x12\xb1\x7d\x15\x44\x7e\xd8\x0d\x6d\xa9\xbd\xce\xe9\x0b\x78\x12\x44\x41\x3f\x4d\x3f\x2f\x16\x53\x5b\xba\xaa\x4b\xdd\x1c\x87\x58\xa5\x5a\x31\xee\xf1\x4a\xe7\x97\x45\x99\x23\x57\xa7\x55\xbd\x79\x3d\x40\x9f\x6c\xd1\xc3\xd1\x7c\x5e\x06\x91\xdf\x51\xe9\xa6\x2c\x92\xaf\x74\x96\x6f\xf0\xea\x20\xe7\xbb\x86\xd1\x7c\x31\x9a\x2c\xc7\x77\x8b\xfe\x72\x36\xf9\xb2\xb8\x9b\x2d\xc7\x93\xa1\x5f\xaf\x2d\x6e\xaf\x64\xa4\x15\x31\xac\xfe\x6c\x80\xf0\x68\x3d\xab\x01\x15\x9e\xc4\x84\xc7\x10\xe1\x31\x3c\x78\x26\x1a\xac\xbb\x75\xda\x07\x18\xe5\xdd\x35\xd6\xc7\xae\xd0\x10\x56\x59\x8c\x28\x6c\x81\xa2\x35\x17\xda\x34\xf8\xae\x8d\x06\x98\xa1\x15\x20\x09\x0a\x29\x8e\x7e\x8a\xf4\xa8\x9f\xca\x41\x5b\x7f\x0a\x10\x61\xeb\x72\x95\x2e\x2a\xca\x5a\x97\xde\x4a\x56\x0a\x14\x0a\x2e\x65\x2b\x87\x0f\x79\x3d\x08\x65\x92\xb0\x18\xcd\x1f\x46\x28\xc1\x2a\xdc\xf8\x35\x9f\xaf\xdb\x94\x9d\x5f\xf4\x43\x48\x66\xeb\x35\x79\x0e\x50\x4c\xf9\x0a\x53\x7f\xc7\x16\x9c\x68\xa5\x9b\x1d\xef\xf1\x3f\xc2\x51\xc4\xbd\x58\xb5\x27\x2e\xed\xbe\x96\xf6\xac\xbc\xcd\xa5\xbc\x82\x5e\xae\xae\xd0\x3f\x78\x86\x42\xcc\x34\x5b\x14\x66\x52\xf1\xa4\x70\x0e\x76\x02\xb2\x10\x49\xe4\x87\x87\xf8\x16\x84\x20\x11\xc8\xbf\xa1\x55\xa6\x10\x51\x28\xc9\xa4\x2a\x2a\x39\x48\x6d\xb8\x84\x7c\xa6\x24\x2c\x04\xb4\x01\x9a\x18\xdf\xaa\x7d\x62\xdb\xdb\xe6\x03\x37\x60\x0c\x2b\xd4\xff\x65\x8e\xee\xee\x3f\xa0\x27\x42\x29\x5a\xed\x8a\x67\x4a\x94\x82\x58\x73\x91\xa0\x0d\x60\xaa\x36\x28\xdc\x40\xf8\x28\x11\x67\x06\xc2\xad\x89\x90\xca\xac\xe6\xf1\x35\x74\x22\x11\x25\x52\xb5\xd1\x1c\x94\xd2\x47\x67\x3e\x29\x6e\xa6\xba\xfc\x0c\x07\xbb\x32\x30\x99\x89\x5c\x24\x3b\xc4\xe3\x9c\x0b\x80\xa9\x76\x9f\xe8\x89\x8b\xc7\xb6\x79\x64\x90\xc1\xf5\x75\x4c\xd4\x26\x5b\xb5\x43\x9e\xd8\x07\xd9\xfd\xff\x32\x03\x79\xdd\xed\xbd\xed\xbc\xf1\x1c\x5a\xda\x50\x94\x2b\xae\x54\x53\xd1\xae\xb8\x8e\xb6\xb4\xd7\xaa\x68\xa0\xb5\x7f\xc2\x38\xc2\xb6\x42\xb4\x3c\xf5\x6e\x7a\xb5\xdc\x6e\x6e\xde\x34\xce\x90\x8d\x3b\x7b\x7f\x62\x67\x3e\xdd\xf2\x7c\x24\x98\x92\x26\x9e\xd5\x27\x95\x32\xcf\x0a\xdd\xf2\x4c\x05\x4f\x40\x6d\x20\x6b\x14\xf6\x8d\xef\x95\x7d\xc6\x3e\xdd\x32\x8e\x05\x5e\x63\x86\x1b\xb9\xf6\x4e\x70\xf5\xe9\x96\xab\x12\x38\xf4\x9d\x8c\xa9\xf8\x68\x33\xd6\x96\xbc\x81\xdc\x72\x37\x20\x00\x49\x46\x90\xe0\x99\xb1\xf4\x0d\x4e\x53\x60\x4d\xdb\xac\x9e\x63\x59\xa0\xa6\x73\x56\x54\x7a\xee\xe3\xea\x0a\x8d\xef\xe6\x9f\xd1\xdd\xaf\xd3\xfe\xc3\x7c\x34\x79\x40\xd3\xc9\x6c\x31\xb7\x24\xfd\xcf\xbb\x3d\x53\x9d\xfc\x20\xcc\x22\x34\xb0\xe9\x1f\x1a\x2f\xee\xe7\xb9\xbf\xc0\x02\x0a\x87\xa9\xbd\x4e\xe1\x86\x5a\xc6\xd1\x98\xdb\xc9\x19\xdd\x21\x01\x11\x11\x10\xfa\x57\x5e\x71\xfb\x70\x75\x9d\x27\x96\x3a\x61\xb4\xae\xb5\x9d\x80\xdc\xdc\x3d\xa7\x98\xe9\xf8\xab\xc3\x85\xd6\x51\x69\x3d\xdf\x2f\x0d\x81\x82\x4d\x13\xf7\xde\x8c\xac\x91\xe6\x83\x60\xcf\x88\x48\xc4\xb8\x2a\x58\xfc\x4d\x4b\x80\xb7\x9c\x44\x1e\x2f\x78\x4e\xb9\x89\x1c\x19\x63\xa0\x03\x09\x16\x85\x6f\xcd\xdd\xd8\x13\xac\x7c\x01\x0a\xb7\x2c\x20\xe1\xdb\x8a\x20\x3b\x9e\x19\xe9\xf5\xf2\x36\x2a\x95\x45\x2b\x31\x2b\xed\x7e\x5a\x0d\x02\x8e\xa1\x76\x4f\x98\x7f\x85\x9e\xdb\x45\x98\xe6\x09\x70\x2c\xd2\xb0\xe5\x9b\xc9\xc1\x19\xdd\x1e\x77\x47\x15\xf2\x81\x7d\x7e\xa8\x27\x16\x78\x7b\xcc\xae\xab\xd4\x03\xfb\x88\xc9\x0a\xd7\xdc\x82\x11\xb0\xa8\xde\xc8\xeb\x2c\xbc\xf4\xcf\x83\xf2\xa1\x00\xf5\x33\xa7\x59\xe2\x63\xa0\x02\xd8\x96\x31\x5d\x2b\x04\xa1\xfc\xa4\xd4\x72\x79\x68\x04\x82\xb5\x93\x12\x9d\xd2\xd8\x46\x8f\x6b\x50\x61\x11\x96\x4e\x4d\x6c\x12\x0b\xbf\x52\xb2\xfa\x79\xe7\x09\x57\x37\xd7\xad\x7d\x1b\x54\xb4\x4f\x6b\x10\x3c\xe3\x24\xd5\x38\xae\xfa\x04\x7d\x00\x4b\x66\xce\xb2\x9c\x0a\x39\xe3\xac\xf7\x2d\xe8\x55\x48\x7c\xcc\x49\xa3\x23\xce\x5f\xa3\x52\xd9\x10\x81\x8f\x3e\xfb\x1a\xa9\xa8\xac\x27\x99\x78\x79\x4a\xd8\x6a\x50\x2d\x89\x5a\x09\xc5\x8e\xa8\xbd\x4e\xa7\x53\x4d\x59\x5e\x2b\x6d\x1e\x30\x4f\xc9\x5b\x17\x57\x4b\x12\x57\xe2\xb1\x23\xf1\x9b\x4e\xe7\xfb\xa9\xf7\x00\x1d\x4e\xc9\xdc\x00\x32\xca\x62\x57\x05\xdb\x8b\xfd\xbe\xf3\xfe\xdb\xc5\x86\x17\x67\xe3\x27\x2b\x75\xc7\xca\x23\xff\x4c\xd5\xfd\x01\x6e\xaa\x0e\x2f\xcf\xd4\x7f\x94\xf7\x9b\x57\x67\xec\x2f\xcb\xa3\x7d\xf4\x33\xc6\x8f\x80\x4c\x22\xa6\x91\x8e\xce\xef\x6d\xb2\xac\xb1\x4f\x64\x94\x6e\x30\x4f\x46\x15\xd1\x5e\xde\x2a\x78\xef\xfd\xdb\x27\xd3\xf2\x2b\x34\xd6\x49\xeb\x0a\x50\x44\xd6\x6b\x10\xa6\x32\xcb\x05\x02\x1c\x6e\x0a\x6e\xfb\x82\x57\xbb\x32\xf9\x8b\x84\x48\xa3\xbd\xbc\x04\xe6\xbe\x26\x98\x84\x3d\x17\x56\x73\xfc\x0a\x82\xa3\x6d\xca\x0a\x64\x5e\x65\xe6\x64\xfa\x52\x63\x0d\xbd\xb3\x27\xa2\x36\x36\x5b\xcd\x59\xd9\xac\x18\x0c\x17\xbb\xb6\xa1\x96\x37\x5e\x61\xad\x4f\x2a\xc1\x8a\x84\x98\xd2\x5d\x75\x65\x93\x47\x84\xb6\x86\x82\x91\x00\x4c\x4b\xbb\xf8\x8b\x35\xdf\x76\x1e\x4b\x75\x5a\x8b\xfe\x7a\x7e\x0d\xe3\x58\xf1\x23\x12\x98\xb0\x61\x26\x72\x93\xbb\x79\x5b\xf6\x95\xa1\xed\x09\x5b\xd8\x3e\xb9\x00\x75\xfd\x86\x98\x66\x10\xfb\x07\xe6\xb4\x3f\x54\xea\x75\x06\x9a\x84\x57\x80\xc9\xd3\x73\xea\xe1\xda\xa9\x79\x0d\x32\x9d\x8b\x24\xcf\x9a\x76\x96\x64\xc5\x54\x53\x1d\xff\x64\xac\xb6\xa8\x6c\xa5\x58\x9a\x7b\xbd\x11\x3c\x8b\x37\xfa\x8e\x99\xd2\x55\x9e\x43\xee\x70\x42\xf5\x15\x72\x3d\xe2\x15\x5a\x4c\x86\x93\x00\x45\x20\xc8\x16\xd0\x5a\xf0\x04\xf1\x14\x04\x56\x5c\xa0\xfe\x74\x64\x06\x6d\x8b\x58\x92\x97\xe3\x72\x67\x38\xdb\x3f\xab\x38\x6d\x7c\x76\xad\xe2\x38\xcf\x62\xef\x42\x93\x4a\x07\xa6\xdf\x35\x40\x79\x1c\x97\x5e\x99\x69\xde\x9b\x96\x57\xdb\x02\xc2\xd6\xbc\x08\xbf\x8f\xef\xe4\xc8\xef\xb0\x6c\x80\x0b\xb9\x7a\x1f\x6a\xd2\x05\x6f\xea\x67\x53\x2a\x2b\x4d\x37\xdd\x87\x4b\xc2\x88\xf3\xa4\xe8\x36\x26\x1a\xd2\x85\xf3\x7d\x9a\x51\x6a\x5b\xbc\x02\xd4\x37\x75\xb8\x9c\x1a\x3a\x3f\x93\x28\x1e\xc0\xeb\x82\x54\x44\xa4\xfe\x68\x79\x0c\x4c\x41\xaf\x44\x4f\x0f\x84\x8f\x98\xd0\x49\x0a\xcc\x83\x57\x86\xe9\xc2\x42\xff\xd2\xd4\x44\x43\xb1\xe3\xea\xc2\x22\xdc\x1c\x86\xe0\x24\xba\xbd\x71\x3b\xe8\xe4\x9b\xf7\x9d\x67\xf7\x43\x9a\x86\xb7\x37\x14\x0e\x9f\x38\x03\xe7\xa4\x5d\xd6\x36\xdd\xf9\x19\x53\x12\xe5\xae\xd5\xdd\xb5\x3d\xe3\x59\xf5\x3d\xaf\xee\x25\x2f\x7f\xc3\x4b\xca\x93\xa7\x3c\x1a\x12\x29\xb2\x54\x73\xff\x90\x45\xb1\xdb\x5a\x5d\xe7\xef\x4b\xad\xaa\xb9\xf8\x99\x5a\xf1\x8c\x45\xf9\x8f\x4c\xa6\x5e\x37\x9d\x6d\x79\xe8\xdf\xdf\x4f\x7e\x71\x1a\xf9\x8b\xbb\x90\xd7\x43\xb4\xc4\x44\xd8\x27\x55\xc5\xed\x0b\x80\x29\x91\x28\x8e\x18\x29\xae\x74\x7b\xef\xaf\x31\x43\xa6\x0a\x6b\x23\xab\xb9\xd7\xe1\x06\x0b\xb5\xc7\x0a\xa5\x22\x49\x80\xfe\xfb\x7f\x8a\xef\x1a\x63\x0c\xec\x95\x75\x3e\xcb\xe8\xf4\xa5\xc8\x22\x69\xbd\x91\x53\x87\xcf\x24\x2c\x44\x26\xd5\x13\x17\x6a\xb3\xfb\xfb\x53\xe5\x6d\x30\x93\xf0\xc0\x45\x82\x69\x85\x96\xb7\x3a\x1e\xae\x2e\x89\x37\x4a\x2a\x48\xdd\x53\xc3\x51\x64\x2e\x6c\xb9\xf6\x6f\x71\xd7\x82\x3f\x82\xff\xe4\x61\x7a\x42\xa0\x12\xa1\x43\xbd\x94\xaa\x48\x6f\x9b\x2c\x4f\xad\x17\x61\x85\x23\x1e\xd7\x0f\xfb\x97\xbf\x7c\x9e\xcc\x17\xcb\xd1\xf4\xaf\xc1\xbb\x6e\xef\xf6\xd2\xfa\x3d\xd3\x3e\x53\x4c\xa8\xb6\xc6\x49\x15\x11\x7e\x56\xd6\xc2\x33\x95\x66\xaa\x2f\xff\x2e\x39\xf3\xa9\x07\x3f\x79\xce\x73\x64\x0e\xcc\xef\x9e\x53\x22\x76\x07\xa8\xd2\x75\x9a\x85\x1a\x7b\xf5\xea\x79\x9a\xf6\x8a\x48\xbb\x72\x71\xc6\x5e\x32\x09\x7d\xab\x88\xc1\x6c\xb8\xf7\x98\x17\xf5\x1b\xa9\x5b\xb0\x3e\x5f\x33\x3d\x1f\x11\x0f\x1f\xc1\xfc\x6e\x4c\xb3\x2a\xec\xcb\xf4\x7a\xf4\xda\xef\xf6\xcd\xfd\x02\x14\x30\xbb\xed\xdb\xe2\x19\x44\x86\x02\xa7\x30\x62\x0a\xc4\x16\x53\x8d\x58\x5c\xe7\x0b\xcf\x45\x00\xae\x64\xc1\x95\x66\xfd\x86\x7d\x6f\xb8\xe7\x88\x5a\xce\x7e\x6d\x23\xcf\xc1\x77\x32\xc6\x95\x39\x18\x67\x86\xe3\x80\xcb\x1d\x4f\x4d\x8a\x62\x3c\x82\x39\x50\xdb\x33\x70\xb8\xe2\x8a\x53\x10\x39\x73\xf4\x9f\xff\xb5\x0f\x0d\x51\x9f\x29\x52\xb4\x75\x99\xb7\xf7\xc3\xe4\xa6\x61\x0b\x10\x49\x75\xa8\x0d\xf9\xb6\xc4\x51\x39\x49\x57\x2b\xf5\x47\x69\x63\xa4\xe3\xc4\x53\x2e\x89\x32\x6d\x6b\x39\xd3\x6b\xbf\x7e\x62\xce\xf8\xb6\xdd\x6d\xdf\x16\x72\x6a\x70\x22\x3d\x4f\x23\x15\xd7\x59\xa1\xf9\x89\xc3\x43\xf9\x25\xd1\x7a\x12\xfb\xeb\x88\x19\xe0\xe8\x17\x41\x14\x8c\x31\xdb\x9d\xd6\x78\xf9\x98\x5d\x8c\xe7\x4b\x99\x49\x10\x1a\x2e\xfe\x07\xec\x82\xfd\x1f\x87\x6b\x8c\xa5\x4c\x37\x02\x4b\x4b\x3f\xfc\x79\x51\x6b\x88\x65\xe6\x79\x83\x56\x50\x6b\x42\x87\xb3\x77\x93\x80\x83\xf2\x4c\x3e\x9e\xc7\x82\xd1\xf4\xb0\xc3\x67\xa5\x45\xa4\x35\x55\x27\xca\x71\xf4\x01\x53\xcc\x42\x3d\x23\xa8\xfd\x3e\x37\xd1\x38\x6f\x80\xff\xf6\xcb\x92\xef\xf7\x85\x37\x45\xfb\xec\x0a\x2c\x70\x3e\x1a\xf8\x5b\xf2\xe8\x4e\x91\xc4\x2d\x8f\xd4\x30\x8a\xb0\xdc\xac\x38\x16\xd1\x54\xf0\x2d\x89\x4a\x9e\x7d\x4f\x4b\x0b\xda\xd9\x2b\xa5\x55\x6e\xc8\xc9\x34\x7e\x32\x08\xf8\x27\x2f\x47\xe0\x22\x1e\x45\xd5\x92\xd0\x9a\xd3\x48\xc7\xf7\xfa\x49\xf6\xe0\xd7\x84\xfa\x45\x98\x1c\x47\x9a\xc7\x22\x52\x0d\x38\xf9\x92\xa9\xa7\xf6\xfd\x06\xac\x81\x6e\xb1\xb8\xa6\x64\x55\x18\xea\xf5\x5e\x25\xf2\xda\xfd\x75\xd1\xff\xaf\x97\xca\xab\xdc\x47\xbd\x54\x71\x20\x01\xfa\x0d\x43\xbc\x6f\x87\x6d\x10\xfc\x7b\x8a\x68\x87\xda\x55\x0f\x7a\xf6\x42\x9d\x25\xfb\xe5\x7a\xe3\x11\xbb\xed\xee\x01\x6e\xe7\xad\xbf\x2e\x14\xc0\xcf\x4b\x83\xbe\xa4\xf9\x95\x9d\x73\xbf\x65\x8a\xd9\xdc\x7a\xcb\x85\x31\x92\x15\x8e\x62\xa7\x11\xb8\xd6\xbd\x1e\x75\xb0\xa7\x5d\xac\x0f\xc2\xbc\x6d\xf2\x14\x98\x1d\x52\xde\x63\xaf\xdd\xbd\x69\xf7\x5c\x30\xb4\x82\xb9\xc2\x42\x65\xa9\xf9\xc5\x8f\xa9\xf0\xef\xc9\xbf\x67\x20\x76\x79\x3d\xfa\xc6\x79\xf5\xab\x6d\x06\xac\xeb\xaf\x36\xe9\xc3\x1b\xbf\xb5\xba\x68\xab\x7e\xdf\xe9\x94\x7e\x8d\x55\xdf\x4a\x68\x53\x90\xb7\x67\xf1\xf8\x0d\x6f\xf1\x24\x55\xf2\x33\xe0\x34\x40\xff\xe6\x6c\x25\xc1\xcf\x73\x8d\xeb\xf3\xb3\x3b\x10\xb4\x61\x7a\x19\x8f\xf3\x53\x26\xad\xc7\x10\x98\x74\xd1\xa2\xaf\xea\x84\x11\xe5\xbe\xb6\x1a\x45\x77\xda\xdd\xf6\xfb\x57\x2a\xac\x5b\xbb\xd3\xde\xa7\x33\x75\xd5\x6b\xd2\xf7\x4d\x49\x57\xf0\x9c\x72\xe1\xff\xf8\xa4\x01\x9d\x16\x77\x7d\xa9\x6a\x92\xdd\x3f\x3e\x9a\x3a\xc6\xf7\xca\x98\xd8\x1c\xf9\xcc\x5f\xe6\x45\xec\x15\xe0\xcb\x33\x05\xf7\x61\xcd\x02\xe9\x6e\xfb\xf0\x2b\xd9\x32\x22\x71\xc7\xfe\x9f\x39\xc7\x6f\x40\x14\x46\xde\x17\xe3\x89\x3c\x88\x05\xb5\x88\xaf\xfc\x0e\xf9\x5a\xbc\x57\x8c\xd8\x12\x78\x9a\x30\xba\xb3\x3e\xd3\xab\x4c\xd9\xa8\xfa\x65\x76\x1f\x38\xbe\x42\x47\x02\xe7\x53\x5d\x05\xad\x38\x3a\x01\x58\xc1\x10\x12\x3e\x37\xf2\x7b\xf6\x7f\x4e\x7e\x61\x1b\xfb\x97\x1a\x3f\x14\xa7\x6f\x8a\x90\xd7\xfa\xbf\x56\xb8\xc1\x84\xb5\x53\x48\x1c\xd7\x4c\xb6\x58\xc1\xf2\x11\x76\x35\x93\x1e\x61\x67\x46\xff\x6f\x00\x00\x00\xff\xff\x6b\x18\xde\x88\x44\x44\x00\x00"), - }, - "/profiles/demo-auth.yaml": &vfsgen۰CompressedFileInfo{ - name: "demo-auth.yaml", - modTime: time.Date(2019, 8, 9, 20, 17, 42, 178097450, time.UTC), - uncompressedSize: 2303, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x56\xcd\x8e\xda\x40\x0c\xbe\xf3\x14\xf3\x02\xdd\x5d\xaa\x56\xaa\x72\x5b\xc1\xb6\x6a\x55\xa4\x55\x91\x7a\x37\x13\x13\x46\x99\xbf\xda\x1e\x0a\x6f\x5f\x4d\x08\x10\x48\x58\x41\xa5\x6d\xb5\x9c\x88\xfd\xd9\xb1\x3f\x7f\xb6\x02\xd1\xfc\x44\x62\x13\x7c\xa1\x8c\x67\x01\x6b\xef\x0c\x8b\x09\x77\x26\xdc\xaf\xc7\x60\xe3\x0a\xde\x8f\x6a\xe3\xcb\x42\x7d\xcd\xf6\x49\xf0\x42\xc1\x3e\x5b\xf0\x38\xe2\x88\xba\x18\x29\x55\x81\xe0\x6f\xd8\x72\xfe\xaf\x94\x0e\x2e\x06\x8f\x5e\xda\x67\xa5\xb0\x22\x64\xfe\xb2\x43\xed\x8d\x0d\xd0\x05\x7f\x7c\x56\x0a\x3d\x2c\x2c\x96\x85\x5a\x82\x65\xec\x38\xea\x4f\xdc\xc5\x29\x45\xc8\x21\x91\xc6\x33\x73\x76\xfc\x4a\xc8\xd2\xb3\x2b\xa5\x63\x2a\xd4\xf8\xc1\xf5\x1c\x0e\x5d\xa0\x6d\xa1\x3e\x3c\xcc\x4c\xc7\xb9\x06\x9b\xce\xf3\x43\x92\xc0\x1a\x2c\x3e\x0d\x55\x6a\xfc\xcd\x8d\x0a\xa5\xb7\xd5\x67\x0c\xd6\xe8\xed\xa5\x49\x7b\x70\xc8\x11\x34\x16\xaa\x91\xd1\xbb\x1d\xbc\xf5\x76\x63\x87\x79\xf9\x27\xfd\x8f\x1f\xfe\x9e\x80\x91\x52\x8c\x3a\x91\x91\x03\x07\xc7\x85\x98\x89\xe5\xce\x48\x4b\x10\x38\xd8\xe7\x42\x46\x4b\xeb\x1d\x29\x25\x68\xd1\xa1\xd0\xf5\x54\x1e\x22\x5a\xc0\x59\x86\x57\x26\xf4\xe3\x2b\x11\x7a\x82\x29\x21\x0a\x52\xaf\x84\x3a\x2d\x90\x3c\x0a\x32\xfa\x75\xbf\xbe\x4b\xcb\x94\x7f\x91\x82\x43\x59\x61\x1a\xe8\xeb\xa5\xb8\xdc\x5c\x9e\x18\x3f\x6d\xa2\xa1\xed\x34\x11\x48\x73\x25\xfb\xc2\x62\x01\x5d\x97\x64\xd6\x48\x2f\xbc\xa3\xdf\x6d\x8e\x2c\x4d\xb8\xb5\xae\x90\x24\x26\x79\xe4\x6f\x9c\xcb\x19\x4a\x9b\x18\x1f\x77\x4c\x4e\x7e\x4c\xb9\xa3\x5c\x21\x58\x2e\x8d\x9e\x81\x87\x0a\x1d\x7a\xb9\x5a\x7b\xad\xca\xf7\x7b\x6c\x6c\x90\x37\xb1\xc6\x42\xa0\x71\x0e\x2e\x5a\xe3\xab\x26\xe4\x06\x51\x46\x0a\x9b\xff\x7f\xad\xae\xb9\xd6\x5a\x23\xf3\xf7\x50\x7d\x36\x16\x0b\x75\x5f\xe2\xfa\x9e\xa5\x0c\x49\xf2\xd4\xbb\x11\x95\x0d\x0b\xb0\xfb\xe8\xd2\x70\x6e\xfb\xb9\x39\xcb\x93\x15\xea\x9a\x4f\x19\x70\xf9\xa0\x1d\x5e\x75\xaa\xcb\xc6\xec\xcc\xe6\xa8\xfa\xfe\xfa\xf6\x04\x3e\x90\xa2\x22\x58\x82\x87\xc3\xb7\x42\x1f\x91\x87\x98\xc7\x77\x19\x51\x1b\xb0\x66\xd8\xdf\xb2\x4c\x08\x82\x53\x74\x61\x8e\x9a\x70\x7f\x87\xff\x04\x00\x00\xff\xff\xe7\xc1\xf8\xef\xff\x08\x00\x00"), - }, - "/profiles/demo.yaml": &vfsgen۰CompressedFileInfo{ - name: "demo.yaml", - modTime: time.Date(2019, 8, 9, 20, 17, 42, 178097450, time.UTC), - uncompressedSize: 2271, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xd4\x56\xdb\x6e\x1a\x41\x0c\x7d\xe7\x2b\xe6\x07\x9a\x4b\xd5\x4a\xd5\xbe\x45\x49\x5a\xb5\x2a\x52\x54\xa4\xbe\x9b\x59\xb3\x58\x3b\xb7\xda\x1e\x0a\x7f\x5f\x0d\x2c\xb0\x61\x21\x82\x4a\x69\x15\x9e\xd8\x39\xc7\xb3\xf6\xf1\xb1\xb5\x90\xe8\x27\xb2\x50\x0c\x95\xa1\x20\x0a\xce\x5d\x91\x28\xc5\x2b\x8a\xd7\x8b\x5b\x70\x69\x0e\xef\x47\x2d\x85\xba\x32\x5f\xcb\xf9\x7d\x0c\xca\xd1\x3d\x39\x08\x38\x92\x84\xb6\x1a\x19\xd3\x80\xe2\x6f\x58\x49\xf9\x6f\x8c\x8d\x3e\xc5\x80\x41\xbb\x67\x63\xb0\x61\x14\xf9\xb2\x61\x6d\x0f\xd7\x44\x1f\xc3\xfe\xd9\x18\x0c\x30\x75\x58\x57\x66\x06\x4e\xb0\x07\xb4\x9f\xa4\xcf\x33\x86\x51\x62\x66\x8b\x07\xc7\x05\xf8\x95\x51\x74\x70\x6e\x8c\x4d\xb9\x32\xb7\x37\x7e\x00\x78\xf4\x91\x57\x95\xf9\x70\x33\xa6\x1e\xb8\x00\x97\x0f\xef\x87\xac\x51\x2c\x38\x7c\x3c\x96\x29\x85\x8b\x0b\x55\xce\x6f\xab\xce\x14\x1d\xd9\xd5\xa9\x4e\x07\xf0\x28\x09\x2c\x56\x66\x6d\xa3\x77\x1b\x7a\x87\xf6\x63\x8f\xeb\xf2\x4f\xea\xbf\xbd\xf9\x7b\x01\x46\xc6\x08\xda\xcc\xa4\x3b\x0d\xf6\x03\x31\x56\x27\x7d\x47\xd4\xa0\xb0\x03\x26\xca\x64\xb5\x77\x8f\xa2\x43\x8f\xca\xe7\x8b\xb9\x8b\xe8\x08\x07\x37\xbc\xb2\xa4\x1f\x5f\x49\xd2\x67\x9c\x1a\x92\x22\x0f\x52\x68\xf3\x14\x39\xa0\xa2\x60\x58\x0c\xf3\x3b\x35\x4e\xe5\x97\x38\x7a\xd4\x39\xe6\x23\x75\xbd\x14\x57\x8a\x2b\x2d\x93\xc7\x65\x22\x5e\x3d\x64\x06\x5d\xef\xc9\xa1\xb5\x44\xc1\xb6\x35\xd3\x02\xf9\x85\x77\x0c\xab\x2d\x91\x35\xc5\x4b\xf3\x8a\x59\x53\xd6\x3b\xf9\x26\x25\x9d\x63\xd7\x66\xc1\xbb\x8d\x92\xf7\x3f\x1e\xa4\xef\x39\x86\xd9\x8c\xec\x18\x02\x34\xe8\x31\xe8\xd9\xde\xeb\x7c\xbe\x9d\x64\x72\x51\xdf\xc4\x20\x2b\x83\xc5\x09\xf8\xe4\x28\x34\xeb\x90\x0b\x4c\x99\x38\x2e\xff\xff\xbe\x3a\x67\x5f\x5b\x8b\x22\xdf\x63\xf3\x99\x1c\x56\xe6\xba\xc6\xc5\xb5\x68\x1d\xb3\x96\xae\xf7\x23\x1a\x17\xa7\xe0\xb6\xd1\x35\x49\x29\xfb\x69\xbd\x98\xef\xe7\x68\xdb\xbe\x5b\x8c\xf1\xb4\xdc\x7b\x7a\x38\x9c\x03\xfb\x3e\x37\xee\xe6\x85\x0c\x33\x08\xb0\xfb\x16\x18\x32\x4a\x8b\x4a\x73\x4e\x33\x5a\x02\x47\xc7\xf1\x4e\x43\x46\x50\x7c\x40\x1f\x27\x68\x19\xb5\x03\xff\x04\x00\x00\xff\xff\xd7\x81\xe3\x02\xdf\x08\x00\x00"), - }, - "/profiles/minimal.yaml": &vfsgen۰CompressedFileInfo{ - name: "minimal.yaml", - modTime: time.Date(2019, 8, 9, 20, 17, 42, 178097450, time.UTC), - uncompressedSize: 637, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x91\xbd\x6e\x2a\x41\x0c\x85\xfb\x7d\x0a\xbf\xc0\xe5\x2a\x29\xb7\xa5\xa2\x40\x42\x8a\x94\xde\xcc\x7a\x17\x27\x5e\x7b\x34\xf6\x92\xf0\xf6\xd1\x00\x4b\xf8\x11\x45\x4a\xfb\x1c\x7f\xf6\x9c\xc1\xcc\xef\x54\x9c\x4d\x5b\x60\xf5\x40\x91\x05\x7b\xb0\x2d\xd8\xfe\xef\x5f\x50\xf2\x0e\x5f\x9b\x4f\xd6\xae\x85\x55\xed\x2f\x4d\xa3\x98\x6c\x04\x95\x1a\xcf\x94\xda\x06\x20\x0a\xf6\x3d\xa7\x35\x2a\x0e\x34\x92\x46\x6d\x02\x24\x1b\xb3\x29\x69\xf8\xa9\x06\x50\x1c\xc9\x33\x26\x6a\xe1\xb8\xe5\x5f\x3a\xe1\xce\x72\x66\xb1\x98\xbd\xc7\xf9\xd1\xf4\xb7\x06\xd8\xa3\x4c\xe4\xd7\x1d\x00\xe7\x8e\x12\x96\x16\x7a\x14\xa7\x66\x46\x15\xfb\x3e\xfc\x15\x45\xba\xb7\xc3\x5b\x60\x78\x77\x2b\x54\x09\xb7\x42\xdd\xbc\xe5\x56\xdc\x99\xc7\xfd\x40\xb6\x12\x6d\xbd\x26\x9b\x70\x3a\x9f\x72\x47\xa9\xd1\x91\xd0\x48\x51\x9e\x1a\x9c\xd2\x54\x38\x9e\xea\xc9\xb4\xe7\xe1\x3e\xfa\x47\x1f\x4e\x61\x2b\xfd\xa0\x14\x3c\x07\xf1\x68\x1a\x30\xe8\x0b\x0f\xfe\x4c\xbf\x0e\x6d\x10\xdb\xa2\xcc\xcf\x9e\x9c\xd6\xcb\xcd\xcd\x27\xe4\x62\x23\xc5\x8e\xa6\x4b\xca\x15\x48\x72\x01\xfe\x04\x00\x00\xff\xff\x04\xfa\xc1\x45\x7d\x02\x00\x00"), - }, - "/profiles/sds.yaml": &vfsgen۰CompressedFileInfo{ - name: "sds.yaml", - modTime: time.Date(2019, 8, 12, 17, 34, 58, 563923005, time.UTC), - uncompressedSize: 651, - - compressedContent: []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x91\x4f\x6f\xe2\x30\x10\xc5\xef\xf9\x14\x23\xee\x10\xed\x9e\x90\x6f\x08\xf6\xc0\x4a\xbb\x8d\x68\xc5\x15\x0d\xf1\x34\xb1\x70\xc6\x91\x67\x1c\xca\xb7\xaf\x12\xa0\x84\x4a\xfd\xe7\x93\xfd\xde\xef\x8d\xed\x19\x6c\xdd\x96\xa2\xb8\xc0\x06\x1c\x8b\xa2\xf7\x33\x27\xea\xc2\xcc\x85\xbc\xfb\x85\xbe\xad\xf1\x77\x76\x70\x6c\x0d\xac\x7b\x7d\x19\x58\x63\xf0\x85\x47\xa6\x4c\x5a\x2a\x4d\x06\x20\x54\xa6\xe8\xf4\xd4\xef\x01\xca\x11\xf2\x4f\xbd\x18\x78\x46\x2f\x34\x78\x16\x15\xdf\x8c\x47\x8d\xae\x54\x03\x1a\x13\x5d\x92\x4d\x1b\x98\x58\xe5\x5c\x09\x80\x83\xa5\x45\x45\xac\x57\x61\x80\x9a\xc0\xb7\x33\x00\x31\xee\x3d\xd9\x51\xa1\xf3\x3a\xcc\x65\x8c\xf5\x60\x77\x2f\x4c\x81\xb1\x21\x03\xcb\xc5\xae\xd8\x3c\x6c\xd7\xab\x3f\x9b\x3b\x1f\xa0\x43\x9f\xc8\xc0\x64\xf2\x51\x6e\xb1\x5a\xfd\x2c\x53\xf8\x54\x39\x96\x6f\x64\x06\xed\xdd\x17\x5c\x83\x15\x99\xa1\x2f\x53\xec\x1b\x33\x3d\xcc\x25\xcb\xee\xe1\xca\x87\x3d\xfa\x6b\xb0\xe9\x67\x90\x7d\xd6\x2c\xb1\x5f\x00\x00\xc9\x4a\x81\x5a\x1b\x98\x24\x76\x2f\x26\xef\x30\xe6\x31\x71\x2e\x56\xf2\x64\x65\xd7\xa2\xd6\xb7\xb7\x27\xa1\xff\x21\x36\xe8\xff\x1e\x75\x3c\xfe\x8b\xf7\x14\x93\xe8\x31\x44\xad\x4f\x03\x30\xdc\xf4\x1a\x00\x00\xff\xff\xef\x7e\x5e\x3f\x8b\x02\x00\x00"), - }, - } - fs["/"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts"].(os.FileInfo), - fs["/profiles"].(os.FileInfo), - } - fs["/charts"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/crds"].(os.FileInfo), - fs["/charts/gateways"].(os.FileInfo), - fs["/charts/global.yaml"].(os.FileInfo), - fs["/charts/global.yaml.orig"].(os.FileInfo), - fs["/charts/istio-cni"].(os.FileInfo), - fs["/charts/istio-control"].(os.FileInfo), - fs["/charts/istio-policy"].(os.FileInfo), - fs["/charts/istio-telemetry"].(os.FileInfo), - fs["/charts/istiocoredns"].(os.FileInfo), - fs["/charts/security"].(os.FileInfo), - } - fs["/charts/crds"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/crds/Chart.yaml"].(os.FileInfo), - fs["/charts/crds/files"].(os.FileInfo), - fs["/charts/crds/kustomization.yaml"].(os.FileInfo), - fs["/charts/crds/templates"].(os.FileInfo), - } - fs["/charts/crds/files"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/crds/files/crd-10.yaml"].(os.FileInfo), - fs["/charts/crds/files/crd-11.yaml"].(os.FileInfo), - fs["/charts/crds/files/crd-12.yaml"].(os.FileInfo), - fs["/charts/crds/files/crd-certmanager-10.yaml"].(os.FileInfo), - fs["/charts/crds/files/crd-certmanager-11.yaml"].(os.FileInfo), - } - fs["/charts/crds/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/crds/templates/crds.yaml"].(os.FileInfo), - fs["/charts/crds/templates/namespaces.yaml"].(os.FileInfo), - } - fs["/charts/gateways"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/gateways/istio-egress"].(os.FileInfo), - fs["/charts/gateways/istio-ingress"].(os.FileInfo), - } - fs["/charts/gateways/istio-egress"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/gateways/istio-egress/Chart.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-egress/NOTES.txt"].(os.FileInfo), - fs["/charts/gateways/istio-egress/templates"].(os.FileInfo), - fs["/charts/gateways/istio-egress/values.yaml"].(os.FileInfo), - } - fs["/charts/gateways/istio-egress/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/gateways/istio-egress/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/gateways/istio-egress/templates/_helpers.tpl"].(os.FileInfo), - fs["/charts/gateways/istio-egress/templates/autoscale.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-egress/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-egress/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-egress/templates/preconfigured.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-egress/templates/service.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-egress/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/charts/gateways/istio-ingress"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/gateways/istio-ingress/Chart.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/NOTES.txt"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/values.yaml"].(os.FileInfo), - } - fs["/charts/gateways/istio-ingress/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/gateways/istio-ingress/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/addongateway.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/autoscale.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/certificate.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/gateway.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/hosts.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/meshexpansion.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/preconfigured.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/role.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/rolebindings.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/service.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/serviceaccount.yaml"].(os.FileInfo), - fs["/charts/gateways/istio-ingress/templates/sidecar.yaml"].(os.FileInfo), - } - fs["/charts/istio-cni"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-cni/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-cni/templates"].(os.FileInfo), - fs["/charts/istio-cni/values.yaml"].(os.FileInfo), - fs["/charts/istio-cni/values_gke.yaml"].(os.FileInfo), - } - fs["/charts/istio-cni/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-cni/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istio-cni/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/istio-cni/templates/configmap-cni.yaml"].(os.FileInfo), - fs["/charts/istio-cni/templates/daemonset.yaml"].(os.FileInfo), - fs["/charts/istio-cni/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/charts/istio-control"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-control/istio-autoinject"].(os.FileInfo), - fs["/charts/istio-control/istio-config"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery"].(os.FileInfo), - } - fs["/charts/istio-control/istio-autoinject"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-control/istio-autoinject/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/NOTES.txt"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/files"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-control/istio-autoinject/files"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-control/istio-autoinject/files/injection-template.yaml"].(os.FileInfo), - } - fs["/charts/istio-control/istio-autoinject/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-control/istio-autoinject/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/_helpers.tpl"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/configmap.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/mutatingwebhook.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/service.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/serviceaccount.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-autoinject/templates/sidecar-injector-configmap.yaml"].(os.FileInfo), - } - fs["/charts/istio-control/istio-config"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-control/istio-config/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/OWNERS"].(os.FileInfo), - fs["/charts/istio-control/istio-config/README.md"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates"].(os.FileInfo), - fs["/charts/istio-control/istio-config/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-control/istio-config/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-control/istio-config/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/_helpers.tpl"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/configmap-envoy.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/configmap-mesh.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/configmap.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/service.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/serviceaccount.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-config/templates/validatingwebhookconfiguration.yaml.tpl"].(os.FileInfo), - } - fs["/charts/istio-control/istio-discovery"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-control/istio-discovery/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/NOTES.txt"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-control/istio-discovery/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-control/istio-discovery/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/_helpers.tpl"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/autoscale.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/configmap-envoy.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/configmap.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/enable-mesh-mtls.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/service.yaml"].(os.FileInfo), - fs["/charts/istio-control/istio-discovery/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/charts/istio-policy"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-policy/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-policy/templates"].(os.FileInfo), - fs["/charts/istio-policy/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-policy/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-policy/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-policy/templates/_helpers.tpl"].(os.FileInfo), - fs["/charts/istio-policy/templates/autoscale.yaml"].(os.FileInfo), - fs["/charts/istio-policy/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istio-policy/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/istio-policy/templates/config.yaml"].(os.FileInfo), - fs["/charts/istio-policy/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istio-policy/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/istio-policy/templates/service.yaml"].(os.FileInfo), - fs["/charts/istio-policy/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/grafana"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus-operator"].(os.FileInfo), - fs["/charts/istio-telemetry/tracing"].(os.FileInfo), - } - fs["/charts/istio-telemetry/grafana"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/grafana/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/dashboards"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/fix_datasources.sh"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/grafana/dashboards"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/grafana/dashboards/galley-dashboard.json"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/dashboards/istio-mesh-dashboard.json"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/dashboards/istio-performance-dashboard.json"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/dashboards/istio-service-dashboard.json"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/dashboards/istio-workload-dashboard.json"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/dashboards/mixer-dashboard.json"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/dashboards/pilot-dashboard.json"].(os.FileInfo), - } - fs["/charts/istio-telemetry/grafana/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/grafana/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates/configmap-dashboards.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates/configmap.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates/destination-rule.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates/grafana-policy.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates/pvc.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates/service.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/grafana/templates/tests"].(os.FileInfo), - } - fs["/charts/istio-telemetry/grafana/templates/tests"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/grafana/templates/tests/test-grafana-connection.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/kiali"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/kiali/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/templates"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/kiali/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/kiali/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/templates/configmap.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/templates/demosecret.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/templates/service.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/kiali/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/mixer-telemetry"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/mixer-telemetry/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/mixer-telemetry/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/mixer-telemetry/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/autoscale.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/config.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/configmap-envoy.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/service.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/serviceaccount.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/mixer-telemetry/templates/stackdriver.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/prometheus"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/prometheus/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/prometheus/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/prometheus/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/clusterrolebindings.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/configmap.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/destination-rule.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/inrgess.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/service.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/serviceaccount.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus/templates/tests"].(os.FileInfo), - } - fs["/charts/istio-telemetry/prometheus/templates/tests"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/prometheus/templates/tests/test-prometheus-connection.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/prometheus-operator"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/prometheus-operator/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus-operator/templates"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus-operator/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/prometheus-operator/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/prometheus-operator/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus-operator/templates/prometheus.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/prometheus-operator/templates/servicemonitors.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/tracing"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/tracing/Chart.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/tracing/templates"].(os.FileInfo), - fs["/charts/istio-telemetry/tracing/values.yaml"].(os.FileInfo), - } - fs["/charts/istio-telemetry/tracing/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istio-telemetry/tracing/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istio-telemetry/tracing/templates/deployment-jaeger.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/tracing/templates/deployment-opencensus.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/tracing/templates/deployment-zipkin.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/tracing/templates/service-jaeger.yaml"].(os.FileInfo), - fs["/charts/istio-telemetry/tracing/templates/service.yaml"].(os.FileInfo), - } - fs["/charts/istiocoredns"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istiocoredns/Chart.yaml"].(os.FileInfo), - fs["/charts/istiocoredns/templates"].(os.FileInfo), - fs["/charts/istiocoredns/values.yaml"].(os.FileInfo), - } - fs["/charts/istiocoredns/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/istiocoredns/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/istiocoredns/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/istiocoredns/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/istiocoredns/templates/configmap.yaml"].(os.FileInfo), - fs["/charts/istiocoredns/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/istiocoredns/templates/service.yaml"].(os.FileInfo), - fs["/charts/istiocoredns/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/charts/security"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/security/certmanager"].(os.FileInfo), - fs["/charts/security/citadel"].(os.FileInfo), - fs["/charts/security/nodeagent"].(os.FileInfo), - } - fs["/charts/security/certmanager"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/security/certmanager/Chart.yaml"].(os.FileInfo), - fs["/charts/security/certmanager/templates"].(os.FileInfo), - fs["/charts/security/certmanager/values.yaml"].(os.FileInfo), - } - fs["/charts/security/certmanager/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/security/certmanager/templates/NOTES.txt"].(os.FileInfo), - fs["/charts/security/certmanager/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/security/certmanager/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/security/certmanager/templates/issuer.yaml"].(os.FileInfo), - fs["/charts/security/certmanager/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/security/certmanager/templates/rbac.yaml"].(os.FileInfo), - fs["/charts/security/certmanager/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/charts/security/citadel"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/security/citadel/Chart.yaml"].(os.FileInfo), - fs["/charts/security/citadel/templates"].(os.FileInfo), - fs["/charts/security/citadel/values.yaml"].(os.FileInfo), - } - fs["/charts/security/citadel/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/security/citadel/templates/NOTES.txt"].(os.FileInfo), - fs["/charts/security/citadel/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/security/citadel/templates/_helpers.tpl"].(os.FileInfo), - fs["/charts/security/citadel/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/security/citadel/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/security/citadel/templates/deployment.yaml"].(os.FileInfo), - fs["/charts/security/citadel/templates/poddisruptionbudget.yaml"].(os.FileInfo), - fs["/charts/security/citadel/templates/service.yaml"].(os.FileInfo), - fs["/charts/security/citadel/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/charts/security/nodeagent"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/security/nodeagent/Chart.yaml"].(os.FileInfo), - fs["/charts/security/nodeagent/templates"].(os.FileInfo), - fs["/charts/security/nodeagent/values.yaml"].(os.FileInfo), - } - fs["/charts/security/nodeagent/templates"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/charts/security/nodeagent/templates/_affinity.tpl"].(os.FileInfo), - fs["/charts/security/nodeagent/templates/clusterrole.yaml"].(os.FileInfo), - fs["/charts/security/nodeagent/templates/clusterrolebinding.yaml"].(os.FileInfo), - fs["/charts/security/nodeagent/templates/daemonset.yaml"].(os.FileInfo), - fs["/charts/security/nodeagent/templates/serviceaccount.yaml"].(os.FileInfo), - } - fs["/profiles"].(*vfsgen۰DirInfo).entries = []os.FileInfo{ - fs["/profiles/default.yaml"].(os.FileInfo), - fs["/profiles/demo-auth.yaml"].(os.FileInfo), - fs["/profiles/demo.yaml"].(os.FileInfo), - fs["/profiles/minimal.yaml"].(os.FileInfo), - fs["/profiles/sds.yaml"].(os.FileInfo), - } - - return fs -}() - -type vfsgen۰FS map[string]interface{} - -func (fs vfsgen۰FS) Open(path string) (http.File, error) { - path = pathpkg.Clean("/" + path) - f, ok := fs[path] - if !ok { - return nil, &os.PathError{Op: "open", Path: path, Err: os.ErrNotExist} - } - - switch f := f.(type) { - case *vfsgen۰CompressedFileInfo: - gr, err := gzip.NewReader(bytes.NewReader(f.compressedContent)) - if err != nil { - // This should never happen because we generate the gzip bytes such that they are always valid. - panic("unexpected error reading own gzip compressed bytes: " + err.Error()) - } - return &vfsgen۰CompressedFile{ - vfsgen۰CompressedFileInfo: f, - gr: gr, - }, nil - case *vfsgen۰FileInfo: - return &vfsgen۰File{ - vfsgen۰FileInfo: f, - Reader: bytes.NewReader(f.content), - }, nil - case *vfsgen۰DirInfo: - return &vfsgen۰Dir{ - vfsgen۰DirInfo: f, - }, nil - default: - // This should never happen because we generate only the above types. - panic(fmt.Sprintf("unexpected type %T", f)) - } -} - -// vfsgen۰CompressedFileInfo is a static definition of a gzip compressed file. -type vfsgen۰CompressedFileInfo struct { - name string - modTime time.Time - compressedContent []byte - uncompressedSize int64 -} - -func (f *vfsgen۰CompressedFileInfo) Readdir(count int) ([]os.FileInfo, error) { - return nil, fmt.Errorf("cannot Readdir from file %s", f.name) -} -func (f *vfsgen۰CompressedFileInfo) Stat() (os.FileInfo, error) { return f, nil } - -func (f *vfsgen۰CompressedFileInfo) GzipBytes() []byte { - return f.compressedContent -} - -func (f *vfsgen۰CompressedFileInfo) Name() string { return f.name } -func (f *vfsgen۰CompressedFileInfo) Size() int64 { return f.uncompressedSize } -func (f *vfsgen۰CompressedFileInfo) Mode() os.FileMode { return 0444 } -func (f *vfsgen۰CompressedFileInfo) ModTime() time.Time { return f.modTime } -func (f *vfsgen۰CompressedFileInfo) IsDir() bool { return false } -func (f *vfsgen۰CompressedFileInfo) Sys() interface{} { return nil } - -// vfsgen۰CompressedFile is an opened compressedFile instance. -type vfsgen۰CompressedFile struct { - *vfsgen۰CompressedFileInfo - gr *gzip.Reader - grPos int64 // Actual gr uncompressed position. - seekPos int64 // Seek uncompressed position. -} - -func (f *vfsgen۰CompressedFile) Read(p []byte) (n int, err error) { - if f.grPos > f.seekPos { - // Rewind to beginning. - err = f.gr.Reset(bytes.NewReader(f.compressedContent)) - if err != nil { - return 0, err - } - f.grPos = 0 - } - if f.grPos < f.seekPos { - // Fast-forward. - _, err = io.CopyN(ioutil.Discard, f.gr, f.seekPos-f.grPos) - if err != nil { - return 0, err - } - f.grPos = f.seekPos - } - n, err = f.gr.Read(p) - f.grPos += int64(n) - f.seekPos = f.grPos - return n, err -} -func (f *vfsgen۰CompressedFile) Seek(offset int64, whence int) (int64, error) { - switch whence { - case io.SeekStart: - f.seekPos = 0 + offset - case io.SeekCurrent: - f.seekPos += offset - case io.SeekEnd: - f.seekPos = f.uncompressedSize + offset - default: - panic(fmt.Errorf("invalid whence value: %v", whence)) - } - return f.seekPos, nil -} -func (f *vfsgen۰CompressedFile) Close() error { - return f.gr.Close() -} - -// vfsgen۰FileInfo is a static definition of an uncompressed file (because it's not worth gzip compressing). -type vfsgen۰FileInfo struct { - name string - modTime time.Time - content []byte -} - -func (f *vfsgen۰FileInfo) Readdir(count int) ([]os.FileInfo, error) { - return nil, fmt.Errorf("cannot Readdir from file %s", f.name) -} -func (f *vfsgen۰FileInfo) Stat() (os.FileInfo, error) { return f, nil } - -func (f *vfsgen۰FileInfo) NotWorthGzipCompressing() {} - -func (f *vfsgen۰FileInfo) Name() string { return f.name } -func (f *vfsgen۰FileInfo) Size() int64 { return int64(len(f.content)) } -func (f *vfsgen۰FileInfo) Mode() os.FileMode { return 0444 } -func (f *vfsgen۰FileInfo) ModTime() time.Time { return f.modTime } -func (f *vfsgen۰FileInfo) IsDir() bool { return false } -func (f *vfsgen۰FileInfo) Sys() interface{} { return nil } - -// vfsgen۰File is an opened file instance. -type vfsgen۰File struct { - *vfsgen۰FileInfo - *bytes.Reader -} - -func (f *vfsgen۰File) Close() error { - return nil -} - -// vfsgen۰DirInfo is a static definition of a directory. -type vfsgen۰DirInfo struct { - name string - modTime time.Time - entries []os.FileInfo -} - -func (d *vfsgen۰DirInfo) Read([]byte) (int, error) { - return 0, fmt.Errorf("cannot Read from directory %s", d.name) -} -func (d *vfsgen۰DirInfo) Close() error { return nil } -func (d *vfsgen۰DirInfo) Stat() (os.FileInfo, error) { return d, nil } - -func (d *vfsgen۰DirInfo) Name() string { return d.name } -func (d *vfsgen۰DirInfo) Size() int64 { return 0 } -func (d *vfsgen۰DirInfo) Mode() os.FileMode { return 0755 | os.ModeDir } -func (d *vfsgen۰DirInfo) ModTime() time.Time { return d.modTime } -func (d *vfsgen۰DirInfo) IsDir() bool { return true } -func (d *vfsgen۰DirInfo) Sys() interface{} { return nil } - -// vfsgen۰Dir is an opened dir instance. -type vfsgen۰Dir struct { - *vfsgen۰DirInfo - pos int // Position within entries for Seek and Readdir. -} - -func (d *vfsgen۰Dir) Seek(offset int64, whence int) (int64, error) { - if offset == 0 && whence == io.SeekStart { - d.pos = 0 - return 0, nil - } - return 0, fmt.Errorf("unsupported Seek in directory %s", d.name) -} - -func (d *vfsgen۰Dir) Readdir(count int) ([]os.FileInfo, error) { - if d.pos >= len(d.entries) && count > 0 { - return nil, io.EOF - } - if count <= 0 || count > len(d.entries)-d.pos { - count = len(d.entries) - d.pos - } - e := d.entries[d.pos : d.pos+count] - d.pos += count - return e, nil -} diff --git a/vendor/modules.txt b/vendor/modules.txt index d9303f90c97b..f2488623e128 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -787,7 +787,7 @@ istio.io/api/type/v1beta1 istio.io/gogo-genproto/googleapis/google/rpc istio.io/gogo-genproto/googleapis/google/api istio.io/gogo-genproto/opencensus/proto/trace/v1 -# istio.io/operator v0.0.0-20190813061052-3b21fa19e418 +# istio.io/operator v0.0.0-20190827173952-af847b66d2f9 istio.io/operator/cmd/mesh istio.io/operator/pkg/apis/istio/v1alpha2 istio.io/operator/pkg/component/component @@ -807,7 +807,8 @@ istio.io/operator/version istio.io/operator/pkg/patch istio.io/operator/pkg/component/feature istio.io/operator/pkg/util/fswatch -istio.io/operator/pkg/vfsgen +istio.io/operator/pkg/vfs +istio.io/operator/pkg/compare # istio.io/pkg v0.0.0-20190813222952-67b4f108fe0e istio.io/pkg/collateral istio.io/pkg/log @@ -909,6 +910,7 @@ k8s.io/apimachinery/pkg/util/framer k8s.io/apimachinery/pkg/conversion/queryparams k8s.io/apimachinery/pkg/runtime/serializer/protobuf k8s.io/apimachinery/pkg/util/validation/field +k8s.io/apimachinery/pkg/apis/meta/internalversion k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructuredscheme k8s.io/apimachinery/pkg/util/httpstream k8s.io/apimachinery/pkg/util/remotecommand @@ -917,7 +919,6 @@ k8s.io/apimachinery/pkg/util/mergepatch k8s.io/apimachinery/third_party/forked/golang/json k8s.io/apimachinery/pkg/apis/meta/v1beta1 k8s.io/apimachinery/third_party/forked/golang/reflect -k8s.io/apimachinery/pkg/apis/meta/internalversion k8s.io/apimachinery/third_party/forked/golang/netutil k8s.io/apimachinery/pkg/api/equality k8s.io/apimachinery/pkg/util/rand @@ -1137,12 +1138,12 @@ k8s.io/klog # k8s.io/kube-openapi v0.0.0-20190228160746-b3a7cee44a30 k8s.io/kube-openapi/pkg/util/proto # k8s.io/kubernetes v1.13.1 +k8s.io/kubernetes/pkg/apis/core k8s.io/kubernetes/pkg/controller/deployment/util k8s.io/kubernetes/pkg/controller k8s.io/kubernetes/pkg/util/labels k8s.io/kubernetes/pkg/api/legacyscheme k8s.io/kubernetes/pkg/api/v1/pod -k8s.io/kubernetes/pkg/apis/core k8s.io/kubernetes/pkg/apis/core/install k8s.io/kubernetes/pkg/apis/core/validation k8s.io/kubernetes/pkg/scheduler/api