From e187ad31858e7813ced65e29a42132b1710bab00 Mon Sep 17 00:00:00 2001 From: Eduardo Apolinario <653394+eapolinario@users.noreply.github.com> Date: Fri, 20 Oct 2023 13:02:32 -0700 Subject: [PATCH] Revert "Update k8s Dependencies (#4199)" This reverts commit 8749fceaffbfbd6aa4621009b2677ae54a8cf5ef. --- .gitignore | 1 - cmd/single/start.go | 26 +- datacatalog/go.mod | 26 +- datacatalog/go.sum | 126 +- flyteadmin/go.mod | 67 +- flyteadmin/go.sum | 387 +- .../implementations/gcp_processor_test.go | 6 +- flytecopilot/go.mod | 46 +- flytecopilot/go.sum | 171 +- .../hyperparameter_tuning_job.grpc.pb.cc | 26 + .../hyperparameter_tuning_job.grpc.pb.h | 49 + .../sagemaker/hyperparameter_tuning_job.pb.cc | 2175 ++++++ .../sagemaker/hyperparameter_tuning_job.pb.h | 1283 ++++ .../sagemaker/parameter_ranges.grpc.pb.cc | 26 + .../sagemaker/parameter_ranges.grpc.pb.h | 49 + .../plugins/sagemaker/parameter_ranges.pb.cc | 2460 +++++++ .../plugins/sagemaker/parameter_ranges.pb.h | 1308 ++++ .../plugins/sagemaker/training_job.grpc.pb.cc | 26 + .../plugins/sagemaker/training_job.grpc.pb.h | 49 + .../plugins/sagemaker/training_job.pb.cc | 2937 ++++++++ .../plugins/sagemaker/training_job.pb.h | 1780 +++++ .../sagemaker/hyperparameter_tuning_job.pb.go | 437 ++ .../hyperparameter_tuning_job.pb.validate.go | 486 ++ .../plugins/sagemaker/parameter_ranges.pb.go | 436 ++ .../sagemaker/parameter_ranges.pb.validate.go | 506 ++ .../plugins/sagemaker/training_job.pb.go | 591 ++ .../sagemaker/training_job.pb.validate.go | 617 ++ .../HyperparameterTuningJobOuterClass.java | 4497 ++++++++++++ .../sagemaker/ParameterRangesOuterClass.java | 4468 ++++++++++++ .../sagemaker/TrainingJobOuterClass.java | 6321 +++++++++++++++++ .../flyteidl/plugins/sagemaker/__init__.py | 0 .../hyperparameter_tuning_job_pb2.py | 45 + .../hyperparameter_tuning_job_pb2.pyi | 68 + .../hyperparameter_tuning_job_pb2_grpc.py | 4 + .../plugins/sagemaker/parameter_ranges_pb2.py | 43 + .../sagemaker/parameter_ranges_pb2.pyi | 70 + .../sagemaker/parameter_ranges_pb2_grpc.py | 4 + .../plugins/sagemaker/training_job_pb2.py | 50 + .../plugins/sagemaker/training_job_pb2.pyi | 88 + .../sagemaker/training_job_pb2_grpc.py | 4 + .../gen/pb_rust/flyteidl.plugins.sagemaker.rs | 493 ++ .../sagemaker/hyperparameter_tuning_job.proto | 83 + .../plugins/sagemaker/parameter_ranges.proto | 61 + .../plugins/sagemaker/training_job.proto | 119 + flyteplugins/go.mod | 68 +- flyteplugins/go.sum | 575 +- flyteplugins/go/tasks/config_load_test.go | 5 + .../core/mocks/fake_k8s_cache.go | 11 +- .../core/mocks/fake_k8s_client.go | 16 +- .../flytek8s/pod_template_store_test.go | 5 +- .../go/tasks/pluginmachinery/k8s/client.go | 81 +- .../k8s/mocks/client_builder.go | 100 + .../plugins/array/awsbatch/launcher_test.go | 2 +- .../plugins/k8s/sagemaker/builtin_training.go | 248 + .../k8s/sagemaker/builtin_training_test.go | 272 + .../plugins/k8s/sagemaker/config/config.go | 66 + .../k8s/sagemaker/config/config_flags.go | 57 + .../k8s/sagemaker/config/config_flags_test.go | 144 + .../tasks/plugins/k8s/sagemaker/constants.go | 51 + .../plugins/k8s/sagemaker/custom_training.go | 217 + .../k8s/sagemaker/custom_training_test.go | 297 + .../k8s/sagemaker/hyperparameter_tuning.go | 276 + .../sagemaker/hyperparameter_tuning_test.go | 130 + .../go/tasks/plugins/k8s/sagemaker/outputs.go | 71 + .../plugins/k8s/sagemaker/outputs_test.go | 34 + .../go/tasks/plugins/k8s/sagemaker/plugin.go | 102 + .../plugins/k8s/sagemaker/plugin_test.go | 67 + .../k8s/sagemaker/plugin_test_utils.go | 442 ++ .../k8s/sagemaker/testdata/config.yaml | 14 + .../k8s/sagemaker/testdata/config2.yaml | 14 + .../go/tasks/plugins/k8s/sagemaker/utils.go | 405 ++ .../tasks/plugins/k8s/sagemaker/utils_test.go | 438 ++ flyteplugins/go/tasks/testdata/config.yaml | 14 + flytepropeller/cmd/controller/cmd/root.go | 21 +- flytepropeller/cmd/controller/cmd/webhook.go | 30 +- flytepropeller/go.mod | 79 +- flytepropeller/go.sum | 742 +- .../pkg/compiler/validators/utils.go | 13 +- flytepropeller/pkg/controller/controller.go | 13 +- .../pkg/controller/executors/kube.go | 60 +- .../pkg/controller/executors/mocks/fake.go | 6 +- .../pkg/controller/garbage_collector.go | 6 +- .../pkg/controller/garbage_collector_test.go | 10 +- .../nodes/dynamic/dynamic_workflow_test.go | 2 +- .../nodes/task/backoff/controller.go | 2 +- .../controller/nodes/task/backoff/handler.go | 2 +- .../nodes/task/backoff/handler_test.go | 7 +- .../nodes/task/k8s/event_watcher.go | 11 +- .../nodes/task/k8s/event_watcher_test.go | 6 +- .../nodes/task/k8s/plugin_manager.go | 17 +- .../nodes/task/k8s/plugin_manager_test.go | 7 +- .../pkg/leaderelection/leader_election.go | 3 +- flytepropeller/pkg/webhook/pod_test.go | 3 +- flytepropeller/plugins/loader.go | 1 + go.mod | 74 +- go.sum | 507 +- rsts/deployment/plugins/aws/index.rst | 10 + rsts/deployment/plugins/aws/sagemaker.rst | 95 + 98 files changed, 37677 insertions(+), 787 deletions(-) create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.cc create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.h create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.cc create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.h create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.cc create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.h create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.pb.cc create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.pb.h create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.grpc.pb.cc create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.grpc.pb.h create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.pb.cc create mode 100644 flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.pb.h create mode 100644 flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.go create mode 100644 flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.validate.go create mode 100644 flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/parameter_ranges.pb.go create mode 100644 flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/parameter_ranges.pb.validate.go create mode 100644 flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/training_job.pb.go create mode 100644 flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/training_job.pb.validate.go create mode 100644 flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/HyperparameterTuningJobOuterClass.java create mode 100644 flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/ParameterRangesOuterClass.java create mode 100644 flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/TrainingJobOuterClass.java create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/__init__.py create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2.py create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2.pyi create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2_grpc.py create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2.py create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2.pyi create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2_grpc.py create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2.py create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2.pyi create mode 100644 flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2_grpc.py create mode 100644 flyteidl/gen/pb_rust/flyteidl.plugins.sagemaker.rs create mode 100644 flyteidl/protos/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto create mode 100644 flyteidl/protos/flyteidl/plugins/sagemaker/parameter_ranges.proto create mode 100644 flyteidl/protos/flyteidl/plugins/sagemaker/training_job.proto create mode 100644 flyteplugins/go/tasks/pluginmachinery/k8s/mocks/client_builder.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/builtin_training.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/builtin_training_test.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config.go create mode 100755 flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config_flags.go create mode 100755 flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config_flags_test.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/constants.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/custom_training.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/custom_training_test.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/hyperparameter_tuning.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/hyperparameter_tuning_test.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/outputs.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/outputs_test.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin_test.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin_test_utils.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/testdata/config.yaml create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/testdata/config2.yaml create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/utils.go create mode 100644 flyteplugins/go/tasks/plugins/k8s/sagemaker/utils_test.go create mode 100644 rsts/deployment/plugins/aws/sagemaker.rst diff --git a/.gitignore b/.gitignore index 646cb4bec1..81d776231a 100644 --- a/.gitignore +++ b/.gitignore @@ -34,4 +34,3 @@ dist vendor/ /docker/sandbox-bundled/images/tar rsts/_tags/ -**/bin/ \ No newline at end of file diff --git a/cmd/single/start.go b/cmd/single/start.go index 8a499dbe92..1c73d6b8a0 100644 --- a/cmd/single/start.go +++ b/cmd/single/start.go @@ -3,8 +3,6 @@ package single import ( "context" "net/http" - metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server" - ctrlWebhook "sigs.k8s.io/controller-runtime/pkg/webhook" datacatalogConfig "github.com/flyteorg/flyte/datacatalog/pkg/config" datacatalogRepo "github.com/flyteorg/flyte/datacatalog/pkg/repositories" @@ -107,30 +105,18 @@ func startPropeller(ctx context.Context, cfg Propeller) error { propellerCfg := propellerConfig.GetConfig() propellerScope := promutils.NewScope(propellerConfig.GetConfig().MetricsPrefix).NewSubScope("propeller").NewSubScope(propellerCfg.LimitNamespace) limitNamespace := "" - var namespaceConfigs map[string]cache.Config if propellerCfg.LimitNamespace != defaultNamespace { limitNamespace = propellerCfg.LimitNamespace - namespaceConfigs = map[string]cache.Config{ - limitNamespace: {}, - } } options := manager.Options{ - Cache: cache.Options{ - SyncPeriod: &propellerCfg.DownstreamEval.Duration, - DefaultNamespaces: namespaceConfigs, - }, - NewClient: func(config *rest.Config, options client.Options) (client.Client, error) { - return executors.NewFallbackClientBuilder(propellerScope.NewSubScope("kube")).Build(nil, config, options) - }, - Metrics: metricsserver.Options{ - // Disable metrics serving - BindAddress: "0", + Namespace: limitNamespace, + SyncPeriod: &propellerCfg.DownstreamEval.Duration, + NewClient: func(cache cache.Cache, config *rest.Config, options client.Options, uncachedObjects ...client.Object) (client.Client, error) { + return executors.NewFallbackClientBuilder(propellerScope.NewSubScope("kube")).Build(cache, config, options) }, - WebhookServer: ctrlWebhook.NewServer(ctrlWebhook.Options{ - CertDir: webhookConfig.GetConfig().CertDir, - Port: webhookConfig.GetConfig().ListenPort, - }), + CertDir: webhookConfig.GetConfig().CertDir, + Port: webhookConfig.GetConfig().ListenPort, } mgr, err := propellerEntrypoint.CreateControllerManager(ctx, propellerCfg, options) diff --git a/datacatalog/go.mod b/datacatalog/go.mod index f350b1e249..f33c31e8cb 100644 --- a/datacatalog/go.mod +++ b/datacatalog/go.mod @@ -46,7 +46,7 @@ require ( github.com/flyteorg/stow v0.3.7 // indirect github.com/fsnotify/fsnotify v1.5.1 // indirect github.com/ghodss/yaml v1.0.0 // indirect - github.com/go-logr/logr v1.2.4 // indirect + github.com/go-logr/logr v0.4.0 // indirect github.com/golang-jwt/jwt/v4 v4.4.1 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/google/go-cmp v0.5.9 // indirect @@ -87,12 +87,12 @@ require ( github.com/stretchr/objx v0.5.0 // indirect github.com/subosito/gotenv v1.2.0 // indirect go.opencensus.io v0.24.0 // indirect - golang.org/x/crypto v0.11.0 // indirect - golang.org/x/net v0.13.0 // indirect - golang.org/x/oauth2 v0.8.0 // indirect - golang.org/x/sys v0.10.0 // indirect - golang.org/x/text v0.11.0 // indirect - golang.org/x/time v0.3.0 // indirect + golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f // indirect + golang.org/x/net v0.9.0 // indirect + golang.org/x/oauth2 v0.7.0 // indirect + golang.org/x/sys v0.7.0 // indirect + golang.org/x/text v0.9.0 // indirect + golang.org/x/time v0.1.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/api v0.114.0 // indirect google.golang.org/appengine v1.6.7 // indirect @@ -101,10 +101,9 @@ require ( gopkg.in/ini.v1 v1.66.4 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apimachinery v0.28.2 // indirect + k8s.io/apimachinery v0.20.2 // indirect k8s.io/client-go v0.0.0-20210217172142-7279fc64d847 // indirect - k8s.io/klog/v2 v2.100.1 // indirect - k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 // indirect + k8s.io/klog/v2 v2.5.0 // indirect ) replace ( @@ -114,11 +113,4 @@ replace ( github.com/flyteorg/flyte/flyteplugins => ../flyteplugins github.com/flyteorg/flyte/flytepropeller => ../flytepropeller github.com/flyteorg/flyte/flytestdlib => ../flytestdlib - - k8s.io/api => k8s.io/api v0.28.2 - k8s.io/apimachinery => k8s.io/apimachinery v0.28.2 - k8s.io/client-go => k8s.io/client-go v0.28.2 - k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f - sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.16.2 - ) diff --git a/datacatalog/go.sum b/datacatalog/go.sum index 1c66ba7844..672f959a95 100644 --- a/datacatalog/go.sum +++ b/datacatalog/go.sum @@ -58,8 +58,10 @@ github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0 h1:0nJeKDmB7a1a8RDMj github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0/go.mod h1:mbwxKc/fW+IkF0GG591MuXw0KuEQBDkeRoZ9vmVJPxg= github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.11.12/go.mod h1:eipySxLmqSyC5s5k1CLupqet0PSENBEDP93LQ9a8QYw= github.com/Azure/go-autorest/autorest v0.11.27 h1:F3R3q42aWytozkV8ihzcgMO4OA4cuqr3bNlsEuF6//A= github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U= +github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= github.com/Azure/go-autorest/autorest/adal v0.9.18 h1:kLnPsRjzZZUF3K5REu/Kc+qMQrvuza2bwSnNdhmzLfQ= github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= @@ -68,6 +70,7 @@ github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935 github.com/Azure/go-autorest/autorest/mocks v0.4.2 h1:PGN4EDXnuQbojHbU0UWoNvmu9AGVwYHG9/fkDYhtAfw= github.com/Azure/go-autorest/autorest/mocks v0.4.2/go.mod h1:Vy7OitM9Kei0i1Oj+LvyAWMXJHeKH1MVlzFugfVrmyU= github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= +github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg= github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo= @@ -77,9 +80,12 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03 github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/Masterminds/semver/v3 v3.1.1 h1:hLg3sBzpNErnxhQtUy/mmLR2I9foDujNK030IGemrRc= github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= github.com/Selvatico/go-mocket v1.0.7 h1:sXuFMnMfVL9b/Os8rGXPgbOFbr4HJm8aHsulD/uMTUk= github.com/Selvatico/go-mocket v1.0.7/go.mod h1:4gO2v+uQmsL+jzQgLANy3tyEFzaEzHlymVbZ3GP2Oes= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= @@ -88,6 +94,7 @@ github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRF github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= github.com/andybalholm/cascadia v1.1.0/go.mod h1:GsXiBklL0woXo1j/WYWtSYYC4ouU9PqHO0sqidkEA4Y= +github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/aws/aws-sdk-go v1.44.2 h1:5VBk5r06bgxgRKVaUtm1/4NT/rtrnH2E4cnAYv5zgQc= github.com/aws/aws-sdk-go v1.44.2/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -122,18 +129,27 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dnaeon/go-vcr v1.1.0 h1:ReYa/UBrRyQdant9B4fNHGoCNKw6qh6P0fsdGmZpR7c= github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko= +github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/flyteorg/stow v0.3.7 h1:Cx7j8/Ux6+toD5hp5fy++927V+yAcAttDeQAlUD/864= github.com/flyteorg/stow v0.3.7/go.mod h1:5dfBitPM004dwaZdoVylVjxFT4GWAgI0ghAndhNUzCo= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/fsnotify/fsnotify v1.5.1 h1:mZcQUHVQUQWoPXXtuf9yuEXKudkV2sx1E06UadKWpgI= github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU= +github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= @@ -145,14 +161,24 @@ github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vb github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= -github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= -github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v0.4.0 h1:K7/B1jt6fIBQVd4Owv2MqGQClcgf0R266+7C/QjRcLc= +github.com/go-logr/logr v0.4.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= +github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= +github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= +github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gofrs/uuid v4.2.0+incompatible h1:yyYWMnhkhrKwwr8gAOcOCYxOOscHgDS9yZgBrnJfGa0= github.com/gofrs/uuid v4.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt v3.2.1+incompatible h1:73Z+4BJcrTC+KczS6WvTPvRGOp1WmfEP4Q1lOd9Z/+c= github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= github.com/golang-jwt/jwt/v4 v4.2.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= @@ -207,6 +233,7 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= @@ -223,6 +250,7 @@ github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -232,13 +260,18 @@ github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+ github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.7.1 h1:gF4c0zjUP2H/s/hEGyLA3I0fA2ZWjzYiONAD6cvPr8A= github.com/googleapis/gax-go/v2 v2.7.1/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI= +github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= +github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= @@ -308,6 +341,8 @@ github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1 github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= +github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= +github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= @@ -315,8 +350,10 @@ github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxv github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= github.com/kr/pty v1.1.8/go.mod h1:O1sed60cT9XZ5uDucP5qwvh+TE3NnUj51EiZO/lmSfw= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= @@ -328,6 +365,8 @@ github.com/lib/pq v1.10.2 h1:AqzbZs4ZoCBp+GtejcpCpcxM3zlSMx29dXbUSeVtJb8= github.com/lib/pq v1.10.2/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= +github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= @@ -342,22 +381,32 @@ github.com/mattn/go-sqlite3 v1.14.0 h1:mLyGNKR8+Vv9CAU7PphKa2hkEqxxhn8i32J6FPj1/ github.com/mattn/go-sqlite3 v1.14.0/go.mod h1:JIl7NbARA7phWnGvh0LKTyg7S9BA+6gx71ShQilpsus= github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/modocache/gover v0.0.0-20171022184752-b58185e213c5/go.mod h1:caMODM3PzxT8aQXRPkAt8xlV/e7d7w8GM5g0fa5F0D8= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/ncw/swift v1.0.53 h1:luHjjTNtekIEvHg5KdAFIBaH7bWfNkefwFnpDffSIks= github.com/ncw/swift v1.0.53/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/pelletier/go-toml v1.9.4 h1:tjENF6MfZAg8e4ZmZTeWaWiT2vXtsoO6+iuOjFhECwM= github.com/pelletier/go-toml v1.9.4/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.0.0-beta.8 h1:dy81yyLYJDwMTifq24Oi/IslOslRrDSb3jwDggjz3Z0= github.com/pelletier/go-toml/v2 v2.0.0-beta.8/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4 h1:Qj1ukM4GlMWXNdMBuXcXfz/Kw9s1qm0CLY32QxuSImI= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -389,7 +438,6 @@ github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1 github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ= github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc= @@ -406,6 +454,7 @@ github.com/sirupsen/logrus v1.7.0 h1:ShrD1U9pZB12TX0cVy0DtePoCH97K8EtX+mg7ZARUtM github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw= github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA= @@ -414,6 +463,7 @@ github.com/spf13/cobra v1.4.0 h1:y+wJpx64xcgO1V+RcnwW0LEHxTKRi2ZDPSBjWnrg88Q= github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= +github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.11.0 h1:7OX/1FS6n7jHD1zGrZTM7WtY13ZELRyosK4k93oPr44= @@ -428,6 +478,7 @@ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXf github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= @@ -465,9 +516,11 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= @@ -475,8 +528,8 @@ golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5y golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA= -golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= +golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f h1:OeJjE6G4dgCY4PIXvIRQbE8+RX+uXZyGhUy/ksMGJoc= +golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -513,6 +566,7 @@ golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -526,6 +580,7 @@ golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -550,8 +605,8 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.13.0 h1:Nvo8UFsZ8X3BhAC9699Z1j7XQ3rsZnUUm7jfBEk1ueY= -golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= +golang.org/x/net v0.9.0 h1:aWJ/m6xSmxWBx+V0XRHTlrYrPG56jKsLdTFmsSsCzOM= +golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -562,8 +617,8 @@ golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.8.0 h1:6dkIjl3j3LtZ/O3sTgZTMsLKSftL/B8Zgq4huOIIUu8= -golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE= +golang.org/x/oauth2 v0.7.0 h1:qe6s0zUXlPX80/dITx3440hWZ7GwMwgDDyrSGTPJG/g= +golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -576,6 +631,7 @@ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -586,10 +642,12 @@ golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -612,6 +670,7 @@ golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -626,8 +685,8 @@ golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA= -golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.7.0 h1:3jlCCIQZPdOYu1h8BkNvLz8Kgwtae2cagcG/VamtZRU= +golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -639,14 +698,16 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4= -golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= -golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.1.0 h1:xYY+Bajn2a7VBmTM5GikTmnK8ZuX8YgnQCqZpbBNtmA= +golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= @@ -657,6 +718,7 @@ golang.org/x/tools v0.0.0-20190425163242-31fd60d6bfdc/go.mod h1:RgjU9mgBXZiqYHBn golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -688,6 +750,7 @@ golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roY golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= @@ -696,6 +759,7 @@ golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20201208233053-a543418bbed2/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -811,9 +875,12 @@ gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/inconshreveable/log15.v2 v2.0.0-20180818164646-67afb5ed74ec/go.mod h1:aPpfJ7XW+gOuirDoZ8gHhLh3kZ1B08FtV2bbmy7Jv3s= +gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/ini.v1 v1.66.4 h1:SsAcf+mM7mRZo2nJNGt8mZCjG8ZRaNGMURJw7BsIST4= gopkg.in/ini.v1 v1.66.4/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= @@ -840,14 +907,23 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -k8s.io/apimachinery v0.28.2 h1:KCOJLrc6gu+wV1BYgwik4AF4vXOlVJPdiqn0yAWWwXQ= -k8s.io/apimachinery v0.28.2/go.mod h1:RdzF87y/ngqk9H4z3EL2Rppv5jj95vGS/HaFXrLDApU= -k8s.io/client-go v0.28.2 h1:DNoYI1vGq0slMBN/SWKMZMw0Rq+0EQW6/AK4v9+3VeY= -k8s.io/client-go v0.28.2/go.mod h1:sMkApowspLuc7omj1FOSUxSoqjr+d5Q0Yc0LOFnYFJY= -k8s.io/klog/v2 v2.100.1 h1:7WCHKK6K8fNhTqfBhISHQ97KrnJNFZMcQvKp7gP/tmg= -k8s.io/klog/v2 v2.100.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 h1:qY1Ad8PODbnymg2pRbkyMT/ylpTrCM8P2RJ0yroCyIk= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/api v0.0.0-20210217171935-8e2decd92398/go.mod h1:60tmSUpHxGPFerNHbo/ayI2lKxvtrhbxFyXuEIWJd78= +k8s.io/apimachinery v0.0.0-20210217011835-527a61b4dffe/go.mod h1:Z7ps/g0rjlTeMstYrMOUttJfT2Gg34DEaG/f2PYLCWY= +k8s.io/apimachinery v0.20.2 h1:hFx6Sbt1oG0n6DZ+g4bFt5f6BoMkOjKWsQFu077M3Vg= +k8s.io/apimachinery v0.20.2/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/client-go v0.0.0-20210217172142-7279fc64d847 h1:d+LBRNY3c/KGp7lDblRlUJkayx4Vla7WUTIazoGMdYo= +k8s.io/client-go v0.0.0-20210217172142-7279fc64d847/go.mod h1:q0EaghmVye2uui19vxSZ2NG6ssgUWgjudO6vrwXneSI= +k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.5.0 h1:8mOnjf1RmUPW6KRqQCfYSZq/K20Unmp3IhuZUhxl8KI= +k8s.io/klog/v2 v2.5.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= +k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= +k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.3/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= diff --git a/flyteadmin/go.mod b/flyteadmin/go.mod index dd288ad171..72806a06af 100644 --- a/flyteadmin/go.mod +++ b/flyteadmin/go.mod @@ -4,15 +4,15 @@ go 1.19 require ( cloud.google.com/go/iam v0.13.0 - cloud.google.com/go/storage v1.29.0 + cloud.google.com/go/storage v1.28.1 github.com/NYTimes/gizmo v1.3.6 github.com/Selvatico/go-mocket v1.0.7 github.com/aws/aws-sdk-go v1.44.2 - github.com/benbjohnson/clock v1.3.0 + github.com/benbjohnson/clock v1.1.0 github.com/cloudevents/sdk-go/binding/format/protobuf/v2 v2.8.0 github.com/cloudevents/sdk-go/v2 v2.8.0 github.com/coreos/go-oidc v2.2.1+incompatible - github.com/evanphx/json-patch v5.6.0+incompatible + github.com/evanphx/json-patch v4.12.0+incompatible github.com/flyteorg/flyte/flyteidl v0.0.0-00010101000000-000000000000 github.com/flyteorg/flyte/flyteplugins v0.0.0-00010101000000-000000000000 github.com/flyteorg/flyte/flytepropeller v0.0.0-00010101000000-000000000000 @@ -21,7 +21,7 @@ require ( github.com/ghodss/yaml v1.0.0 github.com/go-gormigrate/gormigrate/v2 v2.0.0 github.com/gogo/protobuf v1.3.2 - github.com/golang-jwt/jwt/v4 v4.5.0 + github.com/golang-jwt/jwt/v4 v4.4.1 github.com/golang/glog v1.1.0 github.com/golang/protobuf v1.5.3 github.com/google/uuid v1.3.0 @@ -39,26 +39,26 @@ require ( github.com/ory/fosite v0.42.2 github.com/ory/x v0.0.214 github.com/pkg/errors v0.9.1 - github.com/prometheus/client_golang v1.16.0 - github.com/prometheus/client_model v0.4.0 + github.com/prometheus/client_golang v1.12.1 + github.com/prometheus/client_model v0.2.0 github.com/robfig/cron/v3 v3.0.0 github.com/sendgrid/sendgrid-go v3.10.0+incompatible - github.com/spf13/cobra v1.7.0 + github.com/spf13/cobra v1.4.0 github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.8.4 - golang.org/x/oauth2 v0.8.0 + golang.org/x/oauth2 v0.7.0 golang.org/x/time v0.3.0 google.golang.org/api v0.114.0 - google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 + google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 google.golang.org/grpc v1.56.1 google.golang.org/protobuf v1.30.0 gorm.io/driver/mysql v1.4.4 gorm.io/driver/postgres v1.4.5 gorm.io/driver/sqlite v1.1.1 gorm.io/gorm v1.24.1-0.20221019064659-5dd2bb482755 - k8s.io/api v0.28.2 - k8s.io/apimachinery v0.28.2 - k8s.io/client-go v0.28.1 + k8s.io/api v0.24.1 + k8s.io/apimachinery v0.24.1 + k8s.io/client-go v0.24.1 sigs.k8s.io/controller-runtime v0.12.1 ) @@ -92,13 +92,12 @@ require ( github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21 // indirect github.com/eapache/queue v1.1.0 // indirect github.com/emicklei/go-restful/v3 v3.9.0 // indirect - github.com/evanphx/json-patch/v5 v5.6.0 // indirect github.com/fatih/color v1.13.0 // indirect - github.com/felixge/httpsnoop v1.0.3 // indirect - github.com/fsnotify/fsnotify v1.6.0 // indirect - github.com/go-logr/logr v1.2.4 // indirect + github.com/felixge/httpsnoop v1.0.1 // indirect + github.com/fsnotify/fsnotify v1.5.1 // indirect + github.com/go-logr/logr v1.2.3 // indirect github.com/go-openapi/jsonpointer v0.19.6 // indirect - github.com/go-openapi/jsonreference v0.20.2 // indirect + github.com/go-openapi/jsonreference v0.20.1 // indirect github.com/go-openapi/swag v0.22.3 // indirect github.com/go-sql-driver/mysql v1.7.0 // indirect github.com/go-test/deep v1.0.7 // indirect @@ -106,7 +105,7 @@ require ( github.com/gofrs/uuid v4.2.0+incompatible // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/snappy v0.0.3 // indirect - github.com/google/gnostic-models v0.6.8 // indirect + github.com/google/gnostic v0.5.7-v3refs // indirect github.com/google/go-cmp v0.5.9 // indirect github.com/google/gofuzz v1.2.0 // indirect github.com/googleapis/enterprise-certificate-proxy v0.2.3 // indirect @@ -114,7 +113,7 @@ require ( github.com/hashicorp/go-uuid v1.0.2 // indirect github.com/hashicorp/golang-lru v0.5.4 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/jackc/chunkreader/v2 v2.0.1 // indirect github.com/jackc/pgio v1.0.0 // indirect github.com/jackc/pgpassfile v1.0.0 // indirect @@ -137,10 +136,10 @@ require ( github.com/lib/pq v1.10.4 // indirect github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.12 // indirect - github.com/mattn/go-isatty v0.0.16 // indirect + github.com/mattn/go-isatty v0.0.14 // indirect github.com/mattn/go-sqlite3 v2.0.3+incompatible // indirect github.com/mattn/goveralls v0.0.6 // indirect - github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect + github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect @@ -155,10 +154,10 @@ require ( github.com/pierrec/lz4 v2.5.2+incompatible // indirect github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/prometheus/procfs v0.10.1 // indirect + github.com/prometheus/procfs v0.7.3 // indirect github.com/rcrowley/go-metrics v0.0.0-20200313005456-10cdbea86bc0 // indirect github.com/sendgrid/rest v2.6.8+incompatible // indirect - github.com/sirupsen/logrus v1.9.0 // indirect + github.com/sirupsen/logrus v1.8.1 // indirect github.com/spf13/afero v1.9.2 // indirect github.com/spf13/cast v1.4.1 // indirect github.com/spf13/jwalterweatherman v1.1.0 // indirect @@ -176,8 +175,6 @@ require ( golang.org/x/tools v0.13.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.66.4 // indirect gopkg.in/jcmturner/aescts.v1 v1.0.1 // indirect @@ -187,7 +184,7 @@ require ( gopkg.in/square/go-jose.v2 v2.5.2-0.20210529014059-a5c7eec3c614 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apiextensions-apiserver v0.28.0 // indirect + k8s.io/apiextensions-apiserver v0.24.1 // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/yaml v1.3.0 // indirect ) @@ -199,12 +196,13 @@ require ( github.com/cloudevents/sdk-go/protocol/kafka_sarama/v2 v2.8.0 github.com/imdario/mergo v0.3.13 // indirect github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021 // indirect - github.com/prometheus/common v0.44.0 // indirect - go.uber.org/multierr v1.11.0 // indirect - go.uber.org/zap v1.25.0 // indirect - k8s.io/klog/v2 v2.100.1 // indirect - k8s.io/kube-openapi v0.0.0-20230717233707-2695361300d9 // indirect - k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 // indirect + github.com/prometheus/common v0.32.1 // indirect + go.uber.org/atomic v1.7.0 // indirect + go.uber.org/multierr v1.6.0 // indirect + go.uber.org/zap v1.19.1 // indirect + k8s.io/klog/v2 v2.90.1 // indirect + k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f // indirect + k8s.io/utils v0.0.0-20230209194617-a36077c30491 // indirect sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect ) @@ -220,9 +218,4 @@ replace ( github.com/flyteorg/flyte/flytepropeller => ../flytepropeller github.com/flyteorg/flyte/flytestdlib => ../flytestdlib github.com/robfig/cron/v3 => github.com/unionai/cron/v3 v3.0.2-0.20220915080349-5790c370e63a - k8s.io/api => k8s.io/api v0.28.2 - k8s.io/apimachinery => k8s.io/apimachinery v0.28.2 - k8s.io/client-go => k8s.io/client-go v0.28.2 - k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f - sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.16.2 ) diff --git a/flyteadmin/go.sum b/flyteadmin/go.sum index dba5520a03..7604bb29ec 100644 --- a/flyteadmin/go.sum +++ b/flyteadmin/go.sum @@ -20,6 +20,9 @@ cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHOb cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= cloud.google.com/go v0.75.0/go.mod h1:VGuuCn7PG0dwsd5XPVm2Mm3wlh3EL55/79EKB6hlPTY= +cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= +cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= +cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= cloud.google.com/go v0.110.0 h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys= cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= @@ -34,6 +37,7 @@ cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGB cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= +cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk= cloud.google.com/go/iam v0.13.0 h1:+CmB+K0J/33d0zSQ9SlFWUeCCEn5XJA0ZMZ3pHE9u8k= cloud.google.com/go/iam v0.13.0/go.mod h1:ljOg+rcNfzZ5d6f1nAUJ8ZIxOaZUVoS14bKCtaLZ/D0= cloud.google.com/go/kms v1.10.1 h1:7hm1bRqGCA1GBRQUrp831TwJ9TWhP+tvLuP497CQS2g= @@ -51,8 +55,8 @@ cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohl cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= -cloud.google.com/go/storage v1.29.0 h1:6weCgzRvMg7lzuUurI4697AqIRPU1SvzHhynwpW31jI= -cloud.google.com/go/storage v1.29.0/go.mod h1:4puEjyTKnku6gfKoTfNOU/W+a9JyuVNxjpS5GBrB8h4= +cloud.google.com/go/storage v1.28.1 h1:F5QDG5ChchaAVQhINh24U99OWHURqrW8OmQcGKXcbgI= +cloud.google.com/go/storage v1.28.1/go.mod h1:Qnisd4CqDdo6BGs2AD5LLnEsmSQ80wQ5ogcBBKhU86Y= contrib.go.opencensus.io/exporter/stackdriver v0.13.1/go.mod h1:z2tyTZtPmQ2HvWH4cOmVDgtY+1lomfKdbLnkJvZdc8c= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= github.com/Azure/azure-sdk-for-go v63.4.0+incompatible h1:fle3M5Q7vr8auaiPffKyUQmLbvYeqpw30bKU6PrWJFo= @@ -65,10 +69,13 @@ github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.2/go.mod h1:CdSJQNNzZhCkwDaV github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0 h1:0nJeKDmB7a1a8RDMjTltahlPsaNlWjq/LpkZleSwINk= github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0/go.mod h1:mbwxKc/fW+IkF0GG591MuXw0KuEQBDkeRoZ9vmVJPxg= github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= github.com/Azure/go-autorest/autorest v0.11.27 h1:F3R3q42aWytozkV8ihzcgMO4OA4cuqr3bNlsEuF6//A= github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U= +github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= github.com/Azure/go-autorest/autorest/adal v0.9.18 h1:kLnPsRjzZZUF3K5REu/Kc+qMQrvuza2bwSnNdhmzLfQ= github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= @@ -88,8 +95,8 @@ github.com/DATA-DOG/go-sqlmock v1.3.3/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q github.com/DataDog/datadog-go v3.4.1+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/DataDog/datadog-go v4.0.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/DataDog/opencensus-go-exporter-datadog v0.0.0-20191210083620-6965a1cfed68/go.mod h1:gMGUEe16aZh0QN941HgDjwrdjU4iTthPoz2/AtDRADE= -github.com/Masterminds/semver v1.4.2 h1:WBLTQ37jOCzSLtXNdoo8bNM8876KhNqOKvrlGITgsTc= github.com/Masterminds/semver v1.4.2/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= +github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww= github.com/Masterminds/semver/v3 v3.0.3/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= github.com/Masterminds/semver/v3 v3.1.1 h1:hLg3sBzpNErnxhQtUy/mmLR2I9foDujNK030IGemrRc= github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= @@ -97,6 +104,8 @@ github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcy github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA= github.com/NYTimes/gizmo v1.3.6 h1:K+GRagPdAxojsT1TlTQlMkTeOmgfLxSdvuOhdki7GG0= github.com/NYTimes/gizmo v1.3.6/go.mod h1:8S8QVnITA40p/1jGsUMcPI8R9SSKkoKu+8WF13s9Uhw= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= +github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= github.com/NYTimes/logrotate v1.0.0/go.mod h1:GxNz1cSw1c6t99PXoZlw+nm90H6cyQyrH66pjVv7x88= github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk= github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE= @@ -116,11 +125,19 @@ github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMx github.com/ajg/form v0.0.0-20160822230020-523a5da1a92f/go.mod h1:uL1WgH+h2mgNtvBq0339dVnzXdBETtL2LeUXaIv25UY= github.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= github.com/andybalholm/cascadia v1.1.0/go.mod h1:GsXiBklL0woXo1j/WYWtSYYC4ouU9PqHO0sqidkEA4Y= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/antlr/antlr4/runtime/Go/antlr v0.0.0-20210826220005-b48c857c3a0e/go.mod h1:F7bn7fEU90QkQ3tnmaTx3LTKLEDqnwWODIYppRQ5hnY= +github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= +github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= +github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/asaskevich/govalidator v0.0.0-20180720115003-f9ffefc3facf/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/asaskevich/govalidator v0.0.0-20200108200545-475eaeb16496/go.mod h1:oGkLhpf+kjZl6xBf758TQhh5XrAeiJv/7FRz/2spLIg= @@ -132,14 +149,18 @@ github.com/aws/aws-sdk-go v1.31.3/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU github.com/aws/aws-sdk-go v1.44.2 h1:5VBk5r06bgxgRKVaUtm1/4NT/rtrnH2E4cnAYv5zgQc= github.com/aws/aws-sdk-go v1.44.2/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= -github.com/benbjohnson/clock v1.3.0 h1:ip6w0uFQkncKQ979AypyG0ER7mqUSBdKLOgAle/AT8A= -github.com/benbjohnson/clock v1.3.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= +github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= +github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8= +github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1 h1:VRtJdDi2lqc3MFwmouppm2jlm6icF+7H3WYKpLENMTo= github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1/go.mod h1:jvdWlw8vowVGnZqSDC7yhPd7AifQeQbRDkZcQXV2nRg= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bketelsen/crypt v0.0.3-0.20200106085610-5cbc8cc4026c/go.mod h1:MKsuJmJgSg28kpZDP6UIiPt0e0Oz0kqKNGyRaWEPv84= +github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= github.com/bmatcuk/doublestar/v2 v2.0.3/go.mod h1:QMmcs3H2AUQICWhfzLXz+IYln8lRQmTZRptLie8RgRw= github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= github.com/bradfitz/gomemcache v0.0.0-20180710155616-bc664df96737 h1:rRISKWyXfVxvoa702s91Zl5oREZTrR3yv+tXrrX7G/g= @@ -148,8 +169,12 @@ github.com/cenkalti/backoff v2.1.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QH github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM= github.com/cenkalti/backoff/v3 v3.0.0/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= +github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927 h1:SKI1/fuSdodxmNNyVBR8d7X/HuLnRpvvFO0AgyQk764= @@ -167,11 +192,15 @@ github.com/cloudevents/sdk-go/v2 v2.8.0/go.mod h1:GpCBmUj7DIRiDhVvsK5d6WCbgTWs8D github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cockroachdb/apd v1.1.0 h1:3LFP3629v+1aKXU5Q37mxmRxX/pIu1nijXydLShEq5I= github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ= github.com/cockroachdb/cockroach-go v0.0.0-20181001143604-e0a95dfd547c/go.mod h1:XGLbWH/ujMcbPbhZq52Nv6UrCghb1yGn//133kEsvDk= github.com/cockroachdb/cockroach-go v0.0.0-20190925194419-606b3d062051/go.mod h1:XGLbWH/ujMcbPbhZq52Nv6UrCghb1yGn//133kEsvDk= github.com/cockroachdb/cockroach-go v0.0.0-20200312223839-f565e4789405/go.mod h1:XGLbWH/ujMcbPbhZq52Nv6UrCghb1yGn//133kEsvDk= +github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo= +github.com/cockroachdb/errors v1.2.4/go.mod h1:rQD95gz6FARkaKkQXUksEje/d9a6wBJoCr5oaCLELYA= +github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u985jwjWRlyHXQbwatDASoW0RMlZ/3i9yJHE2xLkI= github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI= github.com/codegangsta/negroni v1.0.0/go.mod h1:v0y3T5G7Y1UlFfyxFn/QLRU4a2EuNau2iZY63YTKWo0= github.com/containerd/containerd v1.4.3/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= @@ -182,18 +211,23 @@ github.com/coocood/freecache v1.1.1 h1:uukNF7QKCZEdZ9gAV7WQzvh0SbjwdMF6m3x3rxEka github.com/coocood/freecache v1.1.1/go.mod h1:OKrEjkGVoxZhyWAJoeFi5BMLUJm2Tit0kpGkIr7NGYY= github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk= +github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= github.com/coreos/go-oidc v2.2.1+incompatible h1:mh48q/BqXqgjVHpy2ZY7WnWAbenxRjsz9N1i1YxjHAk= github.com/coreos/go-oidc v2.2.1+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE= github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= @@ -219,6 +253,7 @@ github.com/docker/docker v17.12.0-ce-rc1.0.20201201034508-7d75c1d40d88+incompati github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v0.0.0-20180713052910-9f541cc9db5d/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= @@ -231,7 +266,10 @@ github.com/eapache/queue v1.1.0 h1:YOEu7KNc61ntiQlcEeUIoDTJ2o8mQznoNvUhiigpIqc= github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I= github.com/elastic/go-sysinfo v1.1.1/go.mod h1:i1ZYdU10oLNfRzq4vq62BEwD2fH8KaWh6eh0ikPT9F0= github.com/elastic/go-windows v1.0.0/go.mod h1:TsU0Nrp7/y3+VwE82FoZF8gC/XFg/Elz6CcloAxnPgU= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= github.com/elazarl/goproxy v0.0.0-20181003060214-f58a169a71a5/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= github.com/emicklei/go-restful/v3 v3.9.0 h1:XwGDlfxEnQZzuopoqxwSEllNcCOM9DhhFyhFIIGKwxE= github.com/emicklei/go-restful/v3 v3.9.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g= @@ -240,24 +278,25 @@ github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.m github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U= -github.com/evanphx/json-patch v5.6.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch/v5 v5.6.0 h1:b91NhWfaz02IuVxO9faSllyAtNXHMPkC5J8sJCLunww= -github.com/evanphx/json-patch/v5 v5.6.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= +github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84= +github.com/evanphx/json-patch v4.12.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/fatih/structs v1.0.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= +github.com/felixge/httpsnoop v1.0.1 h1:lvB5Jl89CsZtGIWuTcDM1E/vkVs49/Ml7JJe07l8SPQ= github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/felixge/httpsnoop v1.0.3 h1:s/nj+GCswXYzN5v2DpNMuMQYe+0DDwt5WVCU6CWBdXk= -github.com/felixge/httpsnoop v1.0.3/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/flyteorg/stow v0.3.7 h1:Cx7j8/Ux6+toD5hp5fy++927V+yAcAttDeQAlUD/864= github.com/flyteorg/stow v0.3.7/go.mod h1:5dfBitPM004dwaZdoVylVjxFT4GWAgI0ghAndhNUzCo= github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/fortytw2/leaktest v1.3.0 h1:u8491cBMTQ8ft8aeV+adlcytMZylmA5nnwwkRZjI8vw= github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g= github.com/frankban/quicktest v1.4.1/go.mod h1:36zfPVQyHxymz4cH7wlDmVwDrJuljRB60qkgn7rorfQ= @@ -266,8 +305,10 @@ github.com/frankban/quicktest v1.10.0 h1:Gfh+GAJZOAoKZsIZeZbdn2JF10kN1XHNvjsvQK8 github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= -github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= -github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= +github.com/fsnotify/fsnotify v1.5.1 h1:mZcQUHVQUQWoPXXtuf9yuEXKudkV2sx1E06UadKWpgI= +github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU= +github.com/getkin/kin-openapi v0.76.0/go.mod h1:660oXbgy5JFMKreazJaQTw7o+X00qeSyhcnluiMv+Xg= +github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/globalsign/mgo v0.0.0-20180905125535-1ca0a4f7cbcb/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= @@ -284,10 +325,13 @@ github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vb github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= +github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= -github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/zapr v1.2.4 h1:QHVo+6stLbfJmYGkQ7uGHUCu5hnAFAj6mDe6Ea0SeOo= +github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0= +github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/zapr v1.2.0 h1:n4JnPI1T3Qq1SFEi/F8rwLrZERp2bso19PJZDB9dayk= +github.com/go-logr/zapr v1.2.0/go.mod h1:Qa4Bsj2Vb+FAVeAKsLD8RLQ+YRJB8YDmOAKxaBQf7Ro= github.com/go-openapi/analysis v0.0.0-20180825180245-b006789cd277/go.mod h1:k70tL6pCuVxPJOHXQ+wIac1FUrvNkHolPie/cLEU6hI= github.com/go-openapi/analysis v0.17.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= github.com/go-openapi/analysis v0.18.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= @@ -305,14 +349,16 @@ github.com/go-openapi/jsonpointer v0.17.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwds github.com/go-openapi/jsonpointer v0.18.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= github.com/go-openapi/jsonreference v0.17.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= github.com/go-openapi/jsonreference v0.18.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= -github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= -github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= +github.com/go-openapi/jsonreference v0.20.1 h1:FBLnyygC4/IZZr893oiomc9XaghoveYTrLC1F86HID8= +github.com/go-openapi/jsonreference v0.20.1/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= github.com/go-openapi/loads v0.17.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= github.com/go-openapi/loads v0.18.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= github.com/go-openapi/loads v0.19.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= @@ -343,6 +389,7 @@ github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= github.com/go-openapi/swag v0.19.7/go.mod h1:ao+8BpOPyKdpQz3AOJfbeEVpLmWAvlT1IfTe5McPyhY= github.com/go-openapi/swag v0.19.9/go.mod h1:ao+8BpOPyKdpQz3AOJfbeEVpLmWAvlT1IfTe5McPyhY= +github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= github.com/go-openapi/validate v0.18.0/go.mod h1:Uh4HdOzKt19xGIGm1qHf/ofbX1YQ4Y+MYsct2VUrAJ4= @@ -356,7 +403,6 @@ github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LB github.com/go-sql-driver/mysql v1.7.0 h1:ueSltNNllEqE3qcWBTD0iQd3IpL/6U+mJxLkazJ7YPc= github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-test/deep v1.0.7 h1:/VSMRlnY/JSyqxQUzQLKVMAskpY/NZKFA5j2P+0pP2M= github.com/go-test/deep v1.0.7/go.mod h1:QV8Hv/iy04NyLBxAdO9njL0iVPN1S4d/A3NVv1V36o8= github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0= @@ -609,6 +655,7 @@ github.com/gobuffalo/x v0.0.0-20181003152136-452098b06085/go.mod h1:WevpGD+5YOre github.com/gobuffalo/x v0.0.0-20181007152206-913e47c59ca7/go.mod h1:9rDPXaB3kXdKWzMc4odGQQdG2e2DIEmANy5aSJ9yesY= github.com/goccy/go-json v0.4.8 h1:TfwOxfSp8hXH+ivoOk36RyDNmXATUETRdaNWDaZglf8= github.com/goccy/go-json v0.4.8/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= +github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofrs/uuid v3.1.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gofrs/uuid v3.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= @@ -619,19 +666,21 @@ github.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFG github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt v3.2.1+incompatible h1:73Z+4BJcrTC+KczS6WvTPvRGOp1WmfEP4Q1lOd9Z/+c= github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= github.com/golang-jwt/jwt/v4 v4.2.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= -github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= -github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-jwt/jwt/v4 v4.4.1 h1:pC5DB52sCeK48Wlb9oPcdhnjkz1TKt1D/P7WKJ0kUcQ= +github.com/golang-jwt/jwt/v4 v4.4.1/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe h1:lXe2qZdvpiX5WZkZR4hgp4KJVfY3nMkvmwbVkpv1rVY= github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0= github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k= github.com/golang/gddo v0.0.0-20180828051604-96d2a289f41e/go.mod h1:xEhNfoBDX1hzLm2Nf80qUvZ2sVwoMZ8d6IE2SrsQfh4= github.com/golang/gddo v0.0.0-20190904175337-72a348e765d2/go.mod h1:xEhNfoBDX1hzLm2Nf80qUvZ2sVwoMZ8d6IE2SrsQfh4= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4= github.com/golang/glog v1.1.0 h1:/d3pCKDPWNnvIWe0vVUpNP32qc8U3PDVxySP/y360qE= github.com/golang/glog v1.1.0/go.mod h1:pfYeQZ3JWZoXTV5sFc986z3HTpwQs9At6P4ImfuP3NQ= github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -647,6 +696,7 @@ github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= +github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc= github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= github.com/golang/protobuf v1.1.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= @@ -665,6 +715,8 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= @@ -673,8 +725,11 @@ github.com/golang/snappy v0.0.3 h1:fHPg5GQYlCeLIPB9BZqMVR5nR9A+IM5zcgeTdjMYmLA= github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= -github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= -github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= +github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA= +github.com/google/cel-go v0.10.1/go.mod h1:U7ayypeSkw23szu4GaQTPJGx66c20mx8JklMSxrmI1w= +github.com/google/cel-spec v0.6.0/go.mod h1:Nwjgxy5CbjlPrtCWjeDjUyKMl8w41YBYGjsyDdqk0xA= +github.com/google/gnostic v0.5.7-v3refs h1:FhTMOKj2VhjpouxvWJAV1TL304uMlb9zcDqkl6cEI54= +github.com/google/gnostic v0.5.7-v3refs/go.mod h1:73MKFl6jIHelAJNaBGFzt3SPtZULs9dYrGFt8OiIsHQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= @@ -690,6 +745,7 @@ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-jsonnet v0.16.0/go.mod h1:sOcuej3UW1vpPTZOr8L7RQimqai1a57bt5j22LzGZCw= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= @@ -707,7 +763,8 @@ github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 h1:K6RDEckDVWvDI9JAJYCmNdQXq6neHJOYx3V6jnqNEec= +github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -743,6 +800,7 @@ github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0U github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gotestyourself/gotestyourself v1.3.0/go.mod h1:zZKM6oeNM8k+FRljX1mnzVYeS8wiGgQyvST1/GafPbY= github.com/gotestyourself/gotestyourself v2.2.0+incompatible/go.mod h1:zZKM6oeNM8k+FRljX1mnzVYeS8wiGgQyvST1/GafPbY= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= github.com/grpc-ecosystem/go-grpc-middleware v1.2.0/go.mod h1:mJzapYve32yjrKlk9GbyCZHuPgZsrbyIbyKhSzOpg6s= github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 h1:+9834+KizmvFV7pXQGSXQTsaWhq2GjuNUt0aUU0YBYw= @@ -754,26 +812,41 @@ github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4 github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= github.com/gtank/cryptopasta v0.0.0-20170601214702-1f550f6f2f69 h1:7xsUJsB2NrdcttQPa7JLEaGzvdbk7KvfrjgHZXOQRo0= github.com/gtank/cryptopasta v0.0.0-20170601214702-1f550f6f2f69/go.mod h1:YLEMZOtU+AZ7dhN9T/IpGhXVGly2bvkJQ+zxj3WeVQo= +github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q= +github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= +github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= +github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= github.com/hashicorp/go-retryablehttp v0.6.8/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= +github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU= +github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU= +github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4= +github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-uuid v1.0.2 h1:cfejS+Tpcp13yd5nYHWDI6qVCny6wyX2Mt5SGur2IGE= github.com/hashicorp/go-uuid v1.0.2/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= +github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= +github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= +github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= +github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= -github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= -github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/inhies/go-bytesize v0.0.0-20201103132853-d0aed0d254f8/go.mod h1:KrtyD5PFj++GKkFS/7/RRrfnRhAMGQwy75GLCHWrCNs= github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= github.com/jackc/chunkreader/v2 v2.0.0/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= @@ -872,10 +945,13 @@ github.com/joho/godotenv v1.2.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqx github.com/joho/godotenv v1.3.0 h1:Zjp+RcGpHhGlrMbJzXTrZZPrWj+1vfm90La1wgB6Bhc= github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg= github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/jonboulle/clockwork v0.2.2/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= @@ -883,6 +959,7 @@ github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/X github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= github.com/karrick/godirwalk v1.7.5/go.mod h1:2c9FRhkDxdIbgkOnCEvnSWs71Bhugbl46shStcFDJ34= github.com/karrick/godirwalk v1.7.7/go.mod h1:2c9FRhkDxdIbgkOnCEvnSWs71Bhugbl46shStcFDJ34= @@ -914,8 +991,8 @@ github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/pty v1.1.3/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= @@ -959,6 +1036,7 @@ github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.7.1/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/markbates/deplist v1.0.4/go.mod h1:gRRbPbbuA8TmMiRvaOzUlRfzfjeCCBqX2A6arxN01MM= @@ -991,6 +1069,7 @@ github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= @@ -998,9 +1077,8 @@ github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hd github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= +github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= -github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ= -github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-sqlite3 v1.10.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-sqlite3 v1.11.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= @@ -1011,19 +1089,28 @@ github.com/mattn/goveralls v0.0.2/go.mod h1:8d1ZMHsd7fW6IRPKQh46F2WRpyib5/X4FOpe github.com/mattn/goveralls v0.0.6 h1:cr8Y0VMo/MnEZBjxNN/vh6G90SZ7IMb6lms1dzMoO+Y= github.com/mattn/goveralls v0.0.6/go.mod h1:h8b4ow6FxSPMQHF6o2ve3qsclnffZjYTNEKmLesRwqw= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= -github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 h1:I0XW9+e1XWDxdcEniV4rQAIOPUGDq67JSCiRCgGCZLI= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= github.com/microcosm-cc/bluemonday v1.0.1/go.mod h1:hsXNsILzKxV+sX77C5b8FSuKF00vh2OMYv+xgHpAMF4= github.com/microcosm-cc/bluemonday v1.0.2/go.mod h1:iVP4YcDBq+n/5fb23BhYFvIMq/leAFZyRl6bYmGDlGc= +github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= +github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS42BGNg= +github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= +github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.0.0/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.2.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.3.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= github.com/moby/term v0.0.0-20200915141129-7f0af18e79f2/go.mod h1:TjQg8pa4iejrUrjiz0MCtMV38jdMNW4doKSiBrEvCQQ= +github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6/go.mod h1:E2VnQOmVuvZB6UYnnDB0qG5Nq/1tD9acaOpo6xmt0Kw= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= @@ -1038,26 +1125,35 @@ github.com/monoculum/formam v0.0.0-20180901015400-4e68be1d79ba/go.mod h1:RKgILGE github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/moul/http2curl v0.0.0-20170919181001-9ac6cf4d929b/go.mod h1:8UbvGypXm98wA/IqH45anm5Y2Z6ep6O31QGOAZ3H0fQ= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/ncw/swift v1.0.53 h1:luHjjTNtekIEvHg5KdAFIBaH7bWfNkefwFnpDffSIks= github.com/ncw/swift v1.0.53/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= github.com/nicksnyder/go-i18n v1.10.0/go.mod h1:HrK7VCrbOvQoUAQ7Vpy7i87N7JZZZ7R2xBGjv0j365Q= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d/go.mod h1:YUTz3bUH2ZwIWBy3CJBeOBEugqcmXREj14T+iG/4k4U= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= +github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/oleiade/reflections v1.0.0/go.mod h1:RbATFBbKYkVdqmSFtx13Bb/tVhR0lgOBXunWTZKeL4w= github.com/oleiade/reflections v1.0.1 h1:D1XO3LVEYroYskEsoSiGItp9RUxG6jWnCVvrqH0HHQM= github.com/oleiade/reflections v1.0.1/go.mod h1:rdFxbxq4QXVZWj0F+e9jqjDkc7dbp97vkRixKo2JR60= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.9.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.10.3 h1:OoxbjfXVZyod1fmWYhI7SEyaD8B00ynP3T+D5GiyHOY= github.com/onsi/ginkgo v1.10.3/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo/v2 v2.11.0 h1:WgqUCUt/lT6yXoQ8Wef0fsNn5cAuMK7+KT9UFRz2tcU= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= +github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= +github.com/onsi/ginkgo/v2 v2.1.4 h1:GNapqRSid3zijZ9H77KrgVG4/8KqiyRsxcSxe+7ApXY= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v1.4.1/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v1.4.2/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= @@ -1065,7 +1161,8 @@ github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1Cpa github.com/onsi/gomega v1.6.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= -github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.19.0 h1:4ieX6qQjPP/BfC3mpsAtIGGlxTWPeA3Inl/7DtXw1tw= github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= @@ -1107,6 +1204,7 @@ github.com/ory/x v0.0.127/go.mod h1:FwUujfFuCj5d+xgLn4fGMYPnzriR5bdAIulFXMtnK0M= github.com/ory/x v0.0.214 h1:nz5ijvm5MVhYxWsQSuUrW1hj9F5QLZvPn/nLo5s06T4= github.com/ory/x v0.0.214/go.mod h1:aRl57gzyD4GF0HQCekovXhv0xTZgAgiht3o8eVhsm9Q= github.com/parnurzeal/gorequest v0.2.15/go.mod h1:3Kh2QUMJoqw3icWAecsyzkpY7UzRfDhbRdTjtNwNiUE= +github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= github.com/pborman/uuid v1.2.0 h1:J7Q5mO4ysT1dv8hyrUGHb9+ooztCXu1D8MY8DZYsu3g= github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= @@ -1118,6 +1216,7 @@ github.com/pelletier/go-toml v1.9.4 h1:tjENF6MfZAg8e4ZmZTeWaWiT2vXtsoO6+iuOjFhEC github.com/pelletier/go-toml v1.9.4/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.0.0-beta.8 h1:dy81yyLYJDwMTifq24Oi/IslOslRrDSb3jwDggjz3Z0= github.com/pelletier/go-toml/v2 v2.0.0-beta.8/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2/go.mod h1:iIss55rKnNBTvrwdmkUpLnDpZoAHvWaiq5+iMmen4AE= github.com/philhofer/fwd v1.0.0/go.mod h1:gk3iGcWd9+svBvR0sR+KPcfE+RNWozjowpeBVG3ZVNU= github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc= @@ -1137,30 +1236,38 @@ github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZ github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021 h1:0XM1XL/OFFJjXsYXlG30spTkV/E9+gmd5GD1w2HE8xM= github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso= github.com/prometheus/client_golang v0.9.4/go.mod h1:oCXIBxdI62A4cR6aTRJCgetEjecSIYzOEaeAn4iYEpM= -github.com/prometheus/client_golang v1.16.0 h1:yk/hx9hDbrGHovbci4BY+pRMfSuuat626eFsHb7tmT8= -github.com/prometheus/client_golang v1.16.0/go.mod h1:Zsulrv/L9oM40tJ7T815tM89lFEugiJ9HzIqaAx4LKc= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_golang v1.12.1 h1:ZiaPsmm9uiBeaSMRznKsCDNtPCS0T3JVDGF+06gjBzk= +github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.4.0 h1:5lQXD3cAg1OXBf4Wq03gTrXHeaV0TQvGfUooCfx1yqY= -github.com/prometheus/client_model v0.4.0/go.mod h1:oMQmHW1/JoDwqLtg57MGgP/Fb1CJEYF2imWWhWtMkYU= +github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M= +github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.44.0 h1:+5BrQJwiBB9xsMygAB3TNvpQKOwlkc25LbISbrdOOfY= -github.com/prometheus/common v0.44.0/go.mod h1:ofAIvZbQ1e/nugmZGz4/qCb9Ap1VoSTIO7x0VV9VvuY= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= +github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4= +github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20190425082905-87a4384529e0/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= -github.com/prometheus/procfs v0.10.1 h1:kYK1Va/YMlutzCGazswoHKo//tZVlFpKYh+PymziUAg= -github.com/prometheus/procfs v0.10.1/go.mod h1:nwNm2aOCAYw8uTR/9bWRREkZFxAUcWzPHWJq+XBB/FM= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= +github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/rcrowley/go-metrics v0.0.0-20190826022208-cac0b30c2563/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= @@ -1177,7 +1284,6 @@ github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFR github.com/rogpeppe/go-internal v1.3.2/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.4.0/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.5.2/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= github.com/rs/cors v1.6.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU= github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ= github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= @@ -1186,9 +1292,11 @@ github.com/rubenv/sql-migrate v0.0.0-20190212093014-1007f53448d7/go.mod h1:WS0rl github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/santhosh-tekuri/jsonschema v1.2.4/go.mod h1:TEAUOeZSmIxTTuHatJzrvARHiuO9LYd+cIxzgEHCQI4= github.com/santhosh-tekuri/jsonschema/v2 v2.1.0/go.mod h1:yzJzKUGV4RbWqWIBBP4wSOBqavX5saE02yirLS0OTyg= github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= +github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/seatgeek/logrus-gelf-formatter v0.0.0-20210219220335-367fa274be2c/go.mod h1:/THDZYi7F/BsVEcYzYPqdcWFQ+1C2InkawTKfLOAnzg= github.com/segmentio/analytics-go v3.0.1+incompatible/go.mod h1:C7CYBtQWk4vRk2RyLu0qOcbHJ18E3F1HV2C/8JvKN48= github.com/segmentio/analytics-go v3.1.0+incompatible/go.mod h1:C7CYBtQWk4vRk2RyLu0qOcbHJ18E3F1HV2C/8JvKN48= @@ -1226,12 +1334,14 @@ github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMB github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= github.com/sirupsen/logrus v1.5.0/go.mod h1:+F7Ogzej0PZc/94MaYx/nvG9jOFMD2osvC3s+Squfpo= github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= -github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= -github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= github.com/smartystreets/goconvey v0.0.0-20180222194500-ef6db91d284a/go.mod h1:XDJAKZRPZ1CvBcN2aX5YOUTYGHki24fSF0Iv48Ibg0s= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= github.com/sourcegraph/annotate v0.0.0-20160123013949-f4cad6c6324d/go.mod h1:UdhH50NIW0fCiwBSr0co2m7BnFLdv4fQTgdqdJTHFeE= github.com/sourcegraph/syntaxhighlight v0.0.0-20170531221838-bd320f5d308e/go.mod h1:HuIsMU8RRBOtsCgI77wP899iHVBQpCmg4ErYMZB+2IA= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ= @@ -1240,6 +1350,7 @@ github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B github.com/spf13/afero v1.2.0/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/afero v1.3.2/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4= +github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw= github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= github.com/spf13/cast v1.2.0/go.mod h1:r2rcYCSwa1IExKTDiTfzaxqT2FNHs8hODu4LnUfgKEg= @@ -1254,8 +1365,9 @@ github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tL github.com/spf13/cobra v0.0.6/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= github.com/spf13/cobra v0.0.7/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= -github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= -github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= +github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= +github.com/spf13/cobra v1.4.0 h1:y+wJpx64xcgO1V+RcnwW0LEHxTKRi2ZDPSBjWnrg88Q= +github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= @@ -1268,10 +1380,12 @@ github.com/spf13/viper v1.2.1/go.mod h1:P4AexN0a+C9tGAnUFNwDMYYZv3pjFuvmeiMyKRaN github.com/spf13/viper v1.3.1/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE= +github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= github.com/spf13/viper v1.11.0 h1:7OX/1FS6n7jHD1zGrZTM7WtY13ZELRyosK4k93oPr44= github.com/spf13/viper v1.11.0/go.mod h1:djo0X/bA5+tYVoCn+C7cAYJGcVn/qYLFTG8gdUsX7Zk= github.com/sqs/goreturns v0.0.0-20181028201513-538ac6014518/go.mod h1:CKI4AZ4XmGV240rTHfO0hfE83S6/a3/Q1siZJ/vXf7A= github.com/square/go-jose/v3 v3.0.0-20200630053402-0a67ce9b0693/go.mod h1:6hSY48PjDm4UObWmGLyJE9DxYVKTgR9kbCspXXJEhcU= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= @@ -1305,6 +1419,7 @@ github.com/tidwall/sjson v1.0.4/go.mod h1:bURseu1nuBkFpIES5cz6zBtjmYeOQmEESshn7V github.com/tidwall/sjson v1.1.5/go.mod h1:VuJzsZnTowhSxWdOgsAnb886i4AjEyTkk7tNtsL7EYE= github.com/tinylib/msgp v1.1.2/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE= github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= github.com/uber-go/atomic v1.3.2/go.mod h1:/Ct5t2lcmbJ4OSe/waGBoaVvVqtO0bmtfVNex1PFV8g= github.com/uber/jaeger-client-go v2.15.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-client-go v2.22.1+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= @@ -1331,6 +1446,7 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= github.com/ziutek/mymysql v1.5.4/go.mod h1:LMSpPZ6DbqWFxNCHW77HeMg9I646SAhApZ/wKdgO/C0= go.elastic.co/apm v1.8.0/go.mod h1:tCw6CkOJgkWnzEthFN9HUP1uL3Gjc/Ur6m7gRPLaoH0= @@ -1338,6 +1454,17 @@ go.elastic.co/apm/module/apmhttp v1.8.0/go.mod h1:9LPFlEON51/lRbnWDfqAWErihIiAFD go.elastic.co/apm/module/apmot v1.8.0/go.mod h1:Q5Xzabte8G/fkvDjr1jlDuOSUt9hkVWNZEHh6ZNaTjI= go.elastic.co/fastjson v1.0.0/go.mod h1:PmeUOMMtLHQr9ZS9J9owrAVg0FkaZDRZJEFTTGHtchs= go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= +go.etcd.io/etcd/api/v3 v3.5.0/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/api/v3 v3.5.1/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/client/pkg/v3 v3.5.0/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/pkg/v3 v3.5.1/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/v2 v2.305.0/go.mod h1:h9puh54ZTgAKtEbut2oe9P4L/oqKCVB6xsXlzd7alYQ= +go.etcd.io/etcd/client/v3 v3.5.0/go.mod h1:AIKXXVX/DQXtfTEqBryiLTUXwON+GuvO6Z7lLS/oTh0= +go.etcd.io/etcd/client/v3 v3.5.1/go.mod h1:OnjH4M8OnAotwaB2l9bVgZzRFKru7/ZMoS46OtKyd3Q= +go.etcd.io/etcd/pkg/v3 v3.5.0/go.mod h1:UzJGatBQ1lXChBkQF0AuAtkRQMYnHubxAEYIrC3MSsE= +go.etcd.io/etcd/raft/v3 v3.5.0/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= +go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4= go.mongodb.org/mongo-driver v1.0.3/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= go.mongodb.org/mongo-driver v1.1.1/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= go.mongodb.org/mongo-driver v1.3.0/go.mod h1:MSWZXKOynuguX+JSvwP8i+58jYCXxbia8HS3gZBapIE= @@ -1349,31 +1476,50 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= go.opentelemetry.io/contrib v0.18.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= +go.opentelemetry.io/contrib v0.20.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.20.0/go.mod h1:oVGt1LRbBOBq1A5BQLlUg9UaU/54aiHw8cgjV3aWZ/E= go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.18.0/go.mod h1:iK1G0FgHurSJ/aYLg5LpnPI0pqdanM73S3dhyDp0Lk4= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.20.0/go.mod h1:2AboqHi0CiIZU0qwhtUfCYD1GeUzvvIXWNkhDt7ZMG4= go.opentelemetry.io/otel v0.18.0/go.mod h1:PT5zQj4lTsR1YeARt8YNKcFb88/c2IKoSABK9mX0r78= +go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo= +go.opentelemetry.io/otel/exporters/otlp v0.20.0/go.mod h1:YIieizyaN77rtLJra0buKiNBOm9XQfkPEKBeuhoMwAM= go.opentelemetry.io/otel/metric v0.18.0/go.mod h1:kEH2QtzAyBy3xDVQfGZKIcok4ZZFvd5xyKPfPcuK6pE= +go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU= go.opentelemetry.io/otel/oteltest v0.18.0/go.mod h1:NyierCU3/G8DLTva7KRzGii2fdxdR89zXKH1bNWY7Bo= +go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa9FqQ2IQ8LoxiGnw= +go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc= +go.opentelemetry.io/otel/sdk/export/metric v0.20.0/go.mod h1:h7RBNMsDJ5pmI1zExLi+bJK+Dr8NQCh0qGhm1KDnNlE= +go.opentelemetry.io/otel/sdk/metric v0.20.0/go.mod h1:knxiS8Xd4E/N+ZqKmUPf3gTTZ4/0TjTXukfxjzSTpHE= go.opentelemetry.io/otel/trace v0.18.0/go.mod h1:FzdUu3BPwZSZebfQ1vl5/tAa8LyMLXSJN57AXIt/iDk= +go.opentelemetry.io/otel/trace v0.20.0/go.mod h1:6GjCW8zgDjwGHGa6GkyeB8+/5vjT16gUEi0Nf1iBdgw= +go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.5.1/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= -go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A= +go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= +go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/goleak v1.1.11-0.20210813005559-691160354723/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= +go.uber.org/goleak v1.1.12 h1:gZAh5/EyT/HQwlpkCy6wTpqfH9H8Lz8zbm3dZh+OyzA= go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4= go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= -go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= -go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= +go.uber.org/multierr v1.6.0 h1:y6IPFStTAIT5Ytl7/XYmHvzXQ7S3g/IeZW9hyZ5thw4= +go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= go.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= -go.uber.org/zap v1.25.0 h1:4Hvk6GtkucQ790dqmj7l1eEnRdKm3k3ZUrUMS2d5+5c= -go.uber.org/zap v1.25.0/go.mod h1:JIAUzQIH94IC4fOJQm7gMmBJP5k7wQfdcnYdPoEXJYk= +go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= +go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= +go.uber.org/zap v1.19.1 h1:ue41HOKd1vGURxrmeKIgELGb3jPW9DMUDGtsinblHwI= +go.uber.org/zap v1.19.1/go.mod h1:j3DNczoxDZroyBnOT1L/Q79cfUMGZxlv/9dzN7SM1rI= golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180830192347-182538f80094/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= @@ -1384,6 +1530,7 @@ golang.org/x/crypto v0.0.0-20181015023909-0c41d7ab0a0e/go.mod h1:6SG95UA2DQfeDnf golang.org/x/crypto v0.0.0-20181024171144-74cb1d3d52f4/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181025113841-85e1b3f9139a/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181025213731-e84da0312774/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181106171534-e4dc69e5b2fd/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181112202954-3d3f9f413869/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181127143415-eb0de9b17e85/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= @@ -1413,6 +1560,7 @@ golang.org/x/crypto v0.0.0-20200320181102-891825fb96df/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200510223506-06a226fb4e37/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20201217014255-9d1352758620/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= @@ -1421,6 +1569,7 @@ golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5y golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.13.0 h1:mvySKfSWJ+UKUii46M40LOvyWfN0s2U+46/jDd0e6Ck= golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= @@ -1454,6 +1603,7 @@ golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRu golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= @@ -1465,6 +1615,7 @@ golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc= golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1480,6 +1631,7 @@ golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73r golang.org/x/net v0.0.0-20181102091132-c10e9556a7bc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181106065722-10aee1819953/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181207154023-610586996380/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1510,6 +1662,7 @@ golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/ golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= @@ -1519,10 +1672,16 @@ golang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwY golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.15.0 h1:ugBLEUaxABaB5AJqW9enI0ACdci2RUd4eP51NTBvuJ8= @@ -1537,8 +1696,12 @@ golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.8.0 h1:6dkIjl3j3LtZ/O3sTgZTMsLKSftL/B8Zgq4huOIIUu8= -golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE= +golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.7.0 h1:qe6s0zUXlPX80/dITx3440hWZ7GwMwgDDyrSGTPJG/g= +golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -1554,6 +1717,7 @@ golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E= golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sys v0.0.0-20180816055513-1c9583448a9c/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180831094639-fa5fdf94c789/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1593,13 +1757,16 @@ golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191025021431-6c3a3bfe00ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191105231009-c1f44814a5cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200121082415-34d275377bf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1614,28 +1781,41 @@ golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200831180312-196b9ba8737a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210403161142-5e06dd20ab57/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0 h1:CM0HF96J0hcLAwsHPJZjfdNzs0gftsLfgKt57wWHJ0o= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= @@ -1649,6 +1829,7 @@ golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3 golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= @@ -1656,7 +1837,9 @@ golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1717,6 +1900,8 @@ golang.org/x/tools v0.0.0-20191010075000-0337d82405ff/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191112195655-aa38f8e97acc/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -1741,6 +1926,7 @@ golang.org/x/tools v0.0.0-20200308013534-11ec41452d41/go.mod h1:o4KQGtdN14AW+yjs golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200522201501-cb1345f3a375/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= @@ -1760,6 +1946,9 @@ golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.0.0-20210114065538-d78b04bdf963/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.10-0.20220218145154-897bd77cd717/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= golang.org/x/tools v0.13.0 h1:Iey4qkscZuv0VvIt8E0neZjtPVQFSc870HQ448QgEmQ= golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1770,7 +1959,7 @@ golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= +gomodules.xyz/jsonpatch/v2 v2.2.0 h1:4pT439QV83L+G9FkcCriY6EkpcK6r6bK+A5FBUMI7qY= gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= gonum.org/v1/gonum v0.6.2/go.mod h1:9mxDZsDKxgMAuccQkewq682L+0eCu4dCN2yonUJTCLU= gonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw= @@ -1798,6 +1987,8 @@ google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz513 google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= +google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= +google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= google.golang.org/api v0.114.0 h1:1xQPji6cO2E2vLiI+C/XiFAnsn1WV3mjaEwGLhi3grE= google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= @@ -1846,18 +2037,24 @@ google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20200806141610-86f49bd18e98/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201019141844-1ed22bb0c154/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201102152239-715cce707fb0/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 h1:9NWlQfY2ePejTmfwUH1OWwmznFa+0kKcHGPDvcPza9M= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 h1:m8v1xLLLzMe1m5P+gCTF8nJB9epwZQUBERm20Oy1poQ= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 h1:0nDDozoAU19Qb2HwhXadU8OcsiO/09cnTqhUtq2MEOM= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= +google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= +google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= +google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20220107163113-42d7afdf6368/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1/go.mod h1:nKE/iIaLqn2bQwXBg8f1g2Ylh6r5MN5CmZvuzZCgsCU= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= @@ -1881,6 +2078,10 @@ google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= google.golang.org/grpc v1.56.1 h1:z0dNfjIl0VpaZ9iSVjA6daGatAYwPGstTjt5vkRMFkQ= google.golang.org/grpc v1.56.1/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= google.golang.org/grpc/examples v0.0.0-20210304020650-930c79186c99/go.mod h1:Ly7ZA/ARzg8fnPU9TyZIxoz33sEUuWX7txiqs8lPTgE= @@ -1896,6 +2097,7 @@ google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGj google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/DataDog/dd-trace-go.v1 v1.22.0/go.mod h1:DVp8HmDh8PuTu2Z0fVVlBsyWaC++fzwVCaGWylTe3tg= @@ -1936,11 +2138,13 @@ gopkg.in/jcmturner/gokrb5.v7 v7.5.0/go.mod h1:l8VISx+WGYp+Fp7KRbsiUuXTTOnxIc3Tuv gopkg.in/jcmturner/rpc.v1 v1.1.0 h1:QHIUxTX1ISuAv9dD2wJ9HWQVuWDX/Zc0PfeC2tjc4rU= gopkg.in/jcmturner/rpc.v1 v1.1.0/go.mod h1:YIdkC4XfD6GXbzje11McwsDuOlZQSb9W4vfLvuNnlv8= gopkg.in/mail.v2 v2.0.0-20180731213649-a0242b2233b4/go.mod h1:htwXN1Qh09vZJ1NVKxQqHPBaCBbzKhp5GzuJEA4VJWw= +gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= gopkg.in/square/go-jose.v2 v2.1.9/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/square/go-jose.v2 v2.5.2-0.20210529014059-a5c7eec3c614 h1:lwJmuuJQGclcankpPJwh8rorzB0bNbVALv8phDGh8TQ= gopkg.in/square/go-jose.v2 v2.5.2-0.20210529014059-a5c7eec3c614/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= gopkg.in/validator.v2 v2.0.0-20180514200540-135c24b11c19/go.mod h1:o4V0GXN9/CAmCsvJ0oXYZvrZOe7syiDZSN1GWGZTGzc= gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= @@ -1948,6 +2152,7 @@ gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= @@ -1956,6 +2161,7 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= @@ -1977,6 +2183,7 @@ gorm.io/gorm v1.24.1-0.20221019064659-5dd2bb482755/go.mod h1:DVrVomtaYTbqs7gB/x2 gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= +gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -1985,21 +2192,32 @@ honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= howett.net/plist v0.0.0-20181124034731-591f970eefbb/go.mod h1:vMygbs4qMhSZSc4lCUl2OEE+rDiIIJAIdR4m7MiMcm0= -k8s.io/api v0.28.2 h1:9mpl5mOb6vXZvqbQmankOfPIGiudghwCoLl1EYfUZbw= -k8s.io/api v0.28.2/go.mod h1:RVnJBsjU8tcMq7C3iaRSGMeaKt2TWEUXcpIt/90fjEg= -k8s.io/apiextensions-apiserver v0.28.0 h1:CszgmBL8CizEnj4sj7/PtLGey6Na3YgWyGCPONv7E9E= -k8s.io/apiextensions-apiserver v0.28.0/go.mod h1:uRdYiwIuu0SyqJKriKmqEN2jThIJPhVmOWETm8ud1VE= -k8s.io/apimachinery v0.28.2 h1:KCOJLrc6gu+wV1BYgwik4AF4vXOlVJPdiqn0yAWWwXQ= -k8s.io/apimachinery v0.28.2/go.mod h1:RdzF87y/ngqk9H4z3EL2Rppv5jj95vGS/HaFXrLDApU= -k8s.io/client-go v0.28.2 h1:DNoYI1vGq0slMBN/SWKMZMw0Rq+0EQW6/AK4v9+3VeY= -k8s.io/client-go v0.28.2/go.mod h1:sMkApowspLuc7omj1FOSUxSoqjr+d5Q0Yc0LOFnYFJY= -k8s.io/component-base v0.28.1 h1:LA4AujMlK2mr0tZbQDZkjWbdhTV5bRyEyAFe0TJxlWg= -k8s.io/klog/v2 v2.100.1 h1:7WCHKK6K8fNhTqfBhISHQ97KrnJNFZMcQvKp7gP/tmg= -k8s.io/klog/v2 v2.100.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f h1:eeEUOoGYWhOz7EyXqhlR2zHKNw2mNJ9vzJmub6YN6kk= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 h1:qY1Ad8PODbnymg2pRbkyMT/ylpTrCM8P2RJ0yroCyIk= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/api v0.24.1 h1:BjCMRDcyEYz03joa3K1+rbshwh1Ay6oB53+iUx2H8UY= +k8s.io/api v0.24.1/go.mod h1:JhoOvNiLXKTPQ60zh2g0ewpA+bnEYf5q44Flhquh4vQ= +k8s.io/apiextensions-apiserver v0.24.1 h1:5yBh9+ueTq/kfnHQZa0MAo6uNcPrtxPMpNQgorBaKS0= +k8s.io/apiextensions-apiserver v0.24.1/go.mod h1:A6MHfaLDGfjOc/We2nM7uewD5Oa/FnEbZ6cD7g2ca4Q= +k8s.io/apimachinery v0.24.1 h1:ShD4aDxTQKN5zNf8K1RQ2u98ELLdIW7jEnlO9uAMX/I= +k8s.io/apimachinery v0.24.1/go.mod h1:82Bi4sCzVBdpYjyI4jY6aHX+YCUchUIrZrXKedjd2UM= +k8s.io/apiserver v0.24.1/go.mod h1:dQWNMx15S8NqJMp0gpYfssyvhYnkilc1LpExd/dkLh0= +k8s.io/client-go v0.24.1 h1:w1hNdI9PFrzu3OlovVeTnf4oHDt+FJLd9Ndluvnb42E= +k8s.io/client-go v0.24.1/go.mod h1:f1kIDqcEYmwXS/vTbbhopMUbhKp2JhOeVTfxgaCIlF8= +k8s.io/code-generator v0.24.1/go.mod h1:dpVhs00hTuTdTY6jvVxvTFCk6gSMrtfRydbhZwHI15w= +k8s.io/component-base v0.24.1 h1:APv6W/YmfOWZfo+XJ1mZwep/f7g7Tpwvdbo9CQLDuts= +k8s.io/component-base v0.24.1/go.mod h1:DW5vQGYVCog8WYpNob3PMmmsY8A3L9QZNg4j/dV3s38= +k8s.io/gengo v0.0.0-20210813121822-485abfe95c7c/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/gengo v0.0.0-20211129171323-c02415ce4185/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/klog/v2 v2.90.1 h1:m4bYOKall2MmOiRaR1J+We67Do7vm9KiQVlT96lnHUw= +k8s.io/klog/v2 v2.90.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk= +k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f h1:2kWPakN3i/k81b0gvD5C5FJ2kxm1WrQFanWchyKuqGg= +k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f/go.mod h1:byini6yhqGC14c3ebc/QwanvYwhuMWF6yz2F8uwW8eg= +k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20230209194617-a36077c30491 h1:r0BAOLElQnnFhE/ApUsg3iHdVYYPBjNSSOMowRZxxsY= +k8s.io/utils v0.0.0-20230209194617-a36077c30491/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= modernc.org/cc v1.0.0/go.mod h1:1Sk4//wdnYJiUIxnW8ddKpaOJCF37yAdqYnkxUpaYxw= modernc.org/golex v1.0.0/go.mod h1:b/QX9oBD/LhixY6NDh+IdGv17hgB+51fET1i2kPSmvk= modernc.org/mathutil v1.0.0/go.mod h1:wU0vUrJsVWBZ4P6e7xtFJEhFSNsfRLJ8H458uRjg03k= @@ -2009,11 +2227,16 @@ rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8 rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -sigs.k8s.io/controller-runtime v0.16.2 h1:mwXAVuEk3EQf478PQwQ48zGOXvW27UJc8NHktQVuIPU= -sigs.k8s.io/controller-runtime v0.16.2/go.mod h1:vpMu3LpI5sYWtujJOa2uPK61nB5rbwlN7BAB8aSLvGU= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.30/go.mod h1:fEO7lRTdivWO2qYVCVG7dEADOMo/MLDCVr8So2g88Uw= +sigs.k8s.io/controller-runtime v0.12.1 h1:4BJY01xe9zKQti8oRjj/NeHKRXthf1YkYJAgLONFFoI= +sigs.k8s.io/controller-runtime v0.12.1/go.mod h1:BKhxlA4l7FPK4AQcsuL4X6vZeWnKDXez/vp1Y8dxTU0= +sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2/go.mod h1:B+TnT182UBxE84DiCz4CVE26eOSDAeYCpfDnC2kdKMY= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.2.1/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= sigs.k8s.io/structured-merge-diff/v4 v4.2.3 h1:PRbqxJClWWYMNV1dhaG4NsibJbArud9kFxnAMREiWFE= sigs.k8s.io/structured-merge-diff/v4 v4.2.3/go.mod h1:qjx8mGObPmV2aSZepjQjbmb2ihdVs8cGKBraizNC69E= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/flyteadmin/pkg/async/notifications/implementations/gcp_processor_test.go b/flyteadmin/pkg/async/notifications/implementations/gcp_processor_test.go index da5bda2610..e83cf7b1d3 100644 --- a/flyteadmin/pkg/async/notifications/implementations/gcp_processor_test.go +++ b/flyteadmin/pkg/async/notifications/implementations/gcp_processor_test.go @@ -48,7 +48,7 @@ func TestGcpProcessor_StartProcessing(t *testing.T) { m := &dto.Metric{} err := testGcpProcessor.(*GcpProcessor).systemMetrics.MessageSuccess.Write(m) assert.Nil(t, err) - assert.Equal(t, "counter:{value:1}", m.String()) + assert.Equal(t, "counter: ", m.String()) } func TestGcpProcessor_StartProcessingNoMessages(t *testing.T) { @@ -63,7 +63,7 @@ func TestGcpProcessor_StartProcessingNoMessages(t *testing.T) { m := &dto.Metric{} err := testGcpProcessor.(*GcpProcessor).systemMetrics.MessageSuccess.Write(m) assert.Nil(t, err) - assert.Equal(t, "counter:{value:0}", m.String()) + assert.Equal(t, "counter: ", m.String()) } func TestGcpProcessor_StartProcessingError(t *testing.T) { @@ -96,7 +96,7 @@ func TestGcpProcessor_StartProcessingEmailError(t *testing.T) { m := &dto.Metric{} err := testGcpProcessor.(*GcpProcessor).systemMetrics.MessageProcessorError.Write(m) assert.Nil(t, err) - assert.Equal(t, "counter:{value:1}", m.String()) + assert.Equal(t, "counter: ", m.String()) } func TestGcpProcessor_StopProcessing(t *testing.T) { diff --git a/flytecopilot/go.mod b/flytecopilot/go.mod index 2fed5aaa2f..6565cf119f 100644 --- a/flytecopilot/go.mod +++ b/flytecopilot/go.mod @@ -14,8 +14,8 @@ require ( github.com/spf13/cobra v1.4.0 github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.8.4 - k8s.io/api v0.28.2 - k8s.io/apimachinery v0.28.2 + k8s.io/api v0.20.4 + k8s.io/apimachinery v0.20.4 k8s.io/client-go v0.20.4 k8s.io/klog v1.0.0 ) @@ -41,38 +41,31 @@ require ( github.com/cespare/xxhash/v2 v2.2.0 // indirect github.com/coocood/freecache v1.1.1 // indirect github.com/davecgh/go-spew v1.1.1 // indirect - github.com/emicklei/go-restful/v3 v3.9.0 // indirect github.com/fatih/color v1.13.0 // indirect github.com/flyteorg/stow v0.3.7 // indirect - github.com/go-logr/logr v1.2.4 // indirect - github.com/go-openapi/jsonpointer v0.19.6 // indirect - github.com/go-openapi/jsonreference v0.20.2 // indirect - github.com/go-openapi/swag v0.22.3 // indirect + github.com/go-logr/logr v0.4.0 // indirect github.com/gofrs/uuid v4.2.0+incompatible // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang-jwt/jwt/v4 v4.4.1 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/google/gnostic-models v0.6.8 // indirect github.com/google/go-cmp v0.5.9 // indirect - github.com/google/gofuzz v1.2.0 // indirect + github.com/google/gofuzz v1.1.0 // indirect github.com/google/uuid v1.3.0 // indirect github.com/googleapis/enterprise-certificate-proxy v0.2.3 // indirect github.com/googleapis/gax-go/v2 v2.7.1 // indirect + github.com/googleapis/gnostic v0.4.1 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/imdario/mergo v0.3.11 // indirect github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect - github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/magiconair/properties v1.8.6 // indirect - github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.12 // indirect github.com/mattn/go-isatty v0.0.14 // indirect github.com/matttproud/golang_protobuf_extensions v1.0.1 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect - github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/ncw/swift v1.0.53 // indirect github.com/pelletier/go-toml v1.9.4 // indirect github.com/pelletier/go-toml/v2 v2.0.0-beta.8 // indirect @@ -88,13 +81,13 @@ require ( github.com/spf13/viper v1.11.0 // indirect github.com/subosito/gotenv v1.2.0 // indirect go.opencensus.io v0.24.0 // indirect - golang.org/x/crypto v0.11.0 // indirect - golang.org/x/net v0.13.0 // indirect - golang.org/x/oauth2 v0.8.0 // indirect - golang.org/x/sys v0.10.0 // indirect - golang.org/x/term v0.10.0 // indirect - golang.org/x/text v0.11.0 // indirect - golang.org/x/time v0.3.0 // indirect + golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f // indirect + golang.org/x/net v0.9.0 // indirect + golang.org/x/oauth2 v0.7.0 // indirect + golang.org/x/sys v0.7.0 // indirect + golang.org/x/term v0.7.0 // indirect + golang.org/x/text v0.9.0 // indirect + golang.org/x/time v0.1.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/api v0.114.0 // indirect google.golang.org/appengine v1.6.7 // indirect @@ -105,12 +98,10 @@ require ( gopkg.in/ini.v1 v1.66.4 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/klog/v2 v2.100.1 // indirect - k8s.io/kube-openapi v0.0.0-20230717233707-2695361300d9 // indirect - k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 // indirect - sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect - sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect - sigs.k8s.io/yaml v1.3.0 // indirect + k8s.io/klog/v2 v2.5.0 // indirect + k8s.io/utils v0.0.0-20210111153108-fddb29f9d009 // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.0.3 // indirect + sigs.k8s.io/yaml v1.2.0 // indirect ) replace ( @@ -121,9 +112,4 @@ replace ( github.com/flyteorg/flyte/flyteplugins => ../flyteplugins github.com/flyteorg/flyte/flytepropeller => ../flytepropeller github.com/flyteorg/flyte/flytestdlib => ../flytestdlib - k8s.io/api => k8s.io/api v0.28.2 - k8s.io/apimachinery => k8s.io/apimachinery v0.28.2 - k8s.io/client-go => k8s.io/client-go v0.28.2 - k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f - sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.16.2 ) diff --git a/flytecopilot/go.sum b/flytecopilot/go.sum index 8db4c93b84..3b2bf17b22 100644 --- a/flytecopilot/go.sum +++ b/flytecopilot/go.sum @@ -58,16 +58,21 @@ github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0 h1:0nJeKDmB7a1a8RDMj github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0/go.mod h1:mbwxKc/fW+IkF0GG591MuXw0KuEQBDkeRoZ9vmVJPxg= github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.11.1/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= github.com/Azure/go-autorest/autorest v0.11.27 h1:F3R3q42aWytozkV8ihzcgMO4OA4cuqr3bNlsEuF6//A= github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U= +github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg= +github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= github.com/Azure/go-autorest/autorest/adal v0.9.18 h1:kLnPsRjzZZUF3K5REu/Kc+qMQrvuza2bwSnNdhmzLfQ= github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= +github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= github.com/Azure/go-autorest/autorest/mocks v0.4.2 h1:PGN4EDXnuQbojHbU0UWoNvmu9AGVwYHG9/fkDYhtAfw= github.com/Azure/go-autorest/autorest/mocks v0.4.2/go.mod h1:Vy7OitM9Kei0i1Oj+LvyAWMXJHeKH1MVlzFugfVrmyU= github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= +github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg= github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo= @@ -75,13 +80,17 @@ github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBp github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0 h1:WVsrXCnHlDDX8ls+tootqRE87/hL9S/g4ewig9RsD/c= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/aws/aws-sdk-go v1.44.2 h1:5VBk5r06bgxgRKVaUtm1/4NT/rtrnH2E4cnAYv5zgQc= github.com/aws/aws-sdk-go v1.44.2/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -106,26 +115,33 @@ github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnht github.com/coocood/freecache v1.1.1 h1:uukNF7QKCZEdZ9gAV7WQzvh0SbjwdMF6m3x3rxEkaPc= github.com/coocood/freecache v1.1.1/go.mod h1:OKrEjkGVoxZhyWAJoeFi5BMLUJm2Tit0kpGkIr7NGYY= github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/dnaeon/go-vcr v1.1.0 h1:ReYa/UBrRyQdant9B4fNHGoCNKw6qh6P0fsdGmZpR7c= github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko= -github.com/emicklei/go-restful/v3 v3.9.0 h1:XwGDlfxEnQZzuopoqxwSEllNcCOM9DhhFyhFIIGKwxE= -github.com/emicklei/go-restful/v3 v3.9.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/flyteorg/stow v0.3.7 h1:Cx7j8/Ux6+toD5hp5fy++927V+yAcAttDeQAlUD/864= github.com/flyteorg/stow v0.3.7/go.mod h1:5dfBitPM004dwaZdoVylVjxFT4GWAgI0ghAndhNUzCo= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/fsnotify/fsnotify v1.5.1 h1:mZcQUHVQUQWoPXXtuf9yuEXKudkV2sx1E06UadKWpgI= github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU= +github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= @@ -138,21 +154,22 @@ github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9 github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= -github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= -github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= -github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= -github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= -github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= -github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= -github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v0.4.0 h1:K7/B1jt6fIBQVd4Owv2MqGQClcgf0R266+7C/QjRcLc= +github.com/go-logr/logr v0.4.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= +github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= +github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= +github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-test/deep v1.0.7 h1:/VSMRlnY/JSyqxQUzQLKVMAskpY/NZKFA5j2P+0pP2M= github.com/gofrs/uuid v4.2.0+incompatible h1:yyYWMnhkhrKwwr8gAOcOCYxOOscHgDS9yZgBrnJfGa0= github.com/gofrs/uuid v4.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt v3.2.1+incompatible h1:73Z+4BJcrTC+KczS6WvTPvRGOp1WmfEP4Q1lOd9Z/+c= @@ -193,8 +210,6 @@ github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= -github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= -github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= @@ -209,8 +224,8 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= -github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= @@ -226,8 +241,8 @@ github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 h1:K6RDEckDVWvDI9JAJYCmNdQXq6neHJOYx3V6jnqNEec= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -237,13 +252,18 @@ github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+ github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.7.1 h1:gF4c0zjUP2H/s/hEGyLA3I0fA2ZWjzYiONAD6cvPr8A= github.com/googleapis/gax-go/v2 v2.7.1/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI= +github.com/googleapis/gnostic v0.4.1 h1:DLJCy1n/vrD4HPjOvYcT8aYQXpPIzoRZONaYwyycI+I= +github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= github.com/imdario/mergo v0.3.11 h1:3tnifQM4i+fbajXKBHXWEH+KvNHqojZ778UH75j3bGA= github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= @@ -252,8 +272,6 @@ github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9Y github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= -github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= -github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= @@ -264,6 +282,7 @@ github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1 github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= +github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= @@ -271,17 +290,17 @@ github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxv github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= -github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= -github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= -github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= @@ -292,6 +311,7 @@ github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0j github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= github.com/mitchellh/go-ps v1.0.0 h1:i6ampVEEF4wQFF+bkYfwYgY+F/uYJDktmvLPf7qIgjc= github.com/mitchellh/go-ps v1.0.0/go.mod h1:J4lOc8z8yJs6vUwklHw2XEIiT4z4C40KtWVN3nvg8Pg= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= @@ -302,18 +322,22 @@ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3Rllmb github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/modocache/gover v0.0.0-20171022184752-b58185e213c5/go.mod h1:caMODM3PzxT8aQXRPkAt8xlV/e7d7w8GM5g0fa5F0D8= -github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= -github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/ncw/swift v1.0.53 h1:luHjjTNtekIEvHg5KdAFIBaH7bWfNkefwFnpDffSIks= github.com/ncw/swift v1.0.53/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= -github.com/onsi/ginkgo/v2 v2.9.4 h1:xR7vG4IXt5RWx6FfIjyAtsoMAtnc3C/rFXBBd2AjZwE= -github.com/onsi/gomega v1.27.6 h1:ENqfyGeS5AX/rlXDd/ETokDz93u0YufY1Pgxuy/PvWE= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/pelletier/go-toml v1.9.4 h1:tjENF6MfZAg8e4ZmZTeWaWiT2vXtsoO6+iuOjFhECwM= github.com/pelletier/go-toml v1.9.4/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.0.0-beta.8 h1:dy81yyLYJDwMTifq24Oi/IslOslRrDSb3jwDggjz3Z0= github.com/pelletier/go-toml/v2 v2.0.0-beta.8/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4 h1:Qj1ukM4GlMWXNdMBuXcXfz/Kw9s1qm0CLY32QxuSImI= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -345,7 +369,6 @@ github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1 github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= @@ -354,6 +377,7 @@ github.com/sirupsen/logrus v1.7.0 h1:ShrD1U9pZB12TX0cVy0DtePoCH97K8EtX+mg7ZARUtM github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw= github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA= @@ -362,18 +386,21 @@ github.com/spf13/cobra v1.4.0 h1:y+wJpx64xcgO1V+RcnwW0LEHxTKRi2ZDPSBjWnrg88Q= github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= +github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.11.0 h1:7OX/1FS6n7jHD1zGrZTM7WtY13ZELRyosK4k93oPr44= github.com/spf13/viper v1.11.0/go.mod h1:djo0X/bA5+tYVoCn+C7cAYJGcVn/qYLFTG8gdUsX7Zk= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= @@ -398,14 +425,16 @@ golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnf golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA= -golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= +golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f h1:OeJjE6G4dgCY4PIXvIRQbE8+RX+uXZyGhUy/ksMGJoc= +golang.org/x/crypto v0.0.0-20220427172511-eb4f295cb31f/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -441,6 +470,7 @@ golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -453,6 +483,7 @@ golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -477,8 +508,8 @@ golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.13.0 h1:Nvo8UFsZ8X3BhAC9699Z1j7XQ3rsZnUUm7jfBEk1ueY= -golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= +golang.org/x/net v0.9.0 h1:aWJ/m6xSmxWBx+V0XRHTlrYrPG56jKsLdTFmsSsCzOM= +golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -489,8 +520,8 @@ golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.8.0 h1:6dkIjl3j3LtZ/O3sTgZTMsLKSftL/B8Zgq4huOIIUu8= -golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE= +golang.org/x/oauth2 v0.7.0 h1:qe6s0zUXlPX80/dITx3440hWZ7GwMwgDDyrSGTPJG/g= +golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -503,6 +534,7 @@ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -511,9 +543,11 @@ golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -536,6 +570,7 @@ golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -550,12 +585,12 @@ golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA= -golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.7.0 h1:3jlCCIQZPdOYu1h8BkNvLz8Kgwtae2cagcG/VamtZRU= +golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.10.0 h1:3R7pNqamzBraeqj/Tj8qt1aQ2HpmlC+Cx/qL/7hn4/c= -golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= +golang.org/x/term v0.7.0 h1:BEvjmm5fURWqcfbSKTdpkDXYBrUS1c0m8agp14W48vQ= +golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -564,14 +599,16 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4= -golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= -golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.1.0 h1:xYY+Bajn2a7VBmTM5GikTmnK8ZuX8YgnQCqZpbBNtmA= +golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= @@ -581,6 +618,7 @@ golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBn golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -620,7 +658,6 @@ golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= -golang.org/x/tools v0.8.0 h1:vSDcovVPld282ceKgDimkRSC8kpaH1dgyc9UMzlt84Y= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -729,14 +766,15 @@ google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqw gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= -gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/ini.v1 v1.66.4 h1:SsAcf+mM7mRZo2nJNGt8mZCjG8ZRaNGMURJw7BsIST4= gopkg.in/ini.v1 v1.66.4/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= @@ -755,26 +793,29 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -k8s.io/api v0.28.2 h1:9mpl5mOb6vXZvqbQmankOfPIGiudghwCoLl1EYfUZbw= -k8s.io/api v0.28.2/go.mod h1:RVnJBsjU8tcMq7C3iaRSGMeaKt2TWEUXcpIt/90fjEg= -k8s.io/apimachinery v0.28.2 h1:KCOJLrc6gu+wV1BYgwik4AF4vXOlVJPdiqn0yAWWwXQ= -k8s.io/apimachinery v0.28.2/go.mod h1:RdzF87y/ngqk9H4z3EL2Rppv5jj95vGS/HaFXrLDApU= -k8s.io/client-go v0.28.2 h1:DNoYI1vGq0slMBN/SWKMZMw0Rq+0EQW6/AK4v9+3VeY= -k8s.io/client-go v0.28.2/go.mod h1:sMkApowspLuc7omj1FOSUxSoqjr+d5Q0Yc0LOFnYFJY= +k8s.io/api v0.20.4 h1:xZjKidCirayzX6tHONRQyTNDVIR55TYVqgATqo6ZULY= +k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ= +k8s.io/apimachinery v0.20.4 h1:vhxQ0PPUUU2Ns1b9r4/UFp13UPs8cw2iOoTjnY9faa0= +k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/client-go v0.20.4 h1:85crgh1IotNkLpKYKZHVNI1JT86nr/iDCvq2iWKsql4= +k8s.io/client-go v0.20.4/go.mod h1:LiMv25ND1gLUdBeYxBIwKpkSC5IsozMMmOOeSJboP+k= +k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8= k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I= -k8s.io/klog/v2 v2.100.1 h1:7WCHKK6K8fNhTqfBhISHQ97KrnJNFZMcQvKp7gP/tmg= -k8s.io/klog/v2 v2.100.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f h1:eeEUOoGYWhOz7EyXqhlR2zHKNw2mNJ9vzJmub6YN6kk= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 h1:qY1Ad8PODbnymg2pRbkyMT/ylpTrCM8P2RJ0yroCyIk= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.5.0 h1:8mOnjf1RmUPW6KRqQCfYSZq/K20Unmp3IhuZUhxl8KI= +k8s.io/klog/v2 v2.5.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= +k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= +k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210111153108-fddb29f9d009 h1:0T5IaWHO3sJTEmCP6mUlBvMukxPKUQWqiI/YuiBNMiQ= +k8s.io/utils v0.0.0-20210111153108-fddb29f9d009/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= -sigs.k8s.io/structured-merge-diff/v4 v4.2.3 h1:PRbqxJClWWYMNV1dhaG4NsibJbArud9kFxnAMREiWFE= -sigs.k8s.io/structured-merge-diff/v4 v4.2.3/go.mod h1:qjx8mGObPmV2aSZepjQjbmb2ihdVs8cGKBraizNC69E= -sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= -sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.3 h1:4oyYo8NREp49LBBhKxEqCulFjg26rawYKrnCmg+Sr6c= +sigs.k8s.io/structured-merge-diff/v4 v4.0.3/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.cc new file mode 100644 index 0000000000..a47db3745b --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.cc @@ -0,0 +1,26 @@ +// Generated by the gRPC C++ plugin. +// If you make any local change, they will be lost. +// source: flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto + +#include "flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.h" +#include "flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +} // namespace flyteidl +} // namespace plugins +} // namespace sagemaker + diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.h b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.h new file mode 100644 index 0000000000..c01143b03f --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.grpc.pb.h @@ -0,0 +1,49 @@ +// Generated by the gRPC C++ plugin. +// If you make any local change, they will be lost. +// source: flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto +#ifndef GRPC_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto__INCLUDED +#define GRPC_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto__INCLUDED + +#include "flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace grpc_impl { +class Channel; +class CompletionQueue; +class ServerCompletionQueue; +} // namespace grpc_impl + +namespace grpc { +namespace experimental { +template +class MessageAllocator; +} // namespace experimental +} // namespace grpc_impl + +namespace grpc { +class ServerContext; +} // namespace grpc + +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl + + +#endif // GRPC_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto__INCLUDED diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.cc new file mode 100644 index 0000000000..41dae829c8 --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.cc @@ -0,0 +1,2175 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto + +#include "flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include + +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_HyperparameterTuningObjective_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_ParameterRanges_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto ::google::protobuf::internal::SCCInfo<2> scc_info_TrainingJob_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +namespace flyteidl { +namespace plugins { +namespace sagemaker { +class HyperparameterTuningJobDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _HyperparameterTuningJob_default_instance_; +class HyperparameterTuningObjectiveTypeDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _HyperparameterTuningObjectiveType_default_instance_; +class HyperparameterTuningObjectiveDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _HyperparameterTuningObjective_default_instance_; +class HyperparameterTuningStrategyDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _HyperparameterTuningStrategy_default_instance_; +class TrainingJobEarlyStoppingTypeDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _TrainingJobEarlyStoppingType_default_instance_; +class HyperparameterTuningJobConfigDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _HyperparameterTuningJobConfig_default_instance_; +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +static void InitDefaultsHyperparameterTuningJob_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_HyperparameterTuningJob_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::HyperparameterTuningJob(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::HyperparameterTuningJob::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<1> scc_info_HyperparameterTuningJob_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsHyperparameterTuningJob_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto}, { + &scc_info_TrainingJob_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base,}}; + +static void InitDefaultsHyperparameterTuningObjectiveType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_HyperparameterTuningObjectiveType_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_HyperparameterTuningObjectiveType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsHyperparameterTuningObjectiveType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto}, {}}; + +static void InitDefaultsHyperparameterTuningObjective_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_HyperparameterTuningObjective_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_HyperparameterTuningObjective_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsHyperparameterTuningObjective_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto}, {}}; + +static void InitDefaultsHyperparameterTuningStrategy_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_HyperparameterTuningStrategy_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_HyperparameterTuningStrategy_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsHyperparameterTuningStrategy_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto}, {}}; + +static void InitDefaultsTrainingJobEarlyStoppingType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_TrainingJobEarlyStoppingType_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_TrainingJobEarlyStoppingType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsTrainingJobEarlyStoppingType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto}, {}}; + +static void InitDefaultsHyperparameterTuningJobConfig_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_HyperparameterTuningJobConfig_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<2> scc_info_HyperparameterTuningJobConfig_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsHyperparameterTuningJobConfig_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto}, { + &scc_info_ParameterRanges_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base, + &scc_info_HyperparameterTuningObjective_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base,}}; + +void InitDefaults_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto() { + ::google::protobuf::internal::InitSCC(&scc_info_HyperparameterTuningJob_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_HyperparameterTuningObjectiveType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_HyperparameterTuningObjective_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_HyperparameterTuningStrategy_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_TrainingJobEarlyStoppingType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_HyperparameterTuningJobConfig_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); +} + +::google::protobuf::Metadata file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[6]; +const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[3]; +constexpr ::google::protobuf::ServiceDescriptor const** file_level_service_descriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = nullptr; + +const ::google::protobuf::uint32 TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJob, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJob, training_job_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJob, max_number_of_training_jobs_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJob, max_parallel_training_jobs_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningObjective, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningObjective, objective_type_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningObjective, metric_name_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig, hyperparameter_ranges_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig, tuning_strategy_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig, tuning_objective_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig, training_job_early_stopping_type_), +}; +static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + { 0, -1, sizeof(::flyteidl::plugins::sagemaker::HyperparameterTuningJob)}, + { 8, -1, sizeof(::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType)}, + { 13, -1, sizeof(::flyteidl::plugins::sagemaker::HyperparameterTuningObjective)}, + { 20, -1, sizeof(::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy)}, + { 25, -1, sizeof(::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType)}, + { 30, -1, sizeof(::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig)}, +}; + +static ::google::protobuf::Message const * const file_default_instances[] = { + reinterpret_cast(&::flyteidl::plugins::sagemaker::_HyperparameterTuningJob_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_HyperparameterTuningObjectiveType_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_HyperparameterTuningObjective_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_HyperparameterTuningStrategy_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_TrainingJobEarlyStoppingType_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_HyperparameterTuningJobConfig_default_instance_), +}; + +::google::protobuf::internal::AssignDescriptorsTable assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = { + {}, AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto, "flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto", schemas, + file_default_instances, TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto::offsets, + file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto, 6, file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto, file_level_service_descriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto, +}; + +const char descriptor_table_protodef_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[] = + "\n:flyteidl/plugins/sagemaker/hyperparame" + "ter_tuning_job.proto\022\032flyteidl.plugins.s" + "agemaker\0321flyteidl/plugins/sagemaker/par" + "ameter_ranges.proto\032-flyteidl/plugins/sa" + "gemaker/training_job.proto\"\241\001\n\027Hyperpara" + "meterTuningJob\022=\n\014training_job\030\001 \001(\0132\'.f" + "lyteidl.plugins.sagemaker.TrainingJob\022#\n" + "\033max_number_of_training_jobs\030\002 \001(\003\022\"\n\032ma" + "x_parallel_training_jobs\030\003 \001(\003\"H\n!Hyperp" + "arameterTuningObjectiveType\"#\n\005Value\022\014\n\010" + "MINIMIZE\020\000\022\014\n\010MAXIMIZE\020\001\"\221\001\n\035Hyperparame" + "terTuningObjective\022[\n\016objective_type\030\001 \001" + "(\0162C.flyteidl.plugins.sagemaker.Hyperpar" + "ameterTuningObjectiveType.Value\022\023\n\013metri" + "c_name\030\002 \001(\t\"A\n\034HyperparameterTuningStra" + "tegy\"!\n\005Value\022\014\n\010BAYESIAN\020\000\022\n\n\006RANDOM\020\001\"" + ":\n\034TrainingJobEarlyStoppingType\"\032\n\005Value" + "\022\007\n\003OFF\020\000\022\010\n\004AUTO\020\001\"\203\003\n\035HyperparameterTu" + "ningJobConfig\022J\n\025hyperparameter_ranges\030\001" + " \001(\0132+.flyteidl.plugins.sagemaker.Parame" + "terRanges\022W\n\017tuning_strategy\030\002 \001(\0162>.fly" + "teidl.plugins.sagemaker.HyperparameterTu" + "ningStrategy.Value\022S\n\020tuning_objective\030\003" + " \001(\01329.flyteidl.plugins.sagemaker.Hyperp" + "arameterTuningObjective\022h\n training_job_" + "early_stopping_type\030\004 \001(\0162>.flyteidl.plu" + "gins.sagemaker.TrainingJobEarlyStoppingT" + "ype.ValueB\?Z=github.com/flyteorg/flyte/f" + "lyteidl/gen/pb-go/flyteidl/pluginsb\006prot" + "o3" + ; +::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = { + false, InitDefaults_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto, + descriptor_table_protodef_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto, + "flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto", &assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto, 1162, +}; + +void AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto() { + static constexpr ::google::protobuf::internal::InitFunc deps[2] = + { + ::AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, + ::AddDescriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, + }; + ::google::protobuf::internal::AddDescriptors(&descriptor_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto, deps, 2); +} + +// Force running AddDescriptors() at dynamic initialization time. +static bool dynamic_init_dummy_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto = []() { AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto(); return true; }(); +namespace flyteidl { +namespace plugins { +namespace sagemaker { +const ::google::protobuf::EnumDescriptor* HyperparameterTuningObjectiveType_Value_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[0]; +} +bool HyperparameterTuningObjectiveType_Value_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const HyperparameterTuningObjectiveType_Value HyperparameterTuningObjectiveType::MINIMIZE; +const HyperparameterTuningObjectiveType_Value HyperparameterTuningObjectiveType::MAXIMIZE; +const HyperparameterTuningObjectiveType_Value HyperparameterTuningObjectiveType::Value_MIN; +const HyperparameterTuningObjectiveType_Value HyperparameterTuningObjectiveType::Value_MAX; +const int HyperparameterTuningObjectiveType::Value_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 +const ::google::protobuf::EnumDescriptor* HyperparameterTuningStrategy_Value_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[1]; +} +bool HyperparameterTuningStrategy_Value_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const HyperparameterTuningStrategy_Value HyperparameterTuningStrategy::BAYESIAN; +const HyperparameterTuningStrategy_Value HyperparameterTuningStrategy::RANDOM; +const HyperparameterTuningStrategy_Value HyperparameterTuningStrategy::Value_MIN; +const HyperparameterTuningStrategy_Value HyperparameterTuningStrategy::Value_MAX; +const int HyperparameterTuningStrategy::Value_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 +const ::google::protobuf::EnumDescriptor* TrainingJobEarlyStoppingType_Value_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[2]; +} +bool TrainingJobEarlyStoppingType_Value_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const TrainingJobEarlyStoppingType_Value TrainingJobEarlyStoppingType::OFF; +const TrainingJobEarlyStoppingType_Value TrainingJobEarlyStoppingType::AUTO; +const TrainingJobEarlyStoppingType_Value TrainingJobEarlyStoppingType::Value_MIN; +const TrainingJobEarlyStoppingType_Value TrainingJobEarlyStoppingType::Value_MAX; +const int TrainingJobEarlyStoppingType::Value_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +// =================================================================== + +void HyperparameterTuningJob::InitAsDefaultInstance() { + ::flyteidl::plugins::sagemaker::_HyperparameterTuningJob_default_instance_._instance.get_mutable()->training_job_ = const_cast< ::flyteidl::plugins::sagemaker::TrainingJob*>( + ::flyteidl::plugins::sagemaker::TrainingJob::internal_default_instance()); +} +class HyperparameterTuningJob::HasBitSetters { + public: + static const ::flyteidl::plugins::sagemaker::TrainingJob& training_job(const HyperparameterTuningJob* msg); +}; + +const ::flyteidl::plugins::sagemaker::TrainingJob& +HyperparameterTuningJob::HasBitSetters::training_job(const HyperparameterTuningJob* msg) { + return *msg->training_job_; +} +void HyperparameterTuningJob::clear_training_job() { + if (GetArenaNoVirtual() == nullptr && training_job_ != nullptr) { + delete training_job_; + } + training_job_ = nullptr; +} +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int HyperparameterTuningJob::kTrainingJobFieldNumber; +const int HyperparameterTuningJob::kMaxNumberOfTrainingJobsFieldNumber; +const int HyperparameterTuningJob::kMaxParallelTrainingJobsFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +HyperparameterTuningJob::HyperparameterTuningJob() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.HyperparameterTuningJob) +} +HyperparameterTuningJob::HyperparameterTuningJob(const HyperparameterTuningJob& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + if (from.has_training_job()) { + training_job_ = new ::flyteidl::plugins::sagemaker::TrainingJob(*from.training_job_); + } else { + training_job_ = nullptr; + } + ::memcpy(&max_number_of_training_jobs_, &from.max_number_of_training_jobs_, + static_cast(reinterpret_cast(&max_parallel_training_jobs_) - + reinterpret_cast(&max_number_of_training_jobs_)) + sizeof(max_parallel_training_jobs_)); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.HyperparameterTuningJob) +} + +void HyperparameterTuningJob::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_HyperparameterTuningJob_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + ::memset(&training_job_, 0, static_cast( + reinterpret_cast(&max_parallel_training_jobs_) - + reinterpret_cast(&training_job_)) + sizeof(max_parallel_training_jobs_)); +} + +HyperparameterTuningJob::~HyperparameterTuningJob() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + SharedDtor(); +} + +void HyperparameterTuningJob::SharedDtor() { + if (this != internal_default_instance()) delete training_job_; +} + +void HyperparameterTuningJob::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const HyperparameterTuningJob& HyperparameterTuningJob::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_HyperparameterTuningJob_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void HyperparameterTuningJob::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + if (GetArenaNoVirtual() == nullptr && training_job_ != nullptr) { + delete training_job_; + } + training_job_ = nullptr; + ::memset(&max_number_of_training_jobs_, 0, static_cast( + reinterpret_cast(&max_parallel_training_jobs_) - + reinterpret_cast(&max_number_of_training_jobs_)) + sizeof(max_parallel_training_jobs_)); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* HyperparameterTuningJob::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::TrainingJob::_InternalParse; + object = msg->mutable_training_job(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + // int64 max_number_of_training_jobs = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 16) goto handle_unusual; + msg->set_max_number_of_training_jobs(::google::protobuf::internal::ReadVarint(&ptr)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // int64 max_parallel_training_jobs = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 24) goto handle_unusual; + msg->set_max_parallel_training_jobs(::google::protobuf::internal::ReadVarint(&ptr)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool HyperparameterTuningJob::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_training_job())); + } else { + goto handle_unusual; + } + break; + } + + // int64 max_number_of_training_jobs = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (16 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>( + input, &max_number_of_training_jobs_))); + } else { + goto handle_unusual; + } + break; + } + + // int64 max_parallel_training_jobs = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (24 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>( + input, &max_parallel_training_jobs_))); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void HyperparameterTuningJob::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + if (this->has_training_job()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 1, HasBitSetters::training_job(this), output); + } + + // int64 max_number_of_training_jobs = 2; + if (this->max_number_of_training_jobs() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteInt64(2, this->max_number_of_training_jobs(), output); + } + + // int64 max_parallel_training_jobs = 3; + if (this->max_parallel_training_jobs() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteInt64(3, this->max_parallel_training_jobs(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.HyperparameterTuningJob) +} + +::google::protobuf::uint8* HyperparameterTuningJob::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + if (this->has_training_job()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 1, HasBitSetters::training_job(this), target); + } + + // int64 max_number_of_training_jobs = 2; + if (this->max_number_of_training_jobs() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(2, this->max_number_of_training_jobs(), target); + } + + // int64 max_parallel_training_jobs = 3; + if (this->max_parallel_training_jobs() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(3, this->max_parallel_training_jobs(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + return target; +} + +size_t HyperparameterTuningJob::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + if (this->has_training_job()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *training_job_); + } + + // int64 max_number_of_training_jobs = 2; + if (this->max_number_of_training_jobs() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::Int64Size( + this->max_number_of_training_jobs()); + } + + // int64 max_parallel_training_jobs = 3; + if (this->max_parallel_training_jobs() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::Int64Size( + this->max_parallel_training_jobs()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void HyperparameterTuningJob::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + GOOGLE_DCHECK_NE(&from, this); + const HyperparameterTuningJob* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + MergeFrom(*source); + } +} + +void HyperparameterTuningJob::MergeFrom(const HyperparameterTuningJob& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.has_training_job()) { + mutable_training_job()->::flyteidl::plugins::sagemaker::TrainingJob::MergeFrom(from.training_job()); + } + if (from.max_number_of_training_jobs() != 0) { + set_max_number_of_training_jobs(from.max_number_of_training_jobs()); + } + if (from.max_parallel_training_jobs() != 0) { + set_max_parallel_training_jobs(from.max_parallel_training_jobs()); + } +} + +void HyperparameterTuningJob::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void HyperparameterTuningJob::CopyFrom(const HyperparameterTuningJob& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool HyperparameterTuningJob::IsInitialized() const { + return true; +} + +void HyperparameterTuningJob::Swap(HyperparameterTuningJob* other) { + if (other == this) return; + InternalSwap(other); +} +void HyperparameterTuningJob::InternalSwap(HyperparameterTuningJob* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + swap(training_job_, other->training_job_); + swap(max_number_of_training_jobs_, other->max_number_of_training_jobs_); + swap(max_parallel_training_jobs_, other->max_parallel_training_jobs_); +} + +::google::protobuf::Metadata HyperparameterTuningJob::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void HyperparameterTuningObjectiveType::InitAsDefaultInstance() { +} +class HyperparameterTuningObjectiveType::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +HyperparameterTuningObjectiveType::HyperparameterTuningObjectiveType() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) +} +HyperparameterTuningObjectiveType::HyperparameterTuningObjectiveType(const HyperparameterTuningObjectiveType& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) +} + +void HyperparameterTuningObjectiveType::SharedCtor() { +} + +HyperparameterTuningObjectiveType::~HyperparameterTuningObjectiveType() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + SharedDtor(); +} + +void HyperparameterTuningObjectiveType::SharedDtor() { +} + +void HyperparameterTuningObjectiveType::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const HyperparameterTuningObjectiveType& HyperparameterTuningObjectiveType::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_HyperparameterTuningObjectiveType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void HyperparameterTuningObjectiveType::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* HyperparameterTuningObjectiveType::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool HyperparameterTuningObjectiveType::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void HyperparameterTuningObjectiveType::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) +} + +::google::protobuf::uint8* HyperparameterTuningObjectiveType::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + return target; +} + +size_t HyperparameterTuningObjectiveType::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void HyperparameterTuningObjectiveType::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + GOOGLE_DCHECK_NE(&from, this); + const HyperparameterTuningObjectiveType* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + MergeFrom(*source); + } +} + +void HyperparameterTuningObjectiveType::MergeFrom(const HyperparameterTuningObjectiveType& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void HyperparameterTuningObjectiveType::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void HyperparameterTuningObjectiveType::CopyFrom(const HyperparameterTuningObjectiveType& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool HyperparameterTuningObjectiveType::IsInitialized() const { + return true; +} + +void HyperparameterTuningObjectiveType::Swap(HyperparameterTuningObjectiveType* other) { + if (other == this) return; + InternalSwap(other); +} +void HyperparameterTuningObjectiveType::InternalSwap(HyperparameterTuningObjectiveType* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata HyperparameterTuningObjectiveType::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void HyperparameterTuningObjective::InitAsDefaultInstance() { +} +class HyperparameterTuningObjective::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int HyperparameterTuningObjective::kObjectiveTypeFieldNumber; +const int HyperparameterTuningObjective::kMetricNameFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +HyperparameterTuningObjective::HyperparameterTuningObjective() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) +} +HyperparameterTuningObjective::HyperparameterTuningObjective(const HyperparameterTuningObjective& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + metric_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (from.metric_name().size() > 0) { + metric_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.metric_name_); + } + objective_type_ = from.objective_type_; + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) +} + +void HyperparameterTuningObjective::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_HyperparameterTuningObjective_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + metric_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + objective_type_ = 0; +} + +HyperparameterTuningObjective::~HyperparameterTuningObjective() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + SharedDtor(); +} + +void HyperparameterTuningObjective::SharedDtor() { + metric_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} + +void HyperparameterTuningObjective::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const HyperparameterTuningObjective& HyperparameterTuningObjective::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_HyperparameterTuningObjective_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void HyperparameterTuningObjective::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + metric_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + objective_type_ = 0; + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* HyperparameterTuningObjective::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 8) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_objective_type(static_cast<::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // string metric_name = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + ctx->extra_parse_data().SetFieldName("flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name"); + object = msg->mutable_metric_name(); + if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { + parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; + goto string_till_end; + } + GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); + ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); + ptr += size; + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +string_till_end: + static_cast<::std::string*>(object)->clear(); + static_cast<::std::string*>(object)->reserve(size); + goto len_delim_till_end; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool HyperparameterTuningObjective::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (8 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_objective_type(static_cast< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + // string metric_name = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_metric_name())); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->metric_name().data(), static_cast(this->metric_name().length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name")); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void HyperparameterTuningObjective::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + if (this->objective_type() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 1, this->objective_type(), output); + } + + // string metric_name = 2; + if (this->metric_name().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->metric_name().data(), static_cast(this->metric_name().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name"); + ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( + 2, this->metric_name(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) +} + +::google::protobuf::uint8* HyperparameterTuningObjective::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + if (this->objective_type() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 1, this->objective_type(), target); + } + + // string metric_name = 2; + if (this->metric_name().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->metric_name().data(), static_cast(this->metric_name().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name"); + target = + ::google::protobuf::internal::WireFormatLite::WriteStringToArray( + 2, this->metric_name(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + return target; +} + +size_t HyperparameterTuningObjective::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string metric_name = 2; + if (this->metric_name().size() > 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->metric_name()); + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + if (this->objective_type() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->objective_type()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void HyperparameterTuningObjective::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + GOOGLE_DCHECK_NE(&from, this); + const HyperparameterTuningObjective* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + MergeFrom(*source); + } +} + +void HyperparameterTuningObjective::MergeFrom(const HyperparameterTuningObjective& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.metric_name().size() > 0) { + + metric_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.metric_name_); + } + if (from.objective_type() != 0) { + set_objective_type(from.objective_type()); + } +} + +void HyperparameterTuningObjective::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void HyperparameterTuningObjective::CopyFrom(const HyperparameterTuningObjective& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool HyperparameterTuningObjective::IsInitialized() const { + return true; +} + +void HyperparameterTuningObjective::Swap(HyperparameterTuningObjective* other) { + if (other == this) return; + InternalSwap(other); +} +void HyperparameterTuningObjective::InternalSwap(HyperparameterTuningObjective* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + metric_name_.Swap(&other->metric_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), + GetArenaNoVirtual()); + swap(objective_type_, other->objective_type_); +} + +::google::protobuf::Metadata HyperparameterTuningObjective::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void HyperparameterTuningStrategy::InitAsDefaultInstance() { +} +class HyperparameterTuningStrategy::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +HyperparameterTuningStrategy::HyperparameterTuningStrategy() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) +} +HyperparameterTuningStrategy::HyperparameterTuningStrategy(const HyperparameterTuningStrategy& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) +} + +void HyperparameterTuningStrategy::SharedCtor() { +} + +HyperparameterTuningStrategy::~HyperparameterTuningStrategy() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + SharedDtor(); +} + +void HyperparameterTuningStrategy::SharedDtor() { +} + +void HyperparameterTuningStrategy::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const HyperparameterTuningStrategy& HyperparameterTuningStrategy::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_HyperparameterTuningStrategy_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void HyperparameterTuningStrategy::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* HyperparameterTuningStrategy::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool HyperparameterTuningStrategy::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void HyperparameterTuningStrategy::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) +} + +::google::protobuf::uint8* HyperparameterTuningStrategy::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + return target; +} + +size_t HyperparameterTuningStrategy::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void HyperparameterTuningStrategy::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + GOOGLE_DCHECK_NE(&from, this); + const HyperparameterTuningStrategy* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + MergeFrom(*source); + } +} + +void HyperparameterTuningStrategy::MergeFrom(const HyperparameterTuningStrategy& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void HyperparameterTuningStrategy::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void HyperparameterTuningStrategy::CopyFrom(const HyperparameterTuningStrategy& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool HyperparameterTuningStrategy::IsInitialized() const { + return true; +} + +void HyperparameterTuningStrategy::Swap(HyperparameterTuningStrategy* other) { + if (other == this) return; + InternalSwap(other); +} +void HyperparameterTuningStrategy::InternalSwap(HyperparameterTuningStrategy* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata HyperparameterTuningStrategy::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void TrainingJobEarlyStoppingType::InitAsDefaultInstance() { +} +class TrainingJobEarlyStoppingType::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +TrainingJobEarlyStoppingType::TrainingJobEarlyStoppingType() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) +} +TrainingJobEarlyStoppingType::TrainingJobEarlyStoppingType(const TrainingJobEarlyStoppingType& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) +} + +void TrainingJobEarlyStoppingType::SharedCtor() { +} + +TrainingJobEarlyStoppingType::~TrainingJobEarlyStoppingType() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + SharedDtor(); +} + +void TrainingJobEarlyStoppingType::SharedDtor() { +} + +void TrainingJobEarlyStoppingType::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const TrainingJobEarlyStoppingType& TrainingJobEarlyStoppingType::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_TrainingJobEarlyStoppingType_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void TrainingJobEarlyStoppingType::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* TrainingJobEarlyStoppingType::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool TrainingJobEarlyStoppingType::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void TrainingJobEarlyStoppingType::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) +} + +::google::protobuf::uint8* TrainingJobEarlyStoppingType::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + return target; +} + +size_t TrainingJobEarlyStoppingType::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void TrainingJobEarlyStoppingType::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + GOOGLE_DCHECK_NE(&from, this); + const TrainingJobEarlyStoppingType* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + MergeFrom(*source); + } +} + +void TrainingJobEarlyStoppingType::MergeFrom(const TrainingJobEarlyStoppingType& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void TrainingJobEarlyStoppingType::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void TrainingJobEarlyStoppingType::CopyFrom(const TrainingJobEarlyStoppingType& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool TrainingJobEarlyStoppingType::IsInitialized() const { + return true; +} + +void TrainingJobEarlyStoppingType::Swap(TrainingJobEarlyStoppingType* other) { + if (other == this) return; + InternalSwap(other); +} +void TrainingJobEarlyStoppingType::InternalSwap(TrainingJobEarlyStoppingType* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata TrainingJobEarlyStoppingType::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void HyperparameterTuningJobConfig::InitAsDefaultInstance() { + ::flyteidl::plugins::sagemaker::_HyperparameterTuningJobConfig_default_instance_._instance.get_mutable()->hyperparameter_ranges_ = const_cast< ::flyteidl::plugins::sagemaker::ParameterRanges*>( + ::flyteidl::plugins::sagemaker::ParameterRanges::internal_default_instance()); + ::flyteidl::plugins::sagemaker::_HyperparameterTuningJobConfig_default_instance_._instance.get_mutable()->tuning_objective_ = const_cast< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective*>( + ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective::internal_default_instance()); +} +class HyperparameterTuningJobConfig::HasBitSetters { + public: + static const ::flyteidl::plugins::sagemaker::ParameterRanges& hyperparameter_ranges(const HyperparameterTuningJobConfig* msg); + static const ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective& tuning_objective(const HyperparameterTuningJobConfig* msg); +}; + +const ::flyteidl::plugins::sagemaker::ParameterRanges& +HyperparameterTuningJobConfig::HasBitSetters::hyperparameter_ranges(const HyperparameterTuningJobConfig* msg) { + return *msg->hyperparameter_ranges_; +} +const ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective& +HyperparameterTuningJobConfig::HasBitSetters::tuning_objective(const HyperparameterTuningJobConfig* msg) { + return *msg->tuning_objective_; +} +void HyperparameterTuningJobConfig::clear_hyperparameter_ranges() { + if (GetArenaNoVirtual() == nullptr && hyperparameter_ranges_ != nullptr) { + delete hyperparameter_ranges_; + } + hyperparameter_ranges_ = nullptr; +} +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int HyperparameterTuningJobConfig::kHyperparameterRangesFieldNumber; +const int HyperparameterTuningJobConfig::kTuningStrategyFieldNumber; +const int HyperparameterTuningJobConfig::kTuningObjectiveFieldNumber; +const int HyperparameterTuningJobConfig::kTrainingJobEarlyStoppingTypeFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +HyperparameterTuningJobConfig::HyperparameterTuningJobConfig() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) +} +HyperparameterTuningJobConfig::HyperparameterTuningJobConfig(const HyperparameterTuningJobConfig& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + if (from.has_hyperparameter_ranges()) { + hyperparameter_ranges_ = new ::flyteidl::plugins::sagemaker::ParameterRanges(*from.hyperparameter_ranges_); + } else { + hyperparameter_ranges_ = nullptr; + } + if (from.has_tuning_objective()) { + tuning_objective_ = new ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective(*from.tuning_objective_); + } else { + tuning_objective_ = nullptr; + } + ::memcpy(&tuning_strategy_, &from.tuning_strategy_, + static_cast(reinterpret_cast(&training_job_early_stopping_type_) - + reinterpret_cast(&tuning_strategy_)) + sizeof(training_job_early_stopping_type_)); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) +} + +void HyperparameterTuningJobConfig::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_HyperparameterTuningJobConfig_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + ::memset(&hyperparameter_ranges_, 0, static_cast( + reinterpret_cast(&training_job_early_stopping_type_) - + reinterpret_cast(&hyperparameter_ranges_)) + sizeof(training_job_early_stopping_type_)); +} + +HyperparameterTuningJobConfig::~HyperparameterTuningJobConfig() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + SharedDtor(); +} + +void HyperparameterTuningJobConfig::SharedDtor() { + if (this != internal_default_instance()) delete hyperparameter_ranges_; + if (this != internal_default_instance()) delete tuning_objective_; +} + +void HyperparameterTuningJobConfig::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const HyperparameterTuningJobConfig& HyperparameterTuningJobConfig::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_HyperparameterTuningJobConfig_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void HyperparameterTuningJobConfig::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + if (GetArenaNoVirtual() == nullptr && hyperparameter_ranges_ != nullptr) { + delete hyperparameter_ranges_; + } + hyperparameter_ranges_ = nullptr; + if (GetArenaNoVirtual() == nullptr && tuning_objective_ != nullptr) { + delete tuning_objective_; + } + tuning_objective_ = nullptr; + ::memset(&tuning_strategy_, 0, static_cast( + reinterpret_cast(&training_job_early_stopping_type_) - + reinterpret_cast(&tuning_strategy_)) + sizeof(training_job_early_stopping_type_)); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* HyperparameterTuningJobConfig::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::ParameterRanges::_InternalParse; + object = msg->mutable_hyperparameter_ranges(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + // .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 16) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_tuning_strategy(static_cast<::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective::_InternalParse; + object = msg->mutable_tuning_objective(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + // .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + case 4: { + if (static_cast<::google::protobuf::uint8>(tag) != 32) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_training_job_early_stopping_type(static_cast<::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool HyperparameterTuningJobConfig::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_hyperparameter_ranges())); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (16 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_tuning_strategy(static_cast< ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (26 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_tuning_objective())); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + case 4: { + if (static_cast< ::google::protobuf::uint8>(tag) == (32 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_training_job_early_stopping_type(static_cast< ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void HyperparameterTuningJobConfig::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + if (this->has_hyperparameter_ranges()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 1, HasBitSetters::hyperparameter_ranges(this), output); + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + if (this->tuning_strategy() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 2, this->tuning_strategy(), output); + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + if (this->has_tuning_objective()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 3, HasBitSetters::tuning_objective(this), output); + } + + // .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + if (this->training_job_early_stopping_type() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 4, this->training_job_early_stopping_type(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) +} + +::google::protobuf::uint8* HyperparameterTuningJobConfig::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + if (this->has_hyperparameter_ranges()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 1, HasBitSetters::hyperparameter_ranges(this), target); + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + if (this->tuning_strategy() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 2, this->tuning_strategy(), target); + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + if (this->has_tuning_objective()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 3, HasBitSetters::tuning_objective(this), target); + } + + // .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + if (this->training_job_early_stopping_type() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 4, this->training_job_early_stopping_type(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + return target; +} + +size_t HyperparameterTuningJobConfig::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + if (this->has_hyperparameter_ranges()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *hyperparameter_ranges_); + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + if (this->has_tuning_objective()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *tuning_objective_); + } + + // .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + if (this->tuning_strategy() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->tuning_strategy()); + } + + // .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + if (this->training_job_early_stopping_type() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->training_job_early_stopping_type()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void HyperparameterTuningJobConfig::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + GOOGLE_DCHECK_NE(&from, this); + const HyperparameterTuningJobConfig* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + MergeFrom(*source); + } +} + +void HyperparameterTuningJobConfig::MergeFrom(const HyperparameterTuningJobConfig& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.has_hyperparameter_ranges()) { + mutable_hyperparameter_ranges()->::flyteidl::plugins::sagemaker::ParameterRanges::MergeFrom(from.hyperparameter_ranges()); + } + if (from.has_tuning_objective()) { + mutable_tuning_objective()->::flyteidl::plugins::sagemaker::HyperparameterTuningObjective::MergeFrom(from.tuning_objective()); + } + if (from.tuning_strategy() != 0) { + set_tuning_strategy(from.tuning_strategy()); + } + if (from.training_job_early_stopping_type() != 0) { + set_training_job_early_stopping_type(from.training_job_early_stopping_type()); + } +} + +void HyperparameterTuningJobConfig::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void HyperparameterTuningJobConfig::CopyFrom(const HyperparameterTuningJobConfig& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool HyperparameterTuningJobConfig::IsInitialized() const { + return true; +} + +void HyperparameterTuningJobConfig::Swap(HyperparameterTuningJobConfig* other) { + if (other == this) return; + InternalSwap(other); +} +void HyperparameterTuningJobConfig::InternalSwap(HyperparameterTuningJobConfig* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + swap(hyperparameter_ranges_, other->hyperparameter_ranges_); + swap(tuning_objective_, other->tuning_objective_); + swap(tuning_strategy_, other->tuning_strategy_); + swap(training_job_early_stopping_type_, other->training_job_early_stopping_type_); +} + +::google::protobuf::Metadata HyperparameterTuningJobConfig::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto[kIndexInFileMessages]; +} + + +// @@protoc_insertion_point(namespace_scope) +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +namespace google { +namespace protobuf { +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::HyperparameterTuningJob* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::HyperparameterTuningJob >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::HyperparameterTuningJob >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig >(arena); +} +} // namespace protobuf +} // namespace google + +// @@protoc_insertion_point(global_scope) +#include diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.h b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.h new file mode 100644 index 0000000000..1e09a9443a --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.h @@ -0,0 +1,1283 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto + +#ifndef PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto +#define PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3007000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3007000 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +#include "flyteidl/plugins/sagemaker/parameter_ranges.pb.h" +#include "flyteidl/plugins/sagemaker/training_job.pb.h" +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto + +// Internal implementation detail -- do not use these members. +struct TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto { + static const ::google::protobuf::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::AuxillaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::ParseTable schema[6] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::FieldMetadata field_metadata[]; + static const ::google::protobuf::internal::SerializationTable serialization_table[]; + static const ::google::protobuf::uint32 offsets[]; +}; +void AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto(); +namespace flyteidl { +namespace plugins { +namespace sagemaker { +class HyperparameterTuningJob; +class HyperparameterTuningJobDefaultTypeInternal; +extern HyperparameterTuningJobDefaultTypeInternal _HyperparameterTuningJob_default_instance_; +class HyperparameterTuningJobConfig; +class HyperparameterTuningJobConfigDefaultTypeInternal; +extern HyperparameterTuningJobConfigDefaultTypeInternal _HyperparameterTuningJobConfig_default_instance_; +class HyperparameterTuningObjective; +class HyperparameterTuningObjectiveDefaultTypeInternal; +extern HyperparameterTuningObjectiveDefaultTypeInternal _HyperparameterTuningObjective_default_instance_; +class HyperparameterTuningObjectiveType; +class HyperparameterTuningObjectiveTypeDefaultTypeInternal; +extern HyperparameterTuningObjectiveTypeDefaultTypeInternal _HyperparameterTuningObjectiveType_default_instance_; +class HyperparameterTuningStrategy; +class HyperparameterTuningStrategyDefaultTypeInternal; +extern HyperparameterTuningStrategyDefaultTypeInternal _HyperparameterTuningStrategy_default_instance_; +class TrainingJobEarlyStoppingType; +class TrainingJobEarlyStoppingTypeDefaultTypeInternal; +extern TrainingJobEarlyStoppingTypeDefaultTypeInternal _TrainingJobEarlyStoppingType_default_instance_; +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +namespace google { +namespace protobuf { +template<> ::flyteidl::plugins::sagemaker::HyperparameterTuningJob* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::HyperparameterTuningJob>(Arena*); +template<> ::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::HyperparameterTuningJobConfig>(Arena*); +template<> ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::HyperparameterTuningObjective>(Arena*); +template<> ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType>(Arena*); +template<> ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy>(Arena*); +template<> ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType>(Arena*); +} // namespace protobuf +} // namespace google +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +enum HyperparameterTuningObjectiveType_Value { + HyperparameterTuningObjectiveType_Value_MINIMIZE = 0, + HyperparameterTuningObjectiveType_Value_MAXIMIZE = 1, + HyperparameterTuningObjectiveType_Value_HyperparameterTuningObjectiveType_Value_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + HyperparameterTuningObjectiveType_Value_HyperparameterTuningObjectiveType_Value_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool HyperparameterTuningObjectiveType_Value_IsValid(int value); +const HyperparameterTuningObjectiveType_Value HyperparameterTuningObjectiveType_Value_Value_MIN = HyperparameterTuningObjectiveType_Value_MINIMIZE; +const HyperparameterTuningObjectiveType_Value HyperparameterTuningObjectiveType_Value_Value_MAX = HyperparameterTuningObjectiveType_Value_MAXIMIZE; +const int HyperparameterTuningObjectiveType_Value_Value_ARRAYSIZE = HyperparameterTuningObjectiveType_Value_Value_MAX + 1; + +const ::google::protobuf::EnumDescriptor* HyperparameterTuningObjectiveType_Value_descriptor(); +inline const ::std::string& HyperparameterTuningObjectiveType_Value_Name(HyperparameterTuningObjectiveType_Value value) { + return ::google::protobuf::internal::NameOfEnum( + HyperparameterTuningObjectiveType_Value_descriptor(), value); +} +inline bool HyperparameterTuningObjectiveType_Value_Parse( + const ::std::string& name, HyperparameterTuningObjectiveType_Value* value) { + return ::google::protobuf::internal::ParseNamedEnum( + HyperparameterTuningObjectiveType_Value_descriptor(), name, value); +} +enum HyperparameterTuningStrategy_Value { + HyperparameterTuningStrategy_Value_BAYESIAN = 0, + HyperparameterTuningStrategy_Value_RANDOM = 1, + HyperparameterTuningStrategy_Value_HyperparameterTuningStrategy_Value_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + HyperparameterTuningStrategy_Value_HyperparameterTuningStrategy_Value_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool HyperparameterTuningStrategy_Value_IsValid(int value); +const HyperparameterTuningStrategy_Value HyperparameterTuningStrategy_Value_Value_MIN = HyperparameterTuningStrategy_Value_BAYESIAN; +const HyperparameterTuningStrategy_Value HyperparameterTuningStrategy_Value_Value_MAX = HyperparameterTuningStrategy_Value_RANDOM; +const int HyperparameterTuningStrategy_Value_Value_ARRAYSIZE = HyperparameterTuningStrategy_Value_Value_MAX + 1; + +const ::google::protobuf::EnumDescriptor* HyperparameterTuningStrategy_Value_descriptor(); +inline const ::std::string& HyperparameterTuningStrategy_Value_Name(HyperparameterTuningStrategy_Value value) { + return ::google::protobuf::internal::NameOfEnum( + HyperparameterTuningStrategy_Value_descriptor(), value); +} +inline bool HyperparameterTuningStrategy_Value_Parse( + const ::std::string& name, HyperparameterTuningStrategy_Value* value) { + return ::google::protobuf::internal::ParseNamedEnum( + HyperparameterTuningStrategy_Value_descriptor(), name, value); +} +enum TrainingJobEarlyStoppingType_Value { + TrainingJobEarlyStoppingType_Value_OFF = 0, + TrainingJobEarlyStoppingType_Value_AUTO = 1, + TrainingJobEarlyStoppingType_Value_TrainingJobEarlyStoppingType_Value_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + TrainingJobEarlyStoppingType_Value_TrainingJobEarlyStoppingType_Value_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool TrainingJobEarlyStoppingType_Value_IsValid(int value); +const TrainingJobEarlyStoppingType_Value TrainingJobEarlyStoppingType_Value_Value_MIN = TrainingJobEarlyStoppingType_Value_OFF; +const TrainingJobEarlyStoppingType_Value TrainingJobEarlyStoppingType_Value_Value_MAX = TrainingJobEarlyStoppingType_Value_AUTO; +const int TrainingJobEarlyStoppingType_Value_Value_ARRAYSIZE = TrainingJobEarlyStoppingType_Value_Value_MAX + 1; + +const ::google::protobuf::EnumDescriptor* TrainingJobEarlyStoppingType_Value_descriptor(); +inline const ::std::string& TrainingJobEarlyStoppingType_Value_Name(TrainingJobEarlyStoppingType_Value value) { + return ::google::protobuf::internal::NameOfEnum( + TrainingJobEarlyStoppingType_Value_descriptor(), value); +} +inline bool TrainingJobEarlyStoppingType_Value_Parse( + const ::std::string& name, TrainingJobEarlyStoppingType_Value* value) { + return ::google::protobuf::internal::ParseNamedEnum( + TrainingJobEarlyStoppingType_Value_descriptor(), name, value); +} +// =================================================================== + +class HyperparameterTuningJob final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.HyperparameterTuningJob) */ { + public: + HyperparameterTuningJob(); + virtual ~HyperparameterTuningJob(); + + HyperparameterTuningJob(const HyperparameterTuningJob& from); + + inline HyperparameterTuningJob& operator=(const HyperparameterTuningJob& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + HyperparameterTuningJob(HyperparameterTuningJob&& from) noexcept + : HyperparameterTuningJob() { + *this = ::std::move(from); + } + + inline HyperparameterTuningJob& operator=(HyperparameterTuningJob&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const HyperparameterTuningJob& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const HyperparameterTuningJob* internal_default_instance() { + return reinterpret_cast( + &_HyperparameterTuningJob_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + void Swap(HyperparameterTuningJob* other); + friend void swap(HyperparameterTuningJob& a, HyperparameterTuningJob& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline HyperparameterTuningJob* New() const final { + return CreateMaybeMessage(nullptr); + } + + HyperparameterTuningJob* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const HyperparameterTuningJob& from); + void MergeFrom(const HyperparameterTuningJob& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(HyperparameterTuningJob* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + bool has_training_job() const; + void clear_training_job(); + static const int kTrainingJobFieldNumber = 1; + const ::flyteidl::plugins::sagemaker::TrainingJob& training_job() const; + ::flyteidl::plugins::sagemaker::TrainingJob* release_training_job(); + ::flyteidl::plugins::sagemaker::TrainingJob* mutable_training_job(); + void set_allocated_training_job(::flyteidl::plugins::sagemaker::TrainingJob* training_job); + + // int64 max_number_of_training_jobs = 2; + void clear_max_number_of_training_jobs(); + static const int kMaxNumberOfTrainingJobsFieldNumber = 2; + ::google::protobuf::int64 max_number_of_training_jobs() const; + void set_max_number_of_training_jobs(::google::protobuf::int64 value); + + // int64 max_parallel_training_jobs = 3; + void clear_max_parallel_training_jobs(); + static const int kMaxParallelTrainingJobsFieldNumber = 3; + ::google::protobuf::int64 max_parallel_training_jobs() const; + void set_max_parallel_training_jobs(::google::protobuf::int64 value); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::flyteidl::plugins::sagemaker::TrainingJob* training_job_; + ::google::protobuf::int64 max_number_of_training_jobs_; + ::google::protobuf::int64 max_parallel_training_jobs_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class HyperparameterTuningObjectiveType final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) */ { + public: + HyperparameterTuningObjectiveType(); + virtual ~HyperparameterTuningObjectiveType(); + + HyperparameterTuningObjectiveType(const HyperparameterTuningObjectiveType& from); + + inline HyperparameterTuningObjectiveType& operator=(const HyperparameterTuningObjectiveType& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + HyperparameterTuningObjectiveType(HyperparameterTuningObjectiveType&& from) noexcept + : HyperparameterTuningObjectiveType() { + *this = ::std::move(from); + } + + inline HyperparameterTuningObjectiveType& operator=(HyperparameterTuningObjectiveType&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const HyperparameterTuningObjectiveType& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const HyperparameterTuningObjectiveType* internal_default_instance() { + return reinterpret_cast( + &_HyperparameterTuningObjectiveType_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + void Swap(HyperparameterTuningObjectiveType* other); + friend void swap(HyperparameterTuningObjectiveType& a, HyperparameterTuningObjectiveType& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline HyperparameterTuningObjectiveType* New() const final { + return CreateMaybeMessage(nullptr); + } + + HyperparameterTuningObjectiveType* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const HyperparameterTuningObjectiveType& from); + void MergeFrom(const HyperparameterTuningObjectiveType& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(HyperparameterTuningObjectiveType* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef HyperparameterTuningObjectiveType_Value Value; + static const Value MINIMIZE = + HyperparameterTuningObjectiveType_Value_MINIMIZE; + static const Value MAXIMIZE = + HyperparameterTuningObjectiveType_Value_MAXIMIZE; + static inline bool Value_IsValid(int value) { + return HyperparameterTuningObjectiveType_Value_IsValid(value); + } + static const Value Value_MIN = + HyperparameterTuningObjectiveType_Value_Value_MIN; + static const Value Value_MAX = + HyperparameterTuningObjectiveType_Value_Value_MAX; + static const int Value_ARRAYSIZE = + HyperparameterTuningObjectiveType_Value_Value_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Value_descriptor() { + return HyperparameterTuningObjectiveType_Value_descriptor(); + } + static inline const ::std::string& Value_Name(Value value) { + return HyperparameterTuningObjectiveType_Value_Name(value); + } + static inline bool Value_Parse(const ::std::string& name, + Value* value) { + return HyperparameterTuningObjectiveType_Value_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class HyperparameterTuningObjective final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) */ { + public: + HyperparameterTuningObjective(); + virtual ~HyperparameterTuningObjective(); + + HyperparameterTuningObjective(const HyperparameterTuningObjective& from); + + inline HyperparameterTuningObjective& operator=(const HyperparameterTuningObjective& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + HyperparameterTuningObjective(HyperparameterTuningObjective&& from) noexcept + : HyperparameterTuningObjective() { + *this = ::std::move(from); + } + + inline HyperparameterTuningObjective& operator=(HyperparameterTuningObjective&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const HyperparameterTuningObjective& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const HyperparameterTuningObjective* internal_default_instance() { + return reinterpret_cast( + &_HyperparameterTuningObjective_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + void Swap(HyperparameterTuningObjective* other); + friend void swap(HyperparameterTuningObjective& a, HyperparameterTuningObjective& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline HyperparameterTuningObjective* New() const final { + return CreateMaybeMessage(nullptr); + } + + HyperparameterTuningObjective* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const HyperparameterTuningObjective& from); + void MergeFrom(const HyperparameterTuningObjective& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(HyperparameterTuningObjective* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // string metric_name = 2; + void clear_metric_name(); + static const int kMetricNameFieldNumber = 2; + const ::std::string& metric_name() const; + void set_metric_name(const ::std::string& value); + #if LANG_CXX11 + void set_metric_name(::std::string&& value); + #endif + void set_metric_name(const char* value); + void set_metric_name(const char* value, size_t size); + ::std::string* mutable_metric_name(); + ::std::string* release_metric_name(); + void set_allocated_metric_name(::std::string* metric_name); + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + void clear_objective_type(); + static const int kObjectiveTypeFieldNumber = 1; + ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value objective_type() const; + void set_objective_type(::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value value); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::google::protobuf::internal::ArenaStringPtr metric_name_; + int objective_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class HyperparameterTuningStrategy final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) */ { + public: + HyperparameterTuningStrategy(); + virtual ~HyperparameterTuningStrategy(); + + HyperparameterTuningStrategy(const HyperparameterTuningStrategy& from); + + inline HyperparameterTuningStrategy& operator=(const HyperparameterTuningStrategy& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + HyperparameterTuningStrategy(HyperparameterTuningStrategy&& from) noexcept + : HyperparameterTuningStrategy() { + *this = ::std::move(from); + } + + inline HyperparameterTuningStrategy& operator=(HyperparameterTuningStrategy&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const HyperparameterTuningStrategy& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const HyperparameterTuningStrategy* internal_default_instance() { + return reinterpret_cast( + &_HyperparameterTuningStrategy_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; + + void Swap(HyperparameterTuningStrategy* other); + friend void swap(HyperparameterTuningStrategy& a, HyperparameterTuningStrategy& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline HyperparameterTuningStrategy* New() const final { + return CreateMaybeMessage(nullptr); + } + + HyperparameterTuningStrategy* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const HyperparameterTuningStrategy& from); + void MergeFrom(const HyperparameterTuningStrategy& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(HyperparameterTuningStrategy* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef HyperparameterTuningStrategy_Value Value; + static const Value BAYESIAN = + HyperparameterTuningStrategy_Value_BAYESIAN; + static const Value RANDOM = + HyperparameterTuningStrategy_Value_RANDOM; + static inline bool Value_IsValid(int value) { + return HyperparameterTuningStrategy_Value_IsValid(value); + } + static const Value Value_MIN = + HyperparameterTuningStrategy_Value_Value_MIN; + static const Value Value_MAX = + HyperparameterTuningStrategy_Value_Value_MAX; + static const int Value_ARRAYSIZE = + HyperparameterTuningStrategy_Value_Value_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Value_descriptor() { + return HyperparameterTuningStrategy_Value_descriptor(); + } + static inline const ::std::string& Value_Name(Value value) { + return HyperparameterTuningStrategy_Value_Name(value); + } + static inline bool Value_Parse(const ::std::string& name, + Value* value) { + return HyperparameterTuningStrategy_Value_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class TrainingJobEarlyStoppingType final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) */ { + public: + TrainingJobEarlyStoppingType(); + virtual ~TrainingJobEarlyStoppingType(); + + TrainingJobEarlyStoppingType(const TrainingJobEarlyStoppingType& from); + + inline TrainingJobEarlyStoppingType& operator=(const TrainingJobEarlyStoppingType& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + TrainingJobEarlyStoppingType(TrainingJobEarlyStoppingType&& from) noexcept + : TrainingJobEarlyStoppingType() { + *this = ::std::move(from); + } + + inline TrainingJobEarlyStoppingType& operator=(TrainingJobEarlyStoppingType&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const TrainingJobEarlyStoppingType& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const TrainingJobEarlyStoppingType* internal_default_instance() { + return reinterpret_cast( + &_TrainingJobEarlyStoppingType_default_instance_); + } + static constexpr int kIndexInFileMessages = + 4; + + void Swap(TrainingJobEarlyStoppingType* other); + friend void swap(TrainingJobEarlyStoppingType& a, TrainingJobEarlyStoppingType& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline TrainingJobEarlyStoppingType* New() const final { + return CreateMaybeMessage(nullptr); + } + + TrainingJobEarlyStoppingType* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const TrainingJobEarlyStoppingType& from); + void MergeFrom(const TrainingJobEarlyStoppingType& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(TrainingJobEarlyStoppingType* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef TrainingJobEarlyStoppingType_Value Value; + static const Value OFF = + TrainingJobEarlyStoppingType_Value_OFF; + static const Value AUTO = + TrainingJobEarlyStoppingType_Value_AUTO; + static inline bool Value_IsValid(int value) { + return TrainingJobEarlyStoppingType_Value_IsValid(value); + } + static const Value Value_MIN = + TrainingJobEarlyStoppingType_Value_Value_MIN; + static const Value Value_MAX = + TrainingJobEarlyStoppingType_Value_Value_MAX; + static const int Value_ARRAYSIZE = + TrainingJobEarlyStoppingType_Value_Value_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Value_descriptor() { + return TrainingJobEarlyStoppingType_Value_descriptor(); + } + static inline const ::std::string& Value_Name(Value value) { + return TrainingJobEarlyStoppingType_Value_Name(value); + } + static inline bool Value_Parse(const ::std::string& name, + Value* value) { + return TrainingJobEarlyStoppingType_Value_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class HyperparameterTuningJobConfig final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) */ { + public: + HyperparameterTuningJobConfig(); + virtual ~HyperparameterTuningJobConfig(); + + HyperparameterTuningJobConfig(const HyperparameterTuningJobConfig& from); + + inline HyperparameterTuningJobConfig& operator=(const HyperparameterTuningJobConfig& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + HyperparameterTuningJobConfig(HyperparameterTuningJobConfig&& from) noexcept + : HyperparameterTuningJobConfig() { + *this = ::std::move(from); + } + + inline HyperparameterTuningJobConfig& operator=(HyperparameterTuningJobConfig&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const HyperparameterTuningJobConfig& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const HyperparameterTuningJobConfig* internal_default_instance() { + return reinterpret_cast( + &_HyperparameterTuningJobConfig_default_instance_); + } + static constexpr int kIndexInFileMessages = + 5; + + void Swap(HyperparameterTuningJobConfig* other); + friend void swap(HyperparameterTuningJobConfig& a, HyperparameterTuningJobConfig& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline HyperparameterTuningJobConfig* New() const final { + return CreateMaybeMessage(nullptr); + } + + HyperparameterTuningJobConfig* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const HyperparameterTuningJobConfig& from); + void MergeFrom(const HyperparameterTuningJobConfig& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(HyperparameterTuningJobConfig* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + bool has_hyperparameter_ranges() const; + void clear_hyperparameter_ranges(); + static const int kHyperparameterRangesFieldNumber = 1; + const ::flyteidl::plugins::sagemaker::ParameterRanges& hyperparameter_ranges() const; + ::flyteidl::plugins::sagemaker::ParameterRanges* release_hyperparameter_ranges(); + ::flyteidl::plugins::sagemaker::ParameterRanges* mutable_hyperparameter_ranges(); + void set_allocated_hyperparameter_ranges(::flyteidl::plugins::sagemaker::ParameterRanges* hyperparameter_ranges); + + // .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + bool has_tuning_objective() const; + void clear_tuning_objective(); + static const int kTuningObjectiveFieldNumber = 3; + const ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective& tuning_objective() const; + ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* release_tuning_objective(); + ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* mutable_tuning_objective(); + void set_allocated_tuning_objective(::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* tuning_objective); + + // .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + void clear_tuning_strategy(); + static const int kTuningStrategyFieldNumber = 2; + ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value tuning_strategy() const; + void set_tuning_strategy(::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value value); + + // .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + void clear_training_job_early_stopping_type(); + static const int kTrainingJobEarlyStoppingTypeFieldNumber = 4; + ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value training_job_early_stopping_type() const; + void set_training_job_early_stopping_type(::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value value); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::flyteidl::plugins::sagemaker::ParameterRanges* hyperparameter_ranges_; + ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* tuning_objective_; + int tuning_strategy_; + int training_job_early_stopping_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// HyperparameterTuningJob + +// .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; +inline bool HyperparameterTuningJob::has_training_job() const { + return this != internal_default_instance() && training_job_ != nullptr; +} +inline const ::flyteidl::plugins::sagemaker::TrainingJob& HyperparameterTuningJob::training_job() const { + const ::flyteidl::plugins::sagemaker::TrainingJob* p = training_job_; + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningJob.training_job) + return p != nullptr ? *p : *reinterpret_cast( + &::flyteidl::plugins::sagemaker::_TrainingJob_default_instance_); +} +inline ::flyteidl::plugins::sagemaker::TrainingJob* HyperparameterTuningJob::release_training_job() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.HyperparameterTuningJob.training_job) + + ::flyteidl::plugins::sagemaker::TrainingJob* temp = training_job_; + training_job_ = nullptr; + return temp; +} +inline ::flyteidl::plugins::sagemaker::TrainingJob* HyperparameterTuningJob::mutable_training_job() { + + if (training_job_ == nullptr) { + auto* p = CreateMaybeMessage<::flyteidl::plugins::sagemaker::TrainingJob>(GetArenaNoVirtual()); + training_job_ = p; + } + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.HyperparameterTuningJob.training_job) + return training_job_; +} +inline void HyperparameterTuningJob::set_allocated_training_job(::flyteidl::plugins::sagemaker::TrainingJob* training_job) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::google::protobuf::MessageLite*>(training_job_); + } + if (training_job) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + training_job = ::google::protobuf::internal::GetOwnedMessage( + message_arena, training_job, submessage_arena); + } + + } else { + + } + training_job_ = training_job; + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.HyperparameterTuningJob.training_job) +} + +// int64 max_number_of_training_jobs = 2; +inline void HyperparameterTuningJob::clear_max_number_of_training_jobs() { + max_number_of_training_jobs_ = PROTOBUF_LONGLONG(0); +} +inline ::google::protobuf::int64 HyperparameterTuningJob::max_number_of_training_jobs() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningJob.max_number_of_training_jobs) + return max_number_of_training_jobs_; +} +inline void HyperparameterTuningJob::set_max_number_of_training_jobs(::google::protobuf::int64 value) { + + max_number_of_training_jobs_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.HyperparameterTuningJob.max_number_of_training_jobs) +} + +// int64 max_parallel_training_jobs = 3; +inline void HyperparameterTuningJob::clear_max_parallel_training_jobs() { + max_parallel_training_jobs_ = PROTOBUF_LONGLONG(0); +} +inline ::google::protobuf::int64 HyperparameterTuningJob::max_parallel_training_jobs() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningJob.max_parallel_training_jobs) + return max_parallel_training_jobs_; +} +inline void HyperparameterTuningJob::set_max_parallel_training_jobs(::google::protobuf::int64 value) { + + max_parallel_training_jobs_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.HyperparameterTuningJob.max_parallel_training_jobs) +} + +// ------------------------------------------------------------------- + +// HyperparameterTuningObjectiveType + +// ------------------------------------------------------------------- + +// HyperparameterTuningObjective + +// .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; +inline void HyperparameterTuningObjective::clear_objective_type() { + objective_type_ = 0; +} +inline ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value HyperparameterTuningObjective::objective_type() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.objective_type) + return static_cast< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value >(objective_type_); +} +inline void HyperparameterTuningObjective::set_objective_type(::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value value) { + + objective_type_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.objective_type) +} + +// string metric_name = 2; +inline void HyperparameterTuningObjective::clear_metric_name() { + metric_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline const ::std::string& HyperparameterTuningObjective::metric_name() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name) + return metric_name_.GetNoArena(); +} +inline void HyperparameterTuningObjective::set_metric_name(const ::std::string& value) { + + metric_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name) +} +#if LANG_CXX11 +inline void HyperparameterTuningObjective::set_metric_name(::std::string&& value) { + + metric_name_.SetNoArena( + &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); + // @@protoc_insertion_point(field_set_rvalue:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name) +} +#endif +inline void HyperparameterTuningObjective::set_metric_name(const char* value) { + GOOGLE_DCHECK(value != nullptr); + + metric_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); + // @@protoc_insertion_point(field_set_char:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name) +} +inline void HyperparameterTuningObjective::set_metric_name(const char* value, size_t size) { + + metric_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), + ::std::string(reinterpret_cast(value), size)); + // @@protoc_insertion_point(field_set_pointer:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name) +} +inline ::std::string* HyperparameterTuningObjective::mutable_metric_name() { + + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name) + return metric_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline ::std::string* HyperparameterTuningObjective::release_metric_name() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name) + + return metric_name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline void HyperparameterTuningObjective::set_allocated_metric_name(::std::string* metric_name) { + if (metric_name != nullptr) { + + } else { + + } + metric_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), metric_name); + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.HyperparameterTuningObjective.metric_name) +} + +// ------------------------------------------------------------------- + +// HyperparameterTuningStrategy + +// ------------------------------------------------------------------- + +// TrainingJobEarlyStoppingType + +// ------------------------------------------------------------------- + +// HyperparameterTuningJobConfig + +// .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; +inline bool HyperparameterTuningJobConfig::has_hyperparameter_ranges() const { + return this != internal_default_instance() && hyperparameter_ranges_ != nullptr; +} +inline const ::flyteidl::plugins::sagemaker::ParameterRanges& HyperparameterTuningJobConfig::hyperparameter_ranges() const { + const ::flyteidl::plugins::sagemaker::ParameterRanges* p = hyperparameter_ranges_; + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.hyperparameter_ranges) + return p != nullptr ? *p : *reinterpret_cast( + &::flyteidl::plugins::sagemaker::_ParameterRanges_default_instance_); +} +inline ::flyteidl::plugins::sagemaker::ParameterRanges* HyperparameterTuningJobConfig::release_hyperparameter_ranges() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.hyperparameter_ranges) + + ::flyteidl::plugins::sagemaker::ParameterRanges* temp = hyperparameter_ranges_; + hyperparameter_ranges_ = nullptr; + return temp; +} +inline ::flyteidl::plugins::sagemaker::ParameterRanges* HyperparameterTuningJobConfig::mutable_hyperparameter_ranges() { + + if (hyperparameter_ranges_ == nullptr) { + auto* p = CreateMaybeMessage<::flyteidl::plugins::sagemaker::ParameterRanges>(GetArenaNoVirtual()); + hyperparameter_ranges_ = p; + } + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.hyperparameter_ranges) + return hyperparameter_ranges_; +} +inline void HyperparameterTuningJobConfig::set_allocated_hyperparameter_ranges(::flyteidl::plugins::sagemaker::ParameterRanges* hyperparameter_ranges) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::google::protobuf::MessageLite*>(hyperparameter_ranges_); + } + if (hyperparameter_ranges) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + hyperparameter_ranges = ::google::protobuf::internal::GetOwnedMessage( + message_arena, hyperparameter_ranges, submessage_arena); + } + + } else { + + } + hyperparameter_ranges_ = hyperparameter_ranges; + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.hyperparameter_ranges) +} + +// .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; +inline void HyperparameterTuningJobConfig::clear_tuning_strategy() { + tuning_strategy_ = 0; +} +inline ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value HyperparameterTuningJobConfig::tuning_strategy() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.tuning_strategy) + return static_cast< ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value >(tuning_strategy_); +} +inline void HyperparameterTuningJobConfig::set_tuning_strategy(::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value value) { + + tuning_strategy_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.tuning_strategy) +} + +// .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; +inline bool HyperparameterTuningJobConfig::has_tuning_objective() const { + return this != internal_default_instance() && tuning_objective_ != nullptr; +} +inline void HyperparameterTuningJobConfig::clear_tuning_objective() { + if (GetArenaNoVirtual() == nullptr && tuning_objective_ != nullptr) { + delete tuning_objective_; + } + tuning_objective_ = nullptr; +} +inline const ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective& HyperparameterTuningJobConfig::tuning_objective() const { + const ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* p = tuning_objective_; + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.tuning_objective) + return p != nullptr ? *p : *reinterpret_cast( + &::flyteidl::plugins::sagemaker::_HyperparameterTuningObjective_default_instance_); +} +inline ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* HyperparameterTuningJobConfig::release_tuning_objective() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.tuning_objective) + + ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* temp = tuning_objective_; + tuning_objective_ = nullptr; + return temp; +} +inline ::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* HyperparameterTuningJobConfig::mutable_tuning_objective() { + + if (tuning_objective_ == nullptr) { + auto* p = CreateMaybeMessage<::flyteidl::plugins::sagemaker::HyperparameterTuningObjective>(GetArenaNoVirtual()); + tuning_objective_ = p; + } + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.tuning_objective) + return tuning_objective_; +} +inline void HyperparameterTuningJobConfig::set_allocated_tuning_objective(::flyteidl::plugins::sagemaker::HyperparameterTuningObjective* tuning_objective) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete tuning_objective_; + } + if (tuning_objective) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + tuning_objective = ::google::protobuf::internal::GetOwnedMessage( + message_arena, tuning_objective, submessage_arena); + } + + } else { + + } + tuning_objective_ = tuning_objective; + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.tuning_objective) +} + +// .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; +inline void HyperparameterTuningJobConfig::clear_training_job_early_stopping_type() { + training_job_early_stopping_type_ = 0; +} +inline ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value HyperparameterTuningJobConfig::training_job_early_stopping_type() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.training_job_early_stopping_type) + return static_cast< ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value >(training_job_early_stopping_type_); +} +inline void HyperparameterTuningJobConfig::set_training_job_early_stopping_type(::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value value) { + + training_job_early_stopping_type_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig.training_job_early_stopping_type) +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl + +namespace google { +namespace protobuf { + +template <> struct is_proto_enum< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value>() { + return ::flyteidl::plugins::sagemaker::HyperparameterTuningObjectiveType_Value_descriptor(); +} +template <> struct is_proto_enum< ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value>() { + return ::flyteidl::plugins::sagemaker::HyperparameterTuningStrategy_Value_descriptor(); +} +template <> struct is_proto_enum< ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value>() { + return ::flyteidl::plugins::sagemaker::TrainingJobEarlyStoppingType_Value_descriptor(); +} + +} // namespace protobuf +} // namespace google + +// @@protoc_insertion_point(global_scope) + +#include +#endif // PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2fhyperparameter_5ftuning_5fjob_2eproto diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.cc new file mode 100644 index 0000000000..7c840ad690 --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.cc @@ -0,0 +1,26 @@ +// Generated by the gRPC C++ plugin. +// If you make any local change, they will be lost. +// source: flyteidl/plugins/sagemaker/parameter_ranges.proto + +#include "flyteidl/plugins/sagemaker/parameter_ranges.pb.h" +#include "flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +} // namespace flyteidl +} // namespace plugins +} // namespace sagemaker + diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.h b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.h new file mode 100644 index 0000000000..c314f50a3e --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.grpc.pb.h @@ -0,0 +1,49 @@ +// Generated by the gRPC C++ plugin. +// If you make any local change, they will be lost. +// source: flyteidl/plugins/sagemaker/parameter_ranges.proto +#ifndef GRPC_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto__INCLUDED +#define GRPC_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto__INCLUDED + +#include "flyteidl/plugins/sagemaker/parameter_ranges.pb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace grpc_impl { +class Channel; +class CompletionQueue; +class ServerCompletionQueue; +} // namespace grpc_impl + +namespace grpc { +namespace experimental { +template +class MessageAllocator; +} // namespace experimental +} // namespace grpc_impl + +namespace grpc { +class ServerContext; +} // namespace grpc + +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl + + +#endif // GRPC_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto__INCLUDED diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.pb.cc new file mode 100644 index 0000000000..6933bc399b --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.pb.cc @@ -0,0 +1,2460 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/parameter_ranges.proto + +#include "flyteidl/plugins/sagemaker/parameter_ranges.pb.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include + +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_CategoricalParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_ContinuousParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_IntegerParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_ParameterRanges_ParameterRangeMapEntry_DoNotUse_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto ::google::protobuf::internal::SCCInfo<3> scc_info_ParameterRangeOneOf_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +namespace flyteidl { +namespace plugins { +namespace sagemaker { +class HyperparameterScalingTypeDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _HyperparameterScalingType_default_instance_; +class ContinuousParameterRangeDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _ContinuousParameterRange_default_instance_; +class IntegerParameterRangeDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _IntegerParameterRange_default_instance_; +class CategoricalParameterRangeDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _CategoricalParameterRange_default_instance_; +class ParameterRangeOneOfDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; + const ::flyteidl::plugins::sagemaker::ContinuousParameterRange* continuous_parameter_range_; + const ::flyteidl::plugins::sagemaker::IntegerParameterRange* integer_parameter_range_; + const ::flyteidl::plugins::sagemaker::CategoricalParameterRange* categorical_parameter_range_; +} _ParameterRangeOneOf_default_instance_; +class ParameterRanges_ParameterRangeMapEntry_DoNotUseDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _ParameterRanges_ParameterRangeMapEntry_DoNotUse_default_instance_; +class ParameterRangesDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _ParameterRanges_default_instance_; +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +static void InitDefaultsHyperparameterScalingType_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_HyperparameterScalingType_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::HyperparameterScalingType(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::HyperparameterScalingType::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_HyperparameterScalingType_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsHyperparameterScalingType_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto}, {}}; + +static void InitDefaultsContinuousParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_ContinuousParameterRange_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::ContinuousParameterRange(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::ContinuousParameterRange::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_ContinuousParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsContinuousParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto}, {}}; + +static void InitDefaultsIntegerParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_IntegerParameterRange_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::IntegerParameterRange(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::IntegerParameterRange::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_IntegerParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsIntegerParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto}, {}}; + +static void InitDefaultsCategoricalParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_CategoricalParameterRange_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::CategoricalParameterRange(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::CategoricalParameterRange::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_CategoricalParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsCategoricalParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto}, {}}; + +static void InitDefaultsParameterRangeOneOf_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_ParameterRangeOneOf_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::ParameterRangeOneOf(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::ParameterRangeOneOf::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<3> scc_info_ParameterRangeOneOf_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 3, InitDefaultsParameterRangeOneOf_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto}, { + &scc_info_ContinuousParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base, + &scc_info_IntegerParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base, + &scc_info_CategoricalParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base,}}; + +static void InitDefaultsParameterRanges_ParameterRangeMapEntry_DoNotUse_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_ParameterRanges_ParameterRangeMapEntry_DoNotUse_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse(); + } + ::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<1> scc_info_ParameterRanges_ParameterRangeMapEntry_DoNotUse_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsParameterRanges_ParameterRangeMapEntry_DoNotUse_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto}, { + &scc_info_ParameterRangeOneOf_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base,}}; + +static void InitDefaultsParameterRanges_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_ParameterRanges_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::ParameterRanges(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::ParameterRanges::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<1> scc_info_ParameterRanges_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsParameterRanges_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto}, { + &scc_info_ParameterRanges_ParameterRangeMapEntry_DoNotUse_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base,}}; + +void InitDefaults_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + ::google::protobuf::internal::InitSCC(&scc_info_HyperparameterScalingType_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_ContinuousParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_IntegerParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_CategoricalParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_ParameterRangeOneOf_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_ParameterRanges_ParameterRangeMapEntry_DoNotUse_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_ParameterRanges_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); +} + +::google::protobuf::Metadata file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[7]; +const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[1]; +constexpr ::google::protobuf::ServiceDescriptor const** file_level_service_descriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = nullptr; + +const ::google::protobuf::uint32 TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::HyperparameterScalingType, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ContinuousParameterRange, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ContinuousParameterRange, max_value_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ContinuousParameterRange, min_value_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ContinuousParameterRange, scaling_type_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::IntegerParameterRange, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::IntegerParameterRange, max_value_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::IntegerParameterRange, min_value_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::IntegerParameterRange, scaling_type_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::CategoricalParameterRange, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::CategoricalParameterRange, values_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRangeOneOf, _internal_metadata_), + ~0u, // no _extensions_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRangeOneOf, _oneof_case_[0]), + ~0u, // no _weak_field_map_ + offsetof(::flyteidl::plugins::sagemaker::ParameterRangeOneOfDefaultTypeInternal, continuous_parameter_range_), + offsetof(::flyteidl::plugins::sagemaker::ParameterRangeOneOfDefaultTypeInternal, integer_parameter_range_), + offsetof(::flyteidl::plugins::sagemaker::ParameterRangeOneOfDefaultTypeInternal, categorical_parameter_range_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRangeOneOf, parameter_range_type_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse, _has_bits_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse, key_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse, value_), + 0, + 1, + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRanges, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::ParameterRanges, parameter_range_map_), +}; +static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + { 0, -1, sizeof(::flyteidl::plugins::sagemaker::HyperparameterScalingType)}, + { 5, -1, sizeof(::flyteidl::plugins::sagemaker::ContinuousParameterRange)}, + { 13, -1, sizeof(::flyteidl::plugins::sagemaker::IntegerParameterRange)}, + { 21, -1, sizeof(::flyteidl::plugins::sagemaker::CategoricalParameterRange)}, + { 27, -1, sizeof(::flyteidl::plugins::sagemaker::ParameterRangeOneOf)}, + { 36, 43, sizeof(::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse)}, + { 45, -1, sizeof(::flyteidl::plugins::sagemaker::ParameterRanges)}, +}; + +static ::google::protobuf::Message const * const file_default_instances[] = { + reinterpret_cast(&::flyteidl::plugins::sagemaker::_HyperparameterScalingType_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_ContinuousParameterRange_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_IntegerParameterRange_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_CategoricalParameterRange_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_ParameterRangeOneOf_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_ParameterRanges_ParameterRangeMapEntry_DoNotUse_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_ParameterRanges_default_instance_), +}; + +::google::protobuf::internal::AssignDescriptorsTable assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = { + {}, AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, "flyteidl/plugins/sagemaker/parameter_ranges.proto", schemas, + file_default_instances, TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto::offsets, + file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, 7, file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, file_level_service_descriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, +}; + +const char descriptor_table_protodef_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[] = + "\n1flyteidl/plugins/sagemaker/parameter_r" + "anges.proto\022\032flyteidl.plugins.sagemaker\"" + "c\n\031HyperparameterScalingType\"F\n\005Value\022\010\n" + "\004AUTO\020\000\022\n\n\006LINEAR\020\001\022\017\n\013LOGARITHMIC\020\002\022\026\n\022" + "REVERSELOGARITHMIC\020\003\"\223\001\n\030ContinuousParam" + "eterRange\022\021\n\tmax_value\030\001 \001(\001\022\021\n\tmin_valu" + "e\030\002 \001(\001\022Q\n\014scaling_type\030\003 \001(\0162;.flyteidl" + ".plugins.sagemaker.HyperparameterScaling" + "Type.Value\"\220\001\n\025IntegerParameterRange\022\021\n\t" + "max_value\030\001 \001(\003\022\021\n\tmin_value\030\002 \001(\003\022Q\n\014sc" + "aling_type\030\003 \001(\0162;.flyteidl.plugins.sage" + "maker.HyperparameterScalingType.Value\"+\n" + "\031CategoricalParameterRange\022\016\n\006values\030\001 \003" + "(\t\"\275\002\n\023ParameterRangeOneOf\022Z\n\032continuous" + "_parameter_range\030\001 \001(\01324.flyteidl.plugin" + "s.sagemaker.ContinuousParameterRangeH\000\022T" + "\n\027integer_parameter_range\030\002 \001(\01321.flytei" + "dl.plugins.sagemaker.IntegerParameterRan" + "geH\000\022\\\n\033categorical_parameter_range\030\003 \001(" + "\01325.flyteidl.plugins.sagemaker.Categoric" + "alParameterRangeH\000B\026\n\024parameter_range_ty" + "pe\"\335\001\n\017ParameterRanges\022_\n\023parameter_rang" + "e_map\030\001 \003(\0132B.flyteidl.plugins.sagemaker" + ".ParameterRanges.ParameterRangeMapEntry\032" + "i\n\026ParameterRangeMapEntry\022\013\n\003key\030\001 \001(\t\022>" + "\n\005value\030\002 \001(\0132/.flyteidl.plugins.sagemak" + "er.ParameterRangeOneOf:\0028\001B\?Z=github.com" + "/flyteorg/flyte/flyteidl/gen/pb-go/flyte" + "idl/pluginsb\006proto3" + ; +::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = { + false, InitDefaults_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, + descriptor_table_protodef_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, + "flyteidl/plugins/sagemaker/parameter_ranges.proto", &assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, 1139, +}; + +void AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto() { + static constexpr ::google::protobuf::internal::InitFunc deps[1] = + { + }; + ::google::protobuf::internal::AddDescriptors(&descriptor_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto, deps, 0); +} + +// Force running AddDescriptors() at dynamic initialization time. +static bool dynamic_init_dummy_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto = []() { AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto(); return true; }(); +namespace flyteidl { +namespace plugins { +namespace sagemaker { +const ::google::protobuf::EnumDescriptor* HyperparameterScalingType_Value_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto); + return file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[0]; +} +bool HyperparameterScalingType_Value_IsValid(int value) { + switch (value) { + case 0: + case 1: + case 2: + case 3: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const HyperparameterScalingType_Value HyperparameterScalingType::AUTO; +const HyperparameterScalingType_Value HyperparameterScalingType::LINEAR; +const HyperparameterScalingType_Value HyperparameterScalingType::LOGARITHMIC; +const HyperparameterScalingType_Value HyperparameterScalingType::REVERSELOGARITHMIC; +const HyperparameterScalingType_Value HyperparameterScalingType::Value_MIN; +const HyperparameterScalingType_Value HyperparameterScalingType::Value_MAX; +const int HyperparameterScalingType::Value_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +// =================================================================== + +void HyperparameterScalingType::InitAsDefaultInstance() { +} +class HyperparameterScalingType::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +HyperparameterScalingType::HyperparameterScalingType() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.HyperparameterScalingType) +} +HyperparameterScalingType::HyperparameterScalingType(const HyperparameterScalingType& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.HyperparameterScalingType) +} + +void HyperparameterScalingType::SharedCtor() { +} + +HyperparameterScalingType::~HyperparameterScalingType() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.HyperparameterScalingType) + SharedDtor(); +} + +void HyperparameterScalingType::SharedDtor() { +} + +void HyperparameterScalingType::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const HyperparameterScalingType& HyperparameterScalingType::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_HyperparameterScalingType_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + return *internal_default_instance(); +} + + +void HyperparameterScalingType::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* HyperparameterScalingType::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool HyperparameterScalingType::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.HyperparameterScalingType) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.HyperparameterScalingType) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void HyperparameterScalingType::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.HyperparameterScalingType) +} + +::google::protobuf::uint8* HyperparameterScalingType::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.HyperparameterScalingType) + return target; +} + +size_t HyperparameterScalingType::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void HyperparameterScalingType::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + GOOGLE_DCHECK_NE(&from, this); + const HyperparameterScalingType* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.HyperparameterScalingType) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.HyperparameterScalingType) + MergeFrom(*source); + } +} + +void HyperparameterScalingType::MergeFrom(const HyperparameterScalingType& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void HyperparameterScalingType::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void HyperparameterScalingType::CopyFrom(const HyperparameterScalingType& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.HyperparameterScalingType) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool HyperparameterScalingType::IsInitialized() const { + return true; +} + +void HyperparameterScalingType::Swap(HyperparameterScalingType* other) { + if (other == this) return; + InternalSwap(other); +} +void HyperparameterScalingType::InternalSwap(HyperparameterScalingType* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata HyperparameterScalingType::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void ContinuousParameterRange::InitAsDefaultInstance() { +} +class ContinuousParameterRange::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int ContinuousParameterRange::kMaxValueFieldNumber; +const int ContinuousParameterRange::kMinValueFieldNumber; +const int ContinuousParameterRange::kScalingTypeFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +ContinuousParameterRange::ContinuousParameterRange() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.ContinuousParameterRange) +} +ContinuousParameterRange::ContinuousParameterRange(const ContinuousParameterRange& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::memcpy(&max_value_, &from.max_value_, + static_cast(reinterpret_cast(&scaling_type_) - + reinterpret_cast(&max_value_)) + sizeof(scaling_type_)); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.ContinuousParameterRange) +} + +void ContinuousParameterRange::SharedCtor() { + ::memset(&max_value_, 0, static_cast( + reinterpret_cast(&scaling_type_) - + reinterpret_cast(&max_value_)) + sizeof(scaling_type_)); +} + +ContinuousParameterRange::~ContinuousParameterRange() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.ContinuousParameterRange) + SharedDtor(); +} + +void ContinuousParameterRange::SharedDtor() { +} + +void ContinuousParameterRange::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const ContinuousParameterRange& ContinuousParameterRange::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_ContinuousParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + return *internal_default_instance(); +} + + +void ContinuousParameterRange::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + ::memset(&max_value_, 0, static_cast( + reinterpret_cast(&scaling_type_) - + reinterpret_cast(&max_value_)) + sizeof(scaling_type_)); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* ContinuousParameterRange::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // double max_value = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 9) goto handle_unusual; + msg->set_max_value(::google::protobuf::io::UnalignedLoad(ptr)); + ptr += sizeof(double); + break; + } + // double min_value = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 17) goto handle_unusual; + msg->set_min_value(::google::protobuf::io::UnalignedLoad(ptr)); + ptr += sizeof(double); + break; + } + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 24) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_scaling_type(static_cast<::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool ContinuousParameterRange::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // double max_value = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (9 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>( + input, &max_value_))); + } else { + goto handle_unusual; + } + break; + } + + // double min_value = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (17 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>( + input, &min_value_))); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (24 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_scaling_type(static_cast< ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.ContinuousParameterRange) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.ContinuousParameterRange) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void ContinuousParameterRange::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // double max_value = 1; + if (this->max_value() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteDouble(1, this->max_value(), output); + } + + // double min_value = 2; + if (this->min_value() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteDouble(2, this->min_value(), output); + } + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + if (this->scaling_type() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 3, this->scaling_type(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.ContinuousParameterRange) +} + +::google::protobuf::uint8* ContinuousParameterRange::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // double max_value = 1; + if (this->max_value() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(1, this->max_value(), target); + } + + // double min_value = 2; + if (this->min_value() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(2, this->min_value(), target); + } + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + if (this->scaling_type() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 3, this->scaling_type(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.ContinuousParameterRange) + return target; +} + +size_t ContinuousParameterRange::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // double max_value = 1; + if (this->max_value() != 0) { + total_size += 1 + 8; + } + + // double min_value = 2; + if (this->min_value() != 0) { + total_size += 1 + 8; + } + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + if (this->scaling_type() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->scaling_type()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void ContinuousParameterRange::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + GOOGLE_DCHECK_NE(&from, this); + const ContinuousParameterRange* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.ContinuousParameterRange) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.ContinuousParameterRange) + MergeFrom(*source); + } +} + +void ContinuousParameterRange::MergeFrom(const ContinuousParameterRange& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.max_value() != 0) { + set_max_value(from.max_value()); + } + if (from.min_value() != 0) { + set_min_value(from.min_value()); + } + if (from.scaling_type() != 0) { + set_scaling_type(from.scaling_type()); + } +} + +void ContinuousParameterRange::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void ContinuousParameterRange::CopyFrom(const ContinuousParameterRange& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.ContinuousParameterRange) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ContinuousParameterRange::IsInitialized() const { + return true; +} + +void ContinuousParameterRange::Swap(ContinuousParameterRange* other) { + if (other == this) return; + InternalSwap(other); +} +void ContinuousParameterRange::InternalSwap(ContinuousParameterRange* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + swap(max_value_, other->max_value_); + swap(min_value_, other->min_value_); + swap(scaling_type_, other->scaling_type_); +} + +::google::protobuf::Metadata ContinuousParameterRange::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void IntegerParameterRange::InitAsDefaultInstance() { +} +class IntegerParameterRange::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int IntegerParameterRange::kMaxValueFieldNumber; +const int IntegerParameterRange::kMinValueFieldNumber; +const int IntegerParameterRange::kScalingTypeFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +IntegerParameterRange::IntegerParameterRange() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.IntegerParameterRange) +} +IntegerParameterRange::IntegerParameterRange(const IntegerParameterRange& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::memcpy(&max_value_, &from.max_value_, + static_cast(reinterpret_cast(&scaling_type_) - + reinterpret_cast(&max_value_)) + sizeof(scaling_type_)); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.IntegerParameterRange) +} + +void IntegerParameterRange::SharedCtor() { + ::memset(&max_value_, 0, static_cast( + reinterpret_cast(&scaling_type_) - + reinterpret_cast(&max_value_)) + sizeof(scaling_type_)); +} + +IntegerParameterRange::~IntegerParameterRange() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.IntegerParameterRange) + SharedDtor(); +} + +void IntegerParameterRange::SharedDtor() { +} + +void IntegerParameterRange::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const IntegerParameterRange& IntegerParameterRange::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_IntegerParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + return *internal_default_instance(); +} + + +void IntegerParameterRange::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + ::memset(&max_value_, 0, static_cast( + reinterpret_cast(&scaling_type_) - + reinterpret_cast(&max_value_)) + sizeof(scaling_type_)); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* IntegerParameterRange::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // int64 max_value = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 8) goto handle_unusual; + msg->set_max_value(::google::protobuf::internal::ReadVarint(&ptr)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // int64 min_value = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 16) goto handle_unusual; + msg->set_min_value(::google::protobuf::internal::ReadVarint(&ptr)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 24) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_scaling_type(static_cast<::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool IntegerParameterRange::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // int64 max_value = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (8 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>( + input, &max_value_))); + } else { + goto handle_unusual; + } + break; + } + + // int64 min_value = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (16 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>( + input, &min_value_))); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (24 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_scaling_type(static_cast< ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.IntegerParameterRange) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.IntegerParameterRange) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void IntegerParameterRange::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // int64 max_value = 1; + if (this->max_value() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteInt64(1, this->max_value(), output); + } + + // int64 min_value = 2; + if (this->min_value() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteInt64(2, this->min_value(), output); + } + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + if (this->scaling_type() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 3, this->scaling_type(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.IntegerParameterRange) +} + +::google::protobuf::uint8* IntegerParameterRange::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // int64 max_value = 1; + if (this->max_value() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(1, this->max_value(), target); + } + + // int64 min_value = 2; + if (this->min_value() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(2, this->min_value(), target); + } + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + if (this->scaling_type() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 3, this->scaling_type(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.IntegerParameterRange) + return target; +} + +size_t IntegerParameterRange::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // int64 max_value = 1; + if (this->max_value() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::Int64Size( + this->max_value()); + } + + // int64 min_value = 2; + if (this->min_value() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::Int64Size( + this->min_value()); + } + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + if (this->scaling_type() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->scaling_type()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void IntegerParameterRange::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + GOOGLE_DCHECK_NE(&from, this); + const IntegerParameterRange* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.IntegerParameterRange) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.IntegerParameterRange) + MergeFrom(*source); + } +} + +void IntegerParameterRange::MergeFrom(const IntegerParameterRange& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.max_value() != 0) { + set_max_value(from.max_value()); + } + if (from.min_value() != 0) { + set_min_value(from.min_value()); + } + if (from.scaling_type() != 0) { + set_scaling_type(from.scaling_type()); + } +} + +void IntegerParameterRange::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void IntegerParameterRange::CopyFrom(const IntegerParameterRange& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.IntegerParameterRange) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool IntegerParameterRange::IsInitialized() const { + return true; +} + +void IntegerParameterRange::Swap(IntegerParameterRange* other) { + if (other == this) return; + InternalSwap(other); +} +void IntegerParameterRange::InternalSwap(IntegerParameterRange* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + swap(max_value_, other->max_value_); + swap(min_value_, other->min_value_); + swap(scaling_type_, other->scaling_type_); +} + +::google::protobuf::Metadata IntegerParameterRange::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void CategoricalParameterRange::InitAsDefaultInstance() { +} +class CategoricalParameterRange::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int CategoricalParameterRange::kValuesFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +CategoricalParameterRange::CategoricalParameterRange() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.CategoricalParameterRange) +} +CategoricalParameterRange::CategoricalParameterRange(const CategoricalParameterRange& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr), + values_(from.values_) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.CategoricalParameterRange) +} + +void CategoricalParameterRange::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_CategoricalParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); +} + +CategoricalParameterRange::~CategoricalParameterRange() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.CategoricalParameterRange) + SharedDtor(); +} + +void CategoricalParameterRange::SharedDtor() { +} + +void CategoricalParameterRange::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const CategoricalParameterRange& CategoricalParameterRange::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_CategoricalParameterRange_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + return *internal_default_instance(); +} + + +void CategoricalParameterRange::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + values_.Clear(); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* CategoricalParameterRange::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // repeated string values = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + do { + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + ctx->extra_parse_data().SetFieldName("flyteidl.plugins.sagemaker.CategoricalParameterRange.values"); + object = msg->add_values(); + if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { + parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; + goto string_till_end; + } + GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); + ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); + ptr += size; + if (ptr >= end) break; + } while ((::google::protobuf::io::UnalignedLoad<::google::protobuf::uint64>(ptr) & 255) == 10 && (ptr += 1)); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +string_till_end: + static_cast<::std::string*>(object)->clear(); + static_cast<::std::string*>(object)->reserve(size); + goto len_delim_till_end; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool CategoricalParameterRange::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // repeated string values = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->add_values())); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->values(this->values_size() - 1).data(), + static_cast(this->values(this->values_size() - 1).length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "flyteidl.plugins.sagemaker.CategoricalParameterRange.values")); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.CategoricalParameterRange) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.CategoricalParameterRange) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void CategoricalParameterRange::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // repeated string values = 1; + for (int i = 0, n = this->values_size(); i < n; i++) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->values(i).data(), static_cast(this->values(i).length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.CategoricalParameterRange.values"); + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->values(i), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.CategoricalParameterRange) +} + +::google::protobuf::uint8* CategoricalParameterRange::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // repeated string values = 1; + for (int i = 0, n = this->values_size(); i < n; i++) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->values(i).data(), static_cast(this->values(i).length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.CategoricalParameterRange.values"); + target = ::google::protobuf::internal::WireFormatLite:: + WriteStringToArray(1, this->values(i), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.CategoricalParameterRange) + return target; +} + +size_t CategoricalParameterRange::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // repeated string values = 1; + total_size += 1 * + ::google::protobuf::internal::FromIntSize(this->values_size()); + for (int i = 0, n = this->values_size(); i < n; i++) { + total_size += ::google::protobuf::internal::WireFormatLite::StringSize( + this->values(i)); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void CategoricalParameterRange::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + GOOGLE_DCHECK_NE(&from, this); + const CategoricalParameterRange* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.CategoricalParameterRange) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.CategoricalParameterRange) + MergeFrom(*source); + } +} + +void CategoricalParameterRange::MergeFrom(const CategoricalParameterRange& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + values_.MergeFrom(from.values_); +} + +void CategoricalParameterRange::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void CategoricalParameterRange::CopyFrom(const CategoricalParameterRange& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.CategoricalParameterRange) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool CategoricalParameterRange::IsInitialized() const { + return true; +} + +void CategoricalParameterRange::Swap(CategoricalParameterRange* other) { + if (other == this) return; + InternalSwap(other); +} +void CategoricalParameterRange::InternalSwap(CategoricalParameterRange* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + values_.InternalSwap(CastToBase(&other->values_)); +} + +::google::protobuf::Metadata CategoricalParameterRange::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void ParameterRangeOneOf::InitAsDefaultInstance() { + ::flyteidl::plugins::sagemaker::_ParameterRangeOneOf_default_instance_.continuous_parameter_range_ = const_cast< ::flyteidl::plugins::sagemaker::ContinuousParameterRange*>( + ::flyteidl::plugins::sagemaker::ContinuousParameterRange::internal_default_instance()); + ::flyteidl::plugins::sagemaker::_ParameterRangeOneOf_default_instance_.integer_parameter_range_ = const_cast< ::flyteidl::plugins::sagemaker::IntegerParameterRange*>( + ::flyteidl::plugins::sagemaker::IntegerParameterRange::internal_default_instance()); + ::flyteidl::plugins::sagemaker::_ParameterRangeOneOf_default_instance_.categorical_parameter_range_ = const_cast< ::flyteidl::plugins::sagemaker::CategoricalParameterRange*>( + ::flyteidl::plugins::sagemaker::CategoricalParameterRange::internal_default_instance()); +} +class ParameterRangeOneOf::HasBitSetters { + public: + static const ::flyteidl::plugins::sagemaker::ContinuousParameterRange& continuous_parameter_range(const ParameterRangeOneOf* msg); + static const ::flyteidl::plugins::sagemaker::IntegerParameterRange& integer_parameter_range(const ParameterRangeOneOf* msg); + static const ::flyteidl::plugins::sagemaker::CategoricalParameterRange& categorical_parameter_range(const ParameterRangeOneOf* msg); +}; + +const ::flyteidl::plugins::sagemaker::ContinuousParameterRange& +ParameterRangeOneOf::HasBitSetters::continuous_parameter_range(const ParameterRangeOneOf* msg) { + return *msg->parameter_range_type_.continuous_parameter_range_; +} +const ::flyteidl::plugins::sagemaker::IntegerParameterRange& +ParameterRangeOneOf::HasBitSetters::integer_parameter_range(const ParameterRangeOneOf* msg) { + return *msg->parameter_range_type_.integer_parameter_range_; +} +const ::flyteidl::plugins::sagemaker::CategoricalParameterRange& +ParameterRangeOneOf::HasBitSetters::categorical_parameter_range(const ParameterRangeOneOf* msg) { + return *msg->parameter_range_type_.categorical_parameter_range_; +} +void ParameterRangeOneOf::set_allocated_continuous_parameter_range(::flyteidl::plugins::sagemaker::ContinuousParameterRange* continuous_parameter_range) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + clear_parameter_range_type(); + if (continuous_parameter_range) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + continuous_parameter_range = ::google::protobuf::internal::GetOwnedMessage( + message_arena, continuous_parameter_range, submessage_arena); + } + set_has_continuous_parameter_range(); + parameter_range_type_.continuous_parameter_range_ = continuous_parameter_range; + } + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.ParameterRangeOneOf.continuous_parameter_range) +} +void ParameterRangeOneOf::set_allocated_integer_parameter_range(::flyteidl::plugins::sagemaker::IntegerParameterRange* integer_parameter_range) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + clear_parameter_range_type(); + if (integer_parameter_range) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + integer_parameter_range = ::google::protobuf::internal::GetOwnedMessage( + message_arena, integer_parameter_range, submessage_arena); + } + set_has_integer_parameter_range(); + parameter_range_type_.integer_parameter_range_ = integer_parameter_range; + } + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.ParameterRangeOneOf.integer_parameter_range) +} +void ParameterRangeOneOf::set_allocated_categorical_parameter_range(::flyteidl::plugins::sagemaker::CategoricalParameterRange* categorical_parameter_range) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + clear_parameter_range_type(); + if (categorical_parameter_range) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + categorical_parameter_range = ::google::protobuf::internal::GetOwnedMessage( + message_arena, categorical_parameter_range, submessage_arena); + } + set_has_categorical_parameter_range(); + parameter_range_type_.categorical_parameter_range_ = categorical_parameter_range; + } + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.ParameterRangeOneOf.categorical_parameter_range) +} +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int ParameterRangeOneOf::kContinuousParameterRangeFieldNumber; +const int ParameterRangeOneOf::kIntegerParameterRangeFieldNumber; +const int ParameterRangeOneOf::kCategoricalParameterRangeFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +ParameterRangeOneOf::ParameterRangeOneOf() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.ParameterRangeOneOf) +} +ParameterRangeOneOf::ParameterRangeOneOf(const ParameterRangeOneOf& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + clear_has_parameter_range_type(); + switch (from.parameter_range_type_case()) { + case kContinuousParameterRange: { + mutable_continuous_parameter_range()->::flyteidl::plugins::sagemaker::ContinuousParameterRange::MergeFrom(from.continuous_parameter_range()); + break; + } + case kIntegerParameterRange: { + mutable_integer_parameter_range()->::flyteidl::plugins::sagemaker::IntegerParameterRange::MergeFrom(from.integer_parameter_range()); + break; + } + case kCategoricalParameterRange: { + mutable_categorical_parameter_range()->::flyteidl::plugins::sagemaker::CategoricalParameterRange::MergeFrom(from.categorical_parameter_range()); + break; + } + case PARAMETER_RANGE_TYPE_NOT_SET: { + break; + } + } + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.ParameterRangeOneOf) +} + +void ParameterRangeOneOf::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_ParameterRangeOneOf_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + clear_has_parameter_range_type(); +} + +ParameterRangeOneOf::~ParameterRangeOneOf() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + SharedDtor(); +} + +void ParameterRangeOneOf::SharedDtor() { + if (has_parameter_range_type()) { + clear_parameter_range_type(); + } +} + +void ParameterRangeOneOf::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const ParameterRangeOneOf& ParameterRangeOneOf::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_ParameterRangeOneOf_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + return *internal_default_instance(); +} + + +void ParameterRangeOneOf::clear_parameter_range_type() { +// @@protoc_insertion_point(one_of_clear_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + switch (parameter_range_type_case()) { + case kContinuousParameterRange: { + delete parameter_range_type_.continuous_parameter_range_; + break; + } + case kIntegerParameterRange: { + delete parameter_range_type_.integer_parameter_range_; + break; + } + case kCategoricalParameterRange: { + delete parameter_range_type_.categorical_parameter_range_; + break; + } + case PARAMETER_RANGE_TYPE_NOT_SET: { + break; + } + } + _oneof_case_[0] = PARAMETER_RANGE_TYPE_NOT_SET; +} + + +void ParameterRangeOneOf::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + clear_parameter_range_type(); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* ParameterRangeOneOf::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::ContinuousParameterRange::_InternalParse; + object = msg->mutable_continuous_parameter_range(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + // .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::IntegerParameterRange::_InternalParse; + object = msg->mutable_integer_parameter_range(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + // .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::CategoricalParameterRange::_InternalParse; + object = msg->mutable_categorical_parameter_range(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool ParameterRangeOneOf::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_continuous_parameter_range())); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_integer_parameter_range())); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (26 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_categorical_parameter_range())); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void ParameterRangeOneOf::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + if (has_continuous_parameter_range()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 1, HasBitSetters::continuous_parameter_range(this), output); + } + + // .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + if (has_integer_parameter_range()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 2, HasBitSetters::integer_parameter_range(this), output); + } + + // .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + if (has_categorical_parameter_range()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 3, HasBitSetters::categorical_parameter_range(this), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.ParameterRangeOneOf) +} + +::google::protobuf::uint8* ParameterRangeOneOf::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + if (has_continuous_parameter_range()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 1, HasBitSetters::continuous_parameter_range(this), target); + } + + // .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + if (has_integer_parameter_range()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 2, HasBitSetters::integer_parameter_range(this), target); + } + + // .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + if (has_categorical_parameter_range()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 3, HasBitSetters::categorical_parameter_range(this), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + return target; +} + +size_t ParameterRangeOneOf::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + switch (parameter_range_type_case()) { + // .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + case kContinuousParameterRange: { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *parameter_range_type_.continuous_parameter_range_); + break; + } + // .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + case kIntegerParameterRange: { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *parameter_range_type_.integer_parameter_range_); + break; + } + // .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + case kCategoricalParameterRange: { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *parameter_range_type_.categorical_parameter_range_); + break; + } + case PARAMETER_RANGE_TYPE_NOT_SET: { + break; + } + } + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void ParameterRangeOneOf::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + GOOGLE_DCHECK_NE(&from, this); + const ParameterRangeOneOf* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + MergeFrom(*source); + } +} + +void ParameterRangeOneOf::MergeFrom(const ParameterRangeOneOf& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + switch (from.parameter_range_type_case()) { + case kContinuousParameterRange: { + mutable_continuous_parameter_range()->::flyteidl::plugins::sagemaker::ContinuousParameterRange::MergeFrom(from.continuous_parameter_range()); + break; + } + case kIntegerParameterRange: { + mutable_integer_parameter_range()->::flyteidl::plugins::sagemaker::IntegerParameterRange::MergeFrom(from.integer_parameter_range()); + break; + } + case kCategoricalParameterRange: { + mutable_categorical_parameter_range()->::flyteidl::plugins::sagemaker::CategoricalParameterRange::MergeFrom(from.categorical_parameter_range()); + break; + } + case PARAMETER_RANGE_TYPE_NOT_SET: { + break; + } + } +} + +void ParameterRangeOneOf::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void ParameterRangeOneOf::CopyFrom(const ParameterRangeOneOf& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ParameterRangeOneOf::IsInitialized() const { + return true; +} + +void ParameterRangeOneOf::Swap(ParameterRangeOneOf* other) { + if (other == this) return; + InternalSwap(other); +} +void ParameterRangeOneOf::InternalSwap(ParameterRangeOneOf* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + swap(parameter_range_type_, other->parameter_range_type_); + swap(_oneof_case_[0], other->_oneof_case_[0]); +} + +::google::protobuf::Metadata ParameterRangeOneOf::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +ParameterRanges_ParameterRangeMapEntry_DoNotUse::ParameterRanges_ParameterRangeMapEntry_DoNotUse() {} +ParameterRanges_ParameterRangeMapEntry_DoNotUse::ParameterRanges_ParameterRangeMapEntry_DoNotUse(::google::protobuf::Arena* arena) + : SuperType(arena) {} +void ParameterRanges_ParameterRangeMapEntry_DoNotUse::MergeFrom(const ParameterRanges_ParameterRangeMapEntry_DoNotUse& other) { + MergeFromInternal(other); +} +::google::protobuf::Metadata ParameterRanges_ParameterRangeMapEntry_DoNotUse::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[5]; +} +void ParameterRanges_ParameterRangeMapEntry_DoNotUse::MergeFrom( + const ::google::protobuf::Message& other) { + ::google::protobuf::Message::MergeFrom(other); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool ParameterRanges_ParameterRangeMapEntry_DoNotUse::_ParseMap(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx) { + using MF = ::google::protobuf::internal::MapField< + ParameterRanges_ParameterRangeMapEntry_DoNotUse, EntryKeyType, EntryValueType, + kEntryKeyFieldType, kEntryValueFieldType, + kEntryDefaultEnumValue>; + auto mf = static_cast(object); + Parser> parser(mf); +#define DO_(x) if (!(x)) return false + DO_(parser.ParseMap(begin, end)); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + parser.key().data(), static_cast(parser.key().length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "flyteidl.plugins.sagemaker.ParameterRanges.ParameterRangeMapEntry.key")); +#undef DO_ + return true; +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + + +// =================================================================== + +void ParameterRanges::InitAsDefaultInstance() { +} +class ParameterRanges::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int ParameterRanges::kParameterRangeMapFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +ParameterRanges::ParameterRanges() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.ParameterRanges) +} +ParameterRanges::ParameterRanges(const ParameterRanges& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + parameter_range_map_.MergeFrom(from.parameter_range_map_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.ParameterRanges) +} + +void ParameterRanges::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_ParameterRanges_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); +} + +ParameterRanges::~ParameterRanges() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.ParameterRanges) + SharedDtor(); +} + +void ParameterRanges::SharedDtor() { +} + +void ParameterRanges::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const ParameterRanges& ParameterRanges::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_ParameterRanges_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto.base); + return *internal_default_instance(); +} + + +void ParameterRanges::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.ParameterRanges) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + parameter_range_map_.Clear(); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* ParameterRanges::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // map parameter_range_map = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + do { + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::google::protobuf::internal::SlowMapEntryParser; + auto parse_map = ::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse::_ParseMap; + ctx->extra_parse_data().payload.clear(); + ctx->extra_parse_data().parse_map = parse_map; + object = &msg->parameter_range_map_; + if (size > end - ptr) goto len_delim_till_end; + auto newend = ptr + size; + GOOGLE_PROTOBUF_PARSER_ASSERT(parse_map(ptr, newend, object, ctx)); + ptr = newend; + if (ptr >= end) break; + } while ((::google::protobuf::io::UnalignedLoad<::google::protobuf::uint64>(ptr) & 255) == 10 && (ptr += 1)); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool ParameterRanges::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.ParameterRanges) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // map parameter_range_map = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + ParameterRanges_ParameterRangeMapEntry_DoNotUse::Parser< ::google::protobuf::internal::MapField< + ParameterRanges_ParameterRangeMapEntry_DoNotUse, + ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf, + ::google::protobuf::internal::WireFormatLite::TYPE_STRING, + ::google::protobuf::internal::WireFormatLite::TYPE_MESSAGE, + 0 >, + ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf > > parser(¶meter_range_map_); + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, &parser)); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + parser.key().data(), static_cast(parser.key().length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "flyteidl.plugins.sagemaker.ParameterRanges.ParameterRangeMapEntry.key")); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.ParameterRanges) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.ParameterRanges) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void ParameterRanges::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.ParameterRanges) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // map parameter_range_map = 1; + if (!this->parameter_range_map().empty()) { + typedef ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::const_pointer + ConstPtr; + typedef ConstPtr SortItem; + typedef ::google::protobuf::internal::CompareByDerefFirst Less; + struct Utf8Check { + static void Check(ConstPtr p) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + p->first.data(), static_cast(p->first.length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.ParameterRanges.ParameterRangeMapEntry.key"); + } + }; + + if (output->IsSerializationDeterministic() && + this->parameter_range_map().size() > 1) { + ::std::unique_ptr items( + new SortItem[this->parameter_range_map().size()]); + typedef ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::size_type size_type; + size_type n = 0; + for (::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::const_iterator + it = this->parameter_range_map().begin(); + it != this->parameter_range_map().end(); ++it, ++n) { + items[static_cast(n)] = SortItem(&*it); + } + ::std::sort(&items[0], &items[static_cast(n)], Less()); + ::std::unique_ptr entry; + for (size_type i = 0; i < n; i++) { + entry.reset(parameter_range_map_.NewEntryWrapper(items[static_cast(i)]->first, items[static_cast(i)]->second)); + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(1, *entry, output); + Utf8Check::Check(&(*items[static_cast(i)])); + } + } else { + ::std::unique_ptr entry; + for (::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::const_iterator + it = this->parameter_range_map().begin(); + it != this->parameter_range_map().end(); ++it) { + entry.reset(parameter_range_map_.NewEntryWrapper(it->first, it->second)); + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(1, *entry, output); + Utf8Check::Check(&(*it)); + } + } + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.ParameterRanges) +} + +::google::protobuf::uint8* ParameterRanges::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.ParameterRanges) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // map parameter_range_map = 1; + if (!this->parameter_range_map().empty()) { + typedef ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::const_pointer + ConstPtr; + typedef ConstPtr SortItem; + typedef ::google::protobuf::internal::CompareByDerefFirst Less; + struct Utf8Check { + static void Check(ConstPtr p) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + p->first.data(), static_cast(p->first.length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.ParameterRanges.ParameterRangeMapEntry.key"); + } + }; + + if (false && + this->parameter_range_map().size() > 1) { + ::std::unique_ptr items( + new SortItem[this->parameter_range_map().size()]); + typedef ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::size_type size_type; + size_type n = 0; + for (::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::const_iterator + it = this->parameter_range_map().begin(); + it != this->parameter_range_map().end(); ++it, ++n) { + items[static_cast(n)] = SortItem(&*it); + } + ::std::sort(&items[0], &items[static_cast(n)], Less()); + ::std::unique_ptr entry; + for (size_type i = 0; i < n; i++) { + entry.reset(parameter_range_map_.NewEntryWrapper(items[static_cast(i)]->first, items[static_cast(i)]->second)); + target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessageNoVirtualToArray(1, *entry, target); + Utf8Check::Check(&(*items[static_cast(i)])); + } + } else { + ::std::unique_ptr entry; + for (::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::const_iterator + it = this->parameter_range_map().begin(); + it != this->parameter_range_map().end(); ++it) { + entry.reset(parameter_range_map_.NewEntryWrapper(it->first, it->second)); + target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessageNoVirtualToArray(1, *entry, target); + Utf8Check::Check(&(*it)); + } + } + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.ParameterRanges) + return target; +} + +size_t ParameterRanges::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.ParameterRanges) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // map parameter_range_map = 1; + total_size += 1 * + ::google::protobuf::internal::FromIntSize(this->parameter_range_map_size()); + { + ::std::unique_ptr entry; + for (::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >::const_iterator + it = this->parameter_range_map().begin(); + it != this->parameter_range_map().end(); ++it) { + entry.reset(parameter_range_map_.NewEntryWrapper(it->first, it->second)); + total_size += ::google::protobuf::internal::WireFormatLite:: + MessageSizeNoVirtual(*entry); + } + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void ParameterRanges::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.ParameterRanges) + GOOGLE_DCHECK_NE(&from, this); + const ParameterRanges* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.ParameterRanges) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.ParameterRanges) + MergeFrom(*source); + } +} + +void ParameterRanges::MergeFrom(const ParameterRanges& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.ParameterRanges) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + parameter_range_map_.MergeFrom(from.parameter_range_map_); +} + +void ParameterRanges::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.ParameterRanges) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void ParameterRanges::CopyFrom(const ParameterRanges& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.ParameterRanges) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ParameterRanges::IsInitialized() const { + return true; +} + +void ParameterRanges::Swap(ParameterRanges* other) { + if (other == this) return; + InternalSwap(other); +} +void ParameterRanges::InternalSwap(ParameterRanges* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + parameter_range_map_.Swap(&other->parameter_range_map_); +} + +::google::protobuf::Metadata ParameterRanges::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto[kIndexInFileMessages]; +} + + +// @@protoc_insertion_point(namespace_scope) +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +namespace google { +namespace protobuf { +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::HyperparameterScalingType* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::HyperparameterScalingType >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::HyperparameterScalingType >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::ContinuousParameterRange* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::ContinuousParameterRange >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::ContinuousParameterRange >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::IntegerParameterRange* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::IntegerParameterRange >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::IntegerParameterRange >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::CategoricalParameterRange* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::CategoricalParameterRange >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::CategoricalParameterRange >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::ParameterRangeOneOf* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::ParameterRanges* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::ParameterRanges >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::ParameterRanges >(arena); +} +} // namespace protobuf +} // namespace google + +// @@protoc_insertion_point(global_scope) +#include diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.pb.h b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.pb.h new file mode 100644 index 0000000000..13201549da --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/parameter_ranges.pb.h @@ -0,0 +1,1308 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/parameter_ranges.proto + +#ifndef PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto +#define PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3007000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3007000 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto + +// Internal implementation detail -- do not use these members. +struct TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto { + static const ::google::protobuf::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::AuxillaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::ParseTable schema[7] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::FieldMetadata field_metadata[]; + static const ::google::protobuf::internal::SerializationTable serialization_table[]; + static const ::google::protobuf::uint32 offsets[]; +}; +void AddDescriptors_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto(); +namespace flyteidl { +namespace plugins { +namespace sagemaker { +class CategoricalParameterRange; +class CategoricalParameterRangeDefaultTypeInternal; +extern CategoricalParameterRangeDefaultTypeInternal _CategoricalParameterRange_default_instance_; +class ContinuousParameterRange; +class ContinuousParameterRangeDefaultTypeInternal; +extern ContinuousParameterRangeDefaultTypeInternal _ContinuousParameterRange_default_instance_; +class HyperparameterScalingType; +class HyperparameterScalingTypeDefaultTypeInternal; +extern HyperparameterScalingTypeDefaultTypeInternal _HyperparameterScalingType_default_instance_; +class IntegerParameterRange; +class IntegerParameterRangeDefaultTypeInternal; +extern IntegerParameterRangeDefaultTypeInternal _IntegerParameterRange_default_instance_; +class ParameterRangeOneOf; +class ParameterRangeOneOfDefaultTypeInternal; +extern ParameterRangeOneOfDefaultTypeInternal _ParameterRangeOneOf_default_instance_; +class ParameterRanges; +class ParameterRangesDefaultTypeInternal; +extern ParameterRangesDefaultTypeInternal _ParameterRanges_default_instance_; +class ParameterRanges_ParameterRangeMapEntry_DoNotUse; +class ParameterRanges_ParameterRangeMapEntry_DoNotUseDefaultTypeInternal; +extern ParameterRanges_ParameterRangeMapEntry_DoNotUseDefaultTypeInternal _ParameterRanges_ParameterRangeMapEntry_DoNotUse_default_instance_; +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +namespace google { +namespace protobuf { +template<> ::flyteidl::plugins::sagemaker::CategoricalParameterRange* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::CategoricalParameterRange>(Arena*); +template<> ::flyteidl::plugins::sagemaker::ContinuousParameterRange* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::ContinuousParameterRange>(Arena*); +template<> ::flyteidl::plugins::sagemaker::HyperparameterScalingType* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::HyperparameterScalingType>(Arena*); +template<> ::flyteidl::plugins::sagemaker::IntegerParameterRange* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::IntegerParameterRange>(Arena*); +template<> ::flyteidl::plugins::sagemaker::ParameterRangeOneOf* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::ParameterRangeOneOf>(Arena*); +template<> ::flyteidl::plugins::sagemaker::ParameterRanges* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::ParameterRanges>(Arena*); +template<> ::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::ParameterRanges_ParameterRangeMapEntry_DoNotUse>(Arena*); +} // namespace protobuf +} // namespace google +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +enum HyperparameterScalingType_Value { + HyperparameterScalingType_Value_AUTO = 0, + HyperparameterScalingType_Value_LINEAR = 1, + HyperparameterScalingType_Value_LOGARITHMIC = 2, + HyperparameterScalingType_Value_REVERSELOGARITHMIC = 3, + HyperparameterScalingType_Value_HyperparameterScalingType_Value_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + HyperparameterScalingType_Value_HyperparameterScalingType_Value_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool HyperparameterScalingType_Value_IsValid(int value); +const HyperparameterScalingType_Value HyperparameterScalingType_Value_Value_MIN = HyperparameterScalingType_Value_AUTO; +const HyperparameterScalingType_Value HyperparameterScalingType_Value_Value_MAX = HyperparameterScalingType_Value_REVERSELOGARITHMIC; +const int HyperparameterScalingType_Value_Value_ARRAYSIZE = HyperparameterScalingType_Value_Value_MAX + 1; + +const ::google::protobuf::EnumDescriptor* HyperparameterScalingType_Value_descriptor(); +inline const ::std::string& HyperparameterScalingType_Value_Name(HyperparameterScalingType_Value value) { + return ::google::protobuf::internal::NameOfEnum( + HyperparameterScalingType_Value_descriptor(), value); +} +inline bool HyperparameterScalingType_Value_Parse( + const ::std::string& name, HyperparameterScalingType_Value* value) { + return ::google::protobuf::internal::ParseNamedEnum( + HyperparameterScalingType_Value_descriptor(), name, value); +} +// =================================================================== + +class HyperparameterScalingType final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.HyperparameterScalingType) */ { + public: + HyperparameterScalingType(); + virtual ~HyperparameterScalingType(); + + HyperparameterScalingType(const HyperparameterScalingType& from); + + inline HyperparameterScalingType& operator=(const HyperparameterScalingType& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + HyperparameterScalingType(HyperparameterScalingType&& from) noexcept + : HyperparameterScalingType() { + *this = ::std::move(from); + } + + inline HyperparameterScalingType& operator=(HyperparameterScalingType&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const HyperparameterScalingType& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const HyperparameterScalingType* internal_default_instance() { + return reinterpret_cast( + &_HyperparameterScalingType_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + void Swap(HyperparameterScalingType* other); + friend void swap(HyperparameterScalingType& a, HyperparameterScalingType& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline HyperparameterScalingType* New() const final { + return CreateMaybeMessage(nullptr); + } + + HyperparameterScalingType* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const HyperparameterScalingType& from); + void MergeFrom(const HyperparameterScalingType& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(HyperparameterScalingType* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef HyperparameterScalingType_Value Value; + static const Value AUTO = + HyperparameterScalingType_Value_AUTO; + static const Value LINEAR = + HyperparameterScalingType_Value_LINEAR; + static const Value LOGARITHMIC = + HyperparameterScalingType_Value_LOGARITHMIC; + static const Value REVERSELOGARITHMIC = + HyperparameterScalingType_Value_REVERSELOGARITHMIC; + static inline bool Value_IsValid(int value) { + return HyperparameterScalingType_Value_IsValid(value); + } + static const Value Value_MIN = + HyperparameterScalingType_Value_Value_MIN; + static const Value Value_MAX = + HyperparameterScalingType_Value_Value_MAX; + static const int Value_ARRAYSIZE = + HyperparameterScalingType_Value_Value_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Value_descriptor() { + return HyperparameterScalingType_Value_descriptor(); + } + static inline const ::std::string& Value_Name(Value value) { + return HyperparameterScalingType_Value_Name(value); + } + static inline bool Value_Parse(const ::std::string& name, + Value* value) { + return HyperparameterScalingType_Value_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterScalingType) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +}; +// ------------------------------------------------------------------- + +class ContinuousParameterRange final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.ContinuousParameterRange) */ { + public: + ContinuousParameterRange(); + virtual ~ContinuousParameterRange(); + + ContinuousParameterRange(const ContinuousParameterRange& from); + + inline ContinuousParameterRange& operator=(const ContinuousParameterRange& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + ContinuousParameterRange(ContinuousParameterRange&& from) noexcept + : ContinuousParameterRange() { + *this = ::std::move(from); + } + + inline ContinuousParameterRange& operator=(ContinuousParameterRange&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const ContinuousParameterRange& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const ContinuousParameterRange* internal_default_instance() { + return reinterpret_cast( + &_ContinuousParameterRange_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + void Swap(ContinuousParameterRange* other); + friend void swap(ContinuousParameterRange& a, ContinuousParameterRange& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline ContinuousParameterRange* New() const final { + return CreateMaybeMessage(nullptr); + } + + ContinuousParameterRange* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const ContinuousParameterRange& from); + void MergeFrom(const ContinuousParameterRange& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ContinuousParameterRange* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // double max_value = 1; + void clear_max_value(); + static const int kMaxValueFieldNumber = 1; + double max_value() const; + void set_max_value(double value); + + // double min_value = 2; + void clear_min_value(); + static const int kMinValueFieldNumber = 2; + double min_value() const; + void set_min_value(double value); + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + void clear_scaling_type(); + static const int kScalingTypeFieldNumber = 3; + ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value scaling_type() const; + void set_scaling_type(::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value value); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.ContinuousParameterRange) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + double max_value_; + double min_value_; + int scaling_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +}; +// ------------------------------------------------------------------- + +class IntegerParameterRange final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.IntegerParameterRange) */ { + public: + IntegerParameterRange(); + virtual ~IntegerParameterRange(); + + IntegerParameterRange(const IntegerParameterRange& from); + + inline IntegerParameterRange& operator=(const IntegerParameterRange& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + IntegerParameterRange(IntegerParameterRange&& from) noexcept + : IntegerParameterRange() { + *this = ::std::move(from); + } + + inline IntegerParameterRange& operator=(IntegerParameterRange&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const IntegerParameterRange& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const IntegerParameterRange* internal_default_instance() { + return reinterpret_cast( + &_IntegerParameterRange_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + void Swap(IntegerParameterRange* other); + friend void swap(IntegerParameterRange& a, IntegerParameterRange& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline IntegerParameterRange* New() const final { + return CreateMaybeMessage(nullptr); + } + + IntegerParameterRange* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const IntegerParameterRange& from); + void MergeFrom(const IntegerParameterRange& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(IntegerParameterRange* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // int64 max_value = 1; + void clear_max_value(); + static const int kMaxValueFieldNumber = 1; + ::google::protobuf::int64 max_value() const; + void set_max_value(::google::protobuf::int64 value); + + // int64 min_value = 2; + void clear_min_value(); + static const int kMinValueFieldNumber = 2; + ::google::protobuf::int64 min_value() const; + void set_min_value(::google::protobuf::int64 value); + + // .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + void clear_scaling_type(); + static const int kScalingTypeFieldNumber = 3; + ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value scaling_type() const; + void set_scaling_type(::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value value); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.IntegerParameterRange) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::google::protobuf::int64 max_value_; + ::google::protobuf::int64 min_value_; + int scaling_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +}; +// ------------------------------------------------------------------- + +class CategoricalParameterRange final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.CategoricalParameterRange) */ { + public: + CategoricalParameterRange(); + virtual ~CategoricalParameterRange(); + + CategoricalParameterRange(const CategoricalParameterRange& from); + + inline CategoricalParameterRange& operator=(const CategoricalParameterRange& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + CategoricalParameterRange(CategoricalParameterRange&& from) noexcept + : CategoricalParameterRange() { + *this = ::std::move(from); + } + + inline CategoricalParameterRange& operator=(CategoricalParameterRange&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const CategoricalParameterRange& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const CategoricalParameterRange* internal_default_instance() { + return reinterpret_cast( + &_CategoricalParameterRange_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; + + void Swap(CategoricalParameterRange* other); + friend void swap(CategoricalParameterRange& a, CategoricalParameterRange& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline CategoricalParameterRange* New() const final { + return CreateMaybeMessage(nullptr); + } + + CategoricalParameterRange* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const CategoricalParameterRange& from); + void MergeFrom(const CategoricalParameterRange& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(CategoricalParameterRange* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // repeated string values = 1; + int values_size() const; + void clear_values(); + static const int kValuesFieldNumber = 1; + const ::std::string& values(int index) const; + ::std::string* mutable_values(int index); + void set_values(int index, const ::std::string& value); + #if LANG_CXX11 + void set_values(int index, ::std::string&& value); + #endif + void set_values(int index, const char* value); + void set_values(int index, const char* value, size_t size); + ::std::string* add_values(); + void add_values(const ::std::string& value); + #if LANG_CXX11 + void add_values(::std::string&& value); + #endif + void add_values(const char* value); + void add_values(const char* value, size_t size); + const ::google::protobuf::RepeatedPtrField<::std::string>& values() const; + ::google::protobuf::RepeatedPtrField<::std::string>* mutable_values(); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.CategoricalParameterRange) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::google::protobuf::RepeatedPtrField<::std::string> values_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +}; +// ------------------------------------------------------------------- + +class ParameterRangeOneOf final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.ParameterRangeOneOf) */ { + public: + ParameterRangeOneOf(); + virtual ~ParameterRangeOneOf(); + + ParameterRangeOneOf(const ParameterRangeOneOf& from); + + inline ParameterRangeOneOf& operator=(const ParameterRangeOneOf& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + ParameterRangeOneOf(ParameterRangeOneOf&& from) noexcept + : ParameterRangeOneOf() { + *this = ::std::move(from); + } + + inline ParameterRangeOneOf& operator=(ParameterRangeOneOf&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const ParameterRangeOneOf& default_instance(); + + enum ParameterRangeTypeCase { + kContinuousParameterRange = 1, + kIntegerParameterRange = 2, + kCategoricalParameterRange = 3, + PARAMETER_RANGE_TYPE_NOT_SET = 0, + }; + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const ParameterRangeOneOf* internal_default_instance() { + return reinterpret_cast( + &_ParameterRangeOneOf_default_instance_); + } + static constexpr int kIndexInFileMessages = + 4; + + void Swap(ParameterRangeOneOf* other); + friend void swap(ParameterRangeOneOf& a, ParameterRangeOneOf& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline ParameterRangeOneOf* New() const final { + return CreateMaybeMessage(nullptr); + } + + ParameterRangeOneOf* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const ParameterRangeOneOf& from); + void MergeFrom(const ParameterRangeOneOf& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ParameterRangeOneOf* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + bool has_continuous_parameter_range() const; + void clear_continuous_parameter_range(); + static const int kContinuousParameterRangeFieldNumber = 1; + const ::flyteidl::plugins::sagemaker::ContinuousParameterRange& continuous_parameter_range() const; + ::flyteidl::plugins::sagemaker::ContinuousParameterRange* release_continuous_parameter_range(); + ::flyteidl::plugins::sagemaker::ContinuousParameterRange* mutable_continuous_parameter_range(); + void set_allocated_continuous_parameter_range(::flyteidl::plugins::sagemaker::ContinuousParameterRange* continuous_parameter_range); + + // .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + bool has_integer_parameter_range() const; + void clear_integer_parameter_range(); + static const int kIntegerParameterRangeFieldNumber = 2; + const ::flyteidl::plugins::sagemaker::IntegerParameterRange& integer_parameter_range() const; + ::flyteidl::plugins::sagemaker::IntegerParameterRange* release_integer_parameter_range(); + ::flyteidl::plugins::sagemaker::IntegerParameterRange* mutable_integer_parameter_range(); + void set_allocated_integer_parameter_range(::flyteidl::plugins::sagemaker::IntegerParameterRange* integer_parameter_range); + + // .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + bool has_categorical_parameter_range() const; + void clear_categorical_parameter_range(); + static const int kCategoricalParameterRangeFieldNumber = 3; + const ::flyteidl::plugins::sagemaker::CategoricalParameterRange& categorical_parameter_range() const; + ::flyteidl::plugins::sagemaker::CategoricalParameterRange* release_categorical_parameter_range(); + ::flyteidl::plugins::sagemaker::CategoricalParameterRange* mutable_categorical_parameter_range(); + void set_allocated_categorical_parameter_range(::flyteidl::plugins::sagemaker::CategoricalParameterRange* categorical_parameter_range); + + void clear_parameter_range_type(); + ParameterRangeTypeCase parameter_range_type_case() const; + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + private: + class HasBitSetters; + void set_has_continuous_parameter_range(); + void set_has_integer_parameter_range(); + void set_has_categorical_parameter_range(); + + inline bool has_parameter_range_type() const; + inline void clear_has_parameter_range_type(); + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + union ParameterRangeTypeUnion { + ParameterRangeTypeUnion() {} + ::flyteidl::plugins::sagemaker::ContinuousParameterRange* continuous_parameter_range_; + ::flyteidl::plugins::sagemaker::IntegerParameterRange* integer_parameter_range_; + ::flyteidl::plugins::sagemaker::CategoricalParameterRange* categorical_parameter_range_; + } parameter_range_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::google::protobuf::uint32 _oneof_case_[1]; + + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +}; +// ------------------------------------------------------------------- + +class ParameterRanges_ParameterRangeMapEntry_DoNotUse : public ::google::protobuf::internal::MapEntry { +public: +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +static bool _ParseMap(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + typedef ::google::protobuf::internal::MapEntry SuperType; + ParameterRanges_ParameterRangeMapEntry_DoNotUse(); + ParameterRanges_ParameterRangeMapEntry_DoNotUse(::google::protobuf::Arena* arena); + void MergeFrom(const ParameterRanges_ParameterRangeMapEntry_DoNotUse& other); + static const ParameterRanges_ParameterRangeMapEntry_DoNotUse* internal_default_instance() { return reinterpret_cast(&_ParameterRanges_ParameterRangeMapEntry_DoNotUse_default_instance_); } + void MergeFrom(const ::google::protobuf::Message& other) final; + ::google::protobuf::Metadata GetMetadata() const; +}; + +// ------------------------------------------------------------------- + +class ParameterRanges final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.ParameterRanges) */ { + public: + ParameterRanges(); + virtual ~ParameterRanges(); + + ParameterRanges(const ParameterRanges& from); + + inline ParameterRanges& operator=(const ParameterRanges& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + ParameterRanges(ParameterRanges&& from) noexcept + : ParameterRanges() { + *this = ::std::move(from); + } + + inline ParameterRanges& operator=(ParameterRanges&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const ParameterRanges& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const ParameterRanges* internal_default_instance() { + return reinterpret_cast( + &_ParameterRanges_default_instance_); + } + static constexpr int kIndexInFileMessages = + 6; + + void Swap(ParameterRanges* other); + friend void swap(ParameterRanges& a, ParameterRanges& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline ParameterRanges* New() const final { + return CreateMaybeMessage(nullptr); + } + + ParameterRanges* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const ParameterRanges& from); + void MergeFrom(const ParameterRanges& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ParameterRanges* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + + // accessors ------------------------------------------------------- + + // map parameter_range_map = 1; + int parameter_range_map_size() const; + void clear_parameter_range_map(); + static const int kParameterRangeMapFieldNumber = 1; + const ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >& + parameter_range_map() const; + ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >* + mutable_parameter_range_map(); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.ParameterRanges) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::google::protobuf::internal::MapField< + ParameterRanges_ParameterRangeMapEntry_DoNotUse, + ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf, + ::google::protobuf::internal::WireFormatLite::TYPE_STRING, + ::google::protobuf::internal::WireFormatLite::TYPE_MESSAGE, + 0 > parameter_range_map_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// HyperparameterScalingType + +// ------------------------------------------------------------------- + +// ContinuousParameterRange + +// double max_value = 1; +inline void ContinuousParameterRange::clear_max_value() { + max_value_ = 0; +} +inline double ContinuousParameterRange::max_value() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.ContinuousParameterRange.max_value) + return max_value_; +} +inline void ContinuousParameterRange::set_max_value(double value) { + + max_value_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.ContinuousParameterRange.max_value) +} + +// double min_value = 2; +inline void ContinuousParameterRange::clear_min_value() { + min_value_ = 0; +} +inline double ContinuousParameterRange::min_value() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.ContinuousParameterRange.min_value) + return min_value_; +} +inline void ContinuousParameterRange::set_min_value(double value) { + + min_value_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.ContinuousParameterRange.min_value) +} + +// .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; +inline void ContinuousParameterRange::clear_scaling_type() { + scaling_type_ = 0; +} +inline ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value ContinuousParameterRange::scaling_type() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.ContinuousParameterRange.scaling_type) + return static_cast< ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value >(scaling_type_); +} +inline void ContinuousParameterRange::set_scaling_type(::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value value) { + + scaling_type_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.ContinuousParameterRange.scaling_type) +} + +// ------------------------------------------------------------------- + +// IntegerParameterRange + +// int64 max_value = 1; +inline void IntegerParameterRange::clear_max_value() { + max_value_ = PROTOBUF_LONGLONG(0); +} +inline ::google::protobuf::int64 IntegerParameterRange::max_value() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.IntegerParameterRange.max_value) + return max_value_; +} +inline void IntegerParameterRange::set_max_value(::google::protobuf::int64 value) { + + max_value_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.IntegerParameterRange.max_value) +} + +// int64 min_value = 2; +inline void IntegerParameterRange::clear_min_value() { + min_value_ = PROTOBUF_LONGLONG(0); +} +inline ::google::protobuf::int64 IntegerParameterRange::min_value() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.IntegerParameterRange.min_value) + return min_value_; +} +inline void IntegerParameterRange::set_min_value(::google::protobuf::int64 value) { + + min_value_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.IntegerParameterRange.min_value) +} + +// .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; +inline void IntegerParameterRange::clear_scaling_type() { + scaling_type_ = 0; +} +inline ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value IntegerParameterRange::scaling_type() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.IntegerParameterRange.scaling_type) + return static_cast< ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value >(scaling_type_); +} +inline void IntegerParameterRange::set_scaling_type(::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value value) { + + scaling_type_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.IntegerParameterRange.scaling_type) +} + +// ------------------------------------------------------------------- + +// CategoricalParameterRange + +// repeated string values = 1; +inline int CategoricalParameterRange::values_size() const { + return values_.size(); +} +inline void CategoricalParameterRange::clear_values() { + values_.Clear(); +} +inline const ::std::string& CategoricalParameterRange::values(int index) const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) + return values_.Get(index); +} +inline ::std::string* CategoricalParameterRange::mutable_values(int index) { + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) + return values_.Mutable(index); +} +inline void CategoricalParameterRange::set_values(int index, const ::std::string& value) { + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) + values_.Mutable(index)->assign(value); +} +#if LANG_CXX11 +inline void CategoricalParameterRange::set_values(int index, ::std::string&& value) { + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) + values_.Mutable(index)->assign(std::move(value)); +} +#endif +inline void CategoricalParameterRange::set_values(int index, const char* value) { + GOOGLE_DCHECK(value != nullptr); + values_.Mutable(index)->assign(value); + // @@protoc_insertion_point(field_set_char:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) +} +inline void CategoricalParameterRange::set_values(int index, const char* value, size_t size) { + values_.Mutable(index)->assign( + reinterpret_cast(value), size); + // @@protoc_insertion_point(field_set_pointer:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) +} +inline ::std::string* CategoricalParameterRange::add_values() { + // @@protoc_insertion_point(field_add_mutable:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) + return values_.Add(); +} +inline void CategoricalParameterRange::add_values(const ::std::string& value) { + values_.Add()->assign(value); + // @@protoc_insertion_point(field_add:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) +} +#if LANG_CXX11 +inline void CategoricalParameterRange::add_values(::std::string&& value) { + values_.Add(std::move(value)); + // @@protoc_insertion_point(field_add:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) +} +#endif +inline void CategoricalParameterRange::add_values(const char* value) { + GOOGLE_DCHECK(value != nullptr); + values_.Add()->assign(value); + // @@protoc_insertion_point(field_add_char:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) +} +inline void CategoricalParameterRange::add_values(const char* value, size_t size) { + values_.Add()->assign(reinterpret_cast(value), size); + // @@protoc_insertion_point(field_add_pointer:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) +} +inline const ::google::protobuf::RepeatedPtrField<::std::string>& +CategoricalParameterRange::values() const { + // @@protoc_insertion_point(field_list:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) + return values_; +} +inline ::google::protobuf::RepeatedPtrField<::std::string>* +CategoricalParameterRange::mutable_values() { + // @@protoc_insertion_point(field_mutable_list:flyteidl.plugins.sagemaker.CategoricalParameterRange.values) + return &values_; +} + +// ------------------------------------------------------------------- + +// ParameterRangeOneOf + +// .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; +inline bool ParameterRangeOneOf::has_continuous_parameter_range() const { + return parameter_range_type_case() == kContinuousParameterRange; +} +inline void ParameterRangeOneOf::set_has_continuous_parameter_range() { + _oneof_case_[0] = kContinuousParameterRange; +} +inline void ParameterRangeOneOf::clear_continuous_parameter_range() { + if (has_continuous_parameter_range()) { + delete parameter_range_type_.continuous_parameter_range_; + clear_has_parameter_range_type(); + } +} +inline ::flyteidl::plugins::sagemaker::ContinuousParameterRange* ParameterRangeOneOf::release_continuous_parameter_range() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.ParameterRangeOneOf.continuous_parameter_range) + if (has_continuous_parameter_range()) { + clear_has_parameter_range_type(); + ::flyteidl::plugins::sagemaker::ContinuousParameterRange* temp = parameter_range_type_.continuous_parameter_range_; + parameter_range_type_.continuous_parameter_range_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::flyteidl::plugins::sagemaker::ContinuousParameterRange& ParameterRangeOneOf::continuous_parameter_range() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.ParameterRangeOneOf.continuous_parameter_range) + return has_continuous_parameter_range() + ? *parameter_range_type_.continuous_parameter_range_ + : *reinterpret_cast< ::flyteidl::plugins::sagemaker::ContinuousParameterRange*>(&::flyteidl::plugins::sagemaker::_ContinuousParameterRange_default_instance_); +} +inline ::flyteidl::plugins::sagemaker::ContinuousParameterRange* ParameterRangeOneOf::mutable_continuous_parameter_range() { + if (!has_continuous_parameter_range()) { + clear_parameter_range_type(); + set_has_continuous_parameter_range(); + parameter_range_type_.continuous_parameter_range_ = CreateMaybeMessage< ::flyteidl::plugins::sagemaker::ContinuousParameterRange >( + GetArenaNoVirtual()); + } + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.ParameterRangeOneOf.continuous_parameter_range) + return parameter_range_type_.continuous_parameter_range_; +} + +// .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; +inline bool ParameterRangeOneOf::has_integer_parameter_range() const { + return parameter_range_type_case() == kIntegerParameterRange; +} +inline void ParameterRangeOneOf::set_has_integer_parameter_range() { + _oneof_case_[0] = kIntegerParameterRange; +} +inline void ParameterRangeOneOf::clear_integer_parameter_range() { + if (has_integer_parameter_range()) { + delete parameter_range_type_.integer_parameter_range_; + clear_has_parameter_range_type(); + } +} +inline ::flyteidl::plugins::sagemaker::IntegerParameterRange* ParameterRangeOneOf::release_integer_parameter_range() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.ParameterRangeOneOf.integer_parameter_range) + if (has_integer_parameter_range()) { + clear_has_parameter_range_type(); + ::flyteidl::plugins::sagemaker::IntegerParameterRange* temp = parameter_range_type_.integer_parameter_range_; + parameter_range_type_.integer_parameter_range_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::flyteidl::plugins::sagemaker::IntegerParameterRange& ParameterRangeOneOf::integer_parameter_range() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.ParameterRangeOneOf.integer_parameter_range) + return has_integer_parameter_range() + ? *parameter_range_type_.integer_parameter_range_ + : *reinterpret_cast< ::flyteidl::plugins::sagemaker::IntegerParameterRange*>(&::flyteidl::plugins::sagemaker::_IntegerParameterRange_default_instance_); +} +inline ::flyteidl::plugins::sagemaker::IntegerParameterRange* ParameterRangeOneOf::mutable_integer_parameter_range() { + if (!has_integer_parameter_range()) { + clear_parameter_range_type(); + set_has_integer_parameter_range(); + parameter_range_type_.integer_parameter_range_ = CreateMaybeMessage< ::flyteidl::plugins::sagemaker::IntegerParameterRange >( + GetArenaNoVirtual()); + } + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.ParameterRangeOneOf.integer_parameter_range) + return parameter_range_type_.integer_parameter_range_; +} + +// .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; +inline bool ParameterRangeOneOf::has_categorical_parameter_range() const { + return parameter_range_type_case() == kCategoricalParameterRange; +} +inline void ParameterRangeOneOf::set_has_categorical_parameter_range() { + _oneof_case_[0] = kCategoricalParameterRange; +} +inline void ParameterRangeOneOf::clear_categorical_parameter_range() { + if (has_categorical_parameter_range()) { + delete parameter_range_type_.categorical_parameter_range_; + clear_has_parameter_range_type(); + } +} +inline ::flyteidl::plugins::sagemaker::CategoricalParameterRange* ParameterRangeOneOf::release_categorical_parameter_range() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.ParameterRangeOneOf.categorical_parameter_range) + if (has_categorical_parameter_range()) { + clear_has_parameter_range_type(); + ::flyteidl::plugins::sagemaker::CategoricalParameterRange* temp = parameter_range_type_.categorical_parameter_range_; + parameter_range_type_.categorical_parameter_range_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::flyteidl::plugins::sagemaker::CategoricalParameterRange& ParameterRangeOneOf::categorical_parameter_range() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.ParameterRangeOneOf.categorical_parameter_range) + return has_categorical_parameter_range() + ? *parameter_range_type_.categorical_parameter_range_ + : *reinterpret_cast< ::flyteidl::plugins::sagemaker::CategoricalParameterRange*>(&::flyteidl::plugins::sagemaker::_CategoricalParameterRange_default_instance_); +} +inline ::flyteidl::plugins::sagemaker::CategoricalParameterRange* ParameterRangeOneOf::mutable_categorical_parameter_range() { + if (!has_categorical_parameter_range()) { + clear_parameter_range_type(); + set_has_categorical_parameter_range(); + parameter_range_type_.categorical_parameter_range_ = CreateMaybeMessage< ::flyteidl::plugins::sagemaker::CategoricalParameterRange >( + GetArenaNoVirtual()); + } + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.ParameterRangeOneOf.categorical_parameter_range) + return parameter_range_type_.categorical_parameter_range_; +} + +inline bool ParameterRangeOneOf::has_parameter_range_type() const { + return parameter_range_type_case() != PARAMETER_RANGE_TYPE_NOT_SET; +} +inline void ParameterRangeOneOf::clear_has_parameter_range_type() { + _oneof_case_[0] = PARAMETER_RANGE_TYPE_NOT_SET; +} +inline ParameterRangeOneOf::ParameterRangeTypeCase ParameterRangeOneOf::parameter_range_type_case() const { + return ParameterRangeOneOf::ParameterRangeTypeCase(_oneof_case_[0]); +} +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ParameterRanges + +// map parameter_range_map = 1; +inline int ParameterRanges::parameter_range_map_size() const { + return parameter_range_map_.size(); +} +inline void ParameterRanges::clear_parameter_range_map() { + parameter_range_map_.Clear(); +} +inline const ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >& +ParameterRanges::parameter_range_map() const { + // @@protoc_insertion_point(field_map:flyteidl.plugins.sagemaker.ParameterRanges.parameter_range_map) + return parameter_range_map_.GetMap(); +} +inline ::google::protobuf::Map< ::std::string, ::flyteidl::plugins::sagemaker::ParameterRangeOneOf >* +ParameterRanges::mutable_parameter_range_map() { + // @@protoc_insertion_point(field_mutable_map:flyteidl.plugins.sagemaker.ParameterRanges.parameter_range_map) + return parameter_range_map_.MutableMap(); +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl + +namespace google { +namespace protobuf { + +template <> struct is_proto_enum< ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value>() { + return ::flyteidl::plugins::sagemaker::HyperparameterScalingType_Value_descriptor(); +} + +} // namespace protobuf +} // namespace google + +// @@protoc_insertion_point(global_scope) + +#include +#endif // PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2fparameter_5franges_2eproto diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.grpc.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.grpc.pb.cc new file mode 100644 index 0000000000..e7b54a6ee5 --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.grpc.pb.cc @@ -0,0 +1,26 @@ +// Generated by the gRPC C++ plugin. +// If you make any local change, they will be lost. +// source: flyteidl/plugins/sagemaker/training_job.proto + +#include "flyteidl/plugins/sagemaker/training_job.pb.h" +#include "flyteidl/plugins/sagemaker/training_job.grpc.pb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +} // namespace flyteidl +} // namespace plugins +} // namespace sagemaker + diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.grpc.pb.h b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.grpc.pb.h new file mode 100644 index 0000000000..802320ea79 --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.grpc.pb.h @@ -0,0 +1,49 @@ +// Generated by the gRPC C++ plugin. +// If you make any local change, they will be lost. +// source: flyteidl/plugins/sagemaker/training_job.proto +#ifndef GRPC_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto__INCLUDED +#define GRPC_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto__INCLUDED + +#include "flyteidl/plugins/sagemaker/training_job.pb.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace grpc_impl { +class Channel; +class CompletionQueue; +class ServerCompletionQueue; +} // namespace grpc_impl + +namespace grpc { +namespace experimental { +template +class MessageAllocator; +} // namespace experimental +} // namespace grpc_impl + +namespace grpc { +class ServerContext; +} // namespace grpc + +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl + + +#endif // GRPC_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto__INCLUDED diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.pb.cc b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.pb.cc new file mode 100644 index 0000000000..043486c450 --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.pb.cc @@ -0,0 +1,2937 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/training_job.proto + +#include "flyteidl/plugins/sagemaker/training_job.pb.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +// @@protoc_insertion_point(includes) +#include + +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_MetricDefinition_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_TrainingJobResourceConfig_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_AlgorithmSpecification_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +namespace flyteidl { +namespace plugins { +namespace sagemaker { +class InputModeDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _InputMode_default_instance_; +class AlgorithmNameDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _AlgorithmName_default_instance_; +class InputContentTypeDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _InputContentType_default_instance_; +class MetricDefinitionDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _MetricDefinition_default_instance_; +class AlgorithmSpecificationDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _AlgorithmSpecification_default_instance_; +class DistributedProtocolDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _DistributedProtocol_default_instance_; +class TrainingJobResourceConfigDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _TrainingJobResourceConfig_default_instance_; +class TrainingJobDefaultTypeInternal { + public: + ::google::protobuf::internal::ExplicitlyConstructed _instance; +} _TrainingJob_default_instance_; +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +static void InitDefaultsInputMode_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_InputMode_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::InputMode(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::InputMode::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_InputMode_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsInputMode_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto}, {}}; + +static void InitDefaultsAlgorithmName_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_AlgorithmName_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::AlgorithmName(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::AlgorithmName::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_AlgorithmName_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsAlgorithmName_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto}, {}}; + +static void InitDefaultsInputContentType_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_InputContentType_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::InputContentType(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::InputContentType::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_InputContentType_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsInputContentType_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto}, {}}; + +static void InitDefaultsMetricDefinition_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_MetricDefinition_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::MetricDefinition(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::MetricDefinition::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_MetricDefinition_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsMetricDefinition_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto}, {}}; + +static void InitDefaultsAlgorithmSpecification_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_AlgorithmSpecification_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::AlgorithmSpecification(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::AlgorithmSpecification::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<1> scc_info_AlgorithmSpecification_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsAlgorithmSpecification_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto}, { + &scc_info_MetricDefinition_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base,}}; + +static void InitDefaultsDistributedProtocol_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_DistributedProtocol_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::DistributedProtocol(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::DistributedProtocol::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_DistributedProtocol_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsDistributedProtocol_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto}, {}}; + +static void InitDefaultsTrainingJobResourceConfig_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_TrainingJobResourceConfig_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<0> scc_info_TrainingJobResourceConfig_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsTrainingJobResourceConfig_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto}, {}}; + +static void InitDefaultsTrainingJob_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &::flyteidl::plugins::sagemaker::_TrainingJob_default_instance_; + new (ptr) ::flyteidl::plugins::sagemaker::TrainingJob(); + ::google::protobuf::internal::OnShutdownDestroyMessage(ptr); + } + ::flyteidl::plugins::sagemaker::TrainingJob::InitAsDefaultInstance(); +} + +::google::protobuf::internal::SCCInfo<2> scc_info_TrainingJob_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = + {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsTrainingJob_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto}, { + &scc_info_AlgorithmSpecification_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base, + &scc_info_TrainingJobResourceConfig_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base,}}; + +void InitDefaults_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + ::google::protobuf::internal::InitSCC(&scc_info_InputMode_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_AlgorithmName_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_InputContentType_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_MetricDefinition_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_AlgorithmSpecification_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_DistributedProtocol_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_TrainingJobResourceConfig_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + ::google::protobuf::internal::InitSCC(&scc_info_TrainingJob_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); +} + +::google::protobuf::Metadata file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[8]; +const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[4]; +constexpr ::google::protobuf::ServiceDescriptor const** file_level_service_descriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = nullptr; + +const ::google::protobuf::uint32 TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::InputMode, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::AlgorithmName, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::InputContentType, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::MetricDefinition, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::MetricDefinition, name_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::MetricDefinition, regex_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::AlgorithmSpecification, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::AlgorithmSpecification, input_mode_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::AlgorithmSpecification, algorithm_name_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::AlgorithmSpecification, algorithm_version_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::AlgorithmSpecification, metric_definitions_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::AlgorithmSpecification, input_content_type_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::DistributedProtocol, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJobResourceConfig, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJobResourceConfig, instance_count_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJobResourceConfig, instance_type_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJobResourceConfig, volume_size_in_gb_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJobResourceConfig, distributed_protocol_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJob, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJob, algorithm_specification_), + PROTOBUF_FIELD_OFFSET(::flyteidl::plugins::sagemaker::TrainingJob, training_job_resource_config_), +}; +static const ::google::protobuf::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { + { 0, -1, sizeof(::flyteidl::plugins::sagemaker::InputMode)}, + { 5, -1, sizeof(::flyteidl::plugins::sagemaker::AlgorithmName)}, + { 10, -1, sizeof(::flyteidl::plugins::sagemaker::InputContentType)}, + { 15, -1, sizeof(::flyteidl::plugins::sagemaker::MetricDefinition)}, + { 22, -1, sizeof(::flyteidl::plugins::sagemaker::AlgorithmSpecification)}, + { 32, -1, sizeof(::flyteidl::plugins::sagemaker::DistributedProtocol)}, + { 37, -1, sizeof(::flyteidl::plugins::sagemaker::TrainingJobResourceConfig)}, + { 46, -1, sizeof(::flyteidl::plugins::sagemaker::TrainingJob)}, +}; + +static ::google::protobuf::Message const * const file_default_instances[] = { + reinterpret_cast(&::flyteidl::plugins::sagemaker::_InputMode_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_AlgorithmName_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_InputContentType_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_MetricDefinition_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_AlgorithmSpecification_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_DistributedProtocol_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_TrainingJobResourceConfig_default_instance_), + reinterpret_cast(&::flyteidl::plugins::sagemaker::_TrainingJob_default_instance_), +}; + +::google::protobuf::internal::AssignDescriptorsTable assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = { + {}, AddDescriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, "flyteidl/plugins/sagemaker/training_job.proto", schemas, + file_default_instances, TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto::offsets, + file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, 8, file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, file_level_service_descriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, +}; + +const char descriptor_table_protodef_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[] = + "\n-flyteidl/plugins/sagemaker/training_jo" + "b.proto\022\032flyteidl.plugins.sagemaker\032\036goo" + "gle/protobuf/duration.proto\"(\n\tInputMode" + "\"\033\n\005Value\022\010\n\004FILE\020\000\022\010\n\004PIPE\020\001\"1\n\rAlgorit" + "hmName\" \n\005Value\022\n\n\006CUSTOM\020\000\022\013\n\007XGBOOST\020\001" + "\")\n\020InputContentType\"\025\n\005Value\022\014\n\010TEXT_CS" + "V\020\000\"/\n\020MetricDefinition\022\014\n\004name\030\001 \001(\t\022\r\n" + "\005regex\030\002 \001(\t\"\327\002\n\026AlgorithmSpecification\022" + "\?\n\ninput_mode\030\001 \001(\0162+.flyteidl.plugins.s" + "agemaker.InputMode.Value\022G\n\016algorithm_na" + "me\030\002 \001(\0162/.flyteidl.plugins.sagemaker.Al" + "gorithmName.Value\022\031\n\021algorithm_version\030\003" + " \001(\t\022H\n\022metric_definitions\030\004 \003(\0132,.flyte" + "idl.plugins.sagemaker.MetricDefinition\022N" + "\n\022input_content_type\030\005 \001(\01622.flyteidl.pl" + "ugins.sagemaker.InputContentType.Value\"8" + "\n\023DistributedProtocol\"!\n\005Value\022\017\n\013UNSPEC" + "IFIED\020\000\022\007\n\003MPI\020\001\"\272\001\n\031TrainingJobResource" + "Config\022\026\n\016instance_count\030\001 \001(\003\022\025\n\rinstan" + "ce_type\030\002 \001(\t\022\031\n\021volume_size_in_gb\030\003 \001(\003" + "\022S\n\024distributed_protocol\030\004 \001(\01625.flyteid" + "l.plugins.sagemaker.DistributedProtocol." + "Value\"\277\001\n\013TrainingJob\022S\n\027algorithm_speci" + "fication\030\001 \001(\01322.flyteidl.plugins.sagema" + "ker.AlgorithmSpecification\022[\n\034training_j" + "ob_resource_config\030\002 \001(\01325.flyteidl.plug" + "ins.sagemaker.TrainingJobResourceConfigB" + "\?Z=github.com/flyteorg/flyte/flyteidl/ge" + "n/pb-go/flyteidl/pluginsb\006proto3" + ; +::google::protobuf::internal::DescriptorTable descriptor_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = { + false, InitDefaults_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, + descriptor_table_protodef_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, + "flyteidl/plugins/sagemaker/training_job.proto", &assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, 1152, +}; + +void AddDescriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto() { + static constexpr ::google::protobuf::internal::InitFunc deps[1] = + { + ::AddDescriptors_google_2fprotobuf_2fduration_2eproto, + }; + ::google::protobuf::internal::AddDescriptors(&descriptor_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto, deps, 1); +} + +// Force running AddDescriptors() at dynamic initialization time. +static bool dynamic_init_dummy_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto = []() { AddDescriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto(); return true; }(); +namespace flyteidl { +namespace plugins { +namespace sagemaker { +const ::google::protobuf::EnumDescriptor* InputMode_Value_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[0]; +} +bool InputMode_Value_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const InputMode_Value InputMode::FILE; +const InputMode_Value InputMode::PIPE; +const InputMode_Value InputMode::Value_MIN; +const InputMode_Value InputMode::Value_MAX; +const int InputMode::Value_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 +const ::google::protobuf::EnumDescriptor* AlgorithmName_Value_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[1]; +} +bool AlgorithmName_Value_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const AlgorithmName_Value AlgorithmName::CUSTOM; +const AlgorithmName_Value AlgorithmName::XGBOOST; +const AlgorithmName_Value AlgorithmName::Value_MIN; +const AlgorithmName_Value AlgorithmName::Value_MAX; +const int AlgorithmName::Value_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 +const ::google::protobuf::EnumDescriptor* InputContentType_Value_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[2]; +} +bool InputContentType_Value_IsValid(int value) { + switch (value) { + case 0: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const InputContentType_Value InputContentType::TEXT_CSV; +const InputContentType_Value InputContentType::Value_MIN; +const InputContentType_Value InputContentType::Value_MAX; +const int InputContentType::Value_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 +const ::google::protobuf::EnumDescriptor* DistributedProtocol_Value_descriptor() { + ::google::protobuf::internal::AssignDescriptors(&assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return file_level_enum_descriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[3]; +} +bool DistributedProtocol_Value_IsValid(int value) { + switch (value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const DistributedProtocol_Value DistributedProtocol::UNSPECIFIED; +const DistributedProtocol_Value DistributedProtocol::MPI; +const DistributedProtocol_Value DistributedProtocol::Value_MIN; +const DistributedProtocol_Value DistributedProtocol::Value_MAX; +const int DistributedProtocol::Value_ARRAYSIZE; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +// =================================================================== + +void InputMode::InitAsDefaultInstance() { +} +class InputMode::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +InputMode::InputMode() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.InputMode) +} +InputMode::InputMode(const InputMode& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.InputMode) +} + +void InputMode::SharedCtor() { +} + +InputMode::~InputMode() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.InputMode) + SharedDtor(); +} + +void InputMode::SharedDtor() { +} + +void InputMode::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const InputMode& InputMode::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_InputMode_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void InputMode::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.InputMode) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* InputMode::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool InputMode::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.InputMode) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.InputMode) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.InputMode) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void InputMode::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.InputMode) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.InputMode) +} + +::google::protobuf::uint8* InputMode::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.InputMode) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.InputMode) + return target; +} + +size_t InputMode::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.InputMode) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void InputMode::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.InputMode) + GOOGLE_DCHECK_NE(&from, this); + const InputMode* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.InputMode) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.InputMode) + MergeFrom(*source); + } +} + +void InputMode::MergeFrom(const InputMode& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.InputMode) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void InputMode::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.InputMode) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void InputMode::CopyFrom(const InputMode& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.InputMode) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool InputMode::IsInitialized() const { + return true; +} + +void InputMode::Swap(InputMode* other) { + if (other == this) return; + InternalSwap(other); +} +void InputMode::InternalSwap(InputMode* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata InputMode::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void AlgorithmName::InitAsDefaultInstance() { +} +class AlgorithmName::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +AlgorithmName::AlgorithmName() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.AlgorithmName) +} +AlgorithmName::AlgorithmName(const AlgorithmName& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.AlgorithmName) +} + +void AlgorithmName::SharedCtor() { +} + +AlgorithmName::~AlgorithmName() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.AlgorithmName) + SharedDtor(); +} + +void AlgorithmName::SharedDtor() { +} + +void AlgorithmName::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const AlgorithmName& AlgorithmName::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_AlgorithmName_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void AlgorithmName::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.AlgorithmName) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* AlgorithmName::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool AlgorithmName::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.AlgorithmName) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.AlgorithmName) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.AlgorithmName) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void AlgorithmName::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.AlgorithmName) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.AlgorithmName) +} + +::google::protobuf::uint8* AlgorithmName::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.AlgorithmName) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.AlgorithmName) + return target; +} + +size_t AlgorithmName::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.AlgorithmName) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void AlgorithmName::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.AlgorithmName) + GOOGLE_DCHECK_NE(&from, this); + const AlgorithmName* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.AlgorithmName) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.AlgorithmName) + MergeFrom(*source); + } +} + +void AlgorithmName::MergeFrom(const AlgorithmName& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.AlgorithmName) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void AlgorithmName::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.AlgorithmName) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void AlgorithmName::CopyFrom(const AlgorithmName& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.AlgorithmName) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool AlgorithmName::IsInitialized() const { + return true; +} + +void AlgorithmName::Swap(AlgorithmName* other) { + if (other == this) return; + InternalSwap(other); +} +void AlgorithmName::InternalSwap(AlgorithmName* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata AlgorithmName::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void InputContentType::InitAsDefaultInstance() { +} +class InputContentType::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +InputContentType::InputContentType() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.InputContentType) +} +InputContentType::InputContentType(const InputContentType& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.InputContentType) +} + +void InputContentType::SharedCtor() { +} + +InputContentType::~InputContentType() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.InputContentType) + SharedDtor(); +} + +void InputContentType::SharedDtor() { +} + +void InputContentType::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const InputContentType& InputContentType::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_InputContentType_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void InputContentType::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.InputContentType) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* InputContentType::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool InputContentType::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.InputContentType) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.InputContentType) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.InputContentType) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void InputContentType::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.InputContentType) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.InputContentType) +} + +::google::protobuf::uint8* InputContentType::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.InputContentType) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.InputContentType) + return target; +} + +size_t InputContentType::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.InputContentType) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void InputContentType::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.InputContentType) + GOOGLE_DCHECK_NE(&from, this); + const InputContentType* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.InputContentType) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.InputContentType) + MergeFrom(*source); + } +} + +void InputContentType::MergeFrom(const InputContentType& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.InputContentType) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void InputContentType::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.InputContentType) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void InputContentType::CopyFrom(const InputContentType& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.InputContentType) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool InputContentType::IsInitialized() const { + return true; +} + +void InputContentType::Swap(InputContentType* other) { + if (other == this) return; + InternalSwap(other); +} +void InputContentType::InternalSwap(InputContentType* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata InputContentType::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void MetricDefinition::InitAsDefaultInstance() { +} +class MetricDefinition::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int MetricDefinition::kNameFieldNumber; +const int MetricDefinition::kRegexFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +MetricDefinition::MetricDefinition() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.MetricDefinition) +} +MetricDefinition::MetricDefinition(const MetricDefinition& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (from.name().size() > 0) { + name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_); + } + regex_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (from.regex().size() > 0) { + regex_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.regex_); + } + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.MetricDefinition) +} + +void MetricDefinition::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_MetricDefinition_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + regex_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} + +MetricDefinition::~MetricDefinition() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.MetricDefinition) + SharedDtor(); +} + +void MetricDefinition::SharedDtor() { + name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + regex_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} + +void MetricDefinition::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const MetricDefinition& MetricDefinition::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_MetricDefinition_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void MetricDefinition::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.MetricDefinition) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + regex_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* MetricDefinition::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // string name = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + ctx->extra_parse_data().SetFieldName("flyteidl.plugins.sagemaker.MetricDefinition.name"); + object = msg->mutable_name(); + if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { + parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; + goto string_till_end; + } + GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); + ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); + ptr += size; + break; + } + // string regex = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + ctx->extra_parse_data().SetFieldName("flyteidl.plugins.sagemaker.MetricDefinition.regex"); + object = msg->mutable_regex(); + if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { + parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; + goto string_till_end; + } + GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); + ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); + ptr += size; + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +string_till_end: + static_cast<::std::string*>(object)->clear(); + static_cast<::std::string*>(object)->reserve(size); + goto len_delim_till_end; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool MetricDefinition::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.MetricDefinition) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // string name = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_name())); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->name().data(), static_cast(this->name().length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "flyteidl.plugins.sagemaker.MetricDefinition.name")); + } else { + goto handle_unusual; + } + break; + } + + // string regex = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_regex())); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->regex().data(), static_cast(this->regex().length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "flyteidl.plugins.sagemaker.MetricDefinition.regex")); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.MetricDefinition) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.MetricDefinition) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void MetricDefinition::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.MetricDefinition) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // string name = 1; + if (this->name().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->name().data(), static_cast(this->name().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.MetricDefinition.name"); + ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( + 1, this->name(), output); + } + + // string regex = 2; + if (this->regex().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->regex().data(), static_cast(this->regex().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.MetricDefinition.regex"); + ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( + 2, this->regex(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.MetricDefinition) +} + +::google::protobuf::uint8* MetricDefinition::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.MetricDefinition) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // string name = 1; + if (this->name().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->name().data(), static_cast(this->name().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.MetricDefinition.name"); + target = + ::google::protobuf::internal::WireFormatLite::WriteStringToArray( + 1, this->name(), target); + } + + // string regex = 2; + if (this->regex().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->regex().data(), static_cast(this->regex().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.MetricDefinition.regex"); + target = + ::google::protobuf::internal::WireFormatLite::WriteStringToArray( + 2, this->regex(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.MetricDefinition) + return target; +} + +size_t MetricDefinition::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.MetricDefinition) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string name = 1; + if (this->name().size() > 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->name()); + } + + // string regex = 2; + if (this->regex().size() > 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->regex()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void MetricDefinition::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.MetricDefinition) + GOOGLE_DCHECK_NE(&from, this); + const MetricDefinition* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.MetricDefinition) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.MetricDefinition) + MergeFrom(*source); + } +} + +void MetricDefinition::MergeFrom(const MetricDefinition& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.MetricDefinition) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.name().size() > 0) { + + name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_); + } + if (from.regex().size() > 0) { + + regex_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.regex_); + } +} + +void MetricDefinition::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.MetricDefinition) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void MetricDefinition::CopyFrom(const MetricDefinition& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.MetricDefinition) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool MetricDefinition::IsInitialized() const { + return true; +} + +void MetricDefinition::Swap(MetricDefinition* other) { + if (other == this) return; + InternalSwap(other); +} +void MetricDefinition::InternalSwap(MetricDefinition* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + name_.Swap(&other->name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), + GetArenaNoVirtual()); + regex_.Swap(&other->regex_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), + GetArenaNoVirtual()); +} + +::google::protobuf::Metadata MetricDefinition::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void AlgorithmSpecification::InitAsDefaultInstance() { +} +class AlgorithmSpecification::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int AlgorithmSpecification::kInputModeFieldNumber; +const int AlgorithmSpecification::kAlgorithmNameFieldNumber; +const int AlgorithmSpecification::kAlgorithmVersionFieldNumber; +const int AlgorithmSpecification::kMetricDefinitionsFieldNumber; +const int AlgorithmSpecification::kInputContentTypeFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +AlgorithmSpecification::AlgorithmSpecification() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.AlgorithmSpecification) +} +AlgorithmSpecification::AlgorithmSpecification(const AlgorithmSpecification& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr), + metric_definitions_(from.metric_definitions_) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + algorithm_version_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (from.algorithm_version().size() > 0) { + algorithm_version_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.algorithm_version_); + } + ::memcpy(&input_mode_, &from.input_mode_, + static_cast(reinterpret_cast(&input_content_type_) - + reinterpret_cast(&input_mode_)) + sizeof(input_content_type_)); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.AlgorithmSpecification) +} + +void AlgorithmSpecification::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_AlgorithmSpecification_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + algorithm_version_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + ::memset(&input_mode_, 0, static_cast( + reinterpret_cast(&input_content_type_) - + reinterpret_cast(&input_mode_)) + sizeof(input_content_type_)); +} + +AlgorithmSpecification::~AlgorithmSpecification() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.AlgorithmSpecification) + SharedDtor(); +} + +void AlgorithmSpecification::SharedDtor() { + algorithm_version_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} + +void AlgorithmSpecification::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const AlgorithmSpecification& AlgorithmSpecification::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_AlgorithmSpecification_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void AlgorithmSpecification::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + metric_definitions_.Clear(); + algorithm_version_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + ::memset(&input_mode_, 0, static_cast( + reinterpret_cast(&input_content_type_) - + reinterpret_cast(&input_mode_)) + sizeof(input_content_type_)); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* AlgorithmSpecification::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 8) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_input_mode(static_cast<::flyteidl::plugins::sagemaker::InputMode_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 16) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_algorithm_name(static_cast<::flyteidl::plugins::sagemaker::AlgorithmName_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // string algorithm_version = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 26) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + ctx->extra_parse_data().SetFieldName("flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version"); + object = msg->mutable_algorithm_version(); + if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { + parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; + goto string_till_end; + } + GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); + ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); + ptr += size; + break; + } + // repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + case 4: { + if (static_cast<::google::protobuf::uint8>(tag) != 34) goto handle_unusual; + do { + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::MetricDefinition::_InternalParse; + object = msg->add_metric_definitions(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + if (ptr >= end) break; + } while ((::google::protobuf::io::UnalignedLoad<::google::protobuf::uint64>(ptr) & 255) == 34 && (ptr += 1)); + break; + } + // .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + case 5: { + if (static_cast<::google::protobuf::uint8>(tag) != 40) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_input_content_type(static_cast<::flyteidl::plugins::sagemaker::InputContentType_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +string_till_end: + static_cast<::std::string*>(object)->clear(); + static_cast<::std::string*>(object)->reserve(size); + goto len_delim_till_end; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool AlgorithmSpecification::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (8 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_input_mode(static_cast< ::flyteidl::plugins::sagemaker::InputMode_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (16 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_algorithm_name(static_cast< ::flyteidl::plugins::sagemaker::AlgorithmName_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + // string algorithm_version = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (26 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_algorithm_version())); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->algorithm_version().data(), static_cast(this->algorithm_version().length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version")); + } else { + goto handle_unusual; + } + break; + } + + // repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + case 4: { + if (static_cast< ::google::protobuf::uint8>(tag) == (34 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, add_metric_definitions())); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + case 5: { + if (static_cast< ::google::protobuf::uint8>(tag) == (40 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_input_content_type(static_cast< ::flyteidl::plugins::sagemaker::InputContentType_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.AlgorithmSpecification) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.AlgorithmSpecification) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void AlgorithmSpecification::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + if (this->input_mode() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 1, this->input_mode(), output); + } + + // .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + if (this->algorithm_name() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 2, this->algorithm_name(), output); + } + + // string algorithm_version = 3; + if (this->algorithm_version().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->algorithm_version().data(), static_cast(this->algorithm_version().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version"); + ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( + 3, this->algorithm_version(), output); + } + + // repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + for (unsigned int i = 0, + n = static_cast(this->metric_definitions_size()); i < n; i++) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 4, + this->metric_definitions(static_cast(i)), + output); + } + + // .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + if (this->input_content_type() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 5, this->input_content_type(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.AlgorithmSpecification) +} + +::google::protobuf::uint8* AlgorithmSpecification::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + if (this->input_mode() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 1, this->input_mode(), target); + } + + // .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + if (this->algorithm_name() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 2, this->algorithm_name(), target); + } + + // string algorithm_version = 3; + if (this->algorithm_version().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->algorithm_version().data(), static_cast(this->algorithm_version().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version"); + target = + ::google::protobuf::internal::WireFormatLite::WriteStringToArray( + 3, this->algorithm_version(), target); + } + + // repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + for (unsigned int i = 0, + n = static_cast(this->metric_definitions_size()); i < n; i++) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 4, this->metric_definitions(static_cast(i)), target); + } + + // .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + if (this->input_content_type() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 5, this->input_content_type(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.AlgorithmSpecification) + return target; +} + +size_t AlgorithmSpecification::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + { + unsigned int count = static_cast(this->metric_definitions_size()); + total_size += 1UL * count; + for (unsigned int i = 0; i < count; i++) { + total_size += + ::google::protobuf::internal::WireFormatLite::MessageSize( + this->metric_definitions(static_cast(i))); + } + } + + // string algorithm_version = 3; + if (this->algorithm_version().size() > 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->algorithm_version()); + } + + // .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + if (this->input_mode() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->input_mode()); + } + + // .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + if (this->algorithm_name() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->algorithm_name()); + } + + // .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + if (this->input_content_type() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->input_content_type()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void AlgorithmSpecification::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + GOOGLE_DCHECK_NE(&from, this); + const AlgorithmSpecification* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.AlgorithmSpecification) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.AlgorithmSpecification) + MergeFrom(*source); + } +} + +void AlgorithmSpecification::MergeFrom(const AlgorithmSpecification& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + metric_definitions_.MergeFrom(from.metric_definitions_); + if (from.algorithm_version().size() > 0) { + + algorithm_version_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.algorithm_version_); + } + if (from.input_mode() != 0) { + set_input_mode(from.input_mode()); + } + if (from.algorithm_name() != 0) { + set_algorithm_name(from.algorithm_name()); + } + if (from.input_content_type() != 0) { + set_input_content_type(from.input_content_type()); + } +} + +void AlgorithmSpecification::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void AlgorithmSpecification::CopyFrom(const AlgorithmSpecification& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.AlgorithmSpecification) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool AlgorithmSpecification::IsInitialized() const { + return true; +} + +void AlgorithmSpecification::Swap(AlgorithmSpecification* other) { + if (other == this) return; + InternalSwap(other); +} +void AlgorithmSpecification::InternalSwap(AlgorithmSpecification* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + CastToBase(&metric_definitions_)->InternalSwap(CastToBase(&other->metric_definitions_)); + algorithm_version_.Swap(&other->algorithm_version_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), + GetArenaNoVirtual()); + swap(input_mode_, other->input_mode_); + swap(algorithm_name_, other->algorithm_name_); + swap(input_content_type_, other->input_content_type_); +} + +::google::protobuf::Metadata AlgorithmSpecification::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void DistributedProtocol::InitAsDefaultInstance() { +} +class DistributedProtocol::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +DistributedProtocol::DistributedProtocol() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.DistributedProtocol) +} +DistributedProtocol::DistributedProtocol(const DistributedProtocol& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.DistributedProtocol) +} + +void DistributedProtocol::SharedCtor() { +} + +DistributedProtocol::~DistributedProtocol() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.DistributedProtocol) + SharedDtor(); +} + +void DistributedProtocol::SharedDtor() { +} + +void DistributedProtocol::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const DistributedProtocol& DistributedProtocol::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_DistributedProtocol_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void DistributedProtocol::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.DistributedProtocol) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* DistributedProtocol::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + default: { + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool DistributedProtocol::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.DistributedProtocol) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.DistributedProtocol) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.DistributedProtocol) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void DistributedProtocol::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.DistributedProtocol) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.DistributedProtocol) +} + +::google::protobuf::uint8* DistributedProtocol::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.DistributedProtocol) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.DistributedProtocol) + return target; +} + +size_t DistributedProtocol::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.DistributedProtocol) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void DistributedProtocol::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.DistributedProtocol) + GOOGLE_DCHECK_NE(&from, this); + const DistributedProtocol* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.DistributedProtocol) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.DistributedProtocol) + MergeFrom(*source); + } +} + +void DistributedProtocol::MergeFrom(const DistributedProtocol& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.DistributedProtocol) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + +} + +void DistributedProtocol::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.DistributedProtocol) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void DistributedProtocol::CopyFrom(const DistributedProtocol& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.DistributedProtocol) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool DistributedProtocol::IsInitialized() const { + return true; +} + +void DistributedProtocol::Swap(DistributedProtocol* other) { + if (other == this) return; + InternalSwap(other); +} +void DistributedProtocol::InternalSwap(DistributedProtocol* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); +} + +::google::protobuf::Metadata DistributedProtocol::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void TrainingJobResourceConfig::InitAsDefaultInstance() { +} +class TrainingJobResourceConfig::HasBitSetters { + public: +}; + +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int TrainingJobResourceConfig::kInstanceCountFieldNumber; +const int TrainingJobResourceConfig::kInstanceTypeFieldNumber; +const int TrainingJobResourceConfig::kVolumeSizeInGbFieldNumber; +const int TrainingJobResourceConfig::kDistributedProtocolFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +TrainingJobResourceConfig::TrainingJobResourceConfig() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) +} +TrainingJobResourceConfig::TrainingJobResourceConfig(const TrainingJobResourceConfig& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + instance_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + if (from.instance_type().size() > 0) { + instance_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.instance_type_); + } + ::memcpy(&instance_count_, &from.instance_count_, + static_cast(reinterpret_cast(&distributed_protocol_) - + reinterpret_cast(&instance_count_)) + sizeof(distributed_protocol_)); + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) +} + +void TrainingJobResourceConfig::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_TrainingJobResourceConfig_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + instance_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + ::memset(&instance_count_, 0, static_cast( + reinterpret_cast(&distributed_protocol_) - + reinterpret_cast(&instance_count_)) + sizeof(distributed_protocol_)); +} + +TrainingJobResourceConfig::~TrainingJobResourceConfig() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + SharedDtor(); +} + +void TrainingJobResourceConfig::SharedDtor() { + instance_type_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} + +void TrainingJobResourceConfig::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const TrainingJobResourceConfig& TrainingJobResourceConfig::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_TrainingJobResourceConfig_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void TrainingJobResourceConfig::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + instance_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); + ::memset(&instance_count_, 0, static_cast( + reinterpret_cast(&distributed_protocol_) - + reinterpret_cast(&instance_count_)) + sizeof(distributed_protocol_)); + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* TrainingJobResourceConfig::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // int64 instance_count = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 8) goto handle_unusual; + msg->set_instance_count(::google::protobuf::internal::ReadVarint(&ptr)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // string instance_type = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + ctx->extra_parse_data().SetFieldName("flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type"); + object = msg->mutable_instance_type(); + if (size > end - ptr + ::google::protobuf::internal::ParseContext::kSlopBytes) { + parser_till_end = ::google::protobuf::internal::GreedyStringParserUTF8; + goto string_till_end; + } + GOOGLE_PROTOBUF_PARSER_ASSERT(::google::protobuf::internal::StringCheckUTF8(ptr, size, ctx)); + ::google::protobuf::internal::InlineGreedyStringParser(object, ptr, size, ctx); + ptr += size; + break; + } + // int64 volume_size_in_gb = 3; + case 3: { + if (static_cast<::google::protobuf::uint8>(tag) != 24) goto handle_unusual; + msg->set_volume_size_in_gb(::google::protobuf::internal::ReadVarint(&ptr)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + // .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + case 4: { + if (static_cast<::google::protobuf::uint8>(tag) != 32) goto handle_unusual; + ::google::protobuf::uint64 val = ::google::protobuf::internal::ReadVarint(&ptr); + msg->set_distributed_protocol(static_cast<::flyteidl::plugins::sagemaker::DistributedProtocol_Value>(val)); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +string_till_end: + static_cast<::std::string*>(object)->clear(); + static_cast<::std::string*>(object)->reserve(size); + goto len_delim_till_end; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool TrainingJobResourceConfig::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // int64 instance_count = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (8 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>( + input, &instance_count_))); + } else { + goto handle_unusual; + } + break; + } + + // string instance_type = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_instance_type())); + DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->instance_type().data(), static_cast(this->instance_type().length()), + ::google::protobuf::internal::WireFormatLite::PARSE, + "flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type")); + } else { + goto handle_unusual; + } + break; + } + + // int64 volume_size_in_gb = 3; + case 3: { + if (static_cast< ::google::protobuf::uint8>(tag) == (24 & 0xFF)) { + + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>( + input, &volume_size_in_gb_))); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + case 4: { + if (static_cast< ::google::protobuf::uint8>(tag) == (32 & 0xFF)) { + int value = 0; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + set_distributed_protocol(static_cast< ::flyteidl::plugins::sagemaker::DistributedProtocol_Value >(value)); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void TrainingJobResourceConfig::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // int64 instance_count = 1; + if (this->instance_count() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteInt64(1, this->instance_count(), output); + } + + // string instance_type = 2; + if (this->instance_type().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->instance_type().data(), static_cast(this->instance_type().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type"); + ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased( + 2, this->instance_type(), output); + } + + // int64 volume_size_in_gb = 3; + if (this->volume_size_in_gb() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteInt64(3, this->volume_size_in_gb(), output); + } + + // .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + if (this->distributed_protocol() != 0) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 4, this->distributed_protocol(), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) +} + +::google::protobuf::uint8* TrainingJobResourceConfig::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // int64 instance_count = 1; + if (this->instance_count() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(1, this->instance_count(), target); + } + + // string instance_type = 2; + if (this->instance_type().size() > 0) { + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String( + this->instance_type().data(), static_cast(this->instance_type().length()), + ::google::protobuf::internal::WireFormatLite::SERIALIZE, + "flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type"); + target = + ::google::protobuf::internal::WireFormatLite::WriteStringToArray( + 2, this->instance_type(), target); + } + + // int64 volume_size_in_gb = 3; + if (this->volume_size_in_gb() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(3, this->volume_size_in_gb(), target); + } + + // .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + if (this->distributed_protocol() != 0) { + target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray( + 4, this->distributed_protocol(), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + return target; +} + +size_t TrainingJobResourceConfig::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // string instance_type = 2; + if (this->instance_type().size() > 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->instance_type()); + } + + // int64 instance_count = 1; + if (this->instance_count() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::Int64Size( + this->instance_count()); + } + + // int64 volume_size_in_gb = 3; + if (this->volume_size_in_gb() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::Int64Size( + this->volume_size_in_gb()); + } + + // .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + if (this->distributed_protocol() != 0) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->distributed_protocol()); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void TrainingJobResourceConfig::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + GOOGLE_DCHECK_NE(&from, this); + const TrainingJobResourceConfig* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + MergeFrom(*source); + } +} + +void TrainingJobResourceConfig::MergeFrom(const TrainingJobResourceConfig& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.instance_type().size() > 0) { + + instance_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.instance_type_); + } + if (from.instance_count() != 0) { + set_instance_count(from.instance_count()); + } + if (from.volume_size_in_gb() != 0) { + set_volume_size_in_gb(from.volume_size_in_gb()); + } + if (from.distributed_protocol() != 0) { + set_distributed_protocol(from.distributed_protocol()); + } +} + +void TrainingJobResourceConfig::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void TrainingJobResourceConfig::CopyFrom(const TrainingJobResourceConfig& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool TrainingJobResourceConfig::IsInitialized() const { + return true; +} + +void TrainingJobResourceConfig::Swap(TrainingJobResourceConfig* other) { + if (other == this) return; + InternalSwap(other); +} +void TrainingJobResourceConfig::InternalSwap(TrainingJobResourceConfig* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + instance_type_.Swap(&other->instance_type_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(), + GetArenaNoVirtual()); + swap(instance_count_, other->instance_count_); + swap(volume_size_in_gb_, other->volume_size_in_gb_); + swap(distributed_protocol_, other->distributed_protocol_); +} + +::google::protobuf::Metadata TrainingJobResourceConfig::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[kIndexInFileMessages]; +} + + +// =================================================================== + +void TrainingJob::InitAsDefaultInstance() { + ::flyteidl::plugins::sagemaker::_TrainingJob_default_instance_._instance.get_mutable()->algorithm_specification_ = const_cast< ::flyteidl::plugins::sagemaker::AlgorithmSpecification*>( + ::flyteidl::plugins::sagemaker::AlgorithmSpecification::internal_default_instance()); + ::flyteidl::plugins::sagemaker::_TrainingJob_default_instance_._instance.get_mutable()->training_job_resource_config_ = const_cast< ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig*>( + ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig::internal_default_instance()); +} +class TrainingJob::HasBitSetters { + public: + static const ::flyteidl::plugins::sagemaker::AlgorithmSpecification& algorithm_specification(const TrainingJob* msg); + static const ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig& training_job_resource_config(const TrainingJob* msg); +}; + +const ::flyteidl::plugins::sagemaker::AlgorithmSpecification& +TrainingJob::HasBitSetters::algorithm_specification(const TrainingJob* msg) { + return *msg->algorithm_specification_; +} +const ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig& +TrainingJob::HasBitSetters::training_job_resource_config(const TrainingJob* msg) { + return *msg->training_job_resource_config_; +} +#if !defined(_MSC_VER) || _MSC_VER >= 1900 +const int TrainingJob::kAlgorithmSpecificationFieldNumber; +const int TrainingJob::kTrainingJobResourceConfigFieldNumber; +#endif // !defined(_MSC_VER) || _MSC_VER >= 1900 + +TrainingJob::TrainingJob() + : ::google::protobuf::Message(), _internal_metadata_(nullptr) { + SharedCtor(); + // @@protoc_insertion_point(constructor:flyteidl.plugins.sagemaker.TrainingJob) +} +TrainingJob::TrainingJob(const TrainingJob& from) + : ::google::protobuf::Message(), + _internal_metadata_(nullptr) { + _internal_metadata_.MergeFrom(from._internal_metadata_); + if (from.has_algorithm_specification()) { + algorithm_specification_ = new ::flyteidl::plugins::sagemaker::AlgorithmSpecification(*from.algorithm_specification_); + } else { + algorithm_specification_ = nullptr; + } + if (from.has_training_job_resource_config()) { + training_job_resource_config_ = new ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig(*from.training_job_resource_config_); + } else { + training_job_resource_config_ = nullptr; + } + // @@protoc_insertion_point(copy_constructor:flyteidl.plugins.sagemaker.TrainingJob) +} + +void TrainingJob::SharedCtor() { + ::google::protobuf::internal::InitSCC( + &scc_info_TrainingJob_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + ::memset(&algorithm_specification_, 0, static_cast( + reinterpret_cast(&training_job_resource_config_) - + reinterpret_cast(&algorithm_specification_)) + sizeof(training_job_resource_config_)); +} + +TrainingJob::~TrainingJob() { + // @@protoc_insertion_point(destructor:flyteidl.plugins.sagemaker.TrainingJob) + SharedDtor(); +} + +void TrainingJob::SharedDtor() { + if (this != internal_default_instance()) delete algorithm_specification_; + if (this != internal_default_instance()) delete training_job_resource_config_; +} + +void TrainingJob::SetCachedSize(int size) const { + _cached_size_.Set(size); +} +const TrainingJob& TrainingJob::default_instance() { + ::google::protobuf::internal::InitSCC(&::scc_info_TrainingJob_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto.base); + return *internal_default_instance(); +} + + +void TrainingJob::Clear() { +// @@protoc_insertion_point(message_clear_start:flyteidl.plugins.sagemaker.TrainingJob) + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + if (GetArenaNoVirtual() == nullptr && algorithm_specification_ != nullptr) { + delete algorithm_specification_; + } + algorithm_specification_ = nullptr; + if (GetArenaNoVirtual() == nullptr && training_job_resource_config_ != nullptr) { + delete training_job_resource_config_; + } + training_job_resource_config_ = nullptr; + _internal_metadata_.Clear(); +} + +#if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +const char* TrainingJob::_InternalParse(const char* begin, const char* end, void* object, + ::google::protobuf::internal::ParseContext* ctx) { + auto msg = static_cast(object); + ::google::protobuf::int32 size; (void)size; + int depth; (void)depth; + ::google::protobuf::uint32 tag; + ::google::protobuf::internal::ParseFunc parser_till_end; (void)parser_till_end; + auto ptr = begin; + while (ptr < end) { + ptr = ::google::protobuf::io::Parse32(ptr, &tag); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + switch (tag >> 3) { + // .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + case 1: { + if (static_cast<::google::protobuf::uint8>(tag) != 10) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::AlgorithmSpecification::_InternalParse; + object = msg->mutable_algorithm_specification(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + // .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + case 2: { + if (static_cast<::google::protobuf::uint8>(tag) != 18) goto handle_unusual; + ptr = ::google::protobuf::io::ReadSize(ptr, &size); + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr); + parser_till_end = ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig::_InternalParse; + object = msg->mutable_training_job_resource_config(); + if (size > end - ptr) goto len_delim_till_end; + ptr += size; + GOOGLE_PROTOBUF_PARSER_ASSERT(ctx->ParseExactRange( + {parser_till_end, object}, ptr - size, ptr)); + break; + } + default: { + handle_unusual: + if ((tag & 7) == 4 || tag == 0) { + ctx->EndGroup(tag); + return ptr; + } + auto res = UnknownFieldParse(tag, {_InternalParse, msg}, + ptr, end, msg->_internal_metadata_.mutable_unknown_fields(), ctx); + ptr = res.first; + GOOGLE_PROTOBUF_PARSER_ASSERT(ptr != nullptr); + if (res.second) return ptr; + } + } // switch + } // while + return ptr; +len_delim_till_end: + return ctx->StoreAndTailCall(ptr, end, {_InternalParse, msg}, + {parser_till_end, object}, size); +} +#else // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER +bool TrainingJob::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!PROTOBUF_PREDICT_TRUE(EXPRESSION)) goto failure + ::google::protobuf::uint32 tag; + // @@protoc_insertion_point(parse_start:flyteidl.plugins.sagemaker.TrainingJob) + for (;;) { + ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); + tag = p.first; + if (!p.second) goto handle_unusual; + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + case 1: { + if (static_cast< ::google::protobuf::uint8>(tag) == (10 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_algorithm_specification())); + } else { + goto handle_unusual; + } + break; + } + + // .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + case 2: { + if (static_cast< ::google::protobuf::uint8>(tag) == (18 & 0xFF)) { + DO_(::google::protobuf::internal::WireFormatLite::ReadMessage( + input, mutable_training_job_resource_config())); + } else { + goto handle_unusual; + } + break; + } + + default: { + handle_unusual: + if (tag == 0) { + goto success; + } + DO_(::google::protobuf::internal::WireFormat::SkipField( + input, tag, _internal_metadata_.mutable_unknown_fields())); + break; + } + } + } +success: + // @@protoc_insertion_point(parse_success:flyteidl.plugins.sagemaker.TrainingJob) + return true; +failure: + // @@protoc_insertion_point(parse_failure:flyteidl.plugins.sagemaker.TrainingJob) + return false; +#undef DO_ +} +#endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + +void TrainingJob::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // @@protoc_insertion_point(serialize_start:flyteidl.plugins.sagemaker.TrainingJob) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + if (this->has_algorithm_specification()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 1, HasBitSetters::algorithm_specification(this), output); + } + + // .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + if (this->has_training_job_resource_config()) { + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( + 2, HasBitSetters::training_job_resource_config(this), output); + } + + if (_internal_metadata_.have_unknown_fields()) { + ::google::protobuf::internal::WireFormat::SerializeUnknownFields( + _internal_metadata_.unknown_fields(), output); + } + // @@protoc_insertion_point(serialize_end:flyteidl.plugins.sagemaker.TrainingJob) +} + +::google::protobuf::uint8* TrainingJob::InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const { + // @@protoc_insertion_point(serialize_to_array_start:flyteidl.plugins.sagemaker.TrainingJob) + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + if (this->has_algorithm_specification()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 1, HasBitSetters::algorithm_specification(this), target); + } + + // .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + if (this->has_training_job_resource_config()) { + target = ::google::protobuf::internal::WireFormatLite:: + InternalWriteMessageToArray( + 2, HasBitSetters::training_job_resource_config(this), target); + } + + if (_internal_metadata_.have_unknown_fields()) { + target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields(), target); + } + // @@protoc_insertion_point(serialize_to_array_end:flyteidl.plugins.sagemaker.TrainingJob) + return target; +} + +size_t TrainingJob::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:flyteidl.plugins.sagemaker.TrainingJob) + size_t total_size = 0; + + if (_internal_metadata_.have_unknown_fields()) { + total_size += + ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( + _internal_metadata_.unknown_fields()); + } + ::google::protobuf::uint32 cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + if (this->has_algorithm_specification()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *algorithm_specification_); + } + + // .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + if (this->has_training_job_resource_config()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSize( + *training_job_resource_config_); + } + + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); + SetCachedSize(cached_size); + return total_size; +} + +void TrainingJob::MergeFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_merge_from_start:flyteidl.plugins.sagemaker.TrainingJob) + GOOGLE_DCHECK_NE(&from, this); + const TrainingJob* source = + ::google::protobuf::DynamicCastToGenerated( + &from); + if (source == nullptr) { + // @@protoc_insertion_point(generalized_merge_from_cast_fail:flyteidl.plugins.sagemaker.TrainingJob) + ::google::protobuf::internal::ReflectionOps::Merge(from, this); + } else { + // @@protoc_insertion_point(generalized_merge_from_cast_success:flyteidl.plugins.sagemaker.TrainingJob) + MergeFrom(*source); + } +} + +void TrainingJob::MergeFrom(const TrainingJob& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:flyteidl.plugins.sagemaker.TrainingJob) + GOOGLE_DCHECK_NE(&from, this); + _internal_metadata_.MergeFrom(from._internal_metadata_); + ::google::protobuf::uint32 cached_has_bits = 0; + (void) cached_has_bits; + + if (from.has_algorithm_specification()) { + mutable_algorithm_specification()->::flyteidl::plugins::sagemaker::AlgorithmSpecification::MergeFrom(from.algorithm_specification()); + } + if (from.has_training_job_resource_config()) { + mutable_training_job_resource_config()->::flyteidl::plugins::sagemaker::TrainingJobResourceConfig::MergeFrom(from.training_job_resource_config()); + } +} + +void TrainingJob::CopyFrom(const ::google::protobuf::Message& from) { +// @@protoc_insertion_point(generalized_copy_from_start:flyteidl.plugins.sagemaker.TrainingJob) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +void TrainingJob::CopyFrom(const TrainingJob& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:flyteidl.plugins.sagemaker.TrainingJob) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool TrainingJob::IsInitialized() const { + return true; +} + +void TrainingJob::Swap(TrainingJob* other) { + if (other == this) return; + InternalSwap(other); +} +void TrainingJob::InternalSwap(TrainingJob* other) { + using std::swap; + _internal_metadata_.Swap(&other->_internal_metadata_); + swap(algorithm_specification_, other->algorithm_specification_); + swap(training_job_resource_config_, other->training_job_resource_config_); +} + +::google::protobuf::Metadata TrainingJob::GetMetadata() const { + ::google::protobuf::internal::AssignDescriptors(&::assign_descriptors_table_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto); + return ::file_level_metadata_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto[kIndexInFileMessages]; +} + + +// @@protoc_insertion_point(namespace_scope) +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +namespace google { +namespace protobuf { +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::InputMode* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::InputMode >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::InputMode >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::AlgorithmName* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::AlgorithmName >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::AlgorithmName >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::InputContentType* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::InputContentType >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::InputContentType >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::MetricDefinition* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::MetricDefinition >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::MetricDefinition >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::AlgorithmSpecification* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::AlgorithmSpecification >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::AlgorithmSpecification >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::DistributedProtocol* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::DistributedProtocol >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::DistributedProtocol >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig >(arena); +} +template<> PROTOBUF_NOINLINE ::flyteidl::plugins::sagemaker::TrainingJob* Arena::CreateMaybeMessage< ::flyteidl::plugins::sagemaker::TrainingJob >(Arena* arena) { + return Arena::CreateInternal< ::flyteidl::plugins::sagemaker::TrainingJob >(arena); +} +} // namespace protobuf +} // namespace google + +// @@protoc_insertion_point(global_scope) +#include diff --git a/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.pb.h b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.pb.h new file mode 100644 index 0000000000..8fc367ba71 --- /dev/null +++ b/flyteidl/gen/pb-cpp/flyteidl/plugins/sagemaker/training_job.pb.h @@ -0,0 +1,1780 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/training_job.proto + +#ifndef PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto +#define PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto + +#include +#include + +#include +#if PROTOBUF_VERSION < 3007000 +#error This file was generated by a newer version of protoc which is +#error incompatible with your Protocol Buffer headers. Please update +#error your headers. +#endif +#if 3007000 < PROTOBUF_MIN_PROTOC_VERSION +#error This file was generated by an older version of protoc which is +#error incompatible with your Protocol Buffer headers. Please +#error regenerate this file with a newer version of protoc. +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // IWYU pragma: export +#include // IWYU pragma: export +#include +#include +#include +// @@protoc_insertion_point(includes) +#include +#define PROTOBUF_INTERNAL_EXPORT_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto + +// Internal implementation detail -- do not use these members. +struct TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto { + static const ::google::protobuf::internal::ParseTableField entries[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::AuxillaryParseTableField aux[] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::ParseTable schema[8] + PROTOBUF_SECTION_VARIABLE(protodesc_cold); + static const ::google::protobuf::internal::FieldMetadata field_metadata[]; + static const ::google::protobuf::internal::SerializationTable serialization_table[]; + static const ::google::protobuf::uint32 offsets[]; +}; +void AddDescriptors_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto(); +namespace flyteidl { +namespace plugins { +namespace sagemaker { +class AlgorithmName; +class AlgorithmNameDefaultTypeInternal; +extern AlgorithmNameDefaultTypeInternal _AlgorithmName_default_instance_; +class AlgorithmSpecification; +class AlgorithmSpecificationDefaultTypeInternal; +extern AlgorithmSpecificationDefaultTypeInternal _AlgorithmSpecification_default_instance_; +class DistributedProtocol; +class DistributedProtocolDefaultTypeInternal; +extern DistributedProtocolDefaultTypeInternal _DistributedProtocol_default_instance_; +class InputContentType; +class InputContentTypeDefaultTypeInternal; +extern InputContentTypeDefaultTypeInternal _InputContentType_default_instance_; +class InputMode; +class InputModeDefaultTypeInternal; +extern InputModeDefaultTypeInternal _InputMode_default_instance_; +class MetricDefinition; +class MetricDefinitionDefaultTypeInternal; +extern MetricDefinitionDefaultTypeInternal _MetricDefinition_default_instance_; +class TrainingJob; +class TrainingJobDefaultTypeInternal; +extern TrainingJobDefaultTypeInternal _TrainingJob_default_instance_; +class TrainingJobResourceConfig; +class TrainingJobResourceConfigDefaultTypeInternal; +extern TrainingJobResourceConfigDefaultTypeInternal _TrainingJobResourceConfig_default_instance_; +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl +namespace google { +namespace protobuf { +template<> ::flyteidl::plugins::sagemaker::AlgorithmName* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::AlgorithmName>(Arena*); +template<> ::flyteidl::plugins::sagemaker::AlgorithmSpecification* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::AlgorithmSpecification>(Arena*); +template<> ::flyteidl::plugins::sagemaker::DistributedProtocol* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::DistributedProtocol>(Arena*); +template<> ::flyteidl::plugins::sagemaker::InputContentType* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::InputContentType>(Arena*); +template<> ::flyteidl::plugins::sagemaker::InputMode* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::InputMode>(Arena*); +template<> ::flyteidl::plugins::sagemaker::MetricDefinition* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::MetricDefinition>(Arena*); +template<> ::flyteidl::plugins::sagemaker::TrainingJob* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::TrainingJob>(Arena*); +template<> ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* Arena::CreateMaybeMessage<::flyteidl::plugins::sagemaker::TrainingJobResourceConfig>(Arena*); +} // namespace protobuf +} // namespace google +namespace flyteidl { +namespace plugins { +namespace sagemaker { + +enum InputMode_Value { + InputMode_Value_FILE = 0, + InputMode_Value_PIPE = 1, + InputMode_Value_InputMode_Value_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + InputMode_Value_InputMode_Value_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool InputMode_Value_IsValid(int value); +const InputMode_Value InputMode_Value_Value_MIN = InputMode_Value_FILE; +const InputMode_Value InputMode_Value_Value_MAX = InputMode_Value_PIPE; +const int InputMode_Value_Value_ARRAYSIZE = InputMode_Value_Value_MAX + 1; + +const ::google::protobuf::EnumDescriptor* InputMode_Value_descriptor(); +inline const ::std::string& InputMode_Value_Name(InputMode_Value value) { + return ::google::protobuf::internal::NameOfEnum( + InputMode_Value_descriptor(), value); +} +inline bool InputMode_Value_Parse( + const ::std::string& name, InputMode_Value* value) { + return ::google::protobuf::internal::ParseNamedEnum( + InputMode_Value_descriptor(), name, value); +} +enum AlgorithmName_Value { + AlgorithmName_Value_CUSTOM = 0, + AlgorithmName_Value_XGBOOST = 1, + AlgorithmName_Value_AlgorithmName_Value_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + AlgorithmName_Value_AlgorithmName_Value_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool AlgorithmName_Value_IsValid(int value); +const AlgorithmName_Value AlgorithmName_Value_Value_MIN = AlgorithmName_Value_CUSTOM; +const AlgorithmName_Value AlgorithmName_Value_Value_MAX = AlgorithmName_Value_XGBOOST; +const int AlgorithmName_Value_Value_ARRAYSIZE = AlgorithmName_Value_Value_MAX + 1; + +const ::google::protobuf::EnumDescriptor* AlgorithmName_Value_descriptor(); +inline const ::std::string& AlgorithmName_Value_Name(AlgorithmName_Value value) { + return ::google::protobuf::internal::NameOfEnum( + AlgorithmName_Value_descriptor(), value); +} +inline bool AlgorithmName_Value_Parse( + const ::std::string& name, AlgorithmName_Value* value) { + return ::google::protobuf::internal::ParseNamedEnum( + AlgorithmName_Value_descriptor(), name, value); +} +enum InputContentType_Value { + InputContentType_Value_TEXT_CSV = 0, + InputContentType_Value_InputContentType_Value_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + InputContentType_Value_InputContentType_Value_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool InputContentType_Value_IsValid(int value); +const InputContentType_Value InputContentType_Value_Value_MIN = InputContentType_Value_TEXT_CSV; +const InputContentType_Value InputContentType_Value_Value_MAX = InputContentType_Value_TEXT_CSV; +const int InputContentType_Value_Value_ARRAYSIZE = InputContentType_Value_Value_MAX + 1; + +const ::google::protobuf::EnumDescriptor* InputContentType_Value_descriptor(); +inline const ::std::string& InputContentType_Value_Name(InputContentType_Value value) { + return ::google::protobuf::internal::NameOfEnum( + InputContentType_Value_descriptor(), value); +} +inline bool InputContentType_Value_Parse( + const ::std::string& name, InputContentType_Value* value) { + return ::google::protobuf::internal::ParseNamedEnum( + InputContentType_Value_descriptor(), name, value); +} +enum DistributedProtocol_Value { + DistributedProtocol_Value_UNSPECIFIED = 0, + DistributedProtocol_Value_MPI = 1, + DistributedProtocol_Value_DistributedProtocol_Value_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::min(), + DistributedProtocol_Value_DistributedProtocol_Value_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::google::protobuf::int32>::max() +}; +bool DistributedProtocol_Value_IsValid(int value); +const DistributedProtocol_Value DistributedProtocol_Value_Value_MIN = DistributedProtocol_Value_UNSPECIFIED; +const DistributedProtocol_Value DistributedProtocol_Value_Value_MAX = DistributedProtocol_Value_MPI; +const int DistributedProtocol_Value_Value_ARRAYSIZE = DistributedProtocol_Value_Value_MAX + 1; + +const ::google::protobuf::EnumDescriptor* DistributedProtocol_Value_descriptor(); +inline const ::std::string& DistributedProtocol_Value_Name(DistributedProtocol_Value value) { + return ::google::protobuf::internal::NameOfEnum( + DistributedProtocol_Value_descriptor(), value); +} +inline bool DistributedProtocol_Value_Parse( + const ::std::string& name, DistributedProtocol_Value* value) { + return ::google::protobuf::internal::ParseNamedEnum( + DistributedProtocol_Value_descriptor(), name, value); +} +// =================================================================== + +class InputMode final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.InputMode) */ { + public: + InputMode(); + virtual ~InputMode(); + + InputMode(const InputMode& from); + + inline InputMode& operator=(const InputMode& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + InputMode(InputMode&& from) noexcept + : InputMode() { + *this = ::std::move(from); + } + + inline InputMode& operator=(InputMode&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const InputMode& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const InputMode* internal_default_instance() { + return reinterpret_cast( + &_InputMode_default_instance_); + } + static constexpr int kIndexInFileMessages = + 0; + + void Swap(InputMode* other); + friend void swap(InputMode& a, InputMode& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline InputMode* New() const final { + return CreateMaybeMessage(nullptr); + } + + InputMode* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const InputMode& from); + void MergeFrom(const InputMode& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(InputMode* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef InputMode_Value Value; + static const Value FILE = + InputMode_Value_FILE; + static const Value PIPE = + InputMode_Value_PIPE; + static inline bool Value_IsValid(int value) { + return InputMode_Value_IsValid(value); + } + static const Value Value_MIN = + InputMode_Value_Value_MIN; + static const Value Value_MAX = + InputMode_Value_Value_MAX; + static const int Value_ARRAYSIZE = + InputMode_Value_Value_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Value_descriptor() { + return InputMode_Value_descriptor(); + } + static inline const ::std::string& Value_Name(Value value) { + return InputMode_Value_Name(value); + } + static inline bool Value_Parse(const ::std::string& name, + Value* value) { + return InputMode_Value_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.InputMode) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class AlgorithmName final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.AlgorithmName) */ { + public: + AlgorithmName(); + virtual ~AlgorithmName(); + + AlgorithmName(const AlgorithmName& from); + + inline AlgorithmName& operator=(const AlgorithmName& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + AlgorithmName(AlgorithmName&& from) noexcept + : AlgorithmName() { + *this = ::std::move(from); + } + + inline AlgorithmName& operator=(AlgorithmName&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const AlgorithmName& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const AlgorithmName* internal_default_instance() { + return reinterpret_cast( + &_AlgorithmName_default_instance_); + } + static constexpr int kIndexInFileMessages = + 1; + + void Swap(AlgorithmName* other); + friend void swap(AlgorithmName& a, AlgorithmName& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline AlgorithmName* New() const final { + return CreateMaybeMessage(nullptr); + } + + AlgorithmName* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const AlgorithmName& from); + void MergeFrom(const AlgorithmName& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AlgorithmName* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef AlgorithmName_Value Value; + static const Value CUSTOM = + AlgorithmName_Value_CUSTOM; + static const Value XGBOOST = + AlgorithmName_Value_XGBOOST; + static inline bool Value_IsValid(int value) { + return AlgorithmName_Value_IsValid(value); + } + static const Value Value_MIN = + AlgorithmName_Value_Value_MIN; + static const Value Value_MAX = + AlgorithmName_Value_Value_MAX; + static const int Value_ARRAYSIZE = + AlgorithmName_Value_Value_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Value_descriptor() { + return AlgorithmName_Value_descriptor(); + } + static inline const ::std::string& Value_Name(Value value) { + return AlgorithmName_Value_Name(value); + } + static inline bool Value_Parse(const ::std::string& name, + Value* value) { + return AlgorithmName_Value_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.AlgorithmName) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class InputContentType final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.InputContentType) */ { + public: + InputContentType(); + virtual ~InputContentType(); + + InputContentType(const InputContentType& from); + + inline InputContentType& operator=(const InputContentType& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + InputContentType(InputContentType&& from) noexcept + : InputContentType() { + *this = ::std::move(from); + } + + inline InputContentType& operator=(InputContentType&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const InputContentType& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const InputContentType* internal_default_instance() { + return reinterpret_cast( + &_InputContentType_default_instance_); + } + static constexpr int kIndexInFileMessages = + 2; + + void Swap(InputContentType* other); + friend void swap(InputContentType& a, InputContentType& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline InputContentType* New() const final { + return CreateMaybeMessage(nullptr); + } + + InputContentType* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const InputContentType& from); + void MergeFrom(const InputContentType& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(InputContentType* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef InputContentType_Value Value; + static const Value TEXT_CSV = + InputContentType_Value_TEXT_CSV; + static inline bool Value_IsValid(int value) { + return InputContentType_Value_IsValid(value); + } + static const Value Value_MIN = + InputContentType_Value_Value_MIN; + static const Value Value_MAX = + InputContentType_Value_Value_MAX; + static const int Value_ARRAYSIZE = + InputContentType_Value_Value_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Value_descriptor() { + return InputContentType_Value_descriptor(); + } + static inline const ::std::string& Value_Name(Value value) { + return InputContentType_Value_Name(value); + } + static inline bool Value_Parse(const ::std::string& name, + Value* value) { + return InputContentType_Value_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.InputContentType) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class MetricDefinition final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.MetricDefinition) */ { + public: + MetricDefinition(); + virtual ~MetricDefinition(); + + MetricDefinition(const MetricDefinition& from); + + inline MetricDefinition& operator=(const MetricDefinition& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + MetricDefinition(MetricDefinition&& from) noexcept + : MetricDefinition() { + *this = ::std::move(from); + } + + inline MetricDefinition& operator=(MetricDefinition&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const MetricDefinition& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const MetricDefinition* internal_default_instance() { + return reinterpret_cast( + &_MetricDefinition_default_instance_); + } + static constexpr int kIndexInFileMessages = + 3; + + void Swap(MetricDefinition* other); + friend void swap(MetricDefinition& a, MetricDefinition& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline MetricDefinition* New() const final { + return CreateMaybeMessage(nullptr); + } + + MetricDefinition* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const MetricDefinition& from); + void MergeFrom(const MetricDefinition& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(MetricDefinition* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // string name = 1; + void clear_name(); + static const int kNameFieldNumber = 1; + const ::std::string& name() const; + void set_name(const ::std::string& value); + #if LANG_CXX11 + void set_name(::std::string&& value); + #endif + void set_name(const char* value); + void set_name(const char* value, size_t size); + ::std::string* mutable_name(); + ::std::string* release_name(); + void set_allocated_name(::std::string* name); + + // string regex = 2; + void clear_regex(); + static const int kRegexFieldNumber = 2; + const ::std::string& regex() const; + void set_regex(const ::std::string& value); + #if LANG_CXX11 + void set_regex(::std::string&& value); + #endif + void set_regex(const char* value); + void set_regex(const char* value, size_t size); + ::std::string* mutable_regex(); + ::std::string* release_regex(); + void set_allocated_regex(::std::string* regex); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.MetricDefinition) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::google::protobuf::internal::ArenaStringPtr name_; + ::google::protobuf::internal::ArenaStringPtr regex_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class AlgorithmSpecification final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.AlgorithmSpecification) */ { + public: + AlgorithmSpecification(); + virtual ~AlgorithmSpecification(); + + AlgorithmSpecification(const AlgorithmSpecification& from); + + inline AlgorithmSpecification& operator=(const AlgorithmSpecification& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + AlgorithmSpecification(AlgorithmSpecification&& from) noexcept + : AlgorithmSpecification() { + *this = ::std::move(from); + } + + inline AlgorithmSpecification& operator=(AlgorithmSpecification&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const AlgorithmSpecification& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const AlgorithmSpecification* internal_default_instance() { + return reinterpret_cast( + &_AlgorithmSpecification_default_instance_); + } + static constexpr int kIndexInFileMessages = + 4; + + void Swap(AlgorithmSpecification* other); + friend void swap(AlgorithmSpecification& a, AlgorithmSpecification& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline AlgorithmSpecification* New() const final { + return CreateMaybeMessage(nullptr); + } + + AlgorithmSpecification* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const AlgorithmSpecification& from); + void MergeFrom(const AlgorithmSpecification& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(AlgorithmSpecification* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + int metric_definitions_size() const; + void clear_metric_definitions(); + static const int kMetricDefinitionsFieldNumber = 4; + ::flyteidl::plugins::sagemaker::MetricDefinition* mutable_metric_definitions(int index); + ::google::protobuf::RepeatedPtrField< ::flyteidl::plugins::sagemaker::MetricDefinition >* + mutable_metric_definitions(); + const ::flyteidl::plugins::sagemaker::MetricDefinition& metric_definitions(int index) const; + ::flyteidl::plugins::sagemaker::MetricDefinition* add_metric_definitions(); + const ::google::protobuf::RepeatedPtrField< ::flyteidl::plugins::sagemaker::MetricDefinition >& + metric_definitions() const; + + // string algorithm_version = 3; + void clear_algorithm_version(); + static const int kAlgorithmVersionFieldNumber = 3; + const ::std::string& algorithm_version() const; + void set_algorithm_version(const ::std::string& value); + #if LANG_CXX11 + void set_algorithm_version(::std::string&& value); + #endif + void set_algorithm_version(const char* value); + void set_algorithm_version(const char* value, size_t size); + ::std::string* mutable_algorithm_version(); + ::std::string* release_algorithm_version(); + void set_allocated_algorithm_version(::std::string* algorithm_version); + + // .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + void clear_input_mode(); + static const int kInputModeFieldNumber = 1; + ::flyteidl::plugins::sagemaker::InputMode_Value input_mode() const; + void set_input_mode(::flyteidl::plugins::sagemaker::InputMode_Value value); + + // .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + void clear_algorithm_name(); + static const int kAlgorithmNameFieldNumber = 2; + ::flyteidl::plugins::sagemaker::AlgorithmName_Value algorithm_name() const; + void set_algorithm_name(::flyteidl::plugins::sagemaker::AlgorithmName_Value value); + + // .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + void clear_input_content_type(); + static const int kInputContentTypeFieldNumber = 5; + ::flyteidl::plugins::sagemaker::InputContentType_Value input_content_type() const; + void set_input_content_type(::flyteidl::plugins::sagemaker::InputContentType_Value value); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.AlgorithmSpecification) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::google::protobuf::RepeatedPtrField< ::flyteidl::plugins::sagemaker::MetricDefinition > metric_definitions_; + ::google::protobuf::internal::ArenaStringPtr algorithm_version_; + int input_mode_; + int algorithm_name_; + int input_content_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class DistributedProtocol final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.DistributedProtocol) */ { + public: + DistributedProtocol(); + virtual ~DistributedProtocol(); + + DistributedProtocol(const DistributedProtocol& from); + + inline DistributedProtocol& operator=(const DistributedProtocol& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + DistributedProtocol(DistributedProtocol&& from) noexcept + : DistributedProtocol() { + *this = ::std::move(from); + } + + inline DistributedProtocol& operator=(DistributedProtocol&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const DistributedProtocol& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const DistributedProtocol* internal_default_instance() { + return reinterpret_cast( + &_DistributedProtocol_default_instance_); + } + static constexpr int kIndexInFileMessages = + 5; + + void Swap(DistributedProtocol* other); + friend void swap(DistributedProtocol& a, DistributedProtocol& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline DistributedProtocol* New() const final { + return CreateMaybeMessage(nullptr); + } + + DistributedProtocol* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const DistributedProtocol& from); + void MergeFrom(const DistributedProtocol& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(DistributedProtocol* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef DistributedProtocol_Value Value; + static const Value UNSPECIFIED = + DistributedProtocol_Value_UNSPECIFIED; + static const Value MPI = + DistributedProtocol_Value_MPI; + static inline bool Value_IsValid(int value) { + return DistributedProtocol_Value_IsValid(value); + } + static const Value Value_MIN = + DistributedProtocol_Value_Value_MIN; + static const Value Value_MAX = + DistributedProtocol_Value_Value_MAX; + static const int Value_ARRAYSIZE = + DistributedProtocol_Value_Value_ARRAYSIZE; + static inline const ::google::protobuf::EnumDescriptor* + Value_descriptor() { + return DistributedProtocol_Value_descriptor(); + } + static inline const ::std::string& Value_Name(Value value) { + return DistributedProtocol_Value_Name(value); + } + static inline bool Value_Parse(const ::std::string& name, + Value* value) { + return DistributedProtocol_Value_Parse(name, value); + } + + // accessors ------------------------------------------------------- + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.DistributedProtocol) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class TrainingJobResourceConfig final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) */ { + public: + TrainingJobResourceConfig(); + virtual ~TrainingJobResourceConfig(); + + TrainingJobResourceConfig(const TrainingJobResourceConfig& from); + + inline TrainingJobResourceConfig& operator=(const TrainingJobResourceConfig& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + TrainingJobResourceConfig(TrainingJobResourceConfig&& from) noexcept + : TrainingJobResourceConfig() { + *this = ::std::move(from); + } + + inline TrainingJobResourceConfig& operator=(TrainingJobResourceConfig&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const TrainingJobResourceConfig& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const TrainingJobResourceConfig* internal_default_instance() { + return reinterpret_cast( + &_TrainingJobResourceConfig_default_instance_); + } + static constexpr int kIndexInFileMessages = + 6; + + void Swap(TrainingJobResourceConfig* other); + friend void swap(TrainingJobResourceConfig& a, TrainingJobResourceConfig& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline TrainingJobResourceConfig* New() const final { + return CreateMaybeMessage(nullptr); + } + + TrainingJobResourceConfig* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const TrainingJobResourceConfig& from); + void MergeFrom(const TrainingJobResourceConfig& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(TrainingJobResourceConfig* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // string instance_type = 2; + void clear_instance_type(); + static const int kInstanceTypeFieldNumber = 2; + const ::std::string& instance_type() const; + void set_instance_type(const ::std::string& value); + #if LANG_CXX11 + void set_instance_type(::std::string&& value); + #endif + void set_instance_type(const char* value); + void set_instance_type(const char* value, size_t size); + ::std::string* mutable_instance_type(); + ::std::string* release_instance_type(); + void set_allocated_instance_type(::std::string* instance_type); + + // int64 instance_count = 1; + void clear_instance_count(); + static const int kInstanceCountFieldNumber = 1; + ::google::protobuf::int64 instance_count() const; + void set_instance_count(::google::protobuf::int64 value); + + // int64 volume_size_in_gb = 3; + void clear_volume_size_in_gb(); + static const int kVolumeSizeInGbFieldNumber = 3; + ::google::protobuf::int64 volume_size_in_gb() const; + void set_volume_size_in_gb(::google::protobuf::int64 value); + + // .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + void clear_distributed_protocol(); + static const int kDistributedProtocolFieldNumber = 4; + ::flyteidl::plugins::sagemaker::DistributedProtocol_Value distributed_protocol() const; + void set_distributed_protocol(::flyteidl::plugins::sagemaker::DistributedProtocol_Value value); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::google::protobuf::internal::ArenaStringPtr instance_type_; + ::google::protobuf::int64 instance_count_; + ::google::protobuf::int64 volume_size_in_gb_; + int distributed_protocol_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +}; +// ------------------------------------------------------------------- + +class TrainingJob final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:flyteidl.plugins.sagemaker.TrainingJob) */ { + public: + TrainingJob(); + virtual ~TrainingJob(); + + TrainingJob(const TrainingJob& from); + + inline TrainingJob& operator=(const TrainingJob& from) { + CopyFrom(from); + return *this; + } + #if LANG_CXX11 + TrainingJob(TrainingJob&& from) noexcept + : TrainingJob() { + *this = ::std::move(from); + } + + inline TrainingJob& operator=(TrainingJob&& from) noexcept { + if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) { + if (this != &from) InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + #endif + static const ::google::protobuf::Descriptor* descriptor() { + return default_instance().GetDescriptor(); + } + static const TrainingJob& default_instance(); + + static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY + static inline const TrainingJob* internal_default_instance() { + return reinterpret_cast( + &_TrainingJob_default_instance_); + } + static constexpr int kIndexInFileMessages = + 7; + + void Swap(TrainingJob* other); + friend void swap(TrainingJob& a, TrainingJob& b) { + a.Swap(&b); + } + + // implements Message ---------------------------------------------- + + inline TrainingJob* New() const final { + return CreateMaybeMessage(nullptr); + } + + TrainingJob* New(::google::protobuf::Arena* arena) const final { + return CreateMaybeMessage(arena); + } + void CopyFrom(const ::google::protobuf::Message& from) final; + void MergeFrom(const ::google::protobuf::Message& from) final; + void CopyFrom(const TrainingJob& from); + void MergeFrom(const TrainingJob& from); + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + static const char* _InternalParse(const char* begin, const char* end, void* object, ::google::protobuf::internal::ParseContext* ctx); + ::google::protobuf::internal::ParseFunc _ParseFunc() const final { return _InternalParse; } + #else + bool MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) final; + #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER + void SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const final; + ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray( + ::google::protobuf::uint8* target) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(TrainingJob* other); + private: + inline ::google::protobuf::Arena* GetArenaNoVirtual() const { + return nullptr; + } + inline void* MaybeArenaPtr() const { + return nullptr; + } + public: + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + // .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + bool has_algorithm_specification() const; + void clear_algorithm_specification(); + static const int kAlgorithmSpecificationFieldNumber = 1; + const ::flyteidl::plugins::sagemaker::AlgorithmSpecification& algorithm_specification() const; + ::flyteidl::plugins::sagemaker::AlgorithmSpecification* release_algorithm_specification(); + ::flyteidl::plugins::sagemaker::AlgorithmSpecification* mutable_algorithm_specification(); + void set_allocated_algorithm_specification(::flyteidl::plugins::sagemaker::AlgorithmSpecification* algorithm_specification); + + // .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + bool has_training_job_resource_config() const; + void clear_training_job_resource_config(); + static const int kTrainingJobResourceConfigFieldNumber = 2; + const ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig& training_job_resource_config() const; + ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* release_training_job_resource_config(); + ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* mutable_training_job_resource_config(); + void set_allocated_training_job_resource_config(::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* training_job_resource_config); + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.TrainingJob) + private: + class HasBitSetters; + + ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_; + ::flyteidl::plugins::sagemaker::AlgorithmSpecification* algorithm_specification_; + ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* training_job_resource_config_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + friend struct ::TableStruct_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto; +}; +// =================================================================== + + +// =================================================================== + +#ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wstrict-aliasing" +#endif // __GNUC__ +// InputMode + +// ------------------------------------------------------------------- + +// AlgorithmName + +// ------------------------------------------------------------------- + +// InputContentType + +// ------------------------------------------------------------------- + +// MetricDefinition + +// string name = 1; +inline void MetricDefinition::clear_name() { + name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline const ::std::string& MetricDefinition::name() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.MetricDefinition.name) + return name_.GetNoArena(); +} +inline void MetricDefinition::set_name(const ::std::string& value) { + + name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.MetricDefinition.name) +} +#if LANG_CXX11 +inline void MetricDefinition::set_name(::std::string&& value) { + + name_.SetNoArena( + &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); + // @@protoc_insertion_point(field_set_rvalue:flyteidl.plugins.sagemaker.MetricDefinition.name) +} +#endif +inline void MetricDefinition::set_name(const char* value) { + GOOGLE_DCHECK(value != nullptr); + + name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); + // @@protoc_insertion_point(field_set_char:flyteidl.plugins.sagemaker.MetricDefinition.name) +} +inline void MetricDefinition::set_name(const char* value, size_t size) { + + name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), + ::std::string(reinterpret_cast(value), size)); + // @@protoc_insertion_point(field_set_pointer:flyteidl.plugins.sagemaker.MetricDefinition.name) +} +inline ::std::string* MetricDefinition::mutable_name() { + + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.MetricDefinition.name) + return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline ::std::string* MetricDefinition::release_name() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.MetricDefinition.name) + + return name_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline void MetricDefinition::set_allocated_name(::std::string* name) { + if (name != nullptr) { + + } else { + + } + name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name); + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.MetricDefinition.name) +} + +// string regex = 2; +inline void MetricDefinition::clear_regex() { + regex_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline const ::std::string& MetricDefinition::regex() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.MetricDefinition.regex) + return regex_.GetNoArena(); +} +inline void MetricDefinition::set_regex(const ::std::string& value) { + + regex_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.MetricDefinition.regex) +} +#if LANG_CXX11 +inline void MetricDefinition::set_regex(::std::string&& value) { + + regex_.SetNoArena( + &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); + // @@protoc_insertion_point(field_set_rvalue:flyteidl.plugins.sagemaker.MetricDefinition.regex) +} +#endif +inline void MetricDefinition::set_regex(const char* value) { + GOOGLE_DCHECK(value != nullptr); + + regex_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); + // @@protoc_insertion_point(field_set_char:flyteidl.plugins.sagemaker.MetricDefinition.regex) +} +inline void MetricDefinition::set_regex(const char* value, size_t size) { + + regex_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), + ::std::string(reinterpret_cast(value), size)); + // @@protoc_insertion_point(field_set_pointer:flyteidl.plugins.sagemaker.MetricDefinition.regex) +} +inline ::std::string* MetricDefinition::mutable_regex() { + + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.MetricDefinition.regex) + return regex_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline ::std::string* MetricDefinition::release_regex() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.MetricDefinition.regex) + + return regex_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline void MetricDefinition::set_allocated_regex(::std::string* regex) { + if (regex != nullptr) { + + } else { + + } + regex_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), regex); + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.MetricDefinition.regex) +} + +// ------------------------------------------------------------------- + +// AlgorithmSpecification + +// .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; +inline void AlgorithmSpecification::clear_input_mode() { + input_mode_ = 0; +} +inline ::flyteidl::plugins::sagemaker::InputMode_Value AlgorithmSpecification::input_mode() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.AlgorithmSpecification.input_mode) + return static_cast< ::flyteidl::plugins::sagemaker::InputMode_Value >(input_mode_); +} +inline void AlgorithmSpecification::set_input_mode(::flyteidl::plugins::sagemaker::InputMode_Value value) { + + input_mode_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.AlgorithmSpecification.input_mode) +} + +// .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; +inline void AlgorithmSpecification::clear_algorithm_name() { + algorithm_name_ = 0; +} +inline ::flyteidl::plugins::sagemaker::AlgorithmName_Value AlgorithmSpecification::algorithm_name() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_name) + return static_cast< ::flyteidl::plugins::sagemaker::AlgorithmName_Value >(algorithm_name_); +} +inline void AlgorithmSpecification::set_algorithm_name(::flyteidl::plugins::sagemaker::AlgorithmName_Value value) { + + algorithm_name_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_name) +} + +// string algorithm_version = 3; +inline void AlgorithmSpecification::clear_algorithm_version() { + algorithm_version_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline const ::std::string& AlgorithmSpecification::algorithm_version() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version) + return algorithm_version_.GetNoArena(); +} +inline void AlgorithmSpecification::set_algorithm_version(const ::std::string& value) { + + algorithm_version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version) +} +#if LANG_CXX11 +inline void AlgorithmSpecification::set_algorithm_version(::std::string&& value) { + + algorithm_version_.SetNoArena( + &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); + // @@protoc_insertion_point(field_set_rvalue:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version) +} +#endif +inline void AlgorithmSpecification::set_algorithm_version(const char* value) { + GOOGLE_DCHECK(value != nullptr); + + algorithm_version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); + // @@protoc_insertion_point(field_set_char:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version) +} +inline void AlgorithmSpecification::set_algorithm_version(const char* value, size_t size) { + + algorithm_version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), + ::std::string(reinterpret_cast(value), size)); + // @@protoc_insertion_point(field_set_pointer:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version) +} +inline ::std::string* AlgorithmSpecification::mutable_algorithm_version() { + + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version) + return algorithm_version_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline ::std::string* AlgorithmSpecification::release_algorithm_version() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version) + + return algorithm_version_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline void AlgorithmSpecification::set_allocated_algorithm_version(::std::string* algorithm_version) { + if (algorithm_version != nullptr) { + + } else { + + } + algorithm_version_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), algorithm_version); + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.AlgorithmSpecification.algorithm_version) +} + +// repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; +inline int AlgorithmSpecification::metric_definitions_size() const { + return metric_definitions_.size(); +} +inline void AlgorithmSpecification::clear_metric_definitions() { + metric_definitions_.Clear(); +} +inline ::flyteidl::plugins::sagemaker::MetricDefinition* AlgorithmSpecification::mutable_metric_definitions(int index) { + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.AlgorithmSpecification.metric_definitions) + return metric_definitions_.Mutable(index); +} +inline ::google::protobuf::RepeatedPtrField< ::flyteidl::plugins::sagemaker::MetricDefinition >* +AlgorithmSpecification::mutable_metric_definitions() { + // @@protoc_insertion_point(field_mutable_list:flyteidl.plugins.sagemaker.AlgorithmSpecification.metric_definitions) + return &metric_definitions_; +} +inline const ::flyteidl::plugins::sagemaker::MetricDefinition& AlgorithmSpecification::metric_definitions(int index) const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.AlgorithmSpecification.metric_definitions) + return metric_definitions_.Get(index); +} +inline ::flyteidl::plugins::sagemaker::MetricDefinition* AlgorithmSpecification::add_metric_definitions() { + // @@protoc_insertion_point(field_add:flyteidl.plugins.sagemaker.AlgorithmSpecification.metric_definitions) + return metric_definitions_.Add(); +} +inline const ::google::protobuf::RepeatedPtrField< ::flyteidl::plugins::sagemaker::MetricDefinition >& +AlgorithmSpecification::metric_definitions() const { + // @@protoc_insertion_point(field_list:flyteidl.plugins.sagemaker.AlgorithmSpecification.metric_definitions) + return metric_definitions_; +} + +// .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; +inline void AlgorithmSpecification::clear_input_content_type() { + input_content_type_ = 0; +} +inline ::flyteidl::plugins::sagemaker::InputContentType_Value AlgorithmSpecification::input_content_type() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.AlgorithmSpecification.input_content_type) + return static_cast< ::flyteidl::plugins::sagemaker::InputContentType_Value >(input_content_type_); +} +inline void AlgorithmSpecification::set_input_content_type(::flyteidl::plugins::sagemaker::InputContentType_Value value) { + + input_content_type_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.AlgorithmSpecification.input_content_type) +} + +// ------------------------------------------------------------------- + +// DistributedProtocol + +// ------------------------------------------------------------------- + +// TrainingJobResourceConfig + +// int64 instance_count = 1; +inline void TrainingJobResourceConfig::clear_instance_count() { + instance_count_ = PROTOBUF_LONGLONG(0); +} +inline ::google::protobuf::int64 TrainingJobResourceConfig::instance_count() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_count) + return instance_count_; +} +inline void TrainingJobResourceConfig::set_instance_count(::google::protobuf::int64 value) { + + instance_count_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_count) +} + +// string instance_type = 2; +inline void TrainingJobResourceConfig::clear_instance_type() { + instance_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline const ::std::string& TrainingJobResourceConfig::instance_type() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type) + return instance_type_.GetNoArena(); +} +inline void TrainingJobResourceConfig::set_instance_type(const ::std::string& value) { + + instance_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value); + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type) +} +#if LANG_CXX11 +inline void TrainingJobResourceConfig::set_instance_type(::std::string&& value) { + + instance_type_.SetNoArena( + &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value)); + // @@protoc_insertion_point(field_set_rvalue:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type) +} +#endif +inline void TrainingJobResourceConfig::set_instance_type(const char* value) { + GOOGLE_DCHECK(value != nullptr); + + instance_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value)); + // @@protoc_insertion_point(field_set_char:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type) +} +inline void TrainingJobResourceConfig::set_instance_type(const char* value, size_t size) { + + instance_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), + ::std::string(reinterpret_cast(value), size)); + // @@protoc_insertion_point(field_set_pointer:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type) +} +inline ::std::string* TrainingJobResourceConfig::mutable_instance_type() { + + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type) + return instance_type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline ::std::string* TrainingJobResourceConfig::release_instance_type() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type) + + return instance_type_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited()); +} +inline void TrainingJobResourceConfig::set_allocated_instance_type(::std::string* instance_type) { + if (instance_type != nullptr) { + + } else { + + } + instance_type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), instance_type); + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.instance_type) +} + +// int64 volume_size_in_gb = 3; +inline void TrainingJobResourceConfig::clear_volume_size_in_gb() { + volume_size_in_gb_ = PROTOBUF_LONGLONG(0); +} +inline ::google::protobuf::int64 TrainingJobResourceConfig::volume_size_in_gb() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.volume_size_in_gb) + return volume_size_in_gb_; +} +inline void TrainingJobResourceConfig::set_volume_size_in_gb(::google::protobuf::int64 value) { + + volume_size_in_gb_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.volume_size_in_gb) +} + +// .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; +inline void TrainingJobResourceConfig::clear_distributed_protocol() { + distributed_protocol_ = 0; +} +inline ::flyteidl::plugins::sagemaker::DistributedProtocol_Value TrainingJobResourceConfig::distributed_protocol() const { + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.distributed_protocol) + return static_cast< ::flyteidl::plugins::sagemaker::DistributedProtocol_Value >(distributed_protocol_); +} +inline void TrainingJobResourceConfig::set_distributed_protocol(::flyteidl::plugins::sagemaker::DistributedProtocol_Value value) { + + distributed_protocol_ = value; + // @@protoc_insertion_point(field_set:flyteidl.plugins.sagemaker.TrainingJobResourceConfig.distributed_protocol) +} + +// ------------------------------------------------------------------- + +// TrainingJob + +// .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; +inline bool TrainingJob::has_algorithm_specification() const { + return this != internal_default_instance() && algorithm_specification_ != nullptr; +} +inline void TrainingJob::clear_algorithm_specification() { + if (GetArenaNoVirtual() == nullptr && algorithm_specification_ != nullptr) { + delete algorithm_specification_; + } + algorithm_specification_ = nullptr; +} +inline const ::flyteidl::plugins::sagemaker::AlgorithmSpecification& TrainingJob::algorithm_specification() const { + const ::flyteidl::plugins::sagemaker::AlgorithmSpecification* p = algorithm_specification_; + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.TrainingJob.algorithm_specification) + return p != nullptr ? *p : *reinterpret_cast( + &::flyteidl::plugins::sagemaker::_AlgorithmSpecification_default_instance_); +} +inline ::flyteidl::plugins::sagemaker::AlgorithmSpecification* TrainingJob::release_algorithm_specification() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.TrainingJob.algorithm_specification) + + ::flyteidl::plugins::sagemaker::AlgorithmSpecification* temp = algorithm_specification_; + algorithm_specification_ = nullptr; + return temp; +} +inline ::flyteidl::plugins::sagemaker::AlgorithmSpecification* TrainingJob::mutable_algorithm_specification() { + + if (algorithm_specification_ == nullptr) { + auto* p = CreateMaybeMessage<::flyteidl::plugins::sagemaker::AlgorithmSpecification>(GetArenaNoVirtual()); + algorithm_specification_ = p; + } + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.TrainingJob.algorithm_specification) + return algorithm_specification_; +} +inline void TrainingJob::set_allocated_algorithm_specification(::flyteidl::plugins::sagemaker::AlgorithmSpecification* algorithm_specification) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete algorithm_specification_; + } + if (algorithm_specification) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + algorithm_specification = ::google::protobuf::internal::GetOwnedMessage( + message_arena, algorithm_specification, submessage_arena); + } + + } else { + + } + algorithm_specification_ = algorithm_specification; + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.TrainingJob.algorithm_specification) +} + +// .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; +inline bool TrainingJob::has_training_job_resource_config() const { + return this != internal_default_instance() && training_job_resource_config_ != nullptr; +} +inline void TrainingJob::clear_training_job_resource_config() { + if (GetArenaNoVirtual() == nullptr && training_job_resource_config_ != nullptr) { + delete training_job_resource_config_; + } + training_job_resource_config_ = nullptr; +} +inline const ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig& TrainingJob::training_job_resource_config() const { + const ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* p = training_job_resource_config_; + // @@protoc_insertion_point(field_get:flyteidl.plugins.sagemaker.TrainingJob.training_job_resource_config) + return p != nullptr ? *p : *reinterpret_cast( + &::flyteidl::plugins::sagemaker::_TrainingJobResourceConfig_default_instance_); +} +inline ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* TrainingJob::release_training_job_resource_config() { + // @@protoc_insertion_point(field_release:flyteidl.plugins.sagemaker.TrainingJob.training_job_resource_config) + + ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* temp = training_job_resource_config_; + training_job_resource_config_ = nullptr; + return temp; +} +inline ::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* TrainingJob::mutable_training_job_resource_config() { + + if (training_job_resource_config_ == nullptr) { + auto* p = CreateMaybeMessage<::flyteidl::plugins::sagemaker::TrainingJobResourceConfig>(GetArenaNoVirtual()); + training_job_resource_config_ = p; + } + // @@protoc_insertion_point(field_mutable:flyteidl.plugins.sagemaker.TrainingJob.training_job_resource_config) + return training_job_resource_config_; +} +inline void TrainingJob::set_allocated_training_job_resource_config(::flyteidl::plugins::sagemaker::TrainingJobResourceConfig* training_job_resource_config) { + ::google::protobuf::Arena* message_arena = GetArenaNoVirtual(); + if (message_arena == nullptr) { + delete training_job_resource_config_; + } + if (training_job_resource_config) { + ::google::protobuf::Arena* submessage_arena = nullptr; + if (message_arena != submessage_arena) { + training_job_resource_config = ::google::protobuf::internal::GetOwnedMessage( + message_arena, training_job_resource_config, submessage_arena); + } + + } else { + + } + training_job_resource_config_ = training_job_resource_config; + // @@protoc_insertion_point(field_set_allocated:flyteidl.plugins.sagemaker.TrainingJob.training_job_resource_config) +} + +#ifdef __GNUC__ + #pragma GCC diagnostic pop +#endif // __GNUC__ +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + + +// @@protoc_insertion_point(namespace_scope) + +} // namespace sagemaker +} // namespace plugins +} // namespace flyteidl + +namespace google { +namespace protobuf { + +template <> struct is_proto_enum< ::flyteidl::plugins::sagemaker::InputMode_Value> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::plugins::sagemaker::InputMode_Value>() { + return ::flyteidl::plugins::sagemaker::InputMode_Value_descriptor(); +} +template <> struct is_proto_enum< ::flyteidl::plugins::sagemaker::AlgorithmName_Value> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::plugins::sagemaker::AlgorithmName_Value>() { + return ::flyteidl::plugins::sagemaker::AlgorithmName_Value_descriptor(); +} +template <> struct is_proto_enum< ::flyteidl::plugins::sagemaker::InputContentType_Value> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::plugins::sagemaker::InputContentType_Value>() { + return ::flyteidl::plugins::sagemaker::InputContentType_Value_descriptor(); +} +template <> struct is_proto_enum< ::flyteidl::plugins::sagemaker::DistributedProtocol_Value> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::flyteidl::plugins::sagemaker::DistributedProtocol_Value>() { + return ::flyteidl::plugins::sagemaker::DistributedProtocol_Value_descriptor(); +} + +} // namespace protobuf +} // namespace google + +// @@protoc_insertion_point(global_scope) + +#include +#endif // PROTOBUF_INCLUDED_flyteidl_2fplugins_2fsagemaker_2ftraining_5fjob_2eproto diff --git a/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.go b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.go new file mode 100644 index 0000000000..a76984c375 --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.go @@ -0,0 +1,437 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto + +package plugins + +import ( + fmt "fmt" + proto "github.com/golang/protobuf/proto" + math "math" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// 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.ProtoPackageIsVersion3 // please upgrade the proto package + +type HyperparameterTuningObjectiveType_Value int32 + +const ( + HyperparameterTuningObjectiveType_MINIMIZE HyperparameterTuningObjectiveType_Value = 0 + HyperparameterTuningObjectiveType_MAXIMIZE HyperparameterTuningObjectiveType_Value = 1 +) + +var HyperparameterTuningObjectiveType_Value_name = map[int32]string{ + 0: "MINIMIZE", + 1: "MAXIMIZE", +} + +var HyperparameterTuningObjectiveType_Value_value = map[string]int32{ + "MINIMIZE": 0, + "MAXIMIZE": 1, +} + +func (x HyperparameterTuningObjectiveType_Value) String() string { + return proto.EnumName(HyperparameterTuningObjectiveType_Value_name, int32(x)) +} + +func (HyperparameterTuningObjectiveType_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{1, 0} +} + +type HyperparameterTuningStrategy_Value int32 + +const ( + HyperparameterTuningStrategy_BAYESIAN HyperparameterTuningStrategy_Value = 0 + HyperparameterTuningStrategy_RANDOM HyperparameterTuningStrategy_Value = 1 +) + +var HyperparameterTuningStrategy_Value_name = map[int32]string{ + 0: "BAYESIAN", + 1: "RANDOM", +} + +var HyperparameterTuningStrategy_Value_value = map[string]int32{ + "BAYESIAN": 0, + "RANDOM": 1, +} + +func (x HyperparameterTuningStrategy_Value) String() string { + return proto.EnumName(HyperparameterTuningStrategy_Value_name, int32(x)) +} + +func (HyperparameterTuningStrategy_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{3, 0} +} + +type TrainingJobEarlyStoppingType_Value int32 + +const ( + TrainingJobEarlyStoppingType_OFF TrainingJobEarlyStoppingType_Value = 0 + TrainingJobEarlyStoppingType_AUTO TrainingJobEarlyStoppingType_Value = 1 +) + +var TrainingJobEarlyStoppingType_Value_name = map[int32]string{ + 0: "OFF", + 1: "AUTO", +} + +var TrainingJobEarlyStoppingType_Value_value = map[string]int32{ + "OFF": 0, + "AUTO": 1, +} + +func (x TrainingJobEarlyStoppingType_Value) String() string { + return proto.EnumName(TrainingJobEarlyStoppingType_Value_name, int32(x)) +} + +func (TrainingJobEarlyStoppingType_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{4, 0} +} + +// A pass-through for SageMaker's hyperparameter tuning job +type HyperparameterTuningJob struct { + // The underlying training job that the hyperparameter tuning job will launch during the process + TrainingJob *TrainingJob `protobuf:"bytes,1,opt,name=training_job,json=trainingJob,proto3" json:"training_job,omitempty"` + // The maximum number of training jobs that an hpo job can launch. For resource limit purpose. + // https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html + MaxNumberOfTrainingJobs int64 `protobuf:"varint,2,opt,name=max_number_of_training_jobs,json=maxNumberOfTrainingJobs,proto3" json:"max_number_of_training_jobs,omitempty"` + // The maximum number of concurrent training job that an hpo job can launch + // https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html + MaxParallelTrainingJobs int64 `protobuf:"varint,3,opt,name=max_parallel_training_jobs,json=maxParallelTrainingJobs,proto3" json:"max_parallel_training_jobs,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *HyperparameterTuningJob) Reset() { *m = HyperparameterTuningJob{} } +func (m *HyperparameterTuningJob) String() string { return proto.CompactTextString(m) } +func (*HyperparameterTuningJob) ProtoMessage() {} +func (*HyperparameterTuningJob) Descriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{0} +} + +func (m *HyperparameterTuningJob) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_HyperparameterTuningJob.Unmarshal(m, b) +} +func (m *HyperparameterTuningJob) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_HyperparameterTuningJob.Marshal(b, m, deterministic) +} +func (m *HyperparameterTuningJob) XXX_Merge(src proto.Message) { + xxx_messageInfo_HyperparameterTuningJob.Merge(m, src) +} +func (m *HyperparameterTuningJob) XXX_Size() int { + return xxx_messageInfo_HyperparameterTuningJob.Size(m) +} +func (m *HyperparameterTuningJob) XXX_DiscardUnknown() { + xxx_messageInfo_HyperparameterTuningJob.DiscardUnknown(m) +} + +var xxx_messageInfo_HyperparameterTuningJob proto.InternalMessageInfo + +func (m *HyperparameterTuningJob) GetTrainingJob() *TrainingJob { + if m != nil { + return m.TrainingJob + } + return nil +} + +func (m *HyperparameterTuningJob) GetMaxNumberOfTrainingJobs() int64 { + if m != nil { + return m.MaxNumberOfTrainingJobs + } + return 0 +} + +func (m *HyperparameterTuningJob) GetMaxParallelTrainingJobs() int64 { + if m != nil { + return m.MaxParallelTrainingJobs + } + return 0 +} + +// HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job +// with respect to the specified metric. +type HyperparameterTuningObjectiveType struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *HyperparameterTuningObjectiveType) Reset() { *m = HyperparameterTuningObjectiveType{} } +func (m *HyperparameterTuningObjectiveType) String() string { return proto.CompactTextString(m) } +func (*HyperparameterTuningObjectiveType) ProtoMessage() {} +func (*HyperparameterTuningObjectiveType) Descriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{1} +} + +func (m *HyperparameterTuningObjectiveType) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_HyperparameterTuningObjectiveType.Unmarshal(m, b) +} +func (m *HyperparameterTuningObjectiveType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_HyperparameterTuningObjectiveType.Marshal(b, m, deterministic) +} +func (m *HyperparameterTuningObjectiveType) XXX_Merge(src proto.Message) { + xxx_messageInfo_HyperparameterTuningObjectiveType.Merge(m, src) +} +func (m *HyperparameterTuningObjectiveType) XXX_Size() int { + return xxx_messageInfo_HyperparameterTuningObjectiveType.Size(m) +} +func (m *HyperparameterTuningObjectiveType) XXX_DiscardUnknown() { + xxx_messageInfo_HyperparameterTuningObjectiveType.DiscardUnknown(m) +} + +var xxx_messageInfo_HyperparameterTuningObjectiveType proto.InternalMessageInfo + +// The target metric and the objective of the hyperparameter tuning. +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html +type HyperparameterTuningObjective struct { + // HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job + // with respect to the specified metric. + ObjectiveType HyperparameterTuningObjectiveType_Value `protobuf:"varint,1,opt,name=objective_type,json=objectiveType,proto3,enum=flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType_Value" json:"objective_type,omitempty"` + // The target metric name, which is the user-defined name of the metric specified in the + // training job's algorithm specification + MetricName string `protobuf:"bytes,2,opt,name=metric_name,json=metricName,proto3" json:"metric_name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *HyperparameterTuningObjective) Reset() { *m = HyperparameterTuningObjective{} } +func (m *HyperparameterTuningObjective) String() string { return proto.CompactTextString(m) } +func (*HyperparameterTuningObjective) ProtoMessage() {} +func (*HyperparameterTuningObjective) Descriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{2} +} + +func (m *HyperparameterTuningObjective) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_HyperparameterTuningObjective.Unmarshal(m, b) +} +func (m *HyperparameterTuningObjective) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_HyperparameterTuningObjective.Marshal(b, m, deterministic) +} +func (m *HyperparameterTuningObjective) XXX_Merge(src proto.Message) { + xxx_messageInfo_HyperparameterTuningObjective.Merge(m, src) +} +func (m *HyperparameterTuningObjective) XXX_Size() int { + return xxx_messageInfo_HyperparameterTuningObjective.Size(m) +} +func (m *HyperparameterTuningObjective) XXX_DiscardUnknown() { + xxx_messageInfo_HyperparameterTuningObjective.DiscardUnknown(m) +} + +var xxx_messageInfo_HyperparameterTuningObjective proto.InternalMessageInfo + +func (m *HyperparameterTuningObjective) GetObjectiveType() HyperparameterTuningObjectiveType_Value { + if m != nil { + return m.ObjectiveType + } + return HyperparameterTuningObjectiveType_MINIMIZE +} + +func (m *HyperparameterTuningObjective) GetMetricName() string { + if m != nil { + return m.MetricName + } + return "" +} + +// Setting the strategy used when searching in the hyperparameter space +// Refer this doc for more details: +// https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-automatic-model-tuning-now-supports-random-search-and-hyperparameter-scaling/ +type HyperparameterTuningStrategy struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *HyperparameterTuningStrategy) Reset() { *m = HyperparameterTuningStrategy{} } +func (m *HyperparameterTuningStrategy) String() string { return proto.CompactTextString(m) } +func (*HyperparameterTuningStrategy) ProtoMessage() {} +func (*HyperparameterTuningStrategy) Descriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{3} +} + +func (m *HyperparameterTuningStrategy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_HyperparameterTuningStrategy.Unmarshal(m, b) +} +func (m *HyperparameterTuningStrategy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_HyperparameterTuningStrategy.Marshal(b, m, deterministic) +} +func (m *HyperparameterTuningStrategy) XXX_Merge(src proto.Message) { + xxx_messageInfo_HyperparameterTuningStrategy.Merge(m, src) +} +func (m *HyperparameterTuningStrategy) XXX_Size() int { + return xxx_messageInfo_HyperparameterTuningStrategy.Size(m) +} +func (m *HyperparameterTuningStrategy) XXX_DiscardUnknown() { + xxx_messageInfo_HyperparameterTuningStrategy.DiscardUnknown(m) +} + +var xxx_messageInfo_HyperparameterTuningStrategy proto.InternalMessageInfo + +// When the training jobs launched by the hyperparameter tuning job are not improving significantly, +// a hyperparameter tuning job can be stopping early. +// Note that there's only a subset of built-in algorithms that supports early stopping. +// see: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-early-stopping.html +type TrainingJobEarlyStoppingType struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *TrainingJobEarlyStoppingType) Reset() { *m = TrainingJobEarlyStoppingType{} } +func (m *TrainingJobEarlyStoppingType) String() string { return proto.CompactTextString(m) } +func (*TrainingJobEarlyStoppingType) ProtoMessage() {} +func (*TrainingJobEarlyStoppingType) Descriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{4} +} + +func (m *TrainingJobEarlyStoppingType) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_TrainingJobEarlyStoppingType.Unmarshal(m, b) +} +func (m *TrainingJobEarlyStoppingType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_TrainingJobEarlyStoppingType.Marshal(b, m, deterministic) +} +func (m *TrainingJobEarlyStoppingType) XXX_Merge(src proto.Message) { + xxx_messageInfo_TrainingJobEarlyStoppingType.Merge(m, src) +} +func (m *TrainingJobEarlyStoppingType) XXX_Size() int { + return xxx_messageInfo_TrainingJobEarlyStoppingType.Size(m) +} +func (m *TrainingJobEarlyStoppingType) XXX_DiscardUnknown() { + xxx_messageInfo_TrainingJobEarlyStoppingType.DiscardUnknown(m) +} + +var xxx_messageInfo_TrainingJobEarlyStoppingType proto.InternalMessageInfo + +// The specification of the hyperparameter tuning process +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-ex-tuning-job.html#automatic-model-tuning-ex-low-tuning-config +type HyperparameterTuningJobConfig struct { + // ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range + HyperparameterRanges *ParameterRanges `protobuf:"bytes,1,opt,name=hyperparameter_ranges,json=hyperparameterRanges,proto3" json:"hyperparameter_ranges,omitempty"` + // Setting the strategy used when searching in the hyperparameter space + TuningStrategy HyperparameterTuningStrategy_Value `protobuf:"varint,2,opt,name=tuning_strategy,json=tuningStrategy,proto3,enum=flyteidl.plugins.sagemaker.HyperparameterTuningStrategy_Value" json:"tuning_strategy,omitempty"` + // The target metric and the objective of the hyperparameter tuning. + TuningObjective *HyperparameterTuningObjective `protobuf:"bytes,3,opt,name=tuning_objective,json=tuningObjective,proto3" json:"tuning_objective,omitempty"` + // When the training jobs launched by the hyperparameter tuning job are not improving significantly, + // a hyperparameter tuning job can be stopping early. + TrainingJobEarlyStoppingType TrainingJobEarlyStoppingType_Value `protobuf:"varint,4,opt,name=training_job_early_stopping_type,json=trainingJobEarlyStoppingType,proto3,enum=flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType_Value" json:"training_job_early_stopping_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *HyperparameterTuningJobConfig) Reset() { *m = HyperparameterTuningJobConfig{} } +func (m *HyperparameterTuningJobConfig) String() string { return proto.CompactTextString(m) } +func (*HyperparameterTuningJobConfig) ProtoMessage() {} +func (*HyperparameterTuningJobConfig) Descriptor() ([]byte, []int) { + return fileDescriptor_84374f4d1322c4ba, []int{5} +} + +func (m *HyperparameterTuningJobConfig) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_HyperparameterTuningJobConfig.Unmarshal(m, b) +} +func (m *HyperparameterTuningJobConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_HyperparameterTuningJobConfig.Marshal(b, m, deterministic) +} +func (m *HyperparameterTuningJobConfig) XXX_Merge(src proto.Message) { + xxx_messageInfo_HyperparameterTuningJobConfig.Merge(m, src) +} +func (m *HyperparameterTuningJobConfig) XXX_Size() int { + return xxx_messageInfo_HyperparameterTuningJobConfig.Size(m) +} +func (m *HyperparameterTuningJobConfig) XXX_DiscardUnknown() { + xxx_messageInfo_HyperparameterTuningJobConfig.DiscardUnknown(m) +} + +var xxx_messageInfo_HyperparameterTuningJobConfig proto.InternalMessageInfo + +func (m *HyperparameterTuningJobConfig) GetHyperparameterRanges() *ParameterRanges { + if m != nil { + return m.HyperparameterRanges + } + return nil +} + +func (m *HyperparameterTuningJobConfig) GetTuningStrategy() HyperparameterTuningStrategy_Value { + if m != nil { + return m.TuningStrategy + } + return HyperparameterTuningStrategy_BAYESIAN +} + +func (m *HyperparameterTuningJobConfig) GetTuningObjective() *HyperparameterTuningObjective { + if m != nil { + return m.TuningObjective + } + return nil +} + +func (m *HyperparameterTuningJobConfig) GetTrainingJobEarlyStoppingType() TrainingJobEarlyStoppingType_Value { + if m != nil { + return m.TrainingJobEarlyStoppingType + } + return TrainingJobEarlyStoppingType_OFF +} + +func init() { + proto.RegisterEnum("flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType_Value", HyperparameterTuningObjectiveType_Value_name, HyperparameterTuningObjectiveType_Value_value) + proto.RegisterEnum("flyteidl.plugins.sagemaker.HyperparameterTuningStrategy_Value", HyperparameterTuningStrategy_Value_name, HyperparameterTuningStrategy_Value_value) + proto.RegisterEnum("flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType_Value", TrainingJobEarlyStoppingType_Value_name, TrainingJobEarlyStoppingType_Value_value) + proto.RegisterType((*HyperparameterTuningJob)(nil), "flyteidl.plugins.sagemaker.HyperparameterTuningJob") + proto.RegisterType((*HyperparameterTuningObjectiveType)(nil), "flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType") + proto.RegisterType((*HyperparameterTuningObjective)(nil), "flyteidl.plugins.sagemaker.HyperparameterTuningObjective") + proto.RegisterType((*HyperparameterTuningStrategy)(nil), "flyteidl.plugins.sagemaker.HyperparameterTuningStrategy") + proto.RegisterType((*TrainingJobEarlyStoppingType)(nil), "flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType") + proto.RegisterType((*HyperparameterTuningJobConfig)(nil), "flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig") +} + +func init() { + proto.RegisterFile("flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto", fileDescriptor_84374f4d1322c4ba) +} + +var fileDescriptor_84374f4d1322c4ba = []byte{ + // 557 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0x5d, 0x6f, 0xd3, 0x30, + 0x14, 0x5d, 0xe8, 0x18, 0xe3, 0x76, 0x94, 0xc8, 0x02, 0x6d, 0x2a, 0x45, 0x74, 0xe1, 0x81, 0x49, + 0x68, 0x89, 0x28, 0x4f, 0x8c, 0x2f, 0x65, 0xa3, 0xd3, 0x5a, 0xa9, 0xed, 0x94, 0x16, 0x04, 0x7b, + 0x09, 0x4e, 0xe7, 0x7a, 0x29, 0x49, 0x1c, 0x39, 0x2e, 0x5a, 0xfe, 0x00, 0xbf, 0x86, 0x3f, 0xc4, + 0x1b, 0x3f, 0x05, 0xd5, 0x71, 0xdb, 0xb4, 0x2a, 0x99, 0xe0, 0x2d, 0xbe, 0xba, 0xe7, 0xf8, 0xdc, + 0x73, 0x6e, 0x0c, 0x47, 0xa3, 0x20, 0x15, 0xc4, 0xbf, 0x0c, 0xac, 0x38, 0x98, 0x50, 0x3f, 0x4a, + 0xac, 0x04, 0x53, 0x12, 0xe2, 0x6f, 0x84, 0x5b, 0x57, 0x69, 0x4c, 0x78, 0x8c, 0x39, 0x0e, 0x89, + 0x20, 0xdc, 0x15, 0x93, 0xc8, 0x8f, 0xa8, 0x3b, 0x66, 0x9e, 0x19, 0x73, 0x26, 0x18, 0xaa, 0xce, + 0xb0, 0xa6, 0xc2, 0x9a, 0x73, 0x6c, 0xf5, 0x45, 0x01, 0xef, 0x82, 0x92, 0xe3, 0x88, 0x92, 0x24, + 0xa3, 0xab, 0x1e, 0x16, 0x40, 0x04, 0xc7, 0xfe, 0xf2, 0xed, 0xc6, 0x6f, 0x0d, 0x76, 0xcf, 0x96, + 0x14, 0x0e, 0xa4, 0xc0, 0x36, 0xf3, 0x50, 0x1b, 0x76, 0xf2, 0x88, 0x3d, 0xad, 0xae, 0x1d, 0x94, + 0x1b, 0xcf, 0xcc, 0xbf, 0x0b, 0x36, 0x07, 0xaa, 0xbf, 0xcd, 0x3c, 0xa7, 0x2c, 0x16, 0x07, 0xf4, + 0x06, 0x1e, 0x85, 0xf8, 0xda, 0x8d, 0x26, 0xa1, 0x47, 0xb8, 0xcb, 0x46, 0x6e, 0x9e, 0x39, 0xd9, + 0xbb, 0x55, 0xd7, 0x0e, 0x4a, 0xce, 0x6e, 0x88, 0xaf, 0xbb, 0xb2, 0xa3, 0x37, 0xca, 0x31, 0x25, + 0xe8, 0x35, 0x54, 0xa7, 0xe8, 0xa9, 0xc6, 0x20, 0x20, 0xc1, 0x0a, 0xb8, 0x34, 0x07, 0x9f, 0xab, + 0x86, 0x3c, 0xd8, 0x38, 0x83, 0xfd, 0x75, 0x13, 0xf6, 0xbc, 0x31, 0x19, 0x0a, 0xff, 0x3b, 0x19, + 0xa4, 0x31, 0x31, 0x9e, 0xc2, 0xed, 0x4f, 0x38, 0x98, 0x10, 0xb4, 0x03, 0xdb, 0x9d, 0x56, 0xb7, + 0xd5, 0x69, 0x5d, 0x34, 0xf5, 0x0d, 0x79, 0xb2, 0x3f, 0x67, 0x27, 0xcd, 0xf8, 0xa9, 0xc1, 0xe3, + 0x42, 0x2a, 0x34, 0x86, 0x0a, 0x9b, 0x1d, 0x5c, 0x91, 0xc6, 0x44, 0x9a, 0x56, 0x69, 0x9c, 0x14, + 0x99, 0x76, 0xa3, 0x3a, 0x53, 0x4a, 0x73, 0xee, 0xb1, 0x7c, 0x11, 0x3d, 0x81, 0x72, 0x48, 0x04, + 0xf7, 0x87, 0x6e, 0x84, 0x43, 0x22, 0x2d, 0xbc, 0xeb, 0x40, 0x56, 0xea, 0xe2, 0x90, 0x18, 0x36, + 0xd4, 0xd6, 0x51, 0xf7, 0x05, 0xc7, 0x82, 0xd0, 0xd4, 0xd8, 0xcf, 0xcd, 0x7c, 0x6c, 0x7f, 0x69, + 0xf6, 0x5b, 0x76, 0x57, 0xdf, 0x40, 0x00, 0x5b, 0x8e, 0xdd, 0xfd, 0xd0, 0xeb, 0xe8, 0x9a, 0x71, + 0x04, 0xb5, 0x9c, 0x97, 0x4d, 0xcc, 0x83, 0xb4, 0x2f, 0x58, 0x1c, 0xfb, 0x11, 0x95, 0xb6, 0x55, + 0x67, 0x14, 0x77, 0xa0, 0xd4, 0x3b, 0x3d, 0xd5, 0x37, 0xd0, 0x36, 0x6c, 0xda, 0x1f, 0x07, 0x3d, + 0x5d, 0x33, 0x7e, 0x95, 0xd6, 0xbb, 0xd5, 0x66, 0xde, 0x09, 0x8b, 0x46, 0x3e, 0x45, 0x5f, 0xe1, + 0xe1, 0xca, 0xdf, 0x91, 0xad, 0xb2, 0xda, 0xb4, 0xe7, 0x45, 0xa6, 0x9d, 0xcf, 0x30, 0x8e, 0x84, + 0x38, 0x0f, 0x96, 0x99, 0xb2, 0x2a, 0xa2, 0x70, 0x5f, 0xfd, 0x70, 0x89, 0x9a, 0x5a, 0xfa, 0x54, + 0x69, 0xbc, 0xfb, 0xd7, 0x40, 0x66, 0xae, 0xa9, 0x2c, 0x2a, 0x62, 0xa9, 0x8a, 0x2e, 0x41, 0x57, + 0x17, 0xcd, 0x43, 0x92, 0x7b, 0x59, 0x6e, 0xbc, 0xfa, 0xef, 0xe8, 0x1d, 0xa5, 0x7d, 0xb1, 0x5e, + 0x3f, 0x34, 0xa8, 0xe7, 0x77, 0xdf, 0x25, 0xd3, 0x44, 0xdc, 0x44, 0x45, 0x92, 0x6d, 0xdc, 0xe6, + 0xcd, 0x03, 0x16, 0x65, 0xaa, 0x06, 0xac, 0x89, 0x82, 0x9e, 0xe3, 0xf7, 0x17, 0x6f, 0xa9, 0x2f, + 0xae, 0x26, 0x9e, 0x39, 0x64, 0xa1, 0x25, 0x6f, 0x62, 0x9c, 0x66, 0x1f, 0xd6, 0xfc, 0x05, 0xa2, + 0x24, 0xb2, 0x62, 0xef, 0x90, 0x32, 0x6b, 0xf5, 0x51, 0xf2, 0xb6, 0xe4, 0xf3, 0xf3, 0xf2, 0x4f, + 0x00, 0x00, 0x00, 0xff, 0xff, 0xf6, 0xd3, 0xfc, 0x15, 0x3a, 0x05, 0x00, 0x00, +} diff --git a/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.validate.go b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.validate.go new file mode 100644 index 0000000000..08e5ef6b09 --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.pb.validate.go @@ -0,0 +1,486 @@ +// Code generated by protoc-gen-validate. DO NOT EDIT. +// source: flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto + +package plugins + +import ( + "bytes" + "errors" + "fmt" + "net" + "net/mail" + "net/url" + "regexp" + "strings" + "time" + "unicode/utf8" + + "github.com/golang/protobuf/ptypes" +) + +// ensure the imports are used +var ( + _ = bytes.MinRead + _ = errors.New("") + _ = fmt.Print + _ = utf8.UTFMax + _ = (*regexp.Regexp)(nil) + _ = (*strings.Reader)(nil) + _ = net.IPv4len + _ = time.Duration(0) + _ = (*url.URL)(nil) + _ = (*mail.Address)(nil) + _ = ptypes.DynamicAny{} +) + +// define the regex for a UUID once up-front +var _hyperparameter_tuning_job_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") + +// Validate checks the field values on HyperparameterTuningJob with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *HyperparameterTuningJob) Validate() error { + if m == nil { + return nil + } + + if v, ok := interface{}(m.GetTrainingJob()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return HyperparameterTuningJobValidationError{ + field: "TrainingJob", + reason: "embedded message failed validation", + cause: err, + } + } + } + + // no validation rules for MaxNumberOfTrainingJobs + + // no validation rules for MaxParallelTrainingJobs + + return nil +} + +// HyperparameterTuningJobValidationError is the validation error returned by +// HyperparameterTuningJob.Validate if the designated constraints aren't met. +type HyperparameterTuningJobValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e HyperparameterTuningJobValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e HyperparameterTuningJobValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e HyperparameterTuningJobValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e HyperparameterTuningJobValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e HyperparameterTuningJobValidationError) ErrorName() string { + return "HyperparameterTuningJobValidationError" +} + +// Error satisfies the builtin error interface +func (e HyperparameterTuningJobValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sHyperparameterTuningJob.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = HyperparameterTuningJobValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = HyperparameterTuningJobValidationError{} + +// Validate checks the field values on HyperparameterTuningObjectiveType with +// the rules defined in the proto definition for this message. If any rules +// are violated, an error is returned. +func (m *HyperparameterTuningObjectiveType) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// HyperparameterTuningObjectiveTypeValidationError is the validation error +// returned by HyperparameterTuningObjectiveType.Validate if the designated +// constraints aren't met. +type HyperparameterTuningObjectiveTypeValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e HyperparameterTuningObjectiveTypeValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e HyperparameterTuningObjectiveTypeValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e HyperparameterTuningObjectiveTypeValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e HyperparameterTuningObjectiveTypeValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e HyperparameterTuningObjectiveTypeValidationError) ErrorName() string { + return "HyperparameterTuningObjectiveTypeValidationError" +} + +// Error satisfies the builtin error interface +func (e HyperparameterTuningObjectiveTypeValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sHyperparameterTuningObjectiveType.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = HyperparameterTuningObjectiveTypeValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = HyperparameterTuningObjectiveTypeValidationError{} + +// Validate checks the field values on HyperparameterTuningObjective with the +// rules defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *HyperparameterTuningObjective) Validate() error { + if m == nil { + return nil + } + + // no validation rules for ObjectiveType + + // no validation rules for MetricName + + return nil +} + +// HyperparameterTuningObjectiveValidationError is the validation error +// returned by HyperparameterTuningObjective.Validate if the designated +// constraints aren't met. +type HyperparameterTuningObjectiveValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e HyperparameterTuningObjectiveValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e HyperparameterTuningObjectiveValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e HyperparameterTuningObjectiveValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e HyperparameterTuningObjectiveValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e HyperparameterTuningObjectiveValidationError) ErrorName() string { + return "HyperparameterTuningObjectiveValidationError" +} + +// Error satisfies the builtin error interface +func (e HyperparameterTuningObjectiveValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sHyperparameterTuningObjective.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = HyperparameterTuningObjectiveValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = HyperparameterTuningObjectiveValidationError{} + +// Validate checks the field values on HyperparameterTuningStrategy with the +// rules defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *HyperparameterTuningStrategy) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// HyperparameterTuningStrategyValidationError is the validation error returned +// by HyperparameterTuningStrategy.Validate if the designated constraints +// aren't met. +type HyperparameterTuningStrategyValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e HyperparameterTuningStrategyValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e HyperparameterTuningStrategyValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e HyperparameterTuningStrategyValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e HyperparameterTuningStrategyValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e HyperparameterTuningStrategyValidationError) ErrorName() string { + return "HyperparameterTuningStrategyValidationError" +} + +// Error satisfies the builtin error interface +func (e HyperparameterTuningStrategyValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sHyperparameterTuningStrategy.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = HyperparameterTuningStrategyValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = HyperparameterTuningStrategyValidationError{} + +// Validate checks the field values on TrainingJobEarlyStoppingType with the +// rules defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *TrainingJobEarlyStoppingType) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// TrainingJobEarlyStoppingTypeValidationError is the validation error returned +// by TrainingJobEarlyStoppingType.Validate if the designated constraints +// aren't met. +type TrainingJobEarlyStoppingTypeValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e TrainingJobEarlyStoppingTypeValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e TrainingJobEarlyStoppingTypeValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e TrainingJobEarlyStoppingTypeValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e TrainingJobEarlyStoppingTypeValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e TrainingJobEarlyStoppingTypeValidationError) ErrorName() string { + return "TrainingJobEarlyStoppingTypeValidationError" +} + +// Error satisfies the builtin error interface +func (e TrainingJobEarlyStoppingTypeValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sTrainingJobEarlyStoppingType.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = TrainingJobEarlyStoppingTypeValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = TrainingJobEarlyStoppingTypeValidationError{} + +// Validate checks the field values on HyperparameterTuningJobConfig with the +// rules defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *HyperparameterTuningJobConfig) Validate() error { + if m == nil { + return nil + } + + if v, ok := interface{}(m.GetHyperparameterRanges()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return HyperparameterTuningJobConfigValidationError{ + field: "HyperparameterRanges", + reason: "embedded message failed validation", + cause: err, + } + } + } + + // no validation rules for TuningStrategy + + if v, ok := interface{}(m.GetTuningObjective()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return HyperparameterTuningJobConfigValidationError{ + field: "TuningObjective", + reason: "embedded message failed validation", + cause: err, + } + } + } + + // no validation rules for TrainingJobEarlyStoppingType + + return nil +} + +// HyperparameterTuningJobConfigValidationError is the validation error +// returned by HyperparameterTuningJobConfig.Validate if the designated +// constraints aren't met. +type HyperparameterTuningJobConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e HyperparameterTuningJobConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e HyperparameterTuningJobConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e HyperparameterTuningJobConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e HyperparameterTuningJobConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e HyperparameterTuningJobConfigValidationError) ErrorName() string { + return "HyperparameterTuningJobConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e HyperparameterTuningJobConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sHyperparameterTuningJobConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = HyperparameterTuningJobConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = HyperparameterTuningJobConfigValidationError{} diff --git a/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/parameter_ranges.pb.go b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/parameter_ranges.pb.go new file mode 100644 index 0000000000..e88cba07df --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/parameter_ranges.pb.go @@ -0,0 +1,436 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: flyteidl/plugins/sagemaker/parameter_ranges.proto + +package plugins + +import ( + fmt "fmt" + proto "github.com/golang/protobuf/proto" + math "math" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// 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.ProtoPackageIsVersion3 // please upgrade the proto package + +type HyperparameterScalingType_Value int32 + +const ( + HyperparameterScalingType_AUTO HyperparameterScalingType_Value = 0 + HyperparameterScalingType_LINEAR HyperparameterScalingType_Value = 1 + HyperparameterScalingType_LOGARITHMIC HyperparameterScalingType_Value = 2 + HyperparameterScalingType_REVERSELOGARITHMIC HyperparameterScalingType_Value = 3 +) + +var HyperparameterScalingType_Value_name = map[int32]string{ + 0: "AUTO", + 1: "LINEAR", + 2: "LOGARITHMIC", + 3: "REVERSELOGARITHMIC", +} + +var HyperparameterScalingType_Value_value = map[string]int32{ + "AUTO": 0, + "LINEAR": 1, + "LOGARITHMIC": 2, + "REVERSELOGARITHMIC": 3, +} + +func (x HyperparameterScalingType_Value) String() string { + return proto.EnumName(HyperparameterScalingType_Value_name, int32(x)) +} + +func (HyperparameterScalingType_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_5f31fcc87eba0a70, []int{0, 0} +} + +// HyperparameterScalingType defines the way to increase or decrease the value of the hyperparameter +// For details, refer to: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +// See examples of these scaling type, refer to: https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-automatic-model-tuning-now-supports-random-search-and-hyperparameter-scaling/ +type HyperparameterScalingType struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *HyperparameterScalingType) Reset() { *m = HyperparameterScalingType{} } +func (m *HyperparameterScalingType) String() string { return proto.CompactTextString(m) } +func (*HyperparameterScalingType) ProtoMessage() {} +func (*HyperparameterScalingType) Descriptor() ([]byte, []int) { + return fileDescriptor_5f31fcc87eba0a70, []int{0} +} + +func (m *HyperparameterScalingType) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_HyperparameterScalingType.Unmarshal(m, b) +} +func (m *HyperparameterScalingType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_HyperparameterScalingType.Marshal(b, m, deterministic) +} +func (m *HyperparameterScalingType) XXX_Merge(src proto.Message) { + xxx_messageInfo_HyperparameterScalingType.Merge(m, src) +} +func (m *HyperparameterScalingType) XXX_Size() int { + return xxx_messageInfo_HyperparameterScalingType.Size(m) +} +func (m *HyperparameterScalingType) XXX_DiscardUnknown() { + xxx_messageInfo_HyperparameterScalingType.DiscardUnknown(m) +} + +var xxx_messageInfo_HyperparameterScalingType proto.InternalMessageInfo + +// ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing +// users to specify the search space of a floating-point hyperparameter +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +type ContinuousParameterRange struct { + MaxValue float64 `protobuf:"fixed64,1,opt,name=max_value,json=maxValue,proto3" json:"max_value,omitempty"` + MinValue float64 `protobuf:"fixed64,2,opt,name=min_value,json=minValue,proto3" json:"min_value,omitempty"` + ScalingType HyperparameterScalingType_Value `protobuf:"varint,3,opt,name=scaling_type,json=scalingType,proto3,enum=flyteidl.plugins.sagemaker.HyperparameterScalingType_Value" json:"scaling_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ContinuousParameterRange) Reset() { *m = ContinuousParameterRange{} } +func (m *ContinuousParameterRange) String() string { return proto.CompactTextString(m) } +func (*ContinuousParameterRange) ProtoMessage() {} +func (*ContinuousParameterRange) Descriptor() ([]byte, []int) { + return fileDescriptor_5f31fcc87eba0a70, []int{1} +} + +func (m *ContinuousParameterRange) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ContinuousParameterRange.Unmarshal(m, b) +} +func (m *ContinuousParameterRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ContinuousParameterRange.Marshal(b, m, deterministic) +} +func (m *ContinuousParameterRange) XXX_Merge(src proto.Message) { + xxx_messageInfo_ContinuousParameterRange.Merge(m, src) +} +func (m *ContinuousParameterRange) XXX_Size() int { + return xxx_messageInfo_ContinuousParameterRange.Size(m) +} +func (m *ContinuousParameterRange) XXX_DiscardUnknown() { + xxx_messageInfo_ContinuousParameterRange.DiscardUnknown(m) +} + +var xxx_messageInfo_ContinuousParameterRange proto.InternalMessageInfo + +func (m *ContinuousParameterRange) GetMaxValue() float64 { + if m != nil { + return m.MaxValue + } + return 0 +} + +func (m *ContinuousParameterRange) GetMinValue() float64 { + if m != nil { + return m.MinValue + } + return 0 +} + +func (m *ContinuousParameterRange) GetScalingType() HyperparameterScalingType_Value { + if m != nil { + return m.ScalingType + } + return HyperparameterScalingType_AUTO +} + +// IntegerParameterRange refers to a discrete range of hyperparameter values, allowing +// users to specify the search space of an integer hyperparameter +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +type IntegerParameterRange struct { + MaxValue int64 `protobuf:"varint,1,opt,name=max_value,json=maxValue,proto3" json:"max_value,omitempty"` + MinValue int64 `protobuf:"varint,2,opt,name=min_value,json=minValue,proto3" json:"min_value,omitempty"` + ScalingType HyperparameterScalingType_Value `protobuf:"varint,3,opt,name=scaling_type,json=scalingType,proto3,enum=flyteidl.plugins.sagemaker.HyperparameterScalingType_Value" json:"scaling_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *IntegerParameterRange) Reset() { *m = IntegerParameterRange{} } +func (m *IntegerParameterRange) String() string { return proto.CompactTextString(m) } +func (*IntegerParameterRange) ProtoMessage() {} +func (*IntegerParameterRange) Descriptor() ([]byte, []int) { + return fileDescriptor_5f31fcc87eba0a70, []int{2} +} + +func (m *IntegerParameterRange) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_IntegerParameterRange.Unmarshal(m, b) +} +func (m *IntegerParameterRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_IntegerParameterRange.Marshal(b, m, deterministic) +} +func (m *IntegerParameterRange) XXX_Merge(src proto.Message) { + xxx_messageInfo_IntegerParameterRange.Merge(m, src) +} +func (m *IntegerParameterRange) XXX_Size() int { + return xxx_messageInfo_IntegerParameterRange.Size(m) +} +func (m *IntegerParameterRange) XXX_DiscardUnknown() { + xxx_messageInfo_IntegerParameterRange.DiscardUnknown(m) +} + +var xxx_messageInfo_IntegerParameterRange proto.InternalMessageInfo + +func (m *IntegerParameterRange) GetMaxValue() int64 { + if m != nil { + return m.MaxValue + } + return 0 +} + +func (m *IntegerParameterRange) GetMinValue() int64 { + if m != nil { + return m.MinValue + } + return 0 +} + +func (m *IntegerParameterRange) GetScalingType() HyperparameterScalingType_Value { + if m != nil { + return m.ScalingType + } + return HyperparameterScalingType_AUTO +} + +// ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing +// users to specify the search space of a floating-point hyperparameter +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +type CategoricalParameterRange struct { + Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CategoricalParameterRange) Reset() { *m = CategoricalParameterRange{} } +func (m *CategoricalParameterRange) String() string { return proto.CompactTextString(m) } +func (*CategoricalParameterRange) ProtoMessage() {} +func (*CategoricalParameterRange) Descriptor() ([]byte, []int) { + return fileDescriptor_5f31fcc87eba0a70, []int{3} +} + +func (m *CategoricalParameterRange) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CategoricalParameterRange.Unmarshal(m, b) +} +func (m *CategoricalParameterRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CategoricalParameterRange.Marshal(b, m, deterministic) +} +func (m *CategoricalParameterRange) XXX_Merge(src proto.Message) { + xxx_messageInfo_CategoricalParameterRange.Merge(m, src) +} +func (m *CategoricalParameterRange) XXX_Size() int { + return xxx_messageInfo_CategoricalParameterRange.Size(m) +} +func (m *CategoricalParameterRange) XXX_DiscardUnknown() { + xxx_messageInfo_CategoricalParameterRange.DiscardUnknown(m) +} + +var xxx_messageInfo_CategoricalParameterRange proto.InternalMessageInfo + +func (m *CategoricalParameterRange) GetValues() []string { + if m != nil { + return m.Values + } + return nil +} + +// ParameterRangeOneOf describes a single ParameterRange, which is a one-of structure that can be one of +// the three possible types: ContinuousParameterRange, IntegerParameterRange, and CategoricalParameterRange. +// This one-of structure in Flyte enables specifying a Parameter in a type-safe manner +// See: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +type ParameterRangeOneOf struct { + // Types that are valid to be assigned to ParameterRangeType: + // *ParameterRangeOneOf_ContinuousParameterRange + // *ParameterRangeOneOf_IntegerParameterRange + // *ParameterRangeOneOf_CategoricalParameterRange + ParameterRangeType isParameterRangeOneOf_ParameterRangeType `protobuf_oneof:"parameter_range_type"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ParameterRangeOneOf) Reset() { *m = ParameterRangeOneOf{} } +func (m *ParameterRangeOneOf) String() string { return proto.CompactTextString(m) } +func (*ParameterRangeOneOf) ProtoMessage() {} +func (*ParameterRangeOneOf) Descriptor() ([]byte, []int) { + return fileDescriptor_5f31fcc87eba0a70, []int{4} +} + +func (m *ParameterRangeOneOf) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ParameterRangeOneOf.Unmarshal(m, b) +} +func (m *ParameterRangeOneOf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ParameterRangeOneOf.Marshal(b, m, deterministic) +} +func (m *ParameterRangeOneOf) XXX_Merge(src proto.Message) { + xxx_messageInfo_ParameterRangeOneOf.Merge(m, src) +} +func (m *ParameterRangeOneOf) XXX_Size() int { + return xxx_messageInfo_ParameterRangeOneOf.Size(m) +} +func (m *ParameterRangeOneOf) XXX_DiscardUnknown() { + xxx_messageInfo_ParameterRangeOneOf.DiscardUnknown(m) +} + +var xxx_messageInfo_ParameterRangeOneOf proto.InternalMessageInfo + +type isParameterRangeOneOf_ParameterRangeType interface { + isParameterRangeOneOf_ParameterRangeType() +} + +type ParameterRangeOneOf_ContinuousParameterRange struct { + ContinuousParameterRange *ContinuousParameterRange `protobuf:"bytes,1,opt,name=continuous_parameter_range,json=continuousParameterRange,proto3,oneof"` +} + +type ParameterRangeOneOf_IntegerParameterRange struct { + IntegerParameterRange *IntegerParameterRange `protobuf:"bytes,2,opt,name=integer_parameter_range,json=integerParameterRange,proto3,oneof"` +} + +type ParameterRangeOneOf_CategoricalParameterRange struct { + CategoricalParameterRange *CategoricalParameterRange `protobuf:"bytes,3,opt,name=categorical_parameter_range,json=categoricalParameterRange,proto3,oneof"` +} + +func (*ParameterRangeOneOf_ContinuousParameterRange) isParameterRangeOneOf_ParameterRangeType() {} + +func (*ParameterRangeOneOf_IntegerParameterRange) isParameterRangeOneOf_ParameterRangeType() {} + +func (*ParameterRangeOneOf_CategoricalParameterRange) isParameterRangeOneOf_ParameterRangeType() {} + +func (m *ParameterRangeOneOf) GetParameterRangeType() isParameterRangeOneOf_ParameterRangeType { + if m != nil { + return m.ParameterRangeType + } + return nil +} + +func (m *ParameterRangeOneOf) GetContinuousParameterRange() *ContinuousParameterRange { + if x, ok := m.GetParameterRangeType().(*ParameterRangeOneOf_ContinuousParameterRange); ok { + return x.ContinuousParameterRange + } + return nil +} + +func (m *ParameterRangeOneOf) GetIntegerParameterRange() *IntegerParameterRange { + if x, ok := m.GetParameterRangeType().(*ParameterRangeOneOf_IntegerParameterRange); ok { + return x.IntegerParameterRange + } + return nil +} + +func (m *ParameterRangeOneOf) GetCategoricalParameterRange() *CategoricalParameterRange { + if x, ok := m.GetParameterRangeType().(*ParameterRangeOneOf_CategoricalParameterRange); ok { + return x.CategoricalParameterRange + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ParameterRangeOneOf) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ParameterRangeOneOf_ContinuousParameterRange)(nil), + (*ParameterRangeOneOf_IntegerParameterRange)(nil), + (*ParameterRangeOneOf_CategoricalParameterRange)(nil), + } +} + +// ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +type ParameterRanges struct { + ParameterRangeMap map[string]*ParameterRangeOneOf `protobuf:"bytes,1,rep,name=parameter_range_map,json=parameterRangeMap,proto3" json:"parameter_range_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ParameterRanges) Reset() { *m = ParameterRanges{} } +func (m *ParameterRanges) String() string { return proto.CompactTextString(m) } +func (*ParameterRanges) ProtoMessage() {} +func (*ParameterRanges) Descriptor() ([]byte, []int) { + return fileDescriptor_5f31fcc87eba0a70, []int{5} +} + +func (m *ParameterRanges) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ParameterRanges.Unmarshal(m, b) +} +func (m *ParameterRanges) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ParameterRanges.Marshal(b, m, deterministic) +} +func (m *ParameterRanges) XXX_Merge(src proto.Message) { + xxx_messageInfo_ParameterRanges.Merge(m, src) +} +func (m *ParameterRanges) XXX_Size() int { + return xxx_messageInfo_ParameterRanges.Size(m) +} +func (m *ParameterRanges) XXX_DiscardUnknown() { + xxx_messageInfo_ParameterRanges.DiscardUnknown(m) +} + +var xxx_messageInfo_ParameterRanges proto.InternalMessageInfo + +func (m *ParameterRanges) GetParameterRangeMap() map[string]*ParameterRangeOneOf { + if m != nil { + return m.ParameterRangeMap + } + return nil +} + +func init() { + proto.RegisterEnum("flyteidl.plugins.sagemaker.HyperparameterScalingType_Value", HyperparameterScalingType_Value_name, HyperparameterScalingType_Value_value) + proto.RegisterType((*HyperparameterScalingType)(nil), "flyteidl.plugins.sagemaker.HyperparameterScalingType") + proto.RegisterType((*ContinuousParameterRange)(nil), "flyteidl.plugins.sagemaker.ContinuousParameterRange") + proto.RegisterType((*IntegerParameterRange)(nil), "flyteidl.plugins.sagemaker.IntegerParameterRange") + proto.RegisterType((*CategoricalParameterRange)(nil), "flyteidl.plugins.sagemaker.CategoricalParameterRange") + proto.RegisterType((*ParameterRangeOneOf)(nil), "flyteidl.plugins.sagemaker.ParameterRangeOneOf") + proto.RegisterType((*ParameterRanges)(nil), "flyteidl.plugins.sagemaker.ParameterRanges") + proto.RegisterMapType((map[string]*ParameterRangeOneOf)(nil), "flyteidl.plugins.sagemaker.ParameterRanges.ParameterRangeMapEntry") +} + +func init() { + proto.RegisterFile("flyteidl/plugins/sagemaker/parameter_ranges.proto", fileDescriptor_5f31fcc87eba0a70) +} + +var fileDescriptor_5f31fcc87eba0a70 = []byte{ + // 516 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x54, 0x41, 0x6f, 0xd3, 0x30, + 0x14, 0x6e, 0x1a, 0x56, 0xad, 0xaf, 0x88, 0x15, 0x8f, 0x95, 0xb6, 0xbb, 0x54, 0x3d, 0xf5, 0x42, + 0xa2, 0x75, 0x20, 0x21, 0x10, 0x42, 0x6d, 0x15, 0x68, 0xa5, 0x8d, 0x22, 0xaf, 0xec, 0xc0, 0x81, + 0xca, 0x0d, 0x5e, 0xb0, 0x9a, 0x38, 0x96, 0xe3, 0xc0, 0xf2, 0x13, 0xf8, 0x39, 0x48, 0xfc, 0x3c, + 0x0e, 0xa8, 0x4e, 0xd7, 0x6d, 0x59, 0x13, 0x38, 0xed, 0x66, 0xfb, 0xbd, 0xe7, 0xef, 0x7b, 0xef, + 0xfb, 0xf4, 0xe0, 0xe8, 0xc2, 0x4f, 0x14, 0x65, 0x5f, 0x7d, 0x5b, 0xf8, 0xb1, 0xc7, 0x78, 0x64, + 0x47, 0xc4, 0xa3, 0x01, 0x59, 0x52, 0x69, 0x0b, 0x22, 0x49, 0x40, 0x15, 0x95, 0x73, 0x49, 0xb8, + 0x47, 0x23, 0x4b, 0xc8, 0x50, 0x85, 0xa8, 0x7d, 0x55, 0x62, 0xad, 0x4b, 0xac, 0x4d, 0x49, 0xd7, + 0x85, 0xd6, 0x38, 0x11, 0x54, 0x6e, 0x4a, 0xcf, 0x5c, 0xe2, 0x33, 0xee, 0xcd, 0x12, 0x41, 0xbb, + 0xef, 0x60, 0xe7, 0x9c, 0xf8, 0x31, 0x45, 0xbb, 0xf0, 0x60, 0xf0, 0x69, 0x36, 0xad, 0x97, 0x10, + 0x40, 0xe5, 0x64, 0xf2, 0xc1, 0x19, 0xe0, 0xba, 0x81, 0xf6, 0xa0, 0x76, 0x32, 0x7d, 0x3f, 0xc0, + 0x93, 0xd9, 0xf8, 0x74, 0x32, 0xaa, 0x97, 0x51, 0x03, 0x10, 0x76, 0xce, 0x1d, 0x7c, 0xe6, 0xdc, + 0x7c, 0x37, 0xbb, 0xbf, 0x0d, 0x68, 0x8e, 0x42, 0xae, 0x18, 0x8f, 0xc3, 0x38, 0xfa, 0x78, 0x05, + 0x85, 0x57, 0x24, 0xd1, 0x21, 0x54, 0x03, 0x72, 0x39, 0xff, 0xbe, 0x02, 0x6a, 0x1a, 0x1d, 0xa3, + 0x67, 0xe0, 0xdd, 0x80, 0x5c, 0xa6, 0xc0, 0xab, 0x20, 0xe3, 0xeb, 0x60, 0x79, 0x1d, 0x64, 0x3c, + 0x0d, 0x7e, 0x81, 0x87, 0x51, 0xca, 0x76, 0xae, 0x12, 0x41, 0x9b, 0x66, 0xc7, 0xe8, 0x3d, 0xea, + 0xbf, 0xb6, 0xf2, 0xdb, 0xb5, 0x72, 0x7b, 0xb5, 0xf4, 0x97, 0xb8, 0x16, 0xdd, 0x68, 0xff, 0x97, + 0x01, 0x07, 0x13, 0xae, 0xa8, 0x47, 0xe5, 0xbf, 0x38, 0x9b, 0x45, 0x9c, 0xcd, 0x7b, 0xe4, 0x7c, + 0x0c, 0xad, 0x11, 0x51, 0xd4, 0x0b, 0x25, 0x73, 0x89, 0x9f, 0xa1, 0xdd, 0x80, 0x8a, 0x66, 0x15, + 0x35, 0x8d, 0x8e, 0xd9, 0xab, 0xe2, 0xf5, 0xad, 0xfb, 0xd3, 0x84, 0xfd, 0xdb, 0xa9, 0x53, 0x4e, + 0xa7, 0x17, 0x48, 0x41, 0xdb, 0xdd, 0xc8, 0x36, 0xcf, 0xb8, 0x4b, 0xf7, 0x5d, 0xeb, 0x3f, 0x2f, + 0xa2, 0x9e, 0x27, 0xfa, 0xb8, 0x84, 0x9b, 0x6e, 0x9e, 0x21, 0x96, 0xf0, 0x94, 0xa5, 0x53, 0xbf, + 0x03, 0x59, 0xd6, 0x90, 0x47, 0x45, 0x90, 0x5b, 0x05, 0x1b, 0x97, 0xf0, 0x01, 0xdb, 0xaa, 0xe4, + 0x0f, 0x38, 0x74, 0xaf, 0xe7, 0x75, 0x07, 0xd0, 0xd4, 0x80, 0x2f, 0x0a, 0x7b, 0xcc, 0x1b, 0xf7, + 0xb8, 0x84, 0x5b, 0x6e, 0x5e, 0x70, 0xd8, 0x80, 0x27, 0x19, 0x30, 0x6d, 0x88, 0xee, 0x1f, 0x03, + 0xf6, 0x6e, 0xa7, 0x46, 0x48, 0xc2, 0x7e, 0x36, 0x37, 0x20, 0x42, 0x8b, 0x58, 0xeb, 0x0f, 0x8b, + 0xc8, 0x65, 0x7e, 0xca, 0xdc, 0x4f, 0x89, 0x70, 0xb8, 0x92, 0x09, 0x7e, 0x2c, 0xb2, 0xef, 0xed, + 0x18, 0x1a, 0xdb, 0x93, 0x51, 0x1d, 0xcc, 0x25, 0x4d, 0xb4, 0xfc, 0x55, 0xbc, 0x3a, 0x22, 0x07, + 0x76, 0xae, 0xdd, 0x5e, 0xeb, 0xdb, 0xff, 0xcf, 0x48, 0xfb, 0x0c, 0xa7, 0xd5, 0xaf, 0xca, 0x2f, + 0x8d, 0xe1, 0xdb, 0xcf, 0x6f, 0x3c, 0xa6, 0xbe, 0xc5, 0x0b, 0xcb, 0x0d, 0x03, 0x5b, 0xff, 0x13, + 0x4a, 0x2f, 0x3d, 0xd8, 0x9b, 0xd5, 0xe7, 0x51, 0x6e, 0x8b, 0xc5, 0x33, 0x2f, 0xb4, 0xb3, 0xdb, + 0x70, 0x51, 0xd1, 0x3b, 0xef, 0xf8, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf1, 0xad, 0x19, 0x6c, + 0x28, 0x05, 0x00, 0x00, +} diff --git a/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/parameter_ranges.pb.validate.go b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/parameter_ranges.pb.validate.go new file mode 100644 index 0000000000..309486134c --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/parameter_ranges.pb.validate.go @@ -0,0 +1,506 @@ +// Code generated by protoc-gen-validate. DO NOT EDIT. +// source: flyteidl/plugins/sagemaker/parameter_ranges.proto + +package plugins + +import ( + "bytes" + "errors" + "fmt" + "net" + "net/mail" + "net/url" + "regexp" + "strings" + "time" + "unicode/utf8" + + "github.com/golang/protobuf/ptypes" +) + +// ensure the imports are used +var ( + _ = bytes.MinRead + _ = errors.New("") + _ = fmt.Print + _ = utf8.UTFMax + _ = (*regexp.Regexp)(nil) + _ = (*strings.Reader)(nil) + _ = net.IPv4len + _ = time.Duration(0) + _ = (*url.URL)(nil) + _ = (*mail.Address)(nil) + _ = ptypes.DynamicAny{} +) + +// define the regex for a UUID once up-front +var _parameter_ranges_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") + +// Validate checks the field values on HyperparameterScalingType with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *HyperparameterScalingType) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// HyperparameterScalingTypeValidationError is the validation error returned by +// HyperparameterScalingType.Validate if the designated constraints aren't met. +type HyperparameterScalingTypeValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e HyperparameterScalingTypeValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e HyperparameterScalingTypeValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e HyperparameterScalingTypeValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e HyperparameterScalingTypeValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e HyperparameterScalingTypeValidationError) ErrorName() string { + return "HyperparameterScalingTypeValidationError" +} + +// Error satisfies the builtin error interface +func (e HyperparameterScalingTypeValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sHyperparameterScalingType.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = HyperparameterScalingTypeValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = HyperparameterScalingTypeValidationError{} + +// Validate checks the field values on ContinuousParameterRange with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *ContinuousParameterRange) Validate() error { + if m == nil { + return nil + } + + // no validation rules for MaxValue + + // no validation rules for MinValue + + // no validation rules for ScalingType + + return nil +} + +// ContinuousParameterRangeValidationError is the validation error returned by +// ContinuousParameterRange.Validate if the designated constraints aren't met. +type ContinuousParameterRangeValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ContinuousParameterRangeValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ContinuousParameterRangeValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ContinuousParameterRangeValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ContinuousParameterRangeValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ContinuousParameterRangeValidationError) ErrorName() string { + return "ContinuousParameterRangeValidationError" +} + +// Error satisfies the builtin error interface +func (e ContinuousParameterRangeValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sContinuousParameterRange.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ContinuousParameterRangeValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ContinuousParameterRangeValidationError{} + +// Validate checks the field values on IntegerParameterRange with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *IntegerParameterRange) Validate() error { + if m == nil { + return nil + } + + // no validation rules for MaxValue + + // no validation rules for MinValue + + // no validation rules for ScalingType + + return nil +} + +// IntegerParameterRangeValidationError is the validation error returned by +// IntegerParameterRange.Validate if the designated constraints aren't met. +type IntegerParameterRangeValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e IntegerParameterRangeValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e IntegerParameterRangeValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e IntegerParameterRangeValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e IntegerParameterRangeValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e IntegerParameterRangeValidationError) ErrorName() string { + return "IntegerParameterRangeValidationError" +} + +// Error satisfies the builtin error interface +func (e IntegerParameterRangeValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sIntegerParameterRange.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = IntegerParameterRangeValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = IntegerParameterRangeValidationError{} + +// Validate checks the field values on CategoricalParameterRange with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *CategoricalParameterRange) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// CategoricalParameterRangeValidationError is the validation error returned by +// CategoricalParameterRange.Validate if the designated constraints aren't met. +type CategoricalParameterRangeValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e CategoricalParameterRangeValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e CategoricalParameterRangeValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e CategoricalParameterRangeValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e CategoricalParameterRangeValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e CategoricalParameterRangeValidationError) ErrorName() string { + return "CategoricalParameterRangeValidationError" +} + +// Error satisfies the builtin error interface +func (e CategoricalParameterRangeValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sCategoricalParameterRange.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = CategoricalParameterRangeValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = CategoricalParameterRangeValidationError{} + +// Validate checks the field values on ParameterRangeOneOf with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *ParameterRangeOneOf) Validate() error { + if m == nil { + return nil + } + + switch m.ParameterRangeType.(type) { + + case *ParameterRangeOneOf_ContinuousParameterRange: + + if v, ok := interface{}(m.GetContinuousParameterRange()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ParameterRangeOneOfValidationError{ + field: "ContinuousParameterRange", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ParameterRangeOneOf_IntegerParameterRange: + + if v, ok := interface{}(m.GetIntegerParameterRange()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ParameterRangeOneOfValidationError{ + field: "IntegerParameterRange", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *ParameterRangeOneOf_CategoricalParameterRange: + + if v, ok := interface{}(m.GetCategoricalParameterRange()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ParameterRangeOneOfValidationError{ + field: "CategoricalParameterRange", + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + return nil +} + +// ParameterRangeOneOfValidationError is the validation error returned by +// ParameterRangeOneOf.Validate if the designated constraints aren't met. +type ParameterRangeOneOfValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ParameterRangeOneOfValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ParameterRangeOneOfValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ParameterRangeOneOfValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ParameterRangeOneOfValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ParameterRangeOneOfValidationError) ErrorName() string { + return "ParameterRangeOneOfValidationError" +} + +// Error satisfies the builtin error interface +func (e ParameterRangeOneOfValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sParameterRangeOneOf.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ParameterRangeOneOfValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ParameterRangeOneOfValidationError{} + +// Validate checks the field values on ParameterRanges with the rules defined +// in the proto definition for this message. If any rules are violated, an +// error is returned. +func (m *ParameterRanges) Validate() error { + if m == nil { + return nil + } + + for key, val := range m.GetParameterRangeMap() { + _ = val + + // no validation rules for ParameterRangeMap[key] + + if v, ok := interface{}(val).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ParameterRangesValidationError{ + field: fmt.Sprintf("ParameterRangeMap[%v]", key), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + return nil +} + +// ParameterRangesValidationError is the validation error returned by +// ParameterRanges.Validate if the designated constraints aren't met. +type ParameterRangesValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ParameterRangesValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ParameterRangesValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ParameterRangesValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ParameterRangesValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ParameterRangesValidationError) ErrorName() string { return "ParameterRangesValidationError" } + +// Error satisfies the builtin error interface +func (e ParameterRangesValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sParameterRanges.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ParameterRangesValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ParameterRangesValidationError{} diff --git a/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/training_job.pb.go b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/training_job.pb.go new file mode 100644 index 0000000000..04309161a9 --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/training_job.pb.go @@ -0,0 +1,591 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: flyteidl/plugins/sagemaker/training_job.proto + +package plugins + +import ( + fmt "fmt" + proto "github.com/golang/protobuf/proto" + _ "github.com/golang/protobuf/ptypes/duration" + math "math" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// 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.ProtoPackageIsVersion3 // please upgrade the proto package + +type InputMode_Value int32 + +const ( + InputMode_FILE InputMode_Value = 0 + InputMode_PIPE InputMode_Value = 1 +) + +var InputMode_Value_name = map[int32]string{ + 0: "FILE", + 1: "PIPE", +} + +var InputMode_Value_value = map[string]int32{ + "FILE": 0, + "PIPE": 1, +} + +func (x InputMode_Value) String() string { + return proto.EnumName(InputMode_Value_name, int32(x)) +} + +func (InputMode_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{0, 0} +} + +type AlgorithmName_Value int32 + +const ( + AlgorithmName_CUSTOM AlgorithmName_Value = 0 + AlgorithmName_XGBOOST AlgorithmName_Value = 1 +) + +var AlgorithmName_Value_name = map[int32]string{ + 0: "CUSTOM", + 1: "XGBOOST", +} + +var AlgorithmName_Value_value = map[string]int32{ + "CUSTOM": 0, + "XGBOOST": 1, +} + +func (x AlgorithmName_Value) String() string { + return proto.EnumName(AlgorithmName_Value_name, int32(x)) +} + +func (AlgorithmName_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{1, 0} +} + +type InputContentType_Value int32 + +const ( + InputContentType_TEXT_CSV InputContentType_Value = 0 +) + +var InputContentType_Value_name = map[int32]string{ + 0: "TEXT_CSV", +} + +var InputContentType_Value_value = map[string]int32{ + "TEXT_CSV": 0, +} + +func (x InputContentType_Value) String() string { + return proto.EnumName(InputContentType_Value_name, int32(x)) +} + +func (InputContentType_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{2, 0} +} + +type DistributedProtocol_Value int32 + +const ( + // Use this value if the user wishes to use framework-native distributed training interfaces. + // If this value is used, Flyte won't configure SageMaker to initialize unnecessary components such as + // OpenMPI or Parameter Server. + DistributedProtocol_UNSPECIFIED DistributedProtocol_Value = 0 + // Use this value if the user wishes to use MPI as the underlying protocol for her distributed training job + // MPI is a framework-agnostic distributed protocol. It has multiple implementations. Currently, we have only + // tested the OpenMPI implementation, which is the recommended implementation for Horovod. + DistributedProtocol_MPI DistributedProtocol_Value = 1 +) + +var DistributedProtocol_Value_name = map[int32]string{ + 0: "UNSPECIFIED", + 1: "MPI", +} + +var DistributedProtocol_Value_value = map[string]int32{ + "UNSPECIFIED": 0, + "MPI": 1, +} + +func (x DistributedProtocol_Value) String() string { + return proto.EnumName(DistributedProtocol_Value_name, int32(x)) +} + +func (DistributedProtocol_Value) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{5, 0} +} + +// The input mode that the algorithm supports. When using the File input mode, SageMaker downloads +// the training data from S3 to the provisioned ML storage Volume, and mounts the directory to docker +// volume for training container. When using Pipe input mode, Amazon SageMaker streams data directly +// from S3 to the container. +// See: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html +// For the input modes that different SageMaker algorithms support, see: +// https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html +type InputMode struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *InputMode) Reset() { *m = InputMode{} } +func (m *InputMode) String() string { return proto.CompactTextString(m) } +func (*InputMode) ProtoMessage() {} +func (*InputMode) Descriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{0} +} + +func (m *InputMode) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_InputMode.Unmarshal(m, b) +} +func (m *InputMode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_InputMode.Marshal(b, m, deterministic) +} +func (m *InputMode) XXX_Merge(src proto.Message) { + xxx_messageInfo_InputMode.Merge(m, src) +} +func (m *InputMode) XXX_Size() int { + return xxx_messageInfo_InputMode.Size(m) +} +func (m *InputMode) XXX_DiscardUnknown() { + xxx_messageInfo_InputMode.DiscardUnknown(m) +} + +var xxx_messageInfo_InputMode proto.InternalMessageInfo + +// The algorithm name is used for deciding which pre-built image to point to. +// This is only required for use cases where SageMaker's built-in algorithm mode is used. +// While we currently only support a subset of the algorithms, more will be added to the list. +// See: https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html +type AlgorithmName struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *AlgorithmName) Reset() { *m = AlgorithmName{} } +func (m *AlgorithmName) String() string { return proto.CompactTextString(m) } +func (*AlgorithmName) ProtoMessage() {} +func (*AlgorithmName) Descriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{1} +} + +func (m *AlgorithmName) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AlgorithmName.Unmarshal(m, b) +} +func (m *AlgorithmName) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AlgorithmName.Marshal(b, m, deterministic) +} +func (m *AlgorithmName) XXX_Merge(src proto.Message) { + xxx_messageInfo_AlgorithmName.Merge(m, src) +} +func (m *AlgorithmName) XXX_Size() int { + return xxx_messageInfo_AlgorithmName.Size(m) +} +func (m *AlgorithmName) XXX_DiscardUnknown() { + xxx_messageInfo_AlgorithmName.DiscardUnknown(m) +} + +var xxx_messageInfo_AlgorithmName proto.InternalMessageInfo + +// Specifies the type of file for input data. Different SageMaker built-in algorithms require different file types of input data +// See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html +// https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html +type InputContentType struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *InputContentType) Reset() { *m = InputContentType{} } +func (m *InputContentType) String() string { return proto.CompactTextString(m) } +func (*InputContentType) ProtoMessage() {} +func (*InputContentType) Descriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{2} +} + +func (m *InputContentType) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_InputContentType.Unmarshal(m, b) +} +func (m *InputContentType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_InputContentType.Marshal(b, m, deterministic) +} +func (m *InputContentType) XXX_Merge(src proto.Message) { + xxx_messageInfo_InputContentType.Merge(m, src) +} +func (m *InputContentType) XXX_Size() int { + return xxx_messageInfo_InputContentType.Size(m) +} +func (m *InputContentType) XXX_DiscardUnknown() { + xxx_messageInfo_InputContentType.DiscardUnknown(m) +} + +var xxx_messageInfo_InputContentType proto.InternalMessageInfo + +// Specifies a metric that the training algorithm writes to stderr or stdout. +// This object is a pass-through. +// See this for details: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDefinition.html +type MetricDefinition struct { + // User-defined name of the metric + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics + Regex string `protobuf:"bytes,2,opt,name=regex,proto3" json:"regex,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MetricDefinition) Reset() { *m = MetricDefinition{} } +func (m *MetricDefinition) String() string { return proto.CompactTextString(m) } +func (*MetricDefinition) ProtoMessage() {} +func (*MetricDefinition) Descriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{3} +} + +func (m *MetricDefinition) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MetricDefinition.Unmarshal(m, b) +} +func (m *MetricDefinition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MetricDefinition.Marshal(b, m, deterministic) +} +func (m *MetricDefinition) XXX_Merge(src proto.Message) { + xxx_messageInfo_MetricDefinition.Merge(m, src) +} +func (m *MetricDefinition) XXX_Size() int { + return xxx_messageInfo_MetricDefinition.Size(m) +} +func (m *MetricDefinition) XXX_DiscardUnknown() { + xxx_messageInfo_MetricDefinition.DiscardUnknown(m) +} + +var xxx_messageInfo_MetricDefinition proto.InternalMessageInfo + +func (m *MetricDefinition) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *MetricDefinition) GetRegex() string { + if m != nil { + return m.Regex + } + return "" +} + +// Specifies the training algorithm to be used in the training job +// This object is mostly a pass-through, with a couple of exceptions include: (1) in Flyte, users don't need to specify +// TrainingImage; either use the built-in algorithm mode by using Flytekit's Simple Training Job and specifying an algorithm +// name and an algorithm version or (2) when users want to supply custom algorithms they should set algorithm_name field to +// CUSTOM. In this case, the value of the algorithm_version field has no effect +// For pass-through use cases: refer to this AWS official document for more details +// https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html +type AlgorithmSpecification struct { + // The input mode can be either PIPE or FILE + InputMode InputMode_Value `protobuf:"varint,1,opt,name=input_mode,json=inputMode,proto3,enum=flyteidl.plugins.sagemaker.InputMode_Value" json:"input_mode,omitempty"` + // The algorithm name is used for deciding which pre-built image to point to + AlgorithmName AlgorithmName_Value `protobuf:"varint,2,opt,name=algorithm_name,json=algorithmName,proto3,enum=flyteidl.plugins.sagemaker.AlgorithmName_Value" json:"algorithm_name,omitempty"` + // The algorithm version field is used for deciding which pre-built image to point to + // This is only needed for use cases where SageMaker's built-in algorithm mode is chosen + AlgorithmVersion string `protobuf:"bytes,3,opt,name=algorithm_version,json=algorithmVersion,proto3" json:"algorithm_version,omitempty"` + // A list of metric definitions for SageMaker to evaluate/track on the progress of the training job + // See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html + // and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html + MetricDefinitions []*MetricDefinition `protobuf:"bytes,4,rep,name=metric_definitions,json=metricDefinitions,proto3" json:"metric_definitions,omitempty"` + // The content type of the input + // See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html + // https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html + InputContentType InputContentType_Value `protobuf:"varint,5,opt,name=input_content_type,json=inputContentType,proto3,enum=flyteidl.plugins.sagemaker.InputContentType_Value" json:"input_content_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *AlgorithmSpecification) Reset() { *m = AlgorithmSpecification{} } +func (m *AlgorithmSpecification) String() string { return proto.CompactTextString(m) } +func (*AlgorithmSpecification) ProtoMessage() {} +func (*AlgorithmSpecification) Descriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{4} +} + +func (m *AlgorithmSpecification) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_AlgorithmSpecification.Unmarshal(m, b) +} +func (m *AlgorithmSpecification) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_AlgorithmSpecification.Marshal(b, m, deterministic) +} +func (m *AlgorithmSpecification) XXX_Merge(src proto.Message) { + xxx_messageInfo_AlgorithmSpecification.Merge(m, src) +} +func (m *AlgorithmSpecification) XXX_Size() int { + return xxx_messageInfo_AlgorithmSpecification.Size(m) +} +func (m *AlgorithmSpecification) XXX_DiscardUnknown() { + xxx_messageInfo_AlgorithmSpecification.DiscardUnknown(m) +} + +var xxx_messageInfo_AlgorithmSpecification proto.InternalMessageInfo + +func (m *AlgorithmSpecification) GetInputMode() InputMode_Value { + if m != nil { + return m.InputMode + } + return InputMode_FILE +} + +func (m *AlgorithmSpecification) GetAlgorithmName() AlgorithmName_Value { + if m != nil { + return m.AlgorithmName + } + return AlgorithmName_CUSTOM +} + +func (m *AlgorithmSpecification) GetAlgorithmVersion() string { + if m != nil { + return m.AlgorithmVersion + } + return "" +} + +func (m *AlgorithmSpecification) GetMetricDefinitions() []*MetricDefinition { + if m != nil { + return m.MetricDefinitions + } + return nil +} + +func (m *AlgorithmSpecification) GetInputContentType() InputContentType_Value { + if m != nil { + return m.InputContentType + } + return InputContentType_TEXT_CSV +} + +// When enabling distributed training on a training job, the user should use this message to tell Flyte and SageMaker +// what kind of distributed protocol he/she wants to use to distribute the work. +type DistributedProtocol struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *DistributedProtocol) Reset() { *m = DistributedProtocol{} } +func (m *DistributedProtocol) String() string { return proto.CompactTextString(m) } +func (*DistributedProtocol) ProtoMessage() {} +func (*DistributedProtocol) Descriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{5} +} + +func (m *DistributedProtocol) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DistributedProtocol.Unmarshal(m, b) +} +func (m *DistributedProtocol) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DistributedProtocol.Marshal(b, m, deterministic) +} +func (m *DistributedProtocol) XXX_Merge(src proto.Message) { + xxx_messageInfo_DistributedProtocol.Merge(m, src) +} +func (m *DistributedProtocol) XXX_Size() int { + return xxx_messageInfo_DistributedProtocol.Size(m) +} +func (m *DistributedProtocol) XXX_DiscardUnknown() { + xxx_messageInfo_DistributedProtocol.DiscardUnknown(m) +} + +var xxx_messageInfo_DistributedProtocol proto.InternalMessageInfo + +// TrainingJobResourceConfig is a pass-through, specifying the instance type to use for the training job, the +// number of instances to launch, and the size of the ML storage volume the user wants to provision +// Refer to SageMaker official doc for more details: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html +type TrainingJobResourceConfig struct { + // The number of ML compute instances to use. For distributed training, provide a value greater than 1. + InstanceCount int64 `protobuf:"varint,1,opt,name=instance_count,json=instanceCount,proto3" json:"instance_count,omitempty"` + // The ML compute instance type + InstanceType string `protobuf:"bytes,2,opt,name=instance_type,json=instanceType,proto3" json:"instance_type,omitempty"` + // The size of the ML storage volume that you want to provision. + VolumeSizeInGb int64 `protobuf:"varint,3,opt,name=volume_size_in_gb,json=volumeSizeInGb,proto3" json:"volume_size_in_gb,omitempty"` + // When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training. + // If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this + // field should be set to the corresponding enum value + DistributedProtocol DistributedProtocol_Value `protobuf:"varint,4,opt,name=distributed_protocol,json=distributedProtocol,proto3,enum=flyteidl.plugins.sagemaker.DistributedProtocol_Value" json:"distributed_protocol,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *TrainingJobResourceConfig) Reset() { *m = TrainingJobResourceConfig{} } +func (m *TrainingJobResourceConfig) String() string { return proto.CompactTextString(m) } +func (*TrainingJobResourceConfig) ProtoMessage() {} +func (*TrainingJobResourceConfig) Descriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{6} +} + +func (m *TrainingJobResourceConfig) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_TrainingJobResourceConfig.Unmarshal(m, b) +} +func (m *TrainingJobResourceConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_TrainingJobResourceConfig.Marshal(b, m, deterministic) +} +func (m *TrainingJobResourceConfig) XXX_Merge(src proto.Message) { + xxx_messageInfo_TrainingJobResourceConfig.Merge(m, src) +} +func (m *TrainingJobResourceConfig) XXX_Size() int { + return xxx_messageInfo_TrainingJobResourceConfig.Size(m) +} +func (m *TrainingJobResourceConfig) XXX_DiscardUnknown() { + xxx_messageInfo_TrainingJobResourceConfig.DiscardUnknown(m) +} + +var xxx_messageInfo_TrainingJobResourceConfig proto.InternalMessageInfo + +func (m *TrainingJobResourceConfig) GetInstanceCount() int64 { + if m != nil { + return m.InstanceCount + } + return 0 +} + +func (m *TrainingJobResourceConfig) GetInstanceType() string { + if m != nil { + return m.InstanceType + } + return "" +} + +func (m *TrainingJobResourceConfig) GetVolumeSizeInGb() int64 { + if m != nil { + return m.VolumeSizeInGb + } + return 0 +} + +func (m *TrainingJobResourceConfig) GetDistributedProtocol() DistributedProtocol_Value { + if m != nil { + return m.DistributedProtocol + } + return DistributedProtocol_UNSPECIFIED +} + +// The spec of a training job. This is mostly a pass-through object +// https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html +type TrainingJob struct { + AlgorithmSpecification *AlgorithmSpecification `protobuf:"bytes,1,opt,name=algorithm_specification,json=algorithmSpecification,proto3" json:"algorithm_specification,omitempty"` + TrainingJobResourceConfig *TrainingJobResourceConfig `protobuf:"bytes,2,opt,name=training_job_resource_config,json=trainingJobResourceConfig,proto3" json:"training_job_resource_config,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *TrainingJob) Reset() { *m = TrainingJob{} } +func (m *TrainingJob) String() string { return proto.CompactTextString(m) } +func (*TrainingJob) ProtoMessage() {} +func (*TrainingJob) Descriptor() ([]byte, []int) { + return fileDescriptor_6a68f64d8fd9fe30, []int{7} +} + +func (m *TrainingJob) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_TrainingJob.Unmarshal(m, b) +} +func (m *TrainingJob) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_TrainingJob.Marshal(b, m, deterministic) +} +func (m *TrainingJob) XXX_Merge(src proto.Message) { + xxx_messageInfo_TrainingJob.Merge(m, src) +} +func (m *TrainingJob) XXX_Size() int { + return xxx_messageInfo_TrainingJob.Size(m) +} +func (m *TrainingJob) XXX_DiscardUnknown() { + xxx_messageInfo_TrainingJob.DiscardUnknown(m) +} + +var xxx_messageInfo_TrainingJob proto.InternalMessageInfo + +func (m *TrainingJob) GetAlgorithmSpecification() *AlgorithmSpecification { + if m != nil { + return m.AlgorithmSpecification + } + return nil +} + +func (m *TrainingJob) GetTrainingJobResourceConfig() *TrainingJobResourceConfig { + if m != nil { + return m.TrainingJobResourceConfig + } + return nil +} + +func init() { + proto.RegisterEnum("flyteidl.plugins.sagemaker.InputMode_Value", InputMode_Value_name, InputMode_Value_value) + proto.RegisterEnum("flyteidl.plugins.sagemaker.AlgorithmName_Value", AlgorithmName_Value_name, AlgorithmName_Value_value) + proto.RegisterEnum("flyteidl.plugins.sagemaker.InputContentType_Value", InputContentType_Value_name, InputContentType_Value_value) + proto.RegisterEnum("flyteidl.plugins.sagemaker.DistributedProtocol_Value", DistributedProtocol_Value_name, DistributedProtocol_Value_value) + proto.RegisterType((*InputMode)(nil), "flyteidl.plugins.sagemaker.InputMode") + proto.RegisterType((*AlgorithmName)(nil), "flyteidl.plugins.sagemaker.AlgorithmName") + proto.RegisterType((*InputContentType)(nil), "flyteidl.plugins.sagemaker.InputContentType") + proto.RegisterType((*MetricDefinition)(nil), "flyteidl.plugins.sagemaker.MetricDefinition") + proto.RegisterType((*AlgorithmSpecification)(nil), "flyteidl.plugins.sagemaker.AlgorithmSpecification") + proto.RegisterType((*DistributedProtocol)(nil), "flyteidl.plugins.sagemaker.DistributedProtocol") + proto.RegisterType((*TrainingJobResourceConfig)(nil), "flyteidl.plugins.sagemaker.TrainingJobResourceConfig") + proto.RegisterType((*TrainingJob)(nil), "flyteidl.plugins.sagemaker.TrainingJob") +} + +func init() { + proto.RegisterFile("flyteidl/plugins/sagemaker/training_job.proto", fileDescriptor_6a68f64d8fd9fe30) +} + +var fileDescriptor_6a68f64d8fd9fe30 = []byte{ + // 662 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x94, 0x5d, 0x4f, 0xdb, 0x3c, + 0x14, 0xc7, 0x5b, 0x5a, 0xde, 0x4e, 0xa1, 0x4f, 0x30, 0x3c, 0x3c, 0x85, 0x67, 0x9a, 0x58, 0xa6, + 0x49, 0x20, 0x46, 0xa2, 0x31, 0x4d, 0xda, 0xc5, 0xa6, 0x69, 0x94, 0x82, 0x82, 0x56, 0xa8, 0xd2, + 0x52, 0xa1, 0xed, 0x22, 0xcb, 0x8b, 0x6b, 0x3c, 0x12, 0x3b, 0x4a, 0x1c, 0x34, 0xf8, 0x44, 0xfb, + 0x7c, 0xbb, 0xde, 0xc5, 0x14, 0xe7, 0x85, 0xae, 0x2a, 0xdd, 0x9d, 0xf3, 0xf7, 0xf1, 0xc9, 0xf9, + 0xff, 0xce, 0xb1, 0xe1, 0x60, 0xe4, 0xdf, 0x09, 0x4c, 0x3d, 0x5f, 0x0f, 0xfd, 0x84, 0x50, 0x16, + 0xeb, 0xb1, 0x4d, 0x70, 0x60, 0xdf, 0xe0, 0x48, 0x17, 0x91, 0x4d, 0x19, 0x65, 0xc4, 0xfa, 0xc6, + 0x1d, 0x2d, 0x8c, 0xb8, 0xe0, 0x68, 0xbb, 0x08, 0xd7, 0xf2, 0x70, 0xad, 0x0c, 0xdf, 0x7e, 0x4a, + 0x38, 0x27, 0x3e, 0xd6, 0x65, 0xa4, 0x93, 0x8c, 0x74, 0x2f, 0x89, 0x6c, 0x41, 0x39, 0xcb, 0xce, + 0xaa, 0xbb, 0xb0, 0x6c, 0xb0, 0x30, 0x11, 0x5d, 0xee, 0x61, 0xf5, 0x7f, 0x98, 0x1f, 0xda, 0x7e, + 0x82, 0xd1, 0x12, 0xd4, 0x4f, 0x8c, 0x4f, 0x1d, 0xa5, 0x92, 0xae, 0x7a, 0x46, 0xaf, 0xa3, 0x54, + 0xd5, 0x57, 0xb0, 0xfa, 0xd1, 0x27, 0x3c, 0xa2, 0xe2, 0x3a, 0x38, 0xb7, 0x03, 0xac, 0xee, 0x14, + 0xd1, 0x00, 0x0b, 0xed, 0xcb, 0xfe, 0xe0, 0xa2, 0xab, 0x54, 0x50, 0x03, 0x16, 0xaf, 0x4e, 0x8f, + 0x2e, 0x2e, 0xfa, 0x03, 0xa5, 0xaa, 0xee, 0x81, 0x22, 0x93, 0xb7, 0x39, 0x13, 0x98, 0x89, 0xc1, + 0x5d, 0x88, 0xd5, 0x7f, 0x8b, 0x53, 0x2b, 0xb0, 0x34, 0xe8, 0x5c, 0x0d, 0xac, 0x76, 0x7f, 0xa8, + 0x54, 0xd4, 0x77, 0xa0, 0x74, 0xb1, 0x88, 0xa8, 0x7b, 0x8c, 0x47, 0x94, 0xd1, 0xb4, 0x42, 0x84, + 0xa0, 0xce, 0xec, 0x00, 0xb7, 0xaa, 0x3b, 0xd5, 0xdd, 0x65, 0x53, 0xae, 0xd1, 0x06, 0xcc, 0x47, + 0x98, 0xe0, 0xef, 0xad, 0x39, 0x29, 0x66, 0x1f, 0xea, 0x8f, 0x1a, 0x6c, 0x96, 0xc5, 0xf5, 0x43, + 0xec, 0xd2, 0x11, 0x75, 0xa5, 0x4d, 0x74, 0x06, 0x40, 0xd3, 0x1a, 0xac, 0x80, 0x7b, 0x59, 0xaa, + 0xe6, 0xe1, 0xbe, 0xf6, 0x38, 0x31, 0xad, 0xc4, 0xa1, 0xc9, 0x3a, 0xcd, 0x65, 0x5a, 0x08, 0x68, + 0x08, 0x4d, 0xbb, 0xf8, 0x8b, 0x25, 0x4b, 0x9b, 0x93, 0xf9, 0xf4, 0x59, 0xf9, 0xfe, 0x80, 0x96, + 0xe7, 0x5c, 0xb5, 0xc7, 0x45, 0xb4, 0x0f, 0x6b, 0x0f, 0x79, 0x6f, 0x71, 0x14, 0x53, 0xce, 0x5a, + 0x35, 0x69, 0x50, 0x29, 0x37, 0x86, 0x99, 0x8e, 0xbe, 0x00, 0x0a, 0x24, 0x29, 0xcb, 0x2b, 0x51, + 0xc5, 0xad, 0xfa, 0x4e, 0x6d, 0xb7, 0x71, 0xf8, 0x72, 0x56, 0x21, 0x93, 0x7c, 0xcd, 0xb5, 0x60, + 0x42, 0x89, 0xd1, 0x57, 0x40, 0x19, 0x2d, 0x37, 0x6b, 0x99, 0x25, 0xee, 0x42, 0xdc, 0x9a, 0x97, + 0x2e, 0x0f, 0xff, 0x4a, 0x6d, 0xac, 0xcf, 0xb9, 0x51, 0x85, 0x4e, 0xf6, 0xff, 0x2d, 0xac, 0x1f, + 0xd3, 0x58, 0x44, 0xd4, 0x49, 0x04, 0xf6, 0x7a, 0xe9, 0x10, 0xba, 0xdc, 0x57, 0x9f, 0x15, 0x63, + 0xf1, 0x0f, 0x34, 0x2e, 0xcf, 0xfb, 0xbd, 0x4e, 0xdb, 0x38, 0x31, 0x3a, 0xc7, 0x4a, 0x05, 0x2d, + 0x42, 0xad, 0xdb, 0x33, 0x94, 0xaa, 0xfa, 0xab, 0x0a, 0x5b, 0x83, 0x7c, 0xfa, 0xcf, 0xb8, 0x63, + 0xe2, 0x98, 0x27, 0x91, 0x8b, 0xdb, 0x9c, 0x8d, 0x28, 0x41, 0x2f, 0xa0, 0x49, 0x59, 0x2c, 0x6c, + 0xe6, 0x62, 0xcb, 0xe5, 0x09, 0x13, 0xb2, 0xd7, 0x35, 0x73, 0xb5, 0x50, 0xdb, 0xa9, 0x88, 0x9e, + 0x43, 0x29, 0x64, 0xde, 0xb2, 0x39, 0x5a, 0x29, 0xc4, 0xb4, 0x46, 0xb4, 0x07, 0x6b, 0xb7, 0xdc, + 0x4f, 0x02, 0x6c, 0xc5, 0xf4, 0x1e, 0x5b, 0x94, 0x59, 0xc4, 0x91, 0xfd, 0xa8, 0x99, 0xcd, 0x6c, + 0xa3, 0x4f, 0xef, 0xb1, 0xc1, 0x4e, 0x1d, 0x74, 0x0d, 0x1b, 0xde, 0x83, 0x1d, 0x2b, 0xcc, 0xfd, + 0xb4, 0xea, 0x12, 0xd9, 0x9b, 0x59, 0xc8, 0xa6, 0x60, 0xc8, 0xa9, 0xad, 0x7b, 0x53, 0x08, 0xfd, + 0xac, 0x42, 0x63, 0xcc, 0x3e, 0xba, 0x81, 0xff, 0x1e, 0x86, 0x26, 0x1e, 0x9f, 0x79, 0xe9, 0xbc, + 0x31, 0xbb, 0x5f, 0xd3, 0x6f, 0x8b, 0xb9, 0x69, 0x4f, 0xbf, 0x45, 0xb7, 0xf0, 0x64, 0xfc, 0xe1, + 0xb1, 0xa2, 0x1c, 0x7e, 0x3a, 0x27, 0x23, 0x4a, 0x24, 0xc5, 0xc6, 0x6c, 0xbb, 0x8f, 0xb6, 0xce, + 0xdc, 0x12, 0x8f, 0x6d, 0x1d, 0x7d, 0xf8, 0xfc, 0x9e, 0x50, 0x71, 0x9d, 0x38, 0x9a, 0xcb, 0x03, + 0x5d, 0x66, 0xe7, 0x11, 0xc9, 0x16, 0x7a, 0xf9, 0x4a, 0x12, 0xcc, 0xf4, 0xd0, 0x39, 0x20, 0x5c, + 0x9f, 0x7c, 0x38, 0x9d, 0x05, 0xd9, 0x91, 0xd7, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x50, 0x80, + 0x56, 0x45, 0x53, 0x05, 0x00, 0x00, +} diff --git a/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/training_job.pb.validate.go b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/training_job.pb.validate.go new file mode 100644 index 0000000000..19d1eb9a21 --- /dev/null +++ b/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker/training_job.pb.validate.go @@ -0,0 +1,617 @@ +// Code generated by protoc-gen-validate. DO NOT EDIT. +// source: flyteidl/plugins/sagemaker/training_job.proto + +package plugins + +import ( + "bytes" + "errors" + "fmt" + "net" + "net/mail" + "net/url" + "regexp" + "strings" + "time" + "unicode/utf8" + + "github.com/golang/protobuf/ptypes" +) + +// ensure the imports are used +var ( + _ = bytes.MinRead + _ = errors.New("") + _ = fmt.Print + _ = utf8.UTFMax + _ = (*regexp.Regexp)(nil) + _ = (*strings.Reader)(nil) + _ = net.IPv4len + _ = time.Duration(0) + _ = (*url.URL)(nil) + _ = (*mail.Address)(nil) + _ = ptypes.DynamicAny{} +) + +// define the regex for a UUID once up-front +var _training_job_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") + +// Validate checks the field values on InputMode with the rules defined in the +// proto definition for this message. If any rules are violated, an error is returned. +func (m *InputMode) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// InputModeValidationError is the validation error returned by +// InputMode.Validate if the designated constraints aren't met. +type InputModeValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e InputModeValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e InputModeValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e InputModeValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e InputModeValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e InputModeValidationError) ErrorName() string { return "InputModeValidationError" } + +// Error satisfies the builtin error interface +func (e InputModeValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sInputMode.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = InputModeValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = InputModeValidationError{} + +// Validate checks the field values on AlgorithmName with the rules defined in +// the proto definition for this message. If any rules are violated, an error +// is returned. +func (m *AlgorithmName) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// AlgorithmNameValidationError is the validation error returned by +// AlgorithmName.Validate if the designated constraints aren't met. +type AlgorithmNameValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AlgorithmNameValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AlgorithmNameValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AlgorithmNameValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AlgorithmNameValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AlgorithmNameValidationError) ErrorName() string { return "AlgorithmNameValidationError" } + +// Error satisfies the builtin error interface +func (e AlgorithmNameValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAlgorithmName.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AlgorithmNameValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AlgorithmNameValidationError{} + +// Validate checks the field values on InputContentType with the rules defined +// in the proto definition for this message. If any rules are violated, an +// error is returned. +func (m *InputContentType) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// InputContentTypeValidationError is the validation error returned by +// InputContentType.Validate if the designated constraints aren't met. +type InputContentTypeValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e InputContentTypeValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e InputContentTypeValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e InputContentTypeValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e InputContentTypeValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e InputContentTypeValidationError) ErrorName() string { return "InputContentTypeValidationError" } + +// Error satisfies the builtin error interface +func (e InputContentTypeValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sInputContentType.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = InputContentTypeValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = InputContentTypeValidationError{} + +// Validate checks the field values on MetricDefinition with the rules defined +// in the proto definition for this message. If any rules are violated, an +// error is returned. +func (m *MetricDefinition) Validate() error { + if m == nil { + return nil + } + + // no validation rules for Name + + // no validation rules for Regex + + return nil +} + +// MetricDefinitionValidationError is the validation error returned by +// MetricDefinition.Validate if the designated constraints aren't met. +type MetricDefinitionValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e MetricDefinitionValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e MetricDefinitionValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e MetricDefinitionValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e MetricDefinitionValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e MetricDefinitionValidationError) ErrorName() string { return "MetricDefinitionValidationError" } + +// Error satisfies the builtin error interface +func (e MetricDefinitionValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sMetricDefinition.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = MetricDefinitionValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = MetricDefinitionValidationError{} + +// Validate checks the field values on AlgorithmSpecification with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *AlgorithmSpecification) Validate() error { + if m == nil { + return nil + } + + // no validation rules for InputMode + + // no validation rules for AlgorithmName + + // no validation rules for AlgorithmVersion + + for idx, item := range m.GetMetricDefinitions() { + _, _ = idx, item + + if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return AlgorithmSpecificationValidationError{ + field: fmt.Sprintf("MetricDefinitions[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + // no validation rules for InputContentType + + return nil +} + +// AlgorithmSpecificationValidationError is the validation error returned by +// AlgorithmSpecification.Validate if the designated constraints aren't met. +type AlgorithmSpecificationValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AlgorithmSpecificationValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AlgorithmSpecificationValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AlgorithmSpecificationValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AlgorithmSpecificationValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AlgorithmSpecificationValidationError) ErrorName() string { + return "AlgorithmSpecificationValidationError" +} + +// Error satisfies the builtin error interface +func (e AlgorithmSpecificationValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAlgorithmSpecification.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AlgorithmSpecificationValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AlgorithmSpecificationValidationError{} + +// Validate checks the field values on DistributedProtocol with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *DistributedProtocol) Validate() error { + if m == nil { + return nil + } + + return nil +} + +// DistributedProtocolValidationError is the validation error returned by +// DistributedProtocol.Validate if the designated constraints aren't met. +type DistributedProtocolValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e DistributedProtocolValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e DistributedProtocolValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e DistributedProtocolValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e DistributedProtocolValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e DistributedProtocolValidationError) ErrorName() string { + return "DistributedProtocolValidationError" +} + +// Error satisfies the builtin error interface +func (e DistributedProtocolValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sDistributedProtocol.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = DistributedProtocolValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = DistributedProtocolValidationError{} + +// Validate checks the field values on TrainingJobResourceConfig with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *TrainingJobResourceConfig) Validate() error { + if m == nil { + return nil + } + + // no validation rules for InstanceCount + + // no validation rules for InstanceType + + // no validation rules for VolumeSizeInGb + + // no validation rules for DistributedProtocol + + return nil +} + +// TrainingJobResourceConfigValidationError is the validation error returned by +// TrainingJobResourceConfig.Validate if the designated constraints aren't met. +type TrainingJobResourceConfigValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e TrainingJobResourceConfigValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e TrainingJobResourceConfigValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e TrainingJobResourceConfigValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e TrainingJobResourceConfigValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e TrainingJobResourceConfigValidationError) ErrorName() string { + return "TrainingJobResourceConfigValidationError" +} + +// Error satisfies the builtin error interface +func (e TrainingJobResourceConfigValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sTrainingJobResourceConfig.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = TrainingJobResourceConfigValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = TrainingJobResourceConfigValidationError{} + +// Validate checks the field values on TrainingJob with the rules defined in +// the proto definition for this message. If any rules are violated, an error +// is returned. +func (m *TrainingJob) Validate() error { + if m == nil { + return nil + } + + if v, ok := interface{}(m.GetAlgorithmSpecification()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return TrainingJobValidationError{ + field: "AlgorithmSpecification", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if v, ok := interface{}(m.GetTrainingJobResourceConfig()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return TrainingJobValidationError{ + field: "TrainingJobResourceConfig", + reason: "embedded message failed validation", + cause: err, + } + } + } + + return nil +} + +// TrainingJobValidationError is the validation error returned by +// TrainingJob.Validate if the designated constraints aren't met. +type TrainingJobValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e TrainingJobValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e TrainingJobValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e TrainingJobValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e TrainingJobValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e TrainingJobValidationError) ErrorName() string { return "TrainingJobValidationError" } + +// Error satisfies the builtin error interface +func (e TrainingJobValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sTrainingJob.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = TrainingJobValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = TrainingJobValidationError{} diff --git a/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/HyperparameterTuningJobOuterClass.java b/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/HyperparameterTuningJobOuterClass.java new file mode 100644 index 0000000000..6c91927e51 --- /dev/null +++ b/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/HyperparameterTuningJobOuterClass.java @@ -0,0 +1,4497 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto + +package flyteidl.plugins.sagemaker; + +public final class HyperparameterTuningJobOuterClass { + private HyperparameterTuningJobOuterClass() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + public interface HyperparameterTuningJobOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + com.google.protobuf.MessageOrBuilder { + + /** + *
+     * The underlying training job that the hyperparameter tuning job will launch during the process
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + boolean hasTrainingJob(); + /** + *
+     * The underlying training job that the hyperparameter tuning job will launch during the process
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob getTrainingJob(); + /** + *
+     * The underlying training job that the hyperparameter tuning job will launch during the process
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobOrBuilder getTrainingJobOrBuilder(); + + /** + *
+     * The maximum number of training jobs that an hpo job can launch. For resource limit purpose.
+     * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+     * 
+ * + * int64 max_number_of_training_jobs = 2; + */ + long getMaxNumberOfTrainingJobs(); + + /** + *
+     * The maximum number of concurrent training job that an hpo job can launch
+     * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+     * 
+ * + * int64 max_parallel_training_jobs = 3; + */ + long getMaxParallelTrainingJobs(); + } + /** + *
+   * A pass-through for SageMaker's hyperparameter tuning job
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningJob} + */ + public static final class HyperparameterTuningJob extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + HyperparameterTuningJobOrBuilder { + private static final long serialVersionUID = 0L; + // Use HyperparameterTuningJob.newBuilder() to construct. + private HyperparameterTuningJob(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private HyperparameterTuningJob() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private HyperparameterTuningJob( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.Builder subBuilder = null; + if (trainingJob_ != null) { + subBuilder = trainingJob_.toBuilder(); + } + trainingJob_ = input.readMessage(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(trainingJob_); + trainingJob_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + + maxNumberOfTrainingJobs_ = input.readInt64(); + break; + } + case 24: { + + maxParallelTrainingJobs_ = input.readInt64(); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob.Builder.class); + } + + public static final int TRAINING_JOB_FIELD_NUMBER = 1; + private flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob trainingJob_; + /** + *
+     * The underlying training job that the hyperparameter tuning job will launch during the process
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public boolean hasTrainingJob() { + return trainingJob_ != null; + } + /** + *
+     * The underlying training job that the hyperparameter tuning job will launch during the process
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob getTrainingJob() { + return trainingJob_ == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.getDefaultInstance() : trainingJob_; + } + /** + *
+     * The underlying training job that the hyperparameter tuning job will launch during the process
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobOrBuilder getTrainingJobOrBuilder() { + return getTrainingJob(); + } + + public static final int MAX_NUMBER_OF_TRAINING_JOBS_FIELD_NUMBER = 2; + private long maxNumberOfTrainingJobs_; + /** + *
+     * The maximum number of training jobs that an hpo job can launch. For resource limit purpose.
+     * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+     * 
+ * + * int64 max_number_of_training_jobs = 2; + */ + public long getMaxNumberOfTrainingJobs() { + return maxNumberOfTrainingJobs_; + } + + public static final int MAX_PARALLEL_TRAINING_JOBS_FIELD_NUMBER = 3; + private long maxParallelTrainingJobs_; + /** + *
+     * The maximum number of concurrent training job that an hpo job can launch
+     * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+     * 
+ * + * int64 max_parallel_training_jobs = 3; + */ + public long getMaxParallelTrainingJobs() { + return maxParallelTrainingJobs_; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (trainingJob_ != null) { + output.writeMessage(1, getTrainingJob()); + } + if (maxNumberOfTrainingJobs_ != 0L) { + output.writeInt64(2, maxNumberOfTrainingJobs_); + } + if (maxParallelTrainingJobs_ != 0L) { + output.writeInt64(3, maxParallelTrainingJobs_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (trainingJob_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getTrainingJob()); + } + if (maxNumberOfTrainingJobs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size(2, maxNumberOfTrainingJobs_); + } + if (maxParallelTrainingJobs_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size(3, maxParallelTrainingJobs_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob other = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob) obj; + + if (hasTrainingJob() != other.hasTrainingJob()) return false; + if (hasTrainingJob()) { + if (!getTrainingJob() + .equals(other.getTrainingJob())) return false; + } + if (getMaxNumberOfTrainingJobs() + != other.getMaxNumberOfTrainingJobs()) return false; + if (getMaxParallelTrainingJobs() + != other.getMaxParallelTrainingJobs()) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasTrainingJob()) { + hash = (37 * hash) + TRAINING_JOB_FIELD_NUMBER; + hash = (53 * hash) + getTrainingJob().hashCode(); + } + hash = (37 * hash) + MAX_NUMBER_OF_TRAINING_JOBS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getMaxNumberOfTrainingJobs()); + hash = (37 * hash) + MAX_PARALLEL_TRAINING_JOBS_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getMaxParallelTrainingJobs()); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * A pass-through for SageMaker's hyperparameter tuning job
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningJob} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (trainingJobBuilder_ == null) { + trainingJob_ = null; + } else { + trainingJob_ = null; + trainingJobBuilder_ = null; + } + maxNumberOfTrainingJobs_ = 0L; + + maxParallelTrainingJobs_ = 0L; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob build() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob buildPartial() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob result = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob(this); + if (trainingJobBuilder_ == null) { + result.trainingJob_ = trainingJob_; + } else { + result.trainingJob_ = trainingJobBuilder_.build(); + } + result.maxNumberOfTrainingJobs_ = maxNumberOfTrainingJobs_; + result.maxParallelTrainingJobs_ = maxParallelTrainingJobs_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob) { + return mergeFrom((flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob other) { + if (other == flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob.getDefaultInstance()) return this; + if (other.hasTrainingJob()) { + mergeTrainingJob(other.getTrainingJob()); + } + if (other.getMaxNumberOfTrainingJobs() != 0L) { + setMaxNumberOfTrainingJobs(other.getMaxNumberOfTrainingJobs()); + } + if (other.getMaxParallelTrainingJobs() != 0L) { + setMaxParallelTrainingJobs(other.getMaxParallelTrainingJobs()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob trainingJob_; + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobOrBuilder> trainingJobBuilder_; + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public boolean hasTrainingJob() { + return trainingJobBuilder_ != null || trainingJob_ != null; + } + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob getTrainingJob() { + if (trainingJobBuilder_ == null) { + return trainingJob_ == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.getDefaultInstance() : trainingJob_; + } else { + return trainingJobBuilder_.getMessage(); + } + } + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public Builder setTrainingJob(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob value) { + if (trainingJobBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + trainingJob_ = value; + onChanged(); + } else { + trainingJobBuilder_.setMessage(value); + } + + return this; + } + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public Builder setTrainingJob( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.Builder builderForValue) { + if (trainingJobBuilder_ == null) { + trainingJob_ = builderForValue.build(); + onChanged(); + } else { + trainingJobBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public Builder mergeTrainingJob(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob value) { + if (trainingJobBuilder_ == null) { + if (trainingJob_ != null) { + trainingJob_ = + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.newBuilder(trainingJob_).mergeFrom(value).buildPartial(); + } else { + trainingJob_ = value; + } + onChanged(); + } else { + trainingJobBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public Builder clearTrainingJob() { + if (trainingJobBuilder_ == null) { + trainingJob_ = null; + onChanged(); + } else { + trainingJob_ = null; + trainingJobBuilder_ = null; + } + + return this; + } + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.Builder getTrainingJobBuilder() { + + onChanged(); + return getTrainingJobFieldBuilder().getBuilder(); + } + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobOrBuilder getTrainingJobOrBuilder() { + if (trainingJobBuilder_ != null) { + return trainingJobBuilder_.getMessageOrBuilder(); + } else { + return trainingJob_ == null ? + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.getDefaultInstance() : trainingJob_; + } + } + /** + *
+       * The underlying training job that the hyperparameter tuning job will launch during the process
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJob training_job = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobOrBuilder> + getTrainingJobFieldBuilder() { + if (trainingJobBuilder_ == null) { + trainingJobBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobOrBuilder>( + getTrainingJob(), + getParentForChildren(), + isClean()); + trainingJob_ = null; + } + return trainingJobBuilder_; + } + + private long maxNumberOfTrainingJobs_ ; + /** + *
+       * The maximum number of training jobs that an hpo job can launch. For resource limit purpose.
+       * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+       * 
+ * + * int64 max_number_of_training_jobs = 2; + */ + public long getMaxNumberOfTrainingJobs() { + return maxNumberOfTrainingJobs_; + } + /** + *
+       * The maximum number of training jobs that an hpo job can launch. For resource limit purpose.
+       * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+       * 
+ * + * int64 max_number_of_training_jobs = 2; + */ + public Builder setMaxNumberOfTrainingJobs(long value) { + + maxNumberOfTrainingJobs_ = value; + onChanged(); + return this; + } + /** + *
+       * The maximum number of training jobs that an hpo job can launch. For resource limit purpose.
+       * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+       * 
+ * + * int64 max_number_of_training_jobs = 2; + */ + public Builder clearMaxNumberOfTrainingJobs() { + + maxNumberOfTrainingJobs_ = 0L; + onChanged(); + return this; + } + + private long maxParallelTrainingJobs_ ; + /** + *
+       * The maximum number of concurrent training job that an hpo job can launch
+       * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+       * 
+ * + * int64 max_parallel_training_jobs = 3; + */ + public long getMaxParallelTrainingJobs() { + return maxParallelTrainingJobs_; + } + /** + *
+       * The maximum number of concurrent training job that an hpo job can launch
+       * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+       * 
+ * + * int64 max_parallel_training_jobs = 3; + */ + public Builder setMaxParallelTrainingJobs(long value) { + + maxParallelTrainingJobs_ = value; + onChanged(); + return this; + } + /** + *
+       * The maximum number of concurrent training job that an hpo job can launch
+       * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html
+       * 
+ * + * int64 max_parallel_training_jobs = 3; + */ + public Builder clearMaxParallelTrainingJobs() { + + maxParallelTrainingJobs_ = 0L; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningJob) + private static final flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob(); + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public HyperparameterTuningJob parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new HyperparameterTuningJob(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJob getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface HyperparameterTuningObjectiveTypeOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+   * with respect to the specified metric.
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType} + */ + public static final class HyperparameterTuningObjectiveType extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + HyperparameterTuningObjectiveTypeOrBuilder { + private static final long serialVersionUID = 0L; + // Use HyperparameterTuningObjectiveType.newBuilder() to construct. + private HyperparameterTuningObjectiveType(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private HyperparameterTuningObjectiveType() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private HyperparameterTuningObjectiveType( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Builder.class); + } + + /** + * Protobuf enum {@code flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value} + */ + public enum Value + implements com.google.protobuf.ProtocolMessageEnum { + /** + * MINIMIZE = 0; + */ + MINIMIZE(0), + /** + * MAXIMIZE = 1; + */ + MAXIMIZE(1), + UNRECOGNIZED(-1), + ; + + /** + * MINIMIZE = 0; + */ + public static final int MINIMIZE_VALUE = 0; + /** + * MAXIMIZE = 1; + */ + public static final int MAXIMIZE_VALUE = 1; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static Value valueOf(int value) { + return forNumber(value); + } + + public static Value forNumber(int value) { + switch (value) { + case 0: return MINIMIZE; + case 1: return MAXIMIZE; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Value> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Value findValueByNumber(int number) { + return Value.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.getDescriptor().getEnumTypes().get(0); + } + + private static final Value[] VALUES = values(); + + public static Value valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Value(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value) + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType other = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+     * with respect to the specified metric.
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveTypeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType build() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType buildPartial() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType result = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType) { + return mergeFrom((flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType other) { + if (other == flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType) + private static final flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType(); + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public HyperparameterTuningObjectiveType parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new HyperparameterTuningObjectiveType(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface HyperparameterTuningObjectiveOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + com.google.protobuf.MessageOrBuilder { + + /** + *
+     * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+     * with respect to the specified metric.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + int getObjectiveTypeValue(); + /** + *
+     * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+     * with respect to the specified metric.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value getObjectiveType(); + + /** + *
+     * The target metric name, which is the user-defined name of the metric specified in the
+     * training job's algorithm specification
+     * 
+ * + * string metric_name = 2; + */ + java.lang.String getMetricName(); + /** + *
+     * The target metric name, which is the user-defined name of the metric specified in the
+     * training job's algorithm specification
+     * 
+ * + * string metric_name = 2; + */ + com.google.protobuf.ByteString + getMetricNameBytes(); + } + /** + *
+   * The target metric and the objective of the hyperparameter tuning.
+   * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningObjective} + */ + public static final class HyperparameterTuningObjective extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + HyperparameterTuningObjectiveOrBuilder { + private static final long serialVersionUID = 0L; + // Use HyperparameterTuningObjective.newBuilder() to construct. + private HyperparameterTuningObjective(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private HyperparameterTuningObjective() { + objectiveType_ = 0; + metricName_ = ""; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private HyperparameterTuningObjective( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + int rawValue = input.readEnum(); + + objectiveType_ = rawValue; + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + metricName_ = s; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.Builder.class); + } + + public static final int OBJECTIVE_TYPE_FIELD_NUMBER = 1; + private int objectiveType_; + /** + *
+     * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+     * with respect to the specified metric.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + public int getObjectiveTypeValue() { + return objectiveType_; + } + /** + *
+     * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+     * with respect to the specified metric.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value getObjectiveType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value result = flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value.valueOf(objectiveType_); + return result == null ? flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value.UNRECOGNIZED : result; + } + + public static final int METRIC_NAME_FIELD_NUMBER = 2; + private volatile java.lang.Object metricName_; + /** + *
+     * The target metric name, which is the user-defined name of the metric specified in the
+     * training job's algorithm specification
+     * 
+ * + * string metric_name = 2; + */ + public java.lang.String getMetricName() { + java.lang.Object ref = metricName_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + metricName_ = s; + return s; + } + } + /** + *
+     * The target metric name, which is the user-defined name of the metric specified in the
+     * training job's algorithm specification
+     * 
+ * + * string metric_name = 2; + */ + public com.google.protobuf.ByteString + getMetricNameBytes() { + java.lang.Object ref = metricName_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + metricName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (objectiveType_ != flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value.MINIMIZE.getNumber()) { + output.writeEnum(1, objectiveType_); + } + if (!getMetricNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, metricName_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (objectiveType_ != flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value.MINIMIZE.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(1, objectiveType_); + } + if (!getMetricNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, metricName_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective other = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective) obj; + + if (objectiveType_ != other.objectiveType_) return false; + if (!getMetricName() + .equals(other.getMetricName())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + OBJECTIVE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + objectiveType_; + hash = (37 * hash) + METRIC_NAME_FIELD_NUMBER; + hash = (53 * hash) + getMetricName().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * The target metric and the objective of the hyperparameter tuning.
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningObjective} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + objectiveType_ = 0; + + metricName_ = ""; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective build() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective buildPartial() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective result = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective(this); + result.objectiveType_ = objectiveType_; + result.metricName_ = metricName_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective) { + return mergeFrom((flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective other) { + if (other == flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.getDefaultInstance()) return this; + if (other.objectiveType_ != 0) { + setObjectiveTypeValue(other.getObjectiveTypeValue()); + } + if (!other.getMetricName().isEmpty()) { + metricName_ = other.metricName_; + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private int objectiveType_ = 0; + /** + *
+       * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+       * with respect to the specified metric.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + public int getObjectiveTypeValue() { + return objectiveType_; + } + /** + *
+       * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+       * with respect to the specified metric.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + public Builder setObjectiveTypeValue(int value) { + objectiveType_ = value; + onChanged(); + return this; + } + /** + *
+       * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+       * with respect to the specified metric.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value getObjectiveType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value result = flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value.valueOf(objectiveType_); + return result == null ? flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value.UNRECOGNIZED : result; + } + /** + *
+       * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+       * with respect to the specified metric.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + public Builder setObjectiveType(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveType.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + objectiveType_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job
+       * with respect to the specified metric.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.Value objective_type = 1; + */ + public Builder clearObjectiveType() { + + objectiveType_ = 0; + onChanged(); + return this; + } + + private java.lang.Object metricName_ = ""; + /** + *
+       * The target metric name, which is the user-defined name of the metric specified in the
+       * training job's algorithm specification
+       * 
+ * + * string metric_name = 2; + */ + public java.lang.String getMetricName() { + java.lang.Object ref = metricName_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + metricName_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * The target metric name, which is the user-defined name of the metric specified in the
+       * training job's algorithm specification
+       * 
+ * + * string metric_name = 2; + */ + public com.google.protobuf.ByteString + getMetricNameBytes() { + java.lang.Object ref = metricName_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + metricName_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * The target metric name, which is the user-defined name of the metric specified in the
+       * training job's algorithm specification
+       * 
+ * + * string metric_name = 2; + */ + public Builder setMetricName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + metricName_ = value; + onChanged(); + return this; + } + /** + *
+       * The target metric name, which is the user-defined name of the metric specified in the
+       * training job's algorithm specification
+       * 
+ * + * string metric_name = 2; + */ + public Builder clearMetricName() { + + metricName_ = getDefaultInstance().getMetricName(); + onChanged(); + return this; + } + /** + *
+       * The target metric name, which is the user-defined name of the metric specified in the
+       * training job's algorithm specification
+       * 
+ * + * string metric_name = 2; + */ + public Builder setMetricNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + metricName_ = value; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningObjective) + private static final flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective(); + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public HyperparameterTuningObjective parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new HyperparameterTuningObjective(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface HyperparameterTuningStrategyOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * Setting the strategy used when searching in the hyperparameter space
+   * Refer this doc for more details:
+   * https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-automatic-model-tuning-now-supports-random-search-and-hyperparameter-scaling/
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningStrategy} + */ + public static final class HyperparameterTuningStrategy extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + HyperparameterTuningStrategyOrBuilder { + private static final long serialVersionUID = 0L; + // Use HyperparameterTuningStrategy.newBuilder() to construct. + private HyperparameterTuningStrategy(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private HyperparameterTuningStrategy() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private HyperparameterTuningStrategy( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Builder.class); + } + + /** + * Protobuf enum {@code flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value} + */ + public enum Value + implements com.google.protobuf.ProtocolMessageEnum { + /** + * BAYESIAN = 0; + */ + BAYESIAN(0), + /** + * RANDOM = 1; + */ + RANDOM(1), + UNRECOGNIZED(-1), + ; + + /** + * BAYESIAN = 0; + */ + public static final int BAYESIAN_VALUE = 0; + /** + * RANDOM = 1; + */ + public static final int RANDOM_VALUE = 1; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static Value valueOf(int value) { + return forNumber(value); + } + + public static Value forNumber(int value) { + switch (value) { + case 0: return BAYESIAN; + case 1: return RANDOM; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Value> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Value findValueByNumber(int number) { + return Value.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.getDescriptor().getEnumTypes().get(0); + } + + private static final Value[] VALUES = values(); + + public static Value valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Value(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value) + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy other = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * Setting the strategy used when searching in the hyperparameter space
+     * Refer this doc for more details:
+     * https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-automatic-model-tuning-now-supports-random-search-and-hyperparameter-scaling/
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningStrategy} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategyOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy build() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy buildPartial() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy result = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy) { + return mergeFrom((flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy other) { + if (other == flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningStrategy) + private static final flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy(); + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public HyperparameterTuningStrategy parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new HyperparameterTuningStrategy(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface TrainingJobEarlyStoppingTypeOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+   * a hyperparameter tuning job can be stopping early.
+   * Note that there's only a subset of built-in algorithms that supports early stopping.
+   * see: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-early-stopping.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType} + */ + public static final class TrainingJobEarlyStoppingType extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + TrainingJobEarlyStoppingTypeOrBuilder { + private static final long serialVersionUID = 0L; + // Use TrainingJobEarlyStoppingType.newBuilder() to construct. + private TrainingJobEarlyStoppingType(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private TrainingJobEarlyStoppingType() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private TrainingJobEarlyStoppingType( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Builder.class); + } + + /** + * Protobuf enum {@code flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value} + */ + public enum Value + implements com.google.protobuf.ProtocolMessageEnum { + /** + * OFF = 0; + */ + OFF(0), + /** + * AUTO = 1; + */ + AUTO(1), + UNRECOGNIZED(-1), + ; + + /** + * OFF = 0; + */ + public static final int OFF_VALUE = 0; + /** + * AUTO = 1; + */ + public static final int AUTO_VALUE = 1; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static Value valueOf(int value) { + return forNumber(value); + } + + public static Value forNumber(int value) { + switch (value) { + case 0: return OFF; + case 1: return AUTO; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Value> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Value findValueByNumber(int number) { + return Value.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.getDescriptor().getEnumTypes().get(0); + } + + private static final Value[] VALUES = values(); + + public static Value valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Value(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value) + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType other = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+     * a hyperparameter tuning job can be stopping early.
+     * Note that there's only a subset of built-in algorithms that supports early stopping.
+     * see: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-early-stopping.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingTypeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType build() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType buildPartial() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType result = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType) { + return mergeFrom((flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType other) { + if (other == flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType) + private static final flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType(); + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public TrainingJobEarlyStoppingType parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new TrainingJobEarlyStoppingType(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface HyperparameterTuningJobConfigOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + com.google.protobuf.MessageOrBuilder { + + /** + *
+     * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+     * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + boolean hasHyperparameterRanges(); + /** + *
+     * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+     * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges getHyperparameterRanges(); + /** + *
+     * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+     * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangesOrBuilder getHyperparameterRangesOrBuilder(); + + /** + *
+     * Setting the strategy used when searching in the hyperparameter space
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + int getTuningStrategyValue(); + /** + *
+     * Setting the strategy used when searching in the hyperparameter space
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value getTuningStrategy(); + + /** + *
+     * The target metric and the objective of the hyperparameter tuning.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + boolean hasTuningObjective(); + /** + *
+     * The target metric and the objective of the hyperparameter tuning.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective getTuningObjective(); + /** + *
+     * The target metric and the objective of the hyperparameter tuning.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveOrBuilder getTuningObjectiveOrBuilder(); + + /** + *
+     * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+     * a hyperparameter tuning job can be stopping early.
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + int getTrainingJobEarlyStoppingTypeValue(); + /** + *
+     * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+     * a hyperparameter tuning job can be stopping early.
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value getTrainingJobEarlyStoppingType(); + } + /** + *
+   * The specification of the hyperparameter tuning process
+   * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-ex-tuning-job.html#automatic-model-tuning-ex-low-tuning-config
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig} + */ + public static final class HyperparameterTuningJobConfig extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + HyperparameterTuningJobConfigOrBuilder { + private static final long serialVersionUID = 0L; + // Use HyperparameterTuningJobConfig.newBuilder() to construct. + private HyperparameterTuningJobConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private HyperparameterTuningJobConfig() { + tuningStrategy_ = 0; + trainingJobEarlyStoppingType_ = 0; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private HyperparameterTuningJobConfig( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.Builder subBuilder = null; + if (hyperparameterRanges_ != null) { + subBuilder = hyperparameterRanges_.toBuilder(); + } + hyperparameterRanges_ = input.readMessage(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(hyperparameterRanges_); + hyperparameterRanges_ = subBuilder.buildPartial(); + } + + break; + } + case 16: { + int rawValue = input.readEnum(); + + tuningStrategy_ = rawValue; + break; + } + case 26: { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.Builder subBuilder = null; + if (tuningObjective_ != null) { + subBuilder = tuningObjective_.toBuilder(); + } + tuningObjective_ = input.readMessage(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(tuningObjective_); + tuningObjective_ = subBuilder.buildPartial(); + } + + break; + } + case 32: { + int rawValue = input.readEnum(); + + trainingJobEarlyStoppingType_ = rawValue; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig.Builder.class); + } + + public static final int HYPERPARAMETER_RANGES_FIELD_NUMBER = 1; + private flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges hyperparameterRanges_; + /** + *
+     * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+     * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public boolean hasHyperparameterRanges() { + return hyperparameterRanges_ != null; + } + /** + *
+     * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+     * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges getHyperparameterRanges() { + return hyperparameterRanges_ == null ? flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.getDefaultInstance() : hyperparameterRanges_; + } + /** + *
+     * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+     * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangesOrBuilder getHyperparameterRangesOrBuilder() { + return getHyperparameterRanges(); + } + + public static final int TUNING_STRATEGY_FIELD_NUMBER = 2; + private int tuningStrategy_; + /** + *
+     * Setting the strategy used when searching in the hyperparameter space
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + public int getTuningStrategyValue() { + return tuningStrategy_; + } + /** + *
+     * Setting the strategy used when searching in the hyperparameter space
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value getTuningStrategy() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value result = flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value.valueOf(tuningStrategy_); + return result == null ? flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value.UNRECOGNIZED : result; + } + + public static final int TUNING_OBJECTIVE_FIELD_NUMBER = 3; + private flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective tuningObjective_; + /** + *
+     * The target metric and the objective of the hyperparameter tuning.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public boolean hasTuningObjective() { + return tuningObjective_ != null; + } + /** + *
+     * The target metric and the objective of the hyperparameter tuning.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective getTuningObjective() { + return tuningObjective_ == null ? flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.getDefaultInstance() : tuningObjective_; + } + /** + *
+     * The target metric and the objective of the hyperparameter tuning.
+     * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveOrBuilder getTuningObjectiveOrBuilder() { + return getTuningObjective(); + } + + public static final int TRAINING_JOB_EARLY_STOPPING_TYPE_FIELD_NUMBER = 4; + private int trainingJobEarlyStoppingType_; + /** + *
+     * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+     * a hyperparameter tuning job can be stopping early.
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + public int getTrainingJobEarlyStoppingTypeValue() { + return trainingJobEarlyStoppingType_; + } + /** + *
+     * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+     * a hyperparameter tuning job can be stopping early.
+     * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value getTrainingJobEarlyStoppingType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value result = flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value.valueOf(trainingJobEarlyStoppingType_); + return result == null ? flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value.UNRECOGNIZED : result; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (hyperparameterRanges_ != null) { + output.writeMessage(1, getHyperparameterRanges()); + } + if (tuningStrategy_ != flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value.BAYESIAN.getNumber()) { + output.writeEnum(2, tuningStrategy_); + } + if (tuningObjective_ != null) { + output.writeMessage(3, getTuningObjective()); + } + if (trainingJobEarlyStoppingType_ != flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value.OFF.getNumber()) { + output.writeEnum(4, trainingJobEarlyStoppingType_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (hyperparameterRanges_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getHyperparameterRanges()); + } + if (tuningStrategy_ != flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value.BAYESIAN.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(2, tuningStrategy_); + } + if (tuningObjective_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, getTuningObjective()); + } + if (trainingJobEarlyStoppingType_ != flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value.OFF.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(4, trainingJobEarlyStoppingType_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig other = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig) obj; + + if (hasHyperparameterRanges() != other.hasHyperparameterRanges()) return false; + if (hasHyperparameterRanges()) { + if (!getHyperparameterRanges() + .equals(other.getHyperparameterRanges())) return false; + } + if (tuningStrategy_ != other.tuningStrategy_) return false; + if (hasTuningObjective() != other.hasTuningObjective()) return false; + if (hasTuningObjective()) { + if (!getTuningObjective() + .equals(other.getTuningObjective())) return false; + } + if (trainingJobEarlyStoppingType_ != other.trainingJobEarlyStoppingType_) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasHyperparameterRanges()) { + hash = (37 * hash) + HYPERPARAMETER_RANGES_FIELD_NUMBER; + hash = (53 * hash) + getHyperparameterRanges().hashCode(); + } + hash = (37 * hash) + TUNING_STRATEGY_FIELD_NUMBER; + hash = (53 * hash) + tuningStrategy_; + if (hasTuningObjective()) { + hash = (37 * hash) + TUNING_OBJECTIVE_FIELD_NUMBER; + hash = (53 * hash) + getTuningObjective().hashCode(); + } + hash = (37 * hash) + TRAINING_JOB_EARLY_STOPPING_TYPE_FIELD_NUMBER; + hash = (53 * hash) + trainingJobEarlyStoppingType_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * The specification of the hyperparameter tuning process
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-ex-tuning-job.html#automatic-model-tuning-ex-low-tuning-config
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig.class, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (hyperparameterRangesBuilder_ == null) { + hyperparameterRanges_ = null; + } else { + hyperparameterRanges_ = null; + hyperparameterRangesBuilder_ = null; + } + tuningStrategy_ = 0; + + if (tuningObjectiveBuilder_ == null) { + tuningObjective_ = null; + } else { + tuningObjective_ = null; + tuningObjectiveBuilder_ = null; + } + trainingJobEarlyStoppingType_ = 0; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig build() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig buildPartial() { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig result = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig(this); + if (hyperparameterRangesBuilder_ == null) { + result.hyperparameterRanges_ = hyperparameterRanges_; + } else { + result.hyperparameterRanges_ = hyperparameterRangesBuilder_.build(); + } + result.tuningStrategy_ = tuningStrategy_; + if (tuningObjectiveBuilder_ == null) { + result.tuningObjective_ = tuningObjective_; + } else { + result.tuningObjective_ = tuningObjectiveBuilder_.build(); + } + result.trainingJobEarlyStoppingType_ = trainingJobEarlyStoppingType_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig) { + return mergeFrom((flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig other) { + if (other == flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig.getDefaultInstance()) return this; + if (other.hasHyperparameterRanges()) { + mergeHyperparameterRanges(other.getHyperparameterRanges()); + } + if (other.tuningStrategy_ != 0) { + setTuningStrategyValue(other.getTuningStrategyValue()); + } + if (other.hasTuningObjective()) { + mergeTuningObjective(other.getTuningObjective()); + } + if (other.trainingJobEarlyStoppingType_ != 0) { + setTrainingJobEarlyStoppingTypeValue(other.getTrainingJobEarlyStoppingTypeValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges hyperparameterRanges_; + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangesOrBuilder> hyperparameterRangesBuilder_; + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public boolean hasHyperparameterRanges() { + return hyperparameterRangesBuilder_ != null || hyperparameterRanges_ != null; + } + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges getHyperparameterRanges() { + if (hyperparameterRangesBuilder_ == null) { + return hyperparameterRanges_ == null ? flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.getDefaultInstance() : hyperparameterRanges_; + } else { + return hyperparameterRangesBuilder_.getMessage(); + } + } + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public Builder setHyperparameterRanges(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges value) { + if (hyperparameterRangesBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + hyperparameterRanges_ = value; + onChanged(); + } else { + hyperparameterRangesBuilder_.setMessage(value); + } + + return this; + } + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public Builder setHyperparameterRanges( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.Builder builderForValue) { + if (hyperparameterRangesBuilder_ == null) { + hyperparameterRanges_ = builderForValue.build(); + onChanged(); + } else { + hyperparameterRangesBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public Builder mergeHyperparameterRanges(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges value) { + if (hyperparameterRangesBuilder_ == null) { + if (hyperparameterRanges_ != null) { + hyperparameterRanges_ = + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.newBuilder(hyperparameterRanges_).mergeFrom(value).buildPartial(); + } else { + hyperparameterRanges_ = value; + } + onChanged(); + } else { + hyperparameterRangesBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public Builder clearHyperparameterRanges() { + if (hyperparameterRangesBuilder_ == null) { + hyperparameterRanges_ = null; + onChanged(); + } else { + hyperparameterRanges_ = null; + hyperparameterRangesBuilder_ = null; + } + + return this; + } + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.Builder getHyperparameterRangesBuilder() { + + onChanged(); + return getHyperparameterRangesFieldBuilder().getBuilder(); + } + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangesOrBuilder getHyperparameterRangesOrBuilder() { + if (hyperparameterRangesBuilder_ != null) { + return hyperparameterRangesBuilder_.getMessageOrBuilder(); + } else { + return hyperparameterRanges_ == null ? + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.getDefaultInstance() : hyperparameterRanges_; + } + } + /** + *
+       * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+       * 
+ * + * .flyteidl.plugins.sagemaker.ParameterRanges hyperparameter_ranges = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangesOrBuilder> + getHyperparameterRangesFieldBuilder() { + if (hyperparameterRangesBuilder_ == null) { + hyperparameterRangesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangesOrBuilder>( + getHyperparameterRanges(), + getParentForChildren(), + isClean()); + hyperparameterRanges_ = null; + } + return hyperparameterRangesBuilder_; + } + + private int tuningStrategy_ = 0; + /** + *
+       * Setting the strategy used when searching in the hyperparameter space
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + public int getTuningStrategyValue() { + return tuningStrategy_; + } + /** + *
+       * Setting the strategy used when searching in the hyperparameter space
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + public Builder setTuningStrategyValue(int value) { + tuningStrategy_ = value; + onChanged(); + return this; + } + /** + *
+       * Setting the strategy used when searching in the hyperparameter space
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value getTuningStrategy() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value result = flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value.valueOf(tuningStrategy_); + return result == null ? flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value.UNRECOGNIZED : result; + } + /** + *
+       * Setting the strategy used when searching in the hyperparameter space
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + public Builder setTuningStrategy(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningStrategy.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + tuningStrategy_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * Setting the strategy used when searching in the hyperparameter space
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.Value tuning_strategy = 2; + */ + public Builder clearTuningStrategy() { + + tuningStrategy_ = 0; + onChanged(); + return this; + } + + private flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective tuningObjective_; + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.Builder, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveOrBuilder> tuningObjectiveBuilder_; + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public boolean hasTuningObjective() { + return tuningObjectiveBuilder_ != null || tuningObjective_ != null; + } + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective getTuningObjective() { + if (tuningObjectiveBuilder_ == null) { + return tuningObjective_ == null ? flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.getDefaultInstance() : tuningObjective_; + } else { + return tuningObjectiveBuilder_.getMessage(); + } + } + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public Builder setTuningObjective(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective value) { + if (tuningObjectiveBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + tuningObjective_ = value; + onChanged(); + } else { + tuningObjectiveBuilder_.setMessage(value); + } + + return this; + } + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public Builder setTuningObjective( + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.Builder builderForValue) { + if (tuningObjectiveBuilder_ == null) { + tuningObjective_ = builderForValue.build(); + onChanged(); + } else { + tuningObjectiveBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public Builder mergeTuningObjective(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective value) { + if (tuningObjectiveBuilder_ == null) { + if (tuningObjective_ != null) { + tuningObjective_ = + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.newBuilder(tuningObjective_).mergeFrom(value).buildPartial(); + } else { + tuningObjective_ = value; + } + onChanged(); + } else { + tuningObjectiveBuilder_.mergeFrom(value); + } + + return this; + } + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public Builder clearTuningObjective() { + if (tuningObjectiveBuilder_ == null) { + tuningObjective_ = null; + onChanged(); + } else { + tuningObjective_ = null; + tuningObjectiveBuilder_ = null; + } + + return this; + } + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.Builder getTuningObjectiveBuilder() { + + onChanged(); + return getTuningObjectiveFieldBuilder().getBuilder(); + } + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveOrBuilder getTuningObjectiveOrBuilder() { + if (tuningObjectiveBuilder_ != null) { + return tuningObjectiveBuilder_.getMessageOrBuilder(); + } else { + return tuningObjective_ == null ? + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.getDefaultInstance() : tuningObjective_; + } + } + /** + *
+       * The target metric and the objective of the hyperparameter tuning.
+       * 
+ * + * .flyteidl.plugins.sagemaker.HyperparameterTuningObjective tuning_objective = 3; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.Builder, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveOrBuilder> + getTuningObjectiveFieldBuilder() { + if (tuningObjectiveBuilder_ == null) { + tuningObjectiveBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjective.Builder, flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningObjectiveOrBuilder>( + getTuningObjective(), + getParentForChildren(), + isClean()); + tuningObjective_ = null; + } + return tuningObjectiveBuilder_; + } + + private int trainingJobEarlyStoppingType_ = 0; + /** + *
+       * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+       * a hyperparameter tuning job can be stopping early.
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + public int getTrainingJobEarlyStoppingTypeValue() { + return trainingJobEarlyStoppingType_; + } + /** + *
+       * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+       * a hyperparameter tuning job can be stopping early.
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + public Builder setTrainingJobEarlyStoppingTypeValue(int value) { + trainingJobEarlyStoppingType_ = value; + onChanged(); + return this; + } + /** + *
+       * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+       * a hyperparameter tuning job can be stopping early.
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value getTrainingJobEarlyStoppingType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value result = flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value.valueOf(trainingJobEarlyStoppingType_); + return result == null ? flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value.UNRECOGNIZED : result; + } + /** + *
+       * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+       * a hyperparameter tuning job can be stopping early.
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + public Builder setTrainingJobEarlyStoppingType(flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.TrainingJobEarlyStoppingType.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + trainingJobEarlyStoppingType_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * When the training jobs launched by the hyperparameter tuning job are not improving significantly,
+       * a hyperparameter tuning job can be stopping early.
+       * 
+ * + * .flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; + */ + public Builder clearTrainingJobEarlyStoppingType() { + + trainingJobEarlyStoppingType_ = 0; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterTuningJobConfig) + private static final flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig(); + } + + public static flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public HyperparameterTuningJobConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new HyperparameterTuningJobConfig(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.HyperparameterTuningJobOuterClass.HyperparameterTuningJobConfig getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n:flyteidl/plugins/sagemaker/hyperparame" + + "ter_tuning_job.proto\022\032flyteidl.plugins.s" + + "agemaker\0321flyteidl/plugins/sagemaker/par" + + "ameter_ranges.proto\032-flyteidl/plugins/sa" + + "gemaker/training_job.proto\"\241\001\n\027Hyperpara" + + "meterTuningJob\022=\n\014training_job\030\001 \001(\0132\'.f" + + "lyteidl.plugins.sagemaker.TrainingJob\022#\n" + + "\033max_number_of_training_jobs\030\002 \001(\003\022\"\n\032ma" + + "x_parallel_training_jobs\030\003 \001(\003\"H\n!Hyperp" + + "arameterTuningObjectiveType\"#\n\005Value\022\014\n\010" + + "MINIMIZE\020\000\022\014\n\010MAXIMIZE\020\001\"\221\001\n\035Hyperparame" + + "terTuningObjective\022[\n\016objective_type\030\001 \001" + + "(\0162C.flyteidl.plugins.sagemaker.Hyperpar" + + "ameterTuningObjectiveType.Value\022\023\n\013metri" + + "c_name\030\002 \001(\t\"A\n\034HyperparameterTuningStra" + + "tegy\"!\n\005Value\022\014\n\010BAYESIAN\020\000\022\n\n\006RANDOM\020\001\"" + + ":\n\034TrainingJobEarlyStoppingType\"\032\n\005Value" + + "\022\007\n\003OFF\020\000\022\010\n\004AUTO\020\001\"\203\003\n\035HyperparameterTu" + + "ningJobConfig\022J\n\025hyperparameter_ranges\030\001" + + " \001(\0132+.flyteidl.plugins.sagemaker.Parame" + + "terRanges\022W\n\017tuning_strategy\030\002 \001(\0162>.fly" + + "teidl.plugins.sagemaker.HyperparameterTu" + + "ningStrategy.Value\022S\n\020tuning_objective\030\003" + + " \001(\01329.flyteidl.plugins.sagemaker.Hyperp" + + "arameterTuningObjective\022h\n training_job_" + + "early_stopping_type\030\004 \001(\0162>.flyteidl.plu" + + "gins.sagemaker.TrainingJobEarlyStoppingT" + + "ype.ValueB?Z=github.com/flyteorg/flyte/f" + + "lyteidl/gen/pb-go/flyteidl/pluginsb\006prot" + + "o3" + }; + com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { + public com.google.protobuf.ExtensionRegistry assignDescriptors( + com.google.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + return null; + } + }; + com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.getDescriptor(), + flyteidl.plugins.sagemaker.TrainingJobOuterClass.getDescriptor(), + }, assigner); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJob_descriptor, + new java.lang.String[] { "TrainingJob", "MaxNumberOfTrainingJobs", "MaxParallelTrainingJobs", }); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_descriptor = + getDescriptor().getMessageTypes().get(1); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjectiveType_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningObjective_descriptor, + new java.lang.String[] { "ObjectiveType", "MetricName", }); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_descriptor = + getDescriptor().getMessageTypes().get(3); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningStrategy_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_TrainingJobEarlyStoppingType_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_HyperparameterTuningJobConfig_descriptor, + new java.lang.String[] { "HyperparameterRanges", "TuningStrategy", "TuningObjective", "TrainingJobEarlyStoppingType", }); + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.getDescriptor(); + flyteidl.plugins.sagemaker.TrainingJobOuterClass.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/ParameterRangesOuterClass.java b/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/ParameterRangesOuterClass.java new file mode 100644 index 0000000000..4c7c23a438 --- /dev/null +++ b/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/ParameterRangesOuterClass.java @@ -0,0 +1,4468 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/parameter_ranges.proto + +package flyteidl.plugins.sagemaker; + +public final class ParameterRangesOuterClass { + private ParameterRangesOuterClass() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + public interface HyperparameterScalingTypeOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.HyperparameterScalingType) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * HyperparameterScalingType defines the way to increase or decrease the value of the hyperparameter
+   * For details, refer to: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+   * See examples of these scaling type, refer to: https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-automatic-model-tuning-now-supports-random-search-and-hyperparameter-scaling/
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterScalingType} + */ + public static final class HyperparameterScalingType extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.HyperparameterScalingType) + HyperparameterScalingTypeOrBuilder { + private static final long serialVersionUID = 0L; + // Use HyperparameterScalingType.newBuilder() to construct. + private HyperparameterScalingType(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private HyperparameterScalingType() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private HyperparameterScalingType( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Builder.class); + } + + /** + * Protobuf enum {@code flyteidl.plugins.sagemaker.HyperparameterScalingType.Value} + */ + public enum Value + implements com.google.protobuf.ProtocolMessageEnum { + /** + * AUTO = 0; + */ + AUTO(0), + /** + * LINEAR = 1; + */ + LINEAR(1), + /** + * LOGARITHMIC = 2; + */ + LOGARITHMIC(2), + /** + * REVERSELOGARITHMIC = 3; + */ + REVERSELOGARITHMIC(3), + UNRECOGNIZED(-1), + ; + + /** + * AUTO = 0; + */ + public static final int AUTO_VALUE = 0; + /** + * LINEAR = 1; + */ + public static final int LINEAR_VALUE = 1; + /** + * LOGARITHMIC = 2; + */ + public static final int LOGARITHMIC_VALUE = 2; + /** + * REVERSELOGARITHMIC = 3; + */ + public static final int REVERSELOGARITHMIC_VALUE = 3; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static Value valueOf(int value) { + return forNumber(value); + } + + public static Value forNumber(int value) { + switch (value) { + case 0: return AUTO; + case 1: return LINEAR; + case 2: return LOGARITHMIC; + case 3: return REVERSELOGARITHMIC; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Value> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Value findValueByNumber(int number) { + return Value.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.getDescriptor().getEnumTypes().get(0); + } + + private static final Value[] VALUES = values(); + + public static Value valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Value(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.plugins.sagemaker.HyperparameterScalingType.Value) + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType other = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * HyperparameterScalingType defines the way to increase or decrease the value of the hyperparameter
+     * For details, refer to: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+     * See examples of these scaling type, refer to: https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-automatic-model-tuning-now-supports-random-search-and-hyperparameter-scaling/
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.HyperparameterScalingType} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.HyperparameterScalingType) + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingTypeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType build() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType buildPartial() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType result = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType) { + return mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType other) { + if (other == flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.HyperparameterScalingType) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.HyperparameterScalingType) + private static final flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType(); + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public HyperparameterScalingType parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new HyperparameterScalingType(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ContinuousParameterRangeOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.ContinuousParameterRange) + com.google.protobuf.MessageOrBuilder { + + /** + * double max_value = 1; + */ + double getMaxValue(); + + /** + * double min_value = 2; + */ + double getMinValue(); + + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + int getScalingTypeValue(); + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value getScalingType(); + } + /** + *
+   * ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing
+   * users to specify the search space of a floating-point hyperparameter
+   * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.ContinuousParameterRange} + */ + public static final class ContinuousParameterRange extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.ContinuousParameterRange) + ContinuousParameterRangeOrBuilder { + private static final long serialVersionUID = 0L; + // Use ContinuousParameterRange.newBuilder() to construct. + private ContinuousParameterRange(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private ContinuousParameterRange() { + scalingType_ = 0; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private ContinuousParameterRange( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 9: { + + maxValue_ = input.readDouble(); + break; + } + case 17: { + + minValue_ = input.readDouble(); + break; + } + case 24: { + int rawValue = input.readEnum(); + + scalingType_ = rawValue; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.Builder.class); + } + + public static final int MAX_VALUE_FIELD_NUMBER = 1; + private double maxValue_; + /** + * double max_value = 1; + */ + public double getMaxValue() { + return maxValue_; + } + + public static final int MIN_VALUE_FIELD_NUMBER = 2; + private double minValue_; + /** + * double min_value = 2; + */ + public double getMinValue() { + return minValue_; + } + + public static final int SCALING_TYPE_FIELD_NUMBER = 3; + private int scalingType_; + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public int getScalingTypeValue() { + return scalingType_; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value getScalingType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value result = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.valueOf(scalingType_); + return result == null ? flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.UNRECOGNIZED : result; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (maxValue_ != 0D) { + output.writeDouble(1, maxValue_); + } + if (minValue_ != 0D) { + output.writeDouble(2, minValue_); + } + if (scalingType_ != flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.AUTO.getNumber()) { + output.writeEnum(3, scalingType_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (maxValue_ != 0D) { + size += com.google.protobuf.CodedOutputStream + .computeDoubleSize(1, maxValue_); + } + if (minValue_ != 0D) { + size += com.google.protobuf.CodedOutputStream + .computeDoubleSize(2, minValue_); + } + if (scalingType_ != flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.AUTO.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(3, scalingType_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange other = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) obj; + + if (java.lang.Double.doubleToLongBits(getMaxValue()) + != java.lang.Double.doubleToLongBits( + other.getMaxValue())) return false; + if (java.lang.Double.doubleToLongBits(getMinValue()) + != java.lang.Double.doubleToLongBits( + other.getMinValue())) return false; + if (scalingType_ != other.scalingType_) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MAX_VALUE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + java.lang.Double.doubleToLongBits(getMaxValue())); + hash = (37 * hash) + MIN_VALUE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + java.lang.Double.doubleToLongBits(getMinValue())); + hash = (37 * hash) + SCALING_TYPE_FIELD_NUMBER; + hash = (53 * hash) + scalingType_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing
+     * users to specify the search space of a floating-point hyperparameter
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.ContinuousParameterRange} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.ContinuousParameterRange) + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRangeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + maxValue_ = 0D; + + minValue_ = 0D; + + scalingType_ = 0; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange build() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange buildPartial() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange result = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange(this); + result.maxValue_ = maxValue_; + result.minValue_ = minValue_; + result.scalingType_ = scalingType_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) { + return mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange other) { + if (other == flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance()) return this; + if (other.getMaxValue() != 0D) { + setMaxValue(other.getMaxValue()); + } + if (other.getMinValue() != 0D) { + setMinValue(other.getMinValue()); + } + if (other.scalingType_ != 0) { + setScalingTypeValue(other.getScalingTypeValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private double maxValue_ ; + /** + * double max_value = 1; + */ + public double getMaxValue() { + return maxValue_; + } + /** + * double max_value = 1; + */ + public Builder setMaxValue(double value) { + + maxValue_ = value; + onChanged(); + return this; + } + /** + * double max_value = 1; + */ + public Builder clearMaxValue() { + + maxValue_ = 0D; + onChanged(); + return this; + } + + private double minValue_ ; + /** + * double min_value = 2; + */ + public double getMinValue() { + return minValue_; + } + /** + * double min_value = 2; + */ + public Builder setMinValue(double value) { + + minValue_ = value; + onChanged(); + return this; + } + /** + * double min_value = 2; + */ + public Builder clearMinValue() { + + minValue_ = 0D; + onChanged(); + return this; + } + + private int scalingType_ = 0; + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public int getScalingTypeValue() { + return scalingType_; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public Builder setScalingTypeValue(int value) { + scalingType_ = value; + onChanged(); + return this; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value getScalingType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value result = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.valueOf(scalingType_); + return result == null ? flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.UNRECOGNIZED : result; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public Builder setScalingType(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + scalingType_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public Builder clearScalingType() { + + scalingType_ = 0; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.ContinuousParameterRange) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.ContinuousParameterRange) + private static final flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange(); + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ContinuousParameterRange parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new ContinuousParameterRange(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface IntegerParameterRangeOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.IntegerParameterRange) + com.google.protobuf.MessageOrBuilder { + + /** + * int64 max_value = 1; + */ + long getMaxValue(); + + /** + * int64 min_value = 2; + */ + long getMinValue(); + + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + int getScalingTypeValue(); + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value getScalingType(); + } + /** + *
+   * IntegerParameterRange refers to a discrete range of hyperparameter values, allowing
+   * users to specify the search space of an integer hyperparameter
+   * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.IntegerParameterRange} + */ + public static final class IntegerParameterRange extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.IntegerParameterRange) + IntegerParameterRangeOrBuilder { + private static final long serialVersionUID = 0L; + // Use IntegerParameterRange.newBuilder() to construct. + private IntegerParameterRange(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private IntegerParameterRange() { + scalingType_ = 0; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private IntegerParameterRange( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + + maxValue_ = input.readInt64(); + break; + } + case 16: { + + minValue_ = input.readInt64(); + break; + } + case 24: { + int rawValue = input.readEnum(); + + scalingType_ = rawValue; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.Builder.class); + } + + public static final int MAX_VALUE_FIELD_NUMBER = 1; + private long maxValue_; + /** + * int64 max_value = 1; + */ + public long getMaxValue() { + return maxValue_; + } + + public static final int MIN_VALUE_FIELD_NUMBER = 2; + private long minValue_; + /** + * int64 min_value = 2; + */ + public long getMinValue() { + return minValue_; + } + + public static final int SCALING_TYPE_FIELD_NUMBER = 3; + private int scalingType_; + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public int getScalingTypeValue() { + return scalingType_; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value getScalingType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value result = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.valueOf(scalingType_); + return result == null ? flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.UNRECOGNIZED : result; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (maxValue_ != 0L) { + output.writeInt64(1, maxValue_); + } + if (minValue_ != 0L) { + output.writeInt64(2, minValue_); + } + if (scalingType_ != flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.AUTO.getNumber()) { + output.writeEnum(3, scalingType_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (maxValue_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size(1, maxValue_); + } + if (minValue_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size(2, minValue_); + } + if (scalingType_ != flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.AUTO.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(3, scalingType_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange other = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) obj; + + if (getMaxValue() + != other.getMaxValue()) return false; + if (getMinValue() + != other.getMinValue()) return false; + if (scalingType_ != other.scalingType_) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + MAX_VALUE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getMaxValue()); + hash = (37 * hash) + MIN_VALUE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getMinValue()); + hash = (37 * hash) + SCALING_TYPE_FIELD_NUMBER; + hash = (53 * hash) + scalingType_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * IntegerParameterRange refers to a discrete range of hyperparameter values, allowing
+     * users to specify the search space of an integer hyperparameter
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.IntegerParameterRange} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.IntegerParameterRange) + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRangeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + maxValue_ = 0L; + + minValue_ = 0L; + + scalingType_ = 0; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange build() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange buildPartial() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange result = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange(this); + result.maxValue_ = maxValue_; + result.minValue_ = minValue_; + result.scalingType_ = scalingType_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) { + return mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange other) { + if (other == flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance()) return this; + if (other.getMaxValue() != 0L) { + setMaxValue(other.getMaxValue()); + } + if (other.getMinValue() != 0L) { + setMinValue(other.getMinValue()); + } + if (other.scalingType_ != 0) { + setScalingTypeValue(other.getScalingTypeValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private long maxValue_ ; + /** + * int64 max_value = 1; + */ + public long getMaxValue() { + return maxValue_; + } + /** + * int64 max_value = 1; + */ + public Builder setMaxValue(long value) { + + maxValue_ = value; + onChanged(); + return this; + } + /** + * int64 max_value = 1; + */ + public Builder clearMaxValue() { + + maxValue_ = 0L; + onChanged(); + return this; + } + + private long minValue_ ; + /** + * int64 min_value = 2; + */ + public long getMinValue() { + return minValue_; + } + /** + * int64 min_value = 2; + */ + public Builder setMinValue(long value) { + + minValue_ = value; + onChanged(); + return this; + } + /** + * int64 min_value = 2; + */ + public Builder clearMinValue() { + + minValue_ = 0L; + onChanged(); + return this; + } + + private int scalingType_ = 0; + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public int getScalingTypeValue() { + return scalingType_; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public Builder setScalingTypeValue(int value) { + scalingType_ = value; + onChanged(); + return this; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value getScalingType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value result = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.valueOf(scalingType_); + return result == null ? flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value.UNRECOGNIZED : result; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public Builder setScalingType(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.HyperparameterScalingType.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + scalingType_ = value.getNumber(); + onChanged(); + return this; + } + /** + * .flyteidl.plugins.sagemaker.HyperparameterScalingType.Value scaling_type = 3; + */ + public Builder clearScalingType() { + + scalingType_ = 0; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.IntegerParameterRange) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.IntegerParameterRange) + private static final flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange(); + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public IntegerParameterRange parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new IntegerParameterRange(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface CategoricalParameterRangeOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.CategoricalParameterRange) + com.google.protobuf.MessageOrBuilder { + + /** + * repeated string values = 1; + */ + java.util.List + getValuesList(); + /** + * repeated string values = 1; + */ + int getValuesCount(); + /** + * repeated string values = 1; + */ + java.lang.String getValues(int index); + /** + * repeated string values = 1; + */ + com.google.protobuf.ByteString + getValuesBytes(int index); + } + /** + *
+   * ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing
+   * users to specify the search space of a floating-point hyperparameter
+   * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.CategoricalParameterRange} + */ + public static final class CategoricalParameterRange extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.CategoricalParameterRange) + CategoricalParameterRangeOrBuilder { + private static final long serialVersionUID = 0L; + // Use CategoricalParameterRange.newBuilder() to construct. + private CategoricalParameterRange(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private CategoricalParameterRange() { + values_ = com.google.protobuf.LazyStringArrayList.EMPTY; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private CategoricalParameterRange( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + java.lang.String s = input.readStringRequireUtf8(); + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + values_ = new com.google.protobuf.LazyStringArrayList(); + mutable_bitField0_ |= 0x00000001; + } + values_.add(s); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + if (((mutable_bitField0_ & 0x00000001) != 0)) { + values_ = values_.getUnmodifiableView(); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.Builder.class); + } + + public static final int VALUES_FIELD_NUMBER = 1; + private com.google.protobuf.LazyStringList values_; + /** + * repeated string values = 1; + */ + public com.google.protobuf.ProtocolStringList + getValuesList() { + return values_; + } + /** + * repeated string values = 1; + */ + public int getValuesCount() { + return values_.size(); + } + /** + * repeated string values = 1; + */ + public java.lang.String getValues(int index) { + return values_.get(index); + } + /** + * repeated string values = 1; + */ + public com.google.protobuf.ByteString + getValuesBytes(int index) { + return values_.getByteString(index); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + for (int i = 0; i < values_.size(); i++) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, values_.getRaw(i)); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + { + int dataSize = 0; + for (int i = 0; i < values_.size(); i++) { + dataSize += computeStringSizeNoTag(values_.getRaw(i)); + } + size += dataSize; + size += 1 * getValuesList().size(); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange other = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) obj; + + if (!getValuesList() + .equals(other.getValuesList())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (getValuesCount() > 0) { + hash = (37 * hash) + VALUES_FIELD_NUMBER; + hash = (53 * hash) + getValuesList().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing
+     * users to specify the search space of a floating-point hyperparameter
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.CategoricalParameterRange} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.CategoricalParameterRange) + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRangeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + values_ = com.google.protobuf.LazyStringArrayList.EMPTY; + bitField0_ = (bitField0_ & ~0x00000001); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange build() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange buildPartial() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange result = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange(this); + int from_bitField0_ = bitField0_; + if (((bitField0_ & 0x00000001) != 0)) { + values_ = values_.getUnmodifiableView(); + bitField0_ = (bitField0_ & ~0x00000001); + } + result.values_ = values_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) { + return mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange other) { + if (other == flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance()) return this; + if (!other.values_.isEmpty()) { + if (values_.isEmpty()) { + values_ = other.values_; + bitField0_ = (bitField0_ & ~0x00000001); + } else { + ensureValuesIsMutable(); + values_.addAll(other.values_); + } + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private com.google.protobuf.LazyStringList values_ = com.google.protobuf.LazyStringArrayList.EMPTY; + private void ensureValuesIsMutable() { + if (!((bitField0_ & 0x00000001) != 0)) { + values_ = new com.google.protobuf.LazyStringArrayList(values_); + bitField0_ |= 0x00000001; + } + } + /** + * repeated string values = 1; + */ + public com.google.protobuf.ProtocolStringList + getValuesList() { + return values_.getUnmodifiableView(); + } + /** + * repeated string values = 1; + */ + public int getValuesCount() { + return values_.size(); + } + /** + * repeated string values = 1; + */ + public java.lang.String getValues(int index) { + return values_.get(index); + } + /** + * repeated string values = 1; + */ + public com.google.protobuf.ByteString + getValuesBytes(int index) { + return values_.getByteString(index); + } + /** + * repeated string values = 1; + */ + public Builder setValues( + int index, java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureValuesIsMutable(); + values_.set(index, value); + onChanged(); + return this; + } + /** + * repeated string values = 1; + */ + public Builder addValues( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + ensureValuesIsMutable(); + values_.add(value); + onChanged(); + return this; + } + /** + * repeated string values = 1; + */ + public Builder addAllValues( + java.lang.Iterable values) { + ensureValuesIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, values_); + onChanged(); + return this; + } + /** + * repeated string values = 1; + */ + public Builder clearValues() { + values_ = com.google.protobuf.LazyStringArrayList.EMPTY; + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + /** + * repeated string values = 1; + */ + public Builder addValuesBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + ensureValuesIsMutable(); + values_.add(value); + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.CategoricalParameterRange) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.CategoricalParameterRange) + private static final flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange(); + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CategoricalParameterRange parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new CategoricalParameterRange(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ParameterRangeOneOfOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + com.google.protobuf.MessageOrBuilder { + + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + boolean hasContinuousParameterRange(); + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange getContinuousParameterRange(); + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRangeOrBuilder getContinuousParameterRangeOrBuilder(); + + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + boolean hasIntegerParameterRange(); + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange getIntegerParameterRange(); + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRangeOrBuilder getIntegerParameterRangeOrBuilder(); + + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + boolean hasCategoricalParameterRange(); + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange getCategoricalParameterRange(); + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRangeOrBuilder getCategoricalParameterRangeOrBuilder(); + + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.ParameterRangeTypeCase getParameterRangeTypeCase(); + } + /** + *
+   * ParameterRangeOneOf describes a single ParameterRange, which is a one-of structure that can be one of
+   * the three possible types: ContinuousParameterRange, IntegerParameterRange, and CategoricalParameterRange.
+   * This one-of structure in Flyte enables specifying a Parameter in a type-safe manner
+   * See: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.ParameterRangeOneOf} + */ + public static final class ParameterRangeOneOf extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + ParameterRangeOneOfOrBuilder { + private static final long serialVersionUID = 0L; + // Use ParameterRangeOneOf.newBuilder() to construct. + private ParameterRangeOneOf(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private ParameterRangeOneOf() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private ParameterRangeOneOf( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.Builder subBuilder = null; + if (parameterRangeTypeCase_ == 1) { + subBuilder = ((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_).toBuilder(); + } + parameterRangeType_ = + input.readMessage(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_); + parameterRangeType_ = subBuilder.buildPartial(); + } + parameterRangeTypeCase_ = 1; + break; + } + case 18: { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.Builder subBuilder = null; + if (parameterRangeTypeCase_ == 2) { + subBuilder = ((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_).toBuilder(); + } + parameterRangeType_ = + input.readMessage(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_); + parameterRangeType_ = subBuilder.buildPartial(); + } + parameterRangeTypeCase_ = 2; + break; + } + case 26: { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.Builder subBuilder = null; + if (parameterRangeTypeCase_ == 3) { + subBuilder = ((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_).toBuilder(); + } + parameterRangeType_ = + input.readMessage(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_); + parameterRangeType_ = subBuilder.buildPartial(); + } + parameterRangeTypeCase_ = 3; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.Builder.class); + } + + private int parameterRangeTypeCase_ = 0; + private java.lang.Object parameterRangeType_; + public enum ParameterRangeTypeCase + implements com.google.protobuf.Internal.EnumLite { + CONTINUOUS_PARAMETER_RANGE(1), + INTEGER_PARAMETER_RANGE(2), + CATEGORICAL_PARAMETER_RANGE(3), + PARAMETERRANGETYPE_NOT_SET(0); + private final int value; + private ParameterRangeTypeCase(int value) { + this.value = value; + } + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static ParameterRangeTypeCase valueOf(int value) { + return forNumber(value); + } + + public static ParameterRangeTypeCase forNumber(int value) { + switch (value) { + case 1: return CONTINUOUS_PARAMETER_RANGE; + case 2: return INTEGER_PARAMETER_RANGE; + case 3: return CATEGORICAL_PARAMETER_RANGE; + case 0: return PARAMETERRANGETYPE_NOT_SET; + default: return null; + } + } + public int getNumber() { + return this.value; + } + }; + + public ParameterRangeTypeCase + getParameterRangeTypeCase() { + return ParameterRangeTypeCase.forNumber( + parameterRangeTypeCase_); + } + + public static final int CONTINUOUS_PARAMETER_RANGE_FIELD_NUMBER = 1; + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public boolean hasContinuousParameterRange() { + return parameterRangeTypeCase_ == 1; + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange getContinuousParameterRange() { + if (parameterRangeTypeCase_ == 1) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance(); + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRangeOrBuilder getContinuousParameterRangeOrBuilder() { + if (parameterRangeTypeCase_ == 1) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance(); + } + + public static final int INTEGER_PARAMETER_RANGE_FIELD_NUMBER = 2; + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public boolean hasIntegerParameterRange() { + return parameterRangeTypeCase_ == 2; + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange getIntegerParameterRange() { + if (parameterRangeTypeCase_ == 2) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance(); + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRangeOrBuilder getIntegerParameterRangeOrBuilder() { + if (parameterRangeTypeCase_ == 2) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance(); + } + + public static final int CATEGORICAL_PARAMETER_RANGE_FIELD_NUMBER = 3; + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public boolean hasCategoricalParameterRange() { + return parameterRangeTypeCase_ == 3; + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange getCategoricalParameterRange() { + if (parameterRangeTypeCase_ == 3) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance(); + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRangeOrBuilder getCategoricalParameterRangeOrBuilder() { + if (parameterRangeTypeCase_ == 3) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance(); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (parameterRangeTypeCase_ == 1) { + output.writeMessage(1, (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_); + } + if (parameterRangeTypeCase_ == 2) { + output.writeMessage(2, (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_); + } + if (parameterRangeTypeCase_ == 3) { + output.writeMessage(3, (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (parameterRangeTypeCase_ == 1) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_); + } + if (parameterRangeTypeCase_ == 2) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_); + } + if (parameterRangeTypeCase_ == 3) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(3, (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf other = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf) obj; + + if (!getParameterRangeTypeCase().equals(other.getParameterRangeTypeCase())) return false; + switch (parameterRangeTypeCase_) { + case 1: + if (!getContinuousParameterRange() + .equals(other.getContinuousParameterRange())) return false; + break; + case 2: + if (!getIntegerParameterRange() + .equals(other.getIntegerParameterRange())) return false; + break; + case 3: + if (!getCategoricalParameterRange() + .equals(other.getCategoricalParameterRange())) return false; + break; + case 0: + default: + } + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + switch (parameterRangeTypeCase_) { + case 1: + hash = (37 * hash) + CONTINUOUS_PARAMETER_RANGE_FIELD_NUMBER; + hash = (53 * hash) + getContinuousParameterRange().hashCode(); + break; + case 2: + hash = (37 * hash) + INTEGER_PARAMETER_RANGE_FIELD_NUMBER; + hash = (53 * hash) + getIntegerParameterRange().hashCode(); + break; + case 3: + hash = (37 * hash) + CATEGORICAL_PARAMETER_RANGE_FIELD_NUMBER; + hash = (53 * hash) + getCategoricalParameterRange().hashCode(); + break; + case 0: + default: + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * ParameterRangeOneOf describes a single ParameterRange, which is a one-of structure that can be one of
+     * the three possible types: ContinuousParameterRange, IntegerParameterRange, and CategoricalParameterRange.
+     * This one-of structure in Flyte enables specifying a Parameter in a type-safe manner
+     * See: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.ParameterRangeOneOf} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOfOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + parameterRangeTypeCase_ = 0; + parameterRangeType_ = null; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf build() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf buildPartial() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf result = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf(this); + if (parameterRangeTypeCase_ == 1) { + if (continuousParameterRangeBuilder_ == null) { + result.parameterRangeType_ = parameterRangeType_; + } else { + result.parameterRangeType_ = continuousParameterRangeBuilder_.build(); + } + } + if (parameterRangeTypeCase_ == 2) { + if (integerParameterRangeBuilder_ == null) { + result.parameterRangeType_ = parameterRangeType_; + } else { + result.parameterRangeType_ = integerParameterRangeBuilder_.build(); + } + } + if (parameterRangeTypeCase_ == 3) { + if (categoricalParameterRangeBuilder_ == null) { + result.parameterRangeType_ = parameterRangeType_; + } else { + result.parameterRangeType_ = categoricalParameterRangeBuilder_.build(); + } + } + result.parameterRangeTypeCase_ = parameterRangeTypeCase_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf) { + return mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf other) { + if (other == flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.getDefaultInstance()) return this; + switch (other.getParameterRangeTypeCase()) { + case CONTINUOUS_PARAMETER_RANGE: { + mergeContinuousParameterRange(other.getContinuousParameterRange()); + break; + } + case INTEGER_PARAMETER_RANGE: { + mergeIntegerParameterRange(other.getIntegerParameterRange()); + break; + } + case CATEGORICAL_PARAMETER_RANGE: { + mergeCategoricalParameterRange(other.getCategoricalParameterRange()); + break; + } + case PARAMETERRANGETYPE_NOT_SET: { + break; + } + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int parameterRangeTypeCase_ = 0; + private java.lang.Object parameterRangeType_; + public ParameterRangeTypeCase + getParameterRangeTypeCase() { + return ParameterRangeTypeCase.forNumber( + parameterRangeTypeCase_); + } + + public Builder clearParameterRangeType() { + parameterRangeTypeCase_ = 0; + parameterRangeType_ = null; + onChanged(); + return this; + } + + + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRangeOrBuilder> continuousParameterRangeBuilder_; + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public boolean hasContinuousParameterRange() { + return parameterRangeTypeCase_ == 1; + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange getContinuousParameterRange() { + if (continuousParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 1) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance(); + } else { + if (parameterRangeTypeCase_ == 1) { + return continuousParameterRangeBuilder_.getMessage(); + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance(); + } + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public Builder setContinuousParameterRange(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange value) { + if (continuousParameterRangeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + parameterRangeType_ = value; + onChanged(); + } else { + continuousParameterRangeBuilder_.setMessage(value); + } + parameterRangeTypeCase_ = 1; + return this; + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public Builder setContinuousParameterRange( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.Builder builderForValue) { + if (continuousParameterRangeBuilder_ == null) { + parameterRangeType_ = builderForValue.build(); + onChanged(); + } else { + continuousParameterRangeBuilder_.setMessage(builderForValue.build()); + } + parameterRangeTypeCase_ = 1; + return this; + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public Builder mergeContinuousParameterRange(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange value) { + if (continuousParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 1 && + parameterRangeType_ != flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance()) { + parameterRangeType_ = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.newBuilder((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_) + .mergeFrom(value).buildPartial(); + } else { + parameterRangeType_ = value; + } + onChanged(); + } else { + if (parameterRangeTypeCase_ == 1) { + continuousParameterRangeBuilder_.mergeFrom(value); + } + continuousParameterRangeBuilder_.setMessage(value); + } + parameterRangeTypeCase_ = 1; + return this; + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public Builder clearContinuousParameterRange() { + if (continuousParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 1) { + parameterRangeTypeCase_ = 0; + parameterRangeType_ = null; + onChanged(); + } + } else { + if (parameterRangeTypeCase_ == 1) { + parameterRangeTypeCase_ = 0; + parameterRangeType_ = null; + } + continuousParameterRangeBuilder_.clear(); + } + return this; + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.Builder getContinuousParameterRangeBuilder() { + return getContinuousParameterRangeFieldBuilder().getBuilder(); + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRangeOrBuilder getContinuousParameterRangeOrBuilder() { + if ((parameterRangeTypeCase_ == 1) && (continuousParameterRangeBuilder_ != null)) { + return continuousParameterRangeBuilder_.getMessageOrBuilder(); + } else { + if (parameterRangeTypeCase_ == 1) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance(); + } + } + /** + * .flyteidl.plugins.sagemaker.ContinuousParameterRange continuous_parameter_range = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRangeOrBuilder> + getContinuousParameterRangeFieldBuilder() { + if (continuousParameterRangeBuilder_ == null) { + if (!(parameterRangeTypeCase_ == 1)) { + parameterRangeType_ = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.getDefaultInstance(); + } + continuousParameterRangeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRangeOrBuilder>( + (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ContinuousParameterRange) parameterRangeType_, + getParentForChildren(), + isClean()); + parameterRangeType_ = null; + } + parameterRangeTypeCase_ = 1; + onChanged();; + return continuousParameterRangeBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRangeOrBuilder> integerParameterRangeBuilder_; + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public boolean hasIntegerParameterRange() { + return parameterRangeTypeCase_ == 2; + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange getIntegerParameterRange() { + if (integerParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 2) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance(); + } else { + if (parameterRangeTypeCase_ == 2) { + return integerParameterRangeBuilder_.getMessage(); + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance(); + } + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public Builder setIntegerParameterRange(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange value) { + if (integerParameterRangeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + parameterRangeType_ = value; + onChanged(); + } else { + integerParameterRangeBuilder_.setMessage(value); + } + parameterRangeTypeCase_ = 2; + return this; + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public Builder setIntegerParameterRange( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.Builder builderForValue) { + if (integerParameterRangeBuilder_ == null) { + parameterRangeType_ = builderForValue.build(); + onChanged(); + } else { + integerParameterRangeBuilder_.setMessage(builderForValue.build()); + } + parameterRangeTypeCase_ = 2; + return this; + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public Builder mergeIntegerParameterRange(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange value) { + if (integerParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 2 && + parameterRangeType_ != flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance()) { + parameterRangeType_ = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.newBuilder((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_) + .mergeFrom(value).buildPartial(); + } else { + parameterRangeType_ = value; + } + onChanged(); + } else { + if (parameterRangeTypeCase_ == 2) { + integerParameterRangeBuilder_.mergeFrom(value); + } + integerParameterRangeBuilder_.setMessage(value); + } + parameterRangeTypeCase_ = 2; + return this; + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public Builder clearIntegerParameterRange() { + if (integerParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 2) { + parameterRangeTypeCase_ = 0; + parameterRangeType_ = null; + onChanged(); + } + } else { + if (parameterRangeTypeCase_ == 2) { + parameterRangeTypeCase_ = 0; + parameterRangeType_ = null; + } + integerParameterRangeBuilder_.clear(); + } + return this; + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.Builder getIntegerParameterRangeBuilder() { + return getIntegerParameterRangeFieldBuilder().getBuilder(); + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRangeOrBuilder getIntegerParameterRangeOrBuilder() { + if ((parameterRangeTypeCase_ == 2) && (integerParameterRangeBuilder_ != null)) { + return integerParameterRangeBuilder_.getMessageOrBuilder(); + } else { + if (parameterRangeTypeCase_ == 2) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance(); + } + } + /** + * .flyteidl.plugins.sagemaker.IntegerParameterRange integer_parameter_range = 2; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRangeOrBuilder> + getIntegerParameterRangeFieldBuilder() { + if (integerParameterRangeBuilder_ == null) { + if (!(parameterRangeTypeCase_ == 2)) { + parameterRangeType_ = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.getDefaultInstance(); + } + integerParameterRangeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRangeOrBuilder>( + (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.IntegerParameterRange) parameterRangeType_, + getParentForChildren(), + isClean()); + parameterRangeType_ = null; + } + parameterRangeTypeCase_ = 2; + onChanged();; + return integerParameterRangeBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRangeOrBuilder> categoricalParameterRangeBuilder_; + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public boolean hasCategoricalParameterRange() { + return parameterRangeTypeCase_ == 3; + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange getCategoricalParameterRange() { + if (categoricalParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 3) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance(); + } else { + if (parameterRangeTypeCase_ == 3) { + return categoricalParameterRangeBuilder_.getMessage(); + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance(); + } + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public Builder setCategoricalParameterRange(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange value) { + if (categoricalParameterRangeBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + parameterRangeType_ = value; + onChanged(); + } else { + categoricalParameterRangeBuilder_.setMessage(value); + } + parameterRangeTypeCase_ = 3; + return this; + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public Builder setCategoricalParameterRange( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.Builder builderForValue) { + if (categoricalParameterRangeBuilder_ == null) { + parameterRangeType_ = builderForValue.build(); + onChanged(); + } else { + categoricalParameterRangeBuilder_.setMessage(builderForValue.build()); + } + parameterRangeTypeCase_ = 3; + return this; + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public Builder mergeCategoricalParameterRange(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange value) { + if (categoricalParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 3 && + parameterRangeType_ != flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance()) { + parameterRangeType_ = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.newBuilder((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_) + .mergeFrom(value).buildPartial(); + } else { + parameterRangeType_ = value; + } + onChanged(); + } else { + if (parameterRangeTypeCase_ == 3) { + categoricalParameterRangeBuilder_.mergeFrom(value); + } + categoricalParameterRangeBuilder_.setMessage(value); + } + parameterRangeTypeCase_ = 3; + return this; + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public Builder clearCategoricalParameterRange() { + if (categoricalParameterRangeBuilder_ == null) { + if (parameterRangeTypeCase_ == 3) { + parameterRangeTypeCase_ = 0; + parameterRangeType_ = null; + onChanged(); + } + } else { + if (parameterRangeTypeCase_ == 3) { + parameterRangeTypeCase_ = 0; + parameterRangeType_ = null; + } + categoricalParameterRangeBuilder_.clear(); + } + return this; + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.Builder getCategoricalParameterRangeBuilder() { + return getCategoricalParameterRangeFieldBuilder().getBuilder(); + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRangeOrBuilder getCategoricalParameterRangeOrBuilder() { + if ((parameterRangeTypeCase_ == 3) && (categoricalParameterRangeBuilder_ != null)) { + return categoricalParameterRangeBuilder_.getMessageOrBuilder(); + } else { + if (parameterRangeTypeCase_ == 3) { + return (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_; + } + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance(); + } + } + /** + * .flyteidl.plugins.sagemaker.CategoricalParameterRange categorical_parameter_range = 3; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRangeOrBuilder> + getCategoricalParameterRangeFieldBuilder() { + if (categoricalParameterRangeBuilder_ == null) { + if (!(parameterRangeTypeCase_ == 3)) { + parameterRangeType_ = flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.getDefaultInstance(); + } + categoricalParameterRangeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange.Builder, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRangeOrBuilder>( + (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.CategoricalParameterRange) parameterRangeType_, + getParentForChildren(), + isClean()); + parameterRangeType_ = null; + } + parameterRangeTypeCase_ = 3; + onChanged();; + return categoricalParameterRangeBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.ParameterRangeOneOf) + private static final flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf(); + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ParameterRangeOneOf parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new ParameterRangeOneOf(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface ParameterRangesOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.ParameterRanges) + com.google.protobuf.MessageOrBuilder { + + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + int getParameterRangeMapCount(); + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + boolean containsParameterRangeMap( + java.lang.String key); + /** + * Use {@link #getParameterRangeMapMap()} instead. + */ + @java.lang.Deprecated + java.util.Map + getParameterRangeMap(); + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + java.util.Map + getParameterRangeMapMap(); + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getParameterRangeMapOrDefault( + java.lang.String key, + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf defaultValue); + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getParameterRangeMapOrThrow( + java.lang.String key); + } + /** + *
+   * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+   * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.ParameterRanges} + */ + public static final class ParameterRanges extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.ParameterRanges) + ParameterRangesOrBuilder { + private static final long serialVersionUID = 0L; + // Use ParameterRanges.newBuilder() to construct. + private ParameterRanges(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private ParameterRanges() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private ParameterRanges( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + if (!((mutable_bitField0_ & 0x00000001) != 0)) { + parameterRangeMap_ = com.google.protobuf.MapField.newMapField( + ParameterRangeMapDefaultEntryHolder.defaultEntry); + mutable_bitField0_ |= 0x00000001; + } + com.google.protobuf.MapEntry + parameterRangeMap__ = input.readMessage( + ParameterRangeMapDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); + parameterRangeMap_.getMutableMap().put( + parameterRangeMap__.getKey(), parameterRangeMap__.getValue()); + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRanges_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + @java.lang.Override + protected com.google.protobuf.MapField internalGetMapField( + int number) { + switch (number) { + case 1: + return internalGetParameterRangeMap(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRanges_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.Builder.class); + } + + public static final int PARAMETER_RANGE_MAP_FIELD_NUMBER = 1; + private static final class ParameterRangeMapDefaultEntryHolder { + static final com.google.protobuf.MapEntry< + java.lang.String, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf> defaultEntry = + com.google.protobuf.MapEntry + .newDefaultInstance( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRanges_ParameterRangeMapEntry_descriptor, + com.google.protobuf.WireFormat.FieldType.STRING, + "", + com.google.protobuf.WireFormat.FieldType.MESSAGE, + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf.getDefaultInstance()); + } + private com.google.protobuf.MapField< + java.lang.String, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf> parameterRangeMap_; + private com.google.protobuf.MapField + internalGetParameterRangeMap() { + if (parameterRangeMap_ == null) { + return com.google.protobuf.MapField.emptyMapField( + ParameterRangeMapDefaultEntryHolder.defaultEntry); + } + return parameterRangeMap_; + } + + public int getParameterRangeMapCount() { + return internalGetParameterRangeMap().getMap().size(); + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public boolean containsParameterRangeMap( + java.lang.String key) { + if (key == null) { throw new java.lang.NullPointerException(); } + return internalGetParameterRangeMap().getMap().containsKey(key); + } + /** + * Use {@link #getParameterRangeMapMap()} instead. + */ + @java.lang.Deprecated + public java.util.Map getParameterRangeMap() { + return getParameterRangeMapMap(); + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public java.util.Map getParameterRangeMapMap() { + return internalGetParameterRangeMap().getMap(); + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getParameterRangeMapOrDefault( + java.lang.String key, + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf defaultValue) { + if (key == null) { throw new java.lang.NullPointerException(); } + java.util.Map map = + internalGetParameterRangeMap().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getParameterRangeMapOrThrow( + java.lang.String key) { + if (key == null) { throw new java.lang.NullPointerException(); } + java.util.Map map = + internalGetParameterRangeMap().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + com.google.protobuf.GeneratedMessageV3 + .serializeStringMapTo( + output, + internalGetParameterRangeMap(), + ParameterRangeMapDefaultEntryHolder.defaultEntry, + 1); + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + for (java.util.Map.Entry entry + : internalGetParameterRangeMap().getMap().entrySet()) { + com.google.protobuf.MapEntry + parameterRangeMap__ = ParameterRangeMapDefaultEntryHolder.defaultEntry.newBuilderForType() + .setKey(entry.getKey()) + .setValue(entry.getValue()) + .build(); + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, parameterRangeMap__); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges other = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges) obj; + + if (!internalGetParameterRangeMap().equals( + other.internalGetParameterRangeMap())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (!internalGetParameterRangeMap().getMap().isEmpty()) { + hash = (37 * hash) + PARAMETER_RANGE_MAP_FIELD_NUMBER; + hash = (53 * hash) + internalGetParameterRangeMap().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.ParameterRanges} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.ParameterRanges) + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangesOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRanges_descriptor; + } + + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapField internalGetMapField( + int number) { + switch (number) { + case 1: + return internalGetParameterRangeMap(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @SuppressWarnings({"rawtypes"}) + protected com.google.protobuf.MapField internalGetMutableMapField( + int number) { + switch (number) { + case 1: + return internalGetMutableParameterRangeMap(); + default: + throw new RuntimeException( + "Invalid map field number: " + number); + } + } + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRanges_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.class, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + internalGetMutableParameterRangeMap().clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.internal_static_flyteidl_plugins_sagemaker_ParameterRanges_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges build() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges buildPartial() { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges result = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges(this); + int from_bitField0_ = bitField0_; + result.parameterRangeMap_ = internalGetParameterRangeMap(); + result.parameterRangeMap_.makeImmutable(); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges) { + return mergeFrom((flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges other) { + if (other == flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges.getDefaultInstance()) return this; + internalGetMutableParameterRangeMap().mergeFrom( + other.internalGetParameterRangeMap()); + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private com.google.protobuf.MapField< + java.lang.String, flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf> parameterRangeMap_; + private com.google.protobuf.MapField + internalGetParameterRangeMap() { + if (parameterRangeMap_ == null) { + return com.google.protobuf.MapField.emptyMapField( + ParameterRangeMapDefaultEntryHolder.defaultEntry); + } + return parameterRangeMap_; + } + private com.google.protobuf.MapField + internalGetMutableParameterRangeMap() { + onChanged();; + if (parameterRangeMap_ == null) { + parameterRangeMap_ = com.google.protobuf.MapField.newMapField( + ParameterRangeMapDefaultEntryHolder.defaultEntry); + } + if (!parameterRangeMap_.isMutable()) { + parameterRangeMap_ = parameterRangeMap_.copy(); + } + return parameterRangeMap_; + } + + public int getParameterRangeMapCount() { + return internalGetParameterRangeMap().getMap().size(); + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public boolean containsParameterRangeMap( + java.lang.String key) { + if (key == null) { throw new java.lang.NullPointerException(); } + return internalGetParameterRangeMap().getMap().containsKey(key); + } + /** + * Use {@link #getParameterRangeMapMap()} instead. + */ + @java.lang.Deprecated + public java.util.Map getParameterRangeMap() { + return getParameterRangeMapMap(); + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public java.util.Map getParameterRangeMapMap() { + return internalGetParameterRangeMap().getMap(); + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getParameterRangeMapOrDefault( + java.lang.String key, + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf defaultValue) { + if (key == null) { throw new java.lang.NullPointerException(); } + java.util.Map map = + internalGetParameterRangeMap().getMap(); + return map.containsKey(key) ? map.get(key) : defaultValue; + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf getParameterRangeMapOrThrow( + java.lang.String key) { + if (key == null) { throw new java.lang.NullPointerException(); } + java.util.Map map = + internalGetParameterRangeMap().getMap(); + if (!map.containsKey(key)) { + throw new java.lang.IllegalArgumentException(); + } + return map.get(key); + } + + public Builder clearParameterRangeMap() { + internalGetMutableParameterRangeMap().getMutableMap() + .clear(); + return this; + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public Builder removeParameterRangeMap( + java.lang.String key) { + if (key == null) { throw new java.lang.NullPointerException(); } + internalGetMutableParameterRangeMap().getMutableMap() + .remove(key); + return this; + } + /** + * Use alternate mutation accessors instead. + */ + @java.lang.Deprecated + public java.util.Map + getMutableParameterRangeMap() { + return internalGetMutableParameterRangeMap().getMutableMap(); + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + public Builder putParameterRangeMap( + java.lang.String key, + flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRangeOneOf value) { + if (key == null) { throw new java.lang.NullPointerException(); } + if (value == null) { throw new java.lang.NullPointerException(); } + internalGetMutableParameterRangeMap().getMutableMap() + .put(key, value); + return this; + } + /** + * map<string, .flyteidl.plugins.sagemaker.ParameterRangeOneOf> parameter_range_map = 1; + */ + + public Builder putAllParameterRangeMap( + java.util.Map values) { + internalGetMutableParameterRangeMap().getMutableMap() + .putAll(values); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.ParameterRanges) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.ParameterRanges) + private static final flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges(); + } + + public static flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public ParameterRanges parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new ParameterRanges(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.ParameterRangesOuterClass.ParameterRanges getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_ParameterRangeMapEntry_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_ParameterRangeMapEntry_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n1flyteidl/plugins/sagemaker/parameter_r" + + "anges.proto\022\032flyteidl.plugins.sagemaker\"" + + "c\n\031HyperparameterScalingType\"F\n\005Value\022\010\n" + + "\004AUTO\020\000\022\n\n\006LINEAR\020\001\022\017\n\013LOGARITHMIC\020\002\022\026\n\022" + + "REVERSELOGARITHMIC\020\003\"\223\001\n\030ContinuousParam" + + "eterRange\022\021\n\tmax_value\030\001 \001(\001\022\021\n\tmin_valu" + + "e\030\002 \001(\001\022Q\n\014scaling_type\030\003 \001(\0162;.flyteidl" + + ".plugins.sagemaker.HyperparameterScaling" + + "Type.Value\"\220\001\n\025IntegerParameterRange\022\021\n\t" + + "max_value\030\001 \001(\003\022\021\n\tmin_value\030\002 \001(\003\022Q\n\014sc" + + "aling_type\030\003 \001(\0162;.flyteidl.plugins.sage" + + "maker.HyperparameterScalingType.Value\"+\n" + + "\031CategoricalParameterRange\022\016\n\006values\030\001 \003" + + "(\t\"\275\002\n\023ParameterRangeOneOf\022Z\n\032continuous" + + "_parameter_range\030\001 \001(\01324.flyteidl.plugin" + + "s.sagemaker.ContinuousParameterRangeH\000\022T" + + "\n\027integer_parameter_range\030\002 \001(\01321.flytei" + + "dl.plugins.sagemaker.IntegerParameterRan" + + "geH\000\022\\\n\033categorical_parameter_range\030\003 \001(" + + "\01325.flyteidl.plugins.sagemaker.Categoric" + + "alParameterRangeH\000B\026\n\024parameter_range_ty" + + "pe\"\335\001\n\017ParameterRanges\022_\n\023parameter_rang" + + "e_map\030\001 \003(\0132B.flyteidl.plugins.sagemaker" + + ".ParameterRanges.ParameterRangeMapEntry\032" + + "i\n\026ParameterRangeMapEntry\022\013\n\003key\030\001 \001(\t\022>" + + "\n\005value\030\002 \001(\0132/.flyteidl.plugins.sagemak" + + "er.ParameterRangeOneOf:\0028\001B?Z=github.com" + + "/flyteorg/flyte/flyteidl/gen/pb-go/flyte" + + "idl/pluginsb\006proto3" + }; + com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { + public com.google.protobuf.ExtensionRegistry assignDescriptors( + com.google.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + return null; + } + }; + com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + }, assigner); + internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_HyperparameterScalingType_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_descriptor = + getDescriptor().getMessageTypes().get(1); + internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_ContinuousParameterRange_descriptor, + new java.lang.String[] { "MaxValue", "MinValue", "ScalingType", }); + internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_IntegerParameterRange_descriptor, + new java.lang.String[] { "MaxValue", "MinValue", "ScalingType", }); + internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_descriptor = + getDescriptor().getMessageTypes().get(3); + internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_CategoricalParameterRange_descriptor, + new java.lang.String[] { "Values", }); + internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_ParameterRangeOneOf_descriptor, + new java.lang.String[] { "ContinuousParameterRange", "IntegerParameterRange", "CategoricalParameterRange", "ParameterRangeType", }); + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_descriptor, + new java.lang.String[] { "ParameterRangeMap", }); + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_ParameterRangeMapEntry_descriptor = + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_descriptor.getNestedTypes().get(0); + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_ParameterRangeMapEntry_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_ParameterRanges_ParameterRangeMapEntry_descriptor, + new java.lang.String[] { "Key", "Value", }); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/TrainingJobOuterClass.java b/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/TrainingJobOuterClass.java new file mode 100644 index 0000000000..7b81bb48b6 --- /dev/null +++ b/flyteidl/gen/pb-java/flyteidl/plugins/sagemaker/TrainingJobOuterClass.java @@ -0,0 +1,6321 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: flyteidl/plugins/sagemaker/training_job.proto + +package flyteidl.plugins.sagemaker; + +public final class TrainingJobOuterClass { + private TrainingJobOuterClass() {} + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistryLite registry) { + } + + public static void registerAllExtensions( + com.google.protobuf.ExtensionRegistry registry) { + registerAllExtensions( + (com.google.protobuf.ExtensionRegistryLite) registry); + } + public interface InputModeOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.InputMode) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * The input mode that the algorithm supports. When using the File input mode, SageMaker downloads
+   * the training data from S3 to the provisioned ML storage Volume, and mounts the directory to docker
+   * volume for training container. When using Pipe input mode, Amazon SageMaker streams data directly
+   * from S3 to the container.
+   * See: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+   * For the input modes that different SageMaker algorithms support, see:
+   * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.InputMode} + */ + public static final class InputMode extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.InputMode) + InputModeOrBuilder { + private static final long serialVersionUID = 0L; + // Use InputMode.newBuilder() to construct. + private InputMode(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private InputMode() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private InputMode( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputMode_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputMode_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Builder.class); + } + + /** + * Protobuf enum {@code flyteidl.plugins.sagemaker.InputMode.Value} + */ + public enum Value + implements com.google.protobuf.ProtocolMessageEnum { + /** + * FILE = 0; + */ + FILE(0), + /** + * PIPE = 1; + */ + PIPE(1), + UNRECOGNIZED(-1), + ; + + /** + * FILE = 0; + */ + public static final int FILE_VALUE = 0; + /** + * PIPE = 1; + */ + public static final int PIPE_VALUE = 1; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static Value valueOf(int value) { + return forNumber(value); + } + + public static Value forNumber(int value) { + switch (value) { + case 0: return FILE; + case 1: return PIPE; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Value> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Value findValueByNumber(int number) { + return Value.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.getDescriptor().getEnumTypes().get(0); + } + + private static final Value[] VALUES = values(); + + public static Value valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Value(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.plugins.sagemaker.InputMode.Value) + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode other = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * The input mode that the algorithm supports. When using the File input mode, SageMaker downloads
+     * the training data from S3 to the provisioned ML storage Volume, and mounts the directory to docker
+     * volume for training container. When using Pipe input mode, Amazon SageMaker streams data directly
+     * from S3 to the container.
+     * See: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * For the input modes that different SageMaker algorithms support, see:
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.InputMode} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.InputMode) + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputModeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputMode_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputMode_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputMode_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode build() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode buildPartial() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode result = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode) { + return mergeFrom((flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode other) { + if (other == flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.InputMode) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.InputMode) + private static final flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode(); + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public InputMode parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new InputMode(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface AlgorithmNameOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.AlgorithmName) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * The algorithm name is used for deciding which pre-built image to point to.
+   * This is only required for use cases where SageMaker's built-in algorithm mode is used.
+   * While we currently only support a subset of the algorithms, more will be added to the list.
+   * See: https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.AlgorithmName} + */ + public static final class AlgorithmName extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.AlgorithmName) + AlgorithmNameOrBuilder { + private static final long serialVersionUID = 0L; + // Use AlgorithmName.newBuilder() to construct. + private AlgorithmName(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private AlgorithmName() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private AlgorithmName( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmName_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmName_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Builder.class); + } + + /** + * Protobuf enum {@code flyteidl.plugins.sagemaker.AlgorithmName.Value} + */ + public enum Value + implements com.google.protobuf.ProtocolMessageEnum { + /** + * CUSTOM = 0; + */ + CUSTOM(0), + /** + * XGBOOST = 1; + */ + XGBOOST(1), + UNRECOGNIZED(-1), + ; + + /** + * CUSTOM = 0; + */ + public static final int CUSTOM_VALUE = 0; + /** + * XGBOOST = 1; + */ + public static final int XGBOOST_VALUE = 1; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static Value valueOf(int value) { + return forNumber(value); + } + + public static Value forNumber(int value) { + switch (value) { + case 0: return CUSTOM; + case 1: return XGBOOST; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Value> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Value findValueByNumber(int number) { + return Value.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.getDescriptor().getEnumTypes().get(0); + } + + private static final Value[] VALUES = values(); + + public static Value valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Value(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.plugins.sagemaker.AlgorithmName.Value) + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName other = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * The algorithm name is used for deciding which pre-built image to point to.
+     * This is only required for use cases where SageMaker's built-in algorithm mode is used.
+     * While we currently only support a subset of the algorithms, more will be added to the list.
+     * See: https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.AlgorithmName} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.AlgorithmName) + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmNameOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmName_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmName_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmName_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName build() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName buildPartial() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName result = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName) { + return mergeFrom((flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName other) { + if (other == flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.AlgorithmName) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.AlgorithmName) + private static final flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName(); + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AlgorithmName parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new AlgorithmName(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface InputContentTypeOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.InputContentType) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * Specifies the type of file for input data. Different SageMaker built-in algorithms require different file types of input data
+   * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+   * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.InputContentType} + */ + public static final class InputContentType extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.InputContentType) + InputContentTypeOrBuilder { + private static final long serialVersionUID = 0L; + // Use InputContentType.newBuilder() to construct. + private InputContentType(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private InputContentType() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private InputContentType( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputContentType_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputContentType_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Builder.class); + } + + /** + * Protobuf enum {@code flyteidl.plugins.sagemaker.InputContentType.Value} + */ + public enum Value + implements com.google.protobuf.ProtocolMessageEnum { + /** + * TEXT_CSV = 0; + */ + TEXT_CSV(0), + UNRECOGNIZED(-1), + ; + + /** + * TEXT_CSV = 0; + */ + public static final int TEXT_CSV_VALUE = 0; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static Value valueOf(int value) { + return forNumber(value); + } + + public static Value forNumber(int value) { + switch (value) { + case 0: return TEXT_CSV; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Value> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Value findValueByNumber(int number) { + return Value.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.getDescriptor().getEnumTypes().get(0); + } + + private static final Value[] VALUES = values(); + + public static Value valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Value(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.plugins.sagemaker.InputContentType.Value) + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType other = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * Specifies the type of file for input data. Different SageMaker built-in algorithms require different file types of input data
+     * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.InputContentType} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.InputContentType) + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentTypeOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputContentType_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputContentType_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_InputContentType_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType build() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType buildPartial() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType result = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType) { + return mergeFrom((flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType other) { + if (other == flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.InputContentType) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.InputContentType) + private static final flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType(); + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public InputContentType parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new InputContentType(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface MetricDefinitionOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.MetricDefinition) + com.google.protobuf.MessageOrBuilder { + + /** + *
+     * User-defined name of the metric
+     * 
+ * + * string name = 1; + */ + java.lang.String getName(); + /** + *
+     * User-defined name of the metric
+     * 
+ * + * string name = 1; + */ + com.google.protobuf.ByteString + getNameBytes(); + + /** + *
+     * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+     * 
+ * + * string regex = 2; + */ + java.lang.String getRegex(); + /** + *
+     * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+     * 
+ * + * string regex = 2; + */ + com.google.protobuf.ByteString + getRegexBytes(); + } + /** + *
+   * Specifies a metric that the training algorithm writes to stderr or stdout.
+   * This object is a pass-through.
+   * See this for details: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDefinition.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.MetricDefinition} + */ + public static final class MetricDefinition extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.MetricDefinition) + MetricDefinitionOrBuilder { + private static final long serialVersionUID = 0L; + // Use MetricDefinition.newBuilder() to construct. + private MetricDefinition(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private MetricDefinition() { + name_ = ""; + regex_ = ""; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private MetricDefinition( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + java.lang.String s = input.readStringRequireUtf8(); + + name_ = s; + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + regex_ = s; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_MetricDefinition_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_MetricDefinition_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder.class); + } + + public static final int NAME_FIELD_NUMBER = 1; + private volatile java.lang.Object name_; + /** + *
+     * User-defined name of the metric
+     * 
+ * + * string name = 1; + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } + } + /** + *
+     * User-defined name of the metric
+     * 
+ * + * string name = 1; + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int REGEX_FIELD_NUMBER = 2; + private volatile java.lang.Object regex_; + /** + *
+     * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+     * 
+ * + * string regex = 2; + */ + public java.lang.String getRegex() { + java.lang.Object ref = regex_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + regex_ = s; + return s; + } + } + /** + *
+     * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+     * 
+ * + * string regex = 2; + */ + public com.google.protobuf.ByteString + getRegexBytes() { + java.lang.Object ref = regex_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + regex_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (!getNameBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); + } + if (!getRegexBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, regex_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!getNameBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); + } + if (!getRegexBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, regex_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition other = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition) obj; + + if (!getName() + .equals(other.getName())) return false; + if (!getRegex() + .equals(other.getRegex())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + NAME_FIELD_NUMBER; + hash = (53 * hash) + getName().hashCode(); + hash = (37 * hash) + REGEX_FIELD_NUMBER; + hash = (53 * hash) + getRegex().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * Specifies a metric that the training algorithm writes to stderr or stdout.
+     * This object is a pass-through.
+     * See this for details: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDefinition.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.MetricDefinition} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.MetricDefinition) + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinitionOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_MetricDefinition_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_MetricDefinition_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + name_ = ""; + + regex_ = ""; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_MetricDefinition_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition build() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition buildPartial() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition result = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition(this); + result.name_ = name_; + result.regex_ = regex_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition) { + return mergeFrom((flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition other) { + if (other == flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.getDefaultInstance()) return this; + if (!other.getName().isEmpty()) { + name_ = other.name_; + onChanged(); + } + if (!other.getRegex().isEmpty()) { + regex_ = other.regex_; + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private java.lang.Object name_ = ""; + /** + *
+       * User-defined name of the metric
+       * 
+ * + * string name = 1; + */ + public java.lang.String getName() { + java.lang.Object ref = name_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + name_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * User-defined name of the metric
+       * 
+ * + * string name = 1; + */ + public com.google.protobuf.ByteString + getNameBytes() { + java.lang.Object ref = name_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + name_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * User-defined name of the metric
+       * 
+ * + * string name = 1; + */ + public Builder setName( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + name_ = value; + onChanged(); + return this; + } + /** + *
+       * User-defined name of the metric
+       * 
+ * + * string name = 1; + */ + public Builder clearName() { + + name_ = getDefaultInstance().getName(); + onChanged(); + return this; + } + /** + *
+       * User-defined name of the metric
+       * 
+ * + * string name = 1; + */ + public Builder setNameBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + name_ = value; + onChanged(); + return this; + } + + private java.lang.Object regex_ = ""; + /** + *
+       * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+       * 
+ * + * string regex = 2; + */ + public java.lang.String getRegex() { + java.lang.Object ref = regex_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + regex_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+       * 
+ * + * string regex = 2; + */ + public com.google.protobuf.ByteString + getRegexBytes() { + java.lang.Object ref = regex_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + regex_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+       * 
+ * + * string regex = 2; + */ + public Builder setRegex( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + regex_ = value; + onChanged(); + return this; + } + /** + *
+       * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+       * 
+ * + * string regex = 2; + */ + public Builder clearRegex() { + + regex_ = getDefaultInstance().getRegex(); + onChanged(); + return this; + } + /** + *
+       * SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics
+       * 
+ * + * string regex = 2; + */ + public Builder setRegexBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + regex_ = value; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.MetricDefinition) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.MetricDefinition) + private static final flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition(); + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public MetricDefinition parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new MetricDefinition(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface AlgorithmSpecificationOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.AlgorithmSpecification) + com.google.protobuf.MessageOrBuilder { + + /** + *
+     * The input mode can be either PIPE or FILE
+     * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + int getInputModeValue(); + /** + *
+     * The input mode can be either PIPE or FILE
+     * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value getInputMode(); + + /** + *
+     * The algorithm name is used for deciding which pre-built image to point to
+     * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + int getAlgorithmNameValue(); + /** + *
+     * The algorithm name is used for deciding which pre-built image to point to
+     * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value getAlgorithmName(); + + /** + *
+     * The algorithm version field is used for deciding which pre-built image to point to
+     * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+     * 
+ * + * string algorithm_version = 3; + */ + java.lang.String getAlgorithmVersion(); + /** + *
+     * The algorithm version field is used for deciding which pre-built image to point to
+     * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+     * 
+ * + * string algorithm_version = 3; + */ + com.google.protobuf.ByteString + getAlgorithmVersionBytes(); + + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + java.util.List + getMetricDefinitionsList(); + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition getMetricDefinitions(int index); + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + int getMetricDefinitionsCount(); + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + java.util.List + getMetricDefinitionsOrBuilderList(); + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinitionOrBuilder getMetricDefinitionsOrBuilder( + int index); + + /** + *
+     * The content type of the input
+     * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+     * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + int getInputContentTypeValue(); + /** + *
+     * The content type of the input
+     * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+     * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value getInputContentType(); + } + /** + *
+   * Specifies the training algorithm to be used in the training job
+   * This object is mostly a pass-through, with a couple of exceptions include: (1) in Flyte, users don't need to specify
+   * TrainingImage; either use the built-in algorithm mode by using Flytekit's Simple Training Job and specifying an algorithm
+   * name and an algorithm version or (2) when users want to supply custom algorithms they should set algorithm_name field to
+   * CUSTOM. In this case, the value of the algorithm_version field has no effect
+   * For pass-through use cases: refer to this AWS official document for more details
+   * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.AlgorithmSpecification} + */ + public static final class AlgorithmSpecification extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.AlgorithmSpecification) + AlgorithmSpecificationOrBuilder { + private static final long serialVersionUID = 0L; + // Use AlgorithmSpecification.newBuilder() to construct. + private AlgorithmSpecification(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private AlgorithmSpecification() { + inputMode_ = 0; + algorithmName_ = 0; + algorithmVersion_ = ""; + metricDefinitions_ = java.util.Collections.emptyList(); + inputContentType_ = 0; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private AlgorithmSpecification( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + int rawValue = input.readEnum(); + + inputMode_ = rawValue; + break; + } + case 16: { + int rawValue = input.readEnum(); + + algorithmName_ = rawValue; + break; + } + case 26: { + java.lang.String s = input.readStringRequireUtf8(); + + algorithmVersion_ = s; + break; + } + case 34: { + if (!((mutable_bitField0_ & 0x00000008) != 0)) { + metricDefinitions_ = new java.util.ArrayList(); + mutable_bitField0_ |= 0x00000008; + } + metricDefinitions_.add( + input.readMessage(flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.parser(), extensionRegistry)); + break; + } + case 40: { + int rawValue = input.readEnum(); + + inputContentType_ = rawValue; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + if (((mutable_bitField0_ & 0x00000008) != 0)) { + metricDefinitions_ = java.util.Collections.unmodifiableList(metricDefinitions_); + } + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.Builder.class); + } + + private int bitField0_; + public static final int INPUT_MODE_FIELD_NUMBER = 1; + private int inputMode_; + /** + *
+     * The input mode can be either PIPE or FILE
+     * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + public int getInputModeValue() { + return inputMode_; + } + /** + *
+     * The input mode can be either PIPE or FILE
+     * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value getInputMode() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value result = flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value.valueOf(inputMode_); + return result == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value.UNRECOGNIZED : result; + } + + public static final int ALGORITHM_NAME_FIELD_NUMBER = 2; + private int algorithmName_; + /** + *
+     * The algorithm name is used for deciding which pre-built image to point to
+     * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + public int getAlgorithmNameValue() { + return algorithmName_; + } + /** + *
+     * The algorithm name is used for deciding which pre-built image to point to
+     * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value getAlgorithmName() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value result = flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value.valueOf(algorithmName_); + return result == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value.UNRECOGNIZED : result; + } + + public static final int ALGORITHM_VERSION_FIELD_NUMBER = 3; + private volatile java.lang.Object algorithmVersion_; + /** + *
+     * The algorithm version field is used for deciding which pre-built image to point to
+     * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+     * 
+ * + * string algorithm_version = 3; + */ + public java.lang.String getAlgorithmVersion() { + java.lang.Object ref = algorithmVersion_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + algorithmVersion_ = s; + return s; + } + } + /** + *
+     * The algorithm version field is used for deciding which pre-built image to point to
+     * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+     * 
+ * + * string algorithm_version = 3; + */ + public com.google.protobuf.ByteString + getAlgorithmVersionBytes() { + java.lang.Object ref = algorithmVersion_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + algorithmVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int METRIC_DEFINITIONS_FIELD_NUMBER = 4; + private java.util.List metricDefinitions_; + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public java.util.List getMetricDefinitionsList() { + return metricDefinitions_; + } + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public java.util.List + getMetricDefinitionsOrBuilderList() { + return metricDefinitions_; + } + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public int getMetricDefinitionsCount() { + return metricDefinitions_.size(); + } + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition getMetricDefinitions(int index) { + return metricDefinitions_.get(index); + } + /** + *
+     * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+     * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+     * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinitionOrBuilder getMetricDefinitionsOrBuilder( + int index) { + return metricDefinitions_.get(index); + } + + public static final int INPUT_CONTENT_TYPE_FIELD_NUMBER = 5; + private int inputContentType_; + /** + *
+     * The content type of the input
+     * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+     * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + public int getInputContentTypeValue() { + return inputContentType_; + } + /** + *
+     * The content type of the input
+     * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+     * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+     * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value getInputContentType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value result = flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value.valueOf(inputContentType_); + return result == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value.UNRECOGNIZED : result; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (inputMode_ != flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value.FILE.getNumber()) { + output.writeEnum(1, inputMode_); + } + if (algorithmName_ != flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value.CUSTOM.getNumber()) { + output.writeEnum(2, algorithmName_); + } + if (!getAlgorithmVersionBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 3, algorithmVersion_); + } + for (int i = 0; i < metricDefinitions_.size(); i++) { + output.writeMessage(4, metricDefinitions_.get(i)); + } + if (inputContentType_ != flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value.TEXT_CSV.getNumber()) { + output.writeEnum(5, inputContentType_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (inputMode_ != flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value.FILE.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(1, inputMode_); + } + if (algorithmName_ != flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value.CUSTOM.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(2, algorithmName_); + } + if (!getAlgorithmVersionBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, algorithmVersion_); + } + for (int i = 0; i < metricDefinitions_.size(); i++) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(4, metricDefinitions_.get(i)); + } + if (inputContentType_ != flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value.TEXT_CSV.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(5, inputContentType_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification other = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification) obj; + + if (inputMode_ != other.inputMode_) return false; + if (algorithmName_ != other.algorithmName_) return false; + if (!getAlgorithmVersion() + .equals(other.getAlgorithmVersion())) return false; + if (!getMetricDefinitionsList() + .equals(other.getMetricDefinitionsList())) return false; + if (inputContentType_ != other.inputContentType_) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + INPUT_MODE_FIELD_NUMBER; + hash = (53 * hash) + inputMode_; + hash = (37 * hash) + ALGORITHM_NAME_FIELD_NUMBER; + hash = (53 * hash) + algorithmName_; + hash = (37 * hash) + ALGORITHM_VERSION_FIELD_NUMBER; + hash = (53 * hash) + getAlgorithmVersion().hashCode(); + if (getMetricDefinitionsCount() > 0) { + hash = (37 * hash) + METRIC_DEFINITIONS_FIELD_NUMBER; + hash = (53 * hash) + getMetricDefinitionsList().hashCode(); + } + hash = (37 * hash) + INPUT_CONTENT_TYPE_FIELD_NUMBER; + hash = (53 * hash) + inputContentType_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * Specifies the training algorithm to be used in the training job
+     * This object is mostly a pass-through, with a couple of exceptions include: (1) in Flyte, users don't need to specify
+     * TrainingImage; either use the built-in algorithm mode by using Flytekit's Simple Training Job and specifying an algorithm
+     * name and an algorithm version or (2) when users want to supply custom algorithms they should set algorithm_name field to
+     * CUSTOM. In this case, the value of the algorithm_version field has no effect
+     * For pass-through use cases: refer to this AWS official document for more details
+     * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.AlgorithmSpecification} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.AlgorithmSpecification) + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecificationOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + getMetricDefinitionsFieldBuilder(); + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + inputMode_ = 0; + + algorithmName_ = 0; + + algorithmVersion_ = ""; + + if (metricDefinitionsBuilder_ == null) { + metricDefinitions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + } else { + metricDefinitionsBuilder_.clear(); + } + inputContentType_ = 0; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification build() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification buildPartial() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification result = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification(this); + int from_bitField0_ = bitField0_; + int to_bitField0_ = 0; + result.inputMode_ = inputMode_; + result.algorithmName_ = algorithmName_; + result.algorithmVersion_ = algorithmVersion_; + if (metricDefinitionsBuilder_ == null) { + if (((bitField0_ & 0x00000008) != 0)) { + metricDefinitions_ = java.util.Collections.unmodifiableList(metricDefinitions_); + bitField0_ = (bitField0_ & ~0x00000008); + } + result.metricDefinitions_ = metricDefinitions_; + } else { + result.metricDefinitions_ = metricDefinitionsBuilder_.build(); + } + result.inputContentType_ = inputContentType_; + result.bitField0_ = to_bitField0_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification) { + return mergeFrom((flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification other) { + if (other == flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.getDefaultInstance()) return this; + if (other.inputMode_ != 0) { + setInputModeValue(other.getInputModeValue()); + } + if (other.algorithmName_ != 0) { + setAlgorithmNameValue(other.getAlgorithmNameValue()); + } + if (!other.getAlgorithmVersion().isEmpty()) { + algorithmVersion_ = other.algorithmVersion_; + onChanged(); + } + if (metricDefinitionsBuilder_ == null) { + if (!other.metricDefinitions_.isEmpty()) { + if (metricDefinitions_.isEmpty()) { + metricDefinitions_ = other.metricDefinitions_; + bitField0_ = (bitField0_ & ~0x00000008); + } else { + ensureMetricDefinitionsIsMutable(); + metricDefinitions_.addAll(other.metricDefinitions_); + } + onChanged(); + } + } else { + if (!other.metricDefinitions_.isEmpty()) { + if (metricDefinitionsBuilder_.isEmpty()) { + metricDefinitionsBuilder_.dispose(); + metricDefinitionsBuilder_ = null; + metricDefinitions_ = other.metricDefinitions_; + bitField0_ = (bitField0_ & ~0x00000008); + metricDefinitionsBuilder_ = + com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? + getMetricDefinitionsFieldBuilder() : null; + } else { + metricDefinitionsBuilder_.addAllMessages(other.metricDefinitions_); + } + } + } + if (other.inputContentType_ != 0) { + setInputContentTypeValue(other.getInputContentTypeValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + private int bitField0_; + + private int inputMode_ = 0; + /** + *
+       * The input mode can be either PIPE or FILE
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + public int getInputModeValue() { + return inputMode_; + } + /** + *
+       * The input mode can be either PIPE or FILE
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + public Builder setInputModeValue(int value) { + inputMode_ = value; + onChanged(); + return this; + } + /** + *
+       * The input mode can be either PIPE or FILE
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value getInputMode() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value result = flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value.valueOf(inputMode_); + return result == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value.UNRECOGNIZED : result; + } + /** + *
+       * The input mode can be either PIPE or FILE
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + public Builder setInputMode(flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputMode.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + inputMode_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * The input mode can be either PIPE or FILE
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputMode.Value input_mode = 1; + */ + public Builder clearInputMode() { + + inputMode_ = 0; + onChanged(); + return this; + } + + private int algorithmName_ = 0; + /** + *
+       * The algorithm name is used for deciding which pre-built image to point to
+       * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + public int getAlgorithmNameValue() { + return algorithmName_; + } + /** + *
+       * The algorithm name is used for deciding which pre-built image to point to
+       * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + public Builder setAlgorithmNameValue(int value) { + algorithmName_ = value; + onChanged(); + return this; + } + /** + *
+       * The algorithm name is used for deciding which pre-built image to point to
+       * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value getAlgorithmName() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value result = flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value.valueOf(algorithmName_); + return result == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value.UNRECOGNIZED : result; + } + /** + *
+       * The algorithm name is used for deciding which pre-built image to point to
+       * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + public Builder setAlgorithmName(flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmName.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + algorithmName_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * The algorithm name is used for deciding which pre-built image to point to
+       * 
+ * + * .flyteidl.plugins.sagemaker.AlgorithmName.Value algorithm_name = 2; + */ + public Builder clearAlgorithmName() { + + algorithmName_ = 0; + onChanged(); + return this; + } + + private java.lang.Object algorithmVersion_ = ""; + /** + *
+       * The algorithm version field is used for deciding which pre-built image to point to
+       * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+       * 
+ * + * string algorithm_version = 3; + */ + public java.lang.String getAlgorithmVersion() { + java.lang.Object ref = algorithmVersion_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + algorithmVersion_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * The algorithm version field is used for deciding which pre-built image to point to
+       * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+       * 
+ * + * string algorithm_version = 3; + */ + public com.google.protobuf.ByteString + getAlgorithmVersionBytes() { + java.lang.Object ref = algorithmVersion_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + algorithmVersion_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * The algorithm version field is used for deciding which pre-built image to point to
+       * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+       * 
+ * + * string algorithm_version = 3; + */ + public Builder setAlgorithmVersion( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + algorithmVersion_ = value; + onChanged(); + return this; + } + /** + *
+       * The algorithm version field is used for deciding which pre-built image to point to
+       * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+       * 
+ * + * string algorithm_version = 3; + */ + public Builder clearAlgorithmVersion() { + + algorithmVersion_ = getDefaultInstance().getAlgorithmVersion(); + onChanged(); + return this; + } + /** + *
+       * The algorithm version field is used for deciding which pre-built image to point to
+       * This is only needed for use cases where SageMaker's built-in algorithm mode is chosen
+       * 
+ * + * string algorithm_version = 3; + */ + public Builder setAlgorithmVersionBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + algorithmVersion_ = value; + onChanged(); + return this; + } + + private java.util.List metricDefinitions_ = + java.util.Collections.emptyList(); + private void ensureMetricDefinitionsIsMutable() { + if (!((bitField0_ & 0x00000008) != 0)) { + metricDefinitions_ = new java.util.ArrayList(metricDefinitions_); + bitField0_ |= 0x00000008; + } + } + + private com.google.protobuf.RepeatedFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinitionOrBuilder> metricDefinitionsBuilder_; + + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public java.util.List getMetricDefinitionsList() { + if (metricDefinitionsBuilder_ == null) { + return java.util.Collections.unmodifiableList(metricDefinitions_); + } else { + return metricDefinitionsBuilder_.getMessageList(); + } + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public int getMetricDefinitionsCount() { + if (metricDefinitionsBuilder_ == null) { + return metricDefinitions_.size(); + } else { + return metricDefinitionsBuilder_.getCount(); + } + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition getMetricDefinitions(int index) { + if (metricDefinitionsBuilder_ == null) { + return metricDefinitions_.get(index); + } else { + return metricDefinitionsBuilder_.getMessage(index); + } + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder setMetricDefinitions( + int index, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition value) { + if (metricDefinitionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureMetricDefinitionsIsMutable(); + metricDefinitions_.set(index, value); + onChanged(); + } else { + metricDefinitionsBuilder_.setMessage(index, value); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder setMetricDefinitions( + int index, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder builderForValue) { + if (metricDefinitionsBuilder_ == null) { + ensureMetricDefinitionsIsMutable(); + metricDefinitions_.set(index, builderForValue.build()); + onChanged(); + } else { + metricDefinitionsBuilder_.setMessage(index, builderForValue.build()); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder addMetricDefinitions(flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition value) { + if (metricDefinitionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureMetricDefinitionsIsMutable(); + metricDefinitions_.add(value); + onChanged(); + } else { + metricDefinitionsBuilder_.addMessage(value); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder addMetricDefinitions( + int index, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition value) { + if (metricDefinitionsBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + ensureMetricDefinitionsIsMutable(); + metricDefinitions_.add(index, value); + onChanged(); + } else { + metricDefinitionsBuilder_.addMessage(index, value); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder addMetricDefinitions( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder builderForValue) { + if (metricDefinitionsBuilder_ == null) { + ensureMetricDefinitionsIsMutable(); + metricDefinitions_.add(builderForValue.build()); + onChanged(); + } else { + metricDefinitionsBuilder_.addMessage(builderForValue.build()); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder addMetricDefinitions( + int index, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder builderForValue) { + if (metricDefinitionsBuilder_ == null) { + ensureMetricDefinitionsIsMutable(); + metricDefinitions_.add(index, builderForValue.build()); + onChanged(); + } else { + metricDefinitionsBuilder_.addMessage(index, builderForValue.build()); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder addAllMetricDefinitions( + java.lang.Iterable values) { + if (metricDefinitionsBuilder_ == null) { + ensureMetricDefinitionsIsMutable(); + com.google.protobuf.AbstractMessageLite.Builder.addAll( + values, metricDefinitions_); + onChanged(); + } else { + metricDefinitionsBuilder_.addAllMessages(values); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder clearMetricDefinitions() { + if (metricDefinitionsBuilder_ == null) { + metricDefinitions_ = java.util.Collections.emptyList(); + bitField0_ = (bitField0_ & ~0x00000008); + onChanged(); + } else { + metricDefinitionsBuilder_.clear(); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public Builder removeMetricDefinitions(int index) { + if (metricDefinitionsBuilder_ == null) { + ensureMetricDefinitionsIsMutable(); + metricDefinitions_.remove(index); + onChanged(); + } else { + metricDefinitionsBuilder_.remove(index); + } + return this; + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder getMetricDefinitionsBuilder( + int index) { + return getMetricDefinitionsFieldBuilder().getBuilder(index); + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinitionOrBuilder getMetricDefinitionsOrBuilder( + int index) { + if (metricDefinitionsBuilder_ == null) { + return metricDefinitions_.get(index); } else { + return metricDefinitionsBuilder_.getMessageOrBuilder(index); + } + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public java.util.List + getMetricDefinitionsOrBuilderList() { + if (metricDefinitionsBuilder_ != null) { + return metricDefinitionsBuilder_.getMessageOrBuilderList(); + } else { + return java.util.Collections.unmodifiableList(metricDefinitions_); + } + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder addMetricDefinitionsBuilder() { + return getMetricDefinitionsFieldBuilder().addBuilder( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.getDefaultInstance()); + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder addMetricDefinitionsBuilder( + int index) { + return getMetricDefinitionsFieldBuilder().addBuilder( + index, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.getDefaultInstance()); + } + /** + *
+       * A list of metric definitions for SageMaker to evaluate/track on the progress of the training job
+       * See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html
+       * and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html
+       * 
+ * + * repeated .flyteidl.plugins.sagemaker.MetricDefinition metric_definitions = 4; + */ + public java.util.List + getMetricDefinitionsBuilderList() { + return getMetricDefinitionsFieldBuilder().getBuilderList(); + } + private com.google.protobuf.RepeatedFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinitionOrBuilder> + getMetricDefinitionsFieldBuilder() { + if (metricDefinitionsBuilder_ == null) { + metricDefinitionsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinition.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.MetricDefinitionOrBuilder>( + metricDefinitions_, + ((bitField0_ & 0x00000008) != 0), + getParentForChildren(), + isClean()); + metricDefinitions_ = null; + } + return metricDefinitionsBuilder_; + } + + private int inputContentType_ = 0; + /** + *
+       * The content type of the input
+       * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+       * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + public int getInputContentTypeValue() { + return inputContentType_; + } + /** + *
+       * The content type of the input
+       * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+       * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + public Builder setInputContentTypeValue(int value) { + inputContentType_ = value; + onChanged(); + return this; + } + /** + *
+       * The content type of the input
+       * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+       * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value getInputContentType() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value result = flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value.valueOf(inputContentType_); + return result == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value.UNRECOGNIZED : result; + } + /** + *
+       * The content type of the input
+       * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+       * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + public Builder setInputContentType(flyteidl.plugins.sagemaker.TrainingJobOuterClass.InputContentType.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + inputContentType_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * The content type of the input
+       * See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html
+       * https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html
+       * 
+ * + * .flyteidl.plugins.sagemaker.InputContentType.Value input_content_type = 5; + */ + public Builder clearInputContentType() { + + inputContentType_ = 0; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.AlgorithmSpecification) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.AlgorithmSpecification) + private static final flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification(); + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public AlgorithmSpecification parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new AlgorithmSpecification(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface DistributedProtocolOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.DistributedProtocol) + com.google.protobuf.MessageOrBuilder { + } + /** + *
+   * When enabling distributed training on a training job, the user should use this message to tell Flyte and SageMaker
+   * what kind of distributed protocol he/she wants to use to distribute the work.
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.DistributedProtocol} + */ + public static final class DistributedProtocol extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.DistributedProtocol) + DistributedProtocolOrBuilder { + private static final long serialVersionUID = 0L; + // Use DistributedProtocol.newBuilder() to construct. + private DistributedProtocol(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private DistributedProtocol() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private DistributedProtocol( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Builder.class); + } + + /** + * Protobuf enum {@code flyteidl.plugins.sagemaker.DistributedProtocol.Value} + */ + public enum Value + implements com.google.protobuf.ProtocolMessageEnum { + /** + *
+       * Use this value if the user wishes to use framework-native distributed training interfaces.
+       * If this value is used, Flyte won't configure SageMaker to initialize unnecessary components such as
+       * OpenMPI or Parameter Server.
+       * 
+ * + * UNSPECIFIED = 0; + */ + UNSPECIFIED(0), + /** + *
+       * Use this value if the user wishes to use MPI as the underlying protocol for her distributed training job
+       * MPI is a framework-agnostic distributed protocol. It has multiple implementations. Currently, we have only
+       * tested the OpenMPI implementation, which is the recommended implementation for Horovod.
+       * 
+ * + * MPI = 1; + */ + MPI(1), + UNRECOGNIZED(-1), + ; + + /** + *
+       * Use this value if the user wishes to use framework-native distributed training interfaces.
+       * If this value is used, Flyte won't configure SageMaker to initialize unnecessary components such as
+       * OpenMPI or Parameter Server.
+       * 
+ * + * UNSPECIFIED = 0; + */ + public static final int UNSPECIFIED_VALUE = 0; + /** + *
+       * Use this value if the user wishes to use MPI as the underlying protocol for her distributed training job
+       * MPI is a framework-agnostic distributed protocol. It has multiple implementations. Currently, we have only
+       * tested the OpenMPI implementation, which is the recommended implementation for Horovod.
+       * 
+ * + * MPI = 1; + */ + public static final int MPI_VALUE = 1; + + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static Value valueOf(int value) { + return forNumber(value); + } + + public static Value forNumber(int value) { + switch (value) { + case 0: return UNSPECIFIED; + case 1: return MPI; + default: return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap + internalGetValueMap() { + return internalValueMap; + } + private static final com.google.protobuf.Internal.EnumLiteMap< + Value> internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public Value findValueByNumber(int number) { + return Value.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor + getValueDescriptor() { + return getDescriptor().getValues().get(ordinal()); + } + public final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptorForType() { + return getDescriptor(); + } + public static final com.google.protobuf.Descriptors.EnumDescriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.getDescriptor().getEnumTypes().get(0); + } + + private static final Value[] VALUES = values(); + + public static Value valueOf( + com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException( + "EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private Value(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:flyteidl.plugins.sagemaker.DistributedProtocol.Value) + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol other = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * When enabling distributed training on a training job, the user should use this message to tell Flyte and SageMaker
+     * what kind of distributed protocol he/she wants to use to distribute the work.
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.DistributedProtocol} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.DistributedProtocol) + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocolOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol build() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol buildPartial() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol result = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol) { + return mergeFrom((flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol other) { + if (other == flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.getDefaultInstance()) return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.DistributedProtocol) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.DistributedProtocol) + private static final flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol(); + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public DistributedProtocol parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new DistributedProtocol(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface TrainingJobResourceConfigOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + com.google.protobuf.MessageOrBuilder { + + /** + *
+     * The number of ML compute instances to use. For distributed training, provide a value greater than 1.
+     * 
+ * + * int64 instance_count = 1; + */ + long getInstanceCount(); + + /** + *
+     * The ML compute instance type
+     * 
+ * + * string instance_type = 2; + */ + java.lang.String getInstanceType(); + /** + *
+     * The ML compute instance type
+     * 
+ * + * string instance_type = 2; + */ + com.google.protobuf.ByteString + getInstanceTypeBytes(); + + /** + *
+     * The size of the ML storage volume that you want to provision.
+     * 
+ * + * int64 volume_size_in_gb = 3; + */ + long getVolumeSizeInGb(); + + /** + *
+     * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+     * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+     * field should be set to the corresponding enum value
+     * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + int getDistributedProtocolValue(); + /** + *
+     * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+     * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+     * field should be set to the corresponding enum value
+     * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value getDistributedProtocol(); + } + /** + *
+   * TrainingJobResourceConfig is a pass-through, specifying the instance type to use for the training job, the
+   * number of instances to launch, and the size of the ML storage volume the user wants to provision
+   * Refer to SageMaker official doc for more details: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.TrainingJobResourceConfig} + */ + public static final class TrainingJobResourceConfig extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + TrainingJobResourceConfigOrBuilder { + private static final long serialVersionUID = 0L; + // Use TrainingJobResourceConfig.newBuilder() to construct. + private TrainingJobResourceConfig(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private TrainingJobResourceConfig() { + instanceType_ = ""; + distributedProtocol_ = 0; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private TrainingJobResourceConfig( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 8: { + + instanceCount_ = input.readInt64(); + break; + } + case 18: { + java.lang.String s = input.readStringRequireUtf8(); + + instanceType_ = s; + break; + } + case 24: { + + volumeSizeInGb_ = input.readInt64(); + break; + } + case 32: { + int rawValue = input.readEnum(); + + distributedProtocol_ = rawValue; + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.Builder.class); + } + + public static final int INSTANCE_COUNT_FIELD_NUMBER = 1; + private long instanceCount_; + /** + *
+     * The number of ML compute instances to use. For distributed training, provide a value greater than 1.
+     * 
+ * + * int64 instance_count = 1; + */ + public long getInstanceCount() { + return instanceCount_; + } + + public static final int INSTANCE_TYPE_FIELD_NUMBER = 2; + private volatile java.lang.Object instanceType_; + /** + *
+     * The ML compute instance type
+     * 
+ * + * string instance_type = 2; + */ + public java.lang.String getInstanceType() { + java.lang.Object ref = instanceType_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + instanceType_ = s; + return s; + } + } + /** + *
+     * The ML compute instance type
+     * 
+ * + * string instance_type = 2; + */ + public com.google.protobuf.ByteString + getInstanceTypeBytes() { + java.lang.Object ref = instanceType_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + instanceType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int VOLUME_SIZE_IN_GB_FIELD_NUMBER = 3; + private long volumeSizeInGb_; + /** + *
+     * The size of the ML storage volume that you want to provision.
+     * 
+ * + * int64 volume_size_in_gb = 3; + */ + public long getVolumeSizeInGb() { + return volumeSizeInGb_; + } + + public static final int DISTRIBUTED_PROTOCOL_FIELD_NUMBER = 4; + private int distributedProtocol_; + /** + *
+     * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+     * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+     * field should be set to the corresponding enum value
+     * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + public int getDistributedProtocolValue() { + return distributedProtocol_; + } + /** + *
+     * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+     * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+     * field should be set to the corresponding enum value
+     * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value getDistributedProtocol() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value result = flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value.valueOf(distributedProtocol_); + return result == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value.UNRECOGNIZED : result; + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (instanceCount_ != 0L) { + output.writeInt64(1, instanceCount_); + } + if (!getInstanceTypeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, instanceType_); + } + if (volumeSizeInGb_ != 0L) { + output.writeInt64(3, volumeSizeInGb_); + } + if (distributedProtocol_ != flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value.UNSPECIFIED.getNumber()) { + output.writeEnum(4, distributedProtocol_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (instanceCount_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size(1, instanceCount_); + } + if (!getInstanceTypeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, instanceType_); + } + if (volumeSizeInGb_ != 0L) { + size += com.google.protobuf.CodedOutputStream + .computeInt64Size(3, volumeSizeInGb_); + } + if (distributedProtocol_ != flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value.UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream + .computeEnumSize(4, distributedProtocol_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig other = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig) obj; + + if (getInstanceCount() + != other.getInstanceCount()) return false; + if (!getInstanceType() + .equals(other.getInstanceType())) return false; + if (getVolumeSizeInGb() + != other.getVolumeSizeInGb()) return false; + if (distributedProtocol_ != other.distributedProtocol_) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + INSTANCE_COUNT_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getInstanceCount()); + hash = (37 * hash) + INSTANCE_TYPE_FIELD_NUMBER; + hash = (53 * hash) + getInstanceType().hashCode(); + hash = (37 * hash) + VOLUME_SIZE_IN_GB_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong( + getVolumeSizeInGb()); + hash = (37 * hash) + DISTRIBUTED_PROTOCOL_FIELD_NUMBER; + hash = (53 * hash) + distributedProtocol_; + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * TrainingJobResourceConfig is a pass-through, specifying the instance type to use for the training job, the
+     * number of instances to launch, and the size of the ML storage volume the user wants to provision
+     * Refer to SageMaker official doc for more details: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.TrainingJobResourceConfig} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + instanceCount_ = 0L; + + instanceType_ = ""; + + volumeSizeInGb_ = 0L; + + distributedProtocol_ = 0; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig build() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig buildPartial() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig result = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig(this); + result.instanceCount_ = instanceCount_; + result.instanceType_ = instanceType_; + result.volumeSizeInGb_ = volumeSizeInGb_; + result.distributedProtocol_ = distributedProtocol_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig) { + return mergeFrom((flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig other) { + if (other == flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.getDefaultInstance()) return this; + if (other.getInstanceCount() != 0L) { + setInstanceCount(other.getInstanceCount()); + } + if (!other.getInstanceType().isEmpty()) { + instanceType_ = other.instanceType_; + onChanged(); + } + if (other.getVolumeSizeInGb() != 0L) { + setVolumeSizeInGb(other.getVolumeSizeInGb()); + } + if (other.distributedProtocol_ != 0) { + setDistributedProtocolValue(other.getDistributedProtocolValue()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private long instanceCount_ ; + /** + *
+       * The number of ML compute instances to use. For distributed training, provide a value greater than 1.
+       * 
+ * + * int64 instance_count = 1; + */ + public long getInstanceCount() { + return instanceCount_; + } + /** + *
+       * The number of ML compute instances to use. For distributed training, provide a value greater than 1.
+       * 
+ * + * int64 instance_count = 1; + */ + public Builder setInstanceCount(long value) { + + instanceCount_ = value; + onChanged(); + return this; + } + /** + *
+       * The number of ML compute instances to use. For distributed training, provide a value greater than 1.
+       * 
+ * + * int64 instance_count = 1; + */ + public Builder clearInstanceCount() { + + instanceCount_ = 0L; + onChanged(); + return this; + } + + private java.lang.Object instanceType_ = ""; + /** + *
+       * The ML compute instance type
+       * 
+ * + * string instance_type = 2; + */ + public java.lang.String getInstanceType() { + java.lang.Object ref = instanceType_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = + (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + instanceType_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + *
+       * The ML compute instance type
+       * 
+ * + * string instance_type = 2; + */ + public com.google.protobuf.ByteString + getInstanceTypeBytes() { + java.lang.Object ref = instanceType_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8( + (java.lang.String) ref); + instanceType_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + *
+       * The ML compute instance type
+       * 
+ * + * string instance_type = 2; + */ + public Builder setInstanceType( + java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + instanceType_ = value; + onChanged(); + return this; + } + /** + *
+       * The ML compute instance type
+       * 
+ * + * string instance_type = 2; + */ + public Builder clearInstanceType() { + + instanceType_ = getDefaultInstance().getInstanceType(); + onChanged(); + return this; + } + /** + *
+       * The ML compute instance type
+       * 
+ * + * string instance_type = 2; + */ + public Builder setInstanceTypeBytes( + com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + instanceType_ = value; + onChanged(); + return this; + } + + private long volumeSizeInGb_ ; + /** + *
+       * The size of the ML storage volume that you want to provision.
+       * 
+ * + * int64 volume_size_in_gb = 3; + */ + public long getVolumeSizeInGb() { + return volumeSizeInGb_; + } + /** + *
+       * The size of the ML storage volume that you want to provision.
+       * 
+ * + * int64 volume_size_in_gb = 3; + */ + public Builder setVolumeSizeInGb(long value) { + + volumeSizeInGb_ = value; + onChanged(); + return this; + } + /** + *
+       * The size of the ML storage volume that you want to provision.
+       * 
+ * + * int64 volume_size_in_gb = 3; + */ + public Builder clearVolumeSizeInGb() { + + volumeSizeInGb_ = 0L; + onChanged(); + return this; + } + + private int distributedProtocol_ = 0; + /** + *
+       * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+       * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+       * field should be set to the corresponding enum value
+       * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + public int getDistributedProtocolValue() { + return distributedProtocol_; + } + /** + *
+       * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+       * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+       * field should be set to the corresponding enum value
+       * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + public Builder setDistributedProtocolValue(int value) { + distributedProtocol_ = value; + onChanged(); + return this; + } + /** + *
+       * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+       * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+       * field should be set to the corresponding enum value
+       * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value getDistributedProtocol() { + @SuppressWarnings("deprecation") + flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value result = flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value.valueOf(distributedProtocol_); + return result == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value.UNRECOGNIZED : result; + } + /** + *
+       * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+       * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+       * field should be set to the corresponding enum value
+       * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + public Builder setDistributedProtocol(flyteidl.plugins.sagemaker.TrainingJobOuterClass.DistributedProtocol.Value value) { + if (value == null) { + throw new NullPointerException(); + } + + distributedProtocol_ = value.getNumber(); + onChanged(); + return this; + } + /** + *
+       * When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training.
+       * If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this
+       * field should be set to the corresponding enum value
+       * 
+ * + * .flyteidl.plugins.sagemaker.DistributedProtocol.Value distributed_protocol = 4; + */ + public Builder clearDistributedProtocol() { + + distributedProtocol_ = 0; + onChanged(); + return this; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.TrainingJobResourceConfig) + private static final flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig(); + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public TrainingJobResourceConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new TrainingJobResourceConfig(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + public interface TrainingJobOrBuilder extends + // @@protoc_insertion_point(interface_extends:flyteidl.plugins.sagemaker.TrainingJob) + com.google.protobuf.MessageOrBuilder { + + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + boolean hasAlgorithmSpecification(); + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification getAlgorithmSpecification(); + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecificationOrBuilder getAlgorithmSpecificationOrBuilder(); + + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + boolean hasTrainingJobResourceConfig(); + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig getTrainingJobResourceConfig(); + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfigOrBuilder getTrainingJobResourceConfigOrBuilder(); + } + /** + *
+   * The spec of a training job. This is mostly a pass-through object
+   * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html
+   * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.TrainingJob} + */ + public static final class TrainingJob extends + com.google.protobuf.GeneratedMessageV3 implements + // @@protoc_insertion_point(message_implements:flyteidl.plugins.sagemaker.TrainingJob) + TrainingJobOrBuilder { + private static final long serialVersionUID = 0L; + // Use TrainingJob.newBuilder() to construct. + private TrainingJob(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + private TrainingJob() { + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet + getUnknownFields() { + return this.unknownFields; + } + private TrainingJob( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.Builder subBuilder = null; + if (algorithmSpecification_ != null) { + subBuilder = algorithmSpecification_.toBuilder(); + } + algorithmSpecification_ = input.readMessage(flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(algorithmSpecification_); + algorithmSpecification_ = subBuilder.buildPartial(); + } + + break; + } + case 18: { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.Builder subBuilder = null; + if (trainingJobResourceConfig_ != null) { + subBuilder = trainingJobResourceConfig_.toBuilder(); + } + trainingJobResourceConfig_ = input.readMessage(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(trainingJobResourceConfig_); + trainingJobResourceConfig_ = subBuilder.buildPartial(); + } + + break; + } + default: { + if (!parseUnknownField( + input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException( + e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJob_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJob_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.Builder.class); + } + + public static final int ALGORITHM_SPECIFICATION_FIELD_NUMBER = 1; + private flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification algorithmSpecification_; + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public boolean hasAlgorithmSpecification() { + return algorithmSpecification_ != null; + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification getAlgorithmSpecification() { + return algorithmSpecification_ == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.getDefaultInstance() : algorithmSpecification_; + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecificationOrBuilder getAlgorithmSpecificationOrBuilder() { + return getAlgorithmSpecification(); + } + + public static final int TRAINING_JOB_RESOURCE_CONFIG_FIELD_NUMBER = 2; + private flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig trainingJobResourceConfig_; + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public boolean hasTrainingJobResourceConfig() { + return trainingJobResourceConfig_ != null; + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig getTrainingJobResourceConfig() { + return trainingJobResourceConfig_ == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.getDefaultInstance() : trainingJobResourceConfig_; + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfigOrBuilder getTrainingJobResourceConfigOrBuilder() { + return getTrainingJobResourceConfig(); + } + + private byte memoizedIsInitialized = -1; + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) + throws java.io.IOException { + if (algorithmSpecification_ != null) { + output.writeMessage(1, getAlgorithmSpecification()); + } + if (trainingJobResourceConfig_ != null) { + output.writeMessage(2, getTrainingJobResourceConfig()); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (algorithmSpecification_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(1, getAlgorithmSpecification()); + } + if (trainingJobResourceConfig_ != null) { + size += com.google.protobuf.CodedOutputStream + .computeMessageSize(2, getTrainingJobResourceConfig()); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob)) { + return super.equals(obj); + } + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob other = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob) obj; + + if (hasAlgorithmSpecification() != other.hasAlgorithmSpecification()) return false; + if (hasAlgorithmSpecification()) { + if (!getAlgorithmSpecification() + .equals(other.getAlgorithmSpecification())) return false; + } + if (hasTrainingJobResourceConfig() != other.hasTrainingJobResourceConfig()) return false; + if (hasTrainingJobResourceConfig()) { + if (!getTrainingJobResourceConfig() + .equals(other.getTrainingJobResourceConfig())) return false; + } + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + if (hasAlgorithmSpecification()) { + hash = (37 * hash) + ALGORITHM_SPECIFICATION_FIELD_NUMBER; + hash = (53 * hash) + getAlgorithmSpecification().hashCode(); + } + if (hasTrainingJobResourceConfig()) { + hash = (37 * hash) + TRAINING_JOB_RESOURCE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getTrainingJobResourceConfig().hashCode(); + } + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom( + java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom( + java.nio.ByteBuffer data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom( + byte[] data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseDelimitedFrom( + java.io.InputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseDelimitedWithIOException(PARSER, input, extensionRegistry); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom( + com.google.protobuf.CodedInputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input); + } + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3 + .parseWithIOException(PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { return newBuilder(); } + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + public static Builder newBuilder(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE + ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + *
+     * The spec of a training job. This is mostly a pass-through object
+     * https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html
+     * 
+ * + * Protobuf type {@code flyteidl.plugins.sagemaker.TrainingJob} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder implements + // @@protoc_insertion_point(builder_implements:flyteidl.plugins.sagemaker.TrainingJob) + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor + getDescriptor() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJob_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJob_fieldAccessorTable + .ensureFieldAccessorsInitialized( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.class, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.Builder.class); + } + + // Construct using flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder( + com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3 + .alwaysUseFieldBuilders) { + } + } + @java.lang.Override + public Builder clear() { + super.clear(); + if (algorithmSpecificationBuilder_ == null) { + algorithmSpecification_ = null; + } else { + algorithmSpecification_ = null; + algorithmSpecificationBuilder_ = null; + } + if (trainingJobResourceConfigBuilder_ == null) { + trainingJobResourceConfig_ = null; + } else { + trainingJobResourceConfig_ = null; + trainingJobResourceConfigBuilder_ = null; + } + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor + getDescriptorForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.internal_static_flyteidl_plugins_sagemaker_TrainingJob_descriptor; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob getDefaultInstanceForType() { + return flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.getDefaultInstance(); + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob build() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob buildPartial() { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob result = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob(this); + if (algorithmSpecificationBuilder_ == null) { + result.algorithmSpecification_ = algorithmSpecification_; + } else { + result.algorithmSpecification_ = algorithmSpecificationBuilder_.build(); + } + if (trainingJobResourceConfigBuilder_ == null) { + result.trainingJobResourceConfig_ = trainingJobResourceConfig_; + } else { + result.trainingJobResourceConfig_ = trainingJobResourceConfigBuilder_.build(); + } + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.setField(field, value); + } + @java.lang.Override + public Builder clearField( + com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + @java.lang.Override + public Builder clearOneof( + com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, + java.lang.Object value) { + return super.addRepeatedField(field, value); + } + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob) { + return mergeFrom((flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob other) { + if (other == flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob.getDefaultInstance()) return this; + if (other.hasAlgorithmSpecification()) { + mergeAlgorithmSpecification(other.getAlgorithmSpecification()); + } + if (other.hasTrainingJobResourceConfig()) { + mergeTrainingJobResourceConfig(other.getTrainingJobResourceConfig()); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification algorithmSpecification_; + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecificationOrBuilder> algorithmSpecificationBuilder_; + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public boolean hasAlgorithmSpecification() { + return algorithmSpecificationBuilder_ != null || algorithmSpecification_ != null; + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification getAlgorithmSpecification() { + if (algorithmSpecificationBuilder_ == null) { + return algorithmSpecification_ == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.getDefaultInstance() : algorithmSpecification_; + } else { + return algorithmSpecificationBuilder_.getMessage(); + } + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public Builder setAlgorithmSpecification(flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification value) { + if (algorithmSpecificationBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + algorithmSpecification_ = value; + onChanged(); + } else { + algorithmSpecificationBuilder_.setMessage(value); + } + + return this; + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public Builder setAlgorithmSpecification( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.Builder builderForValue) { + if (algorithmSpecificationBuilder_ == null) { + algorithmSpecification_ = builderForValue.build(); + onChanged(); + } else { + algorithmSpecificationBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public Builder mergeAlgorithmSpecification(flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification value) { + if (algorithmSpecificationBuilder_ == null) { + if (algorithmSpecification_ != null) { + algorithmSpecification_ = + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.newBuilder(algorithmSpecification_).mergeFrom(value).buildPartial(); + } else { + algorithmSpecification_ = value; + } + onChanged(); + } else { + algorithmSpecificationBuilder_.mergeFrom(value); + } + + return this; + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public Builder clearAlgorithmSpecification() { + if (algorithmSpecificationBuilder_ == null) { + algorithmSpecification_ = null; + onChanged(); + } else { + algorithmSpecification_ = null; + algorithmSpecificationBuilder_ = null; + } + + return this; + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.Builder getAlgorithmSpecificationBuilder() { + + onChanged(); + return getAlgorithmSpecificationFieldBuilder().getBuilder(); + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecificationOrBuilder getAlgorithmSpecificationOrBuilder() { + if (algorithmSpecificationBuilder_ != null) { + return algorithmSpecificationBuilder_.getMessageOrBuilder(); + } else { + return algorithmSpecification_ == null ? + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.getDefaultInstance() : algorithmSpecification_; + } + } + /** + * .flyteidl.plugins.sagemaker.AlgorithmSpecification algorithm_specification = 1; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecificationOrBuilder> + getAlgorithmSpecificationFieldBuilder() { + if (algorithmSpecificationBuilder_ == null) { + algorithmSpecificationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecification.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.AlgorithmSpecificationOrBuilder>( + getAlgorithmSpecification(), + getParentForChildren(), + isClean()); + algorithmSpecification_ = null; + } + return algorithmSpecificationBuilder_; + } + + private flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig trainingJobResourceConfig_; + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfigOrBuilder> trainingJobResourceConfigBuilder_; + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public boolean hasTrainingJobResourceConfig() { + return trainingJobResourceConfigBuilder_ != null || trainingJobResourceConfig_ != null; + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig getTrainingJobResourceConfig() { + if (trainingJobResourceConfigBuilder_ == null) { + return trainingJobResourceConfig_ == null ? flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.getDefaultInstance() : trainingJobResourceConfig_; + } else { + return trainingJobResourceConfigBuilder_.getMessage(); + } + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public Builder setTrainingJobResourceConfig(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig value) { + if (trainingJobResourceConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + trainingJobResourceConfig_ = value; + onChanged(); + } else { + trainingJobResourceConfigBuilder_.setMessage(value); + } + + return this; + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public Builder setTrainingJobResourceConfig( + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.Builder builderForValue) { + if (trainingJobResourceConfigBuilder_ == null) { + trainingJobResourceConfig_ = builderForValue.build(); + onChanged(); + } else { + trainingJobResourceConfigBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public Builder mergeTrainingJobResourceConfig(flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig value) { + if (trainingJobResourceConfigBuilder_ == null) { + if (trainingJobResourceConfig_ != null) { + trainingJobResourceConfig_ = + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.newBuilder(trainingJobResourceConfig_).mergeFrom(value).buildPartial(); + } else { + trainingJobResourceConfig_ = value; + } + onChanged(); + } else { + trainingJobResourceConfigBuilder_.mergeFrom(value); + } + + return this; + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public Builder clearTrainingJobResourceConfig() { + if (trainingJobResourceConfigBuilder_ == null) { + trainingJobResourceConfig_ = null; + onChanged(); + } else { + trainingJobResourceConfig_ = null; + trainingJobResourceConfigBuilder_ = null; + } + + return this; + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.Builder getTrainingJobResourceConfigBuilder() { + + onChanged(); + return getTrainingJobResourceConfigFieldBuilder().getBuilder(); + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfigOrBuilder getTrainingJobResourceConfigOrBuilder() { + if (trainingJobResourceConfigBuilder_ != null) { + return trainingJobResourceConfigBuilder_.getMessageOrBuilder(); + } else { + return trainingJobResourceConfig_ == null ? + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.getDefaultInstance() : trainingJobResourceConfig_; + } + } + /** + * .flyteidl.plugins.sagemaker.TrainingJobResourceConfig training_job_resource_config = 2; + */ + private com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfigOrBuilder> + getTrainingJobResourceConfigFieldBuilder() { + if (trainingJobResourceConfigBuilder_ == null) { + trainingJobResourceConfigBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< + flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfig.Builder, flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJobResourceConfigOrBuilder>( + getTrainingJobResourceConfig(), + getParentForChildren(), + isClean()); + trainingJobResourceConfig_ = null; + } + return trainingJobResourceConfigBuilder_; + } + @java.lang.Override + public final Builder setUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + + // @@protoc_insertion_point(builder_scope:flyteidl.plugins.sagemaker.TrainingJob) + } + + // @@protoc_insertion_point(class_scope:flyteidl.plugins.sagemaker.TrainingJob) + private static final flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob DEFAULT_INSTANCE; + static { + DEFAULT_INSTANCE = new flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob(); + } + + public static flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser + PARSER = new com.google.protobuf.AbstractParser() { + @java.lang.Override + public TrainingJob parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new TrainingJob(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public flyteidl.plugins.sagemaker.TrainingJobOuterClass.TrainingJob getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } + + } + + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_InputMode_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_InputMode_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_AlgorithmName_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_AlgorithmName_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_InputContentType_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_InputContentType_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_MetricDefinition_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_MetricDefinition_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_fieldAccessorTable; + private static final com.google.protobuf.Descriptors.Descriptor + internal_static_flyteidl_plugins_sagemaker_TrainingJob_descriptor; + private static final + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_flyteidl_plugins_sagemaker_TrainingJob_fieldAccessorTable; + + public static com.google.protobuf.Descriptors.FileDescriptor + getDescriptor() { + return descriptor; + } + private static com.google.protobuf.Descriptors.FileDescriptor + descriptor; + static { + java.lang.String[] descriptorData = { + "\n-flyteidl/plugins/sagemaker/training_jo" + + "b.proto\022\032flyteidl.plugins.sagemaker\032\036goo" + + "gle/protobuf/duration.proto\"(\n\tInputMode" + + "\"\033\n\005Value\022\010\n\004FILE\020\000\022\010\n\004PIPE\020\001\"1\n\rAlgorit" + + "hmName\" \n\005Value\022\n\n\006CUSTOM\020\000\022\013\n\007XGBOOST\020\001" + + "\")\n\020InputContentType\"\025\n\005Value\022\014\n\010TEXT_CS" + + "V\020\000\"/\n\020MetricDefinition\022\014\n\004name\030\001 \001(\t\022\r\n" + + "\005regex\030\002 \001(\t\"\327\002\n\026AlgorithmSpecification\022" + + "?\n\ninput_mode\030\001 \001(\0162+.flyteidl.plugins.s" + + "agemaker.InputMode.Value\022G\n\016algorithm_na" + + "me\030\002 \001(\0162/.flyteidl.plugins.sagemaker.Al" + + "gorithmName.Value\022\031\n\021algorithm_version\030\003" + + " \001(\t\022H\n\022metric_definitions\030\004 \003(\0132,.flyte" + + "idl.plugins.sagemaker.MetricDefinition\022N" + + "\n\022input_content_type\030\005 \001(\01622.flyteidl.pl" + + "ugins.sagemaker.InputContentType.Value\"8" + + "\n\023DistributedProtocol\"!\n\005Value\022\017\n\013UNSPEC" + + "IFIED\020\000\022\007\n\003MPI\020\001\"\272\001\n\031TrainingJobResource" + + "Config\022\026\n\016instance_count\030\001 \001(\003\022\025\n\rinstan" + + "ce_type\030\002 \001(\t\022\031\n\021volume_size_in_gb\030\003 \001(\003" + + "\022S\n\024distributed_protocol\030\004 \001(\01625.flyteid" + + "l.plugins.sagemaker.DistributedProtocol." + + "Value\"\277\001\n\013TrainingJob\022S\n\027algorithm_speci" + + "fication\030\001 \001(\01322.flyteidl.plugins.sagema" + + "ker.AlgorithmSpecification\022[\n\034training_j" + + "ob_resource_config\030\002 \001(\01325.flyteidl.plug" + + "ins.sagemaker.TrainingJobResourceConfigB" + + "?Z=github.com/flyteorg/flyte/flyteidl/ge" + + "n/pb-go/flyteidl/pluginsb\006proto3" + }; + com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = + new com.google.protobuf.Descriptors.FileDescriptor. InternalDescriptorAssigner() { + public com.google.protobuf.ExtensionRegistry assignDescriptors( + com.google.protobuf.Descriptors.FileDescriptor root) { + descriptor = root; + return null; + } + }; + com.google.protobuf.Descriptors.FileDescriptor + .internalBuildGeneratedFileFrom(descriptorData, + new com.google.protobuf.Descriptors.FileDescriptor[] { + com.google.protobuf.DurationProto.getDescriptor(), + }, assigner); + internal_static_flyteidl_plugins_sagemaker_InputMode_descriptor = + getDescriptor().getMessageTypes().get(0); + internal_static_flyteidl_plugins_sagemaker_InputMode_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_InputMode_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_plugins_sagemaker_AlgorithmName_descriptor = + getDescriptor().getMessageTypes().get(1); + internal_static_flyteidl_plugins_sagemaker_AlgorithmName_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_AlgorithmName_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_plugins_sagemaker_InputContentType_descriptor = + getDescriptor().getMessageTypes().get(2); + internal_static_flyteidl_plugins_sagemaker_InputContentType_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_InputContentType_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_plugins_sagemaker_MetricDefinition_descriptor = + getDescriptor().getMessageTypes().get(3); + internal_static_flyteidl_plugins_sagemaker_MetricDefinition_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_MetricDefinition_descriptor, + new java.lang.String[] { "Name", "Regex", }); + internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_AlgorithmSpecification_descriptor, + new java.lang.String[] { "InputMode", "AlgorithmName", "AlgorithmVersion", "MetricDefinitions", "InputContentType", }); + internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_DistributedProtocol_descriptor, + new java.lang.String[] { }); + internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_descriptor = + getDescriptor().getMessageTypes().get(6); + internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_TrainingJobResourceConfig_descriptor, + new java.lang.String[] { "InstanceCount", "InstanceType", "VolumeSizeInGb", "DistributedProtocol", }); + internal_static_flyteidl_plugins_sagemaker_TrainingJob_descriptor = + getDescriptor().getMessageTypes().get(7); + internal_static_flyteidl_plugins_sagemaker_TrainingJob_fieldAccessorTable = new + com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_flyteidl_plugins_sagemaker_TrainingJob_descriptor, + new java.lang.String[] { "AlgorithmSpecification", "TrainingJobResourceConfig", }); + com.google.protobuf.DurationProto.getDescriptor(); + } + + // @@protoc_insertion_point(outer_class_scope) +} diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/__init__.py b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2.py b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2.py new file mode 100644 index 0000000000..88639ee5ab --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2.py @@ -0,0 +1,45 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import builder as _builder +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from flyteidl.plugins.sagemaker import parameter_ranges_pb2 as flyteidl_dot_plugins_dot_sagemaker_dot_parameter__ranges__pb2 +from flyteidl.plugins.sagemaker import training_job_pb2 as flyteidl_dot_plugins_dot_sagemaker_dot_training__job__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n:flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto\x12\x1a\x66lyteidl.plugins.sagemaker\x1a\x31\x66lyteidl/plugins/sagemaker/parameter_ranges.proto\x1a-flyteidl/plugins/sagemaker/training_job.proto\"\xe0\x01\n\x17HyperparameterTuningJob\x12J\n\x0ctraining_job\x18\x01 \x01(\x0b\x32\'.flyteidl.plugins.sagemaker.TrainingJobR\x0btrainingJob\x12<\n\x1bmax_number_of_training_jobs\x18\x02 \x01(\x03R\x17maxNumberOfTrainingJobs\x12;\n\x1amax_parallel_training_jobs\x18\x03 \x01(\x03R\x17maxParallelTrainingJobs\"H\n!HyperparameterTuningObjectiveType\"#\n\x05Value\x12\x0c\n\x08MINIMIZE\x10\x00\x12\x0c\n\x08MAXIMIZE\x10\x01\"\xac\x01\n\x1dHyperparameterTuningObjective\x12j\n\x0eobjective_type\x18\x01 \x01(\x0e\x32\x43.flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveType.ValueR\robjectiveType\x12\x1f\n\x0bmetric_name\x18\x02 \x01(\tR\nmetricName\"A\n\x1cHyperparameterTuningStrategy\"!\n\x05Value\x12\x0c\n\x08\x42\x41YESIAN\x10\x00\x12\n\n\x06RANDOM\x10\x01\":\n\x1cTrainingJobEarlyStoppingType\"\x1a\n\x05Value\x12\x07\n\x03OFF\x10\x00\x12\x08\n\x04\x41UTO\x10\x01\"\xd9\x03\n\x1dHyperparameterTuningJobConfig\x12`\n\x15hyperparameter_ranges\x18\x01 \x01(\x0b\x32+.flyteidl.plugins.sagemaker.ParameterRangesR\x14hyperparameterRanges\x12g\n\x0ftuning_strategy\x18\x02 \x01(\x0e\x32>.flyteidl.plugins.sagemaker.HyperparameterTuningStrategy.ValueR\x0etuningStrategy\x12\x64\n\x10tuning_objective\x18\x03 \x01(\x0b\x32\x39.flyteidl.plugins.sagemaker.HyperparameterTuningObjectiveR\x0ftuningObjective\x12\x86\x01\n training_job_early_stopping_type\x18\x04 \x01(\x0e\x32>.flyteidl.plugins.sagemaker.TrainingJobEarlyStoppingType.ValueR\x1ctrainingJobEarlyStoppingTypeB\x87\x02\n\x1e\x63om.flyteidl.plugins.sagemakerB\x1cHyperparameterTuningJobProtoP\x01Z=github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins\xa2\x02\x03\x46PS\xaa\x02\x1a\x46lyteidl.Plugins.Sagemaker\xca\x02\x1a\x46lyteidl\\Plugins\\Sagemaker\xe2\x02&Flyteidl\\Plugins\\Sagemaker\\GPBMetadata\xea\x02\x1c\x46lyteidl::Plugins::Sagemakerb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flyteidl.plugins.sagemaker.hyperparameter_tuning_job_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\036com.flyteidl.plugins.sagemakerB\034HyperparameterTuningJobProtoP\001Z=github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins\242\002\003FPS\252\002\032Flyteidl.Plugins.Sagemaker\312\002\032Flyteidl\\Plugins\\Sagemaker\342\002&Flyteidl\\Plugins\\Sagemaker\\GPBMetadata\352\002\034Flyteidl::Plugins::Sagemaker' + _globals['_HYPERPARAMETERTUNINGJOB']._serialized_start=189 + _globals['_HYPERPARAMETERTUNINGJOB']._serialized_end=413 + _globals['_HYPERPARAMETERTUNINGOBJECTIVETYPE']._serialized_start=415 + _globals['_HYPERPARAMETERTUNINGOBJECTIVETYPE']._serialized_end=487 + _globals['_HYPERPARAMETERTUNINGOBJECTIVETYPE_VALUE']._serialized_start=452 + _globals['_HYPERPARAMETERTUNINGOBJECTIVETYPE_VALUE']._serialized_end=487 + _globals['_HYPERPARAMETERTUNINGOBJECTIVE']._serialized_start=490 + _globals['_HYPERPARAMETERTUNINGOBJECTIVE']._serialized_end=662 + _globals['_HYPERPARAMETERTUNINGSTRATEGY']._serialized_start=664 + _globals['_HYPERPARAMETERTUNINGSTRATEGY']._serialized_end=729 + _globals['_HYPERPARAMETERTUNINGSTRATEGY_VALUE']._serialized_start=696 + _globals['_HYPERPARAMETERTUNINGSTRATEGY_VALUE']._serialized_end=729 + _globals['_TRAININGJOBEARLYSTOPPINGTYPE']._serialized_start=731 + _globals['_TRAININGJOBEARLYSTOPPINGTYPE']._serialized_end=789 + _globals['_TRAININGJOBEARLYSTOPPINGTYPE_VALUE']._serialized_start=763 + _globals['_TRAININGJOBEARLYSTOPPINGTYPE_VALUE']._serialized_end=789 + _globals['_HYPERPARAMETERTUNINGJOBCONFIG']._serialized_start=792 + _globals['_HYPERPARAMETERTUNINGJOBCONFIG']._serialized_end=1265 +# @@protoc_insertion_point(module_scope) diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2.pyi b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2.pyi new file mode 100644 index 0000000000..dd17ea4d9c --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2.pyi @@ -0,0 +1,68 @@ +from flyteidl.plugins.sagemaker import parameter_ranges_pb2 as _parameter_ranges_pb2 +from flyteidl.plugins.sagemaker import training_job_pb2 as _training_job_pb2 +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class HyperparameterTuningJob(_message.Message): + __slots__ = ["training_job", "max_number_of_training_jobs", "max_parallel_training_jobs"] + TRAINING_JOB_FIELD_NUMBER: _ClassVar[int] + MAX_NUMBER_OF_TRAINING_JOBS_FIELD_NUMBER: _ClassVar[int] + MAX_PARALLEL_TRAINING_JOBS_FIELD_NUMBER: _ClassVar[int] + training_job: _training_job_pb2.TrainingJob + max_number_of_training_jobs: int + max_parallel_training_jobs: int + def __init__(self, training_job: _Optional[_Union[_training_job_pb2.TrainingJob, _Mapping]] = ..., max_number_of_training_jobs: _Optional[int] = ..., max_parallel_training_jobs: _Optional[int] = ...) -> None: ... + +class HyperparameterTuningObjectiveType(_message.Message): + __slots__ = [] + class Value(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + MINIMIZE: _ClassVar[HyperparameterTuningObjectiveType.Value] + MAXIMIZE: _ClassVar[HyperparameterTuningObjectiveType.Value] + MINIMIZE: HyperparameterTuningObjectiveType.Value + MAXIMIZE: HyperparameterTuningObjectiveType.Value + def __init__(self) -> None: ... + +class HyperparameterTuningObjective(_message.Message): + __slots__ = ["objective_type", "metric_name"] + OBJECTIVE_TYPE_FIELD_NUMBER: _ClassVar[int] + METRIC_NAME_FIELD_NUMBER: _ClassVar[int] + objective_type: HyperparameterTuningObjectiveType.Value + metric_name: str + def __init__(self, objective_type: _Optional[_Union[HyperparameterTuningObjectiveType.Value, str]] = ..., metric_name: _Optional[str] = ...) -> None: ... + +class HyperparameterTuningStrategy(_message.Message): + __slots__ = [] + class Value(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + BAYESIAN: _ClassVar[HyperparameterTuningStrategy.Value] + RANDOM: _ClassVar[HyperparameterTuningStrategy.Value] + BAYESIAN: HyperparameterTuningStrategy.Value + RANDOM: HyperparameterTuningStrategy.Value + def __init__(self) -> None: ... + +class TrainingJobEarlyStoppingType(_message.Message): + __slots__ = [] + class Value(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + OFF: _ClassVar[TrainingJobEarlyStoppingType.Value] + AUTO: _ClassVar[TrainingJobEarlyStoppingType.Value] + OFF: TrainingJobEarlyStoppingType.Value + AUTO: TrainingJobEarlyStoppingType.Value + def __init__(self) -> None: ... + +class HyperparameterTuningJobConfig(_message.Message): + __slots__ = ["hyperparameter_ranges", "tuning_strategy", "tuning_objective", "training_job_early_stopping_type"] + HYPERPARAMETER_RANGES_FIELD_NUMBER: _ClassVar[int] + TUNING_STRATEGY_FIELD_NUMBER: _ClassVar[int] + TUNING_OBJECTIVE_FIELD_NUMBER: _ClassVar[int] + TRAINING_JOB_EARLY_STOPPING_TYPE_FIELD_NUMBER: _ClassVar[int] + hyperparameter_ranges: _parameter_ranges_pb2.ParameterRanges + tuning_strategy: HyperparameterTuningStrategy.Value + tuning_objective: HyperparameterTuningObjective + training_job_early_stopping_type: TrainingJobEarlyStoppingType.Value + def __init__(self, hyperparameter_ranges: _Optional[_Union[_parameter_ranges_pb2.ParameterRanges, _Mapping]] = ..., tuning_strategy: _Optional[_Union[HyperparameterTuningStrategy.Value, str]] = ..., tuning_objective: _Optional[_Union[HyperparameterTuningObjective, _Mapping]] = ..., training_job_early_stopping_type: _Optional[_Union[TrainingJobEarlyStoppingType.Value, str]] = ...) -> None: ... diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2_grpc.py b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/hyperparameter_tuning_job_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2.py b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2.py new file mode 100644 index 0000000000..44e8a00cd0 --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: flyteidl/plugins/sagemaker/parameter_ranges.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import builder as _builder +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n1flyteidl/plugins/sagemaker/parameter_ranges.proto\x12\x1a\x66lyteidl.plugins.sagemaker\"c\n\x19HyperparameterScalingType\"F\n\x05Value\x12\x08\n\x04\x41UTO\x10\x00\x12\n\n\x06LINEAR\x10\x01\x12\x0f\n\x0bLOGARITHMIC\x10\x02\x12\x16\n\x12REVERSELOGARITHMIC\x10\x03\"\xb4\x01\n\x18\x43ontinuousParameterRange\x12\x1b\n\tmax_value\x18\x01 \x01(\x01R\x08maxValue\x12\x1b\n\tmin_value\x18\x02 \x01(\x01R\x08minValue\x12^\n\x0cscaling_type\x18\x03 \x01(\x0e\x32;.flyteidl.plugins.sagemaker.HyperparameterScalingType.ValueR\x0bscalingType\"\xb1\x01\n\x15IntegerParameterRange\x12\x1b\n\tmax_value\x18\x01 \x01(\x03R\x08maxValue\x12\x1b\n\tmin_value\x18\x02 \x01(\x03R\x08minValue\x12^\n\x0cscaling_type\x18\x03 \x01(\x0e\x32;.flyteidl.plugins.sagemaker.HyperparameterScalingType.ValueR\x0bscalingType\"3\n\x19\x43\x61tegoricalParameterRange\x12\x16\n\x06values\x18\x01 \x03(\tR\x06values\"\x89\x03\n\x13ParameterRangeOneOf\x12t\n\x1a\x63ontinuous_parameter_range\x18\x01 \x01(\x0b\x32\x34.flyteidl.plugins.sagemaker.ContinuousParameterRangeH\x00R\x18\x63ontinuousParameterRange\x12k\n\x17integer_parameter_range\x18\x02 \x01(\x0b\x32\x31.flyteidl.plugins.sagemaker.IntegerParameterRangeH\x00R\x15integerParameterRange\x12w\n\x1b\x63\x61tegorical_parameter_range\x18\x03 \x01(\x0b\x32\x35.flyteidl.plugins.sagemaker.CategoricalParameterRangeH\x00R\x19\x63\x61tegoricalParameterRangeB\x16\n\x14parameter_range_type\"\xfc\x01\n\x0fParameterRanges\x12r\n\x13parameter_range_map\x18\x01 \x03(\x0b\x32\x42.flyteidl.plugins.sagemaker.ParameterRanges.ParameterRangeMapEntryR\x11parameterRangeMap\x1au\n\x16ParameterRangeMapEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32/.flyteidl.plugins.sagemaker.ParameterRangeOneOfR\x05value:\x02\x38\x01\x42\xff\x01\n\x1e\x63om.flyteidl.plugins.sagemakerB\x14ParameterRangesProtoP\x01Z=github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins\xa2\x02\x03\x46PS\xaa\x02\x1a\x46lyteidl.Plugins.Sagemaker\xca\x02\x1a\x46lyteidl\\Plugins\\Sagemaker\xe2\x02&Flyteidl\\Plugins\\Sagemaker\\GPBMetadata\xea\x02\x1c\x46lyteidl::Plugins::Sagemakerb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flyteidl.plugins.sagemaker.parameter_ranges_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\036com.flyteidl.plugins.sagemakerB\024ParameterRangesProtoP\001Z=github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins\242\002\003FPS\252\002\032Flyteidl.Plugins.Sagemaker\312\002\032Flyteidl\\Plugins\\Sagemaker\342\002&Flyteidl\\Plugins\\Sagemaker\\GPBMetadata\352\002\034Flyteidl::Plugins::Sagemaker' + _PARAMETERRANGES_PARAMETERRANGEMAPENTRY._options = None + _PARAMETERRANGES_PARAMETERRANGEMAPENTRY._serialized_options = b'8\001' + _globals['_HYPERPARAMETERSCALINGTYPE']._serialized_start=81 + _globals['_HYPERPARAMETERSCALINGTYPE']._serialized_end=180 + _globals['_HYPERPARAMETERSCALINGTYPE_VALUE']._serialized_start=110 + _globals['_HYPERPARAMETERSCALINGTYPE_VALUE']._serialized_end=180 + _globals['_CONTINUOUSPARAMETERRANGE']._serialized_start=183 + _globals['_CONTINUOUSPARAMETERRANGE']._serialized_end=363 + _globals['_INTEGERPARAMETERRANGE']._serialized_start=366 + _globals['_INTEGERPARAMETERRANGE']._serialized_end=543 + _globals['_CATEGORICALPARAMETERRANGE']._serialized_start=545 + _globals['_CATEGORICALPARAMETERRANGE']._serialized_end=596 + _globals['_PARAMETERRANGEONEOF']._serialized_start=599 + _globals['_PARAMETERRANGEONEOF']._serialized_end=992 + _globals['_PARAMETERRANGES']._serialized_start=995 + _globals['_PARAMETERRANGES']._serialized_end=1247 + _globals['_PARAMETERRANGES_PARAMETERRANGEMAPENTRY']._serialized_start=1130 + _globals['_PARAMETERRANGES_PARAMETERRANGEMAPENTRY']._serialized_end=1247 +# @@protoc_insertion_point(module_scope) diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2.pyi b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2.pyi new file mode 100644 index 0000000000..d773c628e6 --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2.pyi @@ -0,0 +1,70 @@ +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class HyperparameterScalingType(_message.Message): + __slots__ = [] + class Value(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + AUTO: _ClassVar[HyperparameterScalingType.Value] + LINEAR: _ClassVar[HyperparameterScalingType.Value] + LOGARITHMIC: _ClassVar[HyperparameterScalingType.Value] + REVERSELOGARITHMIC: _ClassVar[HyperparameterScalingType.Value] + AUTO: HyperparameterScalingType.Value + LINEAR: HyperparameterScalingType.Value + LOGARITHMIC: HyperparameterScalingType.Value + REVERSELOGARITHMIC: HyperparameterScalingType.Value + def __init__(self) -> None: ... + +class ContinuousParameterRange(_message.Message): + __slots__ = ["max_value", "min_value", "scaling_type"] + MAX_VALUE_FIELD_NUMBER: _ClassVar[int] + MIN_VALUE_FIELD_NUMBER: _ClassVar[int] + SCALING_TYPE_FIELD_NUMBER: _ClassVar[int] + max_value: float + min_value: float + scaling_type: HyperparameterScalingType.Value + def __init__(self, max_value: _Optional[float] = ..., min_value: _Optional[float] = ..., scaling_type: _Optional[_Union[HyperparameterScalingType.Value, str]] = ...) -> None: ... + +class IntegerParameterRange(_message.Message): + __slots__ = ["max_value", "min_value", "scaling_type"] + MAX_VALUE_FIELD_NUMBER: _ClassVar[int] + MIN_VALUE_FIELD_NUMBER: _ClassVar[int] + SCALING_TYPE_FIELD_NUMBER: _ClassVar[int] + max_value: int + min_value: int + scaling_type: HyperparameterScalingType.Value + def __init__(self, max_value: _Optional[int] = ..., min_value: _Optional[int] = ..., scaling_type: _Optional[_Union[HyperparameterScalingType.Value, str]] = ...) -> None: ... + +class CategoricalParameterRange(_message.Message): + __slots__ = ["values"] + VALUES_FIELD_NUMBER: _ClassVar[int] + values: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, values: _Optional[_Iterable[str]] = ...) -> None: ... + +class ParameterRangeOneOf(_message.Message): + __slots__ = ["continuous_parameter_range", "integer_parameter_range", "categorical_parameter_range"] + CONTINUOUS_PARAMETER_RANGE_FIELD_NUMBER: _ClassVar[int] + INTEGER_PARAMETER_RANGE_FIELD_NUMBER: _ClassVar[int] + CATEGORICAL_PARAMETER_RANGE_FIELD_NUMBER: _ClassVar[int] + continuous_parameter_range: ContinuousParameterRange + integer_parameter_range: IntegerParameterRange + categorical_parameter_range: CategoricalParameterRange + def __init__(self, continuous_parameter_range: _Optional[_Union[ContinuousParameterRange, _Mapping]] = ..., integer_parameter_range: _Optional[_Union[IntegerParameterRange, _Mapping]] = ..., categorical_parameter_range: _Optional[_Union[CategoricalParameterRange, _Mapping]] = ...) -> None: ... + +class ParameterRanges(_message.Message): + __slots__ = ["parameter_range_map"] + class ParameterRangeMapEntry(_message.Message): + __slots__ = ["key", "value"] + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: ParameterRangeOneOf + def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[ParameterRangeOneOf, _Mapping]] = ...) -> None: ... + PARAMETER_RANGE_MAP_FIELD_NUMBER: _ClassVar[int] + parameter_range_map: _containers.MessageMap[str, ParameterRangeOneOf] + def __init__(self, parameter_range_map: _Optional[_Mapping[str, ParameterRangeOneOf]] = ...) -> None: ... diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2_grpc.py b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/parameter_ranges_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2.py b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2.py new file mode 100644 index 0000000000..4f19e58a68 --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2.py @@ -0,0 +1,50 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: flyteidl/plugins/sagemaker/training_job.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import builder as _builder +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n-flyteidl/plugins/sagemaker/training_job.proto\x12\x1a\x66lyteidl.plugins.sagemaker\x1a\x1egoogle/protobuf/duration.proto\"(\n\tInputMode\"\x1b\n\x05Value\x12\x08\n\x04\x46ILE\x10\x00\x12\x08\n\x04PIPE\x10\x01\"1\n\rAlgorithmName\" \n\x05Value\x12\n\n\x06\x43USTOM\x10\x00\x12\x0b\n\x07XGBOOST\x10\x01\")\n\x10InputContentType\"\x15\n\x05Value\x12\x0c\n\x08TEXT_CSV\x10\x00\"<\n\x10MetricDefinition\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x14\n\x05regex\x18\x02 \x01(\tR\x05regex\"\xa8\x03\n\x16\x41lgorithmSpecification\x12J\n\ninput_mode\x18\x01 \x01(\x0e\x32+.flyteidl.plugins.sagemaker.InputMode.ValueR\tinputMode\x12V\n\x0e\x61lgorithm_name\x18\x02 \x01(\x0e\x32/.flyteidl.plugins.sagemaker.AlgorithmName.ValueR\ralgorithmName\x12+\n\x11\x61lgorithm_version\x18\x03 \x01(\tR\x10\x61lgorithmVersion\x12[\n\x12metric_definitions\x18\x04 \x03(\x0b\x32,.flyteidl.plugins.sagemaker.MetricDefinitionR\x11metricDefinitions\x12`\n\x12input_content_type\x18\x05 \x01(\x0e\x32\x32.flyteidl.plugins.sagemaker.InputContentType.ValueR\x10inputContentType\"8\n\x13\x44istributedProtocol\"!\n\x05Value\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\x07\n\x03MPI\x10\x01\"\xfc\x01\n\x19TrainingJobResourceConfig\x12%\n\x0einstance_count\x18\x01 \x01(\x03R\rinstanceCount\x12#\n\rinstance_type\x18\x02 \x01(\tR\x0cinstanceType\x12)\n\x11volume_size_in_gb\x18\x03 \x01(\x03R\x0evolumeSizeInGb\x12h\n\x14\x64istributed_protocol\x18\x04 \x01(\x0e\x32\x35.flyteidl.plugins.sagemaker.DistributedProtocol.ValueR\x13\x64istributedProtocol\"\xf2\x01\n\x0bTrainingJob\x12k\n\x17\x61lgorithm_specification\x18\x01 \x01(\x0b\x32\x32.flyteidl.plugins.sagemaker.AlgorithmSpecificationR\x16\x61lgorithmSpecification\x12v\n\x1ctraining_job_resource_config\x18\x02 \x01(\x0b\x32\x35.flyteidl.plugins.sagemaker.TrainingJobResourceConfigR\x19trainingJobResourceConfigB\xfb\x01\n\x1e\x63om.flyteidl.plugins.sagemakerB\x10TrainingJobProtoP\x01Z=github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins\xa2\x02\x03\x46PS\xaa\x02\x1a\x46lyteidl.Plugins.Sagemaker\xca\x02\x1a\x46lyteidl\\Plugins\\Sagemaker\xe2\x02&Flyteidl\\Plugins\\Sagemaker\\GPBMetadata\xea\x02\x1c\x46lyteidl::Plugins::Sagemakerb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'flyteidl.plugins.sagemaker.training_job_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\036com.flyteidl.plugins.sagemakerB\020TrainingJobProtoP\001Z=github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins\242\002\003FPS\252\002\032Flyteidl.Plugins.Sagemaker\312\002\032Flyteidl\\Plugins\\Sagemaker\342\002&Flyteidl\\Plugins\\Sagemaker\\GPBMetadata\352\002\034Flyteidl::Plugins::Sagemaker' + _globals['_INPUTMODE']._serialized_start=109 + _globals['_INPUTMODE']._serialized_end=149 + _globals['_INPUTMODE_VALUE']._serialized_start=122 + _globals['_INPUTMODE_VALUE']._serialized_end=149 + _globals['_ALGORITHMNAME']._serialized_start=151 + _globals['_ALGORITHMNAME']._serialized_end=200 + _globals['_ALGORITHMNAME_VALUE']._serialized_start=168 + _globals['_ALGORITHMNAME_VALUE']._serialized_end=200 + _globals['_INPUTCONTENTTYPE']._serialized_start=202 + _globals['_INPUTCONTENTTYPE']._serialized_end=243 + _globals['_INPUTCONTENTTYPE_VALUE']._serialized_start=222 + _globals['_INPUTCONTENTTYPE_VALUE']._serialized_end=243 + _globals['_METRICDEFINITION']._serialized_start=245 + _globals['_METRICDEFINITION']._serialized_end=305 + _globals['_ALGORITHMSPECIFICATION']._serialized_start=308 + _globals['_ALGORITHMSPECIFICATION']._serialized_end=732 + _globals['_DISTRIBUTEDPROTOCOL']._serialized_start=734 + _globals['_DISTRIBUTEDPROTOCOL']._serialized_end=790 + _globals['_DISTRIBUTEDPROTOCOL_VALUE']._serialized_start=757 + _globals['_DISTRIBUTEDPROTOCOL_VALUE']._serialized_end=790 + _globals['_TRAININGJOBRESOURCECONFIG']._serialized_start=793 + _globals['_TRAININGJOBRESOURCECONFIG']._serialized_end=1045 + _globals['_TRAININGJOB']._serialized_start=1048 + _globals['_TRAININGJOB']._serialized_end=1290 +# @@protoc_insertion_point(module_scope) diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2.pyi b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2.pyi new file mode 100644 index 0000000000..38a4bf3ad5 --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2.pyi @@ -0,0 +1,88 @@ +from google.protobuf import duration_pb2 as _duration_pb2 +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class InputMode(_message.Message): + __slots__ = [] + class Value(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + FILE: _ClassVar[InputMode.Value] + PIPE: _ClassVar[InputMode.Value] + FILE: InputMode.Value + PIPE: InputMode.Value + def __init__(self) -> None: ... + +class AlgorithmName(_message.Message): + __slots__ = [] + class Value(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + CUSTOM: _ClassVar[AlgorithmName.Value] + XGBOOST: _ClassVar[AlgorithmName.Value] + CUSTOM: AlgorithmName.Value + XGBOOST: AlgorithmName.Value + def __init__(self) -> None: ... + +class InputContentType(_message.Message): + __slots__ = [] + class Value(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + TEXT_CSV: _ClassVar[InputContentType.Value] + TEXT_CSV: InputContentType.Value + def __init__(self) -> None: ... + +class MetricDefinition(_message.Message): + __slots__ = ["name", "regex"] + NAME_FIELD_NUMBER: _ClassVar[int] + REGEX_FIELD_NUMBER: _ClassVar[int] + name: str + regex: str + def __init__(self, name: _Optional[str] = ..., regex: _Optional[str] = ...) -> None: ... + +class AlgorithmSpecification(_message.Message): + __slots__ = ["input_mode", "algorithm_name", "algorithm_version", "metric_definitions", "input_content_type"] + INPUT_MODE_FIELD_NUMBER: _ClassVar[int] + ALGORITHM_NAME_FIELD_NUMBER: _ClassVar[int] + ALGORITHM_VERSION_FIELD_NUMBER: _ClassVar[int] + METRIC_DEFINITIONS_FIELD_NUMBER: _ClassVar[int] + INPUT_CONTENT_TYPE_FIELD_NUMBER: _ClassVar[int] + input_mode: InputMode.Value + algorithm_name: AlgorithmName.Value + algorithm_version: str + metric_definitions: _containers.RepeatedCompositeFieldContainer[MetricDefinition] + input_content_type: InputContentType.Value + def __init__(self, input_mode: _Optional[_Union[InputMode.Value, str]] = ..., algorithm_name: _Optional[_Union[AlgorithmName.Value, str]] = ..., algorithm_version: _Optional[str] = ..., metric_definitions: _Optional[_Iterable[_Union[MetricDefinition, _Mapping]]] = ..., input_content_type: _Optional[_Union[InputContentType.Value, str]] = ...) -> None: ... + +class DistributedProtocol(_message.Message): + __slots__ = [] + class Value(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = [] + UNSPECIFIED: _ClassVar[DistributedProtocol.Value] + MPI: _ClassVar[DistributedProtocol.Value] + UNSPECIFIED: DistributedProtocol.Value + MPI: DistributedProtocol.Value + def __init__(self) -> None: ... + +class TrainingJobResourceConfig(_message.Message): + __slots__ = ["instance_count", "instance_type", "volume_size_in_gb", "distributed_protocol"] + INSTANCE_COUNT_FIELD_NUMBER: _ClassVar[int] + INSTANCE_TYPE_FIELD_NUMBER: _ClassVar[int] + VOLUME_SIZE_IN_GB_FIELD_NUMBER: _ClassVar[int] + DISTRIBUTED_PROTOCOL_FIELD_NUMBER: _ClassVar[int] + instance_count: int + instance_type: str + volume_size_in_gb: int + distributed_protocol: DistributedProtocol.Value + def __init__(self, instance_count: _Optional[int] = ..., instance_type: _Optional[str] = ..., volume_size_in_gb: _Optional[int] = ..., distributed_protocol: _Optional[_Union[DistributedProtocol.Value, str]] = ...) -> None: ... + +class TrainingJob(_message.Message): + __slots__ = ["algorithm_specification", "training_job_resource_config"] + ALGORITHM_SPECIFICATION_FIELD_NUMBER: _ClassVar[int] + TRAINING_JOB_RESOURCE_CONFIG_FIELD_NUMBER: _ClassVar[int] + algorithm_specification: AlgorithmSpecification + training_job_resource_config: TrainingJobResourceConfig + def __init__(self, algorithm_specification: _Optional[_Union[AlgorithmSpecification, _Mapping]] = ..., training_job_resource_config: _Optional[_Union[TrainingJobResourceConfig, _Mapping]] = ...) -> None: ... diff --git a/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2_grpc.py b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2_grpc.py new file mode 100644 index 0000000000..2daafffebf --- /dev/null +++ b/flyteidl/gen/pb_python/flyteidl/plugins/sagemaker/training_job_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/flyteidl/gen/pb_rust/flyteidl.plugins.sagemaker.rs b/flyteidl/gen/pb_rust/flyteidl.plugins.sagemaker.rs new file mode 100644 index 0000000000..1b89dd28f2 --- /dev/null +++ b/flyteidl/gen/pb_rust/flyteidl.plugins.sagemaker.rs @@ -0,0 +1,493 @@ +// @generated +/// HyperparameterScalingType defines the way to increase or decrease the value of the hyperparameter +/// For details, refer to: +/// See examples of these scaling type, refer to: +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct HyperparameterScalingType { +} +/// Nested message and enum types in `HyperparameterScalingType`. +pub mod hyperparameter_scaling_type { + #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] + #[repr(i32)] + pub enum Value { + Auto = 0, + Linear = 1, + Logarithmic = 2, + Reverselogarithmic = 3, + } + impl Value { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Value::Auto => "AUTO", + Value::Linear => "LINEAR", + Value::Logarithmic => "LOGARITHMIC", + Value::Reverselogarithmic => "REVERSELOGARITHMIC", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "AUTO" => Some(Self::Auto), + "LINEAR" => Some(Self::Linear), + "LOGARITHMIC" => Some(Self::Logarithmic), + "REVERSELOGARITHMIC" => Some(Self::Reverselogarithmic), + _ => None, + } + } + } +} +/// ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing +/// users to specify the search space of a floating-point hyperparameter +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct ContinuousParameterRange { + #[prost(double, tag="1")] + pub max_value: f64, + #[prost(double, tag="2")] + pub min_value: f64, + #[prost(enumeration="hyperparameter_scaling_type::Value", tag="3")] + pub scaling_type: i32, +} +/// IntegerParameterRange refers to a discrete range of hyperparameter values, allowing +/// users to specify the search space of an integer hyperparameter +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct IntegerParameterRange { + #[prost(int64, tag="1")] + pub max_value: i64, + #[prost(int64, tag="2")] + pub min_value: i64, + #[prost(enumeration="hyperparameter_scaling_type::Value", tag="3")] + pub scaling_type: i32, +} +/// ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing +/// users to specify the search space of a floating-point hyperparameter +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct CategoricalParameterRange { + #[prost(string, repeated, tag="1")] + pub values: ::prost::alloc::vec::Vec<::prost::alloc::string::String>, +} +/// ParameterRangeOneOf describes a single ParameterRange, which is a one-of structure that can be one of +/// the three possible types: ContinuousParameterRange, IntegerParameterRange, and CategoricalParameterRange. +/// This one-of structure in Flyte enables specifying a Parameter in a type-safe manner +/// See: +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct ParameterRangeOneOf { + #[prost(oneof="parameter_range_one_of::ParameterRangeType", tags="1, 2, 3")] + pub parameter_range_type: ::core::option::Option, +} +/// Nested message and enum types in `ParameterRangeOneOf`. +pub mod parameter_range_one_of { + #[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Oneof)] + pub enum ParameterRangeType { + #[prost(message, tag="1")] + ContinuousParameterRange(super::ContinuousParameterRange), + #[prost(message, tag="2")] + IntegerParameterRange(super::IntegerParameterRange), + #[prost(message, tag="3")] + CategoricalParameterRange(super::CategoricalParameterRange), + } +} +/// ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct ParameterRanges { + #[prost(map="string, message", tag="1")] + pub parameter_range_map: ::std::collections::HashMap<::prost::alloc::string::String, ParameterRangeOneOf>, +} +/// The input mode that the algorithm supports. When using the File input mode, SageMaker downloads +/// the training data from S3 to the provisioned ML storage Volume, and mounts the directory to docker +/// volume for training container. When using Pipe input mode, Amazon SageMaker streams data directly +/// from S3 to the container. +/// See: +/// For the input modes that different SageMaker algorithms support, see: +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct InputMode { +} +/// Nested message and enum types in `InputMode`. +pub mod input_mode { + #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] + #[repr(i32)] + pub enum Value { + File = 0, + Pipe = 1, + } + impl Value { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Value::File => "FILE", + Value::Pipe => "PIPE", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "FILE" => Some(Self::File), + "PIPE" => Some(Self::Pipe), + _ => None, + } + } + } +} +/// The algorithm name is used for deciding which pre-built image to point to. +/// This is only required for use cases where SageMaker's built-in algorithm mode is used. +/// While we currently only support a subset of the algorithms, more will be added to the list. +/// See: +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct AlgorithmName { +} +/// Nested message and enum types in `AlgorithmName`. +pub mod algorithm_name { + #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] + #[repr(i32)] + pub enum Value { + Custom = 0, + Xgboost = 1, + } + impl Value { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Value::Custom => "CUSTOM", + Value::Xgboost => "XGBOOST", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "CUSTOM" => Some(Self::Custom), + "XGBOOST" => Some(Self::Xgboost), + _ => None, + } + } + } +} +/// Specifies the type of file for input data. Different SageMaker built-in algorithms require different file types of input data +/// See +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct InputContentType { +} +/// Nested message and enum types in `InputContentType`. +pub mod input_content_type { + #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] + #[repr(i32)] + pub enum Value { + TextCsv = 0, + } + impl Value { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Value::TextCsv => "TEXT_CSV", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "TEXT_CSV" => Some(Self::TextCsv), + _ => None, + } + } + } +} +/// Specifies a metric that the training algorithm writes to stderr or stdout. +/// This object is a pass-through. +/// See this for details: +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct MetricDefinition { + /// User-defined name of the metric + #[prost(string, tag="1")] + pub name: ::prost::alloc::string::String, + /// SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics + #[prost(string, tag="2")] + pub regex: ::prost::alloc::string::String, +} +/// Specifies the training algorithm to be used in the training job +/// This object is mostly a pass-through, with a couple of exceptions include: (1) in Flyte, users don't need to specify +/// TrainingImage; either use the built-in algorithm mode by using Flytekit's Simple Training Job and specifying an algorithm +/// name and an algorithm version or (2) when users want to supply custom algorithms they should set algorithm_name field to +/// CUSTOM. In this case, the value of the algorithm_version field has no effect +/// For pass-through use cases: refer to this AWS official document for more details +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct AlgorithmSpecification { + /// The input mode can be either PIPE or FILE + #[prost(enumeration="input_mode::Value", tag="1")] + pub input_mode: i32, + /// The algorithm name is used for deciding which pre-built image to point to + #[prost(enumeration="algorithm_name::Value", tag="2")] + pub algorithm_name: i32, + /// The algorithm version field is used for deciding which pre-built image to point to + /// This is only needed for use cases where SageMaker's built-in algorithm mode is chosen + #[prost(string, tag="3")] + pub algorithm_version: ::prost::alloc::string::String, + /// A list of metric definitions for SageMaker to evaluate/track on the progress of the training job + /// See this: + /// and this: + #[prost(message, repeated, tag="4")] + pub metric_definitions: ::prost::alloc::vec::Vec, + /// The content type of the input + /// See + /// + #[prost(enumeration="input_content_type::Value", tag="5")] + pub input_content_type: i32, +} +/// When enabling distributed training on a training job, the user should use this message to tell Flyte and SageMaker +/// what kind of distributed protocol he/she wants to use to distribute the work. +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct DistributedProtocol { +} +/// Nested message and enum types in `DistributedProtocol`. +pub mod distributed_protocol { + #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] + #[repr(i32)] + pub enum Value { + /// Use this value if the user wishes to use framework-native distributed training interfaces. + /// If this value is used, Flyte won't configure SageMaker to initialize unnecessary components such as + /// OpenMPI or Parameter Server. + Unspecified = 0, + /// Use this value if the user wishes to use MPI as the underlying protocol for her distributed training job + /// MPI is a framework-agnostic distributed protocol. It has multiple implementations. Currently, we have only + /// tested the OpenMPI implementation, which is the recommended implementation for Horovod. + Mpi = 1, + } + impl Value { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Value::Unspecified => "UNSPECIFIED", + Value::Mpi => "MPI", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "UNSPECIFIED" => Some(Self::Unspecified), + "MPI" => Some(Self::Mpi), + _ => None, + } + } + } +} +/// TrainingJobResourceConfig is a pass-through, specifying the instance type to use for the training job, the +/// number of instances to launch, and the size of the ML storage volume the user wants to provision +/// Refer to SageMaker official doc for more details: +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct TrainingJobResourceConfig { + /// The number of ML compute instances to use. For distributed training, provide a value greater than 1. + #[prost(int64, tag="1")] + pub instance_count: i64, + /// The ML compute instance type + #[prost(string, tag="2")] + pub instance_type: ::prost::alloc::string::String, + /// The size of the ML storage volume that you want to provision. + #[prost(int64, tag="3")] + pub volume_size_in_gb: i64, + /// When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training. + /// If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this + /// field should be set to the corresponding enum value + #[prost(enumeration="distributed_protocol::Value", tag="4")] + pub distributed_protocol: i32, +} +/// The spec of a training job. This is mostly a pass-through object +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct TrainingJob { + #[prost(message, optional, tag="1")] + pub algorithm_specification: ::core::option::Option, + #[prost(message, optional, tag="2")] + pub training_job_resource_config: ::core::option::Option, +} +/// A pass-through for SageMaker's hyperparameter tuning job +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct HyperparameterTuningJob { + /// The underlying training job that the hyperparameter tuning job will launch during the process + #[prost(message, optional, tag="1")] + pub training_job: ::core::option::Option, + /// The maximum number of training jobs that an hpo job can launch. For resource limit purpose. + /// + #[prost(int64, tag="2")] + pub max_number_of_training_jobs: i64, + /// The maximum number of concurrent training job that an hpo job can launch + /// + #[prost(int64, tag="3")] + pub max_parallel_training_jobs: i64, +} +/// HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job +/// with respect to the specified metric. +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct HyperparameterTuningObjectiveType { +} +/// Nested message and enum types in `HyperparameterTuningObjectiveType`. +pub mod hyperparameter_tuning_objective_type { + #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] + #[repr(i32)] + pub enum Value { + Minimize = 0, + Maximize = 1, + } + impl Value { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Value::Minimize => "MINIMIZE", + Value::Maximize => "MAXIMIZE", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "MINIMIZE" => Some(Self::Minimize), + "MAXIMIZE" => Some(Self::Maximize), + _ => None, + } + } + } +} +/// The target metric and the objective of the hyperparameter tuning. +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct HyperparameterTuningObjective { + /// HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job + /// with respect to the specified metric. + #[prost(enumeration="hyperparameter_tuning_objective_type::Value", tag="1")] + pub objective_type: i32, + /// The target metric name, which is the user-defined name of the metric specified in the + /// training job's algorithm specification + #[prost(string, tag="2")] + pub metric_name: ::prost::alloc::string::String, +} +/// Setting the strategy used when searching in the hyperparameter space +/// Refer this doc for more details: +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct HyperparameterTuningStrategy { +} +/// Nested message and enum types in `HyperparameterTuningStrategy`. +pub mod hyperparameter_tuning_strategy { + #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] + #[repr(i32)] + pub enum Value { + Bayesian = 0, + Random = 1, + } + impl Value { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Value::Bayesian => "BAYESIAN", + Value::Random => "RANDOM", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "BAYESIAN" => Some(Self::Bayesian), + "RANDOM" => Some(Self::Random), + _ => None, + } + } + } +} +/// When the training jobs launched by the hyperparameter tuning job are not improving significantly, +/// a hyperparameter tuning job can be stopping early. +/// Note that there's only a subset of built-in algorithms that supports early stopping. +/// see: +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct TrainingJobEarlyStoppingType { +} +/// Nested message and enum types in `TrainingJobEarlyStoppingType`. +pub mod training_job_early_stopping_type { + #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)] + #[repr(i32)] + pub enum Value { + Off = 0, + Auto = 1, + } + impl Value { + /// String value of the enum field names used in the ProtoBuf definition. + /// + /// The values are not transformed in any way and thus are considered stable + /// (if the ProtoBuf definition does not change) and safe for programmatic use. + pub fn as_str_name(&self) -> &'static str { + match self { + Value::Off => "OFF", + Value::Auto => "AUTO", + } + } + /// Creates an enum from field names used in the ProtoBuf definition. + pub fn from_str_name(value: &str) -> ::core::option::Option { + match value { + "OFF" => Some(Self::Off), + "AUTO" => Some(Self::Auto), + _ => None, + } + } + } +} +/// The specification of the hyperparameter tuning process +/// +#[allow(clippy::derive_partial_eq_without_eq)] +#[derive(Clone, PartialEq, ::prost::Message)] +pub struct HyperparameterTuningJobConfig { + /// ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range + #[prost(message, optional, tag="1")] + pub hyperparameter_ranges: ::core::option::Option, + /// Setting the strategy used when searching in the hyperparameter space + #[prost(enumeration="hyperparameter_tuning_strategy::Value", tag="2")] + pub tuning_strategy: i32, + /// The target metric and the objective of the hyperparameter tuning. + #[prost(message, optional, tag="3")] + pub tuning_objective: ::core::option::Option, + /// When the training jobs launched by the hyperparameter tuning job are not improving significantly, + /// a hyperparameter tuning job can be stopping early. + #[prost(enumeration="training_job_early_stopping_type::Value", tag="4")] + pub training_job_early_stopping_type: i32, +} +// @@protoc_insertion_point(module) diff --git a/flyteidl/protos/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto b/flyteidl/protos/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto new file mode 100644 index 0000000000..1643b9a2dc --- /dev/null +++ b/flyteidl/protos/flyteidl/plugins/sagemaker/hyperparameter_tuning_job.proto @@ -0,0 +1,83 @@ +syntax = "proto3"; + +package flyteidl.plugins.sagemaker; + +option go_package = "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins"; + +import "flyteidl/plugins/sagemaker/parameter_ranges.proto"; +import "flyteidl/plugins/sagemaker/training_job.proto"; + +// A pass-through for SageMaker's hyperparameter tuning job +message HyperparameterTuningJob { + // The underlying training job that the hyperparameter tuning job will launch during the process + TrainingJob training_job = 1; + + // The maximum number of training jobs that an hpo job can launch. For resource limit purpose. + // https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html + int64 max_number_of_training_jobs = 2; + + // The maximum number of concurrent training job that an hpo job can launch + // https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ResourceLimits.html + int64 max_parallel_training_jobs = 3; +} + +// HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job +// with respect to the specified metric. +message HyperparameterTuningObjectiveType { + enum Value { + MINIMIZE = 0; + MAXIMIZE = 1; + } +} + +// The target metric and the objective of the hyperparameter tuning. +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html +message HyperparameterTuningObjective { + + // HyperparameterTuningObjectiveType determines the direction of the tuning of the Hyperparameter Tuning Job + // with respect to the specified metric. + HyperparameterTuningObjectiveType.Value objective_type = 1; + + // The target metric name, which is the user-defined name of the metric specified in the + // training job's algorithm specification + string metric_name = 2; +} + + +// Setting the strategy used when searching in the hyperparameter space +// Refer this doc for more details: +// https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-automatic-model-tuning-now-supports-random-search-and-hyperparameter-scaling/ +message HyperparameterTuningStrategy { + enum Value { + BAYESIAN = 0; + RANDOM = 1; + } +} + +// When the training jobs launched by the hyperparameter tuning job are not improving significantly, +// a hyperparameter tuning job can be stopping early. +// Note that there's only a subset of built-in algorithms that supports early stopping. +// see: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-early-stopping.html +message TrainingJobEarlyStoppingType { + enum Value { + OFF = 0; + AUTO = 1; + } +} + +// The specification of the hyperparameter tuning process +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-ex-tuning-job.html#automatic-model-tuning-ex-low-tuning-config +message HyperparameterTuningJobConfig { + // ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range + ParameterRanges hyperparameter_ranges = 1; + + // Setting the strategy used when searching in the hyperparameter space + HyperparameterTuningStrategy.Value tuning_strategy = 2; + + // The target metric and the objective of the hyperparameter tuning. + HyperparameterTuningObjective tuning_objective = 3; + + // When the training jobs launched by the hyperparameter tuning job are not improving significantly, + // a hyperparameter tuning job can be stopping early. + TrainingJobEarlyStoppingType.Value training_job_early_stopping_type = 4; +} diff --git a/flyteidl/protos/flyteidl/plugins/sagemaker/parameter_ranges.proto b/flyteidl/protos/flyteidl/plugins/sagemaker/parameter_ranges.proto new file mode 100644 index 0000000000..b237e6deb8 --- /dev/null +++ b/flyteidl/protos/flyteidl/plugins/sagemaker/parameter_ranges.proto @@ -0,0 +1,61 @@ +syntax = "proto3"; + +package flyteidl.plugins.sagemaker; + +option go_package = "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins"; + +// HyperparameterScalingType defines the way to increase or decrease the value of the hyperparameter +// For details, refer to: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +// See examples of these scaling type, refer to: https://aws.amazon.com/blogs/machine-learning/amazon-sagemaker-automatic-model-tuning-now-supports-random-search-and-hyperparameter-scaling/ +message HyperparameterScalingType { + enum Value { + AUTO = 0; + LINEAR = 1; + LOGARITHMIC = 2; + REVERSELOGARITHMIC = 3; + } +} + +// ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing +// users to specify the search space of a floating-point hyperparameter +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +message ContinuousParameterRange { + double max_value = 1; + double min_value = 2; + HyperparameterScalingType.Value scaling_type = 3; +} + +// IntegerParameterRange refers to a discrete range of hyperparameter values, allowing +// users to specify the search space of an integer hyperparameter +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +message IntegerParameterRange { + int64 max_value = 1; + int64 min_value = 2; + HyperparameterScalingType.Value scaling_type = 3; +} + +// ContinuousParameterRange refers to a continuous range of hyperparameter values, allowing +// users to specify the search space of a floating-point hyperparameter +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +message CategoricalParameterRange { + repeated string values = 1; +} + + +// ParameterRangeOneOf describes a single ParameterRange, which is a one-of structure that can be one of +// the three possible types: ContinuousParameterRange, IntegerParameterRange, and CategoricalParameterRange. +// This one-of structure in Flyte enables specifying a Parameter in a type-safe manner +// See: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +message ParameterRangeOneOf { + oneof parameter_range_type { + ContinuousParameterRange continuous_parameter_range = 1; + IntegerParameterRange integer_parameter_range = 2; + CategoricalParameterRange categorical_parameter_range = 3; + } +} + +// ParameterRanges is a map that maps hyperparameter name to the corresponding hyperparameter range +// https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-ranges.html +message ParameterRanges { + map parameter_range_map = 1; +} diff --git a/flyteidl/protos/flyteidl/plugins/sagemaker/training_job.proto b/flyteidl/protos/flyteidl/plugins/sagemaker/training_job.proto new file mode 100644 index 0000000000..dedbaf24fb --- /dev/null +++ b/flyteidl/protos/flyteidl/plugins/sagemaker/training_job.proto @@ -0,0 +1,119 @@ +syntax = "proto3"; + +package flyteidl.plugins.sagemaker; + +import "google/protobuf/duration.proto"; + +option go_package = "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins"; + +// The input mode that the algorithm supports. When using the File input mode, SageMaker downloads +// the training data from S3 to the provisioned ML storage Volume, and mounts the directory to docker +// volume for training container. When using Pipe input mode, Amazon SageMaker streams data directly +// from S3 to the container. +// See: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html +// For the input modes that different SageMaker algorithms support, see: +// https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html +message InputMode { + enum Value { + FILE = 0; + PIPE = 1; + } +} + +// The algorithm name is used for deciding which pre-built image to point to. +// This is only required for use cases where SageMaker's built-in algorithm mode is used. +// While we currently only support a subset of the algorithms, more will be added to the list. +// See: https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html +message AlgorithmName { + enum Value { + CUSTOM = 0; + XGBOOST = 1; + } +} + + +// Specifies the type of file for input data. Different SageMaker built-in algorithms require different file types of input data +// See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html +// https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html +message InputContentType { + enum Value { + TEXT_CSV = 0; + } +} + +// Specifies a metric that the training algorithm writes to stderr or stdout. +// This object is a pass-through. +// See this for details: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_MetricDefinition.html +message MetricDefinition { + // User-defined name of the metric + string name = 1; + // SageMaker hyperparameter tuning parses your algorithm’s stdout and stderr streams to find algorithm metrics + string regex = 2; +} + + +// Specifies the training algorithm to be used in the training job +// This object is mostly a pass-through, with a couple of exceptions include: (1) in Flyte, users don't need to specify +// TrainingImage; either use the built-in algorithm mode by using Flytekit's Simple Training Job and specifying an algorithm +// name and an algorithm version or (2) when users want to supply custom algorithms they should set algorithm_name field to +// CUSTOM. In this case, the value of the algorithm_version field has no effect +// For pass-through use cases: refer to this AWS official document for more details +// https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html +message AlgorithmSpecification { + // The input mode can be either PIPE or FILE + InputMode.Value input_mode = 1; + + // The algorithm name is used for deciding which pre-built image to point to + AlgorithmName.Value algorithm_name = 2; + // The algorithm version field is used for deciding which pre-built image to point to + // This is only needed for use cases where SageMaker's built-in algorithm mode is chosen + string algorithm_version = 3; + + // A list of metric definitions for SageMaker to evaluate/track on the progress of the training job + // See this: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AlgorithmSpecification.html + // and this: https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-define-metrics.html + repeated MetricDefinition metric_definitions = 4; + + // The content type of the input + // See https://docs.aws.amazon.com/sagemaker/latest/dg/cdf-training.html + // https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html + InputContentType.Value input_content_type = 5; +} + +// When enabling distributed training on a training job, the user should use this message to tell Flyte and SageMaker +// what kind of distributed protocol he/she wants to use to distribute the work. +message DistributedProtocol { + enum Value { + // Use this value if the user wishes to use framework-native distributed training interfaces. + // If this value is used, Flyte won't configure SageMaker to initialize unnecessary components such as + // OpenMPI or Parameter Server. + UNSPECIFIED = 0; + // Use this value if the user wishes to use MPI as the underlying protocol for her distributed training job + // MPI is a framework-agnostic distributed protocol. It has multiple implementations. Currently, we have only + // tested the OpenMPI implementation, which is the recommended implementation for Horovod. + MPI = 1; + } +} + +// TrainingJobResourceConfig is a pass-through, specifying the instance type to use for the training job, the +// number of instances to launch, and the size of the ML storage volume the user wants to provision +// Refer to SageMaker official doc for more details: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html +message TrainingJobResourceConfig { + // The number of ML compute instances to use. For distributed training, provide a value greater than 1. + int64 instance_count = 1; + // The ML compute instance type + string instance_type = 2; + // The size of the ML storage volume that you want to provision. + int64 volume_size_in_gb = 3; + // When users specify an instance_count > 1, Flyte will try to configure SageMaker to enable distributed training. + // If the users wish to use framework-agnostic distributed protocol such as MPI or Parameter Server, this + // field should be set to the corresponding enum value + DistributedProtocol.Value distributed_protocol = 4; +} + +// The spec of a training job. This is mostly a pass-through object +// https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html +message TrainingJob { + AlgorithmSpecification algorithm_specification = 1; + TrainingJobResourceConfig training_job_resource_config = 2; +} diff --git a/flyteplugins/go.mod b/flyteplugins/go.mod index 4a660cffbd..72af6857e1 100644 --- a/flyteplugins/go.mod +++ b/flyteplugins/go.mod @@ -4,6 +4,8 @@ go 1.19 require ( github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625 + github.com/Masterminds/semver v1.5.0 + github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d github.com/aws/aws-sdk-go v1.44.2 github.com/aws/aws-sdk-go-v2 v1.2.0 github.com/aws/aws-sdk-go-v2/config v1.0.0 @@ -21,20 +23,20 @@ require ( github.com/magiconair/properties v1.8.6 github.com/mitchellh/mapstructure v1.5.0 github.com/pkg/errors v0.9.1 - github.com/prometheus/client_golang v1.16.0 + github.com/prometheus/client_golang v1.12.1 github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.8.4 - golang.org/x/net v0.13.0 - golang.org/x/oauth2 v0.8.0 + golang.org/x/net v0.9.0 + golang.org/x/oauth2 v0.7.0 google.golang.org/api v0.114.0 google.golang.org/grpc v1.56.1 google.golang.org/protobuf v1.30.0 gotest.tools v2.2.0+incompatible - k8s.io/api v0.28.2 - k8s.io/apimachinery v0.28.2 - k8s.io/client-go v0.28.1 - k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 + k8s.io/api v0.24.1 + k8s.io/apimachinery v0.24.1 + k8s.io/client-go v0.24.1 + k8s.io/utils v0.0.0-20230209194617-a36077c30491 sigs.k8s.io/controller-runtime v0.12.1 ) @@ -54,6 +56,7 @@ require ( github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect github.com/Azure/go-autorest/logger v0.2.1 // indirect github.com/Azure/go-autorest/tracing v0.6.0 // indirect + github.com/adammck/venv v0.0.0-20200610172036-e77789703e7c // indirect github.com/aws/aws-sdk-go-v2/credentials v1.0.0 // indirect github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.0.0 // indirect github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.0 // indirect @@ -65,21 +68,20 @@ require ( github.com/cespare/xxhash/v2 v2.2.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/emicklei/go-restful/v3 v3.9.0 // indirect - github.com/evanphx/json-patch v5.6.0+incompatible // indirect - github.com/evanphx/json-patch/v5 v5.6.0 // indirect + github.com/evanphx/json-patch v4.12.0+incompatible // indirect github.com/fatih/color v1.13.0 // indirect github.com/flyteorg/stow v0.3.7 // indirect - github.com/fsnotify/fsnotify v1.6.0 // indirect + github.com/fsnotify/fsnotify v1.5.1 // indirect github.com/ghodss/yaml v1.0.0 // indirect - github.com/go-logr/logr v1.2.4 // indirect + github.com/go-logr/logr v1.2.3 // indirect github.com/go-openapi/jsonpointer v0.19.6 // indirect - github.com/go-openapi/jsonreference v0.20.2 // indirect + github.com/go-openapi/jsonreference v0.20.1 // indirect github.com/go-openapi/swag v0.22.3 // indirect github.com/gofrs/uuid v4.2.0+incompatible // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang-jwt/jwt/v4 v4.4.1 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/google/gnostic-models v0.6.8 // indirect + github.com/google/gnostic v0.5.7-v3refs // indirect github.com/google/go-cmp v0.5.9 // indirect github.com/google/gofuzz v1.2.0 // indirect github.com/google/uuid v1.3.0 // indirect @@ -87,14 +89,14 @@ require ( github.com/googleapis/gax-go/v2 v2.7.1 // indirect github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.12 // indirect github.com/mattn/go-isatty v0.0.14 // indirect - github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect + github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect @@ -102,53 +104,43 @@ require ( github.com/pelletier/go-toml v1.9.4 // indirect github.com/pelletier/go-toml/v2 v2.0.0-beta.8 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/prometheus/client_model v0.4.0 // indirect - github.com/prometheus/common v0.44.0 // indirect - github.com/prometheus/procfs v0.10.1 // indirect + github.com/prometheus/client_model v0.2.0 // indirect + github.com/prometheus/common v0.32.1 // indirect + github.com/prometheus/procfs v0.7.3 // indirect github.com/sirupsen/logrus v1.8.1 // indirect github.com/spf13/afero v1.9.2 // indirect github.com/spf13/cast v1.4.1 // indirect - github.com/spf13/cobra v1.7.0 // indirect + github.com/spf13/cobra v1.4.0 // indirect github.com/spf13/jwalterweatherman v1.1.0 // indirect github.com/spf13/viper v1.11.0 // indirect github.com/stretchr/objx v0.5.0 // indirect github.com/subosito/gotenv v1.2.0 // indirect go.opencensus.io v0.24.0 // indirect - golang.org/x/crypto v0.11.0 // indirect - golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e // indirect - golang.org/x/sys v0.11.0 // indirect - golang.org/x/term v0.10.0 // indirect - golang.org/x/text v0.11.0 // indirect - golang.org/x/time v0.3.0 // indirect + golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e // indirect + golang.org/x/sys v0.7.0 // indirect + golang.org/x/term v0.7.0 // indirect + golang.org/x/text v0.9.0 // indirect + golang.org/x/time v0.1.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 // indirect + google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.66.4 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/klog/v2 v2.100.1 // indirect - k8s.io/kube-openapi v0.0.0-20230717233707-2695361300d9 // indirect + k8s.io/klog/v2 v2.90.1 // indirect + k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect sigs.k8s.io/yaml v1.3.0 // indirect ) replace ( + github.com/aws/amazon-sagemaker-operator-for-k8s => github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d github.com/flyteorg/flyte/datacatalog => ../datacatalog github.com/flyteorg/flyte/flyteadmin => ../flyteadmin github.com/flyteorg/flyte/flyteidl => ../flyteidl github.com/flyteorg/flyte/flyteplugins => ../flyteplugins github.com/flyteorg/flyte/flytepropeller => ../flytepropeller github.com/flyteorg/flyte/flytestdlib => ../flytestdlib - github.com/google/gnostic-models => github.com/google/gnostic-models v0.6.8 - github.com/robfig/cron/v3 => github.com/unionai/cron/v3 v3.0.2-0.20220915080349-5790c370e63a - k8s.io/api => k8s.io/api v0.28.2 - k8s.io/apimachinery => k8s.io/apimachinery v0.28.2 - k8s.io/client-go => k8s.io/client-go v0.28.2 - k8s.io/klog/v2 => k8s.io/klog/v2 v2.60.1 - k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f - sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.16.2 ) diff --git a/flyteplugins/go.sum b/flyteplugins/go.sum index 41639d44a5..b47b530091 100644 --- a/flyteplugins/go.sum +++ b/flyteplugins/go.sum @@ -17,6 +17,9 @@ cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHOb cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= cloud.google.com/go v0.75.0/go.mod h1:VGuuCn7PG0dwsd5XPVm2Mm3wlh3EL55/79EKB6hlPTY= +cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= +cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= +cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= cloud.google.com/go v0.110.0 h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys= cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= @@ -56,20 +59,30 @@ github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.2 h1:Px2KVERcYEg2Lv25AqC2hVr github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.2/go.mod h1:CdSJQNNzZhCkwDaV27XV1w48ZBPtxe7mlrZAsPNxD5g= github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0 h1:0nJeKDmB7a1a8RDMjTltahlPsaNlWjq/LpkZleSwINk= github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0/go.mod h1:mbwxKc/fW+IkF0GG591MuXw0KuEQBDkeRoZ9vmVJPxg= +github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.9.0/go.mod h1:xyHB1BMZT0cuDHU7I0+g046+BFDTQ8rEZB0s4Yfa6bI= +github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= github.com/Azure/go-autorest/autorest v0.11.27 h1:F3R3q42aWytozkV8ihzcgMO4OA4cuqr3bNlsEuF6//A= github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U= +github.com/Azure/go-autorest/autorest/adal v0.5.0/go.mod h1:8Z9fGy2MpX0PvDjB1pEgQTmVqjGhiHBW7RJJEciWzS0= +github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= github.com/Azure/go-autorest/autorest/adal v0.9.18 h1:kLnPsRjzZZUF3K5REu/Kc+qMQrvuza2bwSnNdhmzLfQ= github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= +github.com/Azure/go-autorest/autorest/date v0.1.0/go.mod h1:plvfp3oPSKwf2DNjlBjWF/7vwR+cUD/ELuzDCXwHUVA= github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= +github.com/Azure/go-autorest/autorest/mocks v0.1.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0= +github.com/Azure/go-autorest/autorest/mocks v0.2.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0= github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= github.com/Azure/go-autorest/autorest/mocks v0.4.2 h1:PGN4EDXnuQbojHbU0UWoNvmu9AGVwYHG9/fkDYhtAfw= github.com/Azure/go-autorest/autorest/mocks v0.4.2/go.mod h1:Vy7OitM9Kei0i1Oj+LvyAWMXJHeKH1MVlzFugfVrmyU= github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= +github.com/Azure/go-autorest/logger v0.1.0/go.mod h1:oExouG+K6PryycPJfVSxi/koC6LSNgds39diKLz7Vrc= github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg= github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/tracing v0.5.0/go.mod h1:r/s2XiOKccPW3HrqB+W0TQzfbtp2fGCgRFtBroKn4Dk= github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo= github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0 h1:WVsrXCnHlDDX8ls+tootqRE87/hL9S/g4ewig9RsD/c= @@ -77,9 +90,35 @@ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03 github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625 h1:cQyO5JQ2iuHnEcF3v24kdDMsgh04RjyFPDtuvD6PCE0= github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625/go.mod h1:6PnrZv6zUDkrNMw0mIoGRmGBR7i9LulhKPmxFq4rUiM= +github.com/Jeffail/gabs/v2 v2.5.1/go.mod h1:xCn81vdHKxFUuWWAaD5jCTQDNPBMh5pPs9IJ+NcziBI= +github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww= +github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/purell v1.1.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/adammck/venv v0.0.0-20160819025605-8a9c907a37d3/go.mod h1:3zXR2a/VSQndtpShh783rUTaEA2mpqN2VqZclBARBc0= +github.com/adammck/venv v0.0.0-20200610172036-e77789703e7c h1:RoL0r3mR3JSkLur8q8AD59cByJ+kRwJHODNimZBd7GI= +github.com/adammck/venv v0.0.0-20200610172036-e77789703e7c/go.mod h1:3zXR2a/VSQndtpShh783rUTaEA2mpqN2VqZclBARBc0= +github.com/agnivade/levenshtein v1.0.1/go.mod h1:CURSv5d9Uaml+FovSIICkLbAUZ9S4RqaHDIsdSBg7lM= +github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= +github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= +github.com/asaskevich/govalidator v0.0.0-20180720115003-f9ffefc3facf/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= +github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= +github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d h1:O+ayl/Vp3bDEXReXItmYHzCnsz/LKusXdRNiJKVxjPs= +github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d/go.mod h1:mZUP7GJmjiWtf8v3FD1X/QdK08BqyeH/1Ejt0qhNzCs= +github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-sdk-go v1.44.2 h1:5VBk5r06bgxgRKVaUtm1/4NT/rtrnH2E4cnAYv5zgQc= github.com/aws/aws-sdk-go v1.44.2/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go-v2 v1.0.0/go.mod h1:smfAbmpW+tcRVuNUjo3MOArSZmW72t62rkCzc2i0TWM= @@ -102,11 +141,17 @@ github.com/aws/smithy-go v1.1.0 h1:D6CSsM3gdxaGaqXnPgOBCeL6Mophqzu7KJOu7zW78sU= github.com/aws/smithy-go v1.1.0/go.mod h1:EzMw8dbp/YJL4A5/sbhGddag+NPT7q084agLbB9LgIw= github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1 h1:VRtJdDi2lqc3MFwmouppm2jlm6icF+7H3WYKpLENMTo= github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1/go.mod h1:jvdWlw8vowVGnZqSDC7yhPd7AifQeQbRDkZcQXV2nRg= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/blang/semver v3.5.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927 h1:SKI1/fuSdodxmNNyVBR8d7X/HuLnRpvvFO0AgyQk764= @@ -117,17 +162,40 @@ github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDk github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= github.com/coocood/freecache v1.1.1 h1:uukNF7QKCZEdZ9gAV7WQzvh0SbjwdMF6m3x3rxEkaPc= github.com/coocood/freecache v1.1.1/go.mod h1:OKrEjkGVoxZhyWAJoeFi5BMLUJm2Tit0kpGkIr7NGYY= -github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk= +github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/coreos/pkg v0.0.0-20180108230652-97fdf19511ea/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE= +github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/dask/dask-kubernetes/v2023 v2023.0.0-20230626103304-abd02cd17b26 h1:6RByIva89lKEvwIzNQSUNcu8NG1p1wwwC4mJfVk/kqw= github.com/dask/dask-kubernetes/v2023 v2023.0.0-20230626103304-abd02cd17b26/go.mod h1:OqIYr2QnxR3sQK2XahJIyWVcjz38LQ4GNcUzqezFpRg= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/dnaeon/go-vcr v1.1.0 h1:ReYa/UBrRyQdant9B4fNHGoCNKw6qh6P0fsdGmZpR7c= github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko= +github.com/docker/docker v0.7.3-0.20190327010347-be7ac8be2ae0/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= +github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= github.com/emicklei/go-restful/v3 v3.9.0 h1:XwGDlfxEnQZzuopoqxwSEllNcCOM9DhhFyhFIIGKwxE= github.com/emicklei/go-restful/v3 v3.9.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= @@ -136,36 +204,108 @@ github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1m github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U= -github.com/evanphx/json-patch v5.6.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch/v5 v5.6.0 h1:b91NhWfaz02IuVxO9faSllyAtNXHMPkC5J8sJCLunww= -github.com/evanphx/json-patch/v5 v5.6.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= +github.com/evanphx/json-patch v0.0.0-20200808040245-162e5629780b/go.mod h1:NAJj0yf/KaRKURN6nyi7A9IZydMivZEm9oQLWNjfKDc= +github.com/evanphx/json-patch v4.2.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.5.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84= +github.com/evanphx/json-patch v4.12.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/flyteorg/stow v0.3.7 h1:Cx7j8/Ux6+toD5hp5fy++927V+yAcAttDeQAlUD/864= github.com/flyteorg/stow v0.3.7/go.mod h1:5dfBitPM004dwaZdoVylVjxFT4GWAgI0ghAndhNUzCo= -github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= -github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/fsnotify/fsnotify v1.5.1 h1:mZcQUHVQUQWoPXXtuf9yuEXKudkV2sx1E06UadKWpgI= +github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU= +github.com/getkin/kin-openapi v0.76.0/go.mod h1:660oXbgy5JFMKreazJaQTw7o+X00qeSyhcnluiMv+Xg= +github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/globalsign/mgo v0.0.0-20180905125535-1ca0a4f7cbcb/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= +github.com/globalsign/mgo v0.0.0-20181015135952-eeefdecb41b8/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= +github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= +github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= +github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= +github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v0.2.1/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= -github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/zapr v1.2.4 h1:QHVo+6stLbfJmYGkQ7uGHUCu5hnAFAj6mDe6Ea0SeOo= +github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0= +github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/zapr v0.1.0/go.mod h1:tabnROwaDl0UNxkVeFRbY8bwB37GwRv0P8lg6aAiEnk= +github.com/go-logr/zapr v0.2.0/go.mod h1:qhKdvif7YF5GI9NWEpyxTSSBdGmzkNguibrdCNVPunU= +github.com/go-logr/zapr v1.2.0 h1:n4JnPI1T3Qq1SFEi/F8rwLrZERp2bso19PJZDB9dayk= +github.com/go-openapi/analysis v0.0.0-20180825180245-b006789cd277/go.mod h1:k70tL6pCuVxPJOHXQ+wIac1FUrvNkHolPie/cLEU6hI= +github.com/go-openapi/analysis v0.17.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= +github.com/go-openapi/analysis v0.18.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= +github.com/go-openapi/analysis v0.19.2/go.mod h1:3P1osvZa9jKjb8ed2TPng3f0i/UY9snX6gxi44djMjk= +github.com/go-openapi/analysis v0.19.5/go.mod h1:hkEAkxagaIvIP7VTn8ygJNkd4kAYON2rCu0v0ObL0AU= +github.com/go-openapi/errors v0.17.0/go.mod h1:LcZQpmvG4wyF5j4IhA73wkLFQg+QJXOQHVjmcZxhka0= +github.com/go-openapi/errors v0.18.0/go.mod h1:LcZQpmvG4wyF5j4IhA73wkLFQg+QJXOQHVjmcZxhka0= +github.com/go-openapi/errors v0.19.2/go.mod h1:qX0BLWsyaKfvhluLejVpVNwNRdXZhEbTA4kxxpKBC94= +github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= +github.com/go-openapi/jsonpointer v0.17.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= +github.com/go-openapi/jsonpointer v0.18.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= +github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= -github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= -github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg= +github.com/go-openapi/jsonreference v0.17.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= +github.com/go-openapi/jsonreference v0.18.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= +github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= +github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= +github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= +github.com/go-openapi/jsonreference v0.20.1 h1:FBLnyygC4/IZZr893oiomc9XaghoveYTrLC1F86HID8= +github.com/go-openapi/jsonreference v0.20.1/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/loads v0.17.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= +github.com/go-openapi/loads v0.18.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= +github.com/go-openapi/loads v0.19.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= +github.com/go-openapi/loads v0.19.2/go.mod h1:QAskZPMX5V0C2gvfkGZzJlINuP7Hx/4+ix5jWFxsNPs= +github.com/go-openapi/loads v0.19.4/go.mod h1:zZVHonKd8DXyxyw4yfnVjPzBjIQcLt0CCsn0N0ZrQsk= +github.com/go-openapi/runtime v0.0.0-20180920151709-4f900dc2ade9/go.mod h1:6v9a6LTXWQCdL8k1AO3cvqx5OtZY/Y9wKTgaoP6YRfA= +github.com/go-openapi/runtime v0.19.0/go.mod h1:OwNfisksmmaZse4+gpV3Ne9AyMOlP1lt4sK4FXt0O64= +github.com/go-openapi/runtime v0.19.4/go.mod h1:X277bwSUBxVlCYR3r7xgZZGKVvBd/29gLDlFGtJ8NL4= +github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc= +github.com/go-openapi/spec v0.17.0/go.mod h1:XkF/MOi14NmjsfZ8VtAKf8pIlbZzyoTvZsdfssdxcBI= +github.com/go-openapi/spec v0.18.0/go.mod h1:XkF/MOi14NmjsfZ8VtAKf8pIlbZzyoTvZsdfssdxcBI= +github.com/go-openapi/spec v0.19.2/go.mod h1:sCxk3jxKgioEJikev4fgkNmwS+3kuYdJtcsZsD5zxMY= +github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= +github.com/go-openapi/strfmt v0.17.0/go.mod h1:P82hnJI0CXkErkXi8IKjPbNBM6lV6+5pLP5l494TcyU= +github.com/go-openapi/strfmt v0.18.0/go.mod h1:P82hnJI0CXkErkXi8IKjPbNBM6lV6+5pLP5l494TcyU= +github.com/go-openapi/strfmt v0.19.0/go.mod h1:+uW+93UVvGGq2qGaZxdDeJqSAqBqBdl+ZPMF/cC8nDY= +github.com/go-openapi/strfmt v0.19.3/go.mod h1:0yX7dbo8mKIvc3XSKp7MNfxw4JytCfCD6+bY1AVL9LU= +github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I= +github.com/go-openapi/swag v0.17.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg= +github.com/go-openapi/swag v0.18.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg= +github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= +github.com/go-openapi/validate v0.18.0/go.mod h1:Uh4HdOzKt19xGIGm1qHf/ofbX1YQ4Y+MYsct2VUrAJ4= +github.com/go-openapi/validate v0.19.2/go.mod h1:1tRCw7m3jtI8eNWEEliiAqUIcBztB2KDnRCRMUi7GTA= +github.com/go-openapi/validate v0.19.5/go.mod h1:8DJv2CVJQ6kGNpFW6eV9N3JviE1C85nY1c2z52x1Gk4= +github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-test/deep v1.0.7 h1:/VSMRlnY/JSyqxQUzQLKVMAskpY/NZKFA5j2P+0pP2M= github.com/go-test/deep v1.0.7/go.mod h1:QV8Hv/iy04NyLBxAdO9njL0iVPN1S4d/A3NVv1V36o8= +github.com/gobuffalo/flect v0.2.0/go.mod h1:W3K3X9ksuZfir8f/LrfVtWmCDQFfayuylOJ7sz/Fj80= github.com/gofrs/uuid v4.2.0+incompatible h1:yyYWMnhkhrKwwr8gAOcOCYxOOscHgDS9yZgBrnJfGa0= github.com/gofrs/uuid v4.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt v3.2.1+incompatible h1:73Z+4BJcrTC+KczS6WvTPvRGOp1WmfEP4Q1lOd9Z/+c= @@ -174,6 +314,8 @@ github.com/golang-jwt/jwt/v4 v4.2.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzw github.com/golang-jwt/jwt/v4 v4.4.1 h1:pC5DB52sCeK48Wlb9oPcdhnjkz1TKt1D/P7WKJ0kUcQ= github.com/golang-jwt/jwt/v4 v4.4.1/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -186,6 +328,8 @@ github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= +github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= +github.com/golang/protobuf v0.0.0-20161109072736-4bd1920723d7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= @@ -201,12 +345,15 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= -github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= -github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= +github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA= +github.com/google/gnostic v0.5.7-v3refs h1:FhTMOKj2VhjpouxvWJAV1TL304uMlb9zcDqkl6cEI54= +github.com/google/gnostic v0.5.7-v3refs/go.mod h1:73MKFl6jIHelAJNaBGFzt3SPtZULs9dYrGFt8OiIsHQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= @@ -221,6 +368,7 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= @@ -238,8 +386,11 @@ github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 h1:K6RDEckDVWvDI9JAJYCmNdQXq6neHJOYx3V6jnqNEec= +github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -249,7 +400,19 @@ github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+ github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.7.1 h1:gF4c0zjUP2H/s/hEGyLA3I0fA2ZWjzYiONAD6cvPr8A= github.com/googleapis/gax-go/v2 v2.7.1/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI= +github.com/googleapis/gnostic v0.0.0-20170729233727-0c5108395e2d/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= +github.com/googleapis/gnostic v0.1.0/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= +github.com/googleapis/gnostic v0.3.1/go.mod h1:on+2t9HRStVgn95RSsFWFz+6Q0Snyqv1awfrALZdbtU= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= +github.com/gophercloud/gophercloud v0.1.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8= +github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo= github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= @@ -258,30 +421,49 @@ github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+l github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.9/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= -github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= -github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= +github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= +github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= +github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= +github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= +github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= +github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= @@ -290,76 +472,151 @@ github.com/kubeflow/common v0.4.3/go.mod h1:Qb/5aON7/OWVkN8OnjRqqT0i8X/XzMekRIZ8 github.com/kubeflow/training-operator v1.5.0-rc.0 h1:MaxbG80SYpIbDG63tSiwav4OXczrSFA5AFnaQavzgbw= github.com/kubeflow/training-operator v1.5.0-rc.0/go.mod h1:xgcu/ZI/RwKbTvYgzU7ZWFpxbsefSey5We3KmKroALY= github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= +github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= +github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20180823135443-60711f1a8329/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= +github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= -github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= -github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 h1:I0XW9+e1XWDxdcEniV4rQAIOPUGDq67JSCiRCgGCZLI= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/modocache/gover v0.0.0-20171022184752-b58185e213c5/go.mod h1:caMODM3PzxT8aQXRPkAt8xlV/e7d7w8GM5g0fa5F0D8= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/ncw/swift v1.0.53 h1:luHjjTNtekIEvHg5KdAFIBaH7bWfNkefwFnpDffSIks= github.com/ncw/swift v1.0.53/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= +github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= +github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= -github.com/onsi/ginkgo/v2 v2.11.0 h1:WgqUCUt/lT6yXoQ8Wef0fsNn5cAuMK7+KT9UFRz2tcU= -github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= +github.com/onsi/ginkgo/v2 v2.1.4 h1:GNapqRSid3zijZ9H77KrgVG4/8KqiyRsxcSxe+7ApXY= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= +github.com/onsi/gomega v1.8.1/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.19.0 h1:4ieX6qQjPP/BfC3mpsAtIGGlxTWPeA3Inl/7DtXw1tw= +github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= +github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= github.com/pelletier/go-toml v1.9.4 h1:tjENF6MfZAg8e4ZmZTeWaWiT2vXtsoO6+iuOjFhECwM= github.com/pelletier/go-toml v1.9.4/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.0.0-beta.8 h1:dy81yyLYJDwMTifq24Oi/IslOslRrDSb3jwDggjz3Z0= github.com/pelletier/go-toml/v2 v2.0.0-beta.8/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4 h1:Qj1ukM4GlMWXNdMBuXcXfz/Kw9s1qm0CLY32QxuSImI= +github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/prometheus/client_golang v1.16.0 h1:yk/hx9hDbrGHovbci4BY+pRMfSuuat626eFsHb7tmT8= -github.com/prometheus/client_golang v1.16.0/go.mod h1:Zsulrv/L9oM40tJ7T815tM89lFEugiJ9HzIqaAx4LKc= +github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= +github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_golang v1.12.1 h1:ZiaPsmm9uiBeaSMRznKsCDNtPCS0T3JVDGF+06gjBzk= +github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.4.0 h1:5lQXD3cAg1OXBf4Wq03gTrXHeaV0TQvGfUooCfx1yqY= -github.com/prometheus/client_model v0.4.0/go.mod h1:oMQmHW1/JoDwqLtg57MGgP/Fb1CJEYF2imWWhWtMkYU= -github.com/prometheus/common v0.44.0 h1:+5BrQJwiBB9xsMygAB3TNvpQKOwlkc25LbISbrdOOfY= -github.com/prometheus/common v0.44.0/go.mod h1:ofAIvZbQ1e/nugmZGz4/qCb9Ap1VoSTIO7x0VV9VvuY= -github.com/prometheus/procfs v0.10.1 h1:kYK1Va/YMlutzCGazswoHKo//tZVlFpKYh+PymziUAg= -github.com/prometheus/procfs v0.10.1/go.mod h1:nwNm2aOCAYw8uTR/9bWRREkZFxAUcWzPHWJq+XBB/FM= +github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M= +github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= +github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4= +github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= +github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.11/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= +github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c h1:eEqXhtlsUVt798HNUEbdQsMRZSjHSOF5Ilsywuhlgfc= github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c/go.mod h1:uLBlYqsCS2nsKiVlxJxI5EVgq8CrqNeHDP5uq3hde+c= +github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= +github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= +github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= +github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= +github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw= github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= +github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA= github.com/spf13/cast v1.4.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= -github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= +github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU= +github.com/spf13/cobra v1.4.0 h1:y+wJpx64xcgO1V+RcnwW0LEHxTKRi2ZDPSBjWnrg88Q= +github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= +github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= +github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/spf13/viper v1.11.0 h1:7OX/1FS6n7jHD1zGrZTM7WtY13ZELRyosK4k93oPr44= github.com/spf13/viper v1.11.0/go.mod h1:djo0X/bA5+tYVoCn+C7cAYJGcVn/qYLFTG8gdUsX7Zk= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= @@ -367,6 +624,7 @@ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXf github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= @@ -375,31 +633,64 @@ github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcU github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= +github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0= +github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/vektah/gqlparser v1.1.2/go.mod h1:1ycwN7Ij5njmMkPPAOaRFY4rET2Enx7IkVv3vaXspKw= +github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg= +go.mongodb.org/mongo-driver v1.0.3/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= +go.mongodb.org/mongo-driver v1.1.1/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= +go.mongodb.org/mongo-driver v1.1.2/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= -go.uber.org/zap v1.25.0 h1:4Hvk6GtkucQ790dqmj7l1eEnRdKm3k3ZUrUMS2d5+5c= +go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= +go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE= +go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= +go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= +go.uber.org/multierr v1.8.0 h1:dg6GjLku4EH+249NNmoIciG9N/jURbDG+pFlTkhzIC8= +go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= +go.uber.org/zap v1.8.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +go.uber.org/zap v1.15.0/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= +go.uber.org/zap v1.21.0 h1:WefMeulhovoZ2sYXz7st6K0sLj7bBhpiFaud4r4zST8= +golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190320223903-b7391e95e576/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190617133340-57b3e21c3d56/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200220183623-bac4c82f6975/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA= -golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= +golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e h1:T8NU3HyQ8ClP4SEE+KbFlg6n0NhuTsN4MyznaarGsZM= +golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -410,8 +701,6 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= -golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e h1:+WEEuIdZHnUeJJmEUjyYC2gfUMj69yZXw17EnHg/otA= -golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e/go.mod h1:Kr81I6Kryrl9sr8s2FK3vxD90NdsKWRuOIl2O4CvYbA= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= @@ -435,19 +724,30 @@ golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.8.0 h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8= +golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181005035420-146acd28ed58/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -458,6 +758,7 @@ golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/ golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= @@ -468,11 +769,15 @@ golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwY golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= +golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.13.0 h1:Nvo8UFsZ8X3BhAC9699Z1j7XQ3rsZnUUm7jfBEk1ueY= -golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= +golang.org/x/net v0.9.0 h1:aWJ/m6xSmxWBx+V0XRHTlrYrPG56jKsLdTFmsSsCzOM= +golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -482,8 +787,12 @@ golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.8.0 h1:6dkIjl3j3LtZ/O3sTgZTMsLKSftL/B8Zgq4huOIIUu8= -golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE= +golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.7.0 h1:qe6s0zUXlPX80/dITx3440hWZ7GwMwgDDyrSGTPJG/g= +golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -494,19 +803,37 @@ golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20170830134202-bb24a47a89ea/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190321052220-f7bb7a8bee54/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -519,7 +846,10 @@ golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -527,37 +857,54 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM= -golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.7.0 h1:3jlCCIQZPdOYu1h8BkNvLz8Kgwtae2cagcG/VamtZRU= +golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.10.0 h1:3R7pNqamzBraeqj/Tj8qt1aQ2HpmlC+Cx/qL/7hn4/c= -golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= +golang.org/x/term v0.7.0 h1:BEvjmm5fURWqcfbSKTdpkDXYBrUS1c0m8agp14W48vQ= +golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= +golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4= -golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= -golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.1.0 h1:xYY+Bajn2a7VBmTM5GikTmnK8ZuX8YgnQCqZpbBNtmA= +golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190125232054-d66bd3c5d5a6/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= @@ -566,11 +913,16 @@ golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBn golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190617190820-da514acc4774/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20190920225731-5eefd052ad72/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -590,6 +942,7 @@ golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjs golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= @@ -605,14 +958,16 @@ golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= -golang.org/x/tools v0.9.3 h1:Gn1I8+64MsuTb/HpH+LmQtNas23LhUVr3rYZ0eKuaMM= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= +gomodules.xyz/jsonpatch/v2 v2.0.1/go.mod h1:IhYNNY4jnS53ZnfE4PAmpKtDpTCj1JFXc+3mwe7XcUU= +gomodules.xyz/jsonpatch/v2 v2.2.0 h1:4pT439QV83L+G9FkcCriY6EkpcK6r6bK+A5FBUMI7qY= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= @@ -632,6 +987,8 @@ google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz513 google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= +google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= +google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= google.golang.org/api v0.114.0 h1:1xQPji6cO2E2vLiI+C/XiFAnsn1WV3mjaEwGLhi3grE= google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= @@ -673,22 +1030,25 @@ google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201019141844-1ed22bb0c154/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 h1:9NWlQfY2ePejTmfwUH1OWwmznFa+0kKcHGPDvcPza9M= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 h1:m8v1xLLLzMe1m5P+gCTF8nJB9epwZQUBERm20Oy1poQ= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 h1:0nDDozoAU19Qb2HwhXadU8OcsiO/09cnTqhUtq2MEOM= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= +google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1/go.mod h1:nKE/iIaLqn2bQwXBg8f1g2Ylh6r5MN5CmZvuzZCgsCU= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= @@ -702,6 +1062,8 @@ google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTp google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.56.1 h1:z0dNfjIl0VpaZ9iSVjA6daGatAYwPGstTjt5vkRMFkQ= google.golang.org/grpc v1.56.1/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= @@ -716,24 +1078,42 @@ google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGj google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/ini.v1 v1.66.4 h1:SsAcf+mM7mRZo2nJNGt8mZCjG8ZRaNGMURJw7BsIST4= gopkg.in/ini.v1 v1.66.4/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= +gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20190905181640-827449938966/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= @@ -746,29 +1126,72 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -k8s.io/api v0.28.2 h1:9mpl5mOb6vXZvqbQmankOfPIGiudghwCoLl1EYfUZbw= -k8s.io/api v0.28.2/go.mod h1:RVnJBsjU8tcMq7C3iaRSGMeaKt2TWEUXcpIt/90fjEg= -k8s.io/apiextensions-apiserver v0.28.0 h1:CszgmBL8CizEnj4sj7/PtLGey6Na3YgWyGCPONv7E9E= -k8s.io/apimachinery v0.28.2 h1:KCOJLrc6gu+wV1BYgwik4AF4vXOlVJPdiqn0yAWWwXQ= -k8s.io/apimachinery v0.28.2/go.mod h1:RdzF87y/ngqk9H4z3EL2Rppv5jj95vGS/HaFXrLDApU= -k8s.io/client-go v0.28.2 h1:DNoYI1vGq0slMBN/SWKMZMw0Rq+0EQW6/AK4v9+3VeY= -k8s.io/client-go v0.28.2/go.mod h1:sMkApowspLuc7omj1FOSUxSoqjr+d5Q0Yc0LOFnYFJY= +k8s.io/api v0.18.2/go.mod h1:SJCWI7OLzhZSvbY7U8zwNl9UA4o1fizoug34OV/2r78= +k8s.io/api v0.18.6/go.mod h1:eeyxr+cwCjMdLAmr2W3RyDI0VvTawSg/3RFFBEnmZGI= +k8s.io/api v0.18.8/go.mod h1:d/CXqwWv+Z2XEG1LgceeDmHQwpUJhROPx16SlxJgERY= +k8s.io/api v0.24.1 h1:BjCMRDcyEYz03joa3K1+rbshwh1Ay6oB53+iUx2H8UY= +k8s.io/api v0.24.1/go.mod h1:JhoOvNiLXKTPQ60zh2g0ewpA+bnEYf5q44Flhquh4vQ= +k8s.io/apiextensions-apiserver v0.18.2/go.mod h1:q3faSnRGmYimiocj6cHQ1I3WpLqmDgJFlKL37fC4ZvY= +k8s.io/apiextensions-apiserver v0.18.6/go.mod h1:lv89S7fUysXjLZO7ke783xOwVTm6lKizADfvUM/SS/M= +k8s.io/apiextensions-apiserver v0.24.1 h1:5yBh9+ueTq/kfnHQZa0MAo6uNcPrtxPMpNQgorBaKS0= +k8s.io/apimachinery v0.18.2/go.mod h1:9SnR/e11v5IbyPCGbvJViimtJ0SwHG4nfZFjU77ftcA= +k8s.io/apimachinery v0.18.6/go.mod h1:OaXp26zu/5J7p0f92ASynJa1pZo06YlV9fG7BoWbCko= +k8s.io/apimachinery v0.18.8/go.mod h1:6sQd+iHEqmOtALqOFjSWp2KZ9F0wlU/nWm0ZgsYWMig= +k8s.io/apimachinery v0.24.1 h1:ShD4aDxTQKN5zNf8K1RQ2u98ELLdIW7jEnlO9uAMX/I= +k8s.io/apimachinery v0.24.1/go.mod h1:82Bi4sCzVBdpYjyI4jY6aHX+YCUchUIrZrXKedjd2UM= +k8s.io/apiserver v0.18.2/go.mod h1:Xbh066NqrZO8cbsoenCwyDJ1OSi8Ag8I2lezeHxzwzw= +k8s.io/apiserver v0.18.6/go.mod h1:Zt2XvTHuaZjBz6EFYzpp+X4hTmgWGy8AthNVnTdm3Wg= +k8s.io/client-go v0.18.2/go.mod h1:Xcm5wVGXX9HAA2JJ2sSBUn3tCJ+4SVlCbl2MNNv+CIU= +k8s.io/client-go v0.18.6/go.mod h1:/fwtGLjYMS1MaM5oi+eXhKwG+1UHidUEXRh6cNsdO0Q= +k8s.io/client-go v0.18.8/go.mod h1:HqFqMllQ5NnQJNwjro9k5zMyfhZlOwpuTLVrxjkYSxU= +k8s.io/client-go v0.24.1 h1:w1hNdI9PFrzu3OlovVeTnf4oHDt+FJLd9Ndluvnb42E= +k8s.io/client-go v0.24.1/go.mod h1:f1kIDqcEYmwXS/vTbbhopMUbhKp2JhOeVTfxgaCIlF8= +k8s.io/code-generator v0.18.2/go.mod h1:+UHX5rSbxmR8kzS+FAv7um6dtYrZokQvjHpDSYRVkTc= +k8s.io/code-generator v0.18.6/go.mod h1:TgNEVx9hCyPGpdtCWA34olQYLkh3ok9ar7XfSsr8b6c= k8s.io/code-generator v0.24.1 h1:zS+dvmUNaOcvsQ4faV9hXNjsKG9/pQaLnts1Wma4RM8= -k8s.io/component-base v0.28.1 h1:LA4AujMlK2mr0tZbQDZkjWbdhTV5bRyEyAFe0TJxlWg= -k8s.io/klog/v2 v2.60.1 h1:VW25q3bZx9uE3vvdL6M8ezOX79vA2Aq1nEWLqNQclHc= +k8s.io/component-base v0.18.2/go.mod h1:kqLlMuhJNHQ9lz8Z7V5bxUUtjFZnrypArGl58gmDfUM= +k8s.io/component-base v0.18.6/go.mod h1:knSVsibPR5K6EW2XOjEHik6sdU5nCvKMrzMt2D4In14= +k8s.io/component-base v0.24.1 h1:APv6W/YmfOWZfo+XJ1mZwep/f7g7Tpwvdbo9CQLDuts= +k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20200114144118-36b2048a9120/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20210813121822-485abfe95c7c/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog v0.0.0-20181102134211-b9b56d5dfc92/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= +k8s.io/klog v0.3.0/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= +k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f h1:eeEUOoGYWhOz7EyXqhlR2zHKNw2mNJ9vzJmub6YN6kk= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 h1:qY1Ad8PODbnymg2pRbkyMT/ylpTrCM8P2RJ0yroCyIk= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/klog/v2 v2.90.1 h1:m4bYOKall2MmOiRaR1J+We67Do7vm9KiQVlT96lnHUw= +k8s.io/klog/v2 v2.90.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20200121204235-bf4fb3bd569c/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E= +k8s.io/kube-openapi v0.0.0-20200410145947-61e04a5be9a6/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E= +k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk= +k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f h1:2kWPakN3i/k81b0gvD5C5FJ2kxm1WrQFanWchyKuqGg= +k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f/go.mod h1:byini6yhqGC14c3ebc/QwanvYwhuMWF6yz2F8uwW8eg= +k8s.io/utils v0.0.0-20200324210504-a9aa75ae1b89/go.mod h1:sZAwmy6armz5eXlNoLmJcl4F1QuKu7sr+mFQ0byX7Ew= +k8s.io/utils v0.0.0-20200603063816-c1c6865ac451/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20230209194617-a36077c30491 h1:r0BAOLElQnnFhE/ApUsg3iHdVYYPBjNSSOMowRZxxsY= +k8s.io/utils v0.0.0-20230209194617-a36077c30491/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -sigs.k8s.io/controller-runtime v0.16.2 h1:mwXAVuEk3EQf478PQwQ48zGOXvW27UJc8NHktQVuIPU= -sigs.k8s.io/controller-runtime v0.16.2/go.mod h1:vpMu3LpI5sYWtujJOa2uPK61nB5rbwlN7BAB8aSLvGU= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.7/go.mod h1:PHgbrJT7lCHcxMU+mDHEm+nx46H4zuuHZkDP6icnhu0= +sigs.k8s.io/controller-runtime v0.6.2/go.mod h1:vhcq/rlnENJ09SIRp3EveTaZ0yqH526hjf9iJdbUJ/E= +sigs.k8s.io/controller-runtime v0.12.1 h1:4BJY01xe9zKQti8oRjj/NeHKRXthf1YkYJAgLONFFoI= +sigs.k8s.io/controller-runtime v0.12.1/go.mod h1:BKhxlA4l7FPK4AQcsuL4X6vZeWnKDXez/vp1Y8dxTU0= +sigs.k8s.io/controller-tools v0.3.0/go.mod h1:enhtKGfxZD1GFEoMgP8Fdbu+uKQ/cq1/WGJhdVChfvI= +sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2/go.mod h1:B+TnT182UBxE84DiCz4CVE26eOSDAeYCpfDnC2kdKMY= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= +sigs.k8s.io/structured-merge-diff/v3 v3.0.0-20200116222232-67a7b8c61874/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw= +sigs.k8s.io/structured-merge-diff/v3 v3.0.0/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.2.1/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= sigs.k8s.io/structured-merge-diff/v4 v4.2.3 h1:PRbqxJClWWYMNV1dhaG4NsibJbArud9kFxnAMREiWFE= sigs.k8s.io/structured-merge-diff/v4 v4.2.3/go.mod h1:qjx8mGObPmV2aSZepjQjbmb2ihdVs8cGKBraizNC69E= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/flyteplugins/go/tasks/config_load_test.go b/flyteplugins/go/tasks/config_load_test.go index 6e02277742..e181c817b4 100644 --- a/flyteplugins/go/tasks/config_load_test.go +++ b/flyteplugins/go/tasks/config_load_test.go @@ -10,6 +10,7 @@ import ( "github.com/flyteorg/flyte/flyteplugins/go/tasks/logs" flyteK8sConfig "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/flytek8s/config" + sagemakerConfig "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/spark" "github.com/flyteorg/flyte/flytestdlib/config" "github.com/flyteorg/flyte/flytestdlib/config/viper" @@ -118,6 +119,10 @@ func TestLoadConfig(t *testing.T) { assert.Equal(t, 2, len(spark.GetSparkConfig().Features[1].SparkConfig)) }) + + t.Run("sagemaker-config-test", func(t *testing.T) { + assert.NotNil(t, sagemakerConfig.GetSagemakerConfig()) + }) } func TestLoadIncorrectConfig(t *testing.T) { diff --git a/flyteplugins/go/tasks/pluginmachinery/core/mocks/fake_k8s_cache.go b/flyteplugins/go/tasks/pluginmachinery/core/mocks/fake_k8s_cache.go index 09e76b7949..1237220374 100644 --- a/flyteplugins/go/tasks/pluginmachinery/core/mocks/fake_k8s_cache.go +++ b/flyteplugins/go/tasks/pluginmachinery/core/mocks/fake_k8s_cache.go @@ -17,20 +17,15 @@ import ( ) type FakeKubeCache struct { - // Reader acts as a client to objects stored in the cache. - client.Reader - - // Informers loads informers and adds field indices. - cache.Informers syncObj sync.RWMutex Cache map[string]runtime.Object } -func (m *FakeKubeCache) GetInformer(ctx context.Context, obj client.Object, opts ...cache.InformerGetOption) (cache.Informer, error) { +func (m *FakeKubeCache) GetInformer(ctx context.Context, obj client.Object) (cache.Informer, error) { panic("implement me") } -func (m *FakeKubeCache) GetInformerForKind(ctx context.Context, gvk schema.GroupVersionKind, opts ...cache.InformerGetOption) (cache.Informer, error) { +func (m *FakeKubeCache) GetInformerForKind(ctx context.Context, gvk schema.GroupVersionKind) (cache.Informer, error) { panic("implement me") } @@ -46,7 +41,7 @@ func (m *FakeKubeCache) IndexField(ctx context.Context, obj client.Object, field panic("implement me") } -func (m *FakeKubeCache) Get(ctx context.Context, key client.ObjectKey, out client.Object, opts ...client.GetOption) error { +func (m *FakeKubeCache) Get(ctx context.Context, key client.ObjectKey, out client.Object) error { m.syncObj.RLock() defer m.syncObj.RUnlock() diff --git a/flyteplugins/go/tasks/pluginmachinery/core/mocks/fake_k8s_client.go b/flyteplugins/go/tasks/pluginmachinery/core/mocks/fake_k8s_client.go index e590ac04ee..120b9c6d77 100644 --- a/flyteplugins/go/tasks/pluginmachinery/core/mocks/fake_k8s_client.go +++ b/flyteplugins/go/tasks/pluginmachinery/core/mocks/fake_k8s_client.go @@ -17,10 +17,6 @@ import ( ) type FakeKubeClient struct { - client.Reader - client.Writer - client.StatusClient - client.SubResourceClientConstructor syncObj sync.RWMutex Cache map[string]runtime.Object } @@ -30,7 +26,7 @@ func formatKey(name types.NamespacedName, kind schema.GroupVersionKind) string { return key } -func (m *FakeKubeClient) Get(ctx context.Context, key client.ObjectKey, out client.Object, opts ...client.GetOption) error { +func (m *FakeKubeClient) Get(ctx context.Context, key client.ObjectKey, out client.Object) error { m.syncObj.RLock() defer m.syncObj.RUnlock() @@ -61,16 +57,6 @@ func (m *FakeKubeClient) Get(ctx context.Context, key client.ObjectKey, out clie return errors.NewNotFound(schema.GroupResource{}, key.Name) } -// GroupVersionKindFor returns the GroupVersionKind for the given object. -func (m *FakeKubeClient) GroupVersionKindFor(obj runtime.Object) (schema.GroupVersionKind, error) { - panic("implement me") -} - -// IsObjectNamespaced returns true if the GroupVersionKind of the object is namespaced. -func (m *FakeKubeClient) IsObjectNamespaced(obj runtime.Object) (bool, error) { - panic("implement me") -} - func (m *FakeKubeClient) List(ctx context.Context, list client.ObjectList, opts ...client.ListOption) error { m.syncObj.RLock() defer m.syncObj.RUnlock() diff --git a/flyteplugins/go/tasks/pluginmachinery/flytek8s/pod_template_store_test.go b/flyteplugins/go/tasks/pluginmachinery/flytek8s/pod_template_store_test.go index 023b3a8616..d963c1817a 100644 --- a/flyteplugins/go/tasks/pluginmachinery/flytek8s/pod_template_store_test.go +++ b/flyteplugins/go/tasks/pluginmachinery/flytek8s/pod_template_store_test.go @@ -40,12 +40,11 @@ func TestPodTemplateStore(t *testing.T) { informerFactory := informers.NewSharedInformerFactoryWithOptions(kubeClient, 30*time.Second) updateHandler := GetPodTemplateUpdatesHandler(&store) - _, err := informerFactory.Core().V1().PodTemplates().Informer().AddEventHandler(updateHandler) - assert.NoError(t, err) + informerFactory.Core().V1().PodTemplates().Informer().AddEventHandler(updateHandler) go informerFactory.Start(ctx.Done()) // create the podTemplate - _, err = kubeClient.CoreV1().PodTemplates(podTemplate.Namespace).Create(ctx, podTemplate, metav1.CreateOptions{}) + _, err := kubeClient.CoreV1().PodTemplates(podTemplate.Namespace).Create(ctx, podTemplate, metav1.CreateOptions{}) assert.NoError(t, err) time.Sleep(50 * time.Millisecond) diff --git a/flyteplugins/go/tasks/pluginmachinery/k8s/client.go b/flyteplugins/go/tasks/pluginmachinery/k8s/client.go index 79a81c7e79..97abfefd8a 100644 --- a/flyteplugins/go/tasks/pluginmachinery/k8s/client.go +++ b/flyteplugins/go/tasks/pluginmachinery/k8s/client.go @@ -3,7 +3,7 @@ package k8s import ( - "net/http" + "context" "k8s.io/apimachinery/pkg/api/meta" "k8s.io/client-go/rest" @@ -31,6 +31,72 @@ func newKubeClient(c client.Client, cache cache.Cache) core.KubeClient { return &kubeClient{client: c, cache: cache} } +type fallbackClientReader struct { + orderedClients []client.Reader +} + +func (c fallbackClientReader) Get(ctx context.Context, key client.ObjectKey, out client.Object) (err error) { + for _, k8sClient := range c.orderedClients { + if err = k8sClient.Get(ctx, key, out); err == nil { + return nil + } + } + + return +} + +func (c fallbackClientReader) List(ctx context.Context, list client.ObjectList, opts ...client.ListOption) (err error) { + for _, k8sClient := range c.orderedClients { + if err = k8sClient.List(ctx, list, opts...); err == nil { + return nil + } + } + + return +} + +// ClientBuilder builder is the interface for the client builder. +type ClientBuilder interface { + // WithUncached takes a list of runtime objects (plain or lists) that users don't want to cache + // for this client. This function can be called multiple times, it should append to an internal slice. + WithUncached(objs ...client.Object) ClientBuilder + + // Build returns a new client. + Build(cache cache.Cache, config *rest.Config, options client.Options) (client.Client, error) +} + +type fallbackClientBuilder struct { + uncached []client.Object +} + +func (f *fallbackClientBuilder) WithUncached(objs ...client.Object) ClientBuilder { + f.uncached = append(f.uncached, objs...) + return f +} + +func (f fallbackClientBuilder) Build(cache cache.Cache, config *rest.Config, options client.Options) (client.Client, error) { + c, err := client.New(config, options) + if err != nil { + return nil, err + } + + return client.NewDelegatingClient(client.NewDelegatingClientInput{ + Client: c, + CacheReader: fallbackClientReader{ + orderedClients: []client.Reader{cache, c}, + }, + UncachedObjects: f.uncached, + // TODO figure out if this should be true? + // CacheUnstructured: true, + }) +} + +// Creates a new k8s client that uses the cached client for reads and falls back to making API +// calls if it failed. Write calls will always go to raw client directly. +func NewFallbackClientBuilder() ClientBuilder { + return &fallbackClientBuilder{} +} + type Options struct { MapperProvider func(*rest.Config) (meta.RESTMapper, error) CacheOptions *cache.Options @@ -42,22 +108,17 @@ type Options struct { func NewKubeClient(config *rest.Config, options Options) (core.KubeClient, error) { if options.MapperProvider == nil { options.MapperProvider = func(c *rest.Config) (meta.RESTMapper, error) { - return apiutil.NewDynamicRESTMapper(config, http.DefaultClient) + return apiutil.NewDynamicRESTMapper(config) } } - mapper, err := options.MapperProvider(config) if err != nil { return nil, err } if options.CacheOptions == nil { - options.CacheOptions = &cache.Options{ - HTTPClient: http.DefaultClient, - Mapper: mapper, - } + options.CacheOptions = &cache.Options{Mapper: mapper} } - cache, err := cache.New(config, *options.CacheOptions) if err != nil { return nil, err @@ -67,12 +128,12 @@ func NewKubeClient(config *rest.Config, options Options) (core.KubeClient, error options.ClientOptions = &client.Options{Mapper: mapper} } - client, err := client.New(config, *options.ClientOptions) + fallbackClient, err := NewFallbackClientBuilder().Build(cache, config, *options.ClientOptions) if err != nil { return nil, err } - return newKubeClient(client, cache), nil + return newKubeClient(fallbackClient, cache), nil } // NewDefaultKubeClient creates a new KubeClient with default options set. diff --git a/flyteplugins/go/tasks/pluginmachinery/k8s/mocks/client_builder.go b/flyteplugins/go/tasks/pluginmachinery/k8s/mocks/client_builder.go new file mode 100644 index 0000000000..4312ab348d --- /dev/null +++ b/flyteplugins/go/tasks/pluginmachinery/k8s/mocks/client_builder.go @@ -0,0 +1,100 @@ +// Code generated by mockery v1.0.1. DO NOT EDIT. + +package mocks + +import ( + cache "sigs.k8s.io/controller-runtime/pkg/cache" + client "sigs.k8s.io/controller-runtime/pkg/client" + + k8s "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/k8s" + + mock "github.com/stretchr/testify/mock" + + rest "k8s.io/client-go/rest" +) + +// ClientBuilder is an autogenerated mock type for the ClientBuilder type +type ClientBuilder struct { + mock.Mock +} + +type ClientBuilder_Build struct { + *mock.Call +} + +func (_m ClientBuilder_Build) Return(_a0 client.Client, _a1 error) *ClientBuilder_Build { + return &ClientBuilder_Build{Call: _m.Call.Return(_a0, _a1)} +} + +func (_m *ClientBuilder) OnBuild(_a0 cache.Cache, config *rest.Config, options client.Options) *ClientBuilder_Build { + c_call := _m.On("Build", _a0, config, options) + return &ClientBuilder_Build{Call: c_call} +} + +func (_m *ClientBuilder) OnBuildMatch(matchers ...interface{}) *ClientBuilder_Build { + c_call := _m.On("Build", matchers...) + return &ClientBuilder_Build{Call: c_call} +} + +// Build provides a mock function with given fields: _a0, config, options +func (_m *ClientBuilder) Build(_a0 cache.Cache, config *rest.Config, options client.Options) (client.Client, error) { + ret := _m.Called(_a0, config, options) + + var r0 client.Client + if rf, ok := ret.Get(0).(func(cache.Cache, *rest.Config, client.Options) client.Client); ok { + r0 = rf(_a0, config, options) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(client.Client) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(cache.Cache, *rest.Config, client.Options) error); ok { + r1 = rf(_a0, config, options) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +type ClientBuilder_WithUncached struct { + *mock.Call +} + +func (_m ClientBuilder_WithUncached) Return(_a0 k8s.ClientBuilder) *ClientBuilder_WithUncached { + return &ClientBuilder_WithUncached{Call: _m.Call.Return(_a0)} +} + +func (_m *ClientBuilder) OnWithUncached(objs ...client.Object) *ClientBuilder_WithUncached { + c_call := _m.On("WithUncached", objs) + return &ClientBuilder_WithUncached{Call: c_call} +} + +func (_m *ClientBuilder) OnWithUncachedMatch(matchers ...interface{}) *ClientBuilder_WithUncached { + c_call := _m.On("WithUncached", matchers...) + return &ClientBuilder_WithUncached{Call: c_call} +} + +// WithUncached provides a mock function with given fields: objs +func (_m *ClientBuilder) WithUncached(objs ...client.Object) k8s.ClientBuilder { + _va := make([]interface{}, len(objs)) + for _i := range objs { + _va[_i] = objs[_i] + } + var _ca []interface{} + _ca = append(_ca, _va...) + ret := _m.Called(_ca...) + + var r0 k8s.ClientBuilder + if rf, ok := ret.Get(0).(func(...client.Object) k8s.ClientBuilder); ok { + r0 = rf(objs...) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(k8s.ClientBuilder) + } + } + + return r0 +} diff --git a/flyteplugins/go/tasks/plugins/array/awsbatch/launcher_test.go b/flyteplugins/go/tasks/plugins/array/awsbatch/launcher_test.go index a1493f741b..449280bdcf 100644 --- a/flyteplugins/go/tasks/plugins/array/awsbatch/launcher_test.go +++ b/flyteplugins/go/tasks/plugins/array/awsbatch/launcher_test.go @@ -125,7 +125,7 @@ func TestLaunchSubTasks(t *testing.T) { JobDefinitionArn: "arn", } - newState, err := LaunchSubTasks(context.Background(), tCtx, batchClient, &config.Config{MaxArrayJobSize: 10}, currentState, getAwsBatchExecutorMetrics(promutils.NewTestScope()), 0) + newState, err := LaunchSubTasks(context.TODO(), tCtx, batchClient, &config.Config{MaxArrayJobSize: 10}, currentState, getAwsBatchExecutorMetrics(promutils.NewTestScope()), 0) assert.NoError(t, err) assertEqual(t, expectedState, newState) }) diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/builtin_training.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/builtin_training.go new file mode 100644 index 0000000000..4b6bcc2360 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/builtin_training.go @@ -0,0 +1,248 @@ +package sagemaker + +import ( + "context" + "strings" + "time" + + commonv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/common" + trainingjobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/trainingjob" + "github.com/aws/aws-sdk-go/service/sagemaker" + "sigs.k8s.io/controller-runtime/pkg/client" + + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + flyteSageMakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + pluginErrors "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + taskError "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/ioutils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/k8s" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + awsUtils "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/awsutils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + "github.com/flyteorg/flyte/flytestdlib/logger" +) + +const ReconcilingTrainingJobStatus = "ReconcilingTrainingJob" + +func (m awsSagemakerPlugin) buildResourceForTrainingJob( + ctx context.Context, taskCtx pluginsCore.TaskExecutionContext) (client.Object, error) { + + logger.Infof(ctx, "Building a training job resource for task [%v]", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()) + taskTemplate, err := getTaskTemplate(ctx, taskCtx) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "Failed to get the task template of the training job task") + } + + // Unmarshal the custom field of the task template back into the Hyperparameter Tuning Job struct generated in flyteidl + sagemakerTrainingJob := flyteSageMakerIdl.TrainingJob{} + err = utils.UnmarshalStruct(taskTemplate.GetCustom(), &sagemakerTrainingJob) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "invalid TrainingJob task specification: not able to unmarshal the custom field to [%s]", m.TaskType) + } + if sagemakerTrainingJob.GetTrainingJobResourceConfig() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "Required field [TrainingJobResourceConfig] of the TrainingJob does not exist") + } + if sagemakerTrainingJob.GetAlgorithmSpecification() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "Required field [AlgorithmSpecification] does not exist") + } + if sagemakerTrainingJob.GetAlgorithmSpecification().GetAlgorithmName() == flyteSageMakerIdl.AlgorithmName_CUSTOM { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "Custom algorithm is not supported by the built-in training job plugin") + } + + taskInput, err := taskCtx.InputReader().Get(ctx) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "unable to fetch task inputs") + } + + // Get inputs from literals + inputLiterals := taskInput.GetLiterals() + err = checkIfRequiredInputLiteralsExist(inputLiterals, + []string{TrainPredefinedInputVariable, ValidationPredefinedInputVariable, StaticHyperparametersPredefinedInputVariable}) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "Error occurred when checking if all the required inputs exist") + } + + trainPathLiteral := inputLiterals[TrainPredefinedInputVariable] + validationPathLiteral := inputLiterals[ValidationPredefinedInputVariable] + staticHyperparamsLiteral := inputLiterals[StaticHyperparametersPredefinedInputVariable] + + if trainPathLiteral.GetScalar() == nil || trainPathLiteral.GetScalar().GetBlob() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "[train] Input is required and should be of Type [Scalar.Blob]") + } + if validationPathLiteral.GetScalar() == nil || validationPathLiteral.GetScalar().GetBlob() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "[validation] Input is required and should be of Type [Scalar.Blob]") + } + + // Convert the hyperparameters to the spec value + staticHyperparams, err := convertStaticHyperparamsLiteralToSpecType(staticHyperparamsLiteral) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "could not convert static hyperparameters to spec type") + } + + outputPath := createOutputPath(taskCtx.OutputWriter().GetRawOutputPrefix().String(), TrainingJobOutputPathSubDir) + + jobName := taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName() + + trainingImageStr, err := getTrainingJobImage(ctx, taskCtx, &sagemakerTrainingJob) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "failed to find the training image") + } + + logger.Infof(ctx, "The Sagemaker TrainingJob Task plugin received static hyperparameters [%v]", staticHyperparams) + + cfg := config.GetSagemakerConfig() + + var metricDefinitions []commonv1.MetricDefinition + idlMetricDefinitions := sagemakerTrainingJob.GetAlgorithmSpecification().GetMetricDefinitions() + for _, md := range idlMetricDefinitions { + metricDefinitions = append(metricDefinitions, + commonv1.MetricDefinition{Name: ToStringPtr(md.Name), Regex: ToStringPtr(md.Regex)}) + } + + apiContentType, err := getAPIContentType(sagemakerTrainingJob.GetAlgorithmSpecification().GetInputContentType()) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "Unsupported input file type [%v]", sagemakerTrainingJob.GetAlgorithmSpecification().GetInputContentType().String()) + } + + inputModeString := strings.Title(strings.ToLower(sagemakerTrainingJob.GetAlgorithmSpecification().GetInputMode().String())) + + role := awsUtils.GetRoleFromSecurityContext(cfg.RoleAnnotationKey, taskCtx.TaskExecutionMetadata()) + + if len(role) == 0 { + role = cfg.RoleArn + } + + trainingJob := &trainingjobv1.TrainingJob{ + Spec: trainingjobv1.TrainingJobSpec{ + AlgorithmSpecification: &commonv1.AlgorithmSpecification{ + // If the specify a value for this AlgorithmName parameter, the user can't specify a value for TrainingImage. + // in this Flyte plugin, we always use the algorithm name and version the user provides via Flytekit to map to an image + // so we intentionally leave this field nil + AlgorithmName: nil, + TrainingImage: ToStringPtr(trainingImageStr), + TrainingInputMode: commonv1.TrainingInputMode(inputModeString), + MetricDefinitions: metricDefinitions, + }, + // The support of spot training will come in a later version + EnableManagedSpotTraining: nil, + HyperParameters: staticHyperparams, + InputDataConfig: []commonv1.Channel{ + { + ChannelName: ToStringPtr(TrainPredefinedInputVariable), + DataSource: &commonv1.DataSource{ + S3DataSource: &commonv1.S3DataSource{ + S3DataType: "S3Prefix", + S3Uri: ToStringPtr(trainPathLiteral.GetScalar().GetBlob().GetUri()), + }, + }, + ContentType: ToStringPtr(apiContentType), + InputMode: inputModeString, + }, + { + ChannelName: ToStringPtr(ValidationPredefinedInputVariable), + DataSource: &commonv1.DataSource{ + S3DataSource: &commonv1.S3DataSource{ + S3DataType: "S3Prefix", + S3Uri: ToStringPtr(validationPathLiteral.GetScalar().GetBlob().GetUri()), + }, + }, + ContentType: ToStringPtr(apiContentType), + InputMode: inputModeString, + }, + }, + OutputDataConfig: &commonv1.OutputDataConfig{ + S3OutputPath: ToStringPtr(outputPath), + }, + CheckpointConfig: nil, + ResourceConfig: &commonv1.ResourceConfig{ + InstanceType: sagemakerTrainingJob.GetTrainingJobResourceConfig().GetInstanceType(), + InstanceCount: ToInt64Ptr(sagemakerTrainingJob.GetTrainingJobResourceConfig().GetInstanceCount()), + VolumeSizeInGB: ToInt64Ptr(sagemakerTrainingJob.GetTrainingJobResourceConfig().GetVolumeSizeInGb()), + VolumeKmsKeyId: ToStringPtr(""), // TODO: Not yet supported. Need to add to proto and flytekit in the future + }, + RoleArn: ToStringPtr(role), + Region: ToStringPtr(cfg.Region), + StoppingCondition: &commonv1.StoppingCondition{ + MaxRuntimeInSeconds: ToInt64Ptr(86400), // TODO: decide how to coordinate this and Flyte's timeout + MaxWaitTimeInSeconds: nil, // TODO: decide how to coordinate this and Flyte's timeout and queueing budget + }, + TensorBoardOutputConfig: nil, + Tags: nil, + TrainingJobName: &jobName, + }, + } + logger.Infof(ctx, "Successfully built a training job resource for task [%v]", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()) + return trainingJob, nil +} + +func (m awsSagemakerPlugin) getTaskPhaseForTrainingJob( + ctx context.Context, pluginContext k8s.PluginContext, trainingJob *trainingjobv1.TrainingJob) (pluginsCore.PhaseInfo, error) { + + logger.Infof(ctx, "Getting task phase for sagemaker training job [%v]", trainingJob.Status.SageMakerTrainingJobName) + info, err := m.getEventInfoForTrainingJob(ctx, trainingJob) + if err != nil { + return pluginsCore.PhaseInfoUndefined, pluginErrors.Wrapf(pluginErrors.RuntimeFailure, err, "Failed to get event info for the job") + } + + occurredAt := time.Now() + + switch trainingJob.Status.TrainingJobStatus { + case ReconcilingTrainingJobStatus: + logger.Errorf(ctx, "Job stuck in reconciling status, assuming retryable failure [%s]", trainingJob.Status.Additional) + // TODO talk to AWS about why there cannot be an explicit condition that signals AWS API call pluginErrors + execError := &flyteIdlCore.ExecutionError{ + Message: trainingJob.Status.Additional, + Kind: flyteIdlCore.ExecutionError_USER, + Code: ReconcilingTrainingJobStatus, + } + return pluginsCore.PhaseInfoFailed(pluginsCore.PhaseRetryableFailure, execError, info), nil + case sagemaker.TrainingJobStatusFailed: + execError := &flyteIdlCore.ExecutionError{ + Message: trainingJob.Status.Additional, + Kind: flyteIdlCore.ExecutionError_USER, + Code: sagemaker.TrainingJobStatusFailed, + } + return pluginsCore.PhaseInfoFailed(pluginsCore.PhasePermanentFailure, execError, info), nil + case sagemaker.TrainingJobStatusStopped: + return pluginsCore.PhaseInfoRetryableFailure(taskError.DownstreamSystemError, "Training Job Stopped", info), nil + case sagemaker.TrainingJobStatusCompleted: + // Now that it is a success we will set the outputs as expected by the task + + // We have specified an output path in the CRD, and we know SageMaker will automatically upload the + // model tarball to s3:////output/model.tar.gz + + // Therefore, here we create a output literal map, where we fill in the above path to the URI field of the + // blob output, which will later be written out by the OutputWriter to the outputs.pb remotely on S3 + outputLiteralMap, err := getOutputLiteralMapFromTaskInterface(ctx, pluginContext.TaskReader(), + createModelOutputPath(trainingJob, pluginContext.OutputWriter().GetRawOutputPrefix().String(), trainingJob.Status.SageMakerTrainingJobName)) + if err != nil { + logger.Errorf(ctx, "Failed to create outputs, err: %s", err) + return pluginsCore.PhaseInfoUndefined, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "failed to create outputs for the task") + } + // Instantiate a output reader with the literal map, and write the output to the remote location referred to by the OutputWriter + if err := pluginContext.OutputWriter().Put(ctx, ioutils.NewInMemoryOutputReader(outputLiteralMap, nil, nil)); err != nil { + return pluginsCore.PhaseInfoUndefined, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "Unable to write output to the remote location") + } + logger.Debugf(ctx, "Successfully produced and returned outputs") + return pluginsCore.PhaseInfoSuccess(info), nil + case "": + return pluginsCore.PhaseInfoQueued(occurredAt, pluginsCore.DefaultPhaseVersion, "job submitted"), nil + } + + return pluginsCore.PhaseInfoRunning(pluginsCore.DefaultPhaseVersion, info), nil +} + +func (m awsSagemakerPlugin) getEventInfoForTrainingJob(ctx context.Context, trainingJob *trainingjobv1.TrainingJob) (*pluginsCore.TaskInfo, error) { + + var jobRegion, jobName, jobTypeInURL, sagemakerLinkName string + jobRegion = *trainingJob.Spec.Region + jobName = *trainingJob.Spec.TrainingJobName + jobTypeInURL = "jobs" + sagemakerLinkName = TrainingJobSageMakerLinkName + + logger.Infof(ctx, "Getting event information for SageMaker BuiltinAlgorithmTrainingJob task, job region: [%v], job name: [%v], "+ + "job type in url: [%v], sagemaker link name: [%v]", jobRegion, jobName, jobTypeInURL, sagemakerLinkName) + + return createTaskInfo(ctx, jobRegion, jobName, jobTypeInURL, sagemakerLinkName) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/builtin_training_test.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/builtin_training_test.go new file mode 100644 index 0000000000..cf412edd0c --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/builtin_training_test.go @@ -0,0 +1,272 @@ +package sagemaker + +import ( + "context" + "fmt" + "testing" + + commonv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/common" + trainingjobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/trainingjob" + "github.com/aws/aws-sdk-go/service/sagemaker" + "github.com/go-test/deep" + "github.com/stretchr/testify/assert" + + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + sagemakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + taskError "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + stdConfig "github.com/flyteorg/flyte/flytestdlib/config" + "github.com/flyteorg/flyte/flytestdlib/config/viper" +) + +func Test_awsSagemakerPlugin_BuildResourceForTrainingJob(t *testing.T) { + // Default config does not contain a roleAnnotationKey -> expecting to get the role from default config + ctx := context.TODO() + defaultCfg := config.GetSagemakerConfig() + defer func() { + _ = config.SetSagemakerConfig(defaultCfg) + }() + + t.Run("If roleAnnotationKey has a match, the role from the metadata should be fetched", func(t *testing.T) { + // Injecting a config which contains a matching roleAnnotationKey -> expecting to get the role from metadata + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + SearchPaths: []string{"testdata/config.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: trainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_XGBOOST, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job x", tjObj) + + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, generateMockTrainingJobTaskContext(taskTemplate, false)) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + assert.Equal(t, "metadata_role", *trainingJob.Spec.RoleArn) + }) + + t.Run("If roleAnnotationKey does not have a match, the role from the config should be fetched", func(t *testing.T) { + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: trainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_XGBOOST, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job y", tjObj) + + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, generateMockTrainingJobTaskContext(taskTemplate, false)) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + assert.Equal(t, "config_role", *trainingJob.Spec.RoleArn) + }) + + t.Run("In a custom training job we should see the FLYTE_SAGEMAKER_CMD being injected", func(t *testing.T) { + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: trainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_XGBOOST, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, generateMockTrainingJobTaskContext(taskTemplate, false)) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + assert.Equal(t, "config_role", *trainingJob.Spec.RoleArn) + + expectedHPs := []*commonv1.KeyValuePair{ + {Name: "a", Value: "1"}, + {Name: "b", Value: "2"}, + } + + assert.ElementsMatch(t, + func(kvs []*commonv1.KeyValuePair) []commonv1.KeyValuePair { + ret := make([]commonv1.KeyValuePair, 0, len(kvs)) + for _, kv := range kvs { + ret = append(ret, *kv) + } + return ret + }(expectedHPs), + func(kvs []*commonv1.KeyValuePair) []commonv1.KeyValuePair { + ret := make([]commonv1.KeyValuePair, 0, len(kvs)) + for _, kv := range kvs { + ret = append(ret, *kv) + } + return ret + }(trainingJob.Spec.HyperParameters)) + }) +} + +func Test_awsSagemakerPlugin_GetTaskPhaseForTrainingJob(t *testing.T) { + ctx := context.TODO() + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: trainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_XGBOOST, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + taskCtx := generateMockTrainingJobTaskContext(taskTemplate, false) + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, taskCtx) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + t.Run("ReconcilingTrainingJobStatus should lead to a retryable failure", func(t *testing.T) { + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + trainingJob.Status.TrainingJobStatus = ReconcilingTrainingJobStatus + phaseInfo, err := awsSageMakerTrainingJobHandler.getTaskPhaseForTrainingJob(ctx, taskCtx, trainingJob) + assert.Nil(t, err) + assert.Equal(t, phaseInfo.Phase(), pluginsCore.PhaseRetryableFailure) + assert.Equal(t, phaseInfo.Err().GetKind(), flyteIdlCore.ExecutionError_USER) + assert.Equal(t, phaseInfo.Err().GetCode(), ReconcilingTrainingJobStatus) + assert.Equal(t, phaseInfo.Err().GetMessage(), "") + }) + t.Run("TrainingJobStatusFailed should be a permanent failure", func(t *testing.T) { + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + trainingJob.Status.TrainingJobStatus = sagemaker.TrainingJobStatusFailed + + phaseInfo, err := awsSageMakerTrainingJobHandler.getTaskPhaseForTrainingJob(ctx, taskCtx, trainingJob) + assert.Nil(t, err) + assert.Equal(t, phaseInfo.Phase(), pluginsCore.PhasePermanentFailure) + assert.Equal(t, phaseInfo.Err().GetKind(), flyteIdlCore.ExecutionError_USER) + assert.Equal(t, phaseInfo.Err().GetCode(), sagemaker.TrainingJobStatusFailed) + assert.Equal(t, phaseInfo.Err().GetMessage(), "") + }) + t.Run("TrainingJobStatusFailed should be a permanent failure", func(t *testing.T) { + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + trainingJob.Status.TrainingJobStatus = sagemaker.TrainingJobStatusStopped + + phaseInfo, err := awsSageMakerTrainingJobHandler.getTaskPhaseForTrainingJob(ctx, taskCtx, trainingJob) + assert.Nil(t, err) + assert.Equal(t, phaseInfo.Phase(), pluginsCore.PhaseRetryableFailure) + assert.Equal(t, phaseInfo.Err().GetKind(), flyteIdlCore.ExecutionError_USER) + assert.Equal(t, phaseInfo.Err().GetCode(), taskError.DownstreamSystemError) + // We have a default message for TrainingJobStatusStopped + assert.Equal(t, phaseInfo.Err().GetMessage(), "Training Job Stopped") + }) +} + +func Test_awsSagemakerPlugin_getEventInfoForTrainingJob(t *testing.T) { + // Default config does not contain a roleAnnotationKey -> expecting to get the role from default config + ctx := context.TODO() + defaultCfg := config.GetSagemakerConfig() + defer func() { + _ = config.SetSagemakerConfig(defaultCfg) + }() + + t.Run("get event info should return correctly formatted log links for training job", func(t *testing.T) { + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: trainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_XGBOOST, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + taskCtx := generateMockTrainingJobTaskContext(taskTemplate, false) + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, taskCtx) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + + taskInfo, err := awsSageMakerTrainingJobHandler.getEventInfoForTrainingJob(ctx, trainingJob) + if err != nil { + panic(err) + } + + expectedTaskLogs := []*flyteIdlCore.TaskLog{ + { + Uri: fmt.Sprintf("https://%s.console.aws.amazon.com/cloudwatch/home?region=%s#logStream:group=/aws/sagemaker/TrainingJobs;prefix=%s;streamFilter=typeLogStreamPrefix", + "us-west-2", "us-west-2", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()), + Name: CloudWatchLogLinkName, + MessageFormat: flyteIdlCore.TaskLog_JSON, + }, + { + Uri: fmt.Sprintf("https://%s.console.aws.amazon.com/sagemaker/home?region=%s#/%s/%s", + "us-west-2", "us-west-2", "jobs", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()), + Name: TrainingJobSageMakerLinkName, + MessageFormat: flyteIdlCore.TaskLog_UNKNOWN, + }, + } + + expectedCustomInfo, _ := utils.MarshalObjToStruct(map[string]string{}) + assert.Equal(t, + func(tis []*flyteIdlCore.TaskLog) []flyteIdlCore.TaskLog { + ret := make([]flyteIdlCore.TaskLog, 0, len(tis)) + for _, ti := range tis { + ret = append(ret, *ti) + } + return ret + }(expectedTaskLogs), + func(tis []*flyteIdlCore.TaskLog) []flyteIdlCore.TaskLog { + ret := make([]flyteIdlCore.TaskLog, 0, len(tis)) + for _, ti := range tis { + ret = append(ret, *ti) + } + return ret + }(taskInfo.Logs)) + if diff := deep.Equal(expectedCustomInfo, taskInfo.CustomInfo); diff != nil { + assert.FailNow(t, "Should be equal.", "Diff: %v", diff) + } + assert.Len(t, taskInfo.ExternalResources, 1) + assert.Equal(t, taskInfo.ExternalResources[0].ExternalID, "some-acceptable-name") + }) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config.go new file mode 100644 index 0000000000..48c4d1ca61 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config.go @@ -0,0 +1,66 @@ +package config + +import pluginsConfig "github.com/flyteorg/flyte/flyteplugins/go/tasks/config" + +//go:generate pflags Config --default-var=defaultConfig + +const sagemakerConfigSectionKey = "sagemaker" + +var ( + defaultConfig = Config{ + RoleArn: "default_role", + Region: "us-east-1", + // https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html + PrebuiltAlgorithms: []PrebuiltAlgorithmConfig{ + { + Name: "xgboost", + RegionalConfig: []RegionalConfig{ + { + Region: "us-east-1", + VersionConfigs: []VersionConfig{ + { + Version: "0.90", + Image: "683313688378.dkr.ecr.us-east-1.amazonaws.com/sagemaker-xgboost:0.90-2-cpu-py3", + }, + }, + }, + }, + }, + }, + } + + sagemakerConfigSection = pluginsConfig.MustRegisterSubSection(sagemakerConfigSectionKey, &defaultConfig) +) + +// Sagemaker plugin configs +type Config struct { + RoleArn string `json:"roleArn" pflag:",The role the SageMaker plugin uses to communicate with the SageMaker service"` + Region string `json:"region" pflag:",The AWS region the SageMaker plugin communicates to"` + RoleAnnotationKey string `json:"roleAnnotationKey" pflag:",Map key to use to lookup role from task annotations."` + PrebuiltAlgorithms []PrebuiltAlgorithmConfig `json:"prebuiltAlgorithms" pflag:"-,A List of PrebuiltAlgorithm configs"` +} +type PrebuiltAlgorithmConfig struct { + Name string `json:"name" pflag:",The name of the ML algorithm. Should match Sagemaker"` + RegionalConfig []RegionalConfig `json:"regionalConfigs" pflag:"-,Per region specific configuration for this algorithm"` +} +type RegionalConfig struct { + Region string `json:"region" pflag:",Region for which this config is applicable"` + VersionConfigs []VersionConfig `json:"versionConfigs" pflag:",Configuration for various versions of the algorithms'"` +} +type VersionConfig struct { + Version string `json:"version" pflag:",version of the algorithm"` + Image string `json:"image" pflag:",Image URI of the algorithm"` +} + +// Retrieves the current config value or default. +func GetSagemakerConfig() *Config { + return sagemakerConfigSection.GetConfig().(*Config) +} + +func SetSagemakerConfig(cfg *Config) error { + return sagemakerConfigSection.SetConfig(cfg) +} + +func ResetSagemakerConfig() error { + return sagemakerConfigSection.SetConfig(&defaultConfig) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config_flags.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config_flags.go new file mode 100755 index 0000000000..8978fa6f44 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config_flags.go @@ -0,0 +1,57 @@ +// Code generated by go generate; DO NOT EDIT. +// This file was generated by robots. + +package config + +import ( + "encoding/json" + "reflect" + + "fmt" + + "github.com/spf13/pflag" +) + +// If v is a pointer, it will get its element value or the zero value of the element type. +// If v is not a pointer, it will return it as is. +func (Config) elemValueOrNil(v interface{}) interface{} { + if t := reflect.TypeOf(v); t.Kind() == reflect.Ptr { + if reflect.ValueOf(v).IsNil() { + return reflect.Zero(t.Elem()).Interface() + } else { + return reflect.ValueOf(v).Interface() + } + } else if v == nil { + return reflect.Zero(t).Interface() + } + + return v +} + +func (Config) mustJsonMarshal(v interface{}) string { + raw, err := json.Marshal(v) + if err != nil { + panic(err) + } + + return string(raw) +} + +func (Config) mustMarshalJSON(v json.Marshaler) string { + raw, err := v.MarshalJSON() + if err != nil { + panic(err) + } + + return string(raw) +} + +// GetPFlagSet will return strongly types pflags for all fields in Config and its nested types. The format of the +// flags is json-name.json-sub-name... etc. +func (cfg Config) GetPFlagSet(prefix string) *pflag.FlagSet { + cmdFlags := pflag.NewFlagSet("Config", pflag.ExitOnError) + cmdFlags.String(fmt.Sprintf("%v%v", prefix, "roleArn"), defaultConfig.RoleArn, "The role the SageMaker plugin uses to communicate with the SageMaker service") + cmdFlags.String(fmt.Sprintf("%v%v", prefix, "region"), defaultConfig.Region, "The AWS region the SageMaker plugin communicates to") + cmdFlags.String(fmt.Sprintf("%v%v", prefix, "roleAnnotationKey"), defaultConfig.RoleAnnotationKey, "Map key to use to lookup role from task annotations.") + return cmdFlags +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config_flags_test.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config_flags_test.go new file mode 100755 index 0000000000..ac9db85468 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/config/config_flags_test.go @@ -0,0 +1,144 @@ +// Code generated by go generate; DO NOT EDIT. +// This file was generated by robots. + +package config + +import ( + "encoding/json" + "fmt" + "reflect" + "strings" + "testing" + + "github.com/mitchellh/mapstructure" + "github.com/stretchr/testify/assert" +) + +var dereferencableKindsConfig = map[reflect.Kind]struct{}{ + reflect.Array: {}, reflect.Chan: {}, reflect.Map: {}, reflect.Ptr: {}, reflect.Slice: {}, +} + +// Checks if t is a kind that can be dereferenced to get its underlying type. +func canGetElementConfig(t reflect.Kind) bool { + _, exists := dereferencableKindsConfig[t] + return exists +} + +// This decoder hook tests types for json unmarshaling capability. If implemented, it uses json unmarshal to build the +// object. Otherwise, it'll just pass on the original data. +func jsonUnmarshalerHookConfig(_, to reflect.Type, data interface{}) (interface{}, error) { + unmarshalerType := reflect.TypeOf((*json.Unmarshaler)(nil)).Elem() + if to.Implements(unmarshalerType) || reflect.PtrTo(to).Implements(unmarshalerType) || + (canGetElementConfig(to.Kind()) && to.Elem().Implements(unmarshalerType)) { + + raw, err := json.Marshal(data) + if err != nil { + fmt.Printf("Failed to marshal Data: %v. Error: %v. Skipping jsonUnmarshalHook", data, err) + return data, nil + } + + res := reflect.New(to).Interface() + err = json.Unmarshal(raw, &res) + if err != nil { + fmt.Printf("Failed to umarshal Data: %v. Error: %v. Skipping jsonUnmarshalHook", data, err) + return data, nil + } + + return res, nil + } + + return data, nil +} + +func decode_Config(input, result interface{}) error { + config := &mapstructure.DecoderConfig{ + TagName: "json", + WeaklyTypedInput: true, + Result: result, + DecodeHook: mapstructure.ComposeDecodeHookFunc( + mapstructure.StringToTimeDurationHookFunc(), + mapstructure.StringToSliceHookFunc(","), + jsonUnmarshalerHookConfig, + ), + } + + decoder, err := mapstructure.NewDecoder(config) + if err != nil { + return err + } + + return decoder.Decode(input) +} + +func join_Config(arr interface{}, sep string) string { + listValue := reflect.ValueOf(arr) + strs := make([]string, 0, listValue.Len()) + for i := 0; i < listValue.Len(); i++ { + strs = append(strs, fmt.Sprintf("%v", listValue.Index(i))) + } + + return strings.Join(strs, sep) +} + +func testDecodeJson_Config(t *testing.T, val, result interface{}) { + assert.NoError(t, decode_Config(val, result)) +} + +func testDecodeRaw_Config(t *testing.T, vStringSlice, result interface{}) { + assert.NoError(t, decode_Config(vStringSlice, result)) +} + +func TestConfig_GetPFlagSet(t *testing.T) { + val := Config{} + cmdFlags := val.GetPFlagSet("") + assert.True(t, cmdFlags.HasFlags()) +} + +func TestConfig_SetFlags(t *testing.T) { + actual := Config{} + cmdFlags := actual.GetPFlagSet("") + assert.True(t, cmdFlags.HasFlags()) + + t.Run("Test_roleArn", func(t *testing.T) { + + t.Run("Override", func(t *testing.T) { + testValue := "1" + + cmdFlags.Set("roleArn", testValue) + if vString, err := cmdFlags.GetString("roleArn"); err == nil { + testDecodeJson_Config(t, fmt.Sprintf("%v", vString), &actual.RoleArn) + + } else { + assert.FailNow(t, err.Error()) + } + }) + }) + t.Run("Test_region", func(t *testing.T) { + + t.Run("Override", func(t *testing.T) { + testValue := "1" + + cmdFlags.Set("region", testValue) + if vString, err := cmdFlags.GetString("region"); err == nil { + testDecodeJson_Config(t, fmt.Sprintf("%v", vString), &actual.Region) + + } else { + assert.FailNow(t, err.Error()) + } + }) + }) + t.Run("Test_roleAnnotationKey", func(t *testing.T) { + + t.Run("Override", func(t *testing.T) { + testValue := "1" + + cmdFlags.Set("roleAnnotationKey", testValue) + if vString, err := cmdFlags.GetString("roleAnnotationKey"); err == nil { + testDecodeJson_Config(t, fmt.Sprintf("%v", vString), &actual.RoleAnnotationKey) + + } else { + assert.FailNow(t, err.Error()) + } + }) + }) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/constants.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/constants.go new file mode 100644 index 0000000000..a0f3704fd2 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/constants.go @@ -0,0 +1,51 @@ +package sagemaker + +const ( + trainingJobTaskPluginID = "sagemaker_training" + trainingJobTaskType = "sagemaker_training_job_task" +) + +const ( + customTrainingJobTaskPluginID = "sagemaker_custom_training" + customTrainingJobTaskType = "sagemaker_custom_training_job_task" +) + +const ( + hyperparameterTuningJobTaskPluginID = "sagemaker_hyperparameter_tuning" + hyperparameterTuningJobTaskType = "sagemaker_hyperparameter_tuning_job_task" +) + +const ( + TEXTCSVInputContentType string = "text/csv" +) + +const ( + FlyteSageMakerEnvVarKeyPrefix string = "__FLYTE_ENV_VAR_" + FlyteSageMakerKeySuffix string = "__" + FlyteSageMakerCmdKeyPrefix string = "__FLYTE_CMD_" + FlyteSageMakerCmdDummyValue string = "__FLYTE_CMD_DUMMY_VALUE__" + FlyteSageMakerEnvVarKeyStatsdDisabled string = "FLYTE_STATSD_DISABLED" + SageMakerMpiEnableEnvVarName string = "sagemaker_mpi_enabled" +) + +const ( + TrainingJobOutputPathSubDir = "training_outputs" + HyperparameterOutputPathSubDir = "hyperparameter_tuning_outputs" +) + +const ( + // These constants are the default input channel names for built-in algorithms + // When dealing with built-in algorithm training tasks, the plugin would assume these inputs exist and + // access these keys in the input literal map + // The same keys (except for the static hyperparameter key) would also be used when filling out the inputDataConfig fields of the CRD + TrainPredefinedInputVariable = "train" + ValidationPredefinedInputVariable = "validation" + StaticHyperparametersPredefinedInputVariable = "static_hyperparameters" +) + +const ( + CloudWatchLogLinkName = "CloudWatch Logs" + TrainingJobSageMakerLinkName = "SageMaker Built-in Algorithm Training Job" + CustomTrainingJobSageMakerLinkName = "SageMaker Custom Training Job" + HyperparameterTuningJobSageMakerLinkName = "SageMaker Hyperparameter Tuning Job" +) diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/custom_training.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/custom_training.go new file mode 100644 index 0000000000..fa80bbadf5 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/custom_training.go @@ -0,0 +1,217 @@ +package sagemaker + +import ( + "context" + "fmt" + "strconv" + "strings" + "time" + + commonv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/common" + trainingjobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/trainingjob" + "github.com/aws/aws-sdk-go/service/sagemaker" + "sigs.k8s.io/controller-runtime/pkg/client" + + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + flyteSageMakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + pluginErrors "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + taskError "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/ioutils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/k8s" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + "github.com/flyteorg/flyte/flytestdlib/logger" +) + +func (m awsSagemakerPlugin) buildResourceForCustomTrainingJob( + ctx context.Context, taskCtx pluginsCore.TaskExecutionContext) (client.Object, error) { + + logger.Infof(ctx, "Building a training job resource for task [%v]", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()) + taskTemplate, err := getTaskTemplate(ctx, taskCtx) + if err != nil { + return nil, err + } + + // Unmarshal the custom field of the task template back into the Hyperparameter Tuning Job struct generated in flyteidl + sagemakerTrainingJob := flyteSageMakerIdl.TrainingJob{} + err = utils.UnmarshalStruct(taskTemplate.GetCustom(), &sagemakerTrainingJob) + if err != nil { + + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "invalid TrainingJob task specification: not able to unmarshal the custom field to [%s]", m.TaskType) + } + + if sagemakerTrainingJob.GetAlgorithmSpecification() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "The unmarshaled training job does not have a AlgorithmSpecification field") + } + if sagemakerTrainingJob.GetAlgorithmSpecification().GetAlgorithmName() != flyteSageMakerIdl.AlgorithmName_CUSTOM { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "The algorithm name [%v] is not supported by the custom training job plugin", + sagemakerTrainingJob.GetAlgorithmSpecification().GetAlgorithmName().String()) + } + + inputChannels := make([]commonv1.Channel, 0) + inputModeString := strings.Title(strings.ToLower(sagemakerTrainingJob.GetAlgorithmSpecification().GetInputMode().String())) + + jobName := taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName() + outputPath := taskCtx.OutputWriter().GetOutputPrefixPath().String() + + if taskTemplate.GetContainer() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "The task template points to a nil container") + } + + if taskTemplate.GetContainer().GetImage() == "" { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "Invalid image of the container") + } + + trainingImageStr := taskTemplate.GetContainer().GetImage() + + cfg := config.GetSagemakerConfig() + + var metricDefinitions []commonv1.MetricDefinition + idlMetricDefinitions := sagemakerTrainingJob.GetAlgorithmSpecification().GetMetricDefinitions() + for _, md := range idlMetricDefinitions { + metricDefinitions = append(metricDefinitions, + commonv1.MetricDefinition{Name: ToStringPtr(md.Name), Regex: ToStringPtr(md.Regex)}) + } + + // TODO: When dealing with HPO job, we will need to deal with the following + // jobOutputPath := NewJobOutputPaths(ctx, taskCtx.DataStore(), taskCtx.OutputWriter().GetOutputPrefixPath(), jobName) + + hyperParameters, err := injectArgsAndEnvVars(ctx, taskCtx, taskTemplate) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "Failed to inject the task template's container env vars to the hyperparameter list") + } + + // Statsd is not available in SM because we are not allowed kick off a side car container nor are we allowed to customize our own AMI in an SM environment + // Therefore we need to inject a env var to disable statsd for sagemaker tasks + statsdDisableEnvVarName := fmt.Sprintf("%s%s%s", FlyteSageMakerEnvVarKeyPrefix, FlyteSageMakerEnvVarKeyStatsdDisabled, FlyteSageMakerKeySuffix) + logger.Infof(ctx, "Injecting %v=%v to force disable statsd for SageMaker tasks only", statsdDisableEnvVarName, strconv.FormatBool(true)) + hyperParameters = append(hyperParameters, &commonv1.KeyValuePair{ + Name: statsdDisableEnvVarName, + Value: strconv.FormatBool(true), + }) + + if sagemakerTrainingJob.GetTrainingJobResourceConfig() == nil { + logger.Errorf(ctx, "TrainingJobResourceConfig is nil") + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "TrainingJobResourceConfig is nil") + } + + if sagemakerTrainingJob.GetTrainingJobResourceConfig().GetDistributedProtocol() == flyteSageMakerIdl.DistributedProtocol_MPI { + // inject sagemaker_mpi_enabled=true into hyperparameters if the user code designates MPI as its distributed training framework + logger.Infof(ctx, "MPI is enabled by the user. TrainingJob.TrainingJobResourceConfig.DistributedProtocol=[%v]", sagemakerTrainingJob.GetTrainingJobResourceConfig().GetDistributedProtocol().String()) + hyperParameters = append(hyperParameters, &commonv1.KeyValuePair{ + Name: SageMakerMpiEnableEnvVarName, + Value: strconv.FormatBool(true), + }) + } else { + // default value: injecting sagemaker_mpi_enabled=false + logger.Infof(ctx, "Distributed protocol is unspecified or a non-MPI value [%v] in the training job", sagemakerTrainingJob.GetTrainingJobResourceConfig().GetDistributedProtocol()) + hyperParameters = append(hyperParameters, &commonv1.KeyValuePair{ + Name: SageMakerMpiEnableEnvVarName, + Value: strconv.FormatBool(false), + }) + } + logger.Infof(ctx, "The Sagemaker TrainingJob Task plugin received static hyperparameters [%v]", hyperParameters) + + trainingJob := &trainingjobv1.TrainingJob{ + Spec: trainingjobv1.TrainingJobSpec{ + AlgorithmSpecification: &commonv1.AlgorithmSpecification{ + // If the specify a value for this AlgorithmName parameter, the user can't specify a value for TrainingImage. + // in this Flyte plugin, we always use the algorithm name and version the user provides via Flytekit to map to an image + // so we intentionally leave this field nil + AlgorithmName: nil, + TrainingImage: ToStringPtr(trainingImageStr), + TrainingInputMode: commonv1.TrainingInputMode(inputModeString), + MetricDefinitions: metricDefinitions, + }, + // The support of spot training will come in a later version + EnableManagedSpotTraining: nil, + HyperParameters: hyperParameters, + InputDataConfig: inputChannels, + OutputDataConfig: &commonv1.OutputDataConfig{ + S3OutputPath: ToStringPtr(outputPath), + }, + CheckpointConfig: nil, + ResourceConfig: &commonv1.ResourceConfig{ + InstanceType: sagemakerTrainingJob.GetTrainingJobResourceConfig().GetInstanceType(), + InstanceCount: ToInt64Ptr(sagemakerTrainingJob.GetTrainingJobResourceConfig().GetInstanceCount()), + VolumeSizeInGB: ToInt64Ptr(sagemakerTrainingJob.GetTrainingJobResourceConfig().GetVolumeSizeInGb()), + VolumeKmsKeyId: ToStringPtr(""), // TODO: Not yet supported. Need to add to proto and flytekit in the future + }, + RoleArn: ToStringPtr(cfg.RoleArn), + Region: ToStringPtr(cfg.Region), + StoppingCondition: &commonv1.StoppingCondition{ + MaxRuntimeInSeconds: ToInt64Ptr(86400), // TODO: decide how to coordinate this and Flyte's timeout + MaxWaitTimeInSeconds: nil, // TODO: decide how to coordinate this and Flyte's timeout and queueing budget + }, + TensorBoardOutputConfig: nil, + Tags: nil, + TrainingJobName: &jobName, + }, + } + logger.Infof(ctx, "Successfully built a custom training job resource for task [%v]", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()) + return trainingJob, nil +} + +func (m awsSagemakerPlugin) getTaskPhaseForCustomTrainingJob( + ctx context.Context, pluginContext k8s.PluginContext, trainingJob *trainingjobv1.TrainingJob) (pluginsCore.PhaseInfo, error) { + + logger.Infof(ctx, "Getting task phase for sagemaker training job [%v]", trainingJob.Status.SageMakerTrainingJobName) + info, err := m.getEventInfoForCustomTrainingJob(ctx, trainingJob) + if err != nil { + return pluginsCore.PhaseInfoUndefined, pluginErrors.Wrapf(pluginErrors.RuntimeFailure, err, "Failed to get event info for the job") + } + + occurredAt := time.Now() + + switch trainingJob.Status.TrainingJobStatus { + case ReconcilingTrainingJobStatus: + logger.Errorf(ctx, "Job stuck in reconciling status, assuming retryable failure [%s]", trainingJob.Status.Additional) + // TODO talk to AWS about why there cannot be an explicit condition that signals AWS API call pluginErrors + execError := &flyteIdlCore.ExecutionError{ + Message: trainingJob.Status.Additional, + Kind: flyteIdlCore.ExecutionError_USER, + Code: ReconcilingTrainingJobStatus, + } + return pluginsCore.PhaseInfoFailed(pluginsCore.PhaseRetryableFailure, execError, info), nil + case sagemaker.TrainingJobStatusFailed: + execError := &flyteIdlCore.ExecutionError{ + Message: trainingJob.Status.Additional, + Kind: flyteIdlCore.ExecutionError_USER, + Code: sagemaker.TrainingJobStatusFailed, + } + return pluginsCore.PhaseInfoFailed(pluginsCore.PhasePermanentFailure, execError, info), nil + case sagemaker.TrainingJobStatusStopped: + return pluginsCore.PhaseInfoRetryableFailure(taskError.DownstreamSystemError, "Training Job Stopped", info), nil + case sagemaker.TrainingJobStatusCompleted: + // Now that it is a success we will set the outputs as expected by the task + + logger.Infof(ctx, "Looking for the output.pb under %s", pluginContext.OutputWriter().GetOutputPrefixPath()) + outputReader := ioutils.NewRemoteFileOutputReader(ctx, pluginContext.DataStore(), pluginContext.OutputWriter(), pluginContext.MaxDatasetSizeBytes()) + + // Instantiate a output reader with the literal map, and write the output to the remote location referred to by the OutputWriter + if err := pluginContext.OutputWriter().Put(ctx, outputReader); err != nil { + return pluginsCore.PhaseInfoUndefined, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "Failed to write output to the remote location") + } + logger.Debugf(ctx, "Successfully produced and returned outputs") + return pluginsCore.PhaseInfoSuccess(info), nil + case "": + return pluginsCore.PhaseInfoQueued(occurredAt, pluginsCore.DefaultPhaseVersion, "job submitted"), nil + } + + return pluginsCore.PhaseInfoRunning(pluginsCore.DefaultPhaseVersion, info), nil +} + +func (m awsSagemakerPlugin) getEventInfoForCustomTrainingJob(ctx context.Context, trainingJob *trainingjobv1.TrainingJob) (*pluginsCore.TaskInfo, error) { + + var jobRegion, jobName, jobTypeInURL, sagemakerLinkName string + jobRegion = *trainingJob.Spec.Region + jobName = *trainingJob.Spec.TrainingJobName + jobTypeInURL = "jobs" + sagemakerLinkName = CustomTrainingJobSageMakerLinkName + + logger.Infof(ctx, "Getting event information for SageMaker CustomTrainingJob task, job region: [%v], job name: [%v], "+ + "job type in url: [%v], sagemaker link name: [%v]", jobRegion, jobName, jobTypeInURL, sagemakerLinkName) + + return createTaskInfo(ctx, jobRegion, jobName, jobTypeInURL, sagemakerLinkName) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/custom_training_test.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/custom_training_test.go new file mode 100644 index 0000000000..094a9e5b01 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/custom_training_test.go @@ -0,0 +1,297 @@ +package sagemaker + +import ( + "context" + "fmt" + "strconv" + "testing" + + commonv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/common" + trainingjobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/trainingjob" + "github.com/aws/aws-sdk-go/service/sagemaker" + "github.com/go-test/deep" + "github.com/stretchr/testify/assert" + + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + sagemakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + stdConfig "github.com/flyteorg/flyte/flytestdlib/config" + "github.com/flyteorg/flyte/flytestdlib/config/viper" +) + +func Test_awsSagemakerPlugin_BuildResourceForCustomTrainingJob(t *testing.T) { + // Default config does not contain a roleAnnotationKey -> expecting to get the role from default config + ctx := context.TODO() + defaultCfg := config.GetSagemakerConfig() + defer func() { + _ = config.SetSagemakerConfig(defaultCfg) + }() + t.Run("In a custom training job we should see the FLYTE_SAGEMAKER_CMD being injected", func(t *testing.T) { + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: customTrainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_CUSTOM, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, generateMockCustomTrainingJobTaskContext(taskTemplate, false)) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + assert.Equal(t, "config_role", *trainingJob.Spec.RoleArn) + //assert.Equal(t, 1, len(trainingJob.Spec.HyperParameters)) + fmt.Printf("%v", trainingJob.Spec.HyperParameters) + expectedHPs := []*commonv1.KeyValuePair{ + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 0, "service_venv", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 1, "pyflyte-execute", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 2, "--test-opt1", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 3, "value1", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 4, "--test-opt2", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 5, "value2", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 6, "--test-flag", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%s%s", FlyteSageMakerEnvVarKeyPrefix, "Env_Var", FlyteSageMakerKeySuffix), Value: "Env_Val"}, + {Name: fmt.Sprintf("%s%s%s", FlyteSageMakerEnvVarKeyPrefix, FlyteSageMakerEnvVarKeyStatsdDisabled, FlyteSageMakerKeySuffix), Value: strconv.FormatBool(true)}, + {Name: SageMakerMpiEnableEnvVarName, Value: strconv.FormatBool(false)}, + } + assert.Equal(t, len(expectedHPs), len(trainingJob.Spec.HyperParameters)) + for i := range expectedHPs { + assert.Equal(t, expectedHPs[i].Name, trainingJob.Spec.HyperParameters[i].Name) + assert.Equal(t, expectedHPs[i].Value, trainingJob.Spec.HyperParameters[i].Value) + } + + assert.Equal(t, testImage, *trainingJob.Spec.AlgorithmSpecification.TrainingImage) + + // Since the distributed protocol is UNSPECIFIED, we should find sagemaker_mpi_enabled=false in the hyperparameters + count := 0 + for i := range trainingJob.Spec.HyperParameters { + if trainingJob.Spec.HyperParameters[i].Name == SageMakerMpiEnableEnvVarName && trainingJob.Spec.HyperParameters[i].Value == strconv.FormatBool(false) { + count++ + } + } + assert.Equal(t, 1, count) + }) + + t.Run("In a custom training job when users specify the MPI distributed protocol, even when the instance count is 1, we should find sagemaker_mpi_enabled=true in the hyperparameters", func(t *testing.T) { + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: customTrainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_CUSTOM, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_MPI) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, generateMockCustomTrainingJobTaskContext(taskTemplate, false)) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + + count := 0 + for i := range trainingJob.Spec.HyperParameters { + if trainingJob.Spec.HyperParameters[i].Name == SageMakerMpiEnableEnvVarName { + count++ + assert.Equal(t, trainingJob.Spec.HyperParameters[i].Value, strconv.FormatBool(true)) + } + } + assert.Equal(t, 1, count) + }) + + t.Run("When users specify the MPI distributed protocol, we should find sagemaker_mpi_enabled=true in the hyperparameters", func(t *testing.T) { + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: customTrainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_CUSTOM, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 2, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_MPI) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, generateMockCustomTrainingJobTaskContext(taskTemplate, false)) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + + count := 0 + for i := range trainingJob.Spec.HyperParameters { + if trainingJob.Spec.HyperParameters[i].Name == SageMakerMpiEnableEnvVarName { + count++ + assert.Equal(t, trainingJob.Spec.HyperParameters[i].Value, strconv.FormatBool(true)) + } + } + assert.Equal(t, 1, count) + }) +} + +func Test_awsSagemakerPlugin_GetTaskPhaseForCustomTrainingJob(t *testing.T) { + ctx := context.TODO() + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: customTrainingJobTaskType} + + t.Run("TrainingJobStatusCompleted", func(t *testing.T) { + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_XGBOOST, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + taskCtx := generateMockCustomTrainingJobTaskContext(taskTemplate, false) + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, taskCtx) + assert.Error(t, err) + assert.Nil(t, trainingJobResource) + }) + + t.Run("TrainingJobStatusCompleted", func(t *testing.T) { + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_CUSTOM, "", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + taskCtx := generateMockCustomTrainingJobTaskContext(taskTemplate, false) + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, taskCtx) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + + trainingJob.Status.TrainingJobStatus = sagemaker.TrainingJobStatusCompleted + phaseInfo, err := awsSageMakerTrainingJobHandler.getTaskPhaseForCustomTrainingJob(ctx, taskCtx, trainingJob) + assert.Nil(t, err) + assert.Equal(t, phaseInfo.Phase(), pluginsCore.PhaseSuccess) + }) + t.Run("OutputWriter.Put returns an error", func(t *testing.T) { + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_CUSTOM, "", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + taskCtx := generateMockCustomTrainingJobTaskContext(taskTemplate, true) + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, taskCtx) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + + trainingJob.Status.TrainingJobStatus = sagemaker.TrainingJobStatusCompleted + phaseInfo, err := awsSageMakerTrainingJobHandler.getTaskPhaseForCustomTrainingJob(ctx, taskCtx, trainingJob) + assert.NotNil(t, err) + assert.Equal(t, phaseInfo.Phase(), pluginsCore.PhaseUndefined) + }) +} + +func Test_awsSagemakerPlugin_getEventInfoForCustomTrainingJob(t *testing.T) { + // Default config does not contain a roleAnnotationKey -> expecting to get the role from default config + ctx := context.TODO() + defaultCfg := config.GetSagemakerConfig() + defer func() { + _ = config.SetSagemakerConfig(defaultCfg) + }() + + t.Run("get event info should return correctly formatted log links for custom training job", func(t *testing.T) { + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerTrainingJobHandler := awsSagemakerPlugin{TaskType: customTrainingJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_CUSTOM, "", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + taskCtx := generateMockCustomTrainingJobTaskContext(taskTemplate, false) + trainingJobResource, err := awsSageMakerTrainingJobHandler.BuildResource(ctx, taskCtx) + assert.NoError(t, err) + assert.NotNil(t, trainingJobResource) + + trainingJob, ok := trainingJobResource.(*trainingjobv1.TrainingJob) + assert.True(t, ok) + + taskInfo, err := awsSageMakerTrainingJobHandler.getEventInfoForCustomTrainingJob(ctx, trainingJob) + if err != nil { + panic(err) + } + + expectedTaskLogs := []*flyteIdlCore.TaskLog{ + { + Uri: fmt.Sprintf("https://%s.console.aws.amazon.com/cloudwatch/home?region=%s#logStream:group=/aws/sagemaker/TrainingJobs;prefix=%s;streamFilter=typeLogStreamPrefix", + "us-west-2", "us-west-2", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()), + Name: CloudWatchLogLinkName, + MessageFormat: flyteIdlCore.TaskLog_JSON, + }, + { + Uri: fmt.Sprintf("https://%s.console.aws.amazon.com/sagemaker/home?region=%s#/%s/%s", + "us-west-2", "us-west-2", "jobs", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()), + Name: CustomTrainingJobSageMakerLinkName, + MessageFormat: flyteIdlCore.TaskLog_UNKNOWN, + }, + } + + expectedCustomInfo, _ := utils.MarshalObjToStruct(map[string]string{}) + assert.Equal(t, + func(tis []*flyteIdlCore.TaskLog) []flyteIdlCore.TaskLog { + ret := make([]flyteIdlCore.TaskLog, 0, len(tis)) + for _, ti := range tis { + ret = append(ret, *ti) + } + return ret + }(expectedTaskLogs), + func(tis []*flyteIdlCore.TaskLog) []flyteIdlCore.TaskLog { + ret := make([]flyteIdlCore.TaskLog, 0, len(tis)) + for _, ti := range tis { + ret = append(ret, *ti) + } + return ret + }(taskInfo.Logs)) + if diff := deep.Equal(expectedCustomInfo, taskInfo.CustomInfo); diff != nil { + assert.FailNow(t, "Should be equal.", "Diff: %v", diff) + } + assert.Len(t, taskInfo.ExternalResources, 1) + assert.Equal(t, taskInfo.ExternalResources[0].ExternalID, "some-acceptable-name") + }) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/hyperparameter_tuning.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/hyperparameter_tuning.go new file mode 100644 index 0000000000..b233af182c --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/hyperparameter_tuning.go @@ -0,0 +1,276 @@ +package sagemaker + +import ( + "context" + "strings" + "time" + + commonv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/common" + hpojobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/hyperparametertuningjob" + "github.com/aws/aws-sdk-go/service/sagemaker" + "sigs.k8s.io/controller-runtime/pkg/client" + + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + flyteSageMakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + pluginErrors "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + taskError "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/ioutils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/k8s" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + awsUtils "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/awsutils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + "github.com/flyteorg/flyte/flytestdlib/logger" +) + +const ReconcilingTuningJobStatus = "ReconcilingTuningJob" + +func (m awsSagemakerPlugin) buildResourceForHyperparameterTuningJob( + ctx context.Context, taskCtx pluginsCore.TaskExecutionContext) (client.Object, error) { + + logger.Infof(ctx, "Building a hyperparameter tuning job resource for task [%v]", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()) + + taskTemplate, err := getTaskTemplate(ctx, taskCtx) + if err != nil { + return nil, err + } + + // Unmarshal the custom field of the task template back into the HyperparameterTuningJob struct generated in flyteidl + sagemakerHPOJob := flyteSageMakerIdl.HyperparameterTuningJob{} + err = utils.UnmarshalStruct(taskTemplate.GetCustom(), &sagemakerHPOJob) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "invalid HyperparameterTuningJob task specification: not able to unmarshal the custom field to [%s]", hyperparameterTuningJobTaskType) + } + if sagemakerHPOJob.GetTrainingJob() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "Required field [TrainingJob] of the HyperparameterTuningJob does not exist") + } + if sagemakerHPOJob.GetTrainingJob().GetAlgorithmSpecification() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "Required field [AlgorithmSpecification] of the HyperparameterTuningJob's underlying TrainingJob does not exist") + } + if sagemakerHPOJob.GetTrainingJob().GetTrainingJobResourceConfig() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "Required field [TrainingJobResourceConfig] of the HyperparameterTuningJob's underlying TrainingJob does not exist") + } + + taskInput, err := taskCtx.InputReader().Get(ctx) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "unable to fetch task inputs") + } + + // Get inputs from literals + inputLiterals := taskInput.GetLiterals() + err = checkIfRequiredInputLiteralsExist(inputLiterals, + []string{TrainPredefinedInputVariable, ValidationPredefinedInputVariable, StaticHyperparametersPredefinedInputVariable}) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "Error occurred when checking if all the required inputs exist") + } + + trainPathLiteral := inputLiterals[TrainPredefinedInputVariable] + validatePathLiteral := inputLiterals[ValidationPredefinedInputVariable] + staticHyperparamsLiteral := inputLiterals[StaticHyperparametersPredefinedInputVariable] + hpoJobConfigLiteral := inputLiterals["hyperparameter_tuning_job_config"] + if trainPathLiteral.GetScalar() == nil || trainPathLiteral.GetScalar().GetBlob() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "[%v] Input is required and should be of Type [Scalar.Blob]", TrainPredefinedInputVariable) + } + if validatePathLiteral.GetScalar() == nil || validatePathLiteral.GetScalar().GetBlob() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "[%v] Input is required and should be of Type [Scalar.Blob]", ValidationPredefinedInputVariable) + } + // Convert the hyperparameters to the spec value + staticHyperparams, err := convertStaticHyperparamsLiteralToSpecType(staticHyperparamsLiteral) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "could not convert static hyperparameters to spec type") + } + + // hyperparameter_tuning_job_config is marshaled into a struct in flytekit, so will have to unmarshal it back + hpoJobConfig, err := convertHyperparameterTuningJobConfigToSpecType(hpoJobConfigLiteral) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "failed to convert hyperparameter tuning job config literal to spec type") + } + + outputPath := createOutputPath(taskCtx.OutputWriter().GetRawOutputPrefix().String(), HyperparameterOutputPathSubDir) + if hpoJobConfig.GetTuningObjective() == nil { + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "Required field [TuningObjective] does not exist") + } + + // Deleting the conflicting static hyperparameters: if a hyperparameter exist in both the map of static hyperparameter + // and the map of the tunable hyperparameter inside the Hyperparameter Tuning Job Config, we delete the entry + // in the static map and let the one in the map of the tunable hyperparameters take precedence + staticHyperparams = deleteConflictingStaticHyperparameters(ctx, staticHyperparams, hpoJobConfig.GetHyperparameterRanges().GetParameterRangeMap()) + + jobName := taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName() + + trainingImageStr, err := getTrainingJobImage(ctx, taskCtx, sagemakerHPOJob.GetTrainingJob()) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "failed to find the training image") + } + + hpoJobParameterRanges := buildParameterRanges(ctx, inputLiterals) + logger.Infof(ctx, "The Sagemaker HyperparameterTuningJob Task plugin received the following inputs: \n"+ + "static hyperparameters: [%v]\n"+ + "hyperparameter tuning job config: [%v]\n"+ + "parameter ranges: [%v]", staticHyperparams, hpoJobConfig, hpoJobParameterRanges) + + cfg := config.GetSagemakerConfig() + + var metricDefinitions []commonv1.MetricDefinition + idlMetricDefinitions := sagemakerHPOJob.GetTrainingJob().GetAlgorithmSpecification().GetMetricDefinitions() + for _, md := range idlMetricDefinitions { + metricDefinitions = append(metricDefinitions, + commonv1.MetricDefinition{Name: ToStringPtr(md.Name), Regex: ToStringPtr(md.Regex)}) + } + + apiContentType, err := getAPIContentType(sagemakerHPOJob.GetTrainingJob().GetAlgorithmSpecification().GetInputContentType()) + if err != nil { + return nil, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "Unsupported input file type [%v]", + sagemakerHPOJob.GetTrainingJob().GetAlgorithmSpecification().GetInputContentType().String()) + } + + inputModeString := strings.Title(strings.ToLower(sagemakerHPOJob.GetTrainingJob().GetAlgorithmSpecification().GetInputMode().String())) + tuningStrategyString := strings.Title(strings.ToLower(hpoJobConfig.GetTuningStrategy().String())) + tuningObjectiveTypeString := strings.Title(strings.ToLower(hpoJobConfig.GetTuningObjective().GetObjectiveType().String())) + trainingJobEarlyStoppingTypeString := strings.Title(strings.ToLower(hpoJobConfig.TrainingJobEarlyStoppingType.String())) + + role := awsUtils.GetRoleFromSecurityContext(cfg.RoleAnnotationKey, taskCtx.TaskExecutionMetadata()) + + if len(role) == 0 { + role = cfg.RoleArn + } + + hpoJob := &hpojobv1.HyperparameterTuningJob{ + Spec: hpojobv1.HyperparameterTuningJobSpec{ + HyperParameterTuningJobName: &jobName, + HyperParameterTuningJobConfig: &commonv1.HyperParameterTuningJobConfig{ + ResourceLimits: &commonv1.ResourceLimits{ + MaxNumberOfTrainingJobs: ToInt64Ptr(sagemakerHPOJob.GetMaxNumberOfTrainingJobs()), + MaxParallelTrainingJobs: ToInt64Ptr(sagemakerHPOJob.GetMaxParallelTrainingJobs()), + }, + Strategy: commonv1.HyperParameterTuningJobStrategyType(tuningStrategyString), + HyperParameterTuningJobObjective: &commonv1.HyperParameterTuningJobObjective{ + Type: commonv1.HyperParameterTuningJobObjectiveType(tuningObjectiveTypeString), + MetricName: ToStringPtr(hpoJobConfig.GetTuningObjective().GetMetricName()), + }, + ParameterRanges: hpoJobParameterRanges, + TrainingJobEarlyStoppingType: commonv1.TrainingJobEarlyStoppingType(trainingJobEarlyStoppingTypeString), + }, + TrainingJobDefinition: &commonv1.HyperParameterTrainingJobDefinition{ + StaticHyperParameters: staticHyperparams, + AlgorithmSpecification: &commonv1.HyperParameterAlgorithmSpecification{ + TrainingImage: ToStringPtr(trainingImageStr), + TrainingInputMode: commonv1.TrainingInputMode(inputModeString), + MetricDefinitions: metricDefinitions, + AlgorithmName: nil, + }, + InputDataConfig: []commonv1.Channel{ + { + ChannelName: ToStringPtr(TrainPredefinedInputVariable), + DataSource: &commonv1.DataSource{ + S3DataSource: &commonv1.S3DataSource{ + S3DataType: "S3Prefix", + S3Uri: ToStringPtr(trainPathLiteral.GetScalar().GetBlob().GetUri()), + }, + }, + ContentType: ToStringPtr(apiContentType), // TODO: can this be derived from the BlobMetadata + InputMode: inputModeString, + }, + { + ChannelName: ToStringPtr(ValidationPredefinedInputVariable), + DataSource: &commonv1.DataSource{ + S3DataSource: &commonv1.S3DataSource{ + S3DataType: "S3Prefix", + S3Uri: ToStringPtr(validatePathLiteral.GetScalar().GetBlob().GetUri()), + }, + }, + ContentType: ToStringPtr(apiContentType), // TODO: can this be derived from the BlobMetadata + InputMode: inputModeString, + }, + }, + OutputDataConfig: &commonv1.OutputDataConfig{ + S3OutputPath: ToStringPtr(outputPath), + }, + ResourceConfig: &commonv1.ResourceConfig{ + InstanceType: sagemakerHPOJob.GetTrainingJob().GetTrainingJobResourceConfig().GetInstanceType(), + InstanceCount: ToInt64Ptr(sagemakerHPOJob.GetTrainingJob().GetTrainingJobResourceConfig().GetInstanceCount()), + VolumeSizeInGB: ToInt64Ptr(sagemakerHPOJob.GetTrainingJob().GetTrainingJobResourceConfig().GetVolumeSizeInGb()), + VolumeKmsKeyId: ToStringPtr(""), // TODO: Not yet supported. Need to add to proto and flytekit in the future + }, + RoleArn: ToStringPtr(role), + StoppingCondition: &commonv1.StoppingCondition{ + MaxRuntimeInSeconds: ToInt64Ptr(86400), + MaxWaitTimeInSeconds: nil, + }, + }, + Region: ToStringPtr(cfg.Region), + }, + } + + logger.Infof(ctx, "Successfully built a hyperparameter tuning job resource for task [%v]", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()) + return hpoJob, nil +} + +func (m awsSagemakerPlugin) getTaskPhaseForHyperparameterTuningJob( + ctx context.Context, pluginContext k8s.PluginContext, hpoJob *hpojobv1.HyperparameterTuningJob) (pluginsCore.PhaseInfo, error) { + + logger.Infof(ctx, "Getting task phase for hyperparameter tuning job [%v]", hpoJob.Status.SageMakerHyperParameterTuningJobName) + info, err := m.getEventInfoForHyperparameterTuningJob(ctx, hpoJob) + if err != nil { + return pluginsCore.PhaseInfoUndefined, pluginErrors.Wrapf(pluginErrors.RuntimeFailure, err, "Failed to get event info for the job") + } + + occurredAt := time.Now() + + switch hpoJob.Status.HyperParameterTuningJobStatus { + case ReconcilingTuningJobStatus: + logger.Errorf(ctx, "Job stuck in reconciling status, assuming retryable failure [%s]", hpoJob.Status.Additional) + // TODO talk to AWS about why there cannot be an explicit condition that signals AWS API call pluginErrors + execError := &flyteIdlCore.ExecutionError{ + Message: hpoJob.Status.Additional, + Kind: flyteIdlCore.ExecutionError_USER, + Code: ReconcilingTuningJobStatus, + } + return pluginsCore.PhaseInfoFailed(pluginsCore.PhaseRetryableFailure, execError, info), nil + case sagemaker.HyperParameterTuningJobStatusFailed: + execError := &flyteIdlCore.ExecutionError{ + Message: hpoJob.Status.Additional, + Kind: flyteIdlCore.ExecutionError_USER, + Code: sagemaker.HyperParameterTuningJobStatusFailed, + } + return pluginsCore.PhaseInfoFailed(pluginsCore.PhasePermanentFailure, execError, info), nil + case sagemaker.HyperParameterTuningJobStatusStopped: + return pluginsCore.PhaseInfoRetryableFailure(taskError.DownstreamSystemError, "Hyperparameter tuning job stopped", info), nil + case sagemaker.HyperParameterTuningJobStatusCompleted: + // Now that it is a success we will set the outputs as expected by the task + + // TODO: + // Check task template -> custom training job -> if custom: assume output.pb exist, and fail if it doesn't. If it exists, then + // -> if not custom: check model.tar.gz + out, err := getOutputLiteralMapFromTaskInterface(ctx, pluginContext.TaskReader(), + createModelOutputPath(hpoJob, pluginContext.OutputWriter().GetRawOutputPrefix().String(), + *hpoJob.Status.BestTrainingJob.TrainingJobName)) + if err != nil { + logger.Errorf(ctx, "Failed to create outputs, err: %s", err) + return pluginsCore.PhaseInfoUndefined, pluginErrors.Wrapf(pluginErrors.BadTaskSpecification, err, "failed to create outputs for the task") + } + if err := pluginContext.OutputWriter().Put(ctx, ioutils.NewInMemoryOutputReader(out, nil, nil)); err != nil { + return pluginsCore.PhaseInfoUndefined, err + } + logger.Debugf(ctx, "Successfully produced and returned outputs") + return pluginsCore.PhaseInfoSuccess(info), nil + case "": + return pluginsCore.PhaseInfoQueued(occurredAt, pluginsCore.DefaultPhaseVersion, "job submitted"), nil + } + + return pluginsCore.PhaseInfoRunning(pluginsCore.DefaultPhaseVersion, info), nil +} + +func (m awsSagemakerPlugin) getEventInfoForHyperparameterTuningJob(ctx context.Context, hpoJob *hpojobv1.HyperparameterTuningJob) (*pluginsCore.TaskInfo, error) { + + var jobRegion, jobName, jobTypeInURL, sagemakerLinkName string + jobRegion = *hpoJob.Spec.Region + jobName = *hpoJob.Spec.HyperParameterTuningJobName + jobTypeInURL = "hyper-tuning-jobs" + sagemakerLinkName = HyperparameterTuningJobSageMakerLinkName + + logger.Infof(ctx, "Getting event information for SageMaker HyperparameterTuningJob task, job region: [%v], job name: [%v], "+ + "job type in url: [%v], sagemaker link name: [%v]", jobRegion, jobName, jobTypeInURL, sagemakerLinkName) + + return createTaskInfo(ctx, jobRegion, jobName, jobTypeInURL, sagemakerLinkName) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/hyperparameter_tuning_test.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/hyperparameter_tuning_test.go new file mode 100644 index 0000000000..ee3452f6b6 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/hyperparameter_tuning_test.go @@ -0,0 +1,130 @@ +package sagemaker + +import ( + "context" + "fmt" + "testing" + + hpojobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/hyperparametertuningjob" + "github.com/go-test/deep" + "github.com/stretchr/testify/assert" + + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + sagemakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + stdConfig "github.com/flyteorg/flyte/flytestdlib/config" + "github.com/flyteorg/flyte/flytestdlib/config/viper" +) + +func Test_awsSagemakerPlugin_BuildResourceForHyperparameterTuningJob(t *testing.T) { + // Default config does not contain a roleAnnotationKey -> expecting to get the role from default config + ctx := context.TODO() + err := config.ResetSagemakerConfig() + if err != nil { + panic(err) + } + defaultCfg := config.GetSagemakerConfig() + awsSageMakerHPOJobHandler := awsSagemakerPlugin{TaskType: hyperparameterTuningJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_XGBOOST, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + htObj := generateMockHyperparameterTuningJobCustomObj(tjObj, 10, 5) + taskTemplate := generateMockHyperparameterTuningJobTaskTemplate("the job", htObj) + hpoJobResource, err := awsSageMakerHPOJobHandler.BuildResource(ctx, generateMockHyperparameterTuningJobTaskContext(taskTemplate)) + assert.NoError(t, err) + assert.NotNil(t, hpoJobResource) + + hpoJob, ok := hpoJobResource.(*hpojobv1.HyperparameterTuningJob) + assert.True(t, ok) + assert.NotNil(t, hpoJob.Spec.TrainingJobDefinition) + assert.Equal(t, 1, len(hpoJob.Spec.HyperParameterTuningJobConfig.ParameterRanges.IntegerParameterRanges)) + assert.Equal(t, 0, len(hpoJob.Spec.HyperParameterTuningJobConfig.ParameterRanges.ContinuousParameterRanges)) + assert.Equal(t, 0, len(hpoJob.Spec.HyperParameterTuningJobConfig.ParameterRanges.CategoricalParameterRanges)) + assert.Equal(t, "us-east-1", *hpoJob.Spec.Region) + assert.Equal(t, "default_role", *hpoJob.Spec.TrainingJobDefinition.RoleArn) + + err = config.SetSagemakerConfig(defaultCfg) + if err != nil { + panic(err) + } +} + +func Test_awsSagemakerPlugin_getEventInfoForHyperparameterTuningJob(t *testing.T) { + // Default config does not contain a roleAnnotationKey -> expecting to get the role from default config + ctx := context.TODO() + defaultCfg := config.GetSagemakerConfig() + defer func() { + _ = config.SetSagemakerConfig(defaultCfg) + }() + + t.Run("get event info should return correctly formatted log links for custom training job", func(t *testing.T) { + // Injecting a config which contains a mismatched roleAnnotationKey -> expecting to get the role from the config + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + // Use a different + SearchPaths: []string{"testdata/config2.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + awsSageMakerHPOJobHandler := awsSagemakerPlugin{TaskType: hyperparameterTuningJobTaskType} + + tjObj := generateMockTrainingJobCustomObj( + sagemakerIdl.InputMode_FILE, sagemakerIdl.AlgorithmName_XGBOOST, "0.90", []*sagemakerIdl.MetricDefinition{}, + sagemakerIdl.InputContentType_TEXT_CSV, 1, "ml.m4.xlarge", 25, sagemakerIdl.DistributedProtocol_UNSPECIFIED) + htObj := generateMockHyperparameterTuningJobCustomObj(tjObj, 10, 5) + taskTemplate := generateMockHyperparameterTuningJobTaskTemplate("the job", htObj) + taskCtx := generateMockHyperparameterTuningJobTaskContext(taskTemplate) + hpoJobResource, err := awsSageMakerHPOJobHandler.BuildResource(ctx, taskCtx) + assert.NoError(t, err) + assert.NotNil(t, hpoJobResource) + + hpoJob, ok := hpoJobResource.(*hpojobv1.HyperparameterTuningJob) + assert.True(t, ok) + + taskInfo, err := awsSageMakerHPOJobHandler.getEventInfoForHyperparameterTuningJob(ctx, hpoJob) + if err != nil { + panic(err) + } + + expectedTaskLogs := []*flyteIdlCore.TaskLog{ + { + Uri: fmt.Sprintf("https://%s.console.aws.amazon.com/cloudwatch/home?region=%s#logStream:group=/aws/sagemaker/TrainingJobs;prefix=%s;streamFilter=typeLogStreamPrefix", + "us-west-2", "us-west-2", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()), + Name: CloudWatchLogLinkName, + MessageFormat: flyteIdlCore.TaskLog_JSON, + }, + { + Uri: fmt.Sprintf("https://%s.console.aws.amazon.com/sagemaker/home?region=%s#/%s/%s", + "us-west-2", "us-west-2", "hyper-tuning-jobs", taskCtx.TaskExecutionMetadata().GetTaskExecutionID().GetGeneratedName()), + Name: HyperparameterTuningJobSageMakerLinkName, + MessageFormat: flyteIdlCore.TaskLog_UNKNOWN, + }, + } + + expectedCustomInfo, _ := utils.MarshalObjToStruct(map[string]string{}) + assert.Equal(t, + func(tis []*flyteIdlCore.TaskLog) []flyteIdlCore.TaskLog { + ret := make([]flyteIdlCore.TaskLog, 0, len(tis)) + for _, ti := range tis { + ret = append(ret, *ti) + } + return ret + }(expectedTaskLogs), + func(tis []*flyteIdlCore.TaskLog) []flyteIdlCore.TaskLog { + ret := make([]flyteIdlCore.TaskLog, 0, len(tis)) + for _, ti := range tis { + ret = append(ret, *ti) + } + return ret + }(taskInfo.Logs)) + if diff := deep.Equal(expectedCustomInfo, taskInfo.CustomInfo); diff != nil { + assert.FailNow(t, "Should be equal.", "Diff: %v", diff) + } + assert.Len(t, taskInfo.ExternalResources, 1) + assert.Equal(t, taskInfo.ExternalResources[0].ExternalID, "some-acceptable-name") + }) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/outputs.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/outputs.go new file mode 100644 index 0000000000..b26255d78d --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/outputs.go @@ -0,0 +1,71 @@ +package sagemaker + +import ( + "context" + "fmt" + + hpojobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/hyperparametertuningjob" + trainingjobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/trainingjob" + "sigs.k8s.io/controller-runtime/pkg/client" + + "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flytestdlib/logger" +) + +func createOutputLiteralMap(tk *core.TaskTemplate, outputPath string) *core.LiteralMap { + op := &core.LiteralMap{} + for k := range tk.Interface.Outputs.Variables { + // if v != core.LiteralType_Blob{} + op.Literals = make(map[string]*core.Literal) + op.Literals[k] = &core.Literal{ + Value: &core.Literal_Scalar{ + Scalar: &core.Scalar{ + Value: &core.Scalar_Blob{ + Blob: &core.Blob{ + Metadata: &core.BlobMetadata{ + Type: &core.BlobType{Dimensionality: core.BlobType_SINGLE}, + }, + Uri: outputPath, + }, + }, + }, + }, + } + } + return op +} + +func getOutputLiteralMapFromTaskInterface(ctx context.Context, tr pluginsCore.TaskReader, outputPath string) (*flyteIdlCore.LiteralMap, error) { + tk, err := tr.Read(ctx) + if err != nil { + return nil, err + } + if tk.Interface.Outputs != nil && tk.Interface.Outputs.Variables == nil { + logger.Warnf(ctx, "No outputs declared in the output interface. Ignoring the generated outputs.") + return nil, nil + } + + // We know that for XGBoost task there is only one output to be generated + if len(tk.Interface.Outputs.Variables) > 1 { + return nil, fmt.Errorf("expected to generate more than one outputs of type [%v]", tk.Interface.Outputs.Variables) + } + op := createOutputLiteralMap(tk, outputPath) + return op, nil +} + +func createOutputPath(prefix string, subdir string) string { + return fmt.Sprintf("%s/%s", prefix, subdir) +} + +func createModelOutputPath(job client.Object, prefix, jobName string) string { + switch job.(type) { + case *trainingjobv1.TrainingJob: + return fmt.Sprintf("%s/%s/output/model.tar.gz", createOutputPath(prefix, TrainingJobOutputPathSubDir), jobName) + case *hpojobv1.HyperparameterTuningJob: + return fmt.Sprintf("%s/%s/output/model.tar.gz", createOutputPath(prefix, HyperparameterOutputPathSubDir), jobName) + default: + return "" + } +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/outputs_test.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/outputs_test.go new file mode 100644 index 0000000000..665a31caac --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/outputs_test.go @@ -0,0 +1,34 @@ +package sagemaker + +import ( + "testing" + + hpojobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/hyperparametertuningjob" + trainingjobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/trainingjob" + "sigs.k8s.io/controller-runtime/pkg/client" +) + +func Test_createModelOutputPath(t *testing.T) { + type args struct { + job client.Object + prefix string + bestExperiment string + } + tests := []struct { + name string + args args + want string + }{ + {name: "training job: simple output path", args: args{job: &trainingjobv1.TrainingJob{}, prefix: "s3://my-bucket", bestExperiment: "job-ABC"}, + want: "s3://my-bucket/training_outputs/job-ABC/output/model.tar.gz"}, + {name: "hpo job: simple output path", args: args{job: &hpojobv1.HyperparameterTuningJob{}, prefix: "s3://my-bucket", bestExperiment: "job-ABC"}, + want: "s3://my-bucket/hyperparameter_tuning_outputs/job-ABC/output/model.tar.gz"}, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + if got := createModelOutputPath(tt.args.job, tt.args.prefix, tt.args.bestExperiment); got != tt.want { + t.Errorf("createModelOutputPath() = %v, want %v", got, tt.want) + } + }) + } +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin.go new file mode 100644 index 0000000000..328efc2e5c --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin.go @@ -0,0 +1,102 @@ +package sagemaker + +import ( + "context" + + commonv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/common" + hpojobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/hyperparametertuningjob" + trainingjobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/trainingjob" + "k8s.io/client-go/kubernetes/scheme" + "sigs.k8s.io/controller-runtime/pkg/client" + + pluginErrors "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/k8s" +) + +// Sanity test that the plugin implements method of k8s.Plugin +var _ k8s.Plugin = awsSagemakerPlugin{} + +type awsSagemakerPlugin struct { + TaskType pluginsCore.TaskType +} + +func (awsSagemakerPlugin) GetProperties() k8s.PluginProperties { + return k8s.PluginProperties{} +} + +func (m awsSagemakerPlugin) BuildIdentityResource(_ context.Context, _ pluginsCore.TaskExecutionMetadata) (client.Object, error) { + if m.TaskType == trainingJobTaskType || m.TaskType == customTrainingJobTaskType { + return &trainingjobv1.TrainingJob{}, nil + } + if m.TaskType == hyperparameterTuningJobTaskType { + return &hpojobv1.HyperparameterTuningJob{}, nil + } + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "The sagemaker plugin is unable to build identity resource for an unknown task type [%v]", m.TaskType) +} + +func (m awsSagemakerPlugin) BuildResource(ctx context.Context, taskCtx pluginsCore.TaskExecutionContext) (client.Object, error) { + + // Unmarshal the custom field of the task template back into the HyperparameterTuningJob struct generated in flyteidl + if m.TaskType == trainingJobTaskType { + return m.buildResourceForTrainingJob(ctx, taskCtx) + } + if m.TaskType == customTrainingJobTaskType { + return m.buildResourceForCustomTrainingJob(ctx, taskCtx) + } + if m.TaskType == hyperparameterTuningJobTaskType { + return m.buildResourceForHyperparameterTuningJob(ctx, taskCtx) + } + return nil, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "The SageMaker plugin is unable to build resource for unknown task type [%s]", m.TaskType) +} + +func (m awsSagemakerPlugin) GetTaskPhase(ctx context.Context, pluginContext k8s.PluginContext, resource client.Object) (pluginsCore.PhaseInfo, error) { + if m.TaskType == trainingJobTaskType { + job := resource.(*trainingjobv1.TrainingJob) + return m.getTaskPhaseForTrainingJob(ctx, pluginContext, job) + } else if m.TaskType == customTrainingJobTaskType { + job := resource.(*trainingjobv1.TrainingJob) + return m.getTaskPhaseForCustomTrainingJob(ctx, pluginContext, job) + } else if m.TaskType == hyperparameterTuningJobTaskType { + job := resource.(*hpojobv1.HyperparameterTuningJob) + return m.getTaskPhaseForHyperparameterTuningJob(ctx, pluginContext, job) + } + return pluginsCore.PhaseInfoUndefined, pluginErrors.Errorf(pluginErrors.BadTaskSpecification, "cannot get task phase for unknown task type [%s]", m.TaskType) +} + +func init() { + if err := commonv1.AddToScheme(scheme.Scheme); err != nil { + panic(err) + } + + // Registering the plugin for HyperparameterTuningJob + pluginmachinery.PluginRegistry().RegisterK8sPlugin( + k8s.PluginEntry{ + ID: hyperparameterTuningJobTaskPluginID, + RegisteredTaskTypes: []pluginsCore.TaskType{hyperparameterTuningJobTaskType}, + ResourceToWatch: &hpojobv1.HyperparameterTuningJob{}, + Plugin: awsSagemakerPlugin{TaskType: hyperparameterTuningJobTaskType}, + IsDefault: false, + }) + + // Registering the plugin for standalone TrainingJob + pluginmachinery.PluginRegistry().RegisterK8sPlugin( + k8s.PluginEntry{ + ID: trainingJobTaskPluginID, + RegisteredTaskTypes: []pluginsCore.TaskType{trainingJobTaskType}, + ResourceToWatch: &trainingjobv1.TrainingJob{}, + Plugin: awsSagemakerPlugin{TaskType: trainingJobTaskType}, + IsDefault: false, + }) + + // Registering the plugin for custom TrainingJob + pluginmachinery.PluginRegistry().RegisterK8sPlugin( + k8s.PluginEntry{ + ID: customTrainingJobTaskPluginID, + RegisteredTaskTypes: []pluginsCore.TaskType{customTrainingJobTaskType}, + ResourceToWatch: &trainingjobv1.TrainingJob{}, + Plugin: awsSagemakerPlugin{TaskType: customTrainingJobTaskType}, + IsDefault: false, + }) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin_test.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin_test.go new file mode 100644 index 0000000000..38cc76bbab --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin_test.go @@ -0,0 +1,67 @@ +package sagemaker + +import ( + "context" + "reflect" + "testing" + + hpojobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/hyperparametertuningjob" + trainingjobv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/trainingjob" + "github.com/stretchr/testify/assert" + "sigs.k8s.io/controller-runtime/pkg/client" + + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/k8s" + "github.com/flyteorg/flyte/flytestdlib/contextutils" + "github.com/flyteorg/flyte/flytestdlib/promutils/labeled" +) + +func Test_awsSagemakerPlugin_BuildIdentityResource(t *testing.T) { + ctx := context.TODO() + type fields struct { + TaskType pluginsCore.TaskType + } + type args struct { + in0 context.Context + in1 pluginsCore.TaskExecutionMetadata + } + tests := []struct { + name string + fields fields + args args + want client.Object + wantErr bool + }{ + {name: "Training Job Identity Resource", fields: fields{TaskType: trainingJobTaskType}, + args: args{in0: ctx, in1: genMockTaskExecutionMetadata()}, want: &trainingjobv1.TrainingJob{}, wantErr: false}, + {name: "HPO Job Identity Resource", fields: fields{TaskType: hyperparameterTuningJobTaskType}, + args: args{in0: ctx, in1: genMockTaskExecutionMetadata()}, want: &hpojobv1.HyperparameterTuningJob{}, wantErr: false}, + {name: "Unsupported Job Identity Resource", fields: fields{TaskType: "bad type"}, + args: args{in0: ctx, in1: genMockTaskExecutionMetadata()}, want: nil, wantErr: true}, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + m := awsSagemakerPlugin{ + TaskType: tt.fields.TaskType, + } + got, err := m.BuildIdentityResource(tt.args.in0, tt.args.in1) + if (err != nil) != tt.wantErr { + t.Errorf("BuildIdentityResource() error = %v, wantErr %v", err, tt.wantErr) + return + } + if !reflect.DeepEqual(got, tt.want) { + t.Errorf("BuildIdentityResource() got = %v, want %v", got, tt.want) + } + }) + } +} + +func TestGetProperties(t *testing.T) { + plugin := awsSagemakerPlugin{} + expected := k8s.PluginProperties{} + assert.Equal(t, expected, plugin.GetProperties()) +} + +func init() { + labeled.SetMetricKeys(contextutils.NamespaceKey) +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin_test_utils.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin_test_utils.go new file mode 100644 index 0000000000..3733f74725 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/plugin_test_utils.go @@ -0,0 +1,442 @@ +package sagemaker + +import ( + "github.com/golang/protobuf/jsonpb" + "github.com/golang/protobuf/proto" + structpb "github.com/golang/protobuf/ptypes/struct" + "github.com/pkg/errors" + "github.com/stretchr/testify/mock" + corev1 "k8s.io/api/core/v1" + "k8s.io/apimachinery/pkg/api/resource" + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + + "github.com/flyteorg/flyte/flyteidl/clients/go/coreutils" + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + sagemakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core/mocks" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/flytek8s" + pluginIOMocks "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/io/mocks" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + "github.com/flyteorg/flyte/flytestdlib/promutils" + "github.com/flyteorg/flyte/flytestdlib/storage" +) + +const testImage = "image://" +const serviceAccount = "sagemaker_sa" + +var ( + dummyEnvVars = []*flyteIdlCore.KeyValuePair{ + {Key: "Env_Var", Value: "Env_Val"}, + } + + testArgs = []string{ + "service_venv", + "pyflyte-execute", + "--test-opt1", + "value1", + "--test-opt2", + "value2", + "--test-flag", + } + + testCmds = []string{ + "test-cmds1", + "test-cmds2", + } + + resourceRequirements = &corev1.ResourceRequirements{ + Limits: corev1.ResourceList{ + corev1.ResourceCPU: resource.MustParse("1000m"), + corev1.ResourceMemory: resource.MustParse("1Gi"), + flytek8s.ResourceNvidiaGPU: resource.MustParse("1"), + }, + Requests: corev1.ResourceList{ + corev1.ResourceCPU: resource.MustParse("100m"), + corev1.ResourceMemory: resource.MustParse("512Mi"), + flytek8s.ResourceNvidiaGPU: resource.MustParse("1"), + }, + } +) + +func generateMockTrainingJobTaskTemplate(id string, trainingJobCustomObj *sagemakerIdl.TrainingJob) *flyteIdlCore.TaskTemplate { + + tjObjJSON, err := utils.MarshalToString(trainingJobCustomObj) + if err != nil { + panic(err) + } + structObj := structpb.Struct{} + + err = jsonpb.UnmarshalString(tjObjJSON, &structObj) + if err != nil { + panic(err) + } + + return &flyteIdlCore.TaskTemplate{ + Id: &flyteIdlCore.Identifier{Name: id}, + Type: "container", + Target: &flyteIdlCore.TaskTemplate_Container{ + Container: &flyteIdlCore.Container{ + Command: testCmds, + Image: testImage, + Args: testArgs, + Env: dummyEnvVars, + }, + }, + Custom: &structObj, + } +} + +func generateMockHyperparameterTuningJobTaskTemplate(id string, hpoJobCustomObj *sagemakerIdl.HyperparameterTuningJob) *flyteIdlCore.TaskTemplate { + + htObjJSON, err := utils.MarshalToString(hpoJobCustomObj) + if err != nil { + panic(err) + } + structObj := structpb.Struct{} + + err = jsonpb.UnmarshalString(htObjJSON, &structObj) + if err != nil { + panic(err) + } + + return &flyteIdlCore.TaskTemplate{ + Id: &flyteIdlCore.Identifier{Name: id}, + Type: "container", + Target: &flyteIdlCore.TaskTemplate_Container{ + Container: &flyteIdlCore.Container{ + Image: testImage, + Args: testArgs, + Env: dummyEnvVars, + }, + }, + Custom: &structObj, + Interface: &flyteIdlCore.TypedInterface{ + Inputs: &flyteIdlCore.VariableMap{ + Variables: map[string]*flyteIdlCore.Variable{ + "input": { + Type: &flyteIdlCore.LiteralType{ + Type: &flyteIdlCore.LiteralType_CollectionType{ + CollectionType: &flyteIdlCore.LiteralType{Type: &flyteIdlCore.LiteralType_Simple{Simple: flyteIdlCore.SimpleType_INTEGER}}, + }, + }, + }, + }, + }, + Outputs: &flyteIdlCore.VariableMap{ + Variables: map[string]*flyteIdlCore.Variable{ + "output": { + Type: &flyteIdlCore.LiteralType{ + Type: &flyteIdlCore.LiteralType_CollectionType{ + CollectionType: &flyteIdlCore.LiteralType{Type: &flyteIdlCore.LiteralType_Simple{Simple: flyteIdlCore.SimpleType_INTEGER}}, + }, + }, + }, + }, + }, + }, + } +} + +// nolint +func generateMockCustomTrainingJobTaskContext(taskTemplate *flyteIdlCore.TaskTemplate, outputReaderPutError bool) pluginsCore.TaskExecutionContext { + taskCtx := &mocks.TaskExecutionContext{} + inputReader := &pluginIOMocks.InputReader{} + inputReader.OnGetInputPrefixPath().Return("/input/prefix") + inputReader.OnGetInputPath().Return("/input") + + trainBlobLoc := storage.DataReference("train-blob-loc") + validationBlobLoc := storage.DataReference("validation-blob-loc") + + inputReader.OnGetMatch(mock.Anything).Return( + &flyteIdlCore.LiteralMap{ + Literals: map[string]*flyteIdlCore.Literal{ + "train": generateMockBlobLiteral(trainBlobLoc), + "validation": generateMockBlobLiteral(validationBlobLoc), + "hp_int": coreutils.MustMakeLiteral(1), + "hp_float": coreutils.MustMakeLiteral(1.5), + "hp_bool": coreutils.MustMakeLiteral(false), + "hp_string": coreutils.MustMakeLiteral("a"), + }, + }, nil) + taskCtx.OnInputReader().Return(inputReader) + + outputReader := &pluginIOMocks.OutputWriter{} + outputReader.OnGetOutputPath().Return("/data/outputs.pb") + outputReader.OnGetOutputPrefixPath().Return("/data/") + outputReader.OnGetRawOutputPrefix().Return("/raw/") + outputReader.OnGetCheckpointPrefix().Return("/checkpoint") + outputReader.OnGetPreviousCheckpointsPrefix().Return("/prev") + + if outputReaderPutError { + outputReader.OnPutMatch(mock.Anything, mock.Anything).Return(errors.Errorf("err")) + } else { + outputReader.OnPutMatch(mock.Anything, mock.Anything).Return(nil) + } + taskCtx.OnOutputWriter().Return(outputReader) + + taskReader := &mocks.TaskReader{} + taskReader.OnReadMatch(mock.Anything).Return(taskTemplate, nil) + taskCtx.OnTaskReader().Return(taskReader) + + tID := &mocks.TaskExecutionID{} + tID.OnGetID().Return(flyteIdlCore.TaskExecutionIdentifier{ + NodeExecutionId: &flyteIdlCore.NodeExecutionIdentifier{ + ExecutionId: &flyteIdlCore.WorkflowExecutionIdentifier{ + Name: "my_name", + Project: "my_project", + Domain: "my_domain", + }, + }, + }) + tID.OnGetGeneratedName().Return("some-acceptable-name") + + resources := &mocks.TaskOverrides{} + resources.OnGetResources().Return(resourceRequirements) + + taskExecutionMetadata := &mocks.TaskExecutionMetadata{} + taskExecutionMetadata.OnGetTaskExecutionID().Return(tID) + taskExecutionMetadata.OnGetNamespace().Return("test-namespace") + taskExecutionMetadata.OnGetAnnotations().Return(map[string]string{"iam.amazonaws.com/role": "metadata_role"}) + taskExecutionMetadata.OnGetSecurityContext().Return(flyteIdlCore.SecurityContext{ + RunAs: &flyteIdlCore.Identity{IamRole: "new-role"}, + }) + + taskExecutionMetadata.OnGetLabels().Return(map[string]string{"label-1": "val1"}) + taskExecutionMetadata.OnGetOwnerReference().Return(v1.OwnerReference{ + Kind: "node", + Name: "blah", + }) + taskExecutionMetadata.OnIsInterruptible().Return(true) + taskExecutionMetadata.OnGetOverrides().Return(resources) + taskExecutionMetadata.OnGetK8sServiceAccount().Return(serviceAccount) + taskCtx.OnTaskExecutionMetadata().Return(taskExecutionMetadata) + + dataStore, err := storage.NewDataStore(&storage.Config{Type: storage.TypeMemory}, promutils.NewTestScope()) + if err != nil { + panic(err) + } + taskCtx.OnDataStore().Return(dataStore) + + taskCtx.OnMaxDatasetSizeBytes().Return(10000) + + return taskCtx +} + +// nolint +func generateMockTrainingJobTaskContext(taskTemplate *flyteIdlCore.TaskTemplate, outputReaderPutError bool) pluginsCore.TaskExecutionContext { + taskCtx := &mocks.TaskExecutionContext{} + inputReader := &pluginIOMocks.InputReader{} + inputReader.OnGetInputPrefixPath().Return("/input/prefix") + inputReader.OnGetInputPath().Return("/input") + + trainBlobLoc := storage.DataReference("train-blob-loc") + validationBlobLoc := storage.DataReference("validation-blob-loc") + shp := map[string]string{"a": "1", "b": "2"} + shpStructObj, _ := utils.MarshalObjToStruct(shp) + + inputReader.OnGetMatch(mock.Anything).Return( + &flyteIdlCore.LiteralMap{ + Literals: map[string]*flyteIdlCore.Literal{ + "train": generateMockBlobLiteral(trainBlobLoc), + "validation": generateMockBlobLiteral(validationBlobLoc), + "static_hyperparameters": coreutils.MakeGenericLiteral(shpStructObj), + }, + }, nil) + taskCtx.OnInputReader().Return(inputReader) + + outputReader := &pluginIOMocks.OutputWriter{} + outputReader.OnGetOutputPath().Return("/data/outputs.pb") + outputReader.OnGetOutputPrefixPath().Return("/data/") + outputReader.OnGetRawOutputPrefix().Return("/raw/") + outputReader.OnGetCheckpointPrefix().Return("/checkpoint") + outputReader.OnGetPreviousCheckpointsPrefix().Return("/prev") + + if outputReaderPutError { + outputReader.OnPutMatch(mock.Anything).Return(errors.Errorf("err")) + } + taskCtx.OnOutputWriter().Return(outputReader) + + taskReader := &mocks.TaskReader{} + taskReader.OnReadMatch(mock.Anything).Return(taskTemplate, nil) + taskCtx.OnTaskReader().Return(taskReader) + + tID := &mocks.TaskExecutionID{} + tID.OnGetID().Return(flyteIdlCore.TaskExecutionIdentifier{ + NodeExecutionId: &flyteIdlCore.NodeExecutionIdentifier{ + ExecutionId: &flyteIdlCore.WorkflowExecutionIdentifier{ + Name: "my_name", + Project: "my_project", + Domain: "my_domain", + }, + }, + }) + tID.OnGetGeneratedName().Return("some-acceptable-name") + + resources := &mocks.TaskOverrides{} + resources.OnGetResources().Return(resourceRequirements) + + taskExecutionMetadata := &mocks.TaskExecutionMetadata{} + taskExecutionMetadata.OnGetTaskExecutionID().Return(tID) + taskExecutionMetadata.OnGetNamespace().Return("test-namespace") + taskExecutionMetadata.OnGetAnnotations().Return(map[string]string{"iam.amazonaws.com/role": "metadata_role"}) + taskExecutionMetadata.OnGetSecurityContext().Return(flyteIdlCore.SecurityContext{}) + taskExecutionMetadata.OnGetLabels().Return(map[string]string{"label-1": "val1"}) + taskExecutionMetadata.OnGetOwnerReference().Return(v1.OwnerReference{ + Kind: "node", + Name: "blah", + }) + taskExecutionMetadata.OnIsInterruptible().Return(true) + taskExecutionMetadata.OnGetOverrides().Return(resources) + taskExecutionMetadata.OnGetK8sServiceAccount().Return(serviceAccount) + taskCtx.OnTaskExecutionMetadata().Return(taskExecutionMetadata) + return taskCtx +} + +func generateMockBlobLiteral(loc storage.DataReference) *flyteIdlCore.Literal { + return &flyteIdlCore.Literal{ + Value: &flyteIdlCore.Literal_Scalar{ + Scalar: &flyteIdlCore.Scalar{ + Value: &flyteIdlCore.Scalar_Blob{ + Blob: &flyteIdlCore.Blob{ + Uri: loc.String(), + Metadata: &flyteIdlCore.BlobMetadata{ + Type: &flyteIdlCore.BlobType{ + Dimensionality: flyteIdlCore.BlobType_SINGLE, + Format: "csv", + }, + }, + }, + }, + }, + }, + } +} + +func generateMockHyperparameterTuningJobTaskContext(taskTemplate *flyteIdlCore.TaskTemplate) pluginsCore.TaskExecutionContext { + taskCtx := &mocks.TaskExecutionContext{} + inputReader := &pluginIOMocks.InputReader{} + inputReader.OnGetInputPrefixPath().Return("/input/prefix") + inputReader.OnGetInputPath().Return("/input") + + trainBlobLoc := storage.DataReference("train-blob-loc") + validationBlobLoc := storage.DataReference("validation-blob-loc") + shp := map[string]string{"a": "1", "b": "2"} + shpStructObj, _ := utils.MarshalObjToStruct(shp) + hpoJobConfig := sagemakerIdl.HyperparameterTuningJobConfig{ + TuningStrategy: sagemakerIdl.HyperparameterTuningStrategy_BAYESIAN, + TuningObjective: &sagemakerIdl.HyperparameterTuningObjective{ + ObjectiveType: sagemakerIdl.HyperparameterTuningObjectiveType_MINIMIZE, + MetricName: "test:metric", + }, + TrainingJobEarlyStoppingType: sagemakerIdl.TrainingJobEarlyStoppingType_AUTO, + } + hpoJobConfigByteArray, _ := proto.Marshal(&hpoJobConfig) + + intParamRange := &structpb.Struct{} + err := utils.MarshalStruct(&sagemakerIdl.ParameterRangeOneOf{ + ParameterRangeType: &sagemakerIdl.ParameterRangeOneOf_IntegerParameterRange{ + IntegerParameterRange: &sagemakerIdl.IntegerParameterRange{ + MaxValue: 2, + MinValue: 1, + ScalingType: sagemakerIdl.HyperparameterScalingType_LINEAR, + }, + }, + }, intParamRange) + + if err != nil { + panic(err) + } + + inputReader.OnGetMatch(mock.Anything).Return( + &flyteIdlCore.LiteralMap{ + Literals: map[string]*flyteIdlCore.Literal{ + "train": generateMockBlobLiteral(trainBlobLoc), + "validation": generateMockBlobLiteral(validationBlobLoc), + "static_hyperparameters": coreutils.MakeGenericLiteral(shpStructObj), + "hyperparameter_tuning_job_config": coreutils.MakeBinaryLiteral(hpoJobConfigByteArray), + "a": coreutils.MakeGenericLiteral(intParamRange), + }, + }, nil) + taskCtx.OnInputReader().Return(inputReader) + + outputReader := &pluginIOMocks.OutputWriter{} + outputReader.OnGetOutputPath().Return("/data/outputs.pb") + outputReader.OnGetOutputPrefixPath().Return("/data/") + outputReader.OnGetRawOutputPrefix().Return("/raw/") + + taskCtx.OnOutputWriter().Return(outputReader) + + taskReader := &mocks.TaskReader{} + taskReader.OnReadMatch(mock.Anything).Return(taskTemplate, nil) + taskCtx.OnTaskReader().Return(taskReader) + taskExecutionMetadata := genMockTaskExecutionMetadata() + taskCtx.OnTaskExecutionMetadata().Return(taskExecutionMetadata) + return taskCtx +} + +func genMockTaskExecutionMetadata() *mocks.TaskExecutionMetadata { + tID := &mocks.TaskExecutionID{} + tID.OnGetID().Return(flyteIdlCore.TaskExecutionIdentifier{ + NodeExecutionId: &flyteIdlCore.NodeExecutionIdentifier{ + ExecutionId: &flyteIdlCore.WorkflowExecutionIdentifier{ + Name: "my_name", + Project: "my_project", + Domain: "my_domain", + }, + }, + }) + + tID.OnGetGeneratedName().Return("some-acceptable-name") + + resources := &mocks.TaskOverrides{} + resources.OnGetResources().Return(resourceRequirements) + + taskExecutionMetadata := &mocks.TaskExecutionMetadata{} + taskExecutionMetadata.OnGetTaskExecutionID().Return(tID) + taskExecutionMetadata.OnGetNamespace().Return("test-namespace") + taskExecutionMetadata.OnGetAnnotations().Return(map[string]string{"iam.amazonaws.com/role": "metadata_role"}) + taskExecutionMetadata.OnGetSecurityContext().Return(flyteIdlCore.SecurityContext{ + RunAs: &flyteIdlCore.Identity{IamRole: "default_role"}, + }) + taskExecutionMetadata.OnGetLabels().Return(map[string]string{"label-1": "val1"}) + taskExecutionMetadata.OnGetOwnerReference().Return(v1.OwnerReference{ + Kind: "node", + Name: "blah", + }) + taskExecutionMetadata.OnIsInterruptible().Return(true) + taskExecutionMetadata.OnGetOverrides().Return(resources) + taskExecutionMetadata.OnGetK8sServiceAccount().Return(serviceAccount) + return taskExecutionMetadata +} + +// nolint +func generateMockTrainingJobCustomObj( + inputMode sagemakerIdl.InputMode_Value, algName sagemakerIdl.AlgorithmName_Value, algVersion string, + metricDefinitions []*sagemakerIdl.MetricDefinition, contentType sagemakerIdl.InputContentType_Value, + instanceCount int64, instanceType string, volumeSizeInGB int64, protocol sagemakerIdl.DistributedProtocol_Value) *sagemakerIdl.TrainingJob { + return &sagemakerIdl.TrainingJob{ + AlgorithmSpecification: &sagemakerIdl.AlgorithmSpecification{ + InputMode: inputMode, + AlgorithmName: algName, + AlgorithmVersion: algVersion, + MetricDefinitions: metricDefinitions, + InputContentType: contentType, + }, + TrainingJobResourceConfig: &sagemakerIdl.TrainingJobResourceConfig{ + InstanceCount: instanceCount, + InstanceType: instanceType, + VolumeSizeInGb: volumeSizeInGB, + DistributedProtocol: protocol, + }, + } +} + +func generateMockHyperparameterTuningJobCustomObj( + trainingJob *sagemakerIdl.TrainingJob, maxNumberOfTrainingJobs int64, maxParallelTrainingJobs int64) *sagemakerIdl.HyperparameterTuningJob { + return &sagemakerIdl.HyperparameterTuningJob{ + TrainingJob: trainingJob, + MaxNumberOfTrainingJobs: maxNumberOfTrainingJobs, + MaxParallelTrainingJobs: maxParallelTrainingJobs, + } +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/testdata/config.yaml b/flyteplugins/go/tasks/plugins/k8s/sagemaker/testdata/config.yaml new file mode 100644 index 0000000000..f30a7978c2 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/testdata/config.yaml @@ -0,0 +1,14 @@ +plugins: + sagemaker: + roleArn: "config_role" + region: "us-west-2" + roleAnnotationKey: "iam.amazonaws.com/role" + prebuiltAlgorithms: + - name: "XGBOOST" + regionalConfigs: + - region: "us-west-2" + versionConfigs: + - version: "0.90" + image: "XGBOOST_us-west-2_image-0.90" + - version: "1.0" + image: "XGBOOST_us-west-2_image-1.0" diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/testdata/config2.yaml b/flyteplugins/go/tasks/plugins/k8s/sagemaker/testdata/config2.yaml new file mode 100644 index 0000000000..8ad02000a3 --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/testdata/config2.yaml @@ -0,0 +1,14 @@ +plugins: + sagemaker: + roleArn: "config_role" + region: "us-west-2" + roleAnnotationKey: "blah" + prebuiltAlgorithms: + - name: "XGBOOST" + regionalConfigs: + - region: "us-west-2" + versionConfigs: + - version: "0.90" + image: "image-0.90" + - version: "1.0" + image: "image-1.0" diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/utils.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/utils.go new file mode 100644 index 0000000000..047d2ae23c --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/utils.go @@ -0,0 +1,405 @@ +package sagemaker + +import ( + "context" + "fmt" + "sort" + "strings" + + "github.com/Masterminds/semver" + commonv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/common" + awsSdk "github.com/aws/aws-sdk-go-v2/aws" + "github.com/golang/protobuf/proto" + + "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + flyteIdlCore "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + flyteSagemakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + pluginErrors "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" + pluginsCore "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/core/template" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + "github.com/flyteorg/flyte/flytestdlib/errors" + "github.com/flyteorg/flyte/flytestdlib/logger" +) + +const ( + ErrSagemaker = "SAGEMAKER_ERROR" +) + +func getAPIContentType(fileType flyteSagemakerIdl.InputContentType_Value) (string, error) { + if fileType == flyteSagemakerIdl.InputContentType_TEXT_CSV { + return TEXTCSVInputContentType, nil + } + return "", errors.Errorf(ErrSagemaker, "Unsupported input file type [%v]", fileType.String()) +} + +func getLatestTrainingImage(versionConfigs []config.VersionConfig) (string, error) { + latestSemVer, _ := semver.NewVersion("0.0.0") + latestImg := "" + for _, verCfg := range versionConfigs { + semVer, err := semver.NewVersion(verCfg.Version) + if err != nil { + return "", errors.Wrapf(ErrSagemaker, err, "Failed to cast version [%v] to a semver", verCfg.Version) + } + if semVer.GreaterThan(latestSemVer) { + latestSemVer = semVer + latestImg = verCfg.Image + } + } + if latestImg == "" { + return "", errors.Errorf(ErrSagemaker, "Failed to find the latest image") + } + return latestImg, nil +} + +func getTrainingJobImage(ctx context.Context, _ pluginsCore.TaskExecutionContext, job *flyteSagemakerIdl.TrainingJob) (string, error) { + image, err := getPrebuiltTrainingImage(ctx, job) + if err != nil { + return "", errors.Wrapf(ErrSagemaker, err, "Failed to get prebuilt image for job [%v]", *job) + } + return image, nil +} + +// Finds the algorithm configuration for the given name +func findAlgorithmConfig(cfg *config.Config, name string) (config.PrebuiltAlgorithmConfig, error) { + for _, algorithmCfg := range cfg.PrebuiltAlgorithms { + if strings.EqualFold(name, algorithmCfg.Name) { + return algorithmCfg, nil + } + } + return config.PrebuiltAlgorithmConfig{}, errors.Errorf(ErrSagemaker, "Failed to find an image for algorithm [%v]", name) +} + +// Find RegionConfig for the algorithm name and region +func findRegionConfig(algoConfig config.PrebuiltAlgorithmConfig, name string) (config.RegionalConfig, error) { + for _, regionalCfg := range algoConfig.RegionalConfig { + if strings.EqualFold(name, regionalCfg.Region) { + return regionalCfg, nil + } + } + return config.RegionalConfig{}, + errors.Errorf(ErrSagemaker, "Failed to find an image for algorithm [%v] region [%v]", algoConfig.Name, name) +} + +func getPrebuiltTrainingImage(ctx context.Context, job *flyteSagemakerIdl.TrainingJob) (string, error) { + // This function determines which image URI to put into the CRD of the training job and the hyperparameter tuning job + + cfg := config.GetSagemakerConfig() + + if specifiedAlg := job.GetAlgorithmSpecification().GetAlgorithmName(); specifiedAlg != flyteSagemakerIdl.AlgorithmName_CUSTOM { + // Built-in algorithm mode + apiAlgorithmName := specifiedAlg.String() + + foundAlgorithmCfg, err := findAlgorithmConfig(cfg, apiAlgorithmName) + if err != nil { + return "", err + } + + foundRegionalCfg, err := findRegionConfig(foundAlgorithmCfg, cfg.Region) + if err != nil { + return "", err + } + + userSpecifiedVer := job.GetAlgorithmSpecification().GetAlgorithmVersion() + // If the user does not specify a version -> use the latest version found in the config possible + if userSpecifiedVer == "" { + logger.Infof(ctx, "The version of the algorithm [%v] is not specified. "+ + "The plugin will try to pick the latest version available for the algorithm-region combination.", userSpecifiedVer, apiAlgorithmName, cfg.Region) + latestTrainingImage, err := getLatestTrainingImage(foundRegionalCfg.VersionConfigs) + if err != nil { + return "", errors.Wrapf(ErrSagemaker, err, "Failed to identify the latest image for algorithm:region [%v:%v]", + apiAlgorithmName, cfg.Region) + } + return latestTrainingImage, nil + } + // If the user specified a version -> we have to translate it to semver and find an exact match + for _, versionCfg := range foundRegionalCfg.VersionConfigs { + configSemVer, err := semver.NewVersion(versionCfg.Version) + if err != nil { + return "", errors.Wrapf(ErrSagemaker, err, "Unable to cast version listed in the config [%v] to a semver", versionCfg.Version) + } + userSpecifiedSemVer, err := semver.NewVersion(userSpecifiedVer) + if err != nil { + return "", errors.Wrapf(ErrSagemaker, err, "Unable to cast version specified by the user [%v] to a semver", userSpecifiedVer) + } + if configSemVer.Equal(userSpecifiedSemVer) { + logger.Infof(ctx, "Image [%v] is picked for algorithm [%v] region [%v] version [%v] ", + versionCfg.Image, apiAlgorithmName, cfg.Region, userSpecifiedSemVer) + return versionCfg.Image, nil + } + } + logger.Errorf(ctx, "Failed to find an image for [%v]:[%v]:[%v]", + job.GetAlgorithmSpecification().GetAlgorithmName(), cfg.Region, job.GetAlgorithmSpecification().GetAlgorithmVersion()) + + return "", errors.Errorf(ErrSagemaker, "Failed to find an image for [%v]:[%v]:[%v]", + job.GetAlgorithmSpecification().GetAlgorithmName(), cfg.Region, job.GetAlgorithmSpecification().GetAlgorithmVersion()) + } + // Custom image + return "", errors.Errorf(ErrSagemaker, "It is invalid to try getting a prebuilt image for AlgorithmName == CUSTOM ") +} + +func buildParameterRanges(ctx context.Context, literals map[string]*core.Literal) *commonv1.ParameterRanges { + var retValue = &commonv1.ParameterRanges{ + CategoricalParameterRanges: []commonv1.CategoricalParameterRange{}, + ContinuousParameterRanges: []commonv1.ContinuousParameterRange{}, + IntegerParameterRanges: []commonv1.IntegerParameterRange{}, + } + + for name, literal := range literals { + if literal.GetScalar() == nil || literal.GetScalar().GetGeneric() == nil { + logger.Infof(ctx, "Input [%v] is not of type Generic, won't be considered for parameter ranges.", name) + continue + } + + p := &flyteSagemakerIdl.ParameterRangeOneOf{} + err := utils.UnmarshalStruct(literal.GetScalar().GetGeneric(), p) + if err != nil { + logger.Infof(ctx, "Failed to unmarshal input [%v] as a ParameterRangeOneOf. Skipping. Error: %v", name, err) + continue + } + + switch p.GetParameterRangeType().(type) { + case *flyteSagemakerIdl.ParameterRangeOneOf_CategoricalParameterRange: + var newElem = commonv1.CategoricalParameterRange{ + Name: awsSdk.String(name), + Values: p.GetCategoricalParameterRange().GetValues(), + } + + retValue.CategoricalParameterRanges = append(retValue.CategoricalParameterRanges, newElem) + + case *flyteSagemakerIdl.ParameterRangeOneOf_ContinuousParameterRange: + scalingTypeString := strings.Title(strings.ToLower(p.GetContinuousParameterRange().GetScalingType().String())) + var newElem = commonv1.ContinuousParameterRange{ + MaxValue: awsSdk.String(fmt.Sprintf("%f", p.GetContinuousParameterRange().GetMaxValue())), + MinValue: awsSdk.String(fmt.Sprintf("%f", p.GetContinuousParameterRange().GetMinValue())), + Name: awsSdk.String(name), + ScalingType: commonv1.HyperParameterScalingType(scalingTypeString), + } + + retValue.ContinuousParameterRanges = append(retValue.ContinuousParameterRanges, newElem) + + case *flyteSagemakerIdl.ParameterRangeOneOf_IntegerParameterRange: + scalingTypeString := strings.Title(strings.ToLower(p.GetIntegerParameterRange().GetScalingType().String())) + var newElem = commonv1.IntegerParameterRange{ + MaxValue: awsSdk.String(fmt.Sprintf("%d", p.GetIntegerParameterRange().GetMaxValue())), + MinValue: awsSdk.String(fmt.Sprintf("%d", p.GetIntegerParameterRange().GetMinValue())), + Name: awsSdk.String(name), + ScalingType: commonv1.HyperParameterScalingType(scalingTypeString), + } + + retValue.IntegerParameterRanges = append(retValue.IntegerParameterRanges, newElem) + } + } + + // TODO: Inspect input interface to determine the inputs of type ParameterRange and fail if any of them is not + // marshalled correctly. This is currently not easy to do because there is no universal way to compactly refer to a + // protobuf type and version. This might be a useful addition to Flyte's programming language for advanced usecases. + return retValue +} + +func convertHyperparameterTuningJobConfigToSpecType(hpoJobConfigLiteral *core.Literal) (*flyteSagemakerIdl.HyperparameterTuningJobConfig, error) { + var retValue = &flyteSagemakerIdl.HyperparameterTuningJobConfig{} + if hpoJobConfigLiteral.GetScalar() == nil { + return nil, errors.Errorf(ErrSagemaker, "[Hyperparameters] should not be nil.") + } + + var err error + switch v := hpoJobConfigLiteral.GetScalar().GetValue().(type) { + case *core.Scalar_Generic: + err = utils.UnmarshalStruct(v.Generic, retValue) + case *core.Scalar_Binary: + err = proto.Unmarshal(v.Binary.GetValue(), retValue) + default: + err = errors.Errorf(ErrSagemaker, "[Hyperparameter Tuning Job Config should be set to a struct.") + } + + if err != nil { + return nil, errors.Wrapf(ErrSagemaker, err, "Hyperparameter Tuning Job Config Literal in input cannot"+ + " be unmarshalled into spec type") + } + + return retValue, nil +} + +func convertStaticHyperparamsLiteralToSpecType(hyperparamLiteral *core.Literal) ([]*commonv1.KeyValuePair, error) { + var retValue []*commonv1.KeyValuePair + if hyperparamLiteral.GetScalar() == nil || hyperparamLiteral.GetScalar().GetGeneric() == nil { + return nil, errors.Errorf(ErrSagemaker, "[Hyperparameters] should be of type [Scalar.Generic]") + } + hyperFields := hyperparamLiteral.GetScalar().GetGeneric().GetFields() + if hyperFields == nil { + return nil, errors.Errorf(ErrSagemaker, "Failed to get the static hyperparameters field from the literal") + } + + keys := make([]string, 0) + for k := range hyperFields { + keys = append(keys, k) + } + sort.Strings(keys) + + fmt.Printf("[%v]", keys) + for _, k := range keys { + v := hyperFields[k] + var newElem = commonv1.KeyValuePair{ + Name: k, + Value: v.GetStringValue(), + } + retValue = append(retValue, &newElem) + } + + return retValue, nil +} + +func ToStringPtr(str string) *string { + if str == "" { + return nil + } + return &str +} + +func ToInt64Ptr(i int64) *int64 { + if i == 0 { + return nil + } + return &i +} + +func ToIntPtr(i int) *int { + if i == 0 { + return nil + } + return &i +} + +func ToFloat64Ptr(f float64) *float64 { + if f == 0 { + return nil + } + return &f +} + +func deleteConflictingStaticHyperparameters( + ctx context.Context, + staticHPs []*commonv1.KeyValuePair, + tunableHPMap map[string]*flyteSagemakerIdl.ParameterRangeOneOf) []*commonv1.KeyValuePair { + + resolvedStaticHPs := make([]*commonv1.KeyValuePair, 0, len(staticHPs)) + + for _, hp := range staticHPs { + if _, found := tunableHPMap[hp.Name]; !found { + resolvedStaticHPs = append(resolvedStaticHPs, hp) + } else { + logger.Infof(ctx, + "Static hyperparameter [%v] is removed because the same hyperparameter can be found in the map of tunable hyperparameters", hp.Name) + } + } + return resolvedStaticHPs +} + +func makeHyperparametersKeysValuesFromArgs(_ context.Context, args []string) []*commonv1.KeyValuePair { + ret := make([]*commonv1.KeyValuePair, 0) + for argOrder, arg := range args { + ret = append(ret, &commonv1.KeyValuePair{ + Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, argOrder, arg, FlyteSageMakerKeySuffix), + Value: FlyteSageMakerCmdDummyValue, + }) + } + return ret +} + +func injectTaskTemplateEnvVarToHyperparameters(ctx context.Context, taskTemplate *flyteIdlCore.TaskTemplate, hps []*commonv1.KeyValuePair) ([]*commonv1.KeyValuePair, error) { + if taskTemplate == nil || taskTemplate.GetContainer() == nil { + return hps, errors.Errorf(ErrSagemaker, "The taskTemplate is nil or the container is nil") + } + + if hps == nil { + return nil, errors.Errorf(ErrSagemaker, "A nil slice of hyperparameters is passed in") + } + + for _, ev := range taskTemplate.GetContainer().GetEnv() { + hpKey := fmt.Sprintf("%s%s%s", FlyteSageMakerEnvVarKeyPrefix, ev.Key, FlyteSageMakerKeySuffix) + logger.Infof(ctx, "Injecting env var {%v: %v} into the hyperparameter list", hpKey, ev.Value) + hps = append(hps, &commonv1.KeyValuePair{ + Name: hpKey, + Value: ev.Value}) + } + + return hps, nil +} + +func injectArgsAndEnvVars(ctx context.Context, taskCtx pluginsCore.TaskExecutionContext, taskTemplate *flyteIdlCore.TaskTemplate) ([]*commonv1.KeyValuePair, error) { + templateArgs := taskTemplate.GetContainer().GetArgs() + templateArgs, err := template.Render(ctx, templateArgs, template.Parameters{ + TaskExecMetadata: taskCtx.TaskExecutionMetadata(), + Inputs: taskCtx.InputReader(), + OutputPath: taskCtx.OutputWriter(), + Task: taskCtx.TaskReader(), + }) + if err != nil { + return nil, errors.Wrapf(ErrSagemaker, err, "Failed to de-template the hyperparameter values") + } + hyperParameters := makeHyperparametersKeysValuesFromArgs(ctx, templateArgs) + hyperParameters, err = injectTaskTemplateEnvVarToHyperparameters(ctx, taskTemplate, hyperParameters) + if err != nil { + return nil, errors.Wrapf(ErrSagemaker, err, "Failed to inject the task template's container env vars to the hyperparameter list") + } + return hyperParameters, nil +} + +func checkIfRequiredInputLiteralsExist(inputLiterals map[string]*flyteIdlCore.Literal, inputKeys []string) error { + for _, inputKey := range inputKeys { + _, ok := inputLiterals[inputKey] + if !ok { + return errors.Errorf(ErrSagemaker, "Required input not specified: [%v]", inputKey) + } + } + return nil +} + +func getTaskTemplate(ctx context.Context, taskCtx pluginsCore.TaskExecutionContext) (*flyteIdlCore.TaskTemplate, error) { + taskTemplate, err := taskCtx.TaskReader().Read(ctx) + if err != nil { + return nil, errors.Wrapf(ErrSagemaker, err, "unable to fetch task specification") + } else if taskTemplate == nil { + return nil, errors.Errorf(ErrSagemaker, "nil task specification") + } + return taskTemplate, nil +} + +func createTaskInfo(_ context.Context, jobRegion string, jobName string, jobTypeInURL string, sagemakerLinkName string) (*pluginsCore.TaskInfo, error) { + cwLogURL := fmt.Sprintf("https://%s.console.aws.amazon.com/cloudwatch/home?region=%s#logStream:group=/aws/sagemaker/TrainingJobs;prefix=%s;streamFilter=typeLogStreamPrefix", + jobRegion, jobRegion, jobName) + smLogURL := fmt.Sprintf("https://%s.console.aws.amazon.com/sagemaker/home?region=%s#/%s/%s", + jobRegion, jobRegion, jobTypeInURL, jobName) + + taskLogs := []*flyteIdlCore.TaskLog{ + { + Uri: cwLogURL, + Name: CloudWatchLogLinkName, + MessageFormat: flyteIdlCore.TaskLog_JSON, + }, + { + Uri: smLogURL, + Name: sagemakerLinkName, + MessageFormat: flyteIdlCore.TaskLog_UNKNOWN, + }, + } + + customInfoMap := make(map[string]string) + + customInfo, err := utils.MarshalObjToStruct(customInfoMap) + if err != nil { + return nil, errors.Wrapf(pluginErrors.RuntimeFailure, err, "Unable to create a custom info object") + } + + return &pluginsCore.TaskInfo{ + Logs: taskLogs, + CustomInfo: customInfo, + ExternalResources: []*pluginsCore.ExternalResource{ + { + ExternalID: jobName, + }, + }, + }, nil +} diff --git a/flyteplugins/go/tasks/plugins/k8s/sagemaker/utils_test.go b/flyteplugins/go/tasks/plugins/k8s/sagemaker/utils_test.go new file mode 100644 index 0000000000..8c5093ddac --- /dev/null +++ b/flyteplugins/go/tasks/plugins/k8s/sagemaker/utils_test.go @@ -0,0 +1,438 @@ +package sagemaker + +import ( + "context" + "fmt" + "reflect" + "strconv" + "testing" + + commonv1 "github.com/aws/amazon-sagemaker-operator-for-k8s/api/v1/common" + structpb "github.com/golang/protobuf/ptypes/struct" + "github.com/stretchr/testify/assert" + + "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/core" + flyteSagemakerIdl "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + sagemakerSpec "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/plugins/sagemaker" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/pluginmachinery/utils" + "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + sagemakerConfig "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker/config" + stdConfig "github.com/flyteorg/flyte/flytestdlib/config" + "github.com/flyteorg/flyte/flytestdlib/config/viper" +) + +func makeGenericLiteral(st *structpb.Struct) *core.Literal { + return &core.Literal{ + Value: &core.Literal_Scalar{ + Scalar: &core.Scalar{ + Value: &core.Scalar_Generic{ + Generic: st, + }, + }, + }, + } +} + +func generateParameterRangeInputs() map[string]*core.Literal { + hpMap := generateMockTunableHPMap() + res := map[string]*core.Literal{} + for name, paramRange := range hpMap { + st := structpb.Struct{} + err := utils.MarshalStruct(paramRange, &st) + if err != nil { + panic(err) + } + + res[name] = makeGenericLiteral(&st) + } + + return res +} + +func generateMockTunableHPMap() map[string]*sagemakerSpec.ParameterRangeOneOf { + ret := map[string]*sagemakerSpec.ParameterRangeOneOf{ + "hp1": {ParameterRangeType: &sagemakerSpec.ParameterRangeOneOf_IntegerParameterRange{ + IntegerParameterRange: &sagemakerSpec.IntegerParameterRange{ + MaxValue: 10, MinValue: 0, ScalingType: sagemakerSpec.HyperparameterScalingType_AUTO}}}, + "hp2": {ParameterRangeType: &sagemakerSpec.ParameterRangeOneOf_ContinuousParameterRange{ + ContinuousParameterRange: &sagemakerSpec.ContinuousParameterRange{ + MaxValue: 5.0, MinValue: 3.0, ScalingType: sagemakerSpec.HyperparameterScalingType_LINEAR}}}, + "hp3": {ParameterRangeType: &sagemakerSpec.ParameterRangeOneOf_CategoricalParameterRange{ + CategoricalParameterRange: &sagemakerSpec.CategoricalParameterRange{ + Values: []string{"AAA", "BBB", "CCC"}}}}, + } + return ret +} + +func generatePartiallyConflictingStaticHPs() []*commonv1.KeyValuePair { + ret := []*commonv1.KeyValuePair{ + {Name: "hp1", Value: "100"}, + {Name: "hp4", Value: "0.5"}, + {Name: "hp3", Value: "ddd,eee"}, + } + return ret +} + +func generateTotallyConflictingStaticHPs() []*commonv1.KeyValuePair { + ret := []*commonv1.KeyValuePair{ + {Name: "hp1", Value: "100"}, + {Name: "hp2", Value: "0.5"}, + {Name: "hp3", Value: "ddd,eee"}, + } + return ret +} + +func generateNonConflictingStaticHPs() []*commonv1.KeyValuePair { + ret := []*commonv1.KeyValuePair{ + {Name: "hp5", Value: "100"}, + {Name: "hp4", Value: "0.5"}, + {Name: "hp7", Value: "ddd,eee"}, + } + return ret +} + +func generateMockSageMakerConfig() *sagemakerConfig.Config { + return &sagemakerConfig.Config{ + RoleArn: "default", + Region: "us-east-1", + RoleAnnotationKey: "role_annotation_key", + // https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-algo-docker-registry-paths.html + PrebuiltAlgorithms: []sagemakerConfig.PrebuiltAlgorithmConfig{ + { + Name: "xgboost", + RegionalConfig: []sagemakerConfig.RegionalConfig{ + { + Region: "us-east-1", + VersionConfigs: []sagemakerConfig.VersionConfig{ + { + Version: "0.9.1", + Image: "amazonaws.com/xgboost:latest", + }, + }, + }, + }, + }, + }, + } +} + +func Test_deleteConflictingStaticHyperparameters(t *testing.T) { + mockCtx := context.TODO() + type args struct { + ctx context.Context + staticHPs []*commonv1.KeyValuePair + tunableHPMap map[string]*sagemakerSpec.ParameterRangeOneOf + } + tests := []struct { + name string + args args + want []*commonv1.KeyValuePair + }{ + {name: "Partially conflicting hyperparameter list", args: args{ + ctx: mockCtx, + staticHPs: generatePartiallyConflictingStaticHPs(), + tunableHPMap: generateMockTunableHPMap(), + }, want: []*commonv1.KeyValuePair{{Name: "hp4", Value: "0.5"}}}, + {name: "Totally conflicting hyperparameter list", args: args{ + ctx: mockCtx, + staticHPs: generateTotallyConflictingStaticHPs(), + tunableHPMap: generateMockTunableHPMap(), + }, want: []*commonv1.KeyValuePair{}}, + {name: "Non-conflicting hyperparameter list", args: args{ + ctx: mockCtx, + staticHPs: generateNonConflictingStaticHPs(), + tunableHPMap: generateMockTunableHPMap(), + }, want: []*commonv1.KeyValuePair{{Name: "hp5", Value: "100"}, {Name: "hp4", Value: "0.5"}, {Name: "hp7", Value: "ddd,eee"}}}, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + if got := deleteConflictingStaticHyperparameters(tt.args.ctx, tt.args.staticHPs, tt.args.tunableHPMap); !reflect.DeepEqual(got, tt.want) { + t.Errorf("deleteConflictingStaticHyperparameters() = %v, want %v", got, tt.want) + } + }) + } +} + +func Test_buildParameterRanges(t *testing.T) { + type args struct { + inputs map[string]*core.Literal + } + tests := []struct { + name string + args args + want *commonv1.ParameterRanges + }{ + {name: "Building a list of a mixture of all three types of parameter ranges", + args: args{inputs: generateParameterRangeInputs()}, + want: &commonv1.ParameterRanges{ + CategoricalParameterRanges: []commonv1.CategoricalParameterRange{{Name: ToStringPtr("hp3"), Values: []string{"AAA", "BBB", "CCC"}}}, + ContinuousParameterRanges: []commonv1.ContinuousParameterRange{{Name: ToStringPtr("hp2"), MinValue: ToStringPtr("3.0"), MaxValue: ToStringPtr("5.0")}}, + IntegerParameterRanges: []commonv1.IntegerParameterRange{{Name: ToStringPtr("hp1"), MinValue: ToStringPtr("0"), MaxValue: ToStringPtr("10")}}, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got := buildParameterRanges(context.TODO(), tt.args.inputs) + wantCatPr := tt.want.CategoricalParameterRanges[0] + gotCatPr := got.CategoricalParameterRanges[0] + if *wantCatPr.Name != *gotCatPr.Name || !reflect.DeepEqual(wantCatPr.Values, gotCatPr.Values) { + t.Errorf("buildParameterRanges(): CategoricalParameterRange: got [Name: %v, Value: %v], want [Name: %v, Value: %v]", + *gotCatPr.Name, gotCatPr.Values, *wantCatPr.Name, wantCatPr.Values) + } + wantIntPr := tt.want.IntegerParameterRanges[0] + gotIntPr := got.IntegerParameterRanges[0] + if *wantIntPr.Name != *gotIntPr.Name || *wantIntPr.MinValue != *gotIntPr.MinValue || *wantIntPr.MaxValue != *gotIntPr.MaxValue { + t.Errorf("buildParameterRanges(): IntegerParameterRange: got [Name: %v, MinValue: %v, MaxValue: %v], want [Name: %v, MinValue: %v, MaxValue: %v]", + *gotIntPr.Name, *gotIntPr.MinValue, *gotIntPr.MaxValue, *wantIntPr.Name, *wantIntPr.MinValue, *wantIntPr.MaxValue) + } + wantConPr := tt.want.ContinuousParameterRanges[0] + gotConPr := got.ContinuousParameterRanges[0] + wantMin, _ := strconv.ParseFloat(*wantConPr.MinValue, 64) + gotMin, err := strconv.ParseFloat(*gotConPr.MinValue, 64) + if err != nil { + t.Errorf("buildParameterRanges(): ContinuousParameterRange: got invalid min value [%v]", gotMin) + } + wantMax, _ := strconv.ParseFloat(*wantConPr.MaxValue, 64) + gotMax, err := strconv.ParseFloat(*gotConPr.MaxValue, 64) + if err != nil { + t.Errorf("buildParameterRanges(): ContinuousParameterRange: got invalid max value [%v]", gotMax) + } + if *wantConPr.Name != *gotConPr.Name || wantMin != gotMin || wantMax != gotMax { + t.Errorf("buildParameterRanges(): ContinuousParameterRange: got [Name: %v, MinValue: %v, MaxValue: %v], want [Name: %v, MinValue: %v, MaxValue: %v]", + *gotConPr.Name, gotMin, gotMax, *wantConPr.Name, wantMin, wantMax) + } + }) + } +} + +func Test_getLatestTrainingImage(t *testing.T) { + type args struct { + versionConfigs []config.VersionConfig + } + tests := []struct { + name string + args args + want string + wantErr bool + }{ + {name: "minor version", args: args{versionConfigs: []config.VersionConfig{ + {Version: "0.9", Image: "image1"}, {Version: "0.92", Image: "image2"}, {Version: "0.9.2", Image: "image3"}, + }}, want: "image2", wantErr: false}, + {name: "patch version", args: args{versionConfigs: []config.VersionConfig{ + {Version: "0.9", Image: "image1"}, {Version: "0.9.2", Image: "image3"}, + }}, want: "image3", wantErr: false}, + {name: "major version", args: args{versionConfigs: []config.VersionConfig{ + {Version: "1.0.0-3", Image: "image1"}, {Version: "0.9.2", Image: "image3"}, + }}, want: "image1", wantErr: false}, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := getLatestTrainingImage(tt.args.versionConfigs) + if (err != nil) != tt.wantErr { + t.Errorf("getLatestTrainingImage() error = %v, wantErr %v", err, tt.wantErr) + return + } + if got != tt.want { + t.Errorf("getLatestTrainingImage() got = %v, want %v", got, tt.want) + } + }) + } +} + +func Test_getPrebuiltTrainingImage(t *testing.T) { + ctx := context.TODO() + + _ = sagemakerConfig.SetSagemakerConfig(generateMockSageMakerConfig()) + + type args struct { + ctx context.Context + job *sagemakerSpec.TrainingJob + } + tests := []struct { + name string + args args + want string + wantErr bool + }{ + {name: "xgboost version found", args: args{ctx: ctx, job: &sagemakerSpec.TrainingJob{ + AlgorithmSpecification: &sagemakerSpec.AlgorithmSpecification{ + InputMode: 0, + AlgorithmName: sagemakerSpec.AlgorithmName_XGBOOST, + AlgorithmVersion: "0.9.1", + MetricDefinitions: nil, + InputContentType: 0, + }, + TrainingJobResourceConfig: nil, + }}, want: "amazonaws.com/xgboost:latest", wantErr: false}, + {name: "xgboost version not found", args: args{ctx: ctx, job: &sagemakerSpec.TrainingJob{ + AlgorithmSpecification: &sagemakerSpec.AlgorithmSpecification{ + InputMode: 0, + AlgorithmName: sagemakerSpec.AlgorithmName_XGBOOST, + AlgorithmVersion: "0.7", + MetricDefinitions: nil, + InputContentType: 0, + }, + TrainingJobResourceConfig: nil, + }}, want: "", wantErr: true}, + {name: "custom", args: args{ctx: ctx, job: &sagemakerSpec.TrainingJob{ + AlgorithmSpecification: &sagemakerSpec.AlgorithmSpecification{ + InputMode: 0, + AlgorithmName: sagemakerSpec.AlgorithmName_CUSTOM, + AlgorithmVersion: "0.7", + MetricDefinitions: nil, + InputContentType: 0, + }, + TrainingJobResourceConfig: nil, + }}, want: "", wantErr: true}, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := getPrebuiltTrainingImage(tt.args.ctx, tt.args.job) + if (err != nil) != tt.wantErr { + t.Errorf("getPrebuiltTrainingImage() error = %v, wantErr %v", err, tt.wantErr) + return + } + if got != tt.want { + t.Errorf("getPrebuiltTrainingImage() got = %v, want %v", got, tt.want) + } + }) + } +} + +func Test_getPrebuiltTrainingImage_LoadConfig(t *testing.T) { + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + SearchPaths: []string{"testdata/config.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + assert.NotNil(t, config.GetSagemakerConfig()) + + image, err := getPrebuiltTrainingImage(context.TODO(), &sagemakerSpec.TrainingJob{AlgorithmSpecification: &sagemakerSpec.AlgorithmSpecification{ + AlgorithmName: sagemakerSpec.AlgorithmName_XGBOOST, + AlgorithmVersion: "0.90", + }}) + + assert.NoError(t, err) + assert.Equal(t, "XGBOOST_us-west-2_image-0.90", image) + + image, err = getPrebuiltTrainingImage(context.TODO(), &sagemakerSpec.TrainingJob{AlgorithmSpecification: &sagemakerSpec.AlgorithmSpecification{ + AlgorithmName: sagemakerSpec.AlgorithmName_XGBOOST, + AlgorithmVersion: "1.0", + }}) + + assert.NoError(t, err) + assert.Equal(t, "XGBOOST_us-west-2_image-1.0", image) +} + +func Test_getTrainingJobImage(t *testing.T) { + + ctx := context.TODO() + defaultCfg := config.GetSagemakerConfig() + defer func() { + _ = config.SetSagemakerConfig(defaultCfg) + }() + + type Result struct { + name string + want string + wantErr bool + } + + configAccessor := viper.NewAccessor(stdConfig.Options{ + StrictMode: true, + SearchPaths: []string{"testdata/config.yaml"}, + }) + + err := configAccessor.UpdateConfig(context.TODO()) + assert.NoError(t, err) + + expectedResult := Result{ + "Should retrieve image url from config for built-in algorithms", "XGBOOST_us-west-2_image-0.90", false, + } + t.Run(expectedResult.name, func(t *testing.T) { + tjObj := generateMockTrainingJobCustomObj( + flyteSagemakerIdl.InputMode_FILE, + flyteSagemakerIdl.AlgorithmName_XGBOOST, + "0.90", + []*flyteSagemakerIdl.MetricDefinition{}, + flyteSagemakerIdl.InputContentType_TEXT_CSV, + 1, + "ml.m4.xlarge", + 25, + flyteSagemakerIdl.DistributedProtocol_UNSPECIFIED) + taskTemplate := generateMockTrainingJobTaskTemplate("the job", tjObj) + taskCtx := generateMockTrainingJobTaskContext(taskTemplate, false) + sagemakerTrainingJob := flyteSagemakerIdl.TrainingJob{} + err := utils.UnmarshalStruct(taskTemplate.GetCustom(), &sagemakerTrainingJob) + if err != nil { + panic(err) + } + + got, err := getTrainingJobImage(ctx, taskCtx, &sagemakerTrainingJob) + if (err != nil) != expectedResult.wantErr { + t.Errorf("getTrainingJobImage() error = %v, wantErr %v", err, expectedResult.wantErr) + return + } + if got != expectedResult.want { + t.Errorf("getTrainingJobImage() got = %v, want %v", got, expectedResult.want) + } + }) + +} + +func Test_makeHyperparametersKeysValuesFromArgs(t *testing.T) { + outputPrefix := "s3://abcdefghijklmnopqrtsuvwxyz/abcdefghijklmnopqrtsuvwxyz/abcdefghijklmnopqrtsuvwxyz" + inputs := "s3://abcdefghijklmnopqrtsuvwxyz/abcdefghijklmnopqrtsuvwxyz/abcdefghijklmnopqrtsuvwxyz/inputs.pb" + type args struct { + in0 context.Context + args []string + } + tests := []struct { + name string + args args + want []*commonv1.KeyValuePair + }{ + {name: "service pyflyte-execute", + args: args{ + in0: context.TODO(), + args: []string{ + "service_venv", + "pyflyte-execute", + "--task-module", + "abc", + "--task-name", + "abc", + "--output-prefix", + outputPrefix, + "--inputs", + inputs, + "--test", + }, + }, + want: []*commonv1.KeyValuePair{ + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 0, "service_venv", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 1, "pyflyte-execute", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 2, "--task-module", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 3, "abc", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 4, "--task-name", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 5, "abc", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 6, "--output-prefix", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 7, outputPrefix, FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 8, "--inputs", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 9, inputs, FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + {Name: fmt.Sprintf("%s%d_%s%s", FlyteSageMakerCmdKeyPrefix, 10, "--test", FlyteSageMakerKeySuffix), Value: FlyteSageMakerCmdDummyValue}, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + if got := makeHyperparametersKeysValuesFromArgs(tt.args.in0, tt.args.args); !reflect.DeepEqual(got, tt.want) { + t.Errorf("makeHyperparametersKeysValuesFromArgs() = %v, want %v", got, tt.want) + } + }) + } +} diff --git a/flyteplugins/go/tasks/testdata/config.yaml b/flyteplugins/go/tasks/testdata/config.yaml index 4747b6811a..e30536261c 100755 --- a/flyteplugins/go/tasks/testdata/config.yaml +++ b/flyteplugins/go/tasks/testdata/config.yaml @@ -1,6 +1,20 @@ # Sample plugins config plugins: # All k8s plugins default configuration + sagemaker: + roleArn: test-role + region: us-east-1 + roleAnnotationKey: "iam.amazonaws.com/role" + prebuiltAlgorithms: + - name: xgboost + regionalConfigs: + - region: "us-east-1" + versionConfigs: + - version: 0.72 + image: "811284229777.dkr.ecr.us-east-1.amazonaws.com/xgboost:latest" + - version: 0.90 + image: "683313688378.dkr.ecr.us-east-1.amazonaws.com/xgboost:latest" + k8s: inject-finalizer: true default-annotations: diff --git a/flytepropeller/cmd/controller/cmd/root.go b/flytepropeller/cmd/controller/cmd/root.go index 6be97b0c9b..1381b8180e 100644 --- a/flytepropeller/cmd/controller/cmd/root.go +++ b/flytepropeller/cmd/controller/cmd/root.go @@ -18,7 +18,6 @@ import ( "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/manager" "sigs.k8s.io/controller-runtime/pkg/metrics" - metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server" "github.com/flyteorg/flyte/flytepropeller/pkg/controller" config2 "github.com/flyteorg/flyte/flytepropeller/pkg/controller/config" @@ -122,26 +121,16 @@ func executeRootCmd(baseCtx context.Context, cfg *config2.Config) error { // Add the propeller subscope because the MetricsPrefix only has "flyte:" to get uniform collection of metrics. propellerScope := promutils.NewScope(cfg.MetricsPrefix).NewSubScope("propeller").NewSubScope(cfg.LimitNamespace) limitNamespace := "" - var namespaceConfigs map[string]cache.Config if cfg.LimitNamespace != defaultNamespace { limitNamespace = cfg.LimitNamespace - namespaceConfigs = map[string]cache.Config{ - limitNamespace: {}, - } } - options := manager.Options{ - Cache: cache.Options{ - SyncPeriod: &cfg.DownstreamEval.Duration, - DefaultNamespaces: namespaceConfigs, - }, - NewClient: func(config *rest.Config, options client.Options) (client.Client, error) { - return executors.NewFallbackClientBuilder(propellerScope.NewSubScope("kube")).Build(nil, config, options) - }, - Metrics: metricsserver.Options{ - // Disable metrics serving - BindAddress: "0", + Namespace: limitNamespace, + SyncPeriod: &cfg.DownstreamEval.Duration, + NewClient: func(cache cache.Cache, config *rest.Config, options client.Options, uncachedObjects ...client.Object) (client.Client, error) { + return executors.NewFallbackClientBuilder(propellerScope.NewSubScope("kube")).Build(cache, config, options) }, + MetricsBindAddress: "0", } mgr, err := controller.CreateControllerManager(ctx, cfg, options) diff --git a/flytepropeller/cmd/controller/cmd/webhook.go b/flytepropeller/cmd/controller/cmd/webhook.go index eab3851b60..dd0528e806 100644 --- a/flytepropeller/cmd/controller/cmd/webhook.go +++ b/flytepropeller/cmd/controller/cmd/webhook.go @@ -9,8 +9,6 @@ import ( "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/manager" - metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server" - ctrlWebhook "sigs.k8s.io/controller-runtime/pkg/webhook" "github.com/flyteorg/flyte/flytepropeller/pkg/controller" "github.com/flyteorg/flyte/flytepropeller/pkg/controller/config" @@ -98,29 +96,19 @@ func runWebhook(origContext context.Context, propellerCfg *config.Config, cfg *w } webhookScope := promutils.NewScope(cfg.MetricsPrefix).NewSubScope("webhook") - var namespaceConfigs map[string]cache.Config + limitNamespace := "" if propellerCfg.LimitNamespace != defaultNamespace { - namespaceConfigs = map[string]cache.Config{ - propellerCfg.LimitNamespace: {}, - } + limitNamespace = propellerCfg.LimitNamespace } - options := manager.Options{ - Cache: cache.Options{ - SyncPeriod: &propellerCfg.DownstreamEval.Duration, - DefaultNamespaces: namespaceConfigs, - }, - NewClient: func(config *rest.Config, options client.Options) (client.Client, error) { - return executors.NewFallbackClientBuilder(webhookScope).Build(nil, config, options) - }, - Metrics: metricsserver.Options{ - // Disable metrics serving - BindAddress: "0", + Namespace: limitNamespace, + SyncPeriod: &propellerCfg.DownstreamEval.Duration, + NewClient: func(cache cache.Cache, config *rest.Config, options client.Options, uncachedObjects ...client.Object) (client.Client, error) { + return executors.NewFallbackClientBuilder(webhookScope).Build(cache, config, options) }, - WebhookServer: ctrlWebhook.NewServer(ctrlWebhook.Options{ - CertDir: cfg.CertDir, - Port: cfg.ListenPort, - }), + CertDir: cfg.CertDir, + Port: cfg.ListenPort, + MetricsBindAddress: "0", } mgr, err := controller.CreateControllerManager(ctx, propellerCfg, options) diff --git a/flytepropeller/go.mod b/flytepropeller/go.mod index 673dd9aa7c..249353d809 100644 --- a/flytepropeller/go.mod +++ b/flytepropeller/go.mod @@ -20,22 +20,21 @@ require ( github.com/magiconair/properties v1.8.6 github.com/mitchellh/mapstructure v1.5.0 github.com/pkg/errors v0.9.1 - github.com/prometheus/client_golang v1.16.0 - github.com/sirupsen/logrus v1.9.0 - github.com/spf13/cobra v1.7.0 + github.com/prometheus/client_golang v1.12.1 + github.com/sirupsen/logrus v1.8.1 + github.com/spf13/cobra v1.4.0 github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.8.4 golang.org/x/exp v0.0.0-20231005195138-3e424a577f31 - golang.org/x/sync v0.2.0 - golang.org/x/time v0.3.0 + golang.org/x/sync v0.1.0 + golang.org/x/time v0.1.0 google.golang.org/grpc v1.56.1 google.golang.org/protobuf v1.30.0 - k8s.io/api v0.28.2 - k8s.io/apiextensions-apiserver v0.28.0 - k8s.io/apimachinery v0.28.2 - k8s.io/client-go v0.28.1 + k8s.io/api v0.24.1 + k8s.io/apiextensions-apiserver v0.24.1 + k8s.io/apimachinery v0.24.1 + k8s.io/client-go v0.24.1 k8s.io/klog v1.0.0 - k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 sigs.k8s.io/controller-runtime v0.12.1 ) @@ -44,7 +43,7 @@ require ( cloud.google.com/go/compute v1.19.1 // indirect cloud.google.com/go/compute/metadata v0.2.3 // indirect cloud.google.com/go/iam v0.13.0 // indirect - cloud.google.com/go/storage v1.29.0 // indirect + cloud.google.com/go/storage v1.28.1 // indirect github.com/Azure/azure-sdk-for-go v63.4.0+incompatible // indirect github.com/Azure/azure-sdk-for-go/sdk/azcore v0.23.1 // indirect github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.2 // indirect @@ -56,6 +55,8 @@ require ( github.com/Azure/go-autorest/logger v0.2.1 // indirect github.com/Azure/go-autorest/tracing v0.6.0 // indirect github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625 // indirect + github.com/Masterminds/semver v1.5.0 // indirect + github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d // indirect github.com/aws/aws-sdk-go v1.44.2 // indirect github.com/aws/aws-sdk-go-v2 v1.2.0 // indirect github.com/aws/aws-sdk-go-v2/config v1.0.0 // indirect @@ -72,19 +73,18 @@ require ( github.com/dask/dask-kubernetes/v2023 v2023.0.0-20230626103304-abd02cd17b26 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/emicklei/go-restful/v3 v3.9.0 // indirect - github.com/evanphx/json-patch v5.6.0+incompatible // indirect - github.com/evanphx/json-patch/v5 v5.6.0 // indirect + github.com/evanphx/json-patch v4.12.0+incompatible // indirect github.com/flyteorg/stow v0.3.7 // indirect - github.com/fsnotify/fsnotify v1.6.0 // indirect - github.com/go-logr/logr v1.2.4 // indirect + github.com/fsnotify/fsnotify v1.5.1 // indirect + github.com/go-logr/logr v1.2.3 // indirect github.com/go-openapi/jsonpointer v0.19.6 // indirect - github.com/go-openapi/jsonreference v0.20.2 // indirect + github.com/go-openapi/jsonreference v0.20.1 // indirect github.com/go-openapi/swag v0.22.3 // indirect github.com/gofrs/uuid v4.2.0+incompatible // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang-jwt/jwt/v4 v4.5.0 // indirect + github.com/golang-jwt/jwt/v4 v4.4.1 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/google/gnostic-models v0.6.8 // indirect + github.com/google/gnostic v0.5.7-v3refs // indirect github.com/google/go-cmp v0.5.9 // indirect github.com/google/gofuzz v1.2.0 // indirect github.com/googleapis/enterprise-certificate-proxy v0.2.3 // indirect @@ -92,7 +92,7 @@ require ( github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect github.com/hashicorp/golang-lru v0.5.4 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect @@ -100,8 +100,8 @@ require ( github.com/kubeflow/training-operator v1.5.0-rc.0 // indirect github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.12 // indirect - github.com/mattn/go-isatty v0.0.16 // indirect - github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect + github.com/mattn/go-isatty v0.0.14 // indirect + github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect @@ -110,9 +110,9 @@ require ( github.com/pelletier/go-toml/v2 v2.0.0-beta.8 // indirect github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/prometheus/client_model v0.4.0 // indirect - github.com/prometheus/common v0.44.0 // indirect - github.com/prometheus/procfs v0.10.1 // indirect + github.com/prometheus/client_model v0.2.0 // indirect + github.com/prometheus/common v0.32.1 // indirect + github.com/prometheus/procfs v0.7.3 // indirect github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c // indirect github.com/spf13/afero v1.9.2 // indirect github.com/spf13/cast v1.4.1 // indirect @@ -121,26 +121,25 @@ require ( github.com/stretchr/objx v0.5.0 // indirect github.com/subosito/gotenv v1.2.0 // indirect go.opencensus.io v0.24.0 // indirect - golang.org/x/crypto v0.11.0 // indirect - golang.org/x/net v0.13.0 // indirect - golang.org/x/oauth2 v0.8.0 // indirect + golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e // indirect + golang.org/x/net v0.9.0 // indirect + golang.org/x/oauth2 v0.7.0 // indirect golang.org/x/sys v0.12.0 // indirect - golang.org/x/term v0.10.0 // indirect - golang.org/x/text v0.11.0 // indirect + golang.org/x/term v0.7.0 // indirect + golang.org/x/text v0.9.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect - gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect + gomodules.xyz/jsonpatch/v2 v2.2.0 // indirect google.golang.org/api v0.114.0 // indirect google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 // indirect + google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.66.4 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/component-base v0.28.1 // indirect - k8s.io/klog/v2 v2.100.1 // indirect - k8s.io/kube-openapi v0.0.0-20230717233707-2695361300d9 // indirect + k8s.io/component-base v0.24.1 // indirect + k8s.io/klog/v2 v2.90.1 // indirect + k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f // indirect + k8s.io/utils v0.0.0-20230209194617-a36077c30491 // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect sigs.k8s.io/yaml v1.3.0 // indirect @@ -148,12 +147,10 @@ require ( replace ( github.com/aws/amazon-sagemaker-operator-for-k8s => github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d + github.com/flyteorg/flyte/datacatalog => ../datacatalog + github.com/flyteorg/flyte/flyteadmin => ../flyteadmin github.com/flyteorg/flyte/flyteidl => ../flyteidl github.com/flyteorg/flyte/flyteplugins => ../flyteplugins + github.com/flyteorg/flyte/flytepropeller => ../flytepropeller github.com/flyteorg/flyte/flytestdlib => ../flytestdlib - k8s.io/api => k8s.io/api v0.28.2 - k8s.io/apimachinery => k8s.io/apimachinery v0.28.2 - k8s.io/client-go => k8s.io/client-go v0.28.2 - k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f - sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.16.2 ) diff --git a/flytepropeller/go.sum b/flytepropeller/go.sum index 6949600a0a..5430099db3 100644 --- a/flytepropeller/go.sum +++ b/flytepropeller/go.sum @@ -17,6 +17,9 @@ cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHOb cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= cloud.google.com/go v0.75.0/go.mod h1:VGuuCn7PG0dwsd5XPVm2Mm3wlh3EL55/79EKB6hlPTY= +cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= +cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= +cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= cloud.google.com/go v0.110.0 h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys= cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= @@ -31,6 +34,7 @@ cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGB cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= +cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk= cloud.google.com/go/iam v0.13.0 h1:+CmB+K0J/33d0zSQ9SlFWUeCCEn5XJA0ZMZ3pHE9u8k= cloud.google.com/go/iam v0.13.0/go.mod h1:ljOg+rcNfzZ5d6f1nAUJ8ZIxOaZUVoS14bKCtaLZ/D0= cloud.google.com/go/longrunning v0.4.1 h1:v+yFJOfKC3yZdY6ZUI933pIYdhyhV8S3NpWrXWmg7jM= @@ -44,8 +48,8 @@ cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohl cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= -cloud.google.com/go/storage v1.29.0 h1:6weCgzRvMg7lzuUurI4697AqIRPU1SvzHhynwpW31jI= -cloud.google.com/go/storage v1.29.0/go.mod h1:4puEjyTKnku6gfKoTfNOU/W+a9JyuVNxjpS5GBrB8h4= +cloud.google.com/go/storage v1.28.1 h1:F5QDG5ChchaAVQhINh24U99OWHURqrW8OmQcGKXcbgI= +cloud.google.com/go/storage v1.28.1/go.mod h1:Qnisd4CqDdo6BGs2AD5LLnEsmSQ80wQ5ogcBBKhU86Y= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= github.com/Azure/azure-sdk-for-go v63.4.0+incompatible h1:fle3M5Q7vr8auaiPffKyUQmLbvYeqpw30bKU6PrWJFo= github.com/Azure/azure-sdk-for-go v63.4.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= @@ -56,20 +60,31 @@ github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.2 h1:Px2KVERcYEg2Lv25AqC2hVr github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.2/go.mod h1:CdSJQNNzZhCkwDaV27XV1w48ZBPtxe7mlrZAsPNxD5g= github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0 h1:0nJeKDmB7a1a8RDMjTltahlPsaNlWjq/LpkZleSwINk= github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0/go.mod h1:mbwxKc/fW+IkF0GG591MuXw0KuEQBDkeRoZ9vmVJPxg= +github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.9.0/go.mod h1:xyHB1BMZT0cuDHU7I0+g046+BFDTQ8rEZB0s4Yfa6bI= +github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= github.com/Azure/go-autorest/autorest v0.11.27 h1:F3R3q42aWytozkV8ihzcgMO4OA4cuqr3bNlsEuF6//A= github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U= +github.com/Azure/go-autorest/autorest/adal v0.5.0/go.mod h1:8Z9fGy2MpX0PvDjB1pEgQTmVqjGhiHBW7RJJEciWzS0= +github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= github.com/Azure/go-autorest/autorest/adal v0.9.18 h1:kLnPsRjzZZUF3K5REu/Kc+qMQrvuza2bwSnNdhmzLfQ= github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= +github.com/Azure/go-autorest/autorest/date v0.1.0/go.mod h1:plvfp3oPSKwf2DNjlBjWF/7vwR+cUD/ELuzDCXwHUVA= github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= +github.com/Azure/go-autorest/autorest/mocks v0.1.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0= +github.com/Azure/go-autorest/autorest/mocks v0.2.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0= github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= github.com/Azure/go-autorest/autorest/mocks v0.4.2 h1:PGN4EDXnuQbojHbU0UWoNvmu9AGVwYHG9/fkDYhtAfw= github.com/Azure/go-autorest/autorest/mocks v0.4.2/go.mod h1:Vy7OitM9Kei0i1Oj+LvyAWMXJHeKH1MVlzFugfVrmyU= github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= +github.com/Azure/go-autorest/logger v0.1.0/go.mod h1:oExouG+K6PryycPJfVSxi/koC6LSNgds39diKLz7Vrc= github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg= github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/tracing v0.5.0/go.mod h1:r/s2XiOKccPW3HrqB+W0TQzfbtp2fGCgRFtBroKn4Dk= github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo= github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0 h1:WVsrXCnHlDDX8ls+tootqRE87/hL9S/g4ewig9RsD/c= @@ -79,9 +94,39 @@ github.com/DiSiqueira/GoTree v1.0.1-0.20180907134536-53a8e837f295 h1:xJ0dAkuxJXf github.com/DiSiqueira/GoTree v1.0.1-0.20180907134536-53a8e837f295/go.mod h1:e0aH495YLkrsIe9fhedd6aSR6fgU/qhKvtroi6y7G/M= github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625 h1:cQyO5JQ2iuHnEcF3v24kdDMsgh04RjyFPDtuvD6PCE0= github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625/go.mod h1:6PnrZv6zUDkrNMw0mIoGRmGBR7i9LulhKPmxFq4rUiM= +github.com/Jeffail/gabs/v2 v2.5.1/go.mod h1:xCn81vdHKxFUuWWAaD5jCTQDNPBMh5pPs9IJ+NcziBI= +github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww= +github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= +github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/purell v1.1.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/adammck/venv v0.0.0-20160819025605-8a9c907a37d3/go.mod h1:3zXR2a/VSQndtpShh783rUTaEA2mpqN2VqZclBARBc0= +github.com/adammck/venv v0.0.0-20200610172036-e77789703e7c h1:RoL0r3mR3JSkLur8q8AD59cByJ+kRwJHODNimZBd7GI= +github.com/agnivade/levenshtein v1.0.1/go.mod h1:CURSv5d9Uaml+FovSIICkLbAUZ9S4RqaHDIsdSBg7lM= +github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/antlr/antlr4/runtime/Go/antlr v0.0.0-20210826220005-b48c857c3a0e/go.mod h1:F7bn7fEU90QkQ3tnmaTx3LTKLEDqnwWODIYppRQ5hnY= +github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= +github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= +github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= +github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= +github.com/asaskevich/govalidator v0.0.0-20180720115003-f9ffefc3facf/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= +github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= +github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d h1:O+ayl/Vp3bDEXReXItmYHzCnsz/LKusXdRNiJKVxjPs= +github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d/go.mod h1:mZUP7GJmjiWtf8v3FD1X/QdK08BqyeH/1Ejt0qhNzCs= +github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-sdk-go v1.44.2 h1:5VBk5r06bgxgRKVaUtm1/4NT/rtrnH2E4cnAYv5zgQc= github.com/aws/aws-sdk-go v1.44.2/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go-v2 v1.0.0/go.mod h1:smfAbmpW+tcRVuNUjo3MOArSZmW72t62rkCzc2i0TWM= @@ -102,13 +147,25 @@ github.com/aws/aws-sdk-go-v2/service/sts v1.0.0/go.mod h1:5f+cELGATgill5Pu3/vK3E github.com/aws/smithy-go v1.0.0/go.mod h1:EzMw8dbp/YJL4A5/sbhGddag+NPT7q084agLbB9LgIw= github.com/aws/smithy-go v1.1.0 h1:D6CSsM3gdxaGaqXnPgOBCeL6Mophqzu7KJOu7zW78sU= github.com/aws/smithy-go v1.1.0/go.mod h1:EzMw8dbp/YJL4A5/sbhGddag+NPT7q084agLbB9LgIw= +github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= +github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1 h1:VRtJdDi2lqc3MFwmouppm2jlm6icF+7H3WYKpLENMTo= github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1/go.mod h1:jvdWlw8vowVGnZqSDC7yhPd7AifQeQbRDkZcQXV2nRg= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bketelsen/crypt v0.0.3-0.20200106085610-5cbc8cc4026c/go.mod h1:MKsuJmJgSg28kpZDP6UIiPt0e0Oz0kqKNGyRaWEPv84= +github.com/blang/semver v3.5.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= +github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927 h1:SKI1/fuSdodxmNNyVBR8d7X/HuLnRpvvFO0AgyQk764= @@ -119,17 +176,51 @@ github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDk github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= +github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo= +github.com/cockroachdb/errors v1.2.4/go.mod h1:rQD95gz6FARkaKkQXUksEje/d9a6wBJoCr5oaCLELYA= +github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u985jwjWRlyHXQbwatDASoW0RMlZ/3i9yJHE2xLkI= github.com/coocood/freecache v1.1.1 h1:uukNF7QKCZEdZ9gAV7WQzvh0SbjwdMF6m3x3rxEkaPc= github.com/coocood/freecache v1.1.1/go.mod h1:OKrEjkGVoxZhyWAJoeFi5BMLUJm2Tit0kpGkIr7NGYY= -github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= +github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk= +github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/coreos/pkg v0.0.0-20180108230652-97fdf19511ea/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE= +github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/dask/dask-kubernetes/v2023 v2023.0.0-20230626103304-abd02cd17b26 h1:6RByIva89lKEvwIzNQSUNcu8NG1p1wwwC4mJfVk/kqw= github.com/dask/dask-kubernetes/v2023 v2023.0.0-20230626103304-abd02cd17b26/go.mod h1:OqIYr2QnxR3sQK2XahJIyWVcjz38LQ4GNcUzqezFpRg= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= +github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= github.com/dnaeon/go-vcr v1.1.0 h1:ReYa/UBrRyQdant9B4fNHGoCNKw6qh6P0fsdGmZpR7c= github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko= +github.com/docker/docker v0.7.3-0.20190327010347-be7ac8be2ae0/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= +github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= github.com/emicklei/go-restful/v3 v3.9.0 h1:XwGDlfxEnQZzuopoqxwSEllNcCOM9DhhFyhFIIGKwxE= github.com/emicklei/go-restful/v3 v3.9.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= @@ -137,51 +228,129 @@ github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.m github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U= -github.com/evanphx/json-patch v5.6.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch/v5 v5.6.0 h1:b91NhWfaz02IuVxO9faSllyAtNXHMPkC5J8sJCLunww= -github.com/evanphx/json-patch/v5 v5.6.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= +github.com/evanphx/json-patch v0.0.0-20200808040245-162e5629780b/go.mod h1:NAJj0yf/KaRKURN6nyi7A9IZydMivZEm9oQLWNjfKDc= +github.com/evanphx/json-patch v0.5.2/go.mod h1:ZWS5hhDbVDyob71nXKNL0+PWn6ToqBHMikGIFbs31qQ= +github.com/evanphx/json-patch v4.2.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.5.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84= +github.com/evanphx/json-patch v4.12.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= +github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/flyteorg/stow v0.3.7 h1:Cx7j8/Ux6+toD5hp5fy++927V+yAcAttDeQAlUD/864= github.com/flyteorg/stow v0.3.7/go.mod h1:5dfBitPM004dwaZdoVylVjxFT4GWAgI0ghAndhNUzCo= -github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= -github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/fsnotify/fsnotify v1.5.1 h1:mZcQUHVQUQWoPXXtuf9yuEXKudkV2sx1E06UadKWpgI= +github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU= +github.com/getkin/kin-openapi v0.76.0/go.mod h1:660oXbgy5JFMKreazJaQTw7o+X00qeSyhcnluiMv+Xg= +github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ= +github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/globalsign/mgo v0.0.0-20180905125535-1ca0a4f7cbcb/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= +github.com/globalsign/mgo v0.0.0-20181015135952-eeefdecb41b8/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= +github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= +github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v0.2.1/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= -github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/zapr v1.2.4 h1:QHVo+6stLbfJmYGkQ7uGHUCu5hnAFAj6mDe6Ea0SeOo= +github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0= +github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/zapr v0.1.0/go.mod h1:tabnROwaDl0UNxkVeFRbY8bwB37GwRv0P8lg6aAiEnk= +github.com/go-logr/zapr v0.2.0/go.mod h1:qhKdvif7YF5GI9NWEpyxTSSBdGmzkNguibrdCNVPunU= +github.com/go-logr/zapr v1.2.0 h1:n4JnPI1T3Qq1SFEi/F8rwLrZERp2bso19PJZDB9dayk= +github.com/go-logr/zapr v1.2.0/go.mod h1:Qa4Bsj2Vb+FAVeAKsLD8RLQ+YRJB8YDmOAKxaBQf7Ro= +github.com/go-openapi/analysis v0.0.0-20180825180245-b006789cd277/go.mod h1:k70tL6pCuVxPJOHXQ+wIac1FUrvNkHolPie/cLEU6hI= +github.com/go-openapi/analysis v0.17.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= +github.com/go-openapi/analysis v0.18.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= +github.com/go-openapi/analysis v0.19.2/go.mod h1:3P1osvZa9jKjb8ed2TPng3f0i/UY9snX6gxi44djMjk= +github.com/go-openapi/analysis v0.19.5/go.mod h1:hkEAkxagaIvIP7VTn8ygJNkd4kAYON2rCu0v0ObL0AU= +github.com/go-openapi/errors v0.17.0/go.mod h1:LcZQpmvG4wyF5j4IhA73wkLFQg+QJXOQHVjmcZxhka0= +github.com/go-openapi/errors v0.18.0/go.mod h1:LcZQpmvG4wyF5j4IhA73wkLFQg+QJXOQHVjmcZxhka0= +github.com/go-openapi/errors v0.19.2/go.mod h1:qX0BLWsyaKfvhluLejVpVNwNRdXZhEbTA4kxxpKBC94= +github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= +github.com/go-openapi/jsonpointer v0.17.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= +github.com/go-openapi/jsonpointer v0.18.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= +github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= -github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= -github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg= +github.com/go-openapi/jsonreference v0.17.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= +github.com/go-openapi/jsonreference v0.18.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= +github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= +github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= +github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= +github.com/go-openapi/jsonreference v0.20.1 h1:FBLnyygC4/IZZr893oiomc9XaghoveYTrLC1F86HID8= +github.com/go-openapi/jsonreference v0.20.1/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/loads v0.17.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= +github.com/go-openapi/loads v0.18.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= +github.com/go-openapi/loads v0.19.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= +github.com/go-openapi/loads v0.19.2/go.mod h1:QAskZPMX5V0C2gvfkGZzJlINuP7Hx/4+ix5jWFxsNPs= +github.com/go-openapi/loads v0.19.4/go.mod h1:zZVHonKd8DXyxyw4yfnVjPzBjIQcLt0CCsn0N0ZrQsk= +github.com/go-openapi/runtime v0.0.0-20180920151709-4f900dc2ade9/go.mod h1:6v9a6LTXWQCdL8k1AO3cvqx5OtZY/Y9wKTgaoP6YRfA= +github.com/go-openapi/runtime v0.19.0/go.mod h1:OwNfisksmmaZse4+gpV3Ne9AyMOlP1lt4sK4FXt0O64= +github.com/go-openapi/runtime v0.19.4/go.mod h1:X277bwSUBxVlCYR3r7xgZZGKVvBd/29gLDlFGtJ8NL4= +github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc= +github.com/go-openapi/spec v0.17.0/go.mod h1:XkF/MOi14NmjsfZ8VtAKf8pIlbZzyoTvZsdfssdxcBI= +github.com/go-openapi/spec v0.18.0/go.mod h1:XkF/MOi14NmjsfZ8VtAKf8pIlbZzyoTvZsdfssdxcBI= +github.com/go-openapi/spec v0.19.2/go.mod h1:sCxk3jxKgioEJikev4fgkNmwS+3kuYdJtcsZsD5zxMY= +github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= +github.com/go-openapi/strfmt v0.17.0/go.mod h1:P82hnJI0CXkErkXi8IKjPbNBM6lV6+5pLP5l494TcyU= +github.com/go-openapi/strfmt v0.18.0/go.mod h1:P82hnJI0CXkErkXi8IKjPbNBM6lV6+5pLP5l494TcyU= +github.com/go-openapi/strfmt v0.19.0/go.mod h1:+uW+93UVvGGq2qGaZxdDeJqSAqBqBdl+ZPMF/cC8nDY= +github.com/go-openapi/strfmt v0.19.3/go.mod h1:0yX7dbo8mKIvc3XSKp7MNfxw4JytCfCD6+bY1AVL9LU= +github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I= +github.com/go-openapi/swag v0.17.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg= +github.com/go-openapi/swag v0.18.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg= +github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= +github.com/go-openapi/validate v0.18.0/go.mod h1:Uh4HdOzKt19xGIGm1qHf/ofbX1YQ4Y+MYsct2VUrAJ4= +github.com/go-openapi/validate v0.19.2/go.mod h1:1tRCw7m3jtI8eNWEEliiAqUIcBztB2KDnRCRMUi7GTA= +github.com/go-openapi/validate v0.19.5/go.mod h1:8DJv2CVJQ6kGNpFW6eV9N3JviE1C85nY1c2z52x1Gk4= github.com/go-redis/redis v6.15.7+incompatible h1:3skhDh95XQMpnqeqNftPkQD9jL9e5e36z/1SUm6dy1U= github.com/go-redis/redis v6.15.7+incompatible/go.mod h1:NAIEuMOZ/fxfXJIrKDQDz8wamY7mA7PouImQ2Jvg6kA= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-test/deep v1.0.7 h1:/VSMRlnY/JSyqxQUzQLKVMAskpY/NZKFA5j2P+0pP2M= github.com/go-test/deep v1.0.7/go.mod h1:QV8Hv/iy04NyLBxAdO9njL0iVPN1S4d/A3NVv1V36o8= +github.com/gobuffalo/flect v0.2.0/go.mod h1:W3K3X9ksuZfir8f/LrfVtWmCDQFfayuylOJ7sz/Fj80= +github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofrs/uuid v4.2.0+incompatible h1:yyYWMnhkhrKwwr8gAOcOCYxOOscHgDS9yZgBrnJfGa0= github.com/gofrs/uuid v4.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt v3.2.1+incompatible h1:73Z+4BJcrTC+KczS6WvTPvRGOp1WmfEP4Q1lOd9Z/+c= github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= github.com/golang-jwt/jwt/v4 v4.2.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= -github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= -github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-jwt/jwt/v4 v4.4.1 h1:pC5DB52sCeK48Wlb9oPcdhnjkz1TKt1D/P7WKJ0kUcQ= +github.com/golang-jwt/jwt/v4 v4.4.1/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4= +github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -194,6 +363,8 @@ github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= +github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= +github.com/golang/protobuf v0.0.0-20161109072736-4bd1920723d7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= @@ -209,12 +380,17 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= -github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= -github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= +github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA= +github.com/google/cel-go v0.10.1/go.mod h1:U7ayypeSkw23szu4GaQTPJGx66c20mx8JklMSxrmI1w= +github.com/google/cel-spec v0.6.0/go.mod h1:Nwjgxy5CbjlPrtCWjeDjUyKMl8w41YBYGjsyDdqk0xA= +github.com/google/gnostic v0.5.7-v3refs h1:FhTMOKj2VhjpouxvWJAV1TL304uMlb9zcDqkl6cEI54= +github.com/google/gnostic v0.5.7-v3refs/go.mod h1:73MKFl6jIHelAJNaBGFzt3SPtZULs9dYrGFt8OiIsHQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= @@ -229,6 +405,7 @@ github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= @@ -246,8 +423,11 @@ github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 h1:K6RDEckDVWvDI9JAJYCmNdQXq6neHJOYx3V6jnqNEec= +github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -257,46 +437,96 @@ github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+ github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.7.1 h1:gF4c0zjUP2H/s/hEGyLA3I0fA2ZWjzYiONAD6cvPr8A= github.com/googleapis/gax-go/v2 v2.7.1/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI= +github.com/googleapis/gnostic v0.0.0-20170729233727-0c5108395e2d/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= +github.com/googleapis/gnostic v0.1.0/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= +github.com/googleapis/gnostic v0.3.1/go.mod h1:on+2t9HRStVgn95RSsFWFz+6Q0Snyqv1awfrALZdbtU= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= +github.com/gophercloud/gophercloud v0.1.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8= +github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= +github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 h1:+9834+KizmvFV7pXQGSXQTsaWhq2GjuNUt0aUU0YBYw= github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= +github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo= github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= +github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q= +github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= +github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= +github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= +github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU= +github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU= +github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4= +github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= +github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= +github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= +github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.9/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= -github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= -github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jinzhu/copier v0.3.5 h1:GlvfUwHk62RokgqVNvYsku0TATCF7bAHVwEXoBh3iJg= github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= +github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/jonboulle/clockwork v0.2.2/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= +github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= +github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= +github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= +github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= @@ -305,82 +535,184 @@ github.com/kubeflow/common v0.4.3/go.mod h1:Qb/5aON7/OWVkN8OnjRqqT0i8X/XzMekRIZ8 github.com/kubeflow/training-operator v1.5.0-rc.0 h1:MaxbG80SYpIbDG63tSiwav4OXczrSFA5AFnaQavzgbw= github.com/kubeflow/training-operator v1.5.0-rc.0/go.mod h1:xgcu/ZI/RwKbTvYgzU7ZWFpxbsefSey5We3KmKroALY= github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= +github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= +github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= +github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20180823135443-60711f1a8329/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= +github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= +github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= -github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ= -github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= -github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= -github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 h1:I0XW9+e1XWDxdcEniV4rQAIOPUGDq67JSCiRCgGCZLI= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= +github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= +github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS42BGNg= +github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= +github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= +github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6/go.mod h1:E2VnQOmVuvZB6UYnnDB0qG5Nq/1tD9acaOpo6xmt0Kw= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/modocache/gover v0.0.0-20171022184752-b58185e213c5/go.mod h1:caMODM3PzxT8aQXRPkAt8xlV/e7d7w8GM5g0fa5F0D8= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/ncw/swift v1.0.53 h1:luHjjTNtekIEvHg5KdAFIBaH7bWfNkefwFnpDffSIks= github.com/ncw/swift v1.0.53/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= +github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= +github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= -github.com/onsi/ginkgo/v2 v2.11.0 h1:WgqUCUt/lT6yXoQ8Wef0fsNn5cAuMK7+KT9UFRz2tcU= -github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= +github.com/onsi/ginkgo/v2 v2.1.4 h1:GNapqRSid3zijZ9H77KrgVG4/8KqiyRsxcSxe+7ApXY= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= +github.com/onsi/gomega v1.8.1/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.19.0 h1:4ieX6qQjPP/BfC3mpsAtIGGlxTWPeA3Inl/7DtXw1tw= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= +github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= +github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= +github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= github.com/pelletier/go-toml v1.9.4 h1:tjENF6MfZAg8e4ZmZTeWaWiT2vXtsoO6+iuOjFhECwM= github.com/pelletier/go-toml v1.9.4/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.0.0-beta.8 h1:dy81yyLYJDwMTifq24Oi/IslOslRrDSb3jwDggjz3Z0= github.com/pelletier/go-toml/v2 v2.0.0-beta.8/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4 h1:Qj1ukM4GlMWXNdMBuXcXfz/Kw9s1qm0CLY32QxuSImI= github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4/go.mod h1:N6UoU20jOqggOuDwUaBQpluzLNDqif3kq9z2wpdYEfQ= +github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZI= github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/prometheus/client_golang v1.16.0 h1:yk/hx9hDbrGHovbci4BY+pRMfSuuat626eFsHb7tmT8= -github.com/prometheus/client_golang v1.16.0/go.mod h1:Zsulrv/L9oM40tJ7T815tM89lFEugiJ9HzIqaAx4LKc= +github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= +github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= +github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_golang v1.12.1 h1:ZiaPsmm9uiBeaSMRznKsCDNtPCS0T3JVDGF+06gjBzk= +github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.4.0 h1:5lQXD3cAg1OXBf4Wq03gTrXHeaV0TQvGfUooCfx1yqY= -github.com/prometheus/client_model v0.4.0/go.mod h1:oMQmHW1/JoDwqLtg57MGgP/Fb1CJEYF2imWWhWtMkYU= -github.com/prometheus/common v0.44.0 h1:+5BrQJwiBB9xsMygAB3TNvpQKOwlkc25LbISbrdOOfY= -github.com/prometheus/common v0.44.0/go.mod h1:ofAIvZbQ1e/nugmZGz4/qCb9Ap1VoSTIO7x0VV9VvuY= -github.com/prometheus/procfs v0.10.1 h1:kYK1Va/YMlutzCGazswoHKo//tZVlFpKYh+PymziUAg= -github.com/prometheus/procfs v0.10.1/go.mod h1:nwNm2aOCAYw8uTR/9bWRREkZFxAUcWzPHWJq+XBB/FM= +github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M= +github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= +github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= +github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4= +github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= +github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.11/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= +github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c h1:eEqXhtlsUVt798HNUEbdQsMRZSjHSOF5Ilsywuhlgfc= github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c/go.mod h1:uLBlYqsCS2nsKiVlxJxI5EVgq8CrqNeHDP5uq3hde+c= +github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= +github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= +github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= +github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= +github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= +github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= +github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= -github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= -github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= +github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= +github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= +github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= +github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= +github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw= github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= +github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA= github.com/spf13/cast v1.4.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= -github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= +github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU= +github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= +github.com/spf13/cobra v1.4.0 h1:y+wJpx64xcgO1V+RcnwW0LEHxTKRi2ZDPSBjWnrg88Q= +github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= +github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= +github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= +github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= github.com/spf13/viper v1.11.0 h1:7OX/1FS6n7jHD1zGrZTM7WtY13ZELRyosK4k93oPr44= github.com/spf13/viper v1.11.0/go.mod h1:djo0X/bA5+tYVoCn+C7cAYJGcVn/qYLFTG8gdUsX7Zk= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= @@ -388,6 +720,7 @@ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXf github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= @@ -396,35 +729,99 @@ github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcU github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= +github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0= +github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/vektah/gqlparser v1.1.2/go.mod h1:1ycwN7Ij5njmMkPPAOaRFY4rET2Enx7IkVv3vaXspKw= +github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= +go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg= +go.etcd.io/etcd/api/v3 v3.5.0/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/api/v3 v3.5.1/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/client/pkg/v3 v3.5.0/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/pkg/v3 v3.5.1/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/v2 v2.305.0/go.mod h1:h9puh54ZTgAKtEbut2oe9P4L/oqKCVB6xsXlzd7alYQ= +go.etcd.io/etcd/client/v3 v3.5.0/go.mod h1:AIKXXVX/DQXtfTEqBryiLTUXwON+GuvO6Z7lLS/oTh0= +go.etcd.io/etcd/client/v3 v3.5.1/go.mod h1:OnjH4M8OnAotwaB2l9bVgZzRFKru7/ZMoS46OtKyd3Q= +go.etcd.io/etcd/pkg/v3 v3.5.0/go.mod h1:UzJGatBQ1lXChBkQF0AuAtkRQMYnHubxAEYIrC3MSsE= +go.etcd.io/etcd/raft/v3 v3.5.0/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= +go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4= +go.mongodb.org/mongo-driver v1.0.3/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= +go.mongodb.org/mongo-driver v1.1.1/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= +go.mongodb.org/mongo-driver v1.1.2/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= +go.opentelemetry.io/contrib v0.20.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.20.0/go.mod h1:oVGt1LRbBOBq1A5BQLlUg9UaU/54aiHw8cgjV3aWZ/E= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.20.0/go.mod h1:2AboqHi0CiIZU0qwhtUfCYD1GeUzvvIXWNkhDt7ZMG4= +go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo= +go.opentelemetry.io/otel/exporters/otlp v0.20.0/go.mod h1:YIieizyaN77rtLJra0buKiNBOm9XQfkPEKBeuhoMwAM= +go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU= +go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa9FqQ2IQ8LoxiGnw= +go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc= +go.opentelemetry.io/otel/sdk/export/metric v0.20.0/go.mod h1:h7RBNMsDJ5pmI1zExLi+bJK+Dr8NQCh0qGhm1KDnNlE= +go.opentelemetry.io/otel/sdk/metric v0.20.0/go.mod h1:knxiS8Xd4E/N+ZqKmUPf3gTTZ4/0TjTXukfxjzSTpHE= +go.opentelemetry.io/otel/trace v0.20.0/go.mod h1:6GjCW8zgDjwGHGa6GkyeB8+/5vjT16gUEi0Nf1iBdgw= +go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= +go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= -go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A= +go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= +go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE= +go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/goleak v1.1.12 h1:gZAh5/EyT/HQwlpkCy6wTpqfH9H8Lz8zbm3dZh+OyzA= go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= -go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= +go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= +go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= +go.uber.org/multierr v1.8.0 h1:dg6GjLku4EH+249NNmoIciG9N/jURbDG+pFlTkhzIC8= +go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= +go.uber.org/zap v1.8.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= -go.uber.org/zap v1.25.0 h1:4Hvk6GtkucQ790dqmj7l1eEnRdKm3k3ZUrUMS2d5+5c= +go.uber.org/zap v1.15.0/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= +go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= +go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= +go.uber.org/zap v1.21.0 h1:WefMeulhovoZ2sYXz7st6K0sLj7bBhpiFaud4r4zST8= +golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190320223903-b7391e95e576/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190617133340-57b3e21c3d56/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200220183623-bac4c82f6975/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA= -golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= +golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e h1:T8NU3HyQ8ClP4SEE+KbFlg6n0NhuTsN4MyznaarGsZM= +golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -450,6 +847,7 @@ golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRu golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= @@ -460,18 +858,33 @@ golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= +golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc= +golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181005035420-146acd28ed58/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -482,6 +895,7 @@ golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/ golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= @@ -490,13 +904,20 @@ golang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwY golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= +golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.13.0 h1:Nvo8UFsZ8X3BhAC9699Z1j7XQ3rsZnUUm7jfBEk1ueY= -golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= +golang.org/x/net v0.9.0 h1:aWJ/m6xSmxWBx+V0XRHTlrYrPG56jKsLdTFmsSsCzOM= +golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -506,8 +927,12 @@ golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.8.0 h1:6dkIjl3j3LtZ/O3sTgZTMsLKSftL/B8Zgq4huOIIUu8= -golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE= +golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.7.0 h1:qe6s0zUXlPX80/dITx3440hWZ7GwMwgDDyrSGTPJG/g= +golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -518,21 +943,41 @@ golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.2.0 h1:PUR+T4wwASmuSTYdKjYHI5TD22Wy5ogLU5qZCOLxBrI= -golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20170830134202-bb24a47a89ea/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190321052220-f7bb7a8bee54/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -545,60 +990,93 @@ golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210403161142-5e06dd20ab57/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0 h1:CM0HF96J0hcLAwsHPJZjfdNzs0gftsLfgKt57wWHJ0o= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.10.0 h1:3R7pNqamzBraeqj/Tj8qt1aQ2HpmlC+Cx/qL/7hn4/c= -golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= +golang.org/x/term v0.7.0 h1:BEvjmm5fURWqcfbSKTdpkDXYBrUS1c0m8agp14W48vQ= +golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= +golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4= -golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= -golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.1.0 h1:xYY+Bajn2a7VBmTM5GikTmnK8ZuX8YgnQCqZpbBNtmA= +golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190125232054-d66bd3c5d5a6/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190617190820-da514acc4774/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190624222133-a101b041ded4/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20190920225731-5eefd052ad72/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191112195655-aa38f8e97acc/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -618,6 +1096,7 @@ golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjs golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= @@ -633,6 +1112,9 @@ golang.org/x/tools v0.0.0-20210105154028-b0ab187a4818/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= +golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.10-0.20220218145154-897bd77cd717/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= golang.org/x/tools v0.13.0 h1:Iey4qkscZuv0VvIt8E0neZjtPVQFSc870HQ448QgEmQ= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -640,8 +1122,9 @@ golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= -gomodules.xyz/jsonpatch/v2 v2.4.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= +gomodules.xyz/jsonpatch/v2 v2.0.1/go.mod h1:IhYNNY4jnS53ZnfE4PAmpKtDpTCj1JFXc+3mwe7XcUU= +gomodules.xyz/jsonpatch/v2 v2.2.0 h1:4pT439QV83L+G9FkcCriY6EkpcK6r6bK+A5FBUMI7qY= +gomodules.xyz/jsonpatch/v2 v2.2.0/go.mod h1:WXp+iVDkoLQqPudfQ9GBlwB2eZ5DKOnjQZCYdOS8GPY= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= @@ -661,6 +1144,8 @@ google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz513 google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= +google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= +google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= google.golang.org/api v0.114.0 h1:1xQPji6cO2E2vLiI+C/XiFAnsn1WV3mjaEwGLhi3grE= google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= @@ -703,22 +1188,29 @@ google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201019141844-1ed22bb0c154/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201102152239-715cce707fb0/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 h1:9NWlQfY2ePejTmfwUH1OWwmznFa+0kKcHGPDvcPza9M= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 h1:m8v1xLLLzMe1m5P+gCTF8nJB9epwZQUBERm20Oy1poQ= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 h1:0nDDozoAU19Qb2HwhXadU8OcsiO/09cnTqhUtq2MEOM= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= +google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= +google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= +google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20220107163113-42d7afdf6368/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1/go.mod h1:nKE/iIaLqn2bQwXBg8f1g2Ylh6r5MN5CmZvuzZCgsCU= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= @@ -732,6 +1224,11 @@ google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTp google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= google.golang.org/grpc v1.56.1 h1:z0dNfjIl0VpaZ9iSVjA6daGatAYwPGstTjt5vkRMFkQ= google.golang.org/grpc v1.56.1/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= @@ -746,29 +1243,50 @@ google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGj google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= +gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/ini.v1 v1.66.4 h1:SsAcf+mM7mRZo2nJNGt8mZCjG8ZRaNGMURJw7BsIST4= gopkg.in/ini.v1 v1.66.4/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= +gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= +gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20190905181640-827449938966/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= +gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= +gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= +gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -776,33 +1294,79 @@ honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -k8s.io/api v0.28.2 h1:9mpl5mOb6vXZvqbQmankOfPIGiudghwCoLl1EYfUZbw= -k8s.io/api v0.28.2/go.mod h1:RVnJBsjU8tcMq7C3iaRSGMeaKt2TWEUXcpIt/90fjEg= -k8s.io/apiextensions-apiserver v0.28.0 h1:CszgmBL8CizEnj4sj7/PtLGey6Na3YgWyGCPONv7E9E= -k8s.io/apiextensions-apiserver v0.28.0/go.mod h1:uRdYiwIuu0SyqJKriKmqEN2jThIJPhVmOWETm8ud1VE= -k8s.io/apimachinery v0.28.2 h1:KCOJLrc6gu+wV1BYgwik4AF4vXOlVJPdiqn0yAWWwXQ= -k8s.io/apimachinery v0.28.2/go.mod h1:RdzF87y/ngqk9H4z3EL2Rppv5jj95vGS/HaFXrLDApU= -k8s.io/client-go v0.28.2 h1:DNoYI1vGq0slMBN/SWKMZMw0Rq+0EQW6/AK4v9+3VeY= -k8s.io/client-go v0.28.2/go.mod h1:sMkApowspLuc7omj1FOSUxSoqjr+d5Q0Yc0LOFnYFJY= -k8s.io/code-generator v0.28.0 h1:msdkRVJNVFgdiIJ8REl/d3cZsMB9HByFcWMmn13NyuE= -k8s.io/component-base v0.28.1 h1:LA4AujMlK2mr0tZbQDZkjWbdhTV5bRyEyAFe0TJxlWg= -k8s.io/component-base v0.28.1/go.mod h1:jI11OyhbX21Qtbav7JkhehyBsIRfnO8oEgoAR12ArIU= +k8s.io/api v0.18.2/go.mod h1:SJCWI7OLzhZSvbY7U8zwNl9UA4o1fizoug34OV/2r78= +k8s.io/api v0.18.6/go.mod h1:eeyxr+cwCjMdLAmr2W3RyDI0VvTawSg/3RFFBEnmZGI= +k8s.io/api v0.18.8/go.mod h1:d/CXqwWv+Z2XEG1LgceeDmHQwpUJhROPx16SlxJgERY= +k8s.io/api v0.24.1 h1:BjCMRDcyEYz03joa3K1+rbshwh1Ay6oB53+iUx2H8UY= +k8s.io/api v0.24.1/go.mod h1:JhoOvNiLXKTPQ60zh2g0ewpA+bnEYf5q44Flhquh4vQ= +k8s.io/apiextensions-apiserver v0.18.2/go.mod h1:q3faSnRGmYimiocj6cHQ1I3WpLqmDgJFlKL37fC4ZvY= +k8s.io/apiextensions-apiserver v0.18.6/go.mod h1:lv89S7fUysXjLZO7ke783xOwVTm6lKizADfvUM/SS/M= +k8s.io/apiextensions-apiserver v0.24.1 h1:5yBh9+ueTq/kfnHQZa0MAo6uNcPrtxPMpNQgorBaKS0= +k8s.io/apiextensions-apiserver v0.24.1/go.mod h1:A6MHfaLDGfjOc/We2nM7uewD5Oa/FnEbZ6cD7g2ca4Q= +k8s.io/apimachinery v0.18.2/go.mod h1:9SnR/e11v5IbyPCGbvJViimtJ0SwHG4nfZFjU77ftcA= +k8s.io/apimachinery v0.18.6/go.mod h1:OaXp26zu/5J7p0f92ASynJa1pZo06YlV9fG7BoWbCko= +k8s.io/apimachinery v0.18.8/go.mod h1:6sQd+iHEqmOtALqOFjSWp2KZ9F0wlU/nWm0ZgsYWMig= +k8s.io/apimachinery v0.24.1 h1:ShD4aDxTQKN5zNf8K1RQ2u98ELLdIW7jEnlO9uAMX/I= +k8s.io/apimachinery v0.24.1/go.mod h1:82Bi4sCzVBdpYjyI4jY6aHX+YCUchUIrZrXKedjd2UM= +k8s.io/apiserver v0.18.2/go.mod h1:Xbh066NqrZO8cbsoenCwyDJ1OSi8Ag8I2lezeHxzwzw= +k8s.io/apiserver v0.18.6/go.mod h1:Zt2XvTHuaZjBz6EFYzpp+X4hTmgWGy8AthNVnTdm3Wg= +k8s.io/apiserver v0.24.1/go.mod h1:dQWNMx15S8NqJMp0gpYfssyvhYnkilc1LpExd/dkLh0= +k8s.io/client-go v0.18.2/go.mod h1:Xcm5wVGXX9HAA2JJ2sSBUn3tCJ+4SVlCbl2MNNv+CIU= +k8s.io/client-go v0.18.6/go.mod h1:/fwtGLjYMS1MaM5oi+eXhKwG+1UHidUEXRh6cNsdO0Q= +k8s.io/client-go v0.18.8/go.mod h1:HqFqMllQ5NnQJNwjro9k5zMyfhZlOwpuTLVrxjkYSxU= +k8s.io/client-go v0.24.1 h1:w1hNdI9PFrzu3OlovVeTnf4oHDt+FJLd9Ndluvnb42E= +k8s.io/client-go v0.24.1/go.mod h1:f1kIDqcEYmwXS/vTbbhopMUbhKp2JhOeVTfxgaCIlF8= +k8s.io/code-generator v0.18.2/go.mod h1:+UHX5rSbxmR8kzS+FAv7um6dtYrZokQvjHpDSYRVkTc= +k8s.io/code-generator v0.18.6/go.mod h1:TgNEVx9hCyPGpdtCWA34olQYLkh3ok9ar7XfSsr8b6c= +k8s.io/code-generator v0.24.1 h1:zS+dvmUNaOcvsQ4faV9hXNjsKG9/pQaLnts1Wma4RM8= +k8s.io/code-generator v0.24.1/go.mod h1:dpVhs00hTuTdTY6jvVxvTFCk6gSMrtfRydbhZwHI15w= +k8s.io/component-base v0.18.2/go.mod h1:kqLlMuhJNHQ9lz8Z7V5bxUUtjFZnrypArGl58gmDfUM= +k8s.io/component-base v0.18.6/go.mod h1:knSVsibPR5K6EW2XOjEHik6sdU5nCvKMrzMt2D4In14= +k8s.io/component-base v0.24.1 h1:APv6W/YmfOWZfo+XJ1mZwep/f7g7Tpwvdbo9CQLDuts= +k8s.io/component-base v0.24.1/go.mod h1:DW5vQGYVCog8WYpNob3PMmmsY8A3L9QZNg4j/dV3s38= +k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20200114144118-36b2048a9120/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20210813121822-485abfe95c7c/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/gengo v0.0.0-20211129171323-c02415ce4185/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog v0.0.0-20181102134211-b9b56d5dfc92/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= +k8s.io/klog v0.3.0/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8= k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I= -k8s.io/klog/v2 v2.100.1 h1:7WCHKK6K8fNhTqfBhISHQ97KrnJNFZMcQvKp7gP/tmg= -k8s.io/klog/v2 v2.100.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f h1:eeEUOoGYWhOz7EyXqhlR2zHKNw2mNJ9vzJmub6YN6kk= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 h1:qY1Ad8PODbnymg2pRbkyMT/ylpTrCM8P2RJ0yroCyIk= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/klog/v2 v2.90.1 h1:m4bYOKall2MmOiRaR1J+We67Do7vm9KiQVlT96lnHUw= +k8s.io/klog/v2 v2.90.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20200121204235-bf4fb3bd569c/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E= +k8s.io/kube-openapi v0.0.0-20200410145947-61e04a5be9a6/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E= +k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk= +k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f h1:2kWPakN3i/k81b0gvD5C5FJ2kxm1WrQFanWchyKuqGg= +k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f/go.mod h1:byini6yhqGC14c3ebc/QwanvYwhuMWF6yz2F8uwW8eg= +k8s.io/utils v0.0.0-20200324210504-a9aa75ae1b89/go.mod h1:sZAwmy6armz5eXlNoLmJcl4F1QuKu7sr+mFQ0byX7Ew= +k8s.io/utils v0.0.0-20200603063816-c1c6865ac451/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20230209194617-a36077c30491 h1:r0BAOLElQnnFhE/ApUsg3iHdVYYPBjNSSOMowRZxxsY= +k8s.io/utils v0.0.0-20230209194617-a36077c30491/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -sigs.k8s.io/controller-runtime v0.16.2 h1:mwXAVuEk3EQf478PQwQ48zGOXvW27UJc8NHktQVuIPU= -sigs.k8s.io/controller-runtime v0.16.2/go.mod h1:vpMu3LpI5sYWtujJOa2uPK61nB5rbwlN7BAB8aSLvGU= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.7/go.mod h1:PHgbrJT7lCHcxMU+mDHEm+nx46H4zuuHZkDP6icnhu0= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.30/go.mod h1:fEO7lRTdivWO2qYVCVG7dEADOMo/MLDCVr8So2g88Uw= +sigs.k8s.io/controller-runtime v0.6.2/go.mod h1:vhcq/rlnENJ09SIRp3EveTaZ0yqH526hjf9iJdbUJ/E= +sigs.k8s.io/controller-runtime v0.12.1 h1:4BJY01xe9zKQti8oRjj/NeHKRXthf1YkYJAgLONFFoI= +sigs.k8s.io/controller-runtime v0.12.1/go.mod h1:BKhxlA4l7FPK4AQcsuL4X6vZeWnKDXez/vp1Y8dxTU0= +sigs.k8s.io/controller-tools v0.3.0/go.mod h1:enhtKGfxZD1GFEoMgP8Fdbu+uKQ/cq1/WGJhdVChfvI= +sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2/go.mod h1:B+TnT182UBxE84DiCz4CVE26eOSDAeYCpfDnC2kdKMY= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= +sigs.k8s.io/structured-merge-diff/v3 v3.0.0-20200116222232-67a7b8c61874/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw= +sigs.k8s.io/structured-merge-diff/v3 v3.0.0/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.2.1/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= sigs.k8s.io/structured-merge-diff/v4 v4.2.3 h1:PRbqxJClWWYMNV1dhaG4NsibJbArud9kFxnAMREiWFE= sigs.k8s.io/structured-merge-diff/v4 v4.2.3/go.mod h1:qjx8mGObPmV2aSZepjQjbmb2ihdVs8cGKBraizNC69E= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/flytepropeller/pkg/compiler/validators/utils.go b/flytepropeller/pkg/compiler/validators/utils.go index cc7245a6e2..8c4cda12ce 100644 --- a/flytepropeller/pkg/compiler/validators/utils.go +++ b/flytepropeller/pkg/compiler/validators/utils.go @@ -2,6 +2,7 @@ package validators import ( "fmt" + "strings" "github.com/golang/protobuf/proto" "golang.org/x/exp/maps" @@ -184,17 +185,7 @@ func literalTypeForLiterals(literals []*core.Literal) *core.LiteralType { } // sort inner types to ensure consistent union types are generated - slices.SortFunc(innerType, func(a, b *core.LiteralType) int { - aStr := a.String() - bStr := b.String() - if aStr < bStr { - return -1 - } else if aStr > bStr { - return 1 - } - - return 0 - }) + slices.SortFunc(innerType, func(a, b *core.LiteralType) int { return strings.Compare(a.String(), b.String()) }) return &core.LiteralType{ Type: &core.LiteralType_UnionType{ diff --git a/flytepropeller/pkg/controller/controller.go b/flytepropeller/pkg/controller/controller.go index fe9247265f..0cc3936109 100644 --- a/flytepropeller/pkg/controller/controller.go +++ b/flytepropeller/pkg/controller/controller.go @@ -19,12 +19,12 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" + "k8s.io/apimachinery/pkg/util/clock" k8sInformers "k8s.io/client-go/informers" "k8s.io/client-go/kubernetes" "k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/leaderelection" "k8s.io/client-go/tools/record" - "k8s.io/utils/clock" "sigs.k8s.io/controller-runtime/pkg/manager" "github.com/flyteorg/flyte/flyteidl/clients/go/admin" @@ -458,17 +458,10 @@ func New(ctx context.Context, cfg *config.Config, kubeClientset kubernetes.Inter logger.Info(ctx, "Setting up event handlers") // Set up an event handler for when FlyteWorkflow resources change - _, err = flyteworkflowInformer.Informer().AddEventHandler(controller.getWorkflowUpdatesHandler()) - if err != nil { - return nil, fmt.Errorf("failed to register event handler for FlyteWorkflow resource changes: %w", err) - } + flyteworkflowInformer.Informer().AddEventHandler(controller.getWorkflowUpdatesHandler()) updateHandler := flytek8s.GetPodTemplateUpdatesHandler(&flytek8s.DefaultPodTemplateStore) - _, err = podTemplateInformer.Informer().AddEventHandler(updateHandler) - if err != nil { - return nil, fmt.Errorf("failed to register event handler for PodTemplate resource changes: %w", err) - } - + podTemplateInformer.Informer().AddEventHandler(updateHandler) return controller, nil } diff --git a/flytepropeller/pkg/controller/executors/kube.go b/flytepropeller/pkg/controller/executors/kube.go index acd4f5c4f3..7dc62135b6 100644 --- a/flytepropeller/pkg/controller/executors/kube.go +++ b/flytepropeller/pkg/controller/executors/kube.go @@ -23,18 +23,72 @@ type Client interface { GetCache() cache.Cache } +// fallbackClientReader reads from the cache first and if not found then reads from the configured reader, which +// directly reads from the API +type fallbackClientReader struct { + orderedClients []client.Reader +} + +func (c fallbackClientReader) Get(ctx context.Context, key client.ObjectKey, out client.Object) (err error) { + for _, k8sClient := range c.orderedClients { + if err = k8sClient.Get(ctx, key, out); err == nil { + return nil + } + } + + return +} + +func (c fallbackClientReader) List(ctx context.Context, list client.ObjectList, opts ...client.ListOption) (err error) { + for _, k8sClient := range c.orderedClients { + if err = k8sClient.List(ctx, list, opts...); err == nil { + return nil + } + } + + return +} + // ClientBuilder builder is the interface for the client builder. type ClientBuilder interface { + // WithUncached takes a list of runtime objects (plain or lists) that users don't want to cache + // for this client. This function can be called multiple times, it should append to an internal slice. + WithUncached(objs ...client.Object) ClientBuilder + // Build returns a new client. Build(cache cache.Cache, config *rest.Config, options client.Options) (client.Client, error) } type FallbackClientBuilder struct { - scope promutils.Scope + uncached []client.Object + scope promutils.Scope +} + +func (f *FallbackClientBuilder) WithUncached(objs ...client.Object) ClientBuilder { + f.uncached = append(f.uncached, objs...) + return f } -func (f *FallbackClientBuilder) Build(_ cache.Cache, config *rest.Config, options client.Options) (client.Client, error) { - return client.New(config, options) +func (f FallbackClientBuilder) Build(cache cache.Cache, config *rest.Config, options client.Options) (client.Client, error) { + c, err := client.New(config, options) + if err != nil { + return nil, err + } + + c, err = newWriteThroughCachingWriter(c, 50000, f.scope) + if err != nil { + return nil, err + } + + return client.NewDelegatingClient(client.NewDelegatingClientInput{ + Client: c, + CacheReader: fallbackClientReader{ + orderedClients: []client.Reader{cache, c}, + }, + UncachedObjects: f.uncached, + // TODO figure out if this should be true? + // CacheUnstructured: true, + }) } // NewFallbackClientBuilder Creates a new k8s client that uses the cached client for reads and falls back to making API diff --git a/flytepropeller/pkg/controller/executors/mocks/fake.go b/flytepropeller/pkg/controller/executors/mocks/fake.go index ffd25ef9f5..e0fdef43eb 100644 --- a/flytepropeller/pkg/controller/executors/mocks/fake.go +++ b/flytepropeller/pkg/controller/executors/mocks/fake.go @@ -15,7 +15,7 @@ import ( type FakeInformers struct { } -func (f *FakeInformers) Get(ctx context.Context, key client.ObjectKey, obj client.Object, opts ...client.GetOption) error { +func (f *FakeInformers) Get(ctx context.Context, key client.ObjectKey, obj client.Object) error { return nil } @@ -31,7 +31,7 @@ func (f *FakeInformers) List(ctx context.Context, list client.ObjectList, opts . return nil } -func (f *FakeInformers) GetInformerForKind(ctx context.Context, gvk schema.GroupVersionKind, opts ...cache.InformerGetOption) (cache.Informer, error) { +func (f *FakeInformers) GetInformerForKind(ctx context.Context, gvk schema.GroupVersionKind) (cache.Informer, error) { return &controllertest.FakeInformer{}, nil } @@ -39,7 +39,7 @@ func (f *FakeInformers) Start(ctx context.Context) error { return nil } -func (f *FakeInformers) GetInformer(ctx context.Context, obj client.Object, opts ...cache.InformerGetOption) (cache.Informer, error) { +func (f *FakeInformers) GetInformer(ctx context.Context, obj client.Object) (cache.Informer, error) { return &controllertest.FakeInformer{}, nil } diff --git a/flytepropeller/pkg/controller/garbage_collector.go b/flytepropeller/pkg/controller/garbage_collector.go index 5956f1ad55..55b026ecb0 100644 --- a/flytepropeller/pkg/controller/garbage_collector.go +++ b/flytepropeller/pkg/controller/garbage_collector.go @@ -7,8 +7,8 @@ import ( "time" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/util/clock" corev1 "k8s.io/client-go/kubernetes/typed/core/v1" - "k8s.io/utils/clock" "github.com/flyteorg/flyte/flytepropeller/pkg/client/clientset/versioned/typed/flyteworkflow/v1alpha1" "github.com/flyteorg/flyte/flytepropeller/pkg/controller/config" @@ -128,7 +128,7 @@ func (g *GarbageCollector) deleteWorkflowsForNamespace(ctx context.Context, name } // runGC runs GC periodically -func (g *GarbageCollector) runGC(ctx context.Context, ticker clock.Timer) { +func (g *GarbageCollector) runGC(ctx context.Context, ticker clock.Ticker) { logger.Infof(ctx, "Background workflow garbage collection started, with duration [%s], TTL [%d] hours", g.interval.String(), g.ttlHours) ctx = contextutils.WithGoroutineLabel(ctx, "gc-worker") @@ -162,7 +162,7 @@ func (g *GarbageCollector) StartGC(ctx context.Context) error { logger.Warningf(ctx, "Garbage collector is disabled, as ttl [%d] is <=0", g.ttlHours) return nil } - ticker := g.clk.NewTimer(g.interval) + ticker := g.clk.NewTicker(g.interval) go g.runGC(ctx, ticker) return nil } diff --git a/flytepropeller/pkg/controller/garbage_collector_test.go b/flytepropeller/pkg/controller/garbage_collector_test.go index 304ec7352e..9fb72154c7 100644 --- a/flytepropeller/pkg/controller/garbage_collector_test.go +++ b/flytepropeller/pkg/controller/garbage_collector_test.go @@ -10,8 +10,8 @@ import ( "github.com/stretchr/testify/assert" corev1Types "k8s.io/api/core/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/util/clock" corev1 "k8s.io/client-go/kubernetes/typed/core/v1" - testing2 "k8s.io/utils/clock/testing" "github.com/flyteorg/flyte/flytepropeller/pkg/client/clientset/versioned/typed/flyteworkflow/v1alpha1" config2 "github.com/flyteorg/flyte/flytepropeller/pkg/controller/config" @@ -26,7 +26,7 @@ func TestNewGarbageCollector(t *testing.T) { MaxTTLInHours: 2, LimitNamespace: "flyte", } - gc, err := NewGarbageCollector(cfg, promutils.NewTestScope(), testing2.NewFakeClock(time.Now()), nil, nil) + gc, err := NewGarbageCollector(cfg, promutils.NewTestScope(), clock.NewFakeClock(time.Now()), nil, nil) assert.NoError(t, err) assert.Equal(t, 2, gc.ttlHours) }) @@ -37,7 +37,7 @@ func TestNewGarbageCollector(t *testing.T) { MaxTTLInHours: 24, LimitNamespace: "flyte", } - gc, err := NewGarbageCollector(cfg, promutils.NewTestScope(), testing2.NewFakeClock(time.Now()), nil, nil) + gc, err := NewGarbageCollector(cfg, promutils.NewTestScope(), clock.NewFakeClock(time.Now()), nil, nil) assert.NoError(t, err) assert.Equal(t, 23, gc.ttlHours) }) @@ -146,7 +146,7 @@ func TestGarbageCollector_StartGC(t *testing.T) { LimitNamespace: "flyte", } - fakeClock := testing2.NewFakeClock(b) + fakeClock := clock.NewFakeClock(b) mockNamespaceInvoked = false gc, err := NewGarbageCollector(cfg, promutils.NewTestScope(), fakeClock, mockNamespaceClient, mockClient) assert.NoError(t, err) @@ -167,7 +167,7 @@ func TestGarbageCollector_StartGC(t *testing.T) { LimitNamespace: "all", } - fakeClock := testing2.NewFakeClock(b) + fakeClock := clock.NewFakeClock(b) mockNamespaceInvoked = false gc, err := NewGarbageCollector(cfg, promutils.NewTestScope(), fakeClock, mockNamespaceClient, mockClient) assert.NoError(t, err) diff --git a/flytepropeller/pkg/controller/nodes/dynamic/dynamic_workflow_test.go b/flytepropeller/pkg/controller/nodes/dynamic/dynamic_workflow_test.go index 3c016fe6bf..07527d0013 100644 --- a/flytepropeller/pkg/controller/nodes/dynamic/dynamic_workflow_test.go +++ b/flytepropeller/pkg/controller/nodes/dynamic/dynamic_workflow_test.go @@ -30,7 +30,7 @@ import ( func Test_dynamicNodeHandler_buildContextualDynamicWorkflow_withLaunchPlans(t *testing.T) { createNodeContext := func(ttype string, finalOutput storage.DataReference, dataStore *storage.DataStore) *mocks.NodeExecutionContext { - ctx := context.Background() + ctx := context.TODO() wfExecID := &core.WorkflowExecutionIdentifier{ Project: "project", diff --git a/flytepropeller/pkg/controller/nodes/task/backoff/controller.go b/flytepropeller/pkg/controller/nodes/task/backoff/controller.go index 20968aeeca..fb12872639 100644 --- a/flytepropeller/pkg/controller/nodes/task/backoff/controller.go +++ b/flytepropeller/pkg/controller/nodes/task/backoff/controller.go @@ -5,7 +5,7 @@ import ( "fmt" "time" - "k8s.io/utils/clock" + "k8s.io/apimachinery/pkg/util/clock" "sigs.k8s.io/controller-runtime/pkg/client" stdAtomic "github.com/flyteorg/flyte/flytestdlib/atomic" diff --git a/flytepropeller/pkg/controller/nodes/task/backoff/handler.go b/flytepropeller/pkg/controller/nodes/task/backoff/handler.go index 757c2420f8..e6677e7c7a 100644 --- a/flytepropeller/pkg/controller/nodes/task/backoff/handler.go +++ b/flytepropeller/pkg/controller/nodes/task/backoff/handler.go @@ -10,7 +10,7 @@ import ( v1 "k8s.io/api/core/v1" apiErrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/resource" - "k8s.io/utils/clock" + "k8s.io/apimachinery/pkg/util/clock" "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" stdAtomic "github.com/flyteorg/flyte/flytestdlib/atomic" diff --git a/flytepropeller/pkg/controller/nodes/task/backoff/handler_test.go b/flytepropeller/pkg/controller/nodes/task/backoff/handler_test.go index dea31740c6..98e084850a 100644 --- a/flytepropeller/pkg/controller/nodes/task/backoff/handler_test.go +++ b/flytepropeller/pkg/controller/nodes/task/backoff/handler_test.go @@ -13,8 +13,7 @@ import ( apiErrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/resource" "k8s.io/apimachinery/pkg/runtime/schema" - "k8s.io/utils/clock" - testing2 "k8s.io/utils/clock/testing" + "k8s.io/apimachinery/pkg/util/clock" taskErrors "github.com/flyteorg/flyte/flyteplugins/go/tasks/errors" stdAtomic "github.com/flyteorg/flyte/flytestdlib/atomic" @@ -38,7 +37,7 @@ func TestComputeResourceAwareBackOffHandler_Handle(t *testing.T) { } ctx := context.TODO() - tc := testing2.NewFakeClock(time.Now()) + tc := clock.NewFakeClock(time.Now()) type fields struct { SimpleBackOffBlocker *SimpleBackOffBlocker ComputeResourceCeilings *ComputeResourceCeilings @@ -475,7 +474,7 @@ func TestIsResourceQuotaExceeded(t *testing.T) { } func TestSimpleBackOffBlocker_backOff(t *testing.T) { - tc := testing2.NewFakeClock(time.Now()) + tc := clock.NewFakeClock(time.Now()) maxBackOffDuration := 10 * time.Minute type fields struct { Clock clock.Clock diff --git a/flytepropeller/pkg/controller/nodes/task/k8s/event_watcher.go b/flytepropeller/pkg/controller/nodes/task/k8s/event_watcher.go index e53de83e10..660ccc8827 100644 --- a/flytepropeller/pkg/controller/nodes/task/k8s/event_watcher.go +++ b/flytepropeller/pkg/controller/nodes/task/k8s/event_watcher.go @@ -2,7 +2,6 @@ package k8s import ( "context" - "fmt" "sort" "sync" "time" @@ -15,7 +14,6 @@ import ( "k8s.io/client-go/informers" informerEventsv1 "k8s.io/client-go/informers/events/v1" "k8s.io/client-go/kubernetes" - "k8s.io/client-go/tools/cache" "github.com/flyteorg/flyte/flytestdlib/logger" ) @@ -30,7 +28,6 @@ type EventWatcher interface { // Note that cardinality of per object events is relatively low (10s), while they may occur repeatedly. For example // the ImagePullBackOff event may continue to fire, but this is only backed by a single event. type eventWatcher struct { - cache.ResourceEventHandler informer informerEventsv1.EventInformer objectCache sync.Map } @@ -49,7 +46,7 @@ type EventInfo struct { RecordedAt time.Time } -func (e *eventWatcher) OnAdd(obj interface{}, isInInitialList bool) { +func (e *eventWatcher) OnAdd(obj interface{}) { event := obj.(*eventsv1.Event) objectNsName := types.NamespacedName{Namespace: event.Regarding.Namespace, Name: event.Regarding.Name} eventNsName := types.NamespacedName{Namespace: event.Namespace, Name: event.Name} @@ -118,11 +115,7 @@ func NewEventWatcher(ctx context.Context, gvk schema.GroupVersionKind, kubeClien watcher := &eventWatcher{ informer: eventInformer, } - - _, err := eventInformer.Informer().AddEventHandler(watcher) - if err != nil { - return nil, fmt.Errorf("failed to add event handler: %w", err) - } + eventInformer.Informer().AddEventHandler(watcher) go eventInformer.Informer().Run(ctx.Done()) logger.Debugf(ctx, "Started informer for [%s] events", gvk.Kind) diff --git a/flytepropeller/pkg/controller/nodes/task/k8s/event_watcher_test.go b/flytepropeller/pkg/controller/nodes/task/k8s/event_watcher_test.go index d3ffbcc5b9..460f64bbc4 100644 --- a/flytepropeller/pkg/controller/nodes/task/k8s/event_watcher_test.go +++ b/flytepropeller/pkg/controller/nodes/task/k8s/event_watcher_test.go @@ -34,7 +34,7 @@ func TestEventWatcher_OnAdd(t *testing.T) { Namespace: "ns1", Name: "name1", }, - }, false) + }) v, _ := ew.objectCache.Load(types.NamespacedName{Namespace: "ns1", Name: "name1"}) assert.NotNil(t, v) @@ -54,7 +54,7 @@ func TestEventWatcher_OnAdd(t *testing.T) { Namespace: "ns2", Name: "name2", }, - }, false) + }) v, _ := ew.objectCache.Load(types.NamespacedName{Namespace: "ns2", Name: "name2"}) assert.NotNil(t, v) @@ -74,7 +74,7 @@ func TestEventWatcher_OnAdd(t *testing.T) { Namespace: "ns3", Name: "name3", }, - }, false) + }) v, _ := ew.objectCache.Load(types.NamespacedName{Namespace: "ns3", Name: "name3"}) assert.NotNil(t, v) diff --git a/flytepropeller/pkg/controller/nodes/task/k8s/plugin_manager.go b/flytepropeller/pkg/controller/nodes/task/k8s/plugin_manager.go index f32651caa4..a1c58a00cb 100644 --- a/flytepropeller/pkg/controller/nodes/task/k8s/plugin_manager.go +++ b/flytepropeller/pkg/controller/nodes/task/k8s/plugin_manager.go @@ -539,7 +539,9 @@ func NewPluginManager(ctx context.Context, iCtx pluginsCore.SetupContext, entry } logger.Infof(ctx, "Initializing K8s plugin [%s]", entry.ID) - src := source.Kind(iCtx.KubeClient().GetCache(), entry.ResourceToWatch) + src := source.Kind{ + Type: entry.ResourceToWatch, + } workflowParentPredicate := func(o metav1.Object) bool { if entry.Plugin.GetProperties().DisableInjectOwnerReferences { @@ -556,6 +558,11 @@ func NewPluginManager(ctx context.Context, iCtx pluginsCore.SetupContext, entry return false } + if err := src.InjectCache(kubeClient.GetCache()); err != nil { + logger.Errorf(ctx, "failed to set informers for ObjectType %s", src.String()) + return nil, err + } + metricsScope := iCtx.MetricsScope().NewSubScope(entry.ID) updateCount := labeled.NewCounter("informer_update", "Update events from informer", metricsScope) droppedUpdateCount := labeled.NewCounter("informer_update_dropped", "Update events from informer that have the same resource version", metricsScope) @@ -566,10 +573,10 @@ func NewPluginManager(ctx context.Context, iCtx pluginsCore.SetupContext, entry ctx, // Handlers handler.Funcs{ - CreateFunc: func(ctx context.Context, evt event.CreateEvent, q2 workqueue.RateLimitingInterface) { + CreateFunc: func(evt event.CreateEvent, q2 workqueue.RateLimitingInterface) { logger.Debugf(context.Background(), "Create received for %s, ignoring.", evt.Object.GetName()) }, - UpdateFunc: func(ctx context.Context, evt event.UpdateEvent, q2 workqueue.RateLimitingInterface) { + UpdateFunc: func(evt event.UpdateEvent, q2 workqueue.RateLimitingInterface) { if evt.ObjectNew == nil { logger.Warn(context.Background(), "Received an Update event with nil MetaNew.") } else if evt.ObjectOld == nil || evt.ObjectOld.GetResourceVersion() != evt.ObjectNew.GetResourceVersion() { @@ -594,10 +601,10 @@ func NewPluginManager(ctx context.Context, iCtx pluginsCore.SetupContext, entry droppedUpdateCount.Inc(newCtx) } }, - DeleteFunc: func(ctx context.Context, evt event.DeleteEvent, q2 workqueue.RateLimitingInterface) { + DeleteFunc: func(evt event.DeleteEvent, q2 workqueue.RateLimitingInterface) { logger.Debugf(context.Background(), "Delete received for %s, ignoring.", evt.Object.GetName()) }, - GenericFunc: func(ctx context.Context, evt event.GenericEvent, q2 workqueue.RateLimitingInterface) { + GenericFunc: func(evt event.GenericEvent, q2 workqueue.RateLimitingInterface) { logger.Debugf(context.Background(), "Generic received for %s, ignoring.", evt.Object.GetName()) genericCount.Inc(ctx) }, diff --git a/flytepropeller/pkg/controller/nodes/task/k8s/plugin_manager_test.go b/flytepropeller/pkg/controller/nodes/task/k8s/plugin_manager_test.go index a96536e7ac..6b8f990c8d 100644 --- a/flytepropeller/pkg/controller/nodes/task/k8s/plugin_manager_test.go +++ b/flytepropeller/pkg/controller/nodes/task/k8s/plugin_manager_test.go @@ -16,6 +16,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" k8stypes "k8s.io/apimachinery/pkg/types" k8sfake "k8s.io/client-go/kubernetes/fake" + "k8s.io/client-go/kubernetes/scheme" "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/client/fake" @@ -50,7 +51,7 @@ func (e extendedFakeClient) Create(ctx context.Context, obj client.Object, opts return e.Client.Create(ctx, obj) } -func (e extendedFakeClient) Get(ctx context.Context, key client.ObjectKey, obj client.Object, opts ...client.GetOption) error { +func (e extendedFakeClient) Get(ctx context.Context, key client.ObjectKey, obj client.Object) error { if e.GetError != nil { return e.GetError } @@ -471,7 +472,7 @@ func TestPluginManager_Abort(t *testing.T) { t.Run("Abort Pod Exists", func(t *testing.T) { // common setup code tctx := getMockTaskContext(PluginPhaseStarted, PluginPhaseStarted) - fc := extendedFakeClient{Client: fake.NewFakeClient(res)} + fc := extendedFakeClient{Client: fake.NewFakeClientWithScheme(scheme.Scheme, res)} mockClientset := k8sfake.NewSimpleClientset() // common setup code @@ -497,7 +498,7 @@ func TestPluginManager_Abort(t *testing.T) { t.Run("Abort Pod doesn't exist", func(t *testing.T) { // common setup code tctx := getMockTaskContext(PluginPhaseStarted, PluginPhaseStarted) - fc := extendedFakeClient{Client: fake.NewFakeClient()} + fc := extendedFakeClient{Client: fake.NewFakeClientWithScheme(scheme.Scheme)} mockClientset := k8sfake.NewSimpleClientset() // common setup code mockResourceHandler := &pluginsk8sMock.Plugin{} diff --git a/flytepropeller/pkg/leaderelection/leader_election.go b/flytepropeller/pkg/leaderelection/leader_election.go index 2225b7f614..a3d28a944b 100644 --- a/flytepropeller/pkg/leaderelection/leader_election.go +++ b/flytepropeller/pkg/leaderelection/leader_election.go @@ -39,8 +39,7 @@ func NewResourceLock(corev1 v1.CoreV1Interface, coordinationV1 v12.CoordinationV } // Leader id, needs to be unique - return resourcelock.New( - resourcelock.LeasesResourceLock, + return resourcelock.New(resourcelock.ConfigMapsLeasesResourceLock, options.LockConfigMap.Namespace, options.LockConfigMap.Name, corev1, diff --git a/flytepropeller/pkg/webhook/pod_test.go b/flytepropeller/pkg/webhook/pod_test.go index 122f66c82f..08a4284728 100644 --- a/flytepropeller/pkg/webhook/pod_test.go +++ b/flytepropeller/pkg/webhook/pod_test.go @@ -106,7 +106,8 @@ func Test_Handle(t *testing.T) { ServiceName: "my-service", }, promutils.NewTestScope()) - decoder := admission.NewDecoder(latest.Scheme) + decoder, err := admission.NewDecoder(latest.Scheme) + assert.NoError(t, err) assert.NoError(t, pm.InjectDecoder(decoder)) req := admission.Request{ diff --git a/flytepropeller/plugins/loader.go b/flytepropeller/plugins/loader.go index 8e1deffa67..47620a5172 100644 --- a/flytepropeller/plugins/loader.go +++ b/flytepropeller/plugins/loader.go @@ -12,6 +12,7 @@ import ( _ "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/kfoperators/tensorflow" _ "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/pod" _ "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/ray" + _ "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/sagemaker" _ "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/k8s/spark" _ "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/webapi/athena" _ "github.com/flyteorg/flyte/flyteplugins/go/tasks/plugins/webapi/bigquery" diff --git a/go.mod b/go.mod index 90c30123f9..889bfc66ec 100644 --- a/go.mod +++ b/go.mod @@ -8,12 +8,12 @@ require ( github.com/flyteorg/flyte/flytepropeller v1.9.4 github.com/flyteorg/flyte/flytestdlib v1.9.4 github.com/golang/glog v1.1.0 - github.com/prometheus/client_golang v1.16.0 - github.com/spf13/cobra v1.7.0 + github.com/prometheus/client_golang v1.12.1 + github.com/spf13/cobra v1.4.0 github.com/spf13/pflag v1.0.5 golang.org/x/sync v0.3.0 gorm.io/driver/postgres v1.4.5 - k8s.io/client-go v0.28.1 + k8s.io/client-go v0.24.1 sigs.k8s.io/controller-runtime v0.12.1 ) @@ -23,7 +23,7 @@ require ( cloud.google.com/go/compute/metadata v0.2.3 // indirect cloud.google.com/go/iam v0.13.0 // indirect cloud.google.com/go/pubsub v1.30.0 // indirect - cloud.google.com/go/storage v1.29.0 // indirect + cloud.google.com/go/storage v1.28.1 // indirect github.com/Azure/azure-sdk-for-go v63.4.0+incompatible // indirect github.com/Azure/azure-sdk-for-go/sdk/azcore v0.23.1 // indirect github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.2 // indirect @@ -35,9 +35,11 @@ require ( github.com/Azure/go-autorest/logger v0.2.1 // indirect github.com/Azure/go-autorest/tracing v0.6.0 // indirect github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625 // indirect + github.com/Masterminds/semver v1.5.0 // indirect github.com/NYTimes/gizmo v1.3.6 // indirect github.com/Shopify/sarama v1.26.4 // indirect github.com/asaskevich/govalidator v0.0.0-20200428143746-21a406dcc535 // indirect + github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d // indirect github.com/aws/aws-sdk-go v1.44.2 // indirect github.com/aws/aws-sdk-go-v2 v1.2.0 // indirect github.com/aws/aws-sdk-go-v2/config v1.0.0 // indirect @@ -47,7 +49,7 @@ require ( github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.0 // indirect github.com/aws/aws-sdk-go-v2/service/sts v1.0.0 // indirect github.com/aws/smithy-go v1.1.0 // indirect - github.com/benbjohnson/clock v1.3.0 // indirect + github.com/benbjohnson/clock v1.1.0 // indirect github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/bradfitz/gomemcache v0.0.0-20190913173617-a41fca850d0b // indirect @@ -66,30 +68,29 @@ require ( github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21 // indirect github.com/eapache/queue v1.1.0 // indirect github.com/emicklei/go-restful/v3 v3.9.0 // indirect - github.com/evanphx/json-patch v5.6.0+incompatible // indirect - github.com/evanphx/json-patch/v5 v5.6.0 // indirect + github.com/evanphx/json-patch v4.12.0+incompatible // indirect github.com/fatih/color v1.13.0 // indirect - github.com/felixge/httpsnoop v1.0.3 // indirect + github.com/felixge/httpsnoop v1.0.1 // indirect github.com/flyteorg/flyte/flyteidl v0.0.0-00010101000000-000000000000 // indirect github.com/flyteorg/flyte/flyteplugins v0.0.0-00010101000000-000000000000 // indirect github.com/flyteorg/stow v0.3.7 // indirect - github.com/fsnotify/fsnotify v1.6.0 // indirect + github.com/fsnotify/fsnotify v1.5.1 // indirect github.com/ghodss/yaml v1.0.0 // indirect github.com/go-gormigrate/gormigrate/v2 v2.0.0 // indirect - github.com/go-logr/logr v1.2.4 // indirect + github.com/go-logr/logr v1.2.3 // indirect github.com/go-openapi/jsonpointer v0.19.6 // indirect - github.com/go-openapi/jsonreference v0.20.2 // indirect + github.com/go-openapi/jsonreference v0.20.1 // indirect github.com/go-openapi/swag v0.22.3 // indirect github.com/go-redis/redis v6.15.7+incompatible // indirect github.com/go-test/deep v1.0.7 // indirect github.com/goccy/go-json v0.4.8 // indirect github.com/gofrs/uuid v4.2.0+incompatible // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang-jwt/jwt/v4 v4.5.0 // indirect + github.com/golang-jwt/jwt/v4 v4.4.1 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.3 // indirect github.com/golang/snappy v0.0.3 // indirect - github.com/google/gnostic-models v0.6.8 // indirect + github.com/google/gnostic v0.5.7-v3refs // indirect github.com/google/go-cmp v0.5.9 // indirect github.com/google/gofuzz v1.2.0 // indirect github.com/google/uuid v1.3.0 // indirect @@ -106,7 +107,7 @@ require ( github.com/hashicorp/golang-lru v0.5.4 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/imdario/mergo v0.3.13 // indirect - github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/jackc/chunkreader/v2 v2.0.1 // indirect github.com/jackc/pgconn v1.13.0 // indirect github.com/jackc/pgio v1.0.0 // indirect @@ -133,10 +134,10 @@ require ( github.com/magiconair/properties v1.8.6 // indirect github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.12 // indirect - github.com/mattn/go-isatty v0.0.16 // indirect + github.com/mattn/go-isatty v0.0.14 // indirect github.com/mattn/go-sqlite3 v2.0.3+incompatible // indirect github.com/mattn/goveralls v0.0.6 // indirect - github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect + github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect @@ -156,15 +157,15 @@ require ( github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/pquerna/cachecontrol v0.0.0-20201205024021-ac21108117ac // indirect - github.com/prometheus/client_model v0.4.0 // indirect - github.com/prometheus/common v0.44.0 // indirect - github.com/prometheus/procfs v0.10.1 // indirect + github.com/prometheus/client_model v0.2.0 // indirect + github.com/prometheus/common v0.32.1 // indirect + github.com/prometheus/procfs v0.7.3 // indirect github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c // indirect github.com/rcrowley/go-metrics v0.0.0-20200313005456-10cdbea86bc0 // indirect github.com/robfig/cron/v3 v3.0.0 // indirect github.com/sendgrid/rest v2.6.8+incompatible // indirect github.com/sendgrid/sendgrid-go v3.10.0+incompatible // indirect - github.com/sirupsen/logrus v1.9.0 // indirect + github.com/sirupsen/logrus v1.8.1 // indirect github.com/spf13/afero v1.9.2 // indirect github.com/spf13/cast v1.4.1 // indirect github.com/spf13/jwalterweatherman v1.1.0 // indirect @@ -173,24 +174,23 @@ require ( github.com/stretchr/testify v1.8.4 // indirect github.com/subosito/gotenv v1.2.0 // indirect go.opencensus.io v0.24.0 // indirect - go.uber.org/multierr v1.11.0 // indirect - go.uber.org/zap v1.25.0 // indirect + go.uber.org/atomic v1.9.0 // indirect + go.uber.org/multierr v1.8.0 // indirect + go.uber.org/zap v1.21.0 // indirect golang.org/x/crypto v0.13.0 // indirect golang.org/x/exp v0.0.0-20231005195138-3e424a577f31 // indirect golang.org/x/net v0.15.0 // indirect - golang.org/x/oauth2 v0.8.0 // indirect + golang.org/x/oauth2 v0.7.0 // indirect golang.org/x/sys v0.12.0 // indirect golang.org/x/term v0.12.0 // indirect golang.org/x/text v0.13.0 // indirect golang.org/x/time v0.3.0 // indirect golang.org/x/tools v0.13.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect - gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect + gomodules.xyz/jsonpatch/v2 v2.2.0 // indirect google.golang.org/api v0.114.0 // indirect google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 // indirect + google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 // indirect google.golang.org/grpc v1.56.1 // indirect google.golang.org/protobuf v1.30.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect @@ -204,13 +204,13 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect gorm.io/driver/sqlite v1.1.1 // indirect gorm.io/gorm v1.24.1-0.20221019064659-5dd2bb482755 // indirect - k8s.io/api v0.28.2 // indirect - k8s.io/apiextensions-apiserver v0.28.0 // indirect - k8s.io/apimachinery v0.28.2 // indirect - k8s.io/component-base v0.28.1 // indirect - k8s.io/klog/v2 v2.100.1 // indirect - k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f // indirect - k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 // indirect + k8s.io/api v0.24.1 // indirect + k8s.io/apiextensions-apiserver v0.24.1 // indirect + k8s.io/apimachinery v0.24.1 // indirect + k8s.io/component-base v0.24.1 // indirect + k8s.io/klog/v2 v2.90.1 // indirect + k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f // indirect + k8s.io/utils v0.0.0-20230209194617-a36077c30491 // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect sigs.k8s.io/yaml v1.3.0 // indirect @@ -224,11 +224,5 @@ replace ( github.com/flyteorg/flyte/flyteplugins => ./flyteplugins github.com/flyteorg/flyte/flytepropeller => ./flytepropeller github.com/flyteorg/flyte/flytestdlib => ./flytestdlib - github.com/google/gnostic-models => github.com/google/gnostic-models v0.6.8 github.com/robfig/cron/v3 => github.com/unionai/cron/v3 v3.0.2-0.20220915080349-5790c370e63a - k8s.io/api => k8s.io/api v0.28.2 - k8s.io/apimachinery => k8s.io/apimachinery v0.28.2 - k8s.io/client-go => k8s.io/client-go v0.28.2 - k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f - sigs.k8s.io/controller-runtime => sigs.k8s.io/controller-runtime v0.16.2 ) diff --git a/go.sum b/go.sum index dea1b15e15..edc4408994 100644 --- a/go.sum +++ b/go.sum @@ -20,6 +20,9 @@ cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHOb cloud.google.com/go v0.72.0/go.mod h1:M+5Vjvlc2wnp6tjzE102Dw08nGShTscUx2nZMufOKPI= cloud.google.com/go v0.74.0/go.mod h1:VV1xSbzvo+9QJOxLDaJfTjx5e+MePCpCWwvftOeQmWk= cloud.google.com/go v0.75.0/go.mod h1:VGuuCn7PG0dwsd5XPVm2Mm3wlh3EL55/79EKB6hlPTY= +cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= +cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= +cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= cloud.google.com/go v0.110.0 h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys= cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= @@ -34,6 +37,7 @@ cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGB cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= +cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk= cloud.google.com/go/iam v0.13.0 h1:+CmB+K0J/33d0zSQ9SlFWUeCCEn5XJA0ZMZ3pHE9u8k= cloud.google.com/go/iam v0.13.0/go.mod h1:ljOg+rcNfzZ5d6f1nAUJ8ZIxOaZUVoS14bKCtaLZ/D0= cloud.google.com/go/kms v1.10.1 h1:7hm1bRqGCA1GBRQUrp831TwJ9TWhP+tvLuP497CQS2g= @@ -51,8 +55,8 @@ cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohl cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= -cloud.google.com/go/storage v1.29.0 h1:6weCgzRvMg7lzuUurI4697AqIRPU1SvzHhynwpW31jI= -cloud.google.com/go/storage v1.29.0/go.mod h1:4puEjyTKnku6gfKoTfNOU/W+a9JyuVNxjpS5GBrB8h4= +cloud.google.com/go/storage v1.28.1 h1:F5QDG5ChchaAVQhINh24U99OWHURqrW8OmQcGKXcbgI= +cloud.google.com/go/storage v1.28.1/go.mod h1:Qnisd4CqDdo6BGs2AD5LLnEsmSQ80wQ5ogcBBKhU86Y= contrib.go.opencensus.io/exporter/stackdriver v0.13.1/go.mod h1:z2tyTZtPmQ2HvWH4cOmVDgtY+1lomfKdbLnkJvZdc8c= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= github.com/Azure/azure-sdk-for-go v63.4.0+incompatible h1:fle3M5Q7vr8auaiPffKyUQmLbvYeqpw30bKU6PrWJFo= @@ -65,20 +69,30 @@ github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.2/go.mod h1:CdSJQNNzZhCkwDaV github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0 h1:0nJeKDmB7a1a8RDMjTltahlPsaNlWjq/LpkZleSwINk= github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v0.4.0/go.mod h1:mbwxKc/fW+IkF0GG591MuXw0KuEQBDkeRoZ9vmVJPxg= github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.9.0/go.mod h1:xyHB1BMZT0cuDHU7I0+g046+BFDTQ8rEZB0s4Yfa6bI= +github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= github.com/Azure/go-autorest/autorest v0.11.27 h1:F3R3q42aWytozkV8ihzcgMO4OA4cuqr3bNlsEuF6//A= github.com/Azure/go-autorest/autorest v0.11.27/go.mod h1:7l8ybrIdUmGqZMTD0sRtAr8NvbHjfofbf8RSP2q7w7U= +github.com/Azure/go-autorest/autorest/adal v0.5.0/go.mod h1:8Z9fGy2MpX0PvDjB1pEgQTmVqjGhiHBW7RJJEciWzS0= +github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= github.com/Azure/go-autorest/autorest/adal v0.9.18 h1:kLnPsRjzZZUF3K5REu/Kc+qMQrvuza2bwSnNdhmzLfQ= github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= +github.com/Azure/go-autorest/autorest/date v0.1.0/go.mod h1:plvfp3oPSKwf2DNjlBjWF/7vwR+cUD/ELuzDCXwHUVA= github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= +github.com/Azure/go-autorest/autorest/mocks v0.1.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0= +github.com/Azure/go-autorest/autorest/mocks v0.2.0/go.mod h1:OTyCOPRA2IgIlWxVYxBee2F5Gr4kF2zd2J5cFRaIDN0= github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= github.com/Azure/go-autorest/autorest/mocks v0.4.2 h1:PGN4EDXnuQbojHbU0UWoNvmu9AGVwYHG9/fkDYhtAfw= github.com/Azure/go-autorest/autorest/mocks v0.4.2/go.mod h1:Vy7OitM9Kei0i1Oj+LvyAWMXJHeKH1MVlzFugfVrmyU= github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= +github.com/Azure/go-autorest/logger v0.1.0/go.mod h1:oExouG+K6PryycPJfVSxi/koC6LSNgds39diKLz7Vrc= github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg= github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/tracing v0.5.0/go.mod h1:r/s2XiOKccPW3HrqB+W0TQzfbtp2fGCgRFtBroKn4Dk= github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo= github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= github.com/AzureAD/microsoft-authentication-library-for-go v0.4.0 h1:WVsrXCnHlDDX8ls+tootqRE87/hL9S/g4ewig9RsD/c= @@ -90,8 +104,10 @@ github.com/DataDog/datadog-go v4.0.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3 github.com/DataDog/opencensus-go-exporter-datadog v0.0.0-20191210083620-6965a1cfed68/go.mod h1:gMGUEe16aZh0QN941HgDjwrdjU4iTthPoz2/AtDRADE= github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625 h1:cQyO5JQ2iuHnEcF3v24kdDMsgh04RjyFPDtuvD6PCE0= github.com/GoogleCloudPlatform/spark-on-k8s-operator v0.0.0-20200723154620-6f35a1152625/go.mod h1:6PnrZv6zUDkrNMw0mIoGRmGBR7i9LulhKPmxFq4rUiM= -github.com/Masterminds/semver v1.4.2 h1:WBLTQ37jOCzSLtXNdoo8bNM8876KhNqOKvrlGITgsTc= +github.com/Jeffail/gabs/v2 v2.5.1/go.mod h1:xCn81vdHKxFUuWWAaD5jCTQDNPBMh5pPs9IJ+NcziBI= github.com/Masterminds/semver v1.4.2/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= +github.com/Masterminds/semver v1.5.0 h1:H65muMkzWKEuNDnfl9d70GUjFniHKHRbFPGBuZ3QEww= +github.com/Masterminds/semver v1.5.0/go.mod h1:MB6lktGJrhw8PrUyiEoblNEGEQ+RzHPF078ddwwvV3Y= github.com/Masterminds/semver/v3 v3.0.3/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= github.com/Masterminds/semver/v3 v3.1.1 h1:hLg3sBzpNErnxhQtUy/mmLR2I9foDujNK030IGemrRc= github.com/Masterminds/semver/v3 v3.1.1/go.mod h1:VPu/7SZ7ePZ3QOrcuXROw5FAcLl4a0cBrbBpGY/8hQs= @@ -99,13 +115,17 @@ github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcy github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA= github.com/NYTimes/gizmo v1.3.6 h1:K+GRagPdAxojsT1TlTQlMkTeOmgfLxSdvuOhdki7GG0= github.com/NYTimes/gizmo v1.3.6/go.mod h1:8S8QVnITA40p/1jGsUMcPI8R9SSKkoKu+8WF13s9Uhw= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= +github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c= github.com/NYTimes/logrotate v1.0.0/go.mod h1:GxNz1cSw1c6t99PXoZlw+nm90H6cyQyrH66pjVv7x88= github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk= github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc= +github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= github.com/PuerkitoBio/purell v1.1.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= github.com/Selvatico/go-mocket v1.0.7 h1:sXuFMnMfVL9b/Os8rGXPgbOFbr4HJm8aHsulD/uMTUk= github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo= @@ -114,22 +134,37 @@ github.com/Shopify/sarama v1.26.4 h1:+17TxUq/PJEAfZAll0T7XJjSgQWCpaQSoki/x5yN8o8 github.com/Shopify/sarama v1.26.4/go.mod h1:NbSGBSSndYaIhRcBtY9V0U7AyH+x71bG668AuWys/yU= github.com/Shopify/toxiproxy v2.1.4+incompatible h1:TKdv8HiTLgE5wdJuEML90aBgNWsokNbMijUGhmcoBJc= github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= +github.com/adammck/venv v0.0.0-20160819025605-8a9c907a37d3/go.mod h1:3zXR2a/VSQndtpShh783rUTaEA2mpqN2VqZclBARBc0= +github.com/adammck/venv v0.0.0-20200610172036-e77789703e7c h1:RoL0r3mR3JSkLur8q8AD59cByJ+kRwJHODNimZBd7GI= +github.com/agnivade/levenshtein v1.0.1/go.mod h1:CURSv5d9Uaml+FovSIICkLbAUZ9S4RqaHDIsdSBg7lM= github.com/ajg/form v0.0.0-20160822230020-523a5da1a92f/go.mod h1:uL1WgH+h2mgNtvBq0339dVnzXdBETtL2LeUXaIv25UY= github.com/ajstarks/svgo v0.0.0-20180226025133-644b8db467af/go.mod h1:K08gAheRH3/J6wwsYMMT4xOr94bZjxIelGM0+d/wbFw= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= github.com/andybalholm/cascadia v1.1.0/go.mod h1:GsXiBklL0woXo1j/WYWtSYYC4ouU9PqHO0sqidkEA4Y= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/antlr/antlr4/runtime/Go/antlr v0.0.0-20210826220005-b48c857c3a0e/go.mod h1:F7bn7fEU90QkQ3tnmaTx3LTKLEDqnwWODIYppRQ5hnY= +github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= +github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= +github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= +github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/asaskevich/govalidator v0.0.0-20180720115003-f9ffefc3facf/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/asaskevich/govalidator v0.0.0-20200108200545-475eaeb16496/go.mod h1:oGkLhpf+kjZl6xBf758TQhh5XrAeiJv/7FRz/2spLIg= github.com/asaskevich/govalidator v0.0.0-20200428143746-21a406dcc535 h1:4daAzAu0S6Vi7/lbWECcX0j45yZReDZ56BQsrVBOEEY= github.com/asaskevich/govalidator v0.0.0-20200428143746-21a406dcc535/go.mod h1:oGkLhpf+kjZl6xBf758TQhh5XrAeiJv/7FRz/2spLIg= +github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d h1:O+ayl/Vp3bDEXReXItmYHzCnsz/LKusXdRNiJKVxjPs= +github.com/aws/amazon-sagemaker-operator-for-k8s v1.0.1-0.20210303003444-0fb33b1fd49d/go.mod h1:mZUP7GJmjiWtf8v3FD1X/QdK08BqyeH/1Ejt0qhNzCs= github.com/aws/aws-sdk-go v1.23.19/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.23.20/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.31.3/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= +github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-sdk-go v1.44.2 h1:5VBk5r06bgxgRKVaUtm1/4NT/rtrnH2E4cnAYv5zgQc= github.com/aws/aws-sdk-go v1.44.2/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go-v2 v1.0.0/go.mod h1:smfAbmpW+tcRVuNUjo3MOArSZmW72t62rkCzc2i0TWM= @@ -151,14 +186,19 @@ github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDy github.com/aws/smithy-go v1.0.0/go.mod h1:EzMw8dbp/YJL4A5/sbhGddag+NPT7q084agLbB9LgIw= github.com/aws/smithy-go v1.1.0 h1:D6CSsM3gdxaGaqXnPgOBCeL6Mophqzu7KJOu7zW78sU= github.com/aws/smithy-go v1.1.0/go.mod h1:EzMw8dbp/YJL4A5/sbhGddag+NPT7q084agLbB9LgIw= -github.com/benbjohnson/clock v1.3.0 h1:ip6w0uFQkncKQ979AypyG0ER7mqUSBdKLOgAle/AT8A= -github.com/benbjohnson/clock v1.3.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= +github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= +github.com/benbjohnson/clock v1.1.0 h1:Q92kusRqC1XV2MjkWETPvjJVqKetz1OzxZB7mHJLju8= +github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1 h1:VRtJdDi2lqc3MFwmouppm2jlm6icF+7H3WYKpLENMTo= github.com/benlaurie/objecthash v0.0.0-20180202135721-d1e3d6079fc1/go.mod h1:jvdWlw8vowVGnZqSDC7yhPd7AifQeQbRDkZcQXV2nRg= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bketelsen/crypt v0.0.3-0.20200106085610-5cbc8cc4026c/go.mod h1:MKsuJmJgSg28kpZDP6UIiPt0e0Oz0kqKNGyRaWEPv84= +github.com/blang/semver v3.5.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= github.com/bmatcuk/doublestar/v2 v2.0.3/go.mod h1:QMmcs3H2AUQICWhfzLXz+IYln8lRQmTZRptLie8RgRw= github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= github.com/bradfitz/gomemcache v0.0.0-20180710155616-bc664df96737/go.mod h1:PmM6Mmwb0LSuEubjR8N7PtNe1KxZLtOUHtbeikc5h60= @@ -168,8 +208,12 @@ github.com/cenkalti/backoff v2.1.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QH github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM= github.com/cenkalti/backoff/v3 v3.0.0/go.mod h1:cIeZDE3IrqwwJl6VUwCN6trj1oXrTS4rc0ij+ULvLYs= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= +github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927 h1:SKI1/fuSdodxmNNyVBR8d7X/HuLnRpvvFO0AgyQk764= @@ -187,11 +231,16 @@ github.com/cloudevents/sdk-go/v2 v2.8.0/go.mod h1:GpCBmUj7DIRiDhVvsK5d6WCbgTWs8D github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cockroachdb/apd v1.1.0 h1:3LFP3629v+1aKXU5Q37mxmRxX/pIu1nijXydLShEq5I= github.com/cockroachdb/apd v1.1.0/go.mod h1:8Sl8LxpKi29FqWXR16WEFZRNSz3SoPzUzeMeY4+DwBQ= github.com/cockroachdb/cockroach-go v0.0.0-20181001143604-e0a95dfd547c/go.mod h1:XGLbWH/ujMcbPbhZq52Nv6UrCghb1yGn//133kEsvDk= github.com/cockroachdb/cockroach-go v0.0.0-20190925194419-606b3d062051/go.mod h1:XGLbWH/ujMcbPbhZq52Nv6UrCghb1yGn//133kEsvDk= github.com/cockroachdb/cockroach-go v0.0.0-20200312223839-f565e4789405/go.mod h1:XGLbWH/ujMcbPbhZq52Nv6UrCghb1yGn//133kEsvDk= +github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= +github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo= +github.com/cockroachdb/errors v1.2.4/go.mod h1:rQD95gz6FARkaKkQXUksEje/d9a6wBJoCr5oaCLELYA= +github.com/cockroachdb/logtags v0.0.0-20190617123548-eb05cc24525f/go.mod h1:i/u985jwjWRlyHXQbwatDASoW0RMlZ/3i9yJHE2xLkI= github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI= github.com/codegangsta/negroni v1.0.0/go.mod h1:v0y3T5G7Y1UlFfyxFn/QLRU4a2EuNau2iZY63YTKWo0= github.com/containerd/containerd v1.4.3/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= @@ -202,18 +251,26 @@ github.com/coocood/freecache v1.1.1 h1:uukNF7QKCZEdZ9gAV7WQzvh0SbjwdMF6m3x3rxEka github.com/coocood/freecache v1.1.1/go.mod h1:OKrEjkGVoxZhyWAJoeFi5BMLUJm2Tit0kpGkIr7NGYY= github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/etcd v3.3.13+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk= +github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= github.com/coreos/go-oidc v2.2.1+incompatible h1:mh48q/BqXqgjVHpy2ZY7WnWAbenxRjsz9N1i1YxjHAk= github.com/coreos/go-oidc v2.2.1+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/coreos/pkg v0.0.0-20180108230652-97fdf19511ea/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/cpuguy83/go-md2man v1.0.10/go.mod h1:SmD6nW6nTyfqj6ABTjUi3V3JVMnlJmwcJI5acqYI6dE= github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/dask/dask-kubernetes/v2023 v2023.0.0-20230626103304-abd02cd17b26 h1:6RByIva89lKEvwIzNQSUNcu8NG1p1wwwC4mJfVk/kqw= github.com/dask/dask-kubernetes/v2023 v2023.0.0-20230626103304-abd02cd17b26/go.mod h1:OqIYr2QnxR3sQK2XahJIyWVcjz38LQ4GNcUzqezFpRg= @@ -237,10 +294,13 @@ github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8 github.com/dnaeon/go-vcr v1.1.0 h1:ReYa/UBrRyQdant9B4fNHGoCNKw6qh6P0fsdGmZpR7c= github.com/dnaeon/go-vcr v1.1.0/go.mod h1:M7tiix8f0r6mKKJ3Yq/kqU1OYf3MnfmBWVbPx/yU9ko= github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/docker v0.7.3-0.20190327010347-be7ac8be2ae0/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= github.com/docker/docker v17.12.0-ce-rc1.0.20201201034508-7d75c1d40d88+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v0.0.0-20180713052910-9f541cc9db5d/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= @@ -253,7 +313,10 @@ github.com/eapache/queue v1.1.0 h1:YOEu7KNc61ntiQlcEeUIoDTJ2o8mQznoNvUhiigpIqc= github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I= github.com/elastic/go-sysinfo v1.1.1/go.mod h1:i1ZYdU10oLNfRzq4vq62BEwD2fH8KaWh6eh0ikPT9F0= github.com/elastic/go-windows v1.0.0/go.mod h1:TsU0Nrp7/y3+VwE82FoZF8gC/XFg/Elz6CcloAxnPgU= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= github.com/elazarl/goproxy v0.0.0-20181003060214-f58a169a71a5/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= github.com/emicklei/go-restful/v3 v3.9.0 h1:XwGDlfxEnQZzuopoqxwSEllNcCOM9DhhFyhFIIGKwxE= github.com/emicklei/go-restful/v3 v3.9.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/envoyproxy/go-control-plane v0.6.9/go.mod h1:SBwIajubJHhxtWwsL9s8ss4safvEdbitLhGGK48rN6g= @@ -262,24 +325,30 @@ github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.m github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U= -github.com/evanphx/json-patch v5.6.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch/v5 v5.6.0 h1:b91NhWfaz02IuVxO9faSllyAtNXHMPkC5J8sJCLunww= -github.com/evanphx/json-patch/v5 v5.6.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= +github.com/evanphx/json-patch v0.0.0-20200808040245-162e5629780b/go.mod h1:NAJj0yf/KaRKURN6nyi7A9IZydMivZEm9oQLWNjfKDc= +github.com/evanphx/json-patch v0.5.2/go.mod h1:ZWS5hhDbVDyob71nXKNL0+PWn6ToqBHMikGIFbs31qQ= +github.com/evanphx/json-patch v4.2.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.5.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84= +github.com/evanphx/json-patch v4.12.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= github.com/fatih/structs v1.0.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= +github.com/felixge/httpsnoop v1.0.1 h1:lvB5Jl89CsZtGIWuTcDM1E/vkVs49/Ml7JJe07l8SPQ= github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/felixge/httpsnoop v1.0.3 h1:s/nj+GCswXYzN5v2DpNMuMQYe+0DDwt5WVCU6CWBdXk= -github.com/felixge/httpsnoop v1.0.3/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/flyteorg/stow v0.3.7 h1:Cx7j8/Ux6+toD5hp5fy++927V+yAcAttDeQAlUD/864= github.com/flyteorg/stow v0.3.7/go.mod h1:5dfBitPM004dwaZdoVylVjxFT4GWAgI0ghAndhNUzCo= github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/fortytw2/leaktest v1.3.0 h1:u8491cBMTQ8ft8aeV+adlcytMZylmA5nnwwkRZjI8vw= github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g= github.com/frankban/quicktest v1.4.1/go.mod h1:36zfPVQyHxymz4cH7wlDmVwDrJuljRB60qkgn7rorfQ= @@ -288,8 +357,11 @@ github.com/frankban/quicktest v1.10.0 h1:Gfh+GAJZOAoKZsIZeZbdn2JF10kN1XHNvjsvQK8 github.com/frankban/quicktest v1.10.0/go.mod h1:ui7WezCLWMWxVWr1GETZY3smRy0G4KWq9vcPtJmFl7Y= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= -github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= -github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= +github.com/fsnotify/fsnotify v1.5.1 h1:mZcQUHVQUQWoPXXtuf9yuEXKudkV2sx1E06UadKWpgI= +github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU= +github.com/getkin/kin-openapi v0.76.0/go.mod h1:660oXbgy5JFMKreazJaQTw7o+X00qeSyhcnluiMv+Xg= +github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ= +github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/globalsign/mgo v0.0.0-20180905125535-1ca0a4f7cbcb/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= @@ -306,10 +378,16 @@ github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vb github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= +github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v0.2.1/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= -github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/zapr v1.2.4 h1:QHVo+6stLbfJmYGkQ7uGHUCu5hnAFAj6mDe6Ea0SeOo= +github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0= +github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/zapr v0.1.0/go.mod h1:tabnROwaDl0UNxkVeFRbY8bwB37GwRv0P8lg6aAiEnk= +github.com/go-logr/zapr v0.2.0/go.mod h1:qhKdvif7YF5GI9NWEpyxTSSBdGmzkNguibrdCNVPunU= +github.com/go-logr/zapr v1.2.0 h1:n4JnPI1T3Qq1SFEi/F8rwLrZERp2bso19PJZDB9dayk= +github.com/go-logr/zapr v1.2.0/go.mod h1:Qa4Bsj2Vb+FAVeAKsLD8RLQ+YRJB8YDmOAKxaBQf7Ro= github.com/go-openapi/analysis v0.0.0-20180825180245-b006789cd277/go.mod h1:k70tL6pCuVxPJOHXQ+wIac1FUrvNkHolPie/cLEU6hI= github.com/go-openapi/analysis v0.17.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= github.com/go-openapi/analysis v0.18.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= @@ -323,29 +401,35 @@ github.com/go-openapi/errors v0.19.2/go.mod h1:qX0BLWsyaKfvhluLejVpVNwNRdXZhEbTA github.com/go-openapi/errors v0.19.3/go.mod h1:qX0BLWsyaKfvhluLejVpVNwNRdXZhEbTA4kxxpKBC94= github.com/go-openapi/errors v0.19.6/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= github.com/go-openapi/errors v0.20.0/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= github.com/go-openapi/jsonpointer v0.17.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= github.com/go-openapi/jsonpointer v0.18.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= +github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg= github.com/go-openapi/jsonreference v0.17.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= github.com/go-openapi/jsonreference v0.18.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= -github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= -github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= +github.com/go-openapi/jsonreference v0.20.1 h1:FBLnyygC4/IZZr893oiomc9XaghoveYTrLC1F86HID8= +github.com/go-openapi/jsonreference v0.20.1/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= github.com/go-openapi/loads v0.17.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= github.com/go-openapi/loads v0.18.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= github.com/go-openapi/loads v0.19.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= github.com/go-openapi/loads v0.19.2/go.mod h1:QAskZPMX5V0C2gvfkGZzJlINuP7Hx/4+ix5jWFxsNPs= github.com/go-openapi/loads v0.19.3/go.mod h1:YVfqhUCdahYwR3f3iiwQLhicVRvLlU/WO5WPaZvcvSI= +github.com/go-openapi/loads v0.19.4/go.mod h1:zZVHonKd8DXyxyw4yfnVjPzBjIQcLt0CCsn0N0ZrQsk= github.com/go-openapi/loads v0.19.5/go.mod h1:dswLCAdonkRufe/gSUC3gN8nTSaB9uaS2es0x5/IbjY= github.com/go-openapi/runtime v0.0.0-20180920151709-4f900dc2ade9/go.mod h1:6v9a6LTXWQCdL8k1AO3cvqx5OtZY/Y9wKTgaoP6YRfA= github.com/go-openapi/runtime v0.19.0/go.mod h1:OwNfisksmmaZse4+gpV3Ne9AyMOlP1lt4sK4FXt0O64= github.com/go-openapi/runtime v0.19.4/go.mod h1:X277bwSUBxVlCYR3r7xgZZGKVvBd/29gLDlFGtJ8NL4= github.com/go-openapi/runtime v0.19.15/go.mod h1:dhGWCTKRXlAfGnQG0ONViOZpjfg0m2gUt9nTQPQZuoo= github.com/go-openapi/runtime v0.19.26/go.mod h1:BvrQtn6iVb2QmiVXRsFAm6ZCAZBpbVKFfN6QWCp582M= +github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc= github.com/go-openapi/spec v0.17.0/go.mod h1:XkF/MOi14NmjsfZ8VtAKf8pIlbZzyoTvZsdfssdxcBI= github.com/go-openapi/spec v0.18.0/go.mod h1:XkF/MOi14NmjsfZ8VtAKf8pIlbZzyoTvZsdfssdxcBI= github.com/go-openapi/spec v0.19.2/go.mod h1:sCxk3jxKgioEJikev4fgkNmwS+3kuYdJtcsZsD5zxMY= @@ -359,17 +443,20 @@ github.com/go-openapi/strfmt v0.19.2/go.mod h1:0yX7dbo8mKIvc3XSKp7MNfxw4JytCfCD6 github.com/go-openapi/strfmt v0.19.3/go.mod h1:0yX7dbo8mKIvc3XSKp7MNfxw4JytCfCD6+bY1AVL9LU= github.com/go-openapi/strfmt v0.19.4/go.mod h1:eftuHTlB/dI8Uq8JJOyRlieZf+WkkxUuk0dgdHXr2Qk= github.com/go-openapi/strfmt v0.19.5/go.mod h1:eftuHTlB/dI8Uq8JJOyRlieZf+WkkxUuk0dgdHXr2Qk= +github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I= github.com/go-openapi/swag v0.17.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg= github.com/go-openapi/swag v0.18.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg= github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= github.com/go-openapi/swag v0.19.7/go.mod h1:ao+8BpOPyKdpQz3AOJfbeEVpLmWAvlT1IfTe5McPyhY= github.com/go-openapi/swag v0.19.9/go.mod h1:ao+8BpOPyKdpQz3AOJfbeEVpLmWAvlT1IfTe5McPyhY= +github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= github.com/go-openapi/validate v0.18.0/go.mod h1:Uh4HdOzKt19xGIGm1qHf/ofbX1YQ4Y+MYsct2VUrAJ4= github.com/go-openapi/validate v0.19.2/go.mod h1:1tRCw7m3jtI8eNWEEliiAqUIcBztB2KDnRCRMUi7GTA= github.com/go-openapi/validate v0.19.3/go.mod h1:90Vh6jjkTn+OT1Eefm0ZixWNFjhtOH7vS9k0lo6zwJo= +github.com/go-openapi/validate v0.19.5/go.mod h1:8DJv2CVJQ6kGNpFW6eV9N3JviE1C85nY1c2z52x1Gk4= github.com/go-openapi/validate v0.19.10/go.mod h1:RKEZTUWDkxKQxN2jDT7ZnZi2bhZlbNMAuKvKB+IaGx8= github.com/go-redis/redis v6.15.7+incompatible h1:3skhDh95XQMpnqeqNftPkQD9jL9e5e36z/1SUm6dy1U= github.com/go-redis/redis v6.15.7+incompatible/go.mod h1:NAIEuMOZ/fxfXJIrKDQDz8wamY7mA7PouImQ2Jvg6kA= @@ -378,7 +465,6 @@ github.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-sql-driver/mysql v1.7.0 h1:ueSltNNllEqE3qcWBTD0iQd3IpL/6U+mJxLkazJ7YPc= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-test/deep v1.0.7 h1:/VSMRlnY/JSyqxQUzQLKVMAskpY/NZKFA5j2P+0pP2M= github.com/go-test/deep v1.0.7/go.mod h1:QV8Hv/iy04NyLBxAdO9njL0iVPN1S4d/A3NVv1V36o8= github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0= @@ -631,6 +717,7 @@ github.com/gobuffalo/x v0.0.0-20181003152136-452098b06085/go.mod h1:WevpGD+5YOre github.com/gobuffalo/x v0.0.0-20181007152206-913e47c59ca7/go.mod h1:9rDPXaB3kXdKWzMc4odGQQdG2e2DIEmANy5aSJ9yesY= github.com/goccy/go-json v0.4.8 h1:TfwOxfSp8hXH+ivoOk36RyDNmXATUETRdaNWDaZglf8= github.com/goccy/go-json v0.4.8/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= +github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofrs/uuid v3.1.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gofrs/uuid v3.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= @@ -641,21 +728,24 @@ github.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFG github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang-jwt/jwt v3.2.1+incompatible h1:73Z+4BJcrTC+KczS6WvTPvRGOp1WmfEP4Q1lOd9Z/+c= github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= github.com/golang-jwt/jwt/v4 v4.2.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= -github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= -github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-jwt/jwt/v4 v4.4.1 h1:pC5DB52sCeK48Wlb9oPcdhnjkz1TKt1D/P7WKJ0kUcQ= +github.com/golang-jwt/jwt/v4 v4.4.1/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe h1:lXe2qZdvpiX5WZkZR4hgp4KJVfY3nMkvmwbVkpv1rVY= github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0= github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k= github.com/golang/gddo v0.0.0-20180828051604-96d2a289f41e/go.mod h1:xEhNfoBDX1hzLm2Nf80qUvZ2sVwoMZ8d6IE2SrsQfh4= github.com/golang/gddo v0.0.0-20190904175337-72a348e765d2/go.mod h1:xEhNfoBDX1hzLm2Nf80qUvZ2sVwoMZ8d6IE2SrsQfh4= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4= github.com/golang/glog v1.1.0 h1:/d3pCKDPWNnvIWe0vVUpNP32qc8U3PDVxySP/y360qE= github.com/golang/glog v1.1.0/go.mod h1:pfYeQZ3JWZoXTV5sFc986z3HTpwQs9At6P4ImfuP3NQ= +github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -669,8 +759,10 @@ github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= +github.com/golang/mock v1.5.0/go.mod h1:CWnOUgYIOo4TcNZ0wHX3YZCqsaM1I1Jvs6v3mP3KVu8= github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc= github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= +github.com/golang/protobuf v0.0.0-20161109072736-4bd1920723d7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.1.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= @@ -687,6 +779,8 @@ github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QD github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= @@ -695,8 +789,11 @@ github.com/golang/snappy v0.0.3 h1:fHPg5GQYlCeLIPB9BZqMVR5nR9A+IM5zcgeTdjMYmLA= github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= -github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= -github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= +github.com/google/btree v1.0.1/go.mod h1:xXMiIv4Fb/0kKde4SpL7qlzvu5cMJDRkFDxJfI9uaxA= +github.com/google/cel-go v0.10.1/go.mod h1:U7ayypeSkw23szu4GaQTPJGx66c20mx8JklMSxrmI1w= +github.com/google/cel-spec v0.6.0/go.mod h1:Nwjgxy5CbjlPrtCWjeDjUyKMl8w41YBYGjsyDdqk0xA= +github.com/google/gnostic v0.5.7-v3refs h1:FhTMOKj2VhjpouxvWJAV1TL304uMlb9zcDqkl6cEI54= +github.com/google/gnostic v0.5.7-v3refs/go.mod h1:73MKFl6jIHelAJNaBGFzt3SPtZULs9dYrGFt8OiIsHQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= @@ -712,6 +809,7 @@ github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-jsonnet v0.16.0/go.mod h1:sOcuej3UW1vpPTZOr8L7RQimqai1a57bt5j22LzGZCw= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no= @@ -729,7 +827,8 @@ github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20201023163331-3e6fc7fc9c4c/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 h1:K6RDEckDVWvDI9JAJYCmNdQXq6neHJOYx3V6jnqNEec= +github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -743,7 +842,11 @@ github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+ github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.7.1 h1:gF4c0zjUP2H/s/hEGyLA3I0fA2ZWjzYiONAD6cvPr8A= github.com/googleapis/gax-go/v2 v2.7.1/go.mod h1:4orTrqY6hXxxaUL4LHIPl6lGo8vAE38/qKbhSAKP6QI= +github.com/googleapis/gnostic v0.0.0-20170729233727-0c5108395e2d/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= +github.com/googleapis/gnostic v0.1.0/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= +github.com/googleapis/gnostic v0.3.1/go.mod h1:on+2t9HRStVgn95RSsFWFz+6Q0Snyqv1awfrALZdbtU= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= +github.com/gophercloud/gophercloud v0.1.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8= github.com/gopherjs/gopherjs v0.0.0-20181004151105-1babbf986f6f/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg= @@ -760,42 +863,62 @@ github.com/gorilla/securecookie v1.1.1 h1:miw7JPhV+b/lAHSXz4qd/nN9jRiAFV5FwjeKyC github.com/gorilla/securecookie v1.1.1/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4= github.com/gorilla/sessions v1.1.2/go.mod h1:8KCfur6+4Mqcc6S0FEfKuN15Vl5MgXW92AE8ovaJD0w= github.com/gorilla/sessions v1.1.3/go.mod h1:8KCfur6+4Mqcc6S0FEfKuN15Vl5MgXW92AE8ovaJD0w= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gotestyourself/gotestyourself v1.3.0/go.mod h1:zZKM6oeNM8k+FRljX1mnzVYeS8wiGgQyvST1/GafPbY= github.com/gotestyourself/gotestyourself v2.2.0+incompatible/go.mod h1:zZKM6oeNM8k+FRljX1mnzVYeS8wiGgQyvST1/GafPbY= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= github.com/grpc-ecosystem/go-grpc-middleware v1.2.0/go.mod h1:mJzapYve32yjrKlk9GbyCZHuPgZsrbyIbyKhSzOpg6s= github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 h1:+9834+KizmvFV7pXQGSXQTsaWhq2GjuNUt0aUU0YBYw= github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway v1.16.0 h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo= github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= github.com/gtank/cryptopasta v0.0.0-20170601214702-1f550f6f2f69 h1:7xsUJsB2NrdcttQPa7JLEaGzvdbk7KvfrjgHZXOQRo0= github.com/gtank/cryptopasta v0.0.0-20170601214702-1f550f6f2f69/go.mod h1:YLEMZOtU+AZ7dhN9T/IpGhXVGly2bvkJQ+zxj3WeVQo= +github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q= +github.com/hashicorp/consul/sdk v0.1.1/go.mod h1:VKf9jXwCTEY1QZP2MOLRhb5i/I/ssyNV1vwHyQBF0x8= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= +github.com/hashicorp/go-immutable-radix v1.0.0/go.mod h1:0y9vanUI8NX6FsYoO3zeMjhV/C5i9g4Q3DwcSNZ4P60= +github.com/hashicorp/go-msgpack v0.5.3/go.mod h1:ahLV/dePpqEmjfWmKiqvPkv/twdG7iPBM1vqhUKIvfM= +github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= github.com/hashicorp/go-retryablehttp v0.6.8/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= +github.com/hashicorp/go-rootcerts v1.0.0/go.mod h1:K6zTfqpRlCUIjkwsN4Z+hiSfzSTQa6eBIzfwKfwNnHU= +github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerXegt+ozgdvDeDU= +github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4= +github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/go-uuid v1.0.2 h1:cfejS+Tpcp13yd5nYHWDI6qVCny6wyX2Mt5SGur2IGE= github.com/hashicorp/go-uuid v1.0.2/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= +github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= +github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= +github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= +github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.9/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= +github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= -github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= -github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/inhies/go-bytesize v0.0.0-20201103132853-d0aed0d254f8/go.mod h1:KrtyD5PFj++GKkFS/7/RRrfnRhAMGQwy75GLCHWrCNs= github.com/jackc/chunkreader v1.0.0/go.mod h1:RT6O25fNZIuasFJRyZ4R/Y2BbhasbmZXF9QQ7T3kePo= github.com/jackc/chunkreader/v2 v2.0.0/go.mod h1:odVSm741yZoC3dpHEUXIqA9tQRhFrgOHwnPIn9lDKlk= @@ -894,10 +1017,15 @@ github.com/joho/godotenv v1.2.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqx github.com/joho/godotenv v1.3.0 h1:Zjp+RcGpHhGlrMbJzXTrZZPrWj+1vfm90La1wgB6Bhc= github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg= github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/jonboulle/clockwork v0.2.2/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= @@ -905,6 +1033,7 @@ github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/X github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= github.com/jung-kurt/gofpdf v1.0.3-0.20190309125859-24315acbbda5/go.mod h1:7Id9E/uU8ce6rXgefFLlgrJj/GYY22cpxn+r32jIOes= github.com/karrick/godirwalk v1.7.5/go.mod h1:2c9FRhkDxdIbgkOnCEvnSWs71Bhugbl46shStcFDJ34= github.com/karrick/godirwalk v1.7.7/go.mod h1:2c9FRhkDxdIbgkOnCEvnSWs71Bhugbl46shStcFDJ34= @@ -936,8 +1065,8 @@ github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1 h1:Fmg33tUaq4/8ym9TJN1x7sLJnHVwhP33CNkpYV/7rwI= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/pty v1.1.3/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= @@ -979,11 +1108,14 @@ github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czP github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60= +github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20180823135443-60711f1a8329/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= github.com/mailru/easyjson v0.7.1/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/markbates/deplist v1.0.4/go.mod h1:gRRbPbbuA8TmMiRvaOzUlRfzfjeCCBqX2A6arxN01MM= @@ -1016,6 +1148,7 @@ github.com/mattn/go-colorable v0.1.6/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= @@ -1023,9 +1156,9 @@ github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hd github.com/mattn/go-isatty v0.0.9/go.mod h1:YNRxwqDuOph6SZLI9vUUz6OYw3QyUt7WiY2yME+cCiQ= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= +github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= -github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ= -github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= +github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-sqlite3 v1.10.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/mattn/go-sqlite3 v1.11.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= @@ -1036,19 +1169,28 @@ github.com/mattn/goveralls v0.0.2/go.mod h1:8d1ZMHsd7fW6IRPKQh46F2WRpyib5/X4FOpe github.com/mattn/goveralls v0.0.6 h1:cr8Y0VMo/MnEZBjxNN/vh6G90SZ7IMb6lms1dzMoO+Y= github.com/mattn/goveralls v0.0.6/go.mod h1:h8b4ow6FxSPMQHF6o2ve3qsclnffZjYTNEKmLesRwqw= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= -github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 h1:I0XW9+e1XWDxdcEniV4rQAIOPUGDq67JSCiRCgGCZLI= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= github.com/microcosm-cc/bluemonday v1.0.1/go.mod h1:hsXNsILzKxV+sX77C5b8FSuKF00vh2OMYv+xgHpAMF4= github.com/microcosm-cc/bluemonday v1.0.2/go.mod h1:iVP4YcDBq+n/5fb23BhYFvIMq/leAFZyRl6bYmGDlGc= +github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= +github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= +github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS42BGNg= +github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= +github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.0.0/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.2.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.3.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/moby/spdystream v0.2.0/go.mod h1:f7i0iNDQJ059oMTcWxx8MA/zKFIuD/lY+0GqbN2Wy8c= github.com/moby/term v0.0.0-20200915141129-7f0af18e79f2/go.mod h1:TjQg8pa4iejrUrjiz0MCtMV38jdMNW4doKSiBrEvCQQ= +github.com/moby/term v0.0.0-20210619224110-3f7ff695adc6/go.mod h1:E2VnQOmVuvZB6UYnnDB0qG5Nq/1tD9acaOpo6xmt0Kw= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= @@ -1063,27 +1205,37 @@ github.com/monoculum/formam v0.0.0-20180901015400-4e68be1d79ba/go.mod h1:RKgILGE github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= github.com/moul/http2curl v0.0.0-20170919181001-9ac6cf4d929b/go.mod h1:8UbvGypXm98wA/IqH45anm5Y2Z6ep6O31QGOAZ3H0fQ= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/ncw/swift v1.0.53 h1:luHjjTNtekIEvHg5KdAFIBaH7bWfNkefwFnpDffSIks= github.com/ncw/swift v1.0.53/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= github.com/nicksnyder/go-i18n v1.10.0/go.mod h1:HrK7VCrbOvQoUAQ7Vpy7i87N7JZZZ7R2xBGjv0j365Q= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d/go.mod h1:YUTz3bUH2ZwIWBy3CJBeOBEugqcmXREj14T+iG/4k4U= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/oleiade/reflections v1.0.0/go.mod h1:RbATFBbKYkVdqmSFtx13Bb/tVhR0lgOBXunWTZKeL4w= github.com/oleiade/reflections v1.0.1 h1:D1XO3LVEYroYskEsoSiGItp9RUxG6jWnCVvrqH0HHQM= github.com/oleiade/reflections v1.0.1/go.mod h1:rdFxbxq4QXVZWj0F+e9jqjDkc7dbp97vkRixKo2JR60= +github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.9.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.10.3/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= -github.com/onsi/ginkgo/v2 v2.11.0 h1:WgqUCUt/lT6yXoQ8Wef0fsNn5cAuMK7+KT9UFRz2tcU= +github.com/onsi/ginkgo/v2 v2.1.4 h1:GNapqRSid3zijZ9H77KrgVG4/8KqiyRsxcSxe+7ApXY= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v1.4.1/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v1.4.2/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= @@ -1091,7 +1243,9 @@ github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1Cpa github.com/onsi/gomega v1.6.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= -github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= +github.com/onsi/gomega v1.8.1/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.19.0 h1:4ieX6qQjPP/BfC3mpsAtIGGlxTWPeA3Inl/7DtXw1tw= github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= @@ -1133,6 +1287,7 @@ github.com/ory/x v0.0.127/go.mod h1:FwUujfFuCj5d+xgLn4fGMYPnzriR5bdAIulFXMtnK0M= github.com/ory/x v0.0.214 h1:nz5ijvm5MVhYxWsQSuUrW1hj9F5QLZvPn/nLo5s06T4= github.com/ory/x v0.0.214/go.mod h1:aRl57gzyD4GF0HQCekovXhv0xTZgAgiht3o8eVhsm9Q= github.com/parnurzeal/gorequest v0.2.15/go.mod h1:3Kh2QUMJoqw3icWAecsyzkpY7UzRfDhbRdTjtNwNiUE= +github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= github.com/pborman/uuid v1.2.0 h1:J7Q5mO4ysT1dv8hyrUGHb9+ooztCXu1D8MY8DZYsu3g= github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= @@ -1144,6 +1299,7 @@ github.com/pelletier/go-toml v1.9.4 h1:tjENF6MfZAg8e4ZmZTeWaWiT2vXtsoO6+iuOjFhEC github.com/pelletier/go-toml v1.9.4/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.0.0-beta.8 h1:dy81yyLYJDwMTifq24Oi/IslOslRrDSb3jwDggjz3Z0= github.com/pelletier/go-toml/v2 v2.0.0-beta.8/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2/go.mod h1:iIss55rKnNBTvrwdmkUpLnDpZoAHvWaiq5+iMmen4AE= github.com/philhofer/fwd v1.0.0/go.mod h1:gk3iGcWd9+svBvR0sR+KPcfE+RNWozjowpeBVG3ZVNU= github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc= @@ -1163,30 +1319,40 @@ github.com/pkg/sftp v1.10.1/go.mod h1:lYOWFsE0bwd1+KfKJaKeuokY15vzFx25BLbzYYoAxZ github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= +github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= github.com/pquerna/cachecontrol v0.0.0-20201205024021-ac21108117ac h1:jWKYCNlX4J5s8M0nHYkh7Y7c9gRVDEb3mq51j5J0F5M= github.com/pquerna/cachecontrol v0.0.0-20201205024021-ac21108117ac/go.mod h1:hoLfEwdY11HjRfKFH6KqnPsfxlo3BP6bJehpDv8t6sQ= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso= github.com/prometheus/client_golang v0.9.4/go.mod h1:oCXIBxdI62A4cR6aTRJCgetEjecSIYzOEaeAn4iYEpM= -github.com/prometheus/client_golang v1.16.0 h1:yk/hx9hDbrGHovbci4BY+pRMfSuuat626eFsHb7tmT8= -github.com/prometheus/client_golang v1.16.0/go.mod h1:Zsulrv/L9oM40tJ7T815tM89lFEugiJ9HzIqaAx4LKc= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_golang v1.12.1 h1:ZiaPsmm9uiBeaSMRznKsCDNtPCS0T3JVDGF+06gjBzk= +github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.4.0 h1:5lQXD3cAg1OXBf4Wq03gTrXHeaV0TQvGfUooCfx1yqY= -github.com/prometheus/client_model v0.4.0/go.mod h1:oMQmHW1/JoDwqLtg57MGgP/Fb1CJEYF2imWWhWtMkYU= +github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M= +github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.44.0 h1:+5BrQJwiBB9xsMygAB3TNvpQKOwlkc25LbISbrdOOfY= -github.com/prometheus/common v0.44.0/go.mod h1:ofAIvZbQ1e/nugmZGz4/qCb9Ap1VoSTIO7x0VV9VvuY= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= +github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4= +github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.0-20190425082905-87a4384529e0/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= -github.com/prometheus/procfs v0.10.1 h1:kYK1Va/YMlutzCGazswoHKo//tZVlFpKYh+PymziUAg= -github.com/prometheus/procfs v0.10.1/go.mod h1:nwNm2aOCAYw8uTR/9bWRREkZFxAUcWzPHWJq+XBB/FM= +github.com/prometheus/procfs v0.0.11/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.7.3 h1:4jVXhlkAyzOScmCkXBTOLRLTz8EeU+eyjrwB/EPq0VU= +github.com/prometheus/procfs v0.7.3/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c h1:eEqXhtlsUVt798HNUEbdQsMRZSjHSOF5Ilsywuhlgfc= github.com/ray-project/kuberay/ray-operator v0.0.0-20220728052838-eaa75fa6707c/go.mod h1:uLBlYqsCS2nsKiVlxJxI5EVgq8CrqNeHDP5uq3hde+c= @@ -1205,7 +1371,6 @@ github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFR github.com/rogpeppe/go-internal v1.3.2/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.4.0/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.5.2/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= github.com/rs/cors v1.6.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU= github.com/rs/xid v1.2.1/go.mod h1:+uKXf+4Djp6Md1KODXJxgGQPKngRmWyn10oCKFzNHOQ= github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OKkWU= @@ -1214,9 +1379,11 @@ github.com/rubenv/sql-migrate v0.0.0-20190212093014-1007f53448d7/go.mod h1:WS0rl github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/santhosh-tekuri/jsonschema v1.2.4/go.mod h1:TEAUOeZSmIxTTuHatJzrvARHiuO9LYd+cIxzgEHCQI4= github.com/santhosh-tekuri/jsonschema/v2 v2.1.0/go.mod h1:yzJzKUGV4RbWqWIBBP4wSOBqavX5saE02yirLS0OTyg= github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= +github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/seatgeek/logrus-gelf-formatter v0.0.0-20210219220335-367fa274be2c/go.mod h1:/THDZYi7F/BsVEcYzYPqdcWFQ+1C2InkawTKfLOAnzg= github.com/segmentio/analytics-go v3.0.1+incompatible/go.mod h1:C7CYBtQWk4vRk2RyLu0qOcbHJ18E3F1HV2C/8JvKN48= github.com/segmentio/analytics-go v3.1.0+incompatible/go.mod h1:C7CYBtQWk4vRk2RyLu0qOcbHJ18E3F1HV2C/8JvKN48= @@ -1254,12 +1421,14 @@ github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMB github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= github.com/sirupsen/logrus v1.5.0/go.mod h1:+F7Ogzej0PZc/94MaYx/nvG9jOFMD2osvC3s+Squfpo= github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= -github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= -github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= github.com/smartystreets/goconvey v0.0.0-20180222194500-ef6db91d284a/go.mod h1:XDJAKZRPZ1CvBcN2aX5YOUTYGHki24fSF0Iv48Ibg0s= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/soheilhy/cmux v0.1.5/go.mod h1:T7TcVDs9LWfQgPlPsdngu6I6QIoyIFZDDC6sNE1GqG0= github.com/sourcegraph/annotate v0.0.0-20160123013949-f4cad6c6324d/go.mod h1:UdhH50NIW0fCiwBSr0co2m7BnFLdv4fQTgdqdJTHFeE= github.com/sourcegraph/syntaxhighlight v0.0.0-20170531221838-bd320f5d308e/go.mod h1:HuIsMU8RRBOtsCgI77wP899iHVBQpCmg4ErYMZB+2IA= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72 h1:qLC7fQah7D6K1B0ujays3HV9gkFtllcxhzImRR7ArPQ= @@ -1268,6 +1437,7 @@ github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B github.com/spf13/afero v1.2.0/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= github.com/spf13/afero v1.3.2/go.mod h1:5KUK8ByomD5Ti5Artl0RtHeI5pTF7MIDuXL3yY520V4= +github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z93I= github.com/spf13/afero v1.9.2 h1:j49Hj62F0n+DaZ1dDCvhABaPNSGNkt32oRFxI33IEMw= github.com/spf13/afero v1.9.2/go.mod h1:iUV7ddyEEZPO5gA3zD4fJt6iStLlL+Lg4m2cihcDf8Y= github.com/spf13/cast v1.2.0/go.mod h1:r2rcYCSwa1IExKTDiTfzaxqT2FNHs8hODu4LnUfgKEg= @@ -1282,12 +1452,15 @@ github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tL github.com/spf13/cobra v0.0.6/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= github.com/spf13/cobra v0.0.7/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= -github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= -github.com/spf13/cobra v1.7.0/go.mod h1:uLxZILRyS/50WlhOIKD7W6V5bgeIt+4sICxh6uRMrb0= +github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= +github.com/spf13/cobra v1.4.0 h1:y+wJpx64xcgO1V+RcnwW0LEHxTKRi2ZDPSBjWnrg88Q= +github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= +github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.2/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= @@ -1296,10 +1469,12 @@ github.com/spf13/viper v1.2.1/go.mod h1:P4AexN0a+C9tGAnUFNwDMYYZv3pjFuvmeiMyKRaN github.com/spf13/viper v1.3.1/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE= +github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= github.com/spf13/viper v1.11.0 h1:7OX/1FS6n7jHD1zGrZTM7WtY13ZELRyosK4k93oPr44= github.com/spf13/viper v1.11.0/go.mod h1:djo0X/bA5+tYVoCn+C7cAYJGcVn/qYLFTG8gdUsX7Zk= github.com/sqs/goreturns v0.0.0-20181028201513-538ac6014518/go.mod h1:CKI4AZ4XmGV240rTHfO0hfE83S6/a3/Q1siZJ/vXf7A= github.com/square/go-jose/v3 v3.0.0-20200630053402-0a67ce9b0693/go.mod h1:6hSY48PjDm4UObWmGLyJE9DxYVKTgR9kbCspXXJEhcU= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/streadway/amqp v0.0.0-20190404075320-75d898a42a94/go.mod h1:AZpEONHx3DKn8O/DFsRAY58/XVQiIPMTMB1SddzLXVw= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= @@ -1332,7 +1507,9 @@ github.com/tidwall/pretty v1.1.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhV github.com/tidwall/sjson v1.0.4/go.mod h1:bURseu1nuBkFpIES5cz6zBtjmYeOQmEESshn7VpF15Y= github.com/tidwall/sjson v1.1.5/go.mod h1:VuJzsZnTowhSxWdOgsAnb886i4AjEyTkk7tNtsL7EYE= github.com/tinylib/msgp v1.1.2/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20201229170055-e5319fda7802/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= github.com/uber-go/atomic v1.3.2/go.mod h1:/Ct5t2lcmbJ4OSe/waGBoaVvVqtO0bmtfVNex1PFV8g= github.com/uber/jaeger-client-go v2.15.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-client-go v2.22.1+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= @@ -1344,9 +1521,11 @@ github.com/unionai/cron/v3 v3.0.2-0.20220915080349-5790c370e63a h1:pTbOzzOh94yt3 github.com/unionai/cron/v3 v3.0.2-0.20220915080349-5790c370e63a/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro= github.com/unrolled/secure v0.0.0-20180918153822-f340ee86eb8b/go.mod h1:mnPT77IAdsi/kV7+Es7y+pXALeV3h7G6dQF6mNYjcLA= github.com/unrolled/secure v0.0.0-20181005190816-ff9db2ff917f/go.mod h1:mnPT77IAdsi/kV7+Es7y+pXALeV3h7G6dQF6mNYjcLA= +github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= github.com/urfave/negroni v1.0.0/go.mod h1:Meg73S6kFm/4PpbYdq35yYWoCZ9mS/YSx+lKnmiohz4= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= +github.com/vektah/gqlparser v1.1.2/go.mod h1:1ycwN7Ij5njmMkPPAOaRFY4rET2Enx7IkVv3vaXspKw= github.com/xdg/scram v0.0.0-20180814205039-7eeb5667e42c/go.mod h1:lB8K/P019DLNhemzwFU4jHLhdvlE6uDZjXFejJXr49I= github.com/xdg/stringprep v0.0.0-20180714160509-73f8eece6fdc/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y= github.com/xdg/stringprep v1.0.0/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y= @@ -1359,6 +1538,7 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/zenazn/goji v0.9.0/go.mod h1:7S9M489iMyHBNxwZnk9/EHS098H4/F6TATF2mIxtB1Q= github.com/ziutek/mymysql v1.5.4/go.mod h1:LMSpPZ6DbqWFxNCHW77HeMg9I646SAhApZ/wKdgO/C0= go.elastic.co/apm v1.8.0/go.mod h1:tCw6CkOJgkWnzEthFN9HUP1uL3Gjc/Ur6m7gRPLaoH0= @@ -1366,8 +1546,22 @@ go.elastic.co/apm/module/apmhttp v1.8.0/go.mod h1:9LPFlEON51/lRbnWDfqAWErihIiAFD go.elastic.co/apm/module/apmot v1.8.0/go.mod h1:Q5Xzabte8G/fkvDjr1jlDuOSUt9hkVWNZEHh6ZNaTjI= go.elastic.co/fastjson v1.0.0/go.mod h1:PmeUOMMtLHQr9ZS9J9owrAVg0FkaZDRZJEFTTGHtchs= go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= +go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg= +go.etcd.io/etcd/api/v3 v3.5.0/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/api/v3 v3.5.1/go.mod h1:cbVKeC6lCfl7j/8jBhAK6aIYO9XOjdptoxU/nLQcPvs= +go.etcd.io/etcd/client/pkg/v3 v3.5.0/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/pkg/v3 v3.5.1/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= +go.etcd.io/etcd/client/v2 v2.305.0/go.mod h1:h9puh54ZTgAKtEbut2oe9P4L/oqKCVB6xsXlzd7alYQ= +go.etcd.io/etcd/client/v3 v3.5.0/go.mod h1:AIKXXVX/DQXtfTEqBryiLTUXwON+GuvO6Z7lLS/oTh0= +go.etcd.io/etcd/client/v3 v3.5.1/go.mod h1:OnjH4M8OnAotwaB2l9bVgZzRFKru7/ZMoS46OtKyd3Q= +go.etcd.io/etcd/pkg/v3 v3.5.0/go.mod h1:UzJGatBQ1lXChBkQF0AuAtkRQMYnHubxAEYIrC3MSsE= +go.etcd.io/etcd/raft/v3 v3.5.0/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= +go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4= go.mongodb.org/mongo-driver v1.0.3/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= go.mongodb.org/mongo-driver v1.1.1/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= +go.mongodb.org/mongo-driver v1.1.2/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= go.mongodb.org/mongo-driver v1.3.0/go.mod h1:MSWZXKOynuguX+JSvwP8i+58jYCXxbia8HS3gZBapIE= go.mongodb.org/mongo-driver v1.3.4/go.mod h1:MSWZXKOynuguX+JSvwP8i+58jYCXxbia8HS3gZBapIE= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= @@ -1377,31 +1571,54 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= go.opentelemetry.io/contrib v0.18.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= +go.opentelemetry.io/contrib v0.20.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.20.0/go.mod h1:oVGt1LRbBOBq1A5BQLlUg9UaU/54aiHw8cgjV3aWZ/E= go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.18.0/go.mod h1:iK1G0FgHurSJ/aYLg5LpnPI0pqdanM73S3dhyDp0Lk4= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.20.0/go.mod h1:2AboqHi0CiIZU0qwhtUfCYD1GeUzvvIXWNkhDt7ZMG4= go.opentelemetry.io/otel v0.18.0/go.mod h1:PT5zQj4lTsR1YeARt8YNKcFb88/c2IKoSABK9mX0r78= +go.opentelemetry.io/otel v0.20.0/go.mod h1:Y3ugLH2oa81t5QO+Lty+zXf8zC9L26ax4Nzoxm/dooo= +go.opentelemetry.io/otel/exporters/otlp v0.20.0/go.mod h1:YIieizyaN77rtLJra0buKiNBOm9XQfkPEKBeuhoMwAM= go.opentelemetry.io/otel/metric v0.18.0/go.mod h1:kEH2QtzAyBy3xDVQfGZKIcok4ZZFvd5xyKPfPcuK6pE= +go.opentelemetry.io/otel/metric v0.20.0/go.mod h1:598I5tYlH1vzBjn+BTuhzTCSb/9debfNp6R3s7Pr1eU= go.opentelemetry.io/otel/oteltest v0.18.0/go.mod h1:NyierCU3/G8DLTva7KRzGii2fdxdR89zXKH1bNWY7Bo= +go.opentelemetry.io/otel/oteltest v0.20.0/go.mod h1:L7bgKf9ZB7qCwT9Up7i9/pn0PWIa9FqQ2IQ8LoxiGnw= +go.opentelemetry.io/otel/sdk v0.20.0/go.mod h1:g/IcepuwNsoiX5Byy2nNV0ySUF1em498m7hBWC279Yc= +go.opentelemetry.io/otel/sdk/export/metric v0.20.0/go.mod h1:h7RBNMsDJ5pmI1zExLi+bJK+Dr8NQCh0qGhm1KDnNlE= +go.opentelemetry.io/otel/sdk/metric v0.20.0/go.mod h1:knxiS8Xd4E/N+ZqKmUPf3gTTZ4/0TjTXukfxjzSTpHE= go.opentelemetry.io/otel/trace v0.18.0/go.mod h1:FzdUu3BPwZSZebfQ1vl5/tAa8LyMLXSJN57AXIt/iDk= +go.opentelemetry.io/otel/trace v0.20.0/go.mod h1:6GjCW8zgDjwGHGa6GkyeB8+/5vjT16gUEi0Nf1iBdgw= +go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.5.1/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= -go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A= +go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE= +go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= +go.uber.org/goleak v1.1.12 h1:gZAh5/EyT/HQwlpkCy6wTpqfH9H8Lz8zbm3dZh+OyzA= go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4= go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= -go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= -go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= +go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= +go.uber.org/multierr v1.8.0 h1:dg6GjLku4EH+249NNmoIciG9N/jURbDG+pFlTkhzIC8= +go.uber.org/multierr v1.8.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak= go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= +go.uber.org/zap v1.8.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.9.1/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= -go.uber.org/zap v1.25.0 h1:4Hvk6GtkucQ790dqmj7l1eEnRdKm3k3ZUrUMS2d5+5c= -go.uber.org/zap v1.25.0/go.mod h1:JIAUzQIH94IC4fOJQm7gMmBJP5k7wQfdcnYdPoEXJYk= +go.uber.org/zap v1.15.0/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= +go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= +go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= +go.uber.org/zap v1.21.0 h1:WefMeulhovoZ2sYXz7st6K0sLj7bBhpiFaud4r4zST8= +go.uber.org/zap v1.21.0/go.mod h1:wjWOCqI0f2ZZrJF/UufIOkiC8ii6tm1iqIsLo76RfJw= golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180830192347-182538f80094/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= @@ -1412,12 +1629,14 @@ golang.org/x/crypto v0.0.0-20181015023909-0c41d7ab0a0e/go.mod h1:6SG95UA2DQfeDnf golang.org/x/crypto v0.0.0-20181024171144-74cb1d3d52f4/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181025113841-85e1b3f9139a/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181025213731-e84da0312774/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181106171534-e4dc69e5b2fd/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181112202954-3d3f9f413869/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181127143415-eb0de9b17e85/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190102171810-8d7daa0c54b3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190103213133-ff983b9c42bc/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190320223903-b7391e95e576/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= @@ -1437,10 +1656,12 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20191122220453-ac88ee75c92c/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200117160349-530e935923ad/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200204104054-c9f3fb736b72/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200220183623-bac4c82f6975/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200320181102-891825fb96df/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200510223506-06a226fb4e37/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20201217014255-9d1352758620/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= @@ -1449,6 +1670,7 @@ golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5y golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.13.0 h1:mvySKfSWJ+UKUii46M40LOvyWfN0s2U+46/jDd0e6Ck= golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= @@ -1482,6 +1704,7 @@ golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRu golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= @@ -1493,7 +1716,9 @@ golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc= +golang.org/x/net v0.0.0-20170114055629-f2499483f923/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180816102801-aaf60122140d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1508,6 +1733,7 @@ golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73r golang.org/x/net v0.0.0-20181102091132-c10e9556a7bc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181106065722-10aee1819953/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181207154023-610586996380/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1527,6 +1753,7 @@ golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191003171128-d98b1b443823/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -1538,6 +1765,7 @@ golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/ golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200602114024-627f9648deb9/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= @@ -1547,10 +1775,16 @@ golang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwY golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.15.0 h1:ugBLEUaxABaB5AJqW9enI0ACdci2RUd4eP51NTBvuJ8= @@ -1565,8 +1799,12 @@ golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.8.0 h1:6dkIjl3j3LtZ/O3sTgZTMsLKSftL/B8Zgq4huOIIUu8= -golang.org/x/oauth2 v0.8.0/go.mod h1:yr7u4HXZRm1R1kBWqr/xKNqewf0plRYoB7sla+BCIXE= +golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.7.0 h1:qe6s0zUXlPX80/dITx3440hWZ7GwMwgDDyrSGTPJG/g= +golang.org/x/oauth2 v0.7.0/go.mod h1:hPLQkd9LyjfXTiRohC/41GhcFqxisoUQ99sCUOHO9x4= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -1581,7 +1819,9 @@ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E= golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= +golang.org/x/sys v0.0.0-20170830134202-bb24a47a89ea/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180816055513-1c9583448a9c/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180831094639-fa5fdf94c789/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1603,6 +1843,7 @@ golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20181206074257-70b957f3b65e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190102155601-82a175fd1598/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190116161447-11f53e031339/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1621,13 +1862,17 @@ golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191025021431-6c3a3bfe00ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191105231009-c1f44814a5cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200121082415-34d275377bf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1642,28 +1887,41 @@ golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200602225109-6fdc65e7d980/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200831180312-196b9ba8737a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210104204734-6f8348627aad/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210315160823-c6e025ad8005/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210320140829-1e4c9ba3b0c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210403161142-5e06dd20ab57/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210831042530-f4d43177bf5e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220209214540-3681064d5158/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0 h1:CM0HF96J0hcLAwsHPJZjfdNzs0gftsLfgKt57wWHJ0o= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= @@ -1671,20 +1929,25 @@ golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9sn golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.12.0 h1:/ZfYdc3zq+q02Rv9vGqTeSItdzZTSNDmfTi0mBAuidU= golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= +golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1693,6 +1956,7 @@ golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGm golang.org/x/tools v0.0.0-20181003024731-2f84ea8ef872/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181006002542-f60d9635b16a/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181008205924-a2b3f7f249e9/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181013182035-5e66757b835f/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181017214349-06f26fdaaa28/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20181024171208-a2dc47679d30/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1714,6 +1978,7 @@ golang.org/x/tools v0.0.0-20190104182027-498d95493402/go.mod h1:n7NCudcB/nEzxVGm golang.org/x/tools v0.0.0-20190111214448-fc1d57b08d7b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190118193359-16909d206f00/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190125232054-d66bd3c5d5a6/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190206041539-40960b6deb8e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= @@ -1740,11 +2005,14 @@ golang.org/x/tools v0.0.0-20190711191110-9a621aea19f8/go.mod h1:jcCCGcm9btYwXyDq golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190823170909-c4a336ef6a2f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20190920225731-5eefd052ad72/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191004055002-72853e10c5a3/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191010075000-0337d82405ff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191112195655-aa38f8e97acc/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -1769,6 +2037,7 @@ golang.org/x/tools v0.0.0-20200308013534-11ec41452d41/go.mod h1:o4KQGtdN14AW+yjs golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20200522201501-cb1345f3a375/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= @@ -1788,6 +2057,9 @@ golang.org/x/tools v0.0.0-20210108195828-e2f9c7f1fc8e/go.mod h1:emZCQorbCU4vsT4f golang.org/x/tools v0.0.0-20210114065538-d78b04bdf963/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.1.10-0.20220218145154-897bd77cd717/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= golang.org/x/tools v0.13.0 h1:Iey4qkscZuv0VvIt8E0neZjtPVQFSc870HQ448QgEmQ= golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1798,8 +2070,9 @@ golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= -gomodules.xyz/jsonpatch/v2 v2.4.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= +gomodules.xyz/jsonpatch/v2 v2.0.1/go.mod h1:IhYNNY4jnS53ZnfE4PAmpKtDpTCj1JFXc+3mwe7XcUU= +gomodules.xyz/jsonpatch/v2 v2.2.0 h1:4pT439QV83L+G9FkcCriY6EkpcK6r6bK+A5FBUMI7qY= +gomodules.xyz/jsonpatch/v2 v2.2.0/go.mod h1:WXp+iVDkoLQqPudfQ9GBlwB2eZ5DKOnjQZCYdOS8GPY= gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= gonum.org/v1/gonum v0.6.2/go.mod h1:9mxDZsDKxgMAuccQkewq682L+0eCu4dCN2yonUJTCLU= gonum.org/v1/netlib v0.0.0-20190313105609-8cb42192e0e0/go.mod h1:wa6Ws7BG/ESfp6dHfk7C6KdzKA7wR7u/rKwOGE66zvw= @@ -1827,6 +2100,8 @@ google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz513 google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= +google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= +google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= google.golang.org/api v0.114.0 h1:1xQPji6cO2E2vLiI+C/XiFAnsn1WV3mjaEwGLhi3grE= google.golang.org/api v0.114.0/go.mod h1:ifYI2ZsFK6/uGddGfAD5BMxlnkBqCmqHSDUVi45N5Yg= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= @@ -1875,18 +2150,24 @@ google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20200806141610-86f49bd18e98/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20200904004341-0bd0a958aa1d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201019141844-1ed22bb0c154/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20201102152239-715cce707fb0/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201109203340-2640f1f9cdfb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 h1:9NWlQfY2ePejTmfwUH1OWwmznFa+0kKcHGPDvcPza9M= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 h1:m8v1xLLLzMe1m5P+gCTF8nJB9epwZQUBERm20Oy1poQ= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 h1:0nDDozoAU19Qb2HwhXadU8OcsiO/09cnTqhUtq2MEOM= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= +google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= +google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= +google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20220107163113-42d7afdf6368/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A= +google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1/go.mod h1:nKE/iIaLqn2bQwXBg8f1g2Ylh6r5MN5CmZvuzZCgsCU= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= @@ -1910,6 +2191,10 @@ google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= +google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= google.golang.org/grpc v1.56.1 h1:z0dNfjIl0VpaZ9iSVjA6daGatAYwPGstTjt5vkRMFkQ= google.golang.org/grpc v1.56.1/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= google.golang.org/grpc/examples v0.0.0-20210304020650-930c79186c99/go.mod h1:Ly7ZA/ARzg8fnPU9TyZIxoz33sEUuWX7txiqs8lPTgE= @@ -1925,6 +2210,7 @@ google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGj google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/DataDog/dd-trace-go.v1 v1.22.0/go.mod h1:DVp8HmDh8PuTu2Z0fVVlBsyWaC++fzwVCaGWylTe3tg= @@ -1938,6 +2224,7 @@ gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8 gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo= @@ -1965,6 +2252,7 @@ gopkg.in/jcmturner/gokrb5.v7 v7.5.0/go.mod h1:l8VISx+WGYp+Fp7KRbsiUuXTTOnxIc3Tuv gopkg.in/jcmturner/rpc.v1 v1.1.0 h1:QHIUxTX1ISuAv9dD2wJ9HWQVuWDX/Zc0PfeC2tjc4rU= gopkg.in/jcmturner/rpc.v1 v1.1.0/go.mod h1:YIdkC4XfD6GXbzje11McwsDuOlZQSb9W4vfLvuNnlv8= gopkg.in/mail.v2 v2.0.0-20180731213649-a0242b2233b4/go.mod h1:htwXN1Qh09vZJ1NVKxQqHPBaCBbzKhp5GzuJEA4VJWw= +gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= gopkg.in/square/go-jose.v2 v2.1.9/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= @@ -1978,14 +2266,17 @@ gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20190905181640-827449938966/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= @@ -2005,6 +2296,7 @@ gorm.io/gorm v1.24.1-0.20221019064659-5dd2bb482755/go.mod h1:DVrVomtaYTbqs7gB/x2 gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= +gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -2013,23 +2305,59 @@ honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= howett.net/plist v0.0.0-20181124034731-591f970eefbb/go.mod h1:vMygbs4qMhSZSc4lCUl2OEE+rDiIIJAIdR4m7MiMcm0= -k8s.io/api v0.28.2 h1:9mpl5mOb6vXZvqbQmankOfPIGiudghwCoLl1EYfUZbw= -k8s.io/api v0.28.2/go.mod h1:RVnJBsjU8tcMq7C3iaRSGMeaKt2TWEUXcpIt/90fjEg= -k8s.io/apiextensions-apiserver v0.28.0 h1:CszgmBL8CizEnj4sj7/PtLGey6Na3YgWyGCPONv7E9E= -k8s.io/apiextensions-apiserver v0.28.0/go.mod h1:uRdYiwIuu0SyqJKriKmqEN2jThIJPhVmOWETm8ud1VE= -k8s.io/apimachinery v0.28.2 h1:KCOJLrc6gu+wV1BYgwik4AF4vXOlVJPdiqn0yAWWwXQ= -k8s.io/apimachinery v0.28.2/go.mod h1:RdzF87y/ngqk9H4z3EL2Rppv5jj95vGS/HaFXrLDApU= -k8s.io/client-go v0.28.2 h1:DNoYI1vGq0slMBN/SWKMZMw0Rq+0EQW6/AK4v9+3VeY= -k8s.io/client-go v0.28.2/go.mod h1:sMkApowspLuc7omj1FOSUxSoqjr+d5Q0Yc0LOFnYFJY= -k8s.io/code-generator v0.28.0 h1:msdkRVJNVFgdiIJ8REl/d3cZsMB9HByFcWMmn13NyuE= -k8s.io/component-base v0.28.1 h1:LA4AujMlK2mr0tZbQDZkjWbdhTV5bRyEyAFe0TJxlWg= -k8s.io/component-base v0.28.1/go.mod h1:jI11OyhbX21Qtbav7JkhehyBsIRfnO8oEgoAR12ArIU= -k8s.io/klog/v2 v2.100.1 h1:7WCHKK6K8fNhTqfBhISHQ97KrnJNFZMcQvKp7gP/tmg= -k8s.io/klog/v2 v2.100.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f h1:eeEUOoGYWhOz7EyXqhlR2zHKNw2mNJ9vzJmub6YN6kk= -k8s.io/kube-openapi v0.0.0-20230905202853-d090da108d2f/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 h1:qY1Ad8PODbnymg2pRbkyMT/ylpTrCM8P2RJ0yroCyIk= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/api v0.18.2/go.mod h1:SJCWI7OLzhZSvbY7U8zwNl9UA4o1fizoug34OV/2r78= +k8s.io/api v0.18.6/go.mod h1:eeyxr+cwCjMdLAmr2W3RyDI0VvTawSg/3RFFBEnmZGI= +k8s.io/api v0.18.8/go.mod h1:d/CXqwWv+Z2XEG1LgceeDmHQwpUJhROPx16SlxJgERY= +k8s.io/api v0.24.1 h1:BjCMRDcyEYz03joa3K1+rbshwh1Ay6oB53+iUx2H8UY= +k8s.io/api v0.24.1/go.mod h1:JhoOvNiLXKTPQ60zh2g0ewpA+bnEYf5q44Flhquh4vQ= +k8s.io/apiextensions-apiserver v0.18.2/go.mod h1:q3faSnRGmYimiocj6cHQ1I3WpLqmDgJFlKL37fC4ZvY= +k8s.io/apiextensions-apiserver v0.18.6/go.mod h1:lv89S7fUysXjLZO7ke783xOwVTm6lKizADfvUM/SS/M= +k8s.io/apiextensions-apiserver v0.24.1 h1:5yBh9+ueTq/kfnHQZa0MAo6uNcPrtxPMpNQgorBaKS0= +k8s.io/apiextensions-apiserver v0.24.1/go.mod h1:A6MHfaLDGfjOc/We2nM7uewD5Oa/FnEbZ6cD7g2ca4Q= +k8s.io/apimachinery v0.18.2/go.mod h1:9SnR/e11v5IbyPCGbvJViimtJ0SwHG4nfZFjU77ftcA= +k8s.io/apimachinery v0.18.6/go.mod h1:OaXp26zu/5J7p0f92ASynJa1pZo06YlV9fG7BoWbCko= +k8s.io/apimachinery v0.18.8/go.mod h1:6sQd+iHEqmOtALqOFjSWp2KZ9F0wlU/nWm0ZgsYWMig= +k8s.io/apimachinery v0.24.1 h1:ShD4aDxTQKN5zNf8K1RQ2u98ELLdIW7jEnlO9uAMX/I= +k8s.io/apimachinery v0.24.1/go.mod h1:82Bi4sCzVBdpYjyI4jY6aHX+YCUchUIrZrXKedjd2UM= +k8s.io/apiserver v0.18.2/go.mod h1:Xbh066NqrZO8cbsoenCwyDJ1OSi8Ag8I2lezeHxzwzw= +k8s.io/apiserver v0.18.6/go.mod h1:Zt2XvTHuaZjBz6EFYzpp+X4hTmgWGy8AthNVnTdm3Wg= +k8s.io/apiserver v0.24.1/go.mod h1:dQWNMx15S8NqJMp0gpYfssyvhYnkilc1LpExd/dkLh0= +k8s.io/client-go v0.18.2/go.mod h1:Xcm5wVGXX9HAA2JJ2sSBUn3tCJ+4SVlCbl2MNNv+CIU= +k8s.io/client-go v0.18.6/go.mod h1:/fwtGLjYMS1MaM5oi+eXhKwG+1UHidUEXRh6cNsdO0Q= +k8s.io/client-go v0.18.8/go.mod h1:HqFqMllQ5NnQJNwjro9k5zMyfhZlOwpuTLVrxjkYSxU= +k8s.io/client-go v0.24.1 h1:w1hNdI9PFrzu3OlovVeTnf4oHDt+FJLd9Ndluvnb42E= +k8s.io/client-go v0.24.1/go.mod h1:f1kIDqcEYmwXS/vTbbhopMUbhKp2JhOeVTfxgaCIlF8= +k8s.io/code-generator v0.18.2/go.mod h1:+UHX5rSbxmR8kzS+FAv7um6dtYrZokQvjHpDSYRVkTc= +k8s.io/code-generator v0.18.6/go.mod h1:TgNEVx9hCyPGpdtCWA34olQYLkh3ok9ar7XfSsr8b6c= +k8s.io/code-generator v0.24.1 h1:zS+dvmUNaOcvsQ4faV9hXNjsKG9/pQaLnts1Wma4RM8= +k8s.io/code-generator v0.24.1/go.mod h1:dpVhs00hTuTdTY6jvVxvTFCk6gSMrtfRydbhZwHI15w= +k8s.io/component-base v0.18.2/go.mod h1:kqLlMuhJNHQ9lz8Z7V5bxUUtjFZnrypArGl58gmDfUM= +k8s.io/component-base v0.18.6/go.mod h1:knSVsibPR5K6EW2XOjEHik6sdU5nCvKMrzMt2D4In14= +k8s.io/component-base v0.24.1 h1:APv6W/YmfOWZfo+XJ1mZwep/f7g7Tpwvdbo9CQLDuts= +k8s.io/component-base v0.24.1/go.mod h1:DW5vQGYVCog8WYpNob3PMmmsY8A3L9QZNg4j/dV3s38= +k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20200114144118-36b2048a9120/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20210813121822-485abfe95c7c/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/gengo v0.0.0-20211129171323-c02415ce4185/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog v0.0.0-20181102134211-b9b56d5dfc92/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= +k8s.io/klog v0.3.0/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= +k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/klog/v2 v2.90.1 h1:m4bYOKall2MmOiRaR1J+We67Do7vm9KiQVlT96lnHUw= +k8s.io/klog/v2 v2.90.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20200121204235-bf4fb3bd569c/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E= +k8s.io/kube-openapi v0.0.0-20200410145947-61e04a5be9a6/go.mod h1:GRQhZsXIAJ1xR0C9bd8UpWHZ5plfAS9fzPjJuQ6JL3E= +k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk= +k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f h1:2kWPakN3i/k81b0gvD5C5FJ2kxm1WrQFanWchyKuqGg= +k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f/go.mod h1:byini6yhqGC14c3ebc/QwanvYwhuMWF6yz2F8uwW8eg= +k8s.io/utils v0.0.0-20200324210504-a9aa75ae1b89/go.mod h1:sZAwmy6armz5eXlNoLmJcl4F1QuKu7sr+mFQ0byX7Ew= +k8s.io/utils v0.0.0-20200603063816-c1c6865ac451/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +k8s.io/utils v0.0.0-20230209194617-a36077c30491 h1:r0BAOLElQnnFhE/ApUsg3iHdVYYPBjNSSOMowRZxxsY= +k8s.io/utils v0.0.0-20230209194617-a36077c30491/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= modernc.org/cc v1.0.0/go.mod h1:1Sk4//wdnYJiUIxnW8ddKpaOJCF37yAdqYnkxUpaYxw= modernc.org/golex v1.0.0/go.mod h1:b/QX9oBD/LhixY6NDh+IdGv17hgB+51fET1i2kPSmvk= modernc.org/mathutil v1.0.0/go.mod h1:wU0vUrJsVWBZ4P6e7xtFJEhFSNsfRLJ8H458uRjg03k= @@ -2039,11 +2367,22 @@ rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8 rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= -sigs.k8s.io/controller-runtime v0.16.2 h1:mwXAVuEk3EQf478PQwQ48zGOXvW27UJc8NHktQVuIPU= -sigs.k8s.io/controller-runtime v0.16.2/go.mod h1:vpMu3LpI5sYWtujJOa2uPK61nB5rbwlN7BAB8aSLvGU= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.7/go.mod h1:PHgbrJT7lCHcxMU+mDHEm+nx46H4zuuHZkDP6icnhu0= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.30/go.mod h1:fEO7lRTdivWO2qYVCVG7dEADOMo/MLDCVr8So2g88Uw= +sigs.k8s.io/controller-runtime v0.6.2/go.mod h1:vhcq/rlnENJ09SIRp3EveTaZ0yqH526hjf9iJdbUJ/E= +sigs.k8s.io/controller-runtime v0.12.1 h1:4BJY01xe9zKQti8oRjj/NeHKRXthf1YkYJAgLONFFoI= +sigs.k8s.io/controller-runtime v0.12.1/go.mod h1:BKhxlA4l7FPK4AQcsuL4X6vZeWnKDXez/vp1Y8dxTU0= +sigs.k8s.io/controller-tools v0.3.0/go.mod h1:enhtKGfxZD1GFEoMgP8Fdbu+uKQ/cq1/WGJhdVChfvI= +sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2/go.mod h1:B+TnT182UBxE84DiCz4CVE26eOSDAeYCpfDnC2kdKMY= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= +sigs.k8s.io/structured-merge-diff/v3 v3.0.0-20200116222232-67a7b8c61874/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw= +sigs.k8s.io/structured-merge-diff/v3 v3.0.0/go.mod h1:PlARxl6Hbt/+BC80dRLi1qAmnMqwqDg62YvvVkZjemw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.2.1/go.mod h1:j/nl6xW8vLS49O8YvXW1ocPhZawJtm+Yrr7PPRQ0Vg4= sigs.k8s.io/structured-merge-diff/v4 v4.2.3 h1:PRbqxJClWWYMNV1dhaG4NsibJbArud9kFxnAMREiWFE= sigs.k8s.io/structured-merge-diff/v4 v4.2.3/go.mod h1:qjx8mGObPmV2aSZepjQjbmb2ihdVs8cGKBraizNC69E= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/rsts/deployment/plugins/aws/index.rst b/rsts/deployment/plugins/aws/index.rst index b2231ca574..5a7206c27e 100644 --- a/rsts/deployment/plugins/aws/index.rst +++ b/rsts/deployment/plugins/aws/index.rst @@ -28,6 +28,15 @@ Discover the process of setting up AWS plugins for Flyte. ^^^^^^^^^^^^ Guide to setting up the AWS Athena plugin. + --- + + .. link-button:: deployment-plugin-setup-aws-sagemaker + :type: ref + :text: AWS Sagemaker + :classes: btn-block stretched-link + ^^^^^^^^^^^^ + Guide to setting up the AWS Sagemaker plugin. + .. toctree:: :maxdepth: 1 :name: AWS plugin setup @@ -35,3 +44,4 @@ Discover the process of setting up AWS plugins for Flyte. batch athena + sagemaker \ No newline at end of file diff --git a/rsts/deployment/plugins/aws/sagemaker.rst b/rsts/deployment/plugins/aws/sagemaker.rst new file mode 100644 index 0000000000..9401920901 --- /dev/null +++ b/rsts/deployment/plugins/aws/sagemaker.rst @@ -0,0 +1,95 @@ +.. _deployment-plugin-setup-aws-sagemaker: + +Sagemaker Plugin +================ + +This guide provides an overview of setting up Sagemaker in your Flyte deployment. + +.. note:: + + The Sagemaker plugin requires Flyte deployment in the AWS cloud; + it is not compatible with demo/GCP/Azure. + +Set up AWS Flyte cluster +------------------------ + +* Ensure you have a functional Flyte cluster running in `AWS `__. +* Verify that your AWS role is set up correctly for `SageMaker `__. +* Install the `AWS SageMaker k8s operator `__ in your Kubernetes cluster. +* Confirm that you have the correct kubeconfig and have selected the appropriate Kubernetes context. +* Verify the presence of the correct Flytectl configuration at ``~/.flyte/config.yaml``. + +Specify the plugin configuration +-------------------------------- + +.. tabs:: + + .. tab:: Flyte binary + + Edit the relevant YAML file to specify the plugin. + + .. code-block:: yaml + :emphasize-lines: 7,8 + + tasks: + task-plugins: + enabled-plugins: + - container + - sidecar + - k8s-array + - sagemaker_training + - sagemaker_hyperparameter_tuning + default-for-task-types: + - container: container + - container_array: k8s-array + + .. tab:: Flyte core + + Create a file named ``values-override.yaml`` and add the following configuration to it. + + .. code-block:: yaml + + configmap: + enabled_plugins: + # -- Tasks specific configuration [structure](https://pkg.go.dev/github.com/flyteorg/flytepropeller/pkg/controller/nodes/task/config#GetConfig) + tasks: + # -- Plugins configuration, [structure](https://pkg.go.dev/github.com/flyteorg/flytepropeller/pkg/controller/nodes/task/config#TaskPluginConfig) + task-plugins: + # -- [Enabled Plugins](https://pkg.go.dev/github.com/flyteorg/flyteplugins/go/tasks/config#Config). + # plugins + enabled-plugins: + - container + - sidecar + - k8s-array + - sagemaker_training + - sagemaker_hyperparameter_tuning + default-for-task-types: + container: container + sidecar: sidecar + container_array: k8s-array + +Ensure that the propeller has the correct service account for Sagemaker. + +Upgrade the Flyte Helm release +------------------------------ + +.. tabs:: + + .. group-tab:: Flyte binary + + .. code-block:: bash + + helm upgrade flyteorg/flyte-binary -n --values + + Replace ```` with the name of your release (e.g., ``flyte-backend``), + ```` with the name of your namespace (e.g., ``flyte``), + and ```` with the name of your YAML file. + + .. group-tab:: Flyte core + + .. code-block:: bash + + helm upgrade flyte/flyte-core -n --values values-override.yaml + + Replace ```` with the name of your release (e.g., ``flyte``) + and ```` with the name of your namespace (e.g., ``flyte``).