From f39aa9dd5e7c51e15aff07ce9d03a42f4a790f33 Mon Sep 17 00:00:00 2001 From: AWS Controllers for Kubernetes Bot <82905295+ack-bot@users.noreply.github.com> Date: Wed, 14 Feb 2024 08:58:02 -0600 Subject: [PATCH] Update to ACK runtime `v0.30.0`, code-generator `v0.30.0` (#256) ### Update to ACK runtime `v0.30.0`, code-generator `v0.30.0` ---------- * ACK code-generator `v0.30.0` [release notes](https://github.com/aws-controllers-k8s/code-generator/releases/tag/v0.30.0) * ACK runtime `v0.30.0` [release notes](https://github.com/aws-controllers-k8s/runtime/releases/tag/v0.30.0) ---------- NOTE: This PR increments the release version of service controller from `v1.2.6` to `v1.2.7` Once this PR is merged, release `v1.2.7` will be automatically created for `sagemaker-controller` **Please close this PR, if you do not want the new patch release for `sagemaker-controller`** ---------- #### stdout for `make build-controller`: ``` building ack-generate ... ok. ==== building sagemaker-controller ==== Copying common custom resource definitions into sagemaker Building Kubernetes API objects for sagemaker Generating deepcopy code for sagemaker Generating custom resource definitions for sagemaker Building service controller for sagemaker Generating RBAC manifests for sagemaker Running gofmt against generated code for sagemaker Updating additional GitHub repository maintenance files ==== building sagemaker-controller release artifacts ==== Building release artifacts for sagemaker-v1.2.7 Generating common custom resource definitions Generating custom resource definitions for sagemaker Generating RBAC manifests for sagemaker ``` ---------- By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. --- apis/v1alpha1/ack-generate-metadata.yaml | 8 +- apis/v1alpha1/zz_generated.deepcopy.go | 85 +- config/controller/kustomization.yaml | 2 +- .../sagemaker.services.k8s.aws_apps.yaml | 114 ++- ...ces.k8s.aws_dataqualityjobdefinitions.yaml | 125 +-- .../sagemaker.services.k8s.aws_domains.yaml | 197 ++-- ...aker.services.k8s.aws_endpointconfigs.yaml | 215 +++-- .../sagemaker.services.k8s.aws_endpoints.yaml | 274 +++--- ...emaker.services.k8s.aws_featuregroups.yaml | 272 ++++-- ...ices.k8s.aws_hyperparametertuningjobs.yaml | 909 ++++++++++-------- ...vices.k8s.aws_modelbiasjobdefinitions.yaml | 126 +-- ...aws_modelexplainabilityjobdefinitions.yaml | 131 +-- ...r.services.k8s.aws_modelpackagegroups.yaml | 105 +- ...emaker.services.k8s.aws_modelpackages.yaml | 295 +++--- ...es.k8s.aws_modelqualityjobdefinitions.yaml | 120 ++- .../sagemaker.services.k8s.aws_models.yaml | 188 ++-- ....services.k8s.aws_monitoringschedules.yaml | 156 +-- ....aws_notebookinstancelifecycleconfigs.yaml | 142 +-- ...er.services.k8s.aws_notebookinstances.yaml | 238 +++-- ...r.services.k8s.aws_pipelineexecutions.yaml | 76 +- .../sagemaker.services.k8s.aws_pipelines.yaml | 110 ++- ...maker.services.k8s.aws_processingjobs.yaml | 200 ++-- ...gemaker.services.k8s.aws_trainingjobs.yaml | 715 ++++++++------ ...emaker.services.k8s.aws_transformjobs.yaml | 245 +++-- ...gemaker.services.k8s.aws_userprofiles.yaml | 164 ++-- .../services.k8s.aws_adoptedresources.yaml | 206 ++-- .../bases/services.k8s.aws_fieldexports.yaml | 54 +- config/rbac/cluster-role-controller.yaml | 1 - go.mod | 58 +- go.sum | 158 ++- helm/Chart.yaml | 4 +- .../crds/sagemaker.services.k8s.aws_apps.yaml | 114 ++- ...ces.k8s.aws_dataqualityjobdefinitions.yaml | 125 +-- .../sagemaker.services.k8s.aws_domains.yaml | 197 ++-- ...aker.services.k8s.aws_endpointconfigs.yaml | 215 +++-- .../sagemaker.services.k8s.aws_endpoints.yaml | 274 +++--- ...emaker.services.k8s.aws_featuregroups.yaml | 272 ++++-- ...ices.k8s.aws_hyperparametertuningjobs.yaml | 909 ++++++++++-------- ...vices.k8s.aws_modelbiasjobdefinitions.yaml | 126 +-- ...aws_modelexplainabilityjobdefinitions.yaml | 131 +-- ...r.services.k8s.aws_modelpackagegroups.yaml | 105 +- ...emaker.services.k8s.aws_modelpackages.yaml | 295 +++--- ...es.k8s.aws_modelqualityjobdefinitions.yaml | 120 ++- .../sagemaker.services.k8s.aws_models.yaml | 188 ++-- ....services.k8s.aws_monitoringschedules.yaml | 156 +-- ....aws_notebookinstancelifecycleconfigs.yaml | 142 +-- ...er.services.k8s.aws_notebookinstances.yaml | 238 +++-- ...r.services.k8s.aws_pipelineexecutions.yaml | 76 +- .../sagemaker.services.k8s.aws_pipelines.yaml | 110 ++- ...maker.services.k8s.aws_processingjobs.yaml | 200 ++-- ...gemaker.services.k8s.aws_trainingjobs.yaml | 715 ++++++++------ ...emaker.services.k8s.aws_transformjobs.yaml | 245 +++-- ...gemaker.services.k8s.aws_userprofiles.yaml | 164 ++-- .../services.k8s.aws_adoptedresources.yaml | 209 ++-- helm/crds/services.k8s.aws_fieldexports.yaml | 54 +- helm/templates/NOTES.txt | 2 +- helm/templates/_helpers.tpl | 16 +- helm/templates/cluster-role-binding.yaml | 13 +- helm/templates/cluster-role-controller.yaml | 11 +- helm/templates/deployment.yaml | 22 +- .../leader-election-role-binding.yaml | 2 +- helm/templates/metrics-service.yaml | 10 +- helm/templates/service-account.yaml | 8 +- helm/values.yaml | 2 +- 64 files changed, 6407 insertions(+), 4752 deletions(-) diff --git a/apis/v1alpha1/ack-generate-metadata.yaml b/apis/v1alpha1/ack-generate-metadata.yaml index 0c21bf45..b095d076 100755 --- a/apis/v1alpha1/ack-generate-metadata.yaml +++ b/apis/v1alpha1/ack-generate-metadata.yaml @@ -1,8 +1,8 @@ ack_generate_info: - build_date: "2024-01-29T07:10:06Z" - build_hash: 92f531cde5631865cfc3dfa778cbc9611f3a64c3 - go_version: go1.21.5 - version: v0.29.2 + build_date: "2024-02-14T04:00:30Z" + build_hash: 947081ffebdeefcf2c61c4ca6d7e68810bdf9d08 + go_version: go1.22.0 + version: v0.30.0 api_directory_checksum: 62a1b01c505efd55545d306c2353b9673ce344fb api_version: v1alpha1 aws_sdk_go_version: v1.44.218 diff --git a/apis/v1alpha1/zz_generated.deepcopy.go b/apis/v1alpha1/zz_generated.deepcopy.go index 8125a5fe..9ac6d47a 100644 --- a/apis/v1alpha1/zz_generated.deepcopy.go +++ b/apis/v1alpha1/zz_generated.deepcopy.go @@ -1,5 +1,4 @@ //go:build !ignore_autogenerated -// +build !ignore_autogenerated // Copyright Amazon.com Inc. or its affiliates. All Rights Reserved. // @@ -923,7 +922,8 @@ func (in *AutoMLContainerDefinition) DeepCopyInto(out *AutoMLContainerDefinition if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -1658,7 +1658,8 @@ func (in *CollectionConfiguration) DeepCopyInto(out *CollectionConfiguration) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -1729,7 +1730,8 @@ func (in *ContainerDefinition) DeepCopyInto(out *ContainerDefinition) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -2115,7 +2117,8 @@ func (in *DataQualityAppSpecification) DeepCopyInto(out *DataQualityAppSpecifica if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -2447,7 +2450,8 @@ func (in *DebugHookConfig) DeepCopyInto(out *DebugHookConfig) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -2507,7 +2511,8 @@ func (in *DebugRuleConfiguration) DeepCopyInto(out *DebugRuleConfiguration) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -5138,7 +5143,8 @@ func (in *HyperParameterTrainingJobDefinition) DeepCopyInto(out *HyperParameterT if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -5230,7 +5236,8 @@ func (in *HyperParameterTrainingJobSummary) DeepCopyInto(out *HyperParameterTrai if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -6825,7 +6832,8 @@ func (in *ModelBiasAppSpecification) DeepCopyInto(out *ModelBiasAppSpecification if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -7594,7 +7602,8 @@ func (in *ModelExplainabilityAppSpecification) DeepCopyInto(out *ModelExplainabi if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -8034,7 +8043,8 @@ func (in *ModelPackageContainerDefinition) DeepCopyInto(out *ModelPackageContain if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -8387,7 +8397,8 @@ func (in *ModelPackageSpec) DeepCopyInto(out *ModelPackageSpec) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -8749,7 +8760,8 @@ func (in *ModelPackage_SDK) DeepCopyInto(out *ModelPackage_SDK) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -8931,7 +8943,8 @@ func (in *ModelQualityAppSpecification) DeepCopyInto(out *ModelQualityAppSpecifi if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -9786,7 +9799,8 @@ func (in *MonitoringJobDefinition) DeepCopyInto(out *MonitoringJobDefinition) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -12182,7 +12196,8 @@ func (in *ProcessingJobSpec) DeepCopyInto(out *ProcessingJobSpec) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -12396,7 +12411,8 @@ func (in *ProcessingJob_SDK) DeepCopyInto(out *ProcessingJob_SDK) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -12937,7 +12953,8 @@ func (in *ProfilerConfig) DeepCopyInto(out *ProfilerConfig) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -12977,7 +12994,8 @@ func (in *ProfilerConfigForUpdate) DeepCopyInto(out *ProfilerConfigForUpdate) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -13032,7 +13050,8 @@ func (in *ProfilerRuleConfiguration) DeepCopyInto(out *ProfilerRuleConfiguration if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -14400,7 +14419,8 @@ func (in *TrainingJobDefinition) DeepCopyInto(out *TrainingJobDefinition) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -14534,7 +14554,8 @@ func (in *TrainingJobSpec) DeepCopyInto(out *TrainingJobSpec) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -14554,7 +14575,8 @@ func (in *TrainingJobSpec) DeepCopyInto(out *TrainingJobSpec) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -14926,7 +14948,8 @@ func (in *TrainingJob_SDK) DeepCopyInto(out *TrainingJob_SDK) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -14962,7 +14985,8 @@ func (in *TrainingJob_SDK) DeepCopyInto(out *TrainingJob_SDK) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -15240,7 +15264,8 @@ func (in *TransformJobDefinition) DeepCopyInto(out *TransformJobDefinition) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -15337,7 +15362,8 @@ func (in *TransformJobSpec) DeepCopyInto(out *TransformJobSpec) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } @@ -15550,7 +15576,8 @@ func (in *TransformJob_SDK) DeepCopyInto(out *TransformJob_SDK) { if val == nil { (*out)[key] = nil } else { - in, out := &val, &outVal + inVal := (*in)[key] + in, out := &inVal, &outVal *out = new(string) **out = **in } diff --git a/config/controller/kustomization.yaml b/config/controller/kustomization.yaml index 721a7ab0..b0507d3d 100644 --- a/config/controller/kustomization.yaml +++ b/config/controller/kustomization.yaml @@ -6,4 +6,4 @@ kind: Kustomization images: - name: controller newName: public.ecr.aws/aws-controllers-k8s/sagemaker-controller - newTag: 1.2.6 + newTag: 1.2.7 diff --git a/config/crd/bases/sagemaker.services.k8s.aws_apps.yaml b/config/crd/bases/sagemaker.services.k8s.aws_apps.yaml index e2f43e01..f2da4751 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_apps.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_apps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: apps.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,14 +24,19 @@ spec: description: App is the Schema for the Apps API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -49,13 +53,16 @@ spec: description: The domain ID. type: string resourceSpec: - description: "The instance type and the Amazon Resource Name (ARN) - of the SageMaker image created on the instance. \n The value of - InstanceType passed as part of the ResourceSpec in the CreateApp - call overrides the value passed as part of the ResourceSpec configured - for the user profile or the domain. If InstanceType is not specified - in any of those three ResourceSpec values for a KernelGateway app, - the CreateApp call fails with a request validation error." + description: |- + The instance type and the Amazon Resource Name (ARN) of the SageMaker image + created on the instance. + + + The value of InstanceType passed as part of the ResourceSpec in the CreateApp + call overrides the value passed as part of the ResourceSpec configured for + the user profile or the domain. If InstanceType is not specified in any of + those three ResourceSpec values for a KernelGateway app, the CreateApp call + fails with a request validation error. properties: instanceType: type: string @@ -67,21 +74,26 @@ spec: type: string type: object tags: - description: Each tag consists of a key and an optional value. Tag - keys must be unique per resource. + description: |- + Each tag consists of a key and an optional value. Tag keys must be unique + per resource. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -102,24 +114,26 @@ spec: description: AppStatus defines the observed state of App properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -130,14 +144,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_dataqualityjobdefinitions.yaml b/config/crd/bases/sagemaker.services.k8s.aws_dataqualityjobdefinitions.yaml index 86290a51..353a08d1 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_dataqualityjobdefinitions.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_dataqualityjobdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: dataqualityjobdefinitions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -22,14 +21,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -79,8 +83,9 @@ spec: type: object type: object dataQualityJobInput: - description: A list of inputs for the monitoring job. Currently endpoints - are supported as monitoring inputs. + description: |- + A list of inputs for the monitoring job. Currently endpoints are supported + as monitoring inputs. properties: endpointInput: description: Input object for the endpoint @@ -117,8 +122,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you want to - store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -161,13 +167,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -180,8 +185,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: A time limit for how long the monitoring job is allowed @@ -192,22 +198,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -228,24 +239,26 @@ spec: of DataQualityJobDefinition properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -256,14 +269,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_domains.yaml b/config/crd/bases/sagemaker.services.k8s.aws_domains.yaml index 9f50adef..e1280723 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_domains.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_domains.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: domains.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -28,14 +27,19 @@ spec: description: Domain is the Schema for the Domains API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -43,16 +47,21 @@ spec: description: DomainSpec defines the desired state of Domain. properties: appNetworkAccessType: - description: "Specifies the VPC used for non-EFS traffic. The default - value is PublicInternetOnly. \n * PublicInternetOnly - Non-EFS traffic - is through a VPC managed by Amazon SageMaker, which allows direct - internet access \n * VpcOnly - All Studio traffic is through the - specified VPC and subnets" + description: |- + Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly. + + + * PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon + SageMaker, which allows direct internet access + + + * VpcOnly - All Studio traffic is through the specified VPC and subnets type: string appSecurityGroupManagement: - description: The entity that creates and manages the required security - groups for inter-app communication in VPCOnly mode. Required when - CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn + description: |- + The entity that creates and manages the required security groups for inter-app + communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType + is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided. type: string authMode: @@ -60,11 +69,14 @@ spec: the domain. type: string defaultUserSettings: - description: "The default settings to use to create a user profile - when UserSettings isn't specified in the call to the CreateUserProfile - API. \n SecurityGroups is aggregated when specified in both calls. - For all other settings in UserSettings, the values specified in - CreateUserProfile take precedence over those specified in CreateDomain." + description: |- + The default settings to use to create a user profile when UserSettings isn't + specified in the call to the CreateUserProfile API. + + + SecurityGroups is aggregated when specified in both calls. For all other + settings in UserSettings, the values specified in CreateUserProfile take + precedence over those specified in CreateDomain. properties: executionRole: type: string @@ -72,9 +84,9 @@ spec: description: The JupyterServer app settings. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -95,8 +107,9 @@ spec: properties: customImages: items: - description: A custom SageMaker image. For more information, - see Bring your own SageMaker image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). + description: |- + A custom SageMaker image. For more information, see Bring your own SageMaker + image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). properties: appImageConfigName: type: string @@ -108,9 +121,9 @@ spec: type: object type: array defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -127,10 +140,10 @@ spec: type: array type: object rStudioServerProAppSettings: - description: A collection of settings that configure user interaction - with the RStudioServerPro app. RStudioServerProAppSettings cannot - be updated. The RStudioServerPro app must be deleted and a new - one created to make any changes. + description: |- + A collection of settings that configure user interaction with the RStudioServerPro + app. RStudioServerProAppSettings cannot be updated. The RStudioServerPro + app must be deleted and a new one created to make any changes. properties: accessStatus: type: string @@ -142,11 +155,11 @@ spec: type: string type: array sharingSettings: - description: Specifies options for sharing SageMaker Studio notebooks. - These settings are specified as part of DefaultUserSettings - when the CreateDomain API is called, and as part of UserSettings - when the CreateUserProfile API is called. When SharingSettings - is not specified, notebook sharing isn't allowed. + description: |- + Specifies options for sharing SageMaker Studio notebooks. These settings + are specified as part of DefaultUserSettings when the CreateDomain API is + called, and as part of UserSettings when the CreateUserProfile API is called. + When SharingSettings is not specified, notebook sharing isn't allowed. properties: notebookOutputOption: type: string @@ -159,9 +172,9 @@ spec: description: The TensorBoard app settings. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -181,13 +194,14 @@ spec: description: A collection of Domain settings. properties: rStudioServerProDomainSettings: - description: A collection of settings that configure the RStudioServerPro - Domain-level app. + description: |- + A collection of settings that configure the RStudioServerPro Domain-level + app. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -214,9 +228,10 @@ spec: description: Use KmsKeyId. type: string kmsKeyID: - description: SageMaker uses Amazon Web Services KMS to encrypt the - EFS volume attached to the domain with an Amazon Web Services managed - key by default. For more control, specify a customer managed key. + description: |- + SageMaker uses Amazon Web Services KMS to encrypt the EFS volume attached + to the domain with an Amazon Web Services managed key by default. For more + control, specify a customer managed key. type: string subnetIDs: description: The VPC subnets that Studio uses for communication. @@ -224,23 +239,31 @@ spec: type: string type: array tags: - description: "Tags to associated with the Domain. Each tag consists - of a key and an optional value. Tag keys must be unique per resource. - Tags are searchable using the Search API. \n Tags that you specify - for the Domain are also added to all Apps that the Domain launches." + description: |- + Tags to associated with the Domain. Each tag consists of a key and an optional + value. Tag keys must be unique per resource. Tags are searchable using the + Search API. + + + Tags that you specify for the Domain are also added to all Apps that the + Domain launches. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -263,24 +286,26 @@ spec: description: DomainStatus defines the observed state of Domain properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -291,14 +316,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_endpointconfigs.yaml b/config/crd/bases/sagemaker.services.k8s.aws_endpointconfigs.yaml index ca95a9bc..9adf927e 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_endpointconfigs.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_endpointconfigs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: endpointconfigs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -21,14 +20,19 @@ spec: description: EndpointConfig is the Schema for the EndpointConfigs API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -36,13 +40,15 @@ spec: description: EndpointConfigSpec defines the desired state of EndpointConfig. properties: asyncInferenceConfig: - description: Specifies configuration for how an endpoint performs - asynchronous inference. This is a required field in order for your - Endpoint to be invoked using InvokeEndpointAsync (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_runtime_InvokeEndpointAsync.html). + description: |- + Specifies configuration for how an endpoint performs asynchronous inference. + This is a required field in order for your Endpoint to be invoked using InvokeEndpointAsync + (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_runtime_InvokeEndpointAsync.html). properties: clientConfig: - description: Configures the behavior of the client used by SageMaker - to interact with the model container during asynchronous inference. + description: |- + Configures the behavior of the client used by SageMaker to interact with + the model container during asynchronous inference. properties: maxConcurrentInvocationsPerInstance: format: int64 @@ -55,8 +61,9 @@ spec: kmsKeyID: type: string notificationConfig: - description: Specifies the configuration for notifications - of inference results for asynchronous inference. + description: |- + Specifies the configuration for notifications of inference results for asynchronous + inference. properties: errorTopic: type: string @@ -72,9 +79,9 @@ spec: data. properties: captureContentTypeHeader: - description: Configuration specifying how to treat different headers. - If no headers are specified SageMaker will by default base64 - encode when capturing the data. + description: |- + Configuration specifying how to treat different headers. If no headers are + specified SageMaker will by default base64 encode when capturing the data. properties: csvContentTypes: items: @@ -104,43 +111,65 @@ spec: type: string type: object endpointConfigName: - description: The name of the endpoint configuration. You specify this - name in a CreateEndpoint request. + description: |- + The name of the endpoint configuration. You specify this name in a CreateEndpoint + request. type: string kmsKeyID: - description: "The Amazon Resource Name (ARN) of a Amazon Web Services - Key Management Service key that SageMaker uses to encrypt data on - the storage volume attached to the ML compute instance that hosts - the endpoint. \n The KmsKeyId can be any of the following formats: - \n * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab \n * Key ARN: - arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab - \n * Alias name: alias/ExampleAlias \n * Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias - \n The KMS key policy must grant permission to the IAM role that - you specify in your CreateEndpoint, UpdateEndpoint requests. For - more information, refer to the Amazon Web Services Key Management - Service section Using Key Policies in Amazon Web Services KMS (https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) - \n Certain Nitro-based instances include local storage, dependent - on the instance type. Local storage volumes are encrypted using - a hardware module on the instance. You can't request a KmsKeyId - when using an instance type with local storage. If any of the models - that you specify in the ProductionVariants parameter use nitro-based - instances with local storage, do not specify a value for the KmsKeyId - parameter. If you specify a value for KmsKeyId when using any nitro-based - instances with local storage, the call to CreateEndpointConfig fails. - \n For a list of instance types that support local instance storage, - see Instance Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#instance-store-volumes). - \n For more information about local instance storage encryption, - see SSD Instance Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html)." + description: |- + The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service + key that SageMaker uses to encrypt data on the storage volume attached to + the ML compute instance that hosts the endpoint. + + + The KmsKeyId can be any of the following formats: + + + * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab + + + * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab + + + * Alias name: alias/ExampleAlias + + + * Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias + + + The KMS key policy must grant permission to the IAM role that you specify + in your CreateEndpoint, UpdateEndpoint requests. For more information, refer + to the Amazon Web Services Key Management Service section Using Key Policies + in Amazon Web Services KMS (https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) + + + Certain Nitro-based instances include local storage, dependent on the instance + type. Local storage volumes are encrypted using a hardware module on the + instance. You can't request a KmsKeyId when using an instance type with local + storage. If any of the models that you specify in the ProductionVariants + parameter use nitro-based instances with local storage, do not specify a + value for the KmsKeyId parameter. If you specify a value for KmsKeyId when + using any nitro-based instances with local storage, the call to CreateEndpointConfig + fails. + + + For a list of instance types that support local instance storage, see Instance + Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#instance-store-volumes). + + + For more information about local instance storage encryption, see SSD Instance + Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html). type: string productionVariants: - description: An array of ProductionVariant objects, one for each model - that you want to host at this endpoint. + description: |- + An array of ProductionVariant objects, one for each model that you want to + host at this endpoint. items: - description: Identifies a model that you want to host and the resources - chosen to deploy for hosting it. If you are deploying multiple - models, tell SageMaker how to distribute traffic among the models - by specifying variant weights. For more information on production - variants, check Production variants (https://docs.aws.amazon.com/sagemaker/latest/dg/model-ab-testing.html). + description: |- + Identifies a model that you want to host and the resources chosen to deploy + for hosting it. If you are deploying multiple models, tell SageMaker how + to distribute traffic among the models by specifying variant weights. For + more information on production variants, check Production variants (https://docs.aws.amazon.com/sagemaker/latest/dg/model-ab-testing.html). properties: acceleratorType: type: string @@ -148,8 +177,9 @@ spec: format: int64 type: integer coreDumpConfig: - description: Specifies configuration for a core dump from the - model container when the process crashes. + description: |- + Specifies configuration for a core dump from the model container when the + process crashes. properties: destinationS3URI: type: string @@ -189,23 +219,28 @@ spec: type: object type: array tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -221,24 +256,26 @@ spec: description: EndpointConfigStatus defines the observed state of EndpointConfig properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -249,14 +286,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_endpoints.yaml b/config/crd/bases/sagemaker.services.k8s.aws_endpoints.yaml index 00f554b4..185ef7ba 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_endpoints.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_endpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: endpoints.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,28 +28,38 @@ spec: description: Endpoint is the Schema for the Endpoints API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "EndpointSpec defines the desired state of Endpoint. \n A - hosted endpoint for real-time inference." + description: |- + EndpointSpec defines the desired state of Endpoint. + + + A hosted endpoint for real-time inference. properties: deploymentConfig: - description: The deployment configuration for an endpoint, which contains - the desired deployment strategy and rollback configurations. + description: |- + The deployment configuration for an endpoint, which contains the desired + deployment strategy and rollback configurations. properties: autoRollbackConfiguration: - description: Automatic rollback configuration for handling endpoint - deployment failures and recovery. + description: |- + Automatic rollback configuration for handling endpoint deployment failures + and recovery. properties: alarms: items: @@ -63,14 +72,13 @@ spec: type: array type: object blueGreenUpdatePolicy: - description: Update policy for a blue/green deployment. If this - update policy is specified, SageMaker creates a new fleet during - the deployment while maintaining the old fleet. SageMaker flips - traffic to the new fleet according to the specified traffic - routing configuration. Only one update policy should be used - in the deployment configuration. If no update policy is specified, - SageMaker uses a blue/green deployment strategy with all at - once traffic shifting by default. + description: |- + Update policy for a blue/green deployment. If this update policy is specified, + SageMaker creates a new fleet during the deployment while maintaining the + old fleet. SageMaker flips traffic to the new fleet according to the specified + traffic routing configuration. Only one update policy should be used in the + deployment configuration. If no update policy is specified, SageMaker uses + a blue/green deployment strategy with all at once traffic shifting by default. properties: maximumExecutionTimeoutInSeconds: format: int64 @@ -79,9 +87,9 @@ spec: format: int64 type: integer trafficRoutingConfiguration: - description: Defines the traffic routing strategy during an - endpoint deployment to shift traffic from the old fleet - to the new fleet. + description: |- + Defines the traffic routing strategy during an endpoint deployment to shift + traffic from the old fleet to the new fleet. properties: canarySize: description: Specifies the endpoint capacity to activate @@ -116,29 +124,34 @@ spec: see CreateEndpointConfig. type: string endpointName: - description: The name of the endpoint.The name must be unique within - an Amazon Web Services Region in your Amazon Web Services account. - The name is case-insensitive in CreateEndpoint, but the case is - preserved and must be matched in . + description: |- + The name of the endpoint.The name must be unique within an Amazon Web Services + Region in your Amazon Web Services account. The name is case-insensitive + in CreateEndpoint, but the case is preserved and must be matched in . type: string tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -154,24 +167,26 @@ spec: description: EndpointStatus defines the observed state of Endpoint properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -182,14 +197,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -219,26 +236,43 @@ spec: format: date-time type: string endpointStatus: - description: "The status of the endpoint. \n * OutOfService: Endpoint - is not available to take incoming requests. \n * Creating: CreateEndpoint - is executing. \n * Updating: UpdateEndpoint or UpdateEndpointWeightsAndCapacities - is executing. \n * SystemUpdating: Endpoint is undergoing maintenance - and cannot be updated or deleted or re-scaled until it has completed. - This maintenance operation does not change any customer-specified - values such as VPC config, KMS encryption, model, instance type, - or instance count. \n * RollingBack: Endpoint fails to scale up - or down or change its variant weight and is in the process of rolling - back to its previous configuration. Once the rollback completes, - endpoint returns to an InService status. This transitional status - only applies to an endpoint that has autoscaling enabled and is - undergoing variant weight or capacity changes as part of an UpdateEndpointWeightsAndCapacities - call or when the UpdateEndpointWeightsAndCapacities operation is - called explicitly. \n * InService: Endpoint is available to process - incoming requests. \n * Deleting: DeleteEndpoint is executing. \n - * Failed: Endpoint could not be created, updated, or re-scaled. - Use DescribeEndpointOutput$FailureReason for information about the - failure. DeleteEndpoint is the only operation that can be performed - on a failed endpoint." + description: |- + The status of the endpoint. + + + * OutOfService: Endpoint is not available to take incoming requests. + + + * Creating: CreateEndpoint is executing. + + + * Updating: UpdateEndpoint or UpdateEndpointWeightsAndCapacities is executing. + + + * SystemUpdating: Endpoint is undergoing maintenance and cannot be updated + or deleted or re-scaled until it has completed. This maintenance operation + does not change any customer-specified values such as VPC config, KMS + encryption, model, instance type, or instance count. + + + * RollingBack: Endpoint fails to scale up or down or change its variant + weight and is in the process of rolling back to its previous configuration. + Once the rollback completes, endpoint returns to an InService status. + This transitional status only applies to an endpoint that has autoscaling + enabled and is undergoing variant weight or capacity changes as part of + an UpdateEndpointWeightsAndCapacities call or when the UpdateEndpointWeightsAndCapacities + operation is called explicitly. + + + * InService: Endpoint is available to process incoming requests. + + + * Deleting: DeleteEndpoint is executing. + + + * Failed: Endpoint could not be created, updated, or re-scaled. Use DescribeEndpointOutput$FailureReason + for information about the failure. DeleteEndpoint is the only operation + that can be performed on a failed endpoint. type: string failureReason: description: If the status of the endpoint is Failed, the reason why @@ -249,18 +283,18 @@ spec: format: date-time type: string pendingDeploymentSummary: - description: Returns the summary of an in-progress deployment. This - field is only returned when the endpoint is creating or updating - with a new endpoint configuration. + description: |- + Returns the summary of an in-progress deployment. This field is only returned + when the endpoint is creating or updating with a new endpoint configuration. properties: endpointConfigName: type: string productionVariants: items: - description: The production variant summary for a deployment - when an endpoint is creating or updating with the CreateEndpoint - or UpdateEndpoint operations. Describes the VariantStatus - , weight and capacity for a production variant associated + description: |- + The production variant summary for a deployment when an endpoint is creating + or updating with the CreateEndpoint or UpdateEndpoint operations. Describes + the VariantStatus , weight and capacity for a production variant associated with an endpoint. properties: acceleratorType: @@ -283,16 +317,17 @@ spec: type: number deployedImages: items: - description: "Gets the Amazon EC2 Container Registry path - of the docker image of the model that is hosted in this - ProductionVariant. \n If you used the registry/repository[:tag] - form to specify the image path of the primary container - when you created the model hosted in this ProductionVariant, - the path resolves to a path of the form registry/repository[@digest]. - A digest is a hash value that identifies a specific - version of an image. For information about Amazon ECR - paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) - in the Amazon ECR User Guide." + description: |- + Gets the Amazon EC2 Container Registry path of the docker image of the model + that is hosted in this ProductionVariant. + + + If you used the registry/repository[:tag] form to specify the image path + of the primary container when you created the model hosted in this ProductionVariant, + the path resolves to a path of the form registry/repository[@digest]. A digest + is a hash value that identifies a specific version of an image. For information + about Amazon ECR paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) + in the Amazon ECR User Guide. properties: resolutionTime: format: date-time @@ -343,13 +378,15 @@ spec: type: string type: object productionVariants: - description: An array of ProductionVariantSummary objects, one for - each model hosted behind this endpoint. + description: |- + An array of ProductionVariantSummary objects, one for each model hosted behind + this endpoint. items: - description: Describes weight and capacities for a production variant - associated with an endpoint. If you sent a request to the UpdateEndpointWeightsAndCapacities - API and the endpoint status is Updating, you get different desired - and current values. + description: |- + Describes weight and capacities for a production variant associated with + an endpoint. If you sent a request to the UpdateEndpointWeightsAndCapacities + API and the endpoint status is Updating, you get different desired and current + values. properties: currentInstanceCount: format: int64 @@ -369,16 +406,17 @@ spec: type: number deployedImages: items: - description: "Gets the Amazon EC2 Container Registry path - of the docker image of the model that is hosted in this - ProductionVariant. \n If you used the registry/repository[:tag] - form to specify the image path of the primary container - when you created the model hosted in this ProductionVariant, - the path resolves to a path of the form registry/repository[@digest]. - A digest is a hash value that identifies a specific version - of an image. For information about Amazon ECR paths, see - Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) - in the Amazon ECR User Guide." + description: |- + Gets the Amazon EC2 Container Registry path of the docker image of the model + that is hosted in this ProductionVariant. + + + If you used the registry/repository[:tag] form to specify the image path + of the primary container when you created the model hosted in this ProductionVariant, + the path resolves to a path of the form registry/repository[@digest]. A digest + is a hash value that identifies a specific version of an image. For information + about Amazon ECR paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) + in the Amazon ECR User Guide. properties: resolutionTime: format: date-time diff --git a/config/crd/bases/sagemaker.services.k8s.aws_featuregroups.yaml b/config/crd/bases/sagemaker.services.k8s.aws_featuregroups.yaml index 106cd9e4..c4007444 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_featuregroups.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_featuregroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: featuregroups.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,52 +28,73 @@ spec: description: FeatureGroup is the Schema for the FeatureGroups API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "FeatureGroupSpec defines the desired state of FeatureGroup. - \n Amazon SageMaker Feature Store stores features in a collection called - Feature Group. A Feature Group can be visualized as a table which has - rows, with a unique identifier for each row where each column in the - table is a feature. In principle, a Feature Group is composed of features - and values per features." + description: |- + FeatureGroupSpec defines the desired state of FeatureGroup. + + + Amazon SageMaker Feature Store stores features in a collection called Feature + Group. A Feature Group can be visualized as a table which has rows, with + a unique identifier for each row where each column in the table is a feature. + In principle, a Feature Group is composed of features and values per features. properties: description: description: A free-form description of a FeatureGroup. type: string eventTimeFeatureName: - description: "The name of the feature that stores the EventTime of - a Record in a FeatureGroup. \n An EventTime is a point in time when - a new event occurs that corresponds to the creation or update of - a Record in a FeatureGroup. All Records in the FeatureGroup must - have a corresponding EventTime. \n An EventTime can be a String - or Fractional. \n * Fractional: EventTime feature values must be - a Unix timestamp in seconds. \n * String: EventTime feature values - must be an ISO-8601 string in the format. The following formats - are supported yyyy-MM-dd'T'HH:mm:ssZ and yyyy-MM-dd'T'HH:mm:ss.SSSZ - where yyyy, MM, and dd represent the year, month, and day respectively - and HH, mm, ss, and if applicable, SSS represent the hour, month, - second and milliseconds respsectively. 'T' and Z are constants." + description: |- + The name of the feature that stores the EventTime of a Record in a FeatureGroup. + + + An EventTime is a point in time when a new event occurs that corresponds + to the creation or update of a Record in a FeatureGroup. All Records in the + FeatureGroup must have a corresponding EventTime. + + + An EventTime can be a String or Fractional. + + + * Fractional: EventTime feature values must be a Unix timestamp in seconds. + + + * String: EventTime feature values must be an ISO-8601 string in the format. + The following formats are supported yyyy-MM-dd'T'HH:mm:ssZ and yyyy-MM-dd'T'HH:mm:ss.SSSZ + where yyyy, MM, and dd represent the year, month, and day respectively + and HH, mm, ss, and if applicable, SSS represent the hour, month, second + and milliseconds respsectively. 'T' and Z are constants. type: string featureDefinitions: - description: "A list of Feature names and types. Name and Type is - compulsory per Feature. \n Valid feature FeatureTypes are Integral, - Fractional and String. \n FeatureNames cannot be any of the following: - is_deleted, write_time, api_invocation_time \n You can create up - to 2,500 FeatureDefinitions per FeatureGroup." + description: |- + A list of Feature names and types. Name and Type is compulsory per Feature. + + + Valid feature FeatureTypes are Integral, Fractional and String. + + + FeatureNames cannot be any of the following: is_deleted, write_time, api_invocation_time + + + You can create up to 2,500 FeatureDefinitions per FeatureGroup. items: - description: A list of features. You must include FeatureName and - FeatureType. Valid feature FeatureTypes are Integral, Fractional - and String. + description: |- + A list of features. You must include FeatureName and FeatureType. Valid feature + FeatureTypes are Integral, Fractional and String. properties: featureName: type: string @@ -83,25 +103,43 @@ spec: type: object type: array featureGroupName: - description: "The name of the FeatureGroup. The name must be unique - within an Amazon Web Services Region in an Amazon Web Services account. - The name: \n * Must start and end with an alphanumeric character. - \n * Can only contain alphanumeric character and hyphens. Spaces - are not allowed." + description: |- + The name of the FeatureGroup. The name must be unique within an Amazon Web + Services Region in an Amazon Web Services account. The name: + + + * Must start and end with an alphanumeric character. + + + * Can only contain alphanumeric character and hyphens. Spaces are not + allowed. type: string offlineStoreConfig: - description: "Use this to configure an OfflineFeatureStore. This parameter - allows you to specify: \n * The Amazon Simple Storage Service (Amazon - S3) location of an OfflineStore. \n * A configuration for an Amazon - Web Services Glue or Amazon Web Services Hive data catalog. \n * - An KMS encryption key to encrypt the Amazon S3 location used for - OfflineStore. If KMS encryption key is not specified, by default - we encrypt all data at rest using Amazon Web Services KMS key. By - defining your bucket-level key (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html) - for SSE, you can reduce Amazon Web Services KMS requests costs by - up to 99 percent. \n * Format for the offline store table. Supported - formats are Glue (Default) and Apache Iceberg (https://iceberg.apache.org/). - \n To learn more about this parameter, see OfflineStoreConfig." + description: |- + Use this to configure an OfflineFeatureStore. This parameter allows you to + specify: + + + * The Amazon Simple Storage Service (Amazon S3) location of an OfflineStore. + + + * A configuration for an Amazon Web Services Glue or Amazon Web Services + Hive data catalog. + + + * An KMS encryption key to encrypt the Amazon S3 location used for OfflineStore. + If KMS encryption key is not specified, by default we encrypt all data + at rest using Amazon Web Services KMS key. By defining your bucket-level + key (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html) + for SSE, you can reduce Amazon Web Services KMS requests costs by up to + 99 percent. + + + * Format for the offline store table. Supported formats are Glue (Default) + and Apache Iceberg (https://iceberg.apache.org/). + + + To learn more about this parameter, see OfflineStoreConfig. properties: dataCatalogConfig: description: The meta data of the Glue table which serves as data @@ -117,8 +155,9 @@ spec: disableGlueTableCreation: type: boolean s3StorageConfig: - description: The Amazon Simple Storage (Amazon S3) location and - and security configuration for OfflineStore. + description: |- + The Amazon Simple Storage (Amazon S3) location and and security configuration + for OfflineStore. properties: kmsKeyID: type: string @@ -129,10 +168,13 @@ spec: type: object type: object onlineStoreConfig: - description: "You can turn the OnlineStore on or off by specifying - True for the EnableOnlineStore flag in OnlineStoreConfig; the default - value is False. \n You can also include an Amazon Web Services KMS - key ID (KMSKeyId) for at-rest encryption of the OnlineStore." + description: |- + You can turn the OnlineStore on or off by specifying True for the EnableOnlineStore + flag in OnlineStoreConfig; the default value is False. + + + You can also include an Amazon Web Services KMS key ID (KMSKeyId) for at-rest + encryption of the OnlineStore. properties: enableOnlineStore: type: boolean @@ -144,34 +186,49 @@ spec: type: object type: object recordIdentifierFeatureName: - description: "The name of the Feature whose value uniquely identifies - a Record defined in the FeatureStore. Only the latest record per - identifier value will be stored in the OnlineStore. RecordIdentifierFeatureName - must be one of feature definitions' names. \n You use the RecordIdentifierFeatureName - to access data in a FeatureStore. \n This name: \n * Must start - and end with an alphanumeric character. \n * Can only contains alphanumeric - characters, hyphens, underscores. Spaces are not allowed." + description: |- + The name of the Feature whose value uniquely identifies a Record defined + in the FeatureStore. Only the latest record per identifier value will be + stored in the OnlineStore. RecordIdentifierFeatureName must be one of feature + definitions' names. + + + You use the RecordIdentifierFeatureName to access data in a FeatureStore. + + + This name: + + + * Must start and end with an alphanumeric character. + + + * Can only contains alphanumeric characters, hyphens, underscores. Spaces + are not allowed. type: string roleARN: - description: The Amazon Resource Name (ARN) of the IAM execution role - used to persist data into the OfflineStore if an OfflineStoreConfig - is provided. + description: |- + The Amazon Resource Name (ARN) of the IAM execution role used to persist + data into the OfflineStore if an OfflineStoreConfig is provided. type: string tags: description: Tags used to identify Features in each FeatureGroup. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -189,24 +246,26 @@ spec: description: FeatureGroupStatus defines the observed state of FeatureGroup properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -217,14 +276,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -250,10 +311,15 @@ spec: type: object type: array failureReason: - description: "The reason that the FeatureGroup failed to be replicated - in the OfflineStore. This is failure can occur because: \n * The - FeatureGroup could not be created in the OfflineStore. \n * The - FeatureGroup could not be deleted from the OfflineStore." + description: |- + The reason that the FeatureGroup failed to be replicated in the OfflineStore. + This is failure can occur because: + + + * The FeatureGroup could not be created in the OfflineStore. + + + * The FeatureGroup could not be deleted from the OfflineStore. type: string featureGroupStatus: description: The status of the feature group. diff --git a/config/crd/bases/sagemaker.services.k8s.aws_hyperparametertuningjobs.yaml b/config/crd/bases/sagemaker.services.k8s.aws_hyperparametertuningjobs.yaml index 590ced73..f83845f0 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_hyperparametertuningjobs.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_hyperparametertuningjobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: hyperparametertuningjobs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -30,14 +29,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -46,18 +50,18 @@ spec: HyperParameterTuningJob. properties: hyperParameterTuningJobConfig: - description: The HyperParameterTuningJobConfig object that describes - the tuning job, including the search strategy, the objective metric - used to evaluate training jobs, ranges of parameters to search, - and resource limits for the tuning job. For more information, see - How Hyperparameter Tuning Works (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-how-it-works.html). + description: |- + The HyperParameterTuningJobConfig object that describes the tuning job, including + the search strategy, the objective metric used to evaluate training jobs, + ranges of parameters to search, and resource limits for the tuning job. For + more information, see How Hyperparameter Tuning Works (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-how-it-works.html). properties: hyperParameterTuningJobObjective: - description: Defines the objective metric for a hyperparameter - tuning job. Hyperparameter tuning uses the value of this metric - to evaluate the training jobs it launches, and returns the training - job that results in either the highest or lowest value for this - metric, depending on the value you specify for the Type parameter. + description: |- + Defines the objective metric for a hyperparameter tuning job. Hyperparameter + tuning uses the value of this metric to evaluate the training jobs it launches, + and returns the training job that results in either the highest or lowest + value for this metric, depending on the value you specify for the Type parameter. properties: metricName: type: string @@ -65,17 +69,19 @@ spec: type: string type: object parameterRanges: - description: "Specifies ranges of integer, continuous, and categorical - hyperparameters that a hyperparameter tuning job searches. The - hyperparameter tuning job launches training jobs with hyperparameter - values within these ranges to find the combination of values - that result in the training job with the best performance as - measured by the objective metric of the hyperparameter tuning - job. \n The maximum number of items specified for Array Members - refers to the maximum number of hyperparameters for each range - and also the maximum for the hyperparameter tuning job itself. - That is, the sum of the number of hyperparameters for all the - ranges can't exceed the maximum number specified." + description: |- + Specifies ranges of integer, continuous, and categorical hyperparameters + that a hyperparameter tuning job searches. The hyperparameter tuning job + launches training jobs with hyperparameter values within these ranges to + find the combination of values that result in the training job with the best + performance as measured by the objective metric of the hyperparameter tuning + job. + + + The maximum number of items specified for Array Members refers to the maximum + number of hyperparameters for each range and also the maximum for the hyperparameter + tuning job itself. That is, the sum of the number of hyperparameters for + all the ranges can't exceed the maximum number specified. properties: categoricalParameterRanges: items: @@ -105,8 +111,9 @@ spec: type: array integerParameterRanges: items: - description: For a hyperparameter of the integer type, specifies - the range that a hyperparameter tuning job searches. + description: |- + For a hyperparameter of the integer type, specifies the range that a hyperparameter + tuning job searches. properties: maxValue: type: string @@ -120,9 +127,9 @@ spec: type: array type: object resourceLimits: - description: Specifies the maximum number of training jobs and - parallel training jobs that a hyperparameter tuning job can - launch. + description: |- + Specifies the maximum number of training jobs and parallel training jobs + that a hyperparameter tuning job can launch. properties: maxNumberOfTrainingJobs: format: int64 @@ -132,8 +139,9 @@ spec: type: integer type: object strategy: - description: The strategy hyperparameter tuning uses to find the - best combination of hyperparameters for your model. + description: |- + The strategy hyperparameter tuning uses to find the best combination of hyperparameters + for your model. type: string trainingJobEarlyStoppingType: type: string @@ -145,33 +153,40 @@ spec: type: object type: object hyperParameterTuningJobName: - description: 'The name of the tuning job. This name is the prefix - for the names of all training jobs that this tuning job launches. - The name must be unique within the same Amazon Web Services account - and Amazon Web Services Region. The name must have 1 to 32 characters. - Valid characters are a-z, A-Z, 0-9, and : + = @ _ % - (hyphen). - The name is not case sensitive.' + description: |- + The name of the tuning job. This name is the prefix for the names of all + training jobs that this tuning job launches. The name must be unique within + the same Amazon Web Services account and Amazon Web Services Region. The + name must have 1 to 32 characters. Valid characters are a-z, A-Z, 0-9, and + : + = @ _ % - (hyphen). The name is not case sensitive. type: string tags: - description: "An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - \n Tags that you specify for the tuning job are also added to all - training jobs that the tuning job launches." + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + + + Tags that you specify for the tuning job are also added to all training jobs + that the tuning job launches. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -180,24 +195,25 @@ spec: type: object type: array trainingJobDefinition: - description: The HyperParameterTrainingJobDefinition object that describes - the training jobs that this tuning job launches, including static - hyperparameters, input data configuration, output data configuration, - resource configuration, and stopping condition. + description: |- + The HyperParameterTrainingJobDefinition object that describes the training + jobs that this tuning job launches, including static hyperparameters, input + data configuration, output data configuration, resource configuration, and + stopping condition. properties: algorithmSpecification: - description: Specifies which training algorithm to use for training - jobs that a hyperparameter tuning job launches and the metrics - to monitor. + description: |- + Specifies which training algorithm to use for training jobs that a hyperparameter + tuning job launches and the metrics to monitor. properties: algorithmName: type: string metricDefinitions: items: - description: Specifies a metric that the training algorithm - writes to stderr or stdout. SageMakerhyperparameter tuning - captures all defined metrics. You specify one metric that - a hyperparameter tuning job uses as its objective metric + description: |- + Specifies a metric that the training algorithm writes to stderr or stdout. + SageMakerhyperparameter tuning captures all defined metrics. You specify + one metric that a hyperparameter tuning job uses as its objective metric to choose the best training job. properties: name: @@ -209,39 +225,58 @@ spec: trainingImage: type: string trainingInputMode: - description: "The training input mode that the algorithm supports. - For more information about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon - SageMaker streams data directly from Amazon S3 to the container. - \n File mode \n If an algorithm supports File mode, SageMaker - downloads the training data from S3 to the provisioned ML - storage volume, and mounts the directory to the Docker volume - for the training container. \n You must provision the ML - storage volume with sufficient capacity to accommodate the - data downloaded from S3. In addition to the training data, - the ML storage volume also stores the output model. The - algorithm container uses the ML storage volume to also store - intermediate information, if any. \n For distributed algorithms, - training data is distributed uniformly. Your training duration - is predictable if the input data objects sizes are approximately - the same. SageMaker does not split the files any further - for model training. If the object sizes are skewed, training - won't be optimal as the data distribution is also skewed - when one host in a training cluster is overloaded, thus - becoming a bottleneck in training. \n FastFile mode \n If - an algorithm supports FastFile mode, SageMaker streams data - directly from S3 to the container with no code changes, - and provides file system access to the data. Users can author - their training script to interact with these files as if - they were stored on disk. \n FastFile mode works best when - the data is read sequentially. Augmented manifest files - aren't supported. The startup time is lower when there are - fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string type: object checkpointConfig: - description: Contains information about the output location for - managed spot training checkpoint data. + description: |- + Contains information about the output location for managed spot training + checkpoint data. properties: localPath: type: string @@ -257,17 +292,19 @@ spec: enableNetworkIsolation: type: boolean hyperParameterRanges: - description: "Specifies ranges of integer, continuous, and categorical - hyperparameters that a hyperparameter tuning job searches. The - hyperparameter tuning job launches training jobs with hyperparameter - values within these ranges to find the combination of values - that result in the training job with the best performance as - measured by the objective metric of the hyperparameter tuning - job. \n The maximum number of items specified for Array Members - refers to the maximum number of hyperparameters for each range - and also the maximum for the hyperparameter tuning job itself. - That is, the sum of the number of hyperparameters for all the - ranges can't exceed the maximum number specified." + description: |- + Specifies ranges of integer, continuous, and categorical hyperparameters + that a hyperparameter tuning job searches. The hyperparameter tuning job + launches training jobs with hyperparameter values within these ranges to + find the combination of values that result in the training job with the best + performance as measured by the objective metric of the hyperparameter tuning + job. + + + The maximum number of items specified for Array Members refers to the maximum + number of hyperparameters for each range and also the maximum for the hyperparameter + tuning job itself. That is, the sum of the number of hyperparameters for + all the ranges can't exceed the maximum number specified. properties: categoricalParameterRanges: items: @@ -297,8 +334,9 @@ spec: type: array integerParameterRanges: items: - description: For a hyperparameter of the integer type, specifies - the range that a hyperparameter tuning job searches. + description: |- + For a hyperparameter of the integer type, specifies the range that a hyperparameter + tuning job searches. properties: maxValue: type: string @@ -358,57 +396,72 @@ spec: type: object type: object inputMode: - description: "The training input mode that the algorithm - supports. For more information about input modes, see - Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon - SageMaker streams data directly from Amazon S3 to the - container. \n File mode \n If an algorithm supports File - mode, SageMaker downloads the training data from S3 to - the provisioned ML storage volume, and mounts the directory - to the Docker volume for the training container. \n You - must provision the ML storage volume with sufficient capacity - to accommodate the data downloaded from S3. In addition - to the training data, the ML storage volume also stores - the output model. The algorithm container uses the ML - storage volume to also store intermediate information, - if any. \n For distributed algorithms, training data is - distributed uniformly. Your training duration is predictable - if the input data objects sizes are approximately the - same. SageMaker does not split the files any further for - model training. If the object sizes are skewed, training - won't be optimal as the data distribution is also skewed - when one host in a training cluster is overloaded, thus - becoming a bottleneck in training. \n FastFile mode \n - If an algorithm supports FastFile mode, SageMaker streams - data directly from S3 to the container with no code changes, - and provides file system access to the data. Users can - author their training script to interact with these files - as if they were stored on disk. \n FastFile mode works - best when the data is read sequentially. Augmented manifest - files aren't supported. The startup time is lower when - there are fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string recordWrapperType: type: string shuffleConfig: - description: "A configuration for a shuffle option for input - data in a channel. If you use S3Prefix for S3DataType, - the results of the S3 key prefix matches are shuffled. - If you use ManifestFile, the order of the S3 object references - in the ManifestFile is shuffled. If you use AugmentedManifestFile, - the order of the JSON lines in the AugmentedManifestFile - is shuffled. The shuffling order is determined using the - Seed value. \n For Pipe input mode, when ShuffleConfig - is specified shuffling is done at the start of every epoch. - With large datasets, this ensures that the order of the - training data is different for each epoch, and it helps - reduce bias and possible overfitting. In a multi-node - training job when ShuffleConfig is combined with S3DataDistributionType - of ShardedByS3Key, the data is shuffled across nodes so - that the content sent to a particular node on the first - epoch might be sent to a different node on the second - epoch." + description: |- + A configuration for a shuffle option for input data in a channel. If you + use S3Prefix for S3DataType, the results of the S3 key prefix matches are + shuffled. If you use ManifestFile, the order of the S3 object references + in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order + of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling + order is determined using the Seed value. + + + For Pipe input mode, when ShuffleConfig is specified shuffling is done at + the start of every epoch. With large datasets, this ensures that the order + of the training data is different for each epoch, and it helps reduce bias + and possible overfitting. In a multi-node training job when ShuffleConfig + is combined with S3DataDistributionType of ShardedByS3Key, the data is shuffled + across nodes so that the content sent to a particular node on the first epoch + might be sent to a different node on the second epoch. properties: seed: format: int64 @@ -426,18 +479,18 @@ spec: type: string type: object resourceConfig: - description: Describes the resources, including machine learning - (ML) compute instances and ML storage volumes, to use for model - training. + description: |- + Describes the resources, including machine learning (ML) compute instances + and ML storage volumes, to use for model training. properties: instanceCount: format: int64 type: integer instanceGroups: items: - description: Defines an instance group for heterogeneous - cluster training. When requesting a training job using - the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) + description: |- + Defines an instance group for heterogeneous cluster training. When requesting + a training job using the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) API, you can configure multiple instance groups . properties: instanceCount: @@ -461,11 +514,11 @@ spec: type: integer type: object retryStrategy: - description: The retry strategy to use when a training job fails - due to an InternalServerError. RetryStrategy is specified as - part of the CreateTrainingJob and CreateHyperParameterTuningJob - requests. You can add the StoppingCondition parameter to the - request to limit the training time for the complete job. + description: |- + The retry strategy to use when a training job fails due to an InternalServerError. + RetryStrategy is specified as part of the CreateTrainingJob and CreateHyperParameterTuningJob + requests. You can add the StoppingCondition parameter to the request to limit + the training time for the complete job. properties: maximumRetryAttempts: format: int64 @@ -478,25 +531,29 @@ spec: type: string type: object stoppingCondition: - description: "Specifies a limit to how long a model training job - or model compilation job can run. It also specifies how long - a managed spot training job has to complete. When the job reaches - the time limit, SageMaker ends the training or compilation job. - Use this API to cap model training costs. \n To stop a training - job, SageMaker sends the algorithm the SIGTERM signal, which - delays job termination for 120 seconds. Algorithms can use this - 120-second window to save the model artifacts, so the results - of training are not lost. \n The training algorithms provided - by SageMaker automatically save the intermediate results of - a model training job when possible. This attempt to save artifacts - is only a best effort case as model might not be in a state - from which it can be saved. For example, if training has just - started, the model might not be ready to save. When saved, this - intermediate data is a valid model artifact. You can use it - to create a model with CreateModel. \n The Neural Topic Model - (NTM) currently does not support saving intermediate model artifacts. - When training NTMs, make sure that the maximum runtime is sufficient - for the training job to complete." + description: |- + Specifies a limit to how long a model training job or model compilation job + can run. It also specifies how long a managed spot training job has to complete. + When the job reaches the time limit, SageMaker ends the training or compilation + job. Use this API to cap model training costs. + + + To stop a training job, SageMaker sends the algorithm the SIGTERM signal, + which delays job termination for 120 seconds. Algorithms can use this 120-second + window to save the model artifacts, so the results of training are not lost. + + + The training algorithms provided by SageMaker automatically save the intermediate + results of a model training job when possible. This attempt to save artifacts + is only a best effort case as model might not be in a state from which it + can be saved. For example, if training has just started, the model might + not be ready to save. When saved, this intermediate data is a valid model + artifact. You can use it to create a model with CreateModel. + + + The Neural Topic Model (NTM) currently does not support saving intermediate + model artifacts. When training NTMs, make sure that the maximum runtime is + sufficient for the training job to complete. properties: maxRuntimeInSeconds: format: int64 @@ -506,11 +563,11 @@ spec: type: integer type: object tuningObjective: - description: Defines the objective metric for a hyperparameter - tuning job. Hyperparameter tuning uses the value of this metric - to evaluate the training jobs it launches, and returns the training - job that results in either the highest or lowest value for this - metric, depending on the value you specify for the Type parameter. + description: |- + Defines the objective metric for a hyperparameter tuning job. Hyperparameter + tuning uses the value of this metric to evaluate the training jobs it launches, + and returns the training job that results in either the highest or lowest + value for this metric, depending on the value you specify for the Type parameter. properties: metricName: type: string @@ -518,13 +575,12 @@ spec: type: string type: object vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -537,26 +593,27 @@ spec: type: object type: object trainingJobDefinitions: - description: A list of the HyperParameterTrainingJobDefinition objects - launched for this tuning job. + description: |- + A list of the HyperParameterTrainingJobDefinition objects launched for this + tuning job. items: description: Defines the training jobs launched by a hyperparameter tuning job. properties: algorithmSpecification: - description: Specifies which training algorithm to use for training - jobs that a hyperparameter tuning job launches and the metrics - to monitor. + description: |- + Specifies which training algorithm to use for training jobs that a hyperparameter + tuning job launches and the metrics to monitor. properties: algorithmName: type: string metricDefinitions: items: - description: Specifies a metric that the training algorithm - writes to stderr or stdout. SageMakerhyperparameter - tuning captures all defined metrics. You specify one - metric that a hyperparameter tuning job uses as its - objective metric to choose the best training job. + description: |- + Specifies a metric that the training algorithm writes to stderr or stdout. + SageMakerhyperparameter tuning captures all defined metrics. You specify + one metric that a hyperparameter tuning job uses as its objective metric + to choose the best training job. properties: name: type: string @@ -567,41 +624,58 @@ spec: trainingImage: type: string trainingInputMode: - description: "The training input mode that the algorithm - supports. For more information about input modes, see - Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon - SageMaker streams data directly from Amazon S3 to the - container. \n File mode \n If an algorithm supports File - mode, SageMaker downloads the training data from S3 to - the provisioned ML storage volume, and mounts the directory - to the Docker volume for the training container. \n You - must provision the ML storage volume with sufficient capacity - to accommodate the data downloaded from S3. In addition - to the training data, the ML storage volume also stores - the output model. The algorithm container uses the ML - storage volume to also store intermediate information, - if any. \n For distributed algorithms, training data is - distributed uniformly. Your training duration is predictable - if the input data objects sizes are approximately the - same. SageMaker does not split the files any further for - model training. If the object sizes are skewed, training - won't be optimal as the data distribution is also skewed - when one host in a training cluster is overloaded, thus - becoming a bottleneck in training. \n FastFile mode \n - If an algorithm supports FastFile mode, SageMaker streams - data directly from S3 to the container with no code changes, - and provides file system access to the data. Users can - author their training script to interact with these files - as if they were stored on disk. \n FastFile mode works - best when the data is read sequentially. Augmented manifest - files aren't supported. The startup time is lower when - there are fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string type: object checkpointConfig: - description: Contains information about the output location - for managed spot training checkpoint data. + description: |- + Contains information about the output location for managed spot training + checkpoint data. properties: localPath: type: string @@ -617,17 +691,19 @@ spec: enableNetworkIsolation: type: boolean hyperParameterRanges: - description: "Specifies ranges of integer, continuous, and categorical - hyperparameters that a hyperparameter tuning job searches. - The hyperparameter tuning job launches training jobs with - hyperparameter values within these ranges to find the combination - of values that result in the training job with the best performance - as measured by the objective metric of the hyperparameter - tuning job. \n The maximum number of items specified for Array - Members refers to the maximum number of hyperparameters for - each range and also the maximum for the hyperparameter tuning - job itself. That is, the sum of the number of hyperparameters - for all the ranges can't exceed the maximum number specified." + description: |- + Specifies ranges of integer, continuous, and categorical hyperparameters + that a hyperparameter tuning job searches. The hyperparameter tuning job + launches training jobs with hyperparameter values within these ranges to + find the combination of values that result in the training job with the best + performance as measured by the objective metric of the hyperparameter tuning + job. + + + The maximum number of items specified for Array Members refers to the maximum + number of hyperparameters for each range and also the maximum for the hyperparameter + tuning job itself. That is, the sum of the number of hyperparameters for + all the ranges can't exceed the maximum number specified. properties: categoricalParameterRanges: items: @@ -658,9 +734,9 @@ spec: type: array integerParameterRanges: items: - description: For a hyperparameter of the integer type, - specifies the range that a hyperparameter tuning job - searches. + description: |- + For a hyperparameter of the integer type, specifies the range that a hyperparameter + tuning job searches. properties: maxValue: type: string @@ -720,59 +796,72 @@ spec: type: object type: object inputMode: - description: "The training input mode that the algorithm - supports. For more information about input modes, see - Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, - Amazon SageMaker streams data directly from Amazon S3 - to the container. \n File mode \n If an algorithm supports - File mode, SageMaker downloads the training data from - S3 to the provisioned ML storage volume, and mounts - the directory to the Docker volume for the training - container. \n You must provision the ML storage volume - with sufficient capacity to accommodate the data downloaded - from S3. In addition to the training data, the ML storage - volume also stores the output model. The algorithm container - uses the ML storage volume to also store intermediate - information, if any. \n For distributed algorithms, - training data is distributed uniformly. Your training - duration is predictable if the input data objects sizes - are approximately the same. SageMaker does not split - the files any further for model training. If the object - sizes are skewed, training won't be optimal as the data - distribution is also skewed when one host in a training - cluster is overloaded, thus becoming a bottleneck in - training. \n FastFile mode \n If an algorithm supports - FastFile mode, SageMaker streams data directly from - S3 to the container with no code changes, and provides - file system access to the data. Users can author their - training script to interact with these files as if they - were stored on disk. \n FastFile mode works best when - the data is read sequentially. Augmented manifest files - aren't supported. The startup time is lower when there - are fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string recordWrapperType: type: string shuffleConfig: - description: "A configuration for a shuffle option for - input data in a channel. If you use S3Prefix for S3DataType, - the results of the S3 key prefix matches are shuffled. - If you use ManifestFile, the order of the S3 object - references in the ManifestFile is shuffled. If you use - AugmentedManifestFile, the order of the JSON lines in - the AugmentedManifestFile is shuffled. The shuffling - order is determined using the Seed value. \n For Pipe - input mode, when ShuffleConfig is specified shuffling - is done at the start of every epoch. With large datasets, - this ensures that the order of the training data is - different for each epoch, and it helps reduce bias and - possible overfitting. In a multi-node training job when - ShuffleConfig is combined with S3DataDistributionType - of ShardedByS3Key, the data is shuffled across nodes - so that the content sent to a particular node on the - first epoch might be sent to a different node on the - second epoch." + description: |- + A configuration for a shuffle option for input data in a channel. If you + use S3Prefix for S3DataType, the results of the S3 key prefix matches are + shuffled. If you use ManifestFile, the order of the S3 object references + in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order + of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling + order is determined using the Seed value. + + + For Pipe input mode, when ShuffleConfig is specified shuffling is done at + the start of every epoch. With large datasets, this ensures that the order + of the training data is different for each epoch, and it helps reduce bias + and possible overfitting. In a multi-node training job when ShuffleConfig + is combined with S3DataDistributionType of ShardedByS3Key, the data is shuffled + across nodes so that the content sent to a particular node on the first epoch + might be sent to a different node on the second epoch. properties: seed: format: int64 @@ -790,18 +879,18 @@ spec: type: string type: object resourceConfig: - description: Describes the resources, including machine learning - (ML) compute instances and ML storage volumes, to use for - model training. + description: |- + Describes the resources, including machine learning (ML) compute instances + and ML storage volumes, to use for model training. properties: instanceCount: format: int64 type: integer instanceGroups: items: - description: Defines an instance group for heterogeneous - cluster training. When requesting a training job using - the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) + description: |- + Defines an instance group for heterogeneous cluster training. When requesting + a training job using the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) API, you can configure multiple instance groups . properties: instanceCount: @@ -825,11 +914,11 @@ spec: type: integer type: object retryStrategy: - description: The retry strategy to use when a training job fails - due to an InternalServerError. RetryStrategy is specified - as part of the CreateTrainingJob and CreateHyperParameterTuningJob - requests. You can add the StoppingCondition parameter to the - request to limit the training time for the complete job. + description: |- + The retry strategy to use when a training job fails due to an InternalServerError. + RetryStrategy is specified as part of the CreateTrainingJob and CreateHyperParameterTuningJob + requests. You can add the StoppingCondition parameter to the request to limit + the training time for the complete job. properties: maximumRetryAttempts: format: int64 @@ -842,26 +931,29 @@ spec: type: string type: object stoppingCondition: - description: "Specifies a limit to how long a model training - job or model compilation job can run. It also specifies how - long a managed spot training job has to complete. When the - job reaches the time limit, SageMaker ends the training or - compilation job. Use this API to cap model training costs. - \n To stop a training job, SageMaker sends the algorithm the - SIGTERM signal, which delays job termination for 120 seconds. - Algorithms can use this 120-second window to save the model - artifacts, so the results of training are not lost. \n The - training algorithms provided by SageMaker automatically save - the intermediate results of a model training job when possible. - This attempt to save artifacts is only a best effort case - as model might not be in a state from which it can be saved. - For example, if training has just started, the model might - not be ready to save. When saved, this intermediate data is - a valid model artifact. You can use it to create a model with - CreateModel. \n The Neural Topic Model (NTM) currently does - not support saving intermediate model artifacts. When training - NTMs, make sure that the maximum runtime is sufficient for - the training job to complete." + description: |- + Specifies a limit to how long a model training job or model compilation job + can run. It also specifies how long a managed spot training job has to complete. + When the job reaches the time limit, SageMaker ends the training or compilation + job. Use this API to cap model training costs. + + + To stop a training job, SageMaker sends the algorithm the SIGTERM signal, + which delays job termination for 120 seconds. Algorithms can use this 120-second + window to save the model artifacts, so the results of training are not lost. + + + The training algorithms provided by SageMaker automatically save the intermediate + results of a model training job when possible. This attempt to save artifacts + is only a best effort case as model might not be in a state from which it + can be saved. For example, if training has just started, the model might + not be ready to save. When saved, this intermediate data is a valid model + artifact. You can use it to create a model with CreateModel. + + + The Neural Topic Model (NTM) currently does not support saving intermediate + model artifacts. When training NTMs, make sure that the maximum runtime is + sufficient for the training job to complete. properties: maxRuntimeInSeconds: format: int64 @@ -871,12 +963,11 @@ spec: type: integer type: object tuningObjective: - description: Defines the objective metric for a hyperparameter - tuning job. Hyperparameter tuning uses the value of this metric - to evaluate the training jobs it launches, and returns the - training job that results in either the highest or lowest - value for this metric, depending on the value you specify - for the Type parameter. + description: |- + Defines the objective metric for a hyperparameter tuning job. Hyperparameter + tuning uses the value of this metric to evaluate the training jobs it launches, + and returns the training job that results in either the highest or lowest + value for this metric, depending on the value you specify for the Type parameter. properties: metricName: type: string @@ -884,13 +975,12 @@ spec: type: string type: object vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -904,26 +994,31 @@ spec: type: object type: array warmStartConfig: - description: "Specifies the configuration for starting the hyperparameter - tuning job using one or more previous tuning jobs as a starting - point. The results of previous tuning jobs are used to inform which - combinations of hyperparameters to search over in the new tuning - job. \n All training jobs launched by the new hyperparameter tuning - job are evaluated by using the objective metric. If you specify - IDENTICAL_DATA_AND_ALGORITHM as the WarmStartType value for the - warm start configuration, the training job that performs the best - in the new tuning job is compared to the best training jobs from - the parent tuning jobs. From these, the training job that performs - the best as measured by the objective metric is returned as the - overall best training job. \n All training jobs launched by parent - hyperparameter tuning jobs and the new hyperparameter tuning jobs - count against the limit of training jobs for the tuning job." + description: |- + Specifies the configuration for starting the hyperparameter tuning job using + one or more previous tuning jobs as a starting point. The results of previous + tuning jobs are used to inform which combinations of hyperparameters to search + over in the new tuning job. + + + All training jobs launched by the new hyperparameter tuning job are evaluated + by using the objective metric. If you specify IDENTICAL_DATA_AND_ALGORITHM + as the WarmStartType value for the warm start configuration, the training + job that performs the best in the new tuning job is compared to the best + training jobs from the parent tuning jobs. From these, the training job that + performs the best as measured by the objective metric is returned as the + overall best training job. + + + All training jobs launched by parent hyperparameter tuning jobs and the new + hyperparameter tuning jobs count against the limit of training jobs for the + tuning job. properties: parentHyperParameterTuningJobs: items: - description: A previously completed or stopped hyperparameter - tuning job to be used as a starting point for a new hyperparameter - tuning job. + description: |- + A previously completed or stopped hyperparameter tuning job to be used as + a starting point for a new hyperparameter tuning job. properties: hyperParameterTuningJobName: type: string @@ -941,24 +1036,26 @@ spec: of HyperParameterTuningJob properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -969,8 +1066,9 @@ spec: - region type: object bestTrainingJob: - description: A TrainingJobSummary object that describes the training - job that completed with the best current HyperParameterTuningJobObjective. + description: |- + A TrainingJobSummary object that describes the training job that completed + with the best current HyperParameterTuningJobObjective. properties: creationTime: format: date-time @@ -978,9 +1076,9 @@ spec: failureReason: type: string finalHyperParameterTuningJobObjectiveMetric: - description: Shows the latest objective metric emitted by a training - job that was launched by a hyperparameter tuning job. You define - the objective metric in the HyperParameterTuningJobObjective + description: |- + Shows the latest objective metric emitted by a training job that was launched + by a hyperparameter tuning job. You define the objective metric in the HyperParameterTuningJobObjective parameter of HyperParameterTuningJobConfig. properties: metricName: @@ -1014,14 +1112,16 @@ spec: type: string type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -1050,15 +1150,16 @@ spec: description: If the tuning job failed, the reason it failed. type: string hyperParameterTuningJobStatus: - description: 'The status of the tuning job: InProgress, Completed, - Failed, Stopping, or Stopped.' + description: |- + The status of the tuning job: InProgress, Completed, Failed, Stopping, or + Stopped. type: string overallBestTrainingJob: - description: If the hyperparameter tuning job is an warm start tuning - job with a WarmStartType of IDENTICAL_DATA_AND_ALGORITHM, this is - the TrainingJobSummary for the training job with the best objective - metric value of all training jobs launched by this tuning job and - all parent jobs specified for the warm start tuning job. + description: |- + If the hyperparameter tuning job is an warm start tuning job with a WarmStartType + of IDENTICAL_DATA_AND_ALGORITHM, this is the TrainingJobSummary for the training + job with the best objective metric value of all training jobs launched by + this tuning job and all parent jobs specified for the warm start tuning job. properties: creationTime: format: date-time @@ -1066,9 +1167,9 @@ spec: failureReason: type: string finalHyperParameterTuningJobObjectiveMetric: - description: Shows the latest objective metric emitted by a training - job that was launched by a hyperparameter tuning job. You define - the objective metric in the HyperParameterTuningJobObjective + description: |- + Shows the latest objective metric emitted by a training job that was launched + by a hyperparameter tuning job. You define the objective metric in the HyperParameterTuningJobObjective parameter of HyperParameterTuningJobConfig. properties: metricName: diff --git a/config/crd/bases/sagemaker.services.k8s.aws_modelbiasjobdefinitions.yaml b/config/crd/bases/sagemaker.services.k8s.aws_modelbiasjobdefinitions.yaml index 79530c27..52affc97 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_modelbiasjobdefinitions.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_modelbiasjobdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelbiasjobdefinitions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -22,14 +21,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -37,9 +41,9 @@ spec: description: ModelBiasJobDefinitionSpec defines the desired state of ModelBiasJobDefinition. properties: jobDefinitionName: - description: The name of the bias job definition. The name must be - unique within an Amazon Web Services Region in the Amazon Web Services - account. + description: |- + The name of the bias job definition. The name must be unique within an Amazon + Web Services Region in the Amazon Web Services account. type: string jobResources: description: Identifies the resources to deploy for a monitoring job. @@ -130,8 +134,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you want to - store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -151,13 +156,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -170,8 +174,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: A time limit for how long the monitoring job is allowed @@ -182,22 +187,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -218,24 +228,26 @@ spec: ModelBiasJobDefinition properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -246,14 +258,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_modelexplainabilityjobdefinitions.yaml b/config/crd/bases/sagemaker.services.k8s.aws_modelexplainabilityjobdefinitions.yaml index 5a8a195b..323463f6 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_modelexplainabilityjobdefinitions.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_modelexplainabilityjobdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelexplainabilityjobdefinitions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -22,14 +21,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -38,9 +42,9 @@ spec: state of ModelExplainabilityJobDefinition. properties: jobDefinitionName: - description: The name of the model explainability job definition. - The name must be unique within an Amazon Web Services Region in - the Amazon Web Services account. + description: |- + The name of the model explainability job definition. The name must be unique + within an Amazon Web Services Region in the Amazon Web Services account. type: string jobResources: description: Identifies the resources to deploy for a monitoring job. @@ -62,8 +66,9 @@ spec: type: object type: object modelExplainabilityAppSpecification: - description: Configures the model explainability job to run a specified - Docker container image. + description: |- + Configures the model explainability job to run a specified Docker container + image. properties: configURI: type: string @@ -125,8 +130,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you want to - store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -146,13 +152,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -165,8 +170,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: A time limit for how long the monitoring job is allowed @@ -177,22 +183,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -213,24 +224,26 @@ spec: state of ModelExplainabilityJobDefinition properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -241,14 +254,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_modelpackagegroups.yaml b/config/crd/bases/sagemaker.services.k8s.aws_modelpackagegroups.yaml index b3eac111..61468fde 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_modelpackagegroups.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_modelpackagegroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelpackagegroups.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,20 +24,28 @@ spec: description: ModelPackageGroup is the Schema for the ModelPackageGroups API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "ModelPackageGroupSpec defines the desired state of ModelPackageGroup. - \n A group of versioned models in the model registry." + description: |- + ModelPackageGroupSpec defines the desired state of ModelPackageGroup. + + + A group of versioned models in the model registry. properties: modelPackageGroupDescription: description: A description for the model group. @@ -47,23 +54,27 @@ spec: description: The name of the model group. type: string tags: - description: A list of key value pairs associated with the model group. - For more information, see Tagging Amazon Web Services resources - (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + description: |- + A list of key value pairs associated with the model group. For more information, + see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) in the Amazon Web Services General Reference Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -78,24 +89,26 @@ spec: description: ModelPackageGroupStatus defines the observed state of ModelPackageGroup properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -106,14 +119,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_modelpackages.yaml b/config/crd/bases/sagemaker.services.k8s.aws_modelpackages.yaml index e7ed5b81..3ebb170e 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_modelpackages.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_modelpackages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelpackages.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,30 +24,40 @@ spec: description: ModelPackage is the Schema for the ModelPackages API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "ModelPackageSpec defines the desired state of ModelPackage. - \n A versioned model that can be deployed for SageMaker inference." + description: |- + ModelPackageSpec defines the desired state of ModelPackage. + + + A versioned model that can be deployed for SageMaker inference. properties: additionalInferenceSpecifications: - description: An array of additional Inference Specification objects. - Each additional Inference Specification specifies artifacts based - on this model package that can be used on inference endpoints. Generally - used with SageMaker Neo to store the compiled artifacts. + description: |- + An array of additional Inference Specification objects. Each additional Inference + Specification specifies artifacts based on this model package that can be + used on inference endpoints. Generally used with SageMaker Neo to store the + compiled artifacts. items: - description: A structure of additional Inference Specification. - Additional Inference Specification specifies details about inference - jobs that can be run with models based on this model package + description: |- + A structure of additional Inference Specification. Additional Inference Specification + specifies details about inference jobs that can be run with models based + on this model package properties: containers: items: @@ -109,9 +118,12 @@ spec: description: A description for the approval status of the model. type: string certifyForMarketplace: - description: "Whether to certify the model package for listing on - Amazon Web Services Marketplace. \n This parameter is optional for - unversioned models, and does not apply to versioned models." + description: |- + Whether to certify the model package for listing on Amazon Web Services Marketplace. + + + This parameter is optional for unversioned models, and does not apply to + versioned models. type: boolean clientToken: description: A unique token that guarantees that the call to this @@ -124,20 +136,21 @@ spec: versions. type: object domain: - description: The machine learning domain of your model package and - its components. Common machine learning domains include computer - vision and natural language processing. + description: |- + The machine learning domain of your model package and its components. Common + machine learning domains include computer vision and natural language processing. type: string driftCheckBaselines: - description: Represents the drift check baselines that can be used - when the model monitor is set using the model package. For more - information, see the topic on Drift Detection against Previous Baselines - in SageMaker Pipelines (https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines-quality-clarify-baseline-lifecycle.html#pipelines-quality-clarify-baseline-drift-detection) + description: |- + Represents the drift check baselines that can be used when the model monitor + is set using the model package. For more information, see the topic on Drift + Detection against Previous Baselines in SageMaker Pipelines (https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines-quality-clarify-baseline-lifecycle.html#pipelines-quality-clarify-baseline-drift-detection) in the Amazon SageMaker Developer Guide. properties: bias: - description: Represents the drift check bias baselines that can - be used when the model monitor is set using the model package. + description: |- + Represents the drift check bias baselines that can be used when the model + monitor is set using the model package. properties: configFile: description: Contains details regarding the file source. @@ -171,9 +184,9 @@ spec: type: object type: object explainability: - description: Represents the drift check explainability baselines - that can be used when the model monitor is set using the model - package. + description: |- + Represents the drift check explainability baselines that can be used when + the model monitor is set using the model package. properties: configFile: description: Contains details regarding the file source. @@ -197,9 +210,9 @@ spec: type: object type: object modelDataQuality: - description: Represents the drift check data quality baselines - that can be used when the model monitor is set using the model - package. + description: |- + Represents the drift check data quality baselines that can be used when the + model monitor is set using the model package. properties: constraints: description: Details about the metrics source. @@ -223,9 +236,9 @@ spec: type: object type: object modelQuality: - description: Represents the drift check model quality baselines - that can be used when the model monitor is set using the model - package. + description: |- + Represents the drift check model quality baselines that can be used when + the model monitor is set using the model package. properties: constraints: description: Details about the metrics source. @@ -250,13 +263,21 @@ spec: type: object type: object inferenceSpecification: - description: "Specifies details about inference jobs that can be run - with models based on this model package, including the following: - \n * The Amazon ECR paths of containers that contain the inference - code and model artifacts. \n * The instance types that the model - package supports for transform jobs and real-time endpoints used - for inference. \n * The input and output content formats that the - model package supports for inference." + description: |- + Specifies details about inference jobs that can be run with models based + on this model package, including the following: + + + * The Amazon ECR paths of containers that contain the inference code and + model artifacts. + + + * The instance types that the model package supports for transform jobs + and real-time endpoints used for inference. + + + * The input and output content formats that the model package supports + for inference. properties: containers: items: @@ -321,10 +342,16 @@ spec: type: string type: object modelApprovalStatus: - description: "Whether the model is approved for deployment. \n This - parameter is optional for versioned models, and does not apply to - unversioned models. \n For versioned models, the value of this parameter - must be set to Approved to deploy the model." + description: |- + Whether the model is approved for deployment. + + + This parameter is optional for versioned models, and does not apply to unversioned + models. + + + For versioned models, the value of this parameter must be set to Approved + to deploy the model. type: string modelMetrics: description: A structure that contains model metrics reports. @@ -430,24 +457,30 @@ spec: description: A description of the model package. type: string modelPackageGroupName: - description: "The name or Amazon Resource Name (ARN) of the model - package group that this model version belongs to. \n This parameter - is required for versioned models, and does not apply to unversioned - models." + description: |- + The name or Amazon Resource Name (ARN) of the model package group that this + model version belongs to. + + + This parameter is required for versioned models, and does not apply to unversioned + models. type: string modelPackageName: - description: "The name of the model package. The name must have 1 - to 63 characters. Valid characters are a-z, A-Z, 0-9, and - (hyphen). - \n This parameter is required for unversioned models. It is not - applicable to versioned models." + description: |- + The name of the model package. The name must have 1 to 63 characters. Valid + characters are a-z, A-Z, 0-9, and - (hyphen). + + + This parameter is required for unversioned models. It is not applicable to + versioned models. type: string samplePayloadURL: - description: The Amazon Simple Storage Service (Amazon S3) path where - the sample payload is stored. This path must point to a single gzip - compressed tar archive (.tar.gz suffix). This archive can hold multiple - files that are all equally used in the load test. Each file in the - archive must satisfy the size constraints of the InvokeEndpoint - (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_runtime_InvokeEndpoint.html#API_runtime_InvokeEndpoint_RequestSyntax) + description: |- + The Amazon Simple Storage Service (Amazon S3) path where the sample payload + is stored. This path must point to a single gzip compressed tar archive (.tar.gz + suffix). This archive can hold multiple files that are all equally used in + the load test. Each file in the archive must satisfy the size constraints + of the InvokeEndpoint (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_runtime_InvokeEndpoint.html#API_runtime_InvokeEndpoint_RequestSyntax) call. type: string sourceAlgorithmSpecification: @@ -456,10 +489,10 @@ spec: properties: sourceAlgorithms: items: - description: Specifies an algorithm that was used to create - the model package. The algorithm must be either an algorithm - resource in your SageMaker account or an algorithm in Amazon - Web Services Marketplace that you are subscribed to. + description: |- + Specifies an algorithm that was used to create the model package. The algorithm + must be either an algorithm resource in your SageMaker account or an algorithm + in Amazon Web Services Marketplace that you are subscribed to. properties: algorithmName: type: string @@ -469,23 +502,27 @@ spec: type: array type: object tags: - description: A list of key value pairs associated with the model. - For more information, see Tagging Amazon Web Services resources - (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + description: |- + A list of key value pairs associated with the model. For more information, + see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) in the Amazon Web Services General Reference Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -494,32 +531,37 @@ spec: type: object type: array task: - description: "The machine learning task your model package accomplishes. - Common machine learning tasks include object detection and image - classification. The following tasks are supported by Inference Recommender: - \"IMAGE_CLASSIFICATION\" | \"OBJECT_DETECTION\" | \"TEXT_GENERATION\" - |\"IMAGE_SEGMENTATION\" | \"FILL_MASK\" | \"CLASSIFICATION\" | \"REGRESSION\" - | \"OTHER\". \n Specify \"OTHER\" if none of the tasks listed fit - your use case." + description: |- + The machine learning task your model package accomplishes. Common machine + learning tasks include object detection and image classification. The following + tasks are supported by Inference Recommender: "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" + | "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" + | "REGRESSION" | "OTHER". + + + Specify "OTHER" if none of the tasks listed fit your use case. type: string validationSpecification: - description: Specifies configurations for one or more transform jobs - that SageMaker runs to test the model package. + description: |- + Specifies configurations for one or more transform jobs that SageMaker runs + to test the model package. properties: validationProfiles: items: - description: "Contains data, such as the inputs and targeted - instance types that are used in the process of validating - the model package. \n The data provided in the validation - profile is made available to your buyers on Amazon Web Services - Marketplace." + description: |- + Contains data, such as the inputs and targeted instance types that are used + in the process of validating the model package. + + + The data provided in the validation profile is made available to your buyers + on Amazon Web Services Marketplace. properties: profileName: type: string transformJobDefinition: - description: Defines the input needed to run a transform - job using the inference specification specified in the - algorithm. + description: |- + Defines the input needed to run a transform job using the inference specification + specified in the algorithm. properties: batchStrategy: type: string @@ -534,8 +576,9 @@ spec: format: int64 type: integer transformInput: - description: Describes the input source of a transform - job and the way the transform job consumes it. + description: |- + Describes the input source of a transform job and the way the transform job + consumes it. properties: compressionType: type: string @@ -570,9 +613,9 @@ spec: type: string type: object transformResources: - description: Describes the resources, including ML instance - types and ML instance count, to use for transform - job. + description: |- + Describes the resources, including ML instance types and ML instance count, + to use for transform job. properties: instanceCount: format: int64 @@ -593,24 +636,26 @@ spec: description: ModelPackageStatus defines the observed state of ModelPackage properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -621,14 +666,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_modelqualityjobdefinitions.yaml b/config/crd/bases/sagemaker.services.k8s.aws_modelqualityjobdefinitions.yaml index 14339d3b..603b6afb 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_modelqualityjobdefinitions.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_modelqualityjobdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelqualityjobdefinitions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -22,14 +21,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -142,8 +146,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you want to - store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -164,13 +169,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -183,8 +187,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: A time limit for how long the monitoring job is allowed @@ -195,22 +200,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -231,24 +241,26 @@ spec: of ModelQualityJobDefinition properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -259,14 +271,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_models.yaml b/config/crd/bases/sagemaker.services.k8s.aws_models.yaml index aa98f653..366c1c9d 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_models.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_models.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: models.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -21,20 +20,28 @@ spec: description: Model is the Schema for the Models API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "ModelSpec defines the desired state of Model. \n The properties - of a model as returned by the Search API." + description: |- + ModelSpec defines the desired state of Model. + + + The properties of a model as returned by the Search API. properties: containers: description: Specifies the containers in the inference pipeline. @@ -50,20 +57,19 @@ spec: image: type: string imageConfig: - description: Specifies whether the model container is in Amazon - ECR or a private Docker registry accessible from your Amazon - Virtual Private Cloud (VPC). + description: |- + Specifies whether the model container is in Amazon ECR or a private Docker + registry accessible from your Amazon Virtual Private Cloud (VPC). properties: repositoryAccessMode: type: string repositoryAuthConfig: - description: Specifies an authentication configuration for - the private docker registry where your model image is - hosted. Specify a value for this property only if you - specified Vpc as the value for the RepositoryAccessMode - field of the ImageConfig object that you passed to a call - to CreateModel and the private Docker registry where the - model image is hosted requires authentication. + description: |- + Specifies an authentication configuration for the private docker registry + where your model image is hosted. Specify a value for this property only + if you specified Vpc as the value for the RepositoryAccessMode field of the + ImageConfig object that you passed to a call to CreateModel and the private + Docker registry where the model image is hosted requires authentication. properties: repositoryCredentialsProviderARN: type: string @@ -87,17 +93,20 @@ spec: type: object type: array enableNetworkIsolation: - description: Isolates the model container. No inbound or outbound - network calls can be made to or from the model container. + description: |- + Isolates the model container. No inbound or outbound network calls can be + made to or from the model container. type: boolean executionRoleARN: - description: "The Amazon Resource Name (ARN) of the IAM role that - SageMaker can assume to access model artifacts and docker image - for deployment on ML compute instances or for batch transform jobs. - Deploying on ML compute instances is part of model hosting. For - more information, see SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). - \n To be able to pass this role to SageMaker, the caller of this - API must have the iam:PassRole permission." + description: |- + The Amazon Resource Name (ARN) of the IAM role that SageMaker can assume + to access model artifacts and docker image for deployment on ML compute instances + or for batch transform jobs. Deploying on ML compute instances is part of + model hosting. For more information, see SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). + + + To be able to pass this role to SageMaker, the caller of this API must have + the iam:PassRole permission. type: string inferenceExecutionConfig: description: Specifies details of how containers in a multi-container @@ -110,9 +119,10 @@ spec: description: The name of the new model. type: string primaryContainer: - description: The location of the primary docker image containing inference - code, associated artifacts, and custom environment map that the - inference code uses when the model is deployed for predictions. + description: |- + The location of the primary docker image containing inference code, associated + artifacts, and custom environment map that the inference code uses when the + model is deployed for predictions. properties: containerHostname: type: string @@ -123,20 +133,19 @@ spec: image: type: string imageConfig: - description: Specifies whether the model container is in Amazon - ECR or a private Docker registry accessible from your Amazon - Virtual Private Cloud (VPC). + description: |- + Specifies whether the model container is in Amazon ECR or a private Docker + registry accessible from your Amazon Virtual Private Cloud (VPC). properties: repositoryAccessMode: type: string repositoryAuthConfig: - description: Specifies an authentication configuration for - the private docker registry where your model image is hosted. - Specify a value for this property only if you specified - Vpc as the value for the RepositoryAccessMode field of the - ImageConfig object that you passed to a call to CreateModel - and the private Docker registry where the model image is - hosted requires authentication. + description: |- + Specifies an authentication configuration for the private docker registry + where your model image is hosted. Specify a value for this property only + if you specified Vpc as the value for the RepositoryAccessMode field of the + ImageConfig object that you passed to a call to CreateModel and the private + Docker registry where the model image is hosted requires authentication. properties: repositoryCredentialsProviderARN: type: string @@ -159,23 +168,28 @@ spec: type: object type: object tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -184,13 +198,13 @@ spec: type: object type: array vpcConfig: - description: A VpcConfig object that specifies the VPC that you want - your model to connect to. Control access to and from your model - container by configuring the VPC. VpcConfig is used in hosting services - and in batch transform. For more information, see Protect Endpoints - by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Data in Batch Transform Jobs by Using an Amazon Virtual - Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-vpc.html). + description: |- + A VpcConfig object that specifies the VPC that you want your model to connect + to. Control access to and from your model container by configuring the VPC. + VpcConfig is used in hosting services and in batch transform. For more information, + see Protect Endpoints by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Data in Batch Transform Jobs by Using an Amazon Virtual Private + Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-vpc.html). properties: securityGroupIDs: items: @@ -209,24 +223,26 @@ spec: description: ModelStatus defines the observed state of Model properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -237,14 +253,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_monitoringschedules.yaml b/config/crd/bases/sagemaker.services.k8s.aws_monitoringschedules.yaml index dbe71a46..b788c579 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_monitoringschedules.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_monitoringschedules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: monitoringschedules.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -30,34 +29,43 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "MonitoringScheduleSpec defines the desired state of MonitoringSchedule. - \n A schedule for a model monitoring job. For information about model - monitor, see Amazon SageMaker Model Monitor (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor.html)." + description: |- + MonitoringScheduleSpec defines the desired state of MonitoringSchedule. + + + A schedule for a model monitoring job. For information about model monitor, + see Amazon SageMaker Model Monitor (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor.html). properties: monitoringScheduleConfig: - description: The configuration object that specifies the monitoring - schedule and defines the monitoring job. + description: |- + The configuration object that specifies the monitoring schedule and defines + the monitoring job. properties: monitoringJobDefinition: description: Defines the monitoring job. properties: baselineConfig: - description: Configuration for monitoring constraints and - monitoring statistics. These baseline resources are compared - against the results of the current job from the series of - jobs scheduled to collect data periodically. + description: |- + Configuration for monitoring constraints and monitoring statistics. These + baseline resources are compared against the results of the current job from + the series of jobs scheduled to collect data periodically. properties: baseliningJobName: type: string @@ -139,8 +147,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you - want to store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -173,10 +182,10 @@ spec: type: object type: object networkConfig: - description: Networking options for a job, such as network - traffic encryption between containers, whether to allow - inbound and outbound network calls to and from containers, - and the VPC subnets and security groups to use for VPC-enabled + description: |- + Networking options for a job, such as network traffic encryption between + containers, whether to allow inbound and outbound network calls to and from + containers, and the VPC subnets and security groups to use for VPC-enabled jobs. properties: enableInterContainerTrafficEncryption: @@ -184,13 +193,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and - hosted models have access to. Control access to and - from your training and model containers by configuring - the VPC. For more information, see Protect Endpoints - by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual - Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -225,27 +233,32 @@ spec: type: object type: object monitoringScheduleName: - description: The name of the monitoring schedule. The name must be - unique within an Amazon Web Services Region within an Amazon Web - Services account. + description: |- + The name of the monitoring schedule. The name must be unique within an Amazon + Web Services Region within an Amazon Web Services account. type: string tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -261,24 +274,26 @@ spec: description: MonitoringScheduleStatus defines the observed state of MonitoringSchedule properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -289,14 +304,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -326,8 +343,9 @@ spec: format: date-time type: string failureReason: - description: A string, up to one KB in size, that contains the reason - a monitoring job failed, if it failed. + description: |- + A string, up to one KB in size, that contains the reason a monitoring job + failed, if it failed. type: string lastModifiedTime: description: The time at which the monitoring job was last modified. diff --git a/config/crd/bases/sagemaker.services.k8s.aws_notebookinstancelifecycleconfigs.yaml b/config/crd/bases/sagemaker.services.k8s.aws_notebookinstancelifecycleconfigs.yaml index 902964f9..1ee379f7 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_notebookinstancelifecycleconfigs.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_notebookinstancelifecycleconfigs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: notebookinstancelifecycleconfigs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,14 +28,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -48,41 +52,65 @@ spec: description: The name of the lifecycle configuration. type: string onCreate: - description: A shell script that runs only once, when you create a - notebook instance. The shell script must be a base64-encoded string. + description: |- + A shell script that runs only once, when you create a notebook instance. + The shell script must be a base64-encoded string. items: - description: "Contains the notebook instance lifecycle configuration - script. \n Each lifecycle configuration script has a limit of - 16384 characters. \n The value of the $PATH environment variable - that is available to both scripts is /sbin:bin:/usr/sbin:/usr/bin. - \n View CloudWatch Logs for notebook instance lifecycle configurations - in log group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook]. - \n Lifecycle configuration scripts cannot run for longer than - 5 minutes. If a script runs for longer than 5 minutes, it fails - and the notebook instance is not created or started. \n For information - about notebook instance lifestyle configurations, see Step 2.1: - (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html)." + description: |- + Contains the notebook instance lifecycle configuration script. + + + Each lifecycle configuration script has a limit of 16384 characters. + + + The value of the $PATH environment variable that is available to both scripts + is /sbin:bin:/usr/sbin:/usr/bin. + + + View CloudWatch Logs for notebook instance lifecycle configurations in log + group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook]. + + + Lifecycle configuration scripts cannot run for longer than 5 minutes. If + a script runs for longer than 5 minutes, it fails and the notebook instance + is not created or started. + + + For information about notebook instance lifestyle configurations, see Step + 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html). properties: content: type: string type: object type: array onStart: - description: A shell script that runs every time you start a notebook - instance, including when you create the notebook instance. The shell - script must be a base64-encoded string. + description: |- + A shell script that runs every time you start a notebook instance, including + when you create the notebook instance. The shell script must be a base64-encoded + string. items: - description: "Contains the notebook instance lifecycle configuration - script. \n Each lifecycle configuration script has a limit of - 16384 characters. \n The value of the $PATH environment variable - that is available to both scripts is /sbin:bin:/usr/sbin:/usr/bin. - \n View CloudWatch Logs for notebook instance lifecycle configurations - in log group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook]. - \n Lifecycle configuration scripts cannot run for longer than - 5 minutes. If a script runs for longer than 5 minutes, it fails - and the notebook instance is not created or started. \n For information - about notebook instance lifestyle configurations, see Step 2.1: - (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html)." + description: |- + Contains the notebook instance lifecycle configuration script. + + + Each lifecycle configuration script has a limit of 16384 characters. + + + The value of the $PATH environment variable that is available to both scripts + is /sbin:bin:/usr/sbin:/usr/bin. + + + View CloudWatch Logs for notebook instance lifecycle configurations in log + group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook]. + + + Lifecycle configuration scripts cannot run for longer than 5 minutes. If + a script runs for longer than 5 minutes, it fails and the notebook instance + is not created or started. + + + For information about notebook instance lifestyle configurations, see Step + 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html). properties: content: type: string @@ -96,24 +124,26 @@ spec: state of NotebookInstanceLifecycleConfig properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -124,14 +154,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_notebookinstances.yaml b/config/crd/bases/sagemaker.services.k8s.aws_notebookinstances.yaml index e6093b2d..592ca623 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_notebookinstances.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_notebookinstances.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: notebookinstances.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,14 +28,19 @@ spec: description: NotebookInstance is the Schema for the NotebookInstances API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -44,61 +48,66 @@ spec: description: NotebookInstanceSpec defines the desired state of NotebookInstance. properties: acceleratorTypes: - description: A list of Elastic Inference (EI) instance types to associate - with this notebook instance. Currently, only one instance type can - be associated with a notebook instance. For more information, see - Using Elastic Inference in Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html). + description: |- + A list of Elastic Inference (EI) instance types to associate with this notebook + instance. Currently, only one instance type can be associated with a notebook + instance. For more information, see Using Elastic Inference in Amazon SageMaker + (https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html). items: type: string type: array additionalCodeRepositories: - description: An array of up to three Git repositories to associate - with the notebook instance. These can be either the names of Git - repositories stored as resources in your account, or the URL of - Git repositories in Amazon Web Services CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) - or in any other Git repository. These repositories are cloned at - the same level as the default repository of your notebook instance. - For more information, see Associating Git Repositories with SageMaker - Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html). + description: |- + An array of up to three Git repositories to associate with the notebook instance. + These can be either the names of Git repositories stored as resources in + your account, or the URL of Git repositories in Amazon Web Services CodeCommit + (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) or + in any other Git repository. These repositories are cloned at the same level + as the default repository of your notebook instance. For more information, + see Associating Git Repositories with SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html). items: type: string type: array defaultCodeRepository: - description: A Git repository to associate with the notebook instance - as its default code repository. This can be either the name of a - Git repository stored as a resource in your account, or the URL - of a Git repository in Amazon Web Services CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) - or in any other Git repository. When you open a notebook instance, - it opens in the directory that contains this repository. For more - information, see Associating Git Repositories with SageMaker Notebook - Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html). + description: |- + A Git repository to associate with the notebook instance as its default code + repository. This can be either the name of a Git repository stored as a resource + in your account, or the URL of a Git repository in Amazon Web Services CodeCommit + (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) or + in any other Git repository. When you open a notebook instance, it opens + in the directory that contains this repository. For more information, see + Associating Git Repositories with SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html). type: string directInternetAccess: - description: "Sets whether SageMaker provides internet access to the - notebook instance. If you set this to Disabled this notebook instance - is able to access resources only in your VPC, and is not be able - to connect to SageMaker training and endpoint services unless you - configure a NAT Gateway in your VPC. \n For more information, see - Notebook Instances Are Internet-Enabled by Default (https://docs.aws.amazon.com/sagemaker/latest/dg/appendix-additional-considerations.html#appendix-notebook-and-internet-access). - You can set the value of this parameter to Disabled only if you - set a value for the SubnetId parameter." + description: |- + Sets whether SageMaker provides internet access to the notebook instance. + If you set this to Disabled this notebook instance is able to access resources + only in your VPC, and is not be able to connect to SageMaker training and + endpoint services unless you configure a NAT Gateway in your VPC. + + + For more information, see Notebook Instances Are Internet-Enabled by Default + (https://docs.aws.amazon.com/sagemaker/latest/dg/appendix-additional-considerations.html#appendix-notebook-and-internet-access). + You can set the value of this parameter to Disabled only if you set a value + for the SubnetId parameter. type: string instanceType: description: The type of ML compute instance to launch for the notebook instance. type: string kmsKeyID: - description: The Amazon Resource Name (ARN) of a Amazon Web Services - Key Management Service key that SageMaker uses to encrypt data on - the storage volume attached to your notebook instance. The KMS key - you provide must be enabled. For information, see Enabling and Disabling - Keys (https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html) + description: |- + The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service + key that SageMaker uses to encrypt data on the storage volume attached to + your notebook instance. The KMS key you provide must be enabled. For information, + see Enabling and Disabling Keys (https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html) in the Amazon Web Services Key Management Service Developer Guide. type: string lifecycleConfigName: - description: 'The name of a lifecycle configuration to associate with - the notebook instance. For information about lifestyle configurations, - see Step 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).' + description: |- + The name of a lifecycle configuration to associate with the notebook instance. + For information about lifestyle configurations, see Step 2.1: (Optional) + Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html). type: string notebookInstanceName: description: The name of the new notebook instance. @@ -108,52 +117,64 @@ spec: environment. type: string roleARN: - description: "When you send any requests to Amazon Web Services resources - from the notebook instance, SageMaker assumes this role to perform - tasks on your behalf. You must grant this role necessary permissions - so SageMaker can perform these tasks. The policy must allow the - SageMaker service principal (sagemaker.amazonaws.com) permissions - to assume this role. For more information, see SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). - \n To be able to pass this role to SageMaker, the caller of this - API must have the iam:PassRole permission." + description: |- + When you send any requests to Amazon Web Services resources from the notebook + instance, SageMaker assumes this role to perform tasks on your behalf. You + must grant this role necessary permissions so SageMaker can perform these + tasks. The policy must allow the SageMaker service principal (sagemaker.amazonaws.com) + permissions to assume this role. For more information, see SageMaker Roles + (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). + + + To be able to pass this role to SageMaker, the caller of this API must have + the iam:PassRole permission. type: string rootAccess: - description: "Whether root access is enabled or disabled for users - of the notebook instance. The default value is Enabled. \n Lifecycle - configurations need root access to be able to set up a notebook - instance. Because of this, lifecycle configurations associated with - a notebook instance always run with root access even if you disable - root access for users." + description: |- + Whether root access is enabled or disabled for users of the notebook instance. + The default value is Enabled. + + + Lifecycle configurations need root access to be able to set up a notebook + instance. Because of this, lifecycle configurations associated with a notebook + instance always run with root access even if you disable root access for + users. type: string securityGroupIDs: - description: The VPC security group IDs, in the form sg-xxxxxxxx. - The security groups must be for the same VPC as specified in the - subnet. + description: |- + The VPC security group IDs, in the form sg-xxxxxxxx. The security groups + must be for the same VPC as specified in the subnet. items: type: string type: array subnetID: - description: The ID of the subnet in a VPC to which you would like - to have a connectivity from your ML compute instance. + description: |- + The ID of the subnet in a VPC to which you would like to have a connectivity + from your ML compute instance. type: string tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -162,8 +183,9 @@ spec: type: object type: array volumeSizeInGB: - description: The size, in GB, of the ML storage volume to attach to - the notebook instance. The default value is 5 GB. + description: |- + The size, in GB, of the ML storage volume to attach to the notebook instance. + The default value is 5 GB. format: int64 type: integer required: @@ -175,24 +197,26 @@ spec: description: NotebookInstanceStatus defines the observed state of NotebookInstance properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -203,14 +227,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -242,12 +268,14 @@ spec: description: The status of the notebook instance. type: string stoppedByControllerMetadata: - description: The URL that you use to connect to the Jupyter notebook - that is running in your notebook instance. + description: |- + The URL that you use to connect to the Jupyter notebook that is running in + your notebook instance. type: string url: - description: The URL that you use to connect to the Jupyter notebook - that is running in your notebook instance. + description: |- + The URL that you use to connect to the Jupyter notebook that is running in + your notebook instance. type: string type: object type: object diff --git a/config/crd/bases/sagemaker.services.k8s.aws_pipelineexecutions.yaml b/config/crd/bases/sagemaker.services.k8s.aws_pipelineexecutions.yaml index 0f78545e..053c70ef 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_pipelineexecutions.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_pipelineexecutions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: pipelineexecutions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,24 +28,33 @@ spec: description: PipelineExecution is the Schema for the PipelineExecutions API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "PipelineExecutionSpec defines the desired state of PipelineExecution. - \n An execution of a pipeline." + description: |- + PipelineExecutionSpec defines the desired state of PipelineExecution. + + + An execution of a pipeline. properties: parallelismConfiguration: - description: This configuration, if specified, overrides the parallelism - configuration of the parent pipeline for this specific run. + description: |- + This configuration, if specified, overrides the parallelism configuration + of the parent pipeline for this specific run. properties: maxParallelExecutionSteps: format: int64 @@ -80,24 +88,26 @@ spec: description: PipelineExecutionStatus defines the observed state of PipelineExecution properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -108,14 +118,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_pipelines.yaml b/config/crd/bases/sagemaker.services.k8s.aws_pipelines.yaml index 9e09641a..579c8ee1 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_pipelines.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_pipelines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: pipelines.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,25 +24,33 @@ spec: description: Pipeline is the Schema for the Pipelines API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "PipelineSpec defines the desired state of Pipeline. \n A - SageMaker Model Building Pipeline instance." + description: |- + PipelineSpec defines the desired state of Pipeline. + + + A SageMaker Model Building Pipeline instance. properties: parallelismConfiguration: - description: This is the configuration that controls the parallelism - of the pipeline. If specified, it applies to all runs of this pipeline - by default. + description: |- + This is the configuration that controls the parallelism of the pipeline. + If specified, it applies to all runs of this pipeline by default. properties: maxParallelExecutionSteps: format: int64 @@ -62,24 +69,29 @@ spec: description: The name of the pipeline. type: string roleARN: - description: The Amazon Resource Name (ARN) of the role used by the - pipeline to access and create resources. + description: |- + The Amazon Resource Name (ARN) of the role used by the pipeline to access + and create resources. type: string tags: description: A list of tags to apply to the created pipeline. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -95,24 +107,26 @@ spec: description: PipelineStatus defines the observed state of Pipeline properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -123,14 +137,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/bases/sagemaker.services.k8s.aws_processingjobs.yaml b/config/crd/bases/sagemaker.services.k8s.aws_processingjobs.yaml index cc089ae7..90895edf 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_processingjobs.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_processingjobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: processingjobs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,22 +28,29 @@ spec: description: ProcessingJob is the Schema for the ProcessingJobs API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "ProcessingJobSpec defines the desired state of ProcessingJob. - \n An Amazon SageMaker processing job that is used to analyze data and - evaluate models. For more information, see Process Data and Evaluate - Models (https://docs.aws.amazon.com/sagemaker/latest/dg/processing-job.html)." + description: |- + ProcessingJobSpec defines the desired state of ProcessingJob. + + + An Amazon SageMaker processing job that is used to analyze data and evaluate + models. For more information, see Process Data and Evaluate Models (https://docs.aws.amazon.com/sagemaker/latest/dg/processing-job.html). properties: appSpecification: description: Configures the processing job to run a specified Docker @@ -64,13 +70,23 @@ spec: environment: additionalProperties: type: string - description: The environment variables to set in the Docker container. - Up to 100 key and values entries in the map are supported. + description: |- + The environment variables to set in the Docker container. Up to 100 key and + values entries in the map are supported. type: object experimentConfig: - description: "Associates a SageMaker job as a trial component with - an experiment and trial. Specified when you call the following APIs: - \n * CreateProcessingJob \n * CreateTrainingJob \n * CreateTransformJob" + description: |- + Associates a SageMaker job as a trial component with an experiment and trial. + Specified when you call the following APIs: + + + * CreateProcessingJob + + + * CreateTrainingJob + + + * CreateTransformJob properties: experimentName: type: string @@ -80,23 +96,22 @@ spec: type: string type: object networkConfig: - description: Networking options for a processing job, such as whether - to allow inbound and outbound network calls to and from processing - containers, and the VPC subnets and security groups to use for VPC-enabled - processing jobs. + description: |- + Networking options for a processing job, such as whether to allow inbound + and outbound network calls to and from processing containers, and the VPC + subnets and security groups to use for VPC-enabled processing jobs. properties: enableInterContainerTrafficEncryption: type: boolean enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -112,16 +127,17 @@ spec: description: An array of inputs configuring the data to download into the processing container. items: - description: The inputs for a processing job. The processing input - must specify exactly one of either S3Input or DatasetDefinition - types. + description: |- + The inputs for a processing job. The processing input must specify exactly + one of either S3Input or DatasetDefinition types. properties: appManaged: type: boolean datasetDefinition: - description: Configuration for Dataset Definition inputs. The - Dataset Definition input must specify exactly one of either - AthenaDatasetDefinition or RedshiftDatasetDefinition types. + description: |- + Configuration for Dataset Definition inputs. The Dataset Definition input + must specify exactly one of either AthenaDatasetDefinition or RedshiftDatasetDefinition + types. properties: athenaDatasetDefinition: description: Configuration for Athena Dataset Definition @@ -197,8 +213,9 @@ spec: inputName: type: string s3Input: - description: Configuration for downloading input data from Amazon - S3 into the processing container. + description: |- + Configuration for downloading input data from Amazon S3 into the processing + container. properties: localPath: type: string @@ -216,9 +233,9 @@ spec: type: object type: array processingJobName: - description: The name of the processing job. The name must be unique - within an Amazon Web Services Region in the Amazon Web Services - account. + description: |- + The name of the processing job. The name must be unique within an Amazon + Web Services Region in the Amazon Web Services account. type: string processingOutputConfig: description: Output configuration for the processing job. @@ -227,9 +244,9 @@ spec: type: string outputs: items: - description: Describes the results of a processing job. The - processing output must specify exactly one of either S3Output - or FeatureStoreOutput types. + description: |- + Describes the results of a processing job. The processing output must specify + exactly one of either S3Output or FeatureStoreOutput types. properties: appManaged: type: boolean @@ -243,8 +260,9 @@ spec: outputName: type: string s3Output: - description: Configuration for uploading output data to - Amazon S3 from the processing container. + description: |- + Configuration for uploading output data to Amazon S3 from the processing + container. properties: localPath: type: string @@ -257,9 +275,10 @@ spec: type: array type: object processingResources: - description: Identifies the resources, ML compute instances, and ML - storage volumes to deploy for a processing job. In distributed training, - you specify more than one instance. + description: |- + Identifies the resources, ML compute instances, and ML storage volumes to + deploy for a processing job. In distributed training, you specify more than + one instance. properties: clusterConfig: description: Configuration for the cluster used to run a processing @@ -278,8 +297,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: The time limit for how long the processing job is allowed @@ -290,22 +310,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -323,24 +348,26 @@ spec: description: ProcessingJobStatus defines the observed state of ProcessingJob properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -351,14 +378,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -384,8 +413,9 @@ spec: type: object type: array failureReason: - description: A string, up to one KB in size, that contains the reason - a processing job failed, if it failed. + description: |- + A string, up to one KB in size, that contains the reason a processing job + failed, if it failed. type: string processingJobStatus: description: Provides the status of a processing job. diff --git a/config/crd/bases/sagemaker.services.k8s.aws_trainingjobs.yaml b/config/crd/bases/sagemaker.services.k8s.aws_trainingjobs.yaml index e1e376cf..9e1b1786 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_trainingjobs.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_trainingjobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: trainingjobs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -32,28 +31,36 @@ spec: description: TrainingJob is the Schema for the TrainingJobs API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "TrainingJobSpec defines the desired state of TrainingJob. - \n Contains information about a training job." + description: |- + TrainingJobSpec defines the desired state of TrainingJob. + + + Contains information about a training job. properties: algorithmSpecification: - description: The registry path of the Docker image that contains the - training algorithm and algorithm-specific metadata, including the - input mode. For more information about algorithms provided by SageMaker, - see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - For information about providing your own algorithms, see Using Your - Own Algorithms with Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html). + description: |- + The registry path of the Docker image that contains the training algorithm + and algorithm-specific metadata, including the input mode. For more information + about algorithms provided by SageMaker, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + For information about providing your own algorithms, see Using Your Own Algorithms + with Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html). properties: algorithmName: type: string @@ -61,11 +68,11 @@ spec: type: boolean metricDefinitions: items: - description: Specifies a metric that the training algorithm - writes to stderr or stdout. SageMakerhyperparameter tuning - captures all defined metrics. You specify one metric that - a hyperparameter tuning job uses as its objective metric to - choose the best training job. + description: |- + Specifies a metric that the training algorithm writes to stderr or stdout. + SageMakerhyperparameter tuning captures all defined metrics. You specify + one metric that a hyperparameter tuning job uses as its objective metric + to choose the best training job. properties: name: type: string @@ -76,38 +83,58 @@ spec: trainingImage: type: string trainingInputMode: - description: "The training input mode that the algorithm supports. - For more information about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon SageMaker - streams data directly from Amazon S3 to the container. \n File - mode \n If an algorithm supports File mode, SageMaker downloads - the training data from S3 to the provisioned ML storage volume, - and mounts the directory to the Docker volume for the training - container. \n You must provision the ML storage volume with - sufficient capacity to accommodate the data downloaded from - S3. In addition to the training data, the ML storage volume - also stores the output model. The algorithm container uses the - ML storage volume to also store intermediate information, if - any. \n For distributed algorithms, training data is distributed - uniformly. Your training duration is predictable if the input - data objects sizes are approximately the same. SageMaker does - not split the files any further for model training. If the object - sizes are skewed, training won't be optimal as the data distribution - is also skewed when one host in a training cluster is overloaded, - thus becoming a bottleneck in training. \n FastFile mode \n - If an algorithm supports FastFile mode, SageMaker streams data - directly from S3 to the container with no code changes, and - provides file system access to the data. Users can author their - training script to interact with these files as if they were - stored on disk. \n FastFile mode works best when the data is - read sequentially. Augmented manifest files aren't supported. - The startup time is lower when there are fewer files in the - S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string type: object checkpointConfig: - description: Contains information about the output location for managed - spot training checkpoint data. + description: |- + Contains information about the output location for managed spot training + checkpoint data. properties: localPath: type: string @@ -115,16 +142,18 @@ spec: type: string type: object debugHookConfig: - description: Configuration information for the Amazon SageMaker Debugger - hook parameters, metric and tensor collections, and storage paths. - To learn more about how to configure the DebugHookConfig parameter, - see Use the SageMaker and Debugger Configuration API Operations - to Create, Update, and Debug Your Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html). + description: |- + Configuration information for the Amazon SageMaker Debugger hook parameters, + metric and tensor collections, and storage paths. To learn more about how + to configure the DebugHookConfig parameter, see Use the SageMaker and Debugger + Configuration API Operations to Create, Update, and Debug Your Training Job + (https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html). properties: collectionConfigurations: items: - description: Configuration information for the Amazon SageMaker - Debugger output tensor collections. + description: |- + Configuration information for the Amazon SageMaker Debugger output tensor + collections. properties: collectionName: type: string @@ -144,13 +173,15 @@ spec: type: string type: object debugRuleConfigurations: - description: Configuration information for Amazon SageMaker Debugger - rules for debugging output tensors. + description: |- + Configuration information for Amazon SageMaker Debugger rules for debugging + output tensors. items: - description: Configuration information for SageMaker Debugger rules - for debugging. To learn more about how to configure the DebugRuleConfiguration - parameter, see Use the SageMaker and Debugger Configuration API - Operations to Create, Update, and Debug Your Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html). + description: |- + Configuration information for SageMaker Debugger rules for debugging. To + learn more about how to configure the DebugRuleConfiguration parameter, see + Use the SageMaker and Debugger Configuration API Operations to Create, Update, + and Debug Your Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html). properties: instanceType: type: string @@ -172,33 +203,36 @@ spec: type: object type: array enableInterContainerTrafficEncryption: - description: To encrypt all communications between ML compute instances - in distributed training, choose True. Encryption provides greater - security for distributed training, but training might take longer. - How long it takes depends on the amount of communication between - compute instances, especially if you use a deep learning algorithm - in distributed training. For more information, see Protect Communications - Between ML Compute Instances in a Distributed Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/train-encrypt.html). + description: |- + To encrypt all communications between ML compute instances in distributed + training, choose True. Encryption provides greater security for distributed + training, but training might take longer. How long it takes depends on the + amount of communication between compute instances, especially if you use + a deep learning algorithm in distributed training. For more information, + see Protect Communications Between ML Compute Instances in a Distributed + Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/train-encrypt.html). type: boolean enableManagedSpotTraining: - description: "To train models using managed spot training, choose - True. Managed spot training provides a fully managed and scalable - infrastructure for training machine learning models. this option - is useful when training jobs can be interrupted and when there is - flexibility when the training job is run. \n The complete and intermediate - results of jobs are stored in an Amazon S3 bucket, and can be used - as a starting point to train models incrementally. Amazon SageMaker - provides metrics and logs in CloudWatch. They can be used to see - when managed spot training jobs are running, interrupted, resumed, - or completed." + description: |- + To train models using managed spot training, choose True. Managed spot training + provides a fully managed and scalable infrastructure for training machine + learning models. this option is useful when training jobs can be interrupted + and when there is flexibility when the training job is run. + + + The complete and intermediate results of jobs are stored in an Amazon S3 + bucket, and can be used as a starting point to train models incrementally. + Amazon SageMaker provides metrics and logs in CloudWatch. They can be used + to see when managed spot training jobs are running, interrupted, resumed, + or completed. type: boolean enableNetworkIsolation: - description: Isolates the training container. No inbound or outbound - network calls can be made, except for calls between peers within - a training cluster for distributed training. If you enable network - isolation for training jobs that are configured to use a VPC, SageMaker - downloads and uploads customer data and model artifacts through - the specified VPC, but the training container does not have network + description: |- + Isolates the training container. No inbound or outbound network calls can + be made, except for calls between peers within a training cluster for distributed + training. If you enable network isolation for training jobs that are configured + to use a VPC, SageMaker downloads and uploads customer data and model artifacts + through the specified VPC, but the training container does not have network access. type: boolean environment: @@ -207,9 +241,18 @@ spec: description: The environment variables to set in the Docker container. type: object experimentConfig: - description: "Associates a SageMaker job as a trial component with - an experiment and trial. Specified when you call the following APIs: - \n * CreateProcessingJob \n * CreateTrainingJob \n * CreateTransformJob" + description: |- + Associates a SageMaker job as a trial component with an experiment and trial. + Specified when you call the following APIs: + + + * CreateProcessingJob + + + * CreateTrainingJob + + + * CreateTransformJob properties: experimentName: type: string @@ -221,33 +264,42 @@ spec: hyperParameters: additionalProperties: type: string - description: "Algorithm-specific parameters that influence the quality - of the model. You set hyperparameters before you start the learning - process. For a list of hyperparameters for each training algorithm - provided by SageMaker, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n You can specify a maximum of 100 hyperparameters. Each hyperparameter - is a key-value pair. Each key and value is limited to 256 characters, - as specified by the Length Constraint. \n Do not include any security-sensitive - information including account access IDs, secrets or tokens in any - hyperparameter field. If the use of security-sensitive credentials - are detected, SageMaker will reject your training job request and - return an exception error." + description: |- + Algorithm-specific parameters that influence the quality of the model. You + set hyperparameters before you start the learning process. For a list of + hyperparameters for each training algorithm provided by SageMaker, see Algorithms + (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + You can specify a maximum of 100 hyperparameters. Each hyperparameter is + a key-value pair. Each key and value is limited to 256 characters, as specified + by the Length Constraint. + + + Do not include any security-sensitive information including account access + IDs, secrets or tokens in any hyperparameter field. If the use of security-sensitive + credentials are detected, SageMaker will reject your training job request + and return an exception error. type: object inputDataConfig: - description: "An array of Channel objects. Each channel is a named - input source. InputDataConfig describes the input data and its location. - \n Algorithms can accept input data from one or more channels. For - example, an algorithm might have two channels of input data, training_data - and validation_data. The configuration for each channel provides - the S3, EFS, or FSx location where the input data is stored. It - also provides information about the stored data: the MIME type, - compression method, and whether the data is wrapped in RecordIO - format. \n Depending on the input mode that the algorithm supports, - SageMaker either copies input data files from an S3 bucket to a - local directory in the Docker container, or makes it available as - input streams. For example, if you specify an EFS location, input - data files are available as input streams. They do not need to be - downloaded." + description: |- + An array of Channel objects. Each channel is a named input source. InputDataConfig + describes the input data and its location. + + + Algorithms can accept input data from one or more channels. For example, + an algorithm might have two channels of input data, training_data and validation_data. + The configuration for each channel provides the S3, EFS, or FSx location + where the input data is stored. It also provides information about the stored + data: the MIME type, compression method, and whether the data is wrapped + in RecordIO format. + + + Depending on the input mode that the algorithm supports, SageMaker either + copies input data files from an S3 bucket to a local directory in the Docker + container, or makes it available as input streams. For example, if you specify + an EFS location, input data files are available as input streams. They do + not need to be downloaded. items: description: A channel is a named input source that training algorithms can consume. @@ -293,53 +345,72 @@ spec: type: object type: object inputMode: - description: "The training input mode that the algorithm supports. - For more information about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon - SageMaker streams data directly from Amazon S3 to the container. - \n File mode \n If an algorithm supports File mode, SageMaker - downloads the training data from S3 to the provisioned ML - storage volume, and mounts the directory to the Docker volume - for the training container. \n You must provision the ML storage - volume with sufficient capacity to accommodate the data downloaded - from S3. In addition to the training data, the ML storage - volume also stores the output model. The algorithm container - uses the ML storage volume to also store intermediate information, - if any. \n For distributed algorithms, training data is distributed - uniformly. Your training duration is predictable if the input - data objects sizes are approximately the same. SageMaker does - not split the files any further for model training. If the - object sizes are skewed, training won't be optimal as the - data distribution is also skewed when one host in a training - cluster is overloaded, thus becoming a bottleneck in training. - \n FastFile mode \n If an algorithm supports FastFile mode, - SageMaker streams data directly from S3 to the container with - no code changes, and provides file system access to the data. - Users can author their training script to interact with these - files as if they were stored on disk. \n FastFile mode works - best when the data is read sequentially. Augmented manifest - files aren't supported. The startup time is lower when there - are fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string recordWrapperType: type: string shuffleConfig: - description: "A configuration for a shuffle option for input - data in a channel. If you use S3Prefix for S3DataType, the - results of the S3 key prefix matches are shuffled. If you - use ManifestFile, the order of the S3 object references in - the ManifestFile is shuffled. If you use AugmentedManifestFile, - the order of the JSON lines in the AugmentedManifestFile is - shuffled. The shuffling order is determined using the Seed - value. \n For Pipe input mode, when ShuffleConfig is specified - shuffling is done at the start of every epoch. With large - datasets, this ensures that the order of the training data - is different for each epoch, and it helps reduce bias and - possible overfitting. In a multi-node training job when ShuffleConfig - is combined with S3DataDistributionType of ShardedByS3Key, - the data is shuffled across nodes so that the content sent - to a particular node on the first epoch might be sent to a - different node on the second epoch." + description: |- + A configuration for a shuffle option for input data in a channel. If you + use S3Prefix for S3DataType, the results of the S3 key prefix matches are + shuffled. If you use ManifestFile, the order of the S3 object references + in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order + of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling + order is determined using the Seed value. + + + For Pipe input mode, when ShuffleConfig is specified shuffling is done at + the start of every epoch. With large datasets, this ensures that the order + of the training data is different for each epoch, and it helps reduce bias + and possible overfitting. In a multi-node training job when ShuffleConfig + is combined with S3DataDistributionType of ShardedByS3Key, the data is shuffled + across nodes so that the content sent to a particular node on the first epoch + might be sent to a different node on the second epoch. properties: seed: format: int64 @@ -348,8 +419,9 @@ spec: type: object type: array outputDataConfig: - description: Specifies the path to the S3 location where you want - to store model artifacts. SageMaker creates subfolders for the artifacts. + description: |- + Specifies the path to the S3 location where you want to store model artifacts. + SageMaker creates subfolders for the artifacts. properties: kmsKeyID: type: string @@ -357,8 +429,9 @@ spec: type: string type: object profilerConfig: - description: Configuration information for Amazon SageMaker Debugger - system monitoring, framework profiling, and storage paths. + description: |- + Configuration information for Amazon SageMaker Debugger system monitoring, + framework profiling, and storage paths. properties: profilingIntervalInMilliseconds: format: int64 @@ -371,8 +444,9 @@ spec: type: string type: object profilerRuleConfigurations: - description: Configuration information for Amazon SageMaker Debugger - rules for profiling system and framework metrics. + description: |- + Configuration information for Amazon SageMaker Debugger rules for profiling + system and framework metrics. items: description: Configuration information for profiling rules. properties: @@ -396,23 +470,25 @@ spec: type: object type: array resourceConfig: - description: "The resources, including the ML compute instances and - ML storage volumes, to use for model training. \n ML storage volumes - store model artifacts and incremental states. Training algorithms - might also use ML storage volumes for scratch space. If you want - SageMaker to use the ML storage volume to store the training data, - choose File as the TrainingInputMode in the algorithm specification. - For distributed training algorithms, specify an instance count greater - than 1." + description: |- + The resources, including the ML compute instances and ML storage volumes, + to use for model training. + + + ML storage volumes store model artifacts and incremental states. Training + algorithms might also use ML storage volumes for scratch space. If you want + SageMaker to use the ML storage volume to store the training data, choose + File as the TrainingInputMode in the algorithm specification. For distributed + training algorithms, specify an instance count greater than 1. properties: instanceCount: format: int64 type: integer instanceGroups: items: - description: Defines an instance group for heterogeneous cluster - training. When requesting a training job using the CreateTrainingJob - (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) + description: |- + Defines an instance group for heterogeneous cluster training. When requesting + a training job using the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) API, you can configure multiple instance groups . properties: instanceCount: @@ -444,26 +520,32 @@ spec: type: integer type: object roleARN: - description: "The Amazon Resource Name (ARN) of an IAM role that SageMaker - can assume to perform tasks on your behalf. \n During model training, - SageMaker needs your permission to read input data from an S3 bucket, - download a Docker image that contains training code, write model - artifacts to an S3 bucket, write logs to Amazon CloudWatch Logs, - and publish metrics to Amazon CloudWatch. You grant permissions - for all of these tasks to an IAM role. For more information, see - SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). - \n To be able to pass this role to SageMaker, the caller of this - API must have the iam:PassRole permission." + description: |- + The Amazon Resource Name (ARN) of an IAM role that SageMaker can assume to + perform tasks on your behalf. + + + During model training, SageMaker needs your permission to read input data + from an S3 bucket, download a Docker image that contains training code, write + model artifacts to an S3 bucket, write logs to Amazon CloudWatch Logs, and + publish metrics to Amazon CloudWatch. You grant permissions for all of these + tasks to an IAM role. For more information, see SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). + + + To be able to pass this role to SageMaker, the caller of this API must have + the iam:PassRole permission. type: string stoppingCondition: - description: "Specifies a limit to how long a model training job can - run. It also specifies how long a managed Spot training job has - to complete. When the job reaches the time limit, SageMaker ends - the training job. Use this API to cap model training costs. \n To - stop a job, SageMaker sends the algorithm the SIGTERM signal, which - delays job termination for 120 seconds. Algorithms can use this - 120-second window to save the model artifacts, so the results of - training are not lost." + description: |- + Specifies a limit to how long a model training job can run. It also specifies + how long a managed Spot training job has to complete. When the job reaches + the time limit, SageMaker ends the training job. Use this API to cap model + training costs. + + + To stop a job, SageMaker sends the algorithm the SIGTERM signal, which delays + job termination for 120 seconds. Algorithms can use this 120-second window + to save the model artifacts, so the results of training are not lost. properties: maxRuntimeInSeconds: format: int64 @@ -473,23 +555,28 @@ spec: type: integer type: object tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -498,8 +585,9 @@ spec: type: object type: array tensorBoardOutputConfig: - description: Configuration of storage locations for the Amazon SageMaker - Debugger TensorBoard output data. + description: |- + Configuration of storage locations for the Amazon SageMaker Debugger TensorBoard + output data. properties: localPath: type: string @@ -507,15 +595,16 @@ spec: type: string type: object trainingJobName: - description: The name of the training job. The name must be unique - within an Amazon Web Services Region in an Amazon Web Services account. + description: |- + The name of the training job. The name must be unique within an Amazon Web + Services Region in an Amazon Web Services account. type: string vpcConfig: - description: A VpcConfig object that specifies the VPC that you want - your training job to connect to. Control access to and from your - training container by configuring the VPC. For more information, - see Protect Training Jobs by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + A VpcConfig object that specifies the VPC that you want your training job + to connect to. Control access to and from your training container by configuring + the VPC. For more information, see Protect Training Jobs by Using an Amazon + Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -538,24 +627,26 @@ spec: description: TrainingJobStatus defines the observed state of TrainingJob properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -566,14 +657,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -604,8 +697,9 @@ spec: format: date-time type: string debugRuleEvaluationStatuses: - description: Evaluation status of Amazon SageMaker Debugger rules - for debugging on a training job. + description: |- + Evaluation status of Amazon SageMaker Debugger rules for debugging on a training + job. items: description: Information about the status of the rule evaluation. properties: @@ -631,15 +725,17 @@ spec: format: date-time type: string modelArtifacts: - description: Information about the Amazon S3 location that is configured - for storing model artifacts. + description: |- + Information about the Amazon S3 location that is configured for storing model + artifacts. properties: s3ModelArtifacts: type: string type: object profilerRuleEvaluationStatuses: - description: Evaluation status of Amazon SageMaker Debugger rules - for profiling on a training job. + description: |- + Evaluation status of Amazon SageMaker Debugger rules for profiling on a training + job. items: description: Information about the status of the rule evaluation. properties: @@ -660,38 +756,111 @@ spec: description: Profiling status of a training job. type: string secondaryStatus: - description: "Provides detailed information about the state of the - training job. For detailed information on the secondary status of - the training job, see StatusMessage under SecondaryStatusTransition. - \n SageMaker provides primary statuses and secondary statuses that - apply to each of them: \n InProgress \n * Starting - Starting the - training job. \n * Downloading - An optional stage for algorithms - that support File training input mode. It indicates that data is - being downloaded to the ML storage volumes. \n * Training - Training - is in progress. \n * Interrupted - The job stopped because the managed - spot training instances were interrupted. \n * Uploading - Training - is complete and the model artifacts are being uploaded to the S3 - location. \n Completed \n * Completed - The training job has completed. - \n Failed \n * Failed - The training job has failed. The reason - for the failure is returned in the FailureReason field of DescribeTrainingJobResponse. - \n Stopped \n * MaxRuntimeExceeded - The job stopped because it - exceeded the maximum allowed runtime. \n * MaxWaitTimeExceeded - - The job stopped because it exceeded the maximum allowed wait time. - \n * Stopped - The training job has stopped. \n Stopping \n * Stopping - - Stopping the training job. \n Valid values for SecondaryStatus - are subject to change. \n We no longer support the following secondary - statuses: \n * LaunchingMLInstances \n * PreparingTraining \n * - DownloadingTrainingImage" + description: |- + Provides detailed information about the state of the training job. For detailed + information on the secondary status of the training job, see StatusMessage + under SecondaryStatusTransition. + + + SageMaker provides primary statuses and secondary statuses that apply to + each of them: + + + InProgress + + + * Starting - Starting the training job. + + + * Downloading - An optional stage for algorithms that support File training + input mode. It indicates that data is being downloaded to the ML storage + volumes. + + + * Training - Training is in progress. + + + * Interrupted - The job stopped because the managed spot training instances + were interrupted. + + + * Uploading - Training is complete and the model artifacts are being uploaded + to the S3 location. + + + Completed + + + * Completed - The training job has completed. + + + Failed + + + * Failed - The training job has failed. The reason for the failure is + returned in the FailureReason field of DescribeTrainingJobResponse. + + + Stopped + + + * MaxRuntimeExceeded - The job stopped because it exceeded the maximum + allowed runtime. + + + * MaxWaitTimeExceeded - The job stopped because it exceeded the maximum + allowed wait time. + + + * Stopped - The training job has stopped. + + + Stopping + + + * Stopping - Stopping the training job. + + + Valid values for SecondaryStatus are subject to change. + + + We no longer support the following secondary statuses: + + + * LaunchingMLInstances + + + * PreparingTraining + + + * DownloadingTrainingImage type: string trainingJobStatus: - description: "The status of the training job. \n SageMaker provides - the following training job statuses: \n * InProgress - The training - is in progress. \n * Completed - The training job has completed. - \n * Failed - The training job has failed. To see the reason for - the failure, see the FailureReason field in the response to a DescribeTrainingJobResponse - call. \n * Stopping - The training job is stopping. \n * Stopped - - The training job has stopped. \n For more detailed information, - see SecondaryStatus." + description: |- + The status of the training job. + + + SageMaker provides the following training job statuses: + + + * InProgress - The training is in progress. + + + * Completed - The training job has completed. + + + * Failed - The training job has failed. To see the reason for the failure, + see the FailureReason field in the response to a DescribeTrainingJobResponse + call. + + + * Stopping - The training job is stopping. + + + * Stopped - The training job has stopped. + + + For more detailed information, see SecondaryStatus. type: string warmPoolStatus: description: The status of the warm pool associated with the training diff --git a/config/crd/bases/sagemaker.services.k8s.aws_transformjobs.yaml b/config/crd/bases/sagemaker.services.k8s.aws_transformjobs.yaml index 3edd452d..75defb9e 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_transformjobs.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_transformjobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: transformjobs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,42 +28,56 @@ spec: description: TransformJob is the Schema for the TransformJobs API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "TransformJobSpec defines the desired state of TransformJob. - \n A batch transform job. For information about SageMaker batch transform, - see Use Batch Transform (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform.html)." + description: |- + TransformJobSpec defines the desired state of TransformJob. + + + A batch transform job. For information about SageMaker batch transform, see + Use Batch Transform (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform.html). properties: batchStrategy: - description: "Specifies the number of records to include in a mini-batch - for an HTTP inference request. A record is a single unit of input - data that inference can be made on. For example, a single line in - a CSV file is a record. \n To enable the batch strategy, you must - set the SplitType property to Line, RecordIO, or TFRecord. \n To - use only one record when making an HTTP invocation request to a - container, set BatchStrategy to SingleRecord and SplitType to Line. - \n To fit as many records in a mini-batch as can fit within the - MaxPayloadInMB limit, set BatchStrategy to MultiRecord and SplitType - to Line." + description: |- + Specifies the number of records to include in a mini-batch for an HTTP inference + request. A record is a single unit of input data that inference can be made + on. For example, a single line in a CSV file is a record. + + + To enable the batch strategy, you must set the SplitType property to Line, + RecordIO, or TFRecord. + + + To use only one record when making an HTTP invocation request to a container, + set BatchStrategy to SingleRecord and SplitType to Line. + + + To fit as many records in a mini-batch as can fit within the MaxPayloadInMB + limit, set BatchStrategy to MultiRecord and SplitType to Line. type: string dataProcessing: - description: The data structure used to specify the data to be used - for inference in a batch transform job and to associate the data - that is relevant to the prediction results in the output. The input - filter provided allows you to exclude input data that is not needed - for inference in a batch transform job. The output filter provided - allows you to include input data relevant to interpreting the predictions - in the output from the job. For more information, see Associate + description: |- + The data structure used to specify the data to be used for inference in a + batch transform job and to associate the data that is relevant to the prediction + results in the output. The input filter provided allows you to exclude input + data that is not needed for inference in a batch transform job. The output + filter provided allows you to include input data relevant to interpreting + the predictions in the output from the job. For more information, see Associate Prediction Results with their Corresponding Input Records (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html). properties: inputFilter: @@ -77,13 +90,23 @@ spec: environment: additionalProperties: type: string - description: The environment variables to set in the Docker container. - We support up to 16 key and values entries in the map. + description: |- + The environment variables to set in the Docker container. We support up to + 16 key and values entries in the map. type: object experimentConfig: - description: "Associates a SageMaker job as a trial component with - an experiment and trial. Specified when you call the following APIs: - \n * CreateProcessingJob \n * CreateTrainingJob \n * CreateTransformJob" + description: |- + Associates a SageMaker job as a trial component with an experiment and trial. + Specified when you call the following APIs: + + + * CreateProcessingJob + + + * CreateTrainingJob + + + * CreateTransformJob properties: experimentName: type: string @@ -93,36 +116,41 @@ spec: type: string type: object maxConcurrentTransforms: - description: The maximum number of parallel requests that can be sent - to each instance in a transform job. If MaxConcurrentTransforms - is set to 0 or left unset, Amazon SageMaker checks the optional - execution-parameters to determine the settings for your chosen algorithm. - If the execution-parameters endpoint is not enabled, the default - value is 1. For more information on execution-parameters, see How - Containers Serve Requests (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-batch-code.html#your-algorithms-batch-code-how-containe-serves-requests). + description: |- + The maximum number of parallel requests that can be sent to each instance + in a transform job. If MaxConcurrentTransforms is set to 0 or left unset, + Amazon SageMaker checks the optional execution-parameters to determine the + settings for your chosen algorithm. If the execution-parameters endpoint + is not enabled, the default value is 1. For more information on execution-parameters, + see How Containers Serve Requests (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-batch-code.html#your-algorithms-batch-code-how-containe-serves-requests). For built-in algorithms, you don't need to set a value for MaxConcurrentTransforms. format: int64 type: integer maxPayloadInMB: - description: "The maximum allowed size of the payload, in MB. A payload - is the data portion of a record (without metadata). The value in - MaxPayloadInMB must be greater than, or equal to, the size of a - single record. To estimate the size of a record in MB, divide the - size of your dataset by the number of records. To ensure that the - records fit within the maximum payload size, we recommend using - a slightly larger value. The default value is 6 MB. \n The value - of MaxPayloadInMB cannot be greater than 100 MB. If you specify + description: |- + The maximum allowed size of the payload, in MB. A payload is the data portion + of a record (without metadata). The value in MaxPayloadInMB must be greater + than, or equal to, the size of a single record. To estimate the size of a + record in MB, divide the size of your dataset by the number of records. To + ensure that the records fit within the maximum payload size, we recommend + using a slightly larger value. The default value is 6 MB. + + + The value of MaxPayloadInMB cannot be greater than 100 MB. If you specify the MaxConcurrentTransforms parameter, the value of (MaxConcurrentTransforms - * MaxPayloadInMB) also cannot exceed 100 MB. \n For cases where - the payload might be arbitrarily large and is transmitted using - HTTP chunked encoding, set the value to 0. This feature works only + * MaxPayloadInMB) also cannot exceed 100 MB. + + + For cases where the payload might be arbitrarily large and is transmitted + using HTTP chunked encoding, set the value to 0. This feature works only in supported algorithms. Currently, Amazon SageMaker built-in algorithms - do not support HTTP chunked encoding." + do not support HTTP chunked encoding. format: int64 type: integer modelClientConfig: - description: Configures the timeout and maximum number of retries - for processing a transform job invocation. + description: |- + Configures the timeout and maximum number of retries for processing a transform + job invocation. properties: invocationsMaxRetries: format: int64 @@ -132,28 +160,33 @@ spec: type: integer type: object modelName: - description: The name of the model that you want to use for the transform - job. ModelName must be the name of an existing Amazon SageMaker - model within an Amazon Web Services Region in an Amazon Web Services - account. + description: |- + The name of the model that you want to use for the transform job. ModelName + must be the name of an existing Amazon SageMaker model within an Amazon Web + Services Region in an Amazon Web Services account. type: string tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -185,8 +218,9 @@ spec: type: string type: object transformJobName: - description: The name of the transform job. The name must be unique - within an Amazon Web Services Region in an Amazon Web Services account. + description: |- + The name of the transform job. The name must be unique within an Amazon Web + Services Region in an Amazon Web Services account. type: string transformOutput: description: Describes the results of the transform job. @@ -201,8 +235,9 @@ spec: type: string type: object transformResources: - description: Describes the resources, including ML instance types - and ML instance count, to use for the transform job. + description: |- + Describes the resources, including ML instance types and ML instance count, + to use for the transform job. properties: instanceCount: format: int64 @@ -223,24 +258,26 @@ spec: description: TransformJobStatus defines the observed state of TransformJob properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -251,14 +288,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -284,14 +323,16 @@ spec: type: object type: array failureReason: - description: If the transform job failed, FailureReason describes - why it failed. A transform job creates a log file, which includes - error messages, and stores it as an Amazon S3 object. For more information, - see Log Amazon SageMaker Events with Amazon CloudWatch (https://docs.aws.amazon.com/sagemaker/latest/dg/logging-cloudwatch.html). + description: |- + If the transform job failed, FailureReason describes why it failed. A transform + job creates a log file, which includes error messages, and stores it as an + Amazon S3 object. For more information, see Log Amazon SageMaker Events with + Amazon CloudWatch (https://docs.aws.amazon.com/sagemaker/latest/dg/logging-cloudwatch.html). type: string transformJobStatus: - description: The status of the transform job. If the transform job - failed, the reason is returned in the FailureReason field. + description: |- + The status of the transform job. If the transform job failed, the reason + is returned in the FailureReason field. type: string type: object type: object diff --git a/config/crd/bases/sagemaker.services.k8s.aws_userprofiles.yaml b/config/crd/bases/sagemaker.services.k8s.aws_userprofiles.yaml index 17c7fd47..b65f7b36 100644 --- a/config/crd/bases/sagemaker.services.k8s.aws_userprofiles.yaml +++ b/config/crd/bases/sagemaker.services.k8s.aws_userprofiles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: userprofiles.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,14 +24,19 @@ spec: description: UserProfile is the Schema for the UserProfiles API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -43,36 +47,45 @@ spec: description: The ID of the associated Domain. type: string singleSignOnUserIdentifier: - description: A specifier for the type of value specified in SingleSignOnUserValue. - Currently, the only supported value is "UserName". If the Domain's - AuthMode is IAM Identity Center, this field is required. If the - Domain's AuthMode is not IAM Identity Center, this field cannot - be specified. + description: |- + A specifier for the type of value specified in SingleSignOnUserValue. Currently, + the only supported value is "UserName". If the Domain's AuthMode is IAM Identity + Center, this field is required. If the Domain's AuthMode is not IAM Identity + Center, this field cannot be specified. type: string singleSignOnUserValue: - description: The username of the associated Amazon Web Services Single - Sign-On User for this UserProfile. If the Domain's AuthMode is IAM - Identity Center, this field is required, and must match a valid - username of a user in your directory. If the Domain's AuthMode is - not IAM Identity Center, this field cannot be specified. + description: |- + The username of the associated Amazon Web Services Single Sign-On User for + this UserProfile. If the Domain's AuthMode is IAM Identity Center, this field + is required, and must match a valid username of a user in your directory. + If the Domain's AuthMode is not IAM Identity Center, this field cannot be + specified. type: string tags: - description: "Each tag consists of a key and an optional value. Tag - keys must be unique per resource. \n Tags that you specify for the - User Profile are also added to all Apps that the User Profile launches." + description: |- + Each tag consists of a key and an optional value. Tag keys must be unique + per resource. + + + Tags that you specify for the User Profile are also added to all Apps that + the User Profile launches. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -92,9 +105,9 @@ spec: description: The JupyterServer app settings. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -115,8 +128,9 @@ spec: properties: customImages: items: - description: A custom SageMaker image. For more information, - see Bring your own SageMaker image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). + description: |- + A custom SageMaker image. For more information, see Bring your own SageMaker + image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). properties: appImageConfigName: type: string @@ -128,9 +142,9 @@ spec: type: object type: array defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -147,10 +161,10 @@ spec: type: array type: object rStudioServerProAppSettings: - description: A collection of settings that configure user interaction - with the RStudioServerPro app. RStudioServerProAppSettings cannot - be updated. The RStudioServerPro app must be deleted and a new - one created to make any changes. + description: |- + A collection of settings that configure user interaction with the RStudioServerPro + app. RStudioServerProAppSettings cannot be updated. The RStudioServerPro + app must be deleted and a new one created to make any changes. properties: accessStatus: type: string @@ -162,11 +176,11 @@ spec: type: string type: array sharingSettings: - description: Specifies options for sharing SageMaker Studio notebooks. - These settings are specified as part of DefaultUserSettings - when the CreateDomain API is called, and as part of UserSettings - when the CreateUserProfile API is called. When SharingSettings - is not specified, notebook sharing isn't allowed. + description: |- + Specifies options for sharing SageMaker Studio notebooks. These settings + are specified as part of DefaultUserSettings when the CreateDomain API is + called, and as part of UserSettings when the CreateUserProfile API is called. + When SharingSettings is not specified, notebook sharing isn't allowed. properties: notebookOutputOption: type: string @@ -179,9 +193,9 @@ spec: description: The TensorBoard app settings. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -202,24 +216,26 @@ spec: description: UserProfileStatus defines the observed state of UserProfile properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -230,14 +246,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/common/bases/services.k8s.aws_adoptedresources.yaml b/config/crd/common/bases/services.k8s.aws_adoptedresources.yaml index 7dca541d..65eff735 100644 --- a/config/crd/common/bases/services.k8s.aws_adoptedresources.yaml +++ b/config/crd/common/bases/services.k8s.aws_adoptedresources.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: adoptedresources.services.k8s.aws spec: group: services.k8s.aws @@ -21,14 +20,19 @@ spec: description: AdoptedResource is the schema for the AdoptedResource API. properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -42,126 +46,149 @@ spec: additionalKeys: additionalProperties: type: string - description: AdditionalKeys represents any additional arbitrary - identifiers used when describing the target resource. + description: |- + AdditionalKeys represents any additional arbitrary identifiers used when + describing the target resource. type: object arn: - description: ARN is the AWS Resource Name for the resource. It - is a globally unique identifier. + description: |- + ARN is the AWS Resource Name for the resource. It is a globally + unique identifier. type: string nameOrID: - description: NameOrId is a user-supplied string identifier for - the resource. It may or may not be globally unique, depending - on the type of resource. + description: |- + NameOrId is a user-supplied string identifier for the resource. It may + or may not be globally unique, depending on the type of resource. type: string type: object kubernetes: - description: ResourceWithMetadata provides the values necessary to - create a Kubernetes resource and override any of its metadata values. + description: |- + ResourceWithMetadata provides the values necessary to create a + Kubernetes resource and override any of its metadata values. properties: group: type: string kind: type: string metadata: - description: "ObjectMeta is metadata that all persisted resources - must have, which includes all objects users must create. It - is not possible to use `metav1.ObjectMeta` inside spec, as the - controller-gen automatically converts this to an arbitrary string-string - map. https://github.com/kubernetes-sigs/controller-tools/issues/385 - \n Active discussion about inclusion of this field in the spec - is happening in this PR: https://github.com/kubernetes-sigs/controller-tools/pull/395 - \n Until this is allowed, or if it never is, we will produce - a subset of the object meta that contains only the fields which - the user is allowed to modify in the metadata." + description: |- + ObjectMeta is metadata that all persisted resources must have, which includes all objects + users must create. + It is not possible to use `metav1.ObjectMeta` inside spec, as the controller-gen + automatically converts this to an arbitrary string-string map. + https://github.com/kubernetes-sigs/controller-tools/issues/385 + + + Active discussion about inclusion of this field in the spec is happening in this PR: + https://github.com/kubernetes-sigs/controller-tools/pull/395 + + + Until this is allowed, or if it never is, we will produce a subset of the object meta + that contains only the fields which the user is allowed to modify in the metadata. properties: annotations: additionalProperties: type: string - description: 'Annotations is an unstructured key value map - stored with a resource that may be set by external tools - to store and retrieve arbitrary metadata. They are not queryable - and should be preserved when modifying objects. More info: - http://kubernetes.io/docs/user-guide/annotations' + description: |- + Annotations is an unstructured key value map stored with a resource that may be + set by external tools to store and retrieve arbitrary metadata. They are not + queryable and should be preserved when modifying objects. + More info: http://kubernetes.io/docs/user-guide/annotations type: object generateName: - description: "GenerateName is an optional prefix, used by - the server, to generate a unique name ONLY IF the Name field - has not been provided. If this field is used, the name returned - to the client will be different than the name passed. This - value will also be combined with a unique suffix. The provided - value has the same validation rules as the Name field, and - may be truncated by the length of the suffix required to - make the value unique on the server. \n If this field is - specified and the generated name exists, the server will - NOT return a 409 - instead, it will either return 201 Created - or 500 with Reason ServerTimeout indicating a unique name - could not be found in the time allotted, and the client - should retry (optionally after the time indicated in the - Retry-After header). \n Applied only if Name is not specified. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency" + description: |- + GenerateName is an optional prefix, used by the server, to generate a unique + name ONLY IF the Name field has not been provided. + If this field is used, the name returned to the client will be different + than the name passed. This value will also be combined with a unique suffix. + The provided value has the same validation rules as the Name field, + and may be truncated by the length of the suffix required to make the value + unique on the server. + + + If this field is specified and the generated name exists, the server will + NOT return a 409 - instead, it will either return 201 Created or 500 with Reason + ServerTimeout indicating a unique name could not be found in the time allotted, and the client + should retry (optionally after the time indicated in the Retry-After header). + + + Applied only if Name is not specified. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency type: string labels: additionalProperties: type: string - description: 'Map of string keys and values that can be used - to organize and categorize (scope and select) objects. May - match selectors of replication controllers and services. - More info: http://kubernetes.io/docs/user-guide/labels' + description: |- + Map of string keys and values that can be used to organize and categorize + (scope and select) objects. May match selectors of replication controllers + and services. + More info: http://kubernetes.io/docs/user-guide/labels type: object name: - description: 'Name must be unique within a namespace. Is required - when creating resources, although some resources may allow - a client to request the generation of an appropriate name - automatically. Name is primarily intended for creation idempotence - and configuration definition. Cannot be updated. More info: - http://kubernetes.io/docs/user-guide/identifiers#names' + description: |- + Name must be unique within a namespace. Is required when creating resources, although + some resources may allow a client to request the generation of an appropriate name + automatically. Name is primarily intended for creation idempotence and configuration + definition. + Cannot be updated. + More info: http://kubernetes.io/docs/user-guide/identifiers#names type: string namespace: - description: "Namespace defines the space within each name - must be unique. An empty namespace is equivalent to the - \"default\" namespace, but \"default\" is the canonical - representation. Not all objects are required to be scoped - to a namespace - the value of this field for those objects - will be empty. \n Must be a DNS_LABEL. Cannot be updated. - More info: http://kubernetes.io/docs/user-guide/namespaces" + description: |- + Namespace defines the space within each name must be unique. An empty namespace is + equivalent to the "default" namespace, but "default" is the canonical representation. + Not all objects are required to be scoped to a namespace - the value of this field for + those objects will be empty. + + + Must be a DNS_LABEL. + Cannot be updated. + More info: http://kubernetes.io/docs/user-guide/namespaces type: string ownerReferences: - description: List of objects depended by this object. If ALL - objects in the list have been deleted, this object will - be garbage collected. If this object is managed by a controller, - then an entry in this list will point to this controller, - with the controller field set to true. There cannot be more - than one managing controller. + description: |- + List of objects depended by this object. If ALL objects in the list have + been deleted, this object will be garbage collected. If this object is managed by a controller, + then an entry in this list will point to this controller, with the controller field set to true. + There cannot be more than one managing controller. items: - description: OwnerReference contains enough information - to let you identify an owning object. An owning object - must be in the same namespace as the dependent, or be - cluster-scoped, so there is no namespace field. + description: |- + OwnerReference contains enough information to let you identify an owning + object. An owning object must be in the same namespace as the dependent, or + be cluster-scoped, so there is no namespace field. properties: apiVersion: description: API version of the referent. type: string blockOwnerDeletion: - description: If true, AND if the owner has the "foregroundDeletion" - finalizer, then the owner cannot be deleted from the - key-value store until this reference is removed. Defaults - to false. To set this field, a user needs "delete" - permission of the owner, otherwise 422 (Unprocessable - Entity) will be returned. + description: |- + If true, AND if the owner has the "foregroundDeletion" finalizer, then + the owner cannot be deleted from the key-value store until this + reference is removed. + See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion + for how the garbage collector interacts with this field and enforces the foreground deletion. + Defaults to false. + To set this field, a user needs "delete" permission of the owner, + otherwise 422 (Unprocessable Entity) will be returned. type: boolean controller: description: If true, this reference points to the managing controller. type: boolean kind: - description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind of the referent. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string name: - description: 'Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names' + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names type: string uid: - description: 'UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids' + description: |- + UID of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids type: string required: - apiVersion @@ -185,13 +212,14 @@ spec: AdoptedResource. properties: conditions: - description: A collection of `ackv1alpha1.Condition` objects that - describe the various terminal states of the adopted resource CR - and its target custom resource + description: |- + A collection of `ackv1alpha1.Condition` objects that describe the various + terminal states of the adopted resource CR and its target custom resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/crd/common/bases/services.k8s.aws_fieldexports.yaml b/config/crd/common/bases/services.k8s.aws_fieldexports.yaml index 4a7ab61b..4d3a8f1d 100644 --- a/config/crd/common/bases/services.k8s.aws_fieldexports.yaml +++ b/config/crd/common/bases/services.k8s.aws_fieldexports.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: fieldexports.services.k8s.aws spec: group: services.k8s.aws @@ -21,14 +20,19 @@ spec: description: FieldExport is the schema for the FieldExport API. properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -36,15 +40,17 @@ spec: description: FieldExportSpec defines the desired state of the FieldExport. properties: from: - description: ResourceFieldSelector provides the values necessary to - identify an individual field on an individual K8s resource. + description: |- + ResourceFieldSelector provides the values necessary to identify an individual + field on an individual K8s resource. properties: path: type: string resource: - description: NamespacedResource provides all the values necessary - to identify an ACK resource of a given type (within the same - namespace as the custom resource containing this type). + description: |- + NamespacedResource provides all the values necessary to identify an ACK + resource of a given type (within the same namespace as the custom resource + containing this type). properties: group: type: string @@ -62,16 +68,18 @@ spec: - resource type: object to: - description: FieldExportTarget provides the values necessary to identify - the output path for a field export. + description: |- + FieldExportTarget provides the values necessary to identify the + output path for a field export. properties: key: description: Key overrides the default value (`.`) for the FieldExport target type: string kind: - description: FieldExportOutputType represents all types that can - be produced by a field export operation + description: |- + FieldExportOutputType represents all types that can be produced by a field + export operation enum: - configmap - secret @@ -94,12 +102,14 @@ spec: description: FieldExportStatus defines the observed status of the FieldExport. properties: conditions: - description: A collection of `ackv1alpha1.Condition` objects that - describe the various recoverable states of the field CR + description: |- + A collection of `ackv1alpha1.Condition` objects that describe the various + recoverable states of the field CR items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/config/rbac/cluster-role-controller.yaml b/config/rbac/cluster-role-controller.yaml index 05f7e696..243c6966 100644 --- a/config/rbac/cluster-role-controller.yaml +++ b/config/rbac/cluster-role-controller.yaml @@ -2,7 +2,6 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - creationTimestamp: null name: ack-sagemaker-controller rules: - apiGroups: diff --git a/go.mod b/go.mod index 0d8a8501..cc930c1b 100644 --- a/go.mod +++ b/go.mod @@ -3,18 +3,18 @@ module github.com/aws-controllers-k8s/sagemaker-controller go 1.21 require ( - github.com/aws-controllers-k8s/runtime v0.29.2 + github.com/aws-controllers-k8s/runtime v0.30.0 github.com/aws/aws-sdk-go v1.49.0 github.com/ghodss/yaml v1.0.0 - github.com/go-logr/logr v1.2.4 - github.com/google/go-cmp v0.5.9 + github.com/go-logr/logr v1.4.1 + github.com/google/go-cmp v0.6.0 github.com/spf13/pflag v1.0.5 - github.com/stretchr/testify v1.8.2 + github.com/stretchr/testify v1.8.4 go.uber.org/zap v1.26.0 - k8s.io/api v0.28.3 - k8s.io/apimachinery v0.28.3 - k8s.io/client-go v0.28.3 - sigs.k8s.io/controller-runtime v0.16.3 + k8s.io/api v0.29.0 + k8s.io/apimachinery v0.29.0 + k8s.io/client-go v0.29.0 + sigs.k8s.io/controller-runtime v0.17.0 ) require ( @@ -23,9 +23,9 @@ 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.11.0 // indirect - github.com/evanphx/json-patch/v5 v5.6.0 // indirect - github.com/fsnotify/fsnotify v1.6.0 // indirect - github.com/go-logr/zapr v1.2.4 // indirect + github.com/evanphx/json-patch/v5 v5.8.0 // indirect + github.com/fsnotify/fsnotify v1.7.0 // indirect + github.com/go-logr/zapr v1.3.0 // 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 @@ -43,38 +43,38 @@ require ( 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/matttproud/golang_protobuf_extensions v1.0.4 // indirect + github.com/matttproud/golang_protobuf_extensions/v2 v2.0.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/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/prometheus/client_golang v1.16.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_golang v1.18.0 // indirect + github.com/prometheus/client_model v0.5.0 // indirect + github.com/prometheus/common v0.45.0 // indirect + github.com/prometheus/procfs v0.12.0 // indirect github.com/samber/lo v1.37.0 // indirect github.com/stretchr/objx v0.5.0 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/exp v0.0.0-20220722155223-a9213eeb770e // indirect - golang.org/x/net v0.17.0 // indirect - golang.org/x/oauth2 v0.8.0 // indirect - golang.org/x/sys v0.13.0 // indirect - golang.org/x/term v0.13.0 // indirect - golang.org/x/text v0.13.0 // indirect + golang.org/x/net v0.19.0 // indirect + golang.org/x/oauth2 v0.12.0 // indirect + golang.org/x/sys v0.16.0 // indirect + golang.org/x/term v0.15.0 // indirect + golang.org/x/text v0.14.0 // indirect golang.org/x/time v0.3.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect google.golang.org/appengine v1.6.7 // indirect - google.golang.org/protobuf v1.30.0 // indirect + google.golang.org/protobuf v1.31.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apiextensions-apiserver v0.28.3 // indirect - k8s.io/component-base v0.28.3 // 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 + k8s.io/apiextensions-apiserver v0.29.0 // indirect + k8s.io/component-base v0.29.0 // indirect + k8s.io/klog/v2 v2.110.1 // indirect + k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 // indirect + k8s.io/utils v0.0.0-20230726121419-3b25d923346b // 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 + sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect + sigs.k8s.io/yaml v1.4.0 // indirect ) diff --git a/go.sum b/go.sum index c25cce4d..2fa2e201 100644 --- a/go.sum +++ b/go.sum @@ -1,8 +1,7 @@ -github.com/aws-controllers-k8s/runtime v0.29.2 h1:t6wwoKqFmtbblMcwFivpWp1FZa0gkczoUsk+maIsiRA= -github.com/aws-controllers-k8s/runtime v0.29.2/go.mod h1:mZa9l+/l+tlbxWVmMWWbUC3oAHUbeTzlI7xTOMdYHpA= +github.com/aws-controllers-k8s/runtime v0.30.0 h1:AibYRdi/7xUA3t8BA0u8g+J+OioaTAT6R4Vq8hxLiYw= +github.com/aws-controllers-k8s/runtime v0.30.0/go.mod h1:Pv1ozlUaO11KO2mwPN/HzhAtZ70ZDE9UP24mjsbkul0= github.com/aws/aws-sdk-go v1.49.0 h1:g9BkW1fo9GqKfwg2+zCD+TW/D36Ux+vtfJ8guF4AYmY= github.com/aws/aws-sdk-go v1.49.0/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= -github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= 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/cenkalti/backoff/v4 v4.2.1 h1:y4OZtCnogmCPw98Zjyt5a6+QwPLGkiQsYW5oUqylYbM= @@ -17,17 +16,17 @@ github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxER github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= 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/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= -github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= +github.com/evanphx/json-patch/v5 v5.8.0 h1:lRj6N9Nci7MvzrXuX6HFzU8XjmhPiXPlsKEy1u0KQro= +github.com/evanphx/json-patch/v5 v5.8.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= +github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= +github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= -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/zapr v1.2.4/go.mod h1:FyHWQIzQORZ0QVE1BtVHv3cKtNLuXsbNLtpuhNapBOA= +github.com/go-logr/logr v1.3.0/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ= +github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= +github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg= 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= @@ -40,7 +39,6 @@ github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -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.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= @@ -49,8 +47,9 @@ github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvR github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -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-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/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= @@ -66,7 +65,6 @@ github.com/itchyny/timefmt-go v0.1.3 h1:7M3LGVDsqcd0VZH2U+x393obrzZisp7C0uEe921i github.com/itchyny/timefmt-go v0.1.3/go.mod h1:0osSSCQSASBJMsIZnhAaF1C2fCBTJZXrnj37mG8/c+A= github.com/jaypipes/envutil v1.0.0 h1:u6Vwy9HwruFihoZrL0bxDLCa/YNadGVwKyPElNmZWow= github.com/jaypipes/envutil v1.0.0/go.mod h1:vgIRDly+xgBq0eeZRcflOHMMobMwgC6MkMbxo/Nw65M= -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= @@ -77,7 +75,6 @@ github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnr github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= 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/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.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= @@ -89,8 +86,8 @@ github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0 github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= -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/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg= +github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k= 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= @@ -98,23 +95,22 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= 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/onsi/ginkgo/v2 v2.11.0 h1:WgqUCUt/lT6yXoQ8Wef0fsNn5cAuMK7+KT9UFRz2tcU= -github.com/onsi/ginkgo/v2 v2.11.0/go.mod h1:ZhrRA5XmEE3x3rhlzamx/JJvujdZoJ2uvgI7kR0iZvM= -github.com/onsi/gomega v1.27.10 h1:naR28SdDFlqrG6kScpT8VWpu1xWY5nJRCF3XaYyBjhI= -github.com/onsi/gomega v1.27.10/go.mod h1:RsS8tutOdbdgzbPtzzATp12yT7kM5I5aElG3evPbQ0M= -github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/onsi/ginkgo/v2 v2.14.0 h1:vSmGj2Z5YPb9JwCWT6z6ihcUvDhuXLc3sJiqd3jMKAY= +github.com/onsi/ginkgo/v2 v2.14.0/go.mod h1:JkUdW7JkN0V6rFvsHcJ478egV3XH9NxpD27Hal/PhZw= +github.com/onsi/gomega v1.30.0 h1:hvMK7xYz4D3HapigLTeGdId/NcfQx1VHMJc60ew99+8= +github.com/onsi/gomega v1.30.0/go.mod h1:9sxs+SwGrKI0+PWe4Fxa9tFQQBG5xSsSbMXOI8PPpoQ= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= 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/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_golang v1.18.0 h1:HzFfmkOzH5Q8L8G+kSJKUx5dtG87sewO+FoDDqP5Tbk= +github.com/prometheus/client_golang v1.18.0/go.mod h1:T+GXkCk5wSJyOqMIzVgvvjFDlkOQntgjkJWKrN5txjA= +github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw= +github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI= +github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM= +github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY= +github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo= +github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo= github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= github.com/samber/lo v1.37.0 h1:XjVcB8g6tgUp8rsPsJ2CvhClfImrpL04YpQHXeHPhRw= @@ -126,23 +122,17 @@ github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSS github.com/stretchr/objx v0.5.0 h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -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= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8= -github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/yuin/goldmark v1.1.27/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.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= -go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= -go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A= -go.uber.org/goleak v1.2.1/go.mod h1:qlT2yGI9QafXHhZZLxlSuNsMw3FFLxBr+tBRlmO1xH4= -go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= +go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= +go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= 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/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg= go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo= go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= @@ -150,55 +140,42 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= 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/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= 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.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/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-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= -golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= -golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= -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/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/net v0.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c= +golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= +golang.org/x/oauth2 v0.12.0 h1:smVPGxink+n1ZI5pkQa8y6fZT0RW0MgCO5bFpepy4B4= +golang.org/x/oauth2 v0.12.0/go.mod h1:A74bZ3aGXgCY0qaIC9Ahg6Lglin4AMAco8cIv9baba4= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/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-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/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-20210330210617-4fbd30eecc44/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-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE= -golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek= -golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= +golang.org/x/sys v0.16.0 h1:xWw16ngr6ZMtmxDyKyIgsE93KNKz5HKmMa3b8ALHidU= +golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4= +golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= golang.org/x/text v0.3.0/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.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= -golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= 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-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.9.3 h1:Gn1I8+64MsuTb/HpH+LmQtNas23LhUVr3rYZ0eKuaMM= -golang.org/x/tools v0.9.3/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= +golang.org/x/tools v0.16.1 h1:TLyB3WofjdOEepBHAU20JdNC1Zbg87elYofWYAY5oZA= +golang.org/x/tools v0.16.1/go.mod h1:kYVVN6I1mBNoB1OX+noeBjbRk4IUEPa7JJ+TJMEooJ0= 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= @@ -209,10 +186,9 @@ google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6 google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= 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.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= -google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.31.0 h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8= +google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= 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-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= @@ -225,27 +201,27 @@ gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/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= -k8s.io/api v0.28.3 h1:Gj1HtbSdB4P08C8rs9AR94MfSGpRhJgsS+GF9V26xMM= -k8s.io/api v0.28.3/go.mod h1:MRCV/jr1dW87/qJnZ57U5Pak65LGmQVkKTzf3AtKFHc= -k8s.io/apiextensions-apiserver v0.28.3 h1:Od7DEnhXHnHPZG+W9I97/fSQkVpVPQx2diy+2EtmY08= -k8s.io/apiextensions-apiserver v0.28.3/go.mod h1:NE1XJZ4On0hS11aWWJUTNkmVB03j9LM7gJSisbRt8Lc= -k8s.io/apimachinery v0.28.3 h1:B1wYx8txOaCQG0HmYF6nbpU8dg6HvA06x5tEffvOe7A= -k8s.io/apimachinery v0.28.3/go.mod h1:uQTKmIqs+rAYaq+DFaoD2X7pcjLOqbQX2AOiO0nIpb8= -k8s.io/client-go v0.28.3 h1:2OqNb72ZuTZPKCl+4gTKvqao0AMOl9f3o2ijbAj3LI4= -k8s.io/client-go v0.28.3/go.mod h1:LTykbBp9gsA7SwqirlCXBWtK0guzfhpoW4qSm7i9dxo= -k8s.io/component-base v0.28.3 h1:rDy68eHKxq/80RiMb2Ld/tbH8uAE75JdCqJyi6lXMzI= -k8s.io/component-base v0.28.3/go.mod h1:fDJ6vpVNSk6cRo5wmDa6eKIG7UlIQkaFmZN2fYgIUD8= -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-20230717233707-2695361300d9 h1:LyMgNKD2P8Wn1iAwQU5OhxCKlKJy0sHc+PcDwFB24dQ= -k8s.io/kube-openapi v0.0.0-20230717233707-2695361300d9/go.mod h1:wZK2AVp1uHCp4VamDVgBP2COHZjqD1T68Rf0CM3YjSM= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2 h1:qY1Ad8PODbnymg2pRbkyMT/ylpTrCM8P2RJ0yroCyIk= -k8s.io/utils v0.0.0-20230406110748-d93618cff8a2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= -sigs.k8s.io/controller-runtime v0.16.3 h1:2TuvuokmfXvDUamSx1SuAOO3eTyye+47mJCigwG62c4= -sigs.k8s.io/controller-runtime v0.16.3/go.mod h1:j7bialYoSn142nv9sCOJmQgDXQXxnroFU4VnX/brVJ0= +k8s.io/api v0.29.0 h1:NiCdQMY1QOp1H8lfRyeEf8eOwV6+0xA6XEE44ohDX2A= +k8s.io/api v0.29.0/go.mod h1:sdVmXoz2Bo/cb77Pxi71IPTSErEW32xa4aXwKH7gfBA= +k8s.io/apiextensions-apiserver v0.29.0 h1:0VuspFG7Hj+SxyF/Z/2T0uFbI5gb5LRgEyUVE3Q4lV0= +k8s.io/apiextensions-apiserver v0.29.0/go.mod h1:TKmpy3bTS0mr9pylH0nOt/QzQRrW7/h7yLdRForMZwc= +k8s.io/apimachinery v0.29.0 h1:+ACVktwyicPz0oc6MTMLwa2Pw3ouLAfAon1wPLtG48o= +k8s.io/apimachinery v0.29.0/go.mod h1:eVBxQ/cwiJxH58eK/jd/vAk4mrxmVlnpBH5J2GbMeis= +k8s.io/client-go v0.29.0 h1:KmlDtFcrdUzOYrBhXHgKw5ycWzc3ryPX5mQe0SkG3y8= +k8s.io/client-go v0.29.0/go.mod h1:yLkXH4HKMAywcrD82KMSmfYg2DlE8mepPR4JGSo5n38= +k8s.io/component-base v0.29.0 h1:T7rjd5wvLnPBV1vC4zWd/iWRbV8Mdxs+nGaoaFzGw3s= +k8s.io/component-base v0.29.0/go.mod h1:sADonFTQ9Zc9yFLghpDpmNXEdHyQmFIGbiuZbqAXQ1M= +k8s.io/klog/v2 v2.110.1 h1:U/Af64HJf7FcwMcXyKm2RPM22WZzyR7OSpYj5tg3cL0= +k8s.io/klog/v2 v2.110.1/go.mod h1:YGtd1984u+GgbuZ7e08/yBuAfKLSO0+uR1Fhi6ExXjo= +k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 h1:aVUu9fTY98ivBPKR9Y5w/AuzbMm96cd3YHRTU83I780= +k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA= +k8s.io/utils v0.0.0-20230726121419-3b25d923346b h1:sgn3ZU783SCgtaSJjpcVVlRqd6GSnlTLKgpAAttJvpI= +k8s.io/utils v0.0.0-20230726121419-3b25d923346b/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +sigs.k8s.io/controller-runtime v0.17.0 h1:fjJQf8Ukya+VjogLO6/bNX9HE6Y2xpsO5+fyS26ur/s= +sigs.k8s.io/controller-runtime v0.17.0/go.mod h1:+MngTvIQQQhfXtwfdGw/UOQ/aIaqsYywfCINOtwMO/s= 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.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= +sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= +sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= +sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= diff --git a/helm/Chart.yaml b/helm/Chart.yaml index c4ff5854..be6b51dc 100644 --- a/helm/Chart.yaml +++ b/helm/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 name: sagemaker-chart description: A Helm chart for the ACK service controller for Amazon SageMaker (SageMaker) -version: 1.2.6 -appVersion: 1.2.6 +version: 1.2.7 +appVersion: 1.2.7 home: https://github.com/aws-controllers-k8s/sagemaker-controller icon: https://raw.githubusercontent.com/aws/eks-charts/master/docs/logo/aws.png sources: diff --git a/helm/crds/sagemaker.services.k8s.aws_apps.yaml b/helm/crds/sagemaker.services.k8s.aws_apps.yaml index e2f43e01..f2da4751 100644 --- a/helm/crds/sagemaker.services.k8s.aws_apps.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_apps.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: apps.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,14 +24,19 @@ spec: description: App is the Schema for the Apps API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -49,13 +53,16 @@ spec: description: The domain ID. type: string resourceSpec: - description: "The instance type and the Amazon Resource Name (ARN) - of the SageMaker image created on the instance. \n The value of - InstanceType passed as part of the ResourceSpec in the CreateApp - call overrides the value passed as part of the ResourceSpec configured - for the user profile or the domain. If InstanceType is not specified - in any of those three ResourceSpec values for a KernelGateway app, - the CreateApp call fails with a request validation error." + description: |- + The instance type and the Amazon Resource Name (ARN) of the SageMaker image + created on the instance. + + + The value of InstanceType passed as part of the ResourceSpec in the CreateApp + call overrides the value passed as part of the ResourceSpec configured for + the user profile or the domain. If InstanceType is not specified in any of + those three ResourceSpec values for a KernelGateway app, the CreateApp call + fails with a request validation error. properties: instanceType: type: string @@ -67,21 +74,26 @@ spec: type: string type: object tags: - description: Each tag consists of a key and an optional value. Tag - keys must be unique per resource. + description: |- + Each tag consists of a key and an optional value. Tag keys must be unique + per resource. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -102,24 +114,26 @@ spec: description: AppStatus defines the observed state of App properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -130,14 +144,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_dataqualityjobdefinitions.yaml b/helm/crds/sagemaker.services.k8s.aws_dataqualityjobdefinitions.yaml index 86290a51..353a08d1 100644 --- a/helm/crds/sagemaker.services.k8s.aws_dataqualityjobdefinitions.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_dataqualityjobdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: dataqualityjobdefinitions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -22,14 +21,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -79,8 +83,9 @@ spec: type: object type: object dataQualityJobInput: - description: A list of inputs for the monitoring job. Currently endpoints - are supported as monitoring inputs. + description: |- + A list of inputs for the monitoring job. Currently endpoints are supported + as monitoring inputs. properties: endpointInput: description: Input object for the endpoint @@ -117,8 +122,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you want to - store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -161,13 +167,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -180,8 +185,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: A time limit for how long the monitoring job is allowed @@ -192,22 +198,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -228,24 +239,26 @@ spec: of DataQualityJobDefinition properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -256,14 +269,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_domains.yaml b/helm/crds/sagemaker.services.k8s.aws_domains.yaml index 6f6f2957..c7890e8a 100644 --- a/helm/crds/sagemaker.services.k8s.aws_domains.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_domains.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: domains.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -28,14 +27,19 @@ spec: description: Domain is the Schema for the Domains API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -43,16 +47,21 @@ spec: description: DomainSpec defines the desired state of Domain. properties: appNetworkAccessType: - description: "Specifies the VPC used for non-EFS traffic. The default - value is PublicInternetOnly. \n - PublicInternetOnly - Non-EFS traffic - is through a VPC managed by Amazon SageMaker, which allows direct - internet access \n - VpcOnly - All Studio traffic is through the - specified VPC and subnets" + description: |- + Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly. + + + - PublicInternetOnly - Non-EFS traffic is through a VPC managed by Amazon + SageMaker, which allows direct internet access + + + - VpcOnly - All Studio traffic is through the specified VPC and subnets type: string appSecurityGroupManagement: - description: The entity that creates and manages the required security - groups for inter-app communication in VPCOnly mode. Required when - CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn + description: |- + The entity that creates and manages the required security groups for inter-app + communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType + is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided. type: string authMode: @@ -60,11 +69,14 @@ spec: the domain. type: string defaultUserSettings: - description: "The default settings to use to create a user profile - when UserSettings isn't specified in the call to the CreateUserProfile - API. \n SecurityGroups is aggregated when specified in both calls. - For all other settings in UserSettings, the values specified in - CreateUserProfile take precedence over those specified in CreateDomain." + description: |- + The default settings to use to create a user profile when UserSettings isn't + specified in the call to the CreateUserProfile API. + + + SecurityGroups is aggregated when specified in both calls. For all other + settings in UserSettings, the values specified in CreateUserProfile take + precedence over those specified in CreateDomain. properties: executionRole: type: string @@ -72,9 +84,9 @@ spec: description: The JupyterServer app settings. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -95,8 +107,9 @@ spec: properties: customImages: items: - description: A custom SageMaker image. For more information, - see Bring your own SageMaker image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). + description: |- + A custom SageMaker image. For more information, see Bring your own SageMaker + image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). properties: appImageConfigName: type: string @@ -108,9 +121,9 @@ spec: type: object type: array defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -127,10 +140,10 @@ spec: type: array type: object rStudioServerProAppSettings: - description: A collection of settings that configure user interaction - with the RStudioServerPro app. RStudioServerProAppSettings cannot - be updated. The RStudioServerPro app must be deleted and a new - one created to make any changes. + description: |- + A collection of settings that configure user interaction with the RStudioServerPro + app. RStudioServerProAppSettings cannot be updated. The RStudioServerPro + app must be deleted and a new one created to make any changes. properties: accessStatus: type: string @@ -142,11 +155,11 @@ spec: type: string type: array sharingSettings: - description: Specifies options for sharing SageMaker Studio notebooks. - These settings are specified as part of DefaultUserSettings - when the CreateDomain API is called, and as part of UserSettings - when the CreateUserProfile API is called. When SharingSettings - is not specified, notebook sharing isn't allowed. + description: |- + Specifies options for sharing SageMaker Studio notebooks. These settings + are specified as part of DefaultUserSettings when the CreateDomain API is + called, and as part of UserSettings when the CreateUserProfile API is called. + When SharingSettings is not specified, notebook sharing isn't allowed. properties: notebookOutputOption: type: string @@ -159,9 +172,9 @@ spec: description: The TensorBoard app settings. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -181,13 +194,14 @@ spec: description: A collection of Domain settings. properties: rStudioServerProDomainSettings: - description: A collection of settings that configure the RStudioServerPro - Domain-level app. + description: |- + A collection of settings that configure the RStudioServerPro Domain-level + app. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -214,9 +228,10 @@ spec: description: Use KmsKeyId. type: string kmsKeyID: - description: SageMaker uses Amazon Web Services KMS to encrypt the - EFS volume attached to the domain with an Amazon Web Services managed - key by default. For more control, specify a customer managed key. + description: |- + SageMaker uses Amazon Web Services KMS to encrypt the EFS volume attached + to the domain with an Amazon Web Services managed key by default. For more + control, specify a customer managed key. type: string subnetIDs: description: The VPC subnets that Studio uses for communication. @@ -224,23 +239,31 @@ spec: type: string type: array tags: - description: "Tags to associated with the Domain. Each tag consists - of a key and an optional value. Tag keys must be unique per resource. - Tags are searchable using the Search API. \n Tags that you specify - for the Domain are also added to all Apps that the Domain launches." + description: |- + Tags to associated with the Domain. Each tag consists of a key and an optional + value. Tag keys must be unique per resource. Tags are searchable using the + Search API. + + + Tags that you specify for the Domain are also added to all Apps that the + Domain launches. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -263,24 +286,26 @@ spec: description: DomainStatus defines the observed state of Domain properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -291,14 +316,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_endpointconfigs.yaml b/helm/crds/sagemaker.services.k8s.aws_endpointconfigs.yaml index 496039c9..0e0aae6a 100644 --- a/helm/crds/sagemaker.services.k8s.aws_endpointconfigs.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_endpointconfigs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: endpointconfigs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -21,14 +20,19 @@ spec: description: EndpointConfig is the Schema for the EndpointConfigs API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -36,13 +40,15 @@ spec: description: EndpointConfigSpec defines the desired state of EndpointConfig. properties: asyncInferenceConfig: - description: Specifies configuration for how an endpoint performs - asynchronous inference. This is a required field in order for your - Endpoint to be invoked using InvokeEndpointAsync (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_runtime_InvokeEndpointAsync.html). + description: |- + Specifies configuration for how an endpoint performs asynchronous inference. + This is a required field in order for your Endpoint to be invoked using InvokeEndpointAsync + (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_runtime_InvokeEndpointAsync.html). properties: clientConfig: - description: Configures the behavior of the client used by SageMaker - to interact with the model container during asynchronous inference. + description: |- + Configures the behavior of the client used by SageMaker to interact with + the model container during asynchronous inference. properties: maxConcurrentInvocationsPerInstance: format: int64 @@ -55,8 +61,9 @@ spec: kmsKeyID: type: string notificationConfig: - description: Specifies the configuration for notifications - of inference results for asynchronous inference. + description: |- + Specifies the configuration for notifications of inference results for asynchronous + inference. properties: errorTopic: type: string @@ -72,9 +79,9 @@ spec: data. properties: captureContentTypeHeader: - description: Configuration specifying how to treat different headers. - If no headers are specified SageMaker will by default base64 - encode when capturing the data. + description: |- + Configuration specifying how to treat different headers. If no headers are + specified SageMaker will by default base64 encode when capturing the data. properties: csvContentTypes: items: @@ -104,43 +111,65 @@ spec: type: string type: object endpointConfigName: - description: The name of the endpoint configuration. You specify this - name in a CreateEndpoint request. + description: |- + The name of the endpoint configuration. You specify this name in a CreateEndpoint + request. type: string kmsKeyID: - description: "The Amazon Resource Name (ARN) of a Amazon Web Services - Key Management Service key that SageMaker uses to encrypt data on - the storage volume attached to the ML compute instance that hosts - the endpoint. \n The KmsKeyId can be any of the following formats: - \n - Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab \n - Key ARN: - arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab - \n - Alias name: alias/ExampleAlias \n - Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias - \n The KMS key policy must grant permission to the IAM role that - you specify in your CreateEndpoint, UpdateEndpoint requests. For - more information, refer to the Amazon Web Services Key Management - Service section Using Key Policies in Amazon Web Services KMS (https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) - \n Certain Nitro-based instances include local storage, dependent - on the instance type. Local storage volumes are encrypted using - a hardware module on the instance. You can't request a KmsKeyId - when using an instance type with local storage. If any of the models - that you specify in the ProductionVariants parameter use nitro-based - instances with local storage, do not specify a value for the KmsKeyId - parameter. If you specify a value for KmsKeyId when using any nitro-based - instances with local storage, the call to CreateEndpointConfig fails. - \n For a list of instance types that support local instance storage, - see Instance Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#instance-store-volumes). - \n For more information about local instance storage encryption, - see SSD Instance Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html)." + description: |- + The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service + key that SageMaker uses to encrypt data on the storage volume attached to + the ML compute instance that hosts the endpoint. + + + The KmsKeyId can be any of the following formats: + + + - Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab + + + - Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab + + + - Alias name: alias/ExampleAlias + + + - Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias + + + The KMS key policy must grant permission to the IAM role that you specify + in your CreateEndpoint, UpdateEndpoint requests. For more information, refer + to the Amazon Web Services Key Management Service section Using Key Policies + in Amazon Web Services KMS (https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) + + + Certain Nitro-based instances include local storage, dependent on the instance + type. Local storage volumes are encrypted using a hardware module on the + instance. You can't request a KmsKeyId when using an instance type with local + storage. If any of the models that you specify in the ProductionVariants + parameter use nitro-based instances with local storage, do not specify a + value for the KmsKeyId parameter. If you specify a value for KmsKeyId when + using any nitro-based instances with local storage, the call to CreateEndpointConfig + fails. + + + For a list of instance types that support local instance storage, see Instance + Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html#instance-store-volumes). + + + For more information about local instance storage encryption, see SSD Instance + Store Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html). type: string productionVariants: - description: An array of ProductionVariant objects, one for each model - that you want to host at this endpoint. + description: |- + An array of ProductionVariant objects, one for each model that you want to + host at this endpoint. items: - description: Identifies a model that you want to host and the resources - chosen to deploy for hosting it. If you are deploying multiple - models, tell SageMaker how to distribute traffic among the models - by specifying variant weights. For more information on production - variants, check Production variants (https://docs.aws.amazon.com/sagemaker/latest/dg/model-ab-testing.html). + description: |- + Identifies a model that you want to host and the resources chosen to deploy + for hosting it. If you are deploying multiple models, tell SageMaker how + to distribute traffic among the models by specifying variant weights. For + more information on production variants, check Production variants (https://docs.aws.amazon.com/sagemaker/latest/dg/model-ab-testing.html). properties: acceleratorType: type: string @@ -148,8 +177,9 @@ spec: format: int64 type: integer coreDumpConfig: - description: Specifies configuration for a core dump from the - model container when the process crashes. + description: |- + Specifies configuration for a core dump from the model container when the + process crashes. properties: destinationS3URI: type: string @@ -189,23 +219,28 @@ spec: type: object type: array tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -221,24 +256,26 @@ spec: description: EndpointConfigStatus defines the observed state of EndpointConfig properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -249,14 +286,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_endpoints.yaml b/helm/crds/sagemaker.services.k8s.aws_endpoints.yaml index 00f554b4..185ef7ba 100644 --- a/helm/crds/sagemaker.services.k8s.aws_endpoints.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_endpoints.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: endpoints.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,28 +28,38 @@ spec: description: Endpoint is the Schema for the Endpoints API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "EndpointSpec defines the desired state of Endpoint. \n A - hosted endpoint for real-time inference." + description: |- + EndpointSpec defines the desired state of Endpoint. + + + A hosted endpoint for real-time inference. properties: deploymentConfig: - description: The deployment configuration for an endpoint, which contains - the desired deployment strategy and rollback configurations. + description: |- + The deployment configuration for an endpoint, which contains the desired + deployment strategy and rollback configurations. properties: autoRollbackConfiguration: - description: Automatic rollback configuration for handling endpoint - deployment failures and recovery. + description: |- + Automatic rollback configuration for handling endpoint deployment failures + and recovery. properties: alarms: items: @@ -63,14 +72,13 @@ spec: type: array type: object blueGreenUpdatePolicy: - description: Update policy for a blue/green deployment. If this - update policy is specified, SageMaker creates a new fleet during - the deployment while maintaining the old fleet. SageMaker flips - traffic to the new fleet according to the specified traffic - routing configuration. Only one update policy should be used - in the deployment configuration. If no update policy is specified, - SageMaker uses a blue/green deployment strategy with all at - once traffic shifting by default. + description: |- + Update policy for a blue/green deployment. If this update policy is specified, + SageMaker creates a new fleet during the deployment while maintaining the + old fleet. SageMaker flips traffic to the new fleet according to the specified + traffic routing configuration. Only one update policy should be used in the + deployment configuration. If no update policy is specified, SageMaker uses + a blue/green deployment strategy with all at once traffic shifting by default. properties: maximumExecutionTimeoutInSeconds: format: int64 @@ -79,9 +87,9 @@ spec: format: int64 type: integer trafficRoutingConfiguration: - description: Defines the traffic routing strategy during an - endpoint deployment to shift traffic from the old fleet - to the new fleet. + description: |- + Defines the traffic routing strategy during an endpoint deployment to shift + traffic from the old fleet to the new fleet. properties: canarySize: description: Specifies the endpoint capacity to activate @@ -116,29 +124,34 @@ spec: see CreateEndpointConfig. type: string endpointName: - description: The name of the endpoint.The name must be unique within - an Amazon Web Services Region in your Amazon Web Services account. - The name is case-insensitive in CreateEndpoint, but the case is - preserved and must be matched in . + description: |- + The name of the endpoint.The name must be unique within an Amazon Web Services + Region in your Amazon Web Services account. The name is case-insensitive + in CreateEndpoint, but the case is preserved and must be matched in . type: string tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -154,24 +167,26 @@ spec: description: EndpointStatus defines the observed state of Endpoint properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -182,14 +197,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -219,26 +236,43 @@ spec: format: date-time type: string endpointStatus: - description: "The status of the endpoint. \n * OutOfService: Endpoint - is not available to take incoming requests. \n * Creating: CreateEndpoint - is executing. \n * Updating: UpdateEndpoint or UpdateEndpointWeightsAndCapacities - is executing. \n * SystemUpdating: Endpoint is undergoing maintenance - and cannot be updated or deleted or re-scaled until it has completed. - This maintenance operation does not change any customer-specified - values such as VPC config, KMS encryption, model, instance type, - or instance count. \n * RollingBack: Endpoint fails to scale up - or down or change its variant weight and is in the process of rolling - back to its previous configuration. Once the rollback completes, - endpoint returns to an InService status. This transitional status - only applies to an endpoint that has autoscaling enabled and is - undergoing variant weight or capacity changes as part of an UpdateEndpointWeightsAndCapacities - call or when the UpdateEndpointWeightsAndCapacities operation is - called explicitly. \n * InService: Endpoint is available to process - incoming requests. \n * Deleting: DeleteEndpoint is executing. \n - * Failed: Endpoint could not be created, updated, or re-scaled. - Use DescribeEndpointOutput$FailureReason for information about the - failure. DeleteEndpoint is the only operation that can be performed - on a failed endpoint." + description: |- + The status of the endpoint. + + + * OutOfService: Endpoint is not available to take incoming requests. + + + * Creating: CreateEndpoint is executing. + + + * Updating: UpdateEndpoint or UpdateEndpointWeightsAndCapacities is executing. + + + * SystemUpdating: Endpoint is undergoing maintenance and cannot be updated + or deleted or re-scaled until it has completed. This maintenance operation + does not change any customer-specified values such as VPC config, KMS + encryption, model, instance type, or instance count. + + + * RollingBack: Endpoint fails to scale up or down or change its variant + weight and is in the process of rolling back to its previous configuration. + Once the rollback completes, endpoint returns to an InService status. + This transitional status only applies to an endpoint that has autoscaling + enabled and is undergoing variant weight or capacity changes as part of + an UpdateEndpointWeightsAndCapacities call or when the UpdateEndpointWeightsAndCapacities + operation is called explicitly. + + + * InService: Endpoint is available to process incoming requests. + + + * Deleting: DeleteEndpoint is executing. + + + * Failed: Endpoint could not be created, updated, or re-scaled. Use DescribeEndpointOutput$FailureReason + for information about the failure. DeleteEndpoint is the only operation + that can be performed on a failed endpoint. type: string failureReason: description: If the status of the endpoint is Failed, the reason why @@ -249,18 +283,18 @@ spec: format: date-time type: string pendingDeploymentSummary: - description: Returns the summary of an in-progress deployment. This - field is only returned when the endpoint is creating or updating - with a new endpoint configuration. + description: |- + Returns the summary of an in-progress deployment. This field is only returned + when the endpoint is creating or updating with a new endpoint configuration. properties: endpointConfigName: type: string productionVariants: items: - description: The production variant summary for a deployment - when an endpoint is creating or updating with the CreateEndpoint - or UpdateEndpoint operations. Describes the VariantStatus - , weight and capacity for a production variant associated + description: |- + The production variant summary for a deployment when an endpoint is creating + or updating with the CreateEndpoint or UpdateEndpoint operations. Describes + the VariantStatus , weight and capacity for a production variant associated with an endpoint. properties: acceleratorType: @@ -283,16 +317,17 @@ spec: type: number deployedImages: items: - description: "Gets the Amazon EC2 Container Registry path - of the docker image of the model that is hosted in this - ProductionVariant. \n If you used the registry/repository[:tag] - form to specify the image path of the primary container - when you created the model hosted in this ProductionVariant, - the path resolves to a path of the form registry/repository[@digest]. - A digest is a hash value that identifies a specific - version of an image. For information about Amazon ECR - paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) - in the Amazon ECR User Guide." + description: |- + Gets the Amazon EC2 Container Registry path of the docker image of the model + that is hosted in this ProductionVariant. + + + If you used the registry/repository[:tag] form to specify the image path + of the primary container when you created the model hosted in this ProductionVariant, + the path resolves to a path of the form registry/repository[@digest]. A digest + is a hash value that identifies a specific version of an image. For information + about Amazon ECR paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) + in the Amazon ECR User Guide. properties: resolutionTime: format: date-time @@ -343,13 +378,15 @@ spec: type: string type: object productionVariants: - description: An array of ProductionVariantSummary objects, one for - each model hosted behind this endpoint. + description: |- + An array of ProductionVariantSummary objects, one for each model hosted behind + this endpoint. items: - description: Describes weight and capacities for a production variant - associated with an endpoint. If you sent a request to the UpdateEndpointWeightsAndCapacities - API and the endpoint status is Updating, you get different desired - and current values. + description: |- + Describes weight and capacities for a production variant associated with + an endpoint. If you sent a request to the UpdateEndpointWeightsAndCapacities + API and the endpoint status is Updating, you get different desired and current + values. properties: currentInstanceCount: format: int64 @@ -369,16 +406,17 @@ spec: type: number deployedImages: items: - description: "Gets the Amazon EC2 Container Registry path - of the docker image of the model that is hosted in this - ProductionVariant. \n If you used the registry/repository[:tag] - form to specify the image path of the primary container - when you created the model hosted in this ProductionVariant, - the path resolves to a path of the form registry/repository[@digest]. - A digest is a hash value that identifies a specific version - of an image. For information about Amazon ECR paths, see - Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) - in the Amazon ECR User Guide." + description: |- + Gets the Amazon EC2 Container Registry path of the docker image of the model + that is hosted in this ProductionVariant. + + + If you used the registry/repository[:tag] form to specify the image path + of the primary container when you created the model hosted in this ProductionVariant, + the path resolves to a path of the form registry/repository[@digest]. A digest + is a hash value that identifies a specific version of an image. For information + about Amazon ECR paths, see Pulling an Image (https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-pull-ecr-image.html) + in the Amazon ECR User Guide. properties: resolutionTime: format: date-time diff --git a/helm/crds/sagemaker.services.k8s.aws_featuregroups.yaml b/helm/crds/sagemaker.services.k8s.aws_featuregroups.yaml index 70ebdd7e..7819beda 100644 --- a/helm/crds/sagemaker.services.k8s.aws_featuregroups.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_featuregroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: featuregroups.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,52 +28,73 @@ spec: description: FeatureGroup is the Schema for the FeatureGroups API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "FeatureGroupSpec defines the desired state of FeatureGroup. - \n Amazon SageMaker Feature Store stores features in a collection called - Feature Group. A Feature Group can be visualized as a table which has - rows, with a unique identifier for each row where each column in the - table is a feature. In principle, a Feature Group is composed of features - and values per features." + description: |- + FeatureGroupSpec defines the desired state of FeatureGroup. + + + Amazon SageMaker Feature Store stores features in a collection called Feature + Group. A Feature Group can be visualized as a table which has rows, with + a unique identifier for each row where each column in the table is a feature. + In principle, a Feature Group is composed of features and values per features. properties: description: description: A free-form description of a FeatureGroup. type: string eventTimeFeatureName: - description: "The name of the feature that stores the EventTime of - a Record in a FeatureGroup. \n An EventTime is a point in time when - a new event occurs that corresponds to the creation or update of - a Record in a FeatureGroup. All Records in the FeatureGroup must - have a corresponding EventTime. \n An EventTime can be a String - or Fractional. \n - Fractional: EventTime feature values must be - a Unix timestamp in seconds. \n - String: EventTime feature values - must be an ISO-8601 string in the format. The following formats - are supported yyyy-MM-dd'T'HH:mm:ssZ and yyyy-MM-dd'T'HH:mm:ss.SSSZ - where yyyy, MM, and dd represent the year, month, and day respectively - and HH, mm, ss, and if applicable, SSS represent the hour, month, - second and milliseconds respsectively. 'T' and Z are constants." + description: |- + The name of the feature that stores the EventTime of a Record in a FeatureGroup. + + + An EventTime is a point in time when a new event occurs that corresponds + to the creation or update of a Record in a FeatureGroup. All Records in the + FeatureGroup must have a corresponding EventTime. + + + An EventTime can be a String or Fractional. + + + - Fractional: EventTime feature values must be a Unix timestamp in seconds. + + + - String: EventTime feature values must be an ISO-8601 string in the format. + The following formats are supported yyyy-MM-dd'T'HH:mm:ssZ and yyyy-MM-dd'T'HH:mm:ss.SSSZ + where yyyy, MM, and dd represent the year, month, and day respectively + and HH, mm, ss, and if applicable, SSS represent the hour, month, second + and milliseconds respsectively. 'T' and Z are constants. type: string featureDefinitions: - description: "A list of Feature names and types. Name and Type is - compulsory per Feature. \n Valid feature FeatureTypes are Integral, - Fractional and String. \n FeatureNames cannot be any of the following: - is_deleted, write_time, api_invocation_time \n You can create up - to 2,500 FeatureDefinitions per FeatureGroup." + description: |- + A list of Feature names and types. Name and Type is compulsory per Feature. + + + Valid feature FeatureTypes are Integral, Fractional and String. + + + FeatureNames cannot be any of the following: is_deleted, write_time, api_invocation_time + + + You can create up to 2,500 FeatureDefinitions per FeatureGroup. items: - description: A list of features. You must include FeatureName and - FeatureType. Valid feature FeatureTypes are Integral, Fractional - and String. + description: |- + A list of features. You must include FeatureName and FeatureType. Valid feature + FeatureTypes are Integral, Fractional and String. properties: featureName: type: string @@ -83,25 +103,43 @@ spec: type: object type: array featureGroupName: - description: "The name of the FeatureGroup. The name must be unique - within an Amazon Web Services Region in an Amazon Web Services account. - The name: \n - Must start and end with an alphanumeric character. - \n - Can only contain alphanumeric character and hyphens. Spaces - are not allowed." + description: |- + The name of the FeatureGroup. The name must be unique within an Amazon Web + Services Region in an Amazon Web Services account. The name: + + + - Must start and end with an alphanumeric character. + + + - Can only contain alphanumeric character and hyphens. Spaces are not + allowed. type: string offlineStoreConfig: - description: "Use this to configure an OfflineFeatureStore. This parameter - allows you to specify: \n - The Amazon Simple Storage Service (Amazon - S3) location of an OfflineStore. \n - A configuration for an Amazon - Web Services Glue or Amazon Web Services Hive data catalog. \n - - An KMS encryption key to encrypt the Amazon S3 location used for - OfflineStore. If KMS encryption key is not specified, by default - we encrypt all data at rest using Amazon Web Services KMS key. By - defining your bucket-level key (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html) - for SSE, you can reduce Amazon Web Services KMS requests costs by - up to 99 percent. \n - Format for the offline store table. Supported - formats are Glue (Default) and Apache Iceberg (https://iceberg.apache.org/). - \n To learn more about this parameter, see OfflineStoreConfig." + description: |- + Use this to configure an OfflineFeatureStore. This parameter allows you to + specify: + + + - The Amazon Simple Storage Service (Amazon S3) location of an OfflineStore. + + + - A configuration for an Amazon Web Services Glue or Amazon Web Services + Hive data catalog. + + + - An KMS encryption key to encrypt the Amazon S3 location used for OfflineStore. + If KMS encryption key is not specified, by default we encrypt all data + at rest using Amazon Web Services KMS key. By defining your bucket-level + key (https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-key.html) + for SSE, you can reduce Amazon Web Services KMS requests costs by up to + 99 percent. + + + - Format for the offline store table. Supported formats are Glue (Default) + and Apache Iceberg (https://iceberg.apache.org/). + + + To learn more about this parameter, see OfflineStoreConfig. properties: dataCatalogConfig: description: The meta data of the Glue table which serves as data @@ -117,8 +155,9 @@ spec: disableGlueTableCreation: type: boolean s3StorageConfig: - description: The Amazon Simple Storage (Amazon S3) location and - and security configuration for OfflineStore. + description: |- + The Amazon Simple Storage (Amazon S3) location and and security configuration + for OfflineStore. properties: kmsKeyID: type: string @@ -129,10 +168,13 @@ spec: type: object type: object onlineStoreConfig: - description: "You can turn the OnlineStore on or off by specifying - True for the EnableOnlineStore flag in OnlineStoreConfig; the default - value is False. \n You can also include an Amazon Web Services KMS - key ID (KMSKeyId) for at-rest encryption of the OnlineStore." + description: |- + You can turn the OnlineStore on or off by specifying True for the EnableOnlineStore + flag in OnlineStoreConfig; the default value is False. + + + You can also include an Amazon Web Services KMS key ID (KMSKeyId) for at-rest + encryption of the OnlineStore. properties: enableOnlineStore: type: boolean @@ -144,34 +186,49 @@ spec: type: object type: object recordIdentifierFeatureName: - description: "The name of the Feature whose value uniquely identifies - a Record defined in the FeatureStore. Only the latest record per - identifier value will be stored in the OnlineStore. RecordIdentifierFeatureName - must be one of feature definitions' names. \n You use the RecordIdentifierFeatureName - to access data in a FeatureStore. \n This name: \n - Must start - and end with an alphanumeric character. \n - Can only contains alphanumeric - characters, hyphens, underscores. Spaces are not allowed." + description: |- + The name of the Feature whose value uniquely identifies a Record defined + in the FeatureStore. Only the latest record per identifier value will be + stored in the OnlineStore. RecordIdentifierFeatureName must be one of feature + definitions' names. + + + You use the RecordIdentifierFeatureName to access data in a FeatureStore. + + + This name: + + + - Must start and end with an alphanumeric character. + + + - Can only contains alphanumeric characters, hyphens, underscores. Spaces + are not allowed. type: string roleARN: - description: The Amazon Resource Name (ARN) of the IAM execution role - used to persist data into the OfflineStore if an OfflineStoreConfig - is provided. + description: |- + The Amazon Resource Name (ARN) of the IAM execution role used to persist + data into the OfflineStore if an OfflineStoreConfig is provided. type: string tags: description: Tags used to identify Features in each FeatureGroup. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -189,24 +246,26 @@ spec: description: FeatureGroupStatus defines the observed state of FeatureGroup properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -217,14 +276,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -250,10 +311,15 @@ spec: type: object type: array failureReason: - description: "The reason that the FeatureGroup failed to be replicated - in the OfflineStore. This is failure can occur because: \n * The - FeatureGroup could not be created in the OfflineStore. \n * The - FeatureGroup could not be deleted from the OfflineStore." + description: |- + The reason that the FeatureGroup failed to be replicated in the OfflineStore. + This is failure can occur because: + + + * The FeatureGroup could not be created in the OfflineStore. + + + * The FeatureGroup could not be deleted from the OfflineStore. type: string featureGroupStatus: description: The status of the feature group. diff --git a/helm/crds/sagemaker.services.k8s.aws_hyperparametertuningjobs.yaml b/helm/crds/sagemaker.services.k8s.aws_hyperparametertuningjobs.yaml index 590ced73..f83845f0 100644 --- a/helm/crds/sagemaker.services.k8s.aws_hyperparametertuningjobs.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_hyperparametertuningjobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: hyperparametertuningjobs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -30,14 +29,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -46,18 +50,18 @@ spec: HyperParameterTuningJob. properties: hyperParameterTuningJobConfig: - description: The HyperParameterTuningJobConfig object that describes - the tuning job, including the search strategy, the objective metric - used to evaluate training jobs, ranges of parameters to search, - and resource limits for the tuning job. For more information, see - How Hyperparameter Tuning Works (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-how-it-works.html). + description: |- + The HyperParameterTuningJobConfig object that describes the tuning job, including + the search strategy, the objective metric used to evaluate training jobs, + ranges of parameters to search, and resource limits for the tuning job. For + more information, see How Hyperparameter Tuning Works (https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-how-it-works.html). properties: hyperParameterTuningJobObjective: - description: Defines the objective metric for a hyperparameter - tuning job. Hyperparameter tuning uses the value of this metric - to evaluate the training jobs it launches, and returns the training - job that results in either the highest or lowest value for this - metric, depending on the value you specify for the Type parameter. + description: |- + Defines the objective metric for a hyperparameter tuning job. Hyperparameter + tuning uses the value of this metric to evaluate the training jobs it launches, + and returns the training job that results in either the highest or lowest + value for this metric, depending on the value you specify for the Type parameter. properties: metricName: type: string @@ -65,17 +69,19 @@ spec: type: string type: object parameterRanges: - description: "Specifies ranges of integer, continuous, and categorical - hyperparameters that a hyperparameter tuning job searches. The - hyperparameter tuning job launches training jobs with hyperparameter - values within these ranges to find the combination of values - that result in the training job with the best performance as - measured by the objective metric of the hyperparameter tuning - job. \n The maximum number of items specified for Array Members - refers to the maximum number of hyperparameters for each range - and also the maximum for the hyperparameter tuning job itself. - That is, the sum of the number of hyperparameters for all the - ranges can't exceed the maximum number specified." + description: |- + Specifies ranges of integer, continuous, and categorical hyperparameters + that a hyperparameter tuning job searches. The hyperparameter tuning job + launches training jobs with hyperparameter values within these ranges to + find the combination of values that result in the training job with the best + performance as measured by the objective metric of the hyperparameter tuning + job. + + + The maximum number of items specified for Array Members refers to the maximum + number of hyperparameters for each range and also the maximum for the hyperparameter + tuning job itself. That is, the sum of the number of hyperparameters for + all the ranges can't exceed the maximum number specified. properties: categoricalParameterRanges: items: @@ -105,8 +111,9 @@ spec: type: array integerParameterRanges: items: - description: For a hyperparameter of the integer type, specifies - the range that a hyperparameter tuning job searches. + description: |- + For a hyperparameter of the integer type, specifies the range that a hyperparameter + tuning job searches. properties: maxValue: type: string @@ -120,9 +127,9 @@ spec: type: array type: object resourceLimits: - description: Specifies the maximum number of training jobs and - parallel training jobs that a hyperparameter tuning job can - launch. + description: |- + Specifies the maximum number of training jobs and parallel training jobs + that a hyperparameter tuning job can launch. properties: maxNumberOfTrainingJobs: format: int64 @@ -132,8 +139,9 @@ spec: type: integer type: object strategy: - description: The strategy hyperparameter tuning uses to find the - best combination of hyperparameters for your model. + description: |- + The strategy hyperparameter tuning uses to find the best combination of hyperparameters + for your model. type: string trainingJobEarlyStoppingType: type: string @@ -145,33 +153,40 @@ spec: type: object type: object hyperParameterTuningJobName: - description: 'The name of the tuning job. This name is the prefix - for the names of all training jobs that this tuning job launches. - The name must be unique within the same Amazon Web Services account - and Amazon Web Services Region. The name must have 1 to 32 characters. - Valid characters are a-z, A-Z, 0-9, and : + = @ _ % - (hyphen). - The name is not case sensitive.' + description: |- + The name of the tuning job. This name is the prefix for the names of all + training jobs that this tuning job launches. The name must be unique within + the same Amazon Web Services account and Amazon Web Services Region. The + name must have 1 to 32 characters. Valid characters are a-z, A-Z, 0-9, and + : + = @ _ % - (hyphen). The name is not case sensitive. type: string tags: - description: "An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - \n Tags that you specify for the tuning job are also added to all - training jobs that the tuning job launches." + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + + + Tags that you specify for the tuning job are also added to all training jobs + that the tuning job launches. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -180,24 +195,25 @@ spec: type: object type: array trainingJobDefinition: - description: The HyperParameterTrainingJobDefinition object that describes - the training jobs that this tuning job launches, including static - hyperparameters, input data configuration, output data configuration, - resource configuration, and stopping condition. + description: |- + The HyperParameterTrainingJobDefinition object that describes the training + jobs that this tuning job launches, including static hyperparameters, input + data configuration, output data configuration, resource configuration, and + stopping condition. properties: algorithmSpecification: - description: Specifies which training algorithm to use for training - jobs that a hyperparameter tuning job launches and the metrics - to monitor. + description: |- + Specifies which training algorithm to use for training jobs that a hyperparameter + tuning job launches and the metrics to monitor. properties: algorithmName: type: string metricDefinitions: items: - description: Specifies a metric that the training algorithm - writes to stderr or stdout. SageMakerhyperparameter tuning - captures all defined metrics. You specify one metric that - a hyperparameter tuning job uses as its objective metric + description: |- + Specifies a metric that the training algorithm writes to stderr or stdout. + SageMakerhyperparameter tuning captures all defined metrics. You specify + one metric that a hyperparameter tuning job uses as its objective metric to choose the best training job. properties: name: @@ -209,39 +225,58 @@ spec: trainingImage: type: string trainingInputMode: - description: "The training input mode that the algorithm supports. - For more information about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon - SageMaker streams data directly from Amazon S3 to the container. - \n File mode \n If an algorithm supports File mode, SageMaker - downloads the training data from S3 to the provisioned ML - storage volume, and mounts the directory to the Docker volume - for the training container. \n You must provision the ML - storage volume with sufficient capacity to accommodate the - data downloaded from S3. In addition to the training data, - the ML storage volume also stores the output model. The - algorithm container uses the ML storage volume to also store - intermediate information, if any. \n For distributed algorithms, - training data is distributed uniformly. Your training duration - is predictable if the input data objects sizes are approximately - the same. SageMaker does not split the files any further - for model training. If the object sizes are skewed, training - won't be optimal as the data distribution is also skewed - when one host in a training cluster is overloaded, thus - becoming a bottleneck in training. \n FastFile mode \n If - an algorithm supports FastFile mode, SageMaker streams data - directly from S3 to the container with no code changes, - and provides file system access to the data. Users can author - their training script to interact with these files as if - they were stored on disk. \n FastFile mode works best when - the data is read sequentially. Augmented manifest files - aren't supported. The startup time is lower when there are - fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string type: object checkpointConfig: - description: Contains information about the output location for - managed spot training checkpoint data. + description: |- + Contains information about the output location for managed spot training + checkpoint data. properties: localPath: type: string @@ -257,17 +292,19 @@ spec: enableNetworkIsolation: type: boolean hyperParameterRanges: - description: "Specifies ranges of integer, continuous, and categorical - hyperparameters that a hyperparameter tuning job searches. The - hyperparameter tuning job launches training jobs with hyperparameter - values within these ranges to find the combination of values - that result in the training job with the best performance as - measured by the objective metric of the hyperparameter tuning - job. \n The maximum number of items specified for Array Members - refers to the maximum number of hyperparameters for each range - and also the maximum for the hyperparameter tuning job itself. - That is, the sum of the number of hyperparameters for all the - ranges can't exceed the maximum number specified." + description: |- + Specifies ranges of integer, continuous, and categorical hyperparameters + that a hyperparameter tuning job searches. The hyperparameter tuning job + launches training jobs with hyperparameter values within these ranges to + find the combination of values that result in the training job with the best + performance as measured by the objective metric of the hyperparameter tuning + job. + + + The maximum number of items specified for Array Members refers to the maximum + number of hyperparameters for each range and also the maximum for the hyperparameter + tuning job itself. That is, the sum of the number of hyperparameters for + all the ranges can't exceed the maximum number specified. properties: categoricalParameterRanges: items: @@ -297,8 +334,9 @@ spec: type: array integerParameterRanges: items: - description: For a hyperparameter of the integer type, specifies - the range that a hyperparameter tuning job searches. + description: |- + For a hyperparameter of the integer type, specifies the range that a hyperparameter + tuning job searches. properties: maxValue: type: string @@ -358,57 +396,72 @@ spec: type: object type: object inputMode: - description: "The training input mode that the algorithm - supports. For more information about input modes, see - Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon - SageMaker streams data directly from Amazon S3 to the - container. \n File mode \n If an algorithm supports File - mode, SageMaker downloads the training data from S3 to - the provisioned ML storage volume, and mounts the directory - to the Docker volume for the training container. \n You - must provision the ML storage volume with sufficient capacity - to accommodate the data downloaded from S3. In addition - to the training data, the ML storage volume also stores - the output model. The algorithm container uses the ML - storage volume to also store intermediate information, - if any. \n For distributed algorithms, training data is - distributed uniformly. Your training duration is predictable - if the input data objects sizes are approximately the - same. SageMaker does not split the files any further for - model training. If the object sizes are skewed, training - won't be optimal as the data distribution is also skewed - when one host in a training cluster is overloaded, thus - becoming a bottleneck in training. \n FastFile mode \n - If an algorithm supports FastFile mode, SageMaker streams - data directly from S3 to the container with no code changes, - and provides file system access to the data. Users can - author their training script to interact with these files - as if they were stored on disk. \n FastFile mode works - best when the data is read sequentially. Augmented manifest - files aren't supported. The startup time is lower when - there are fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string recordWrapperType: type: string shuffleConfig: - description: "A configuration for a shuffle option for input - data in a channel. If you use S3Prefix for S3DataType, - the results of the S3 key prefix matches are shuffled. - If you use ManifestFile, the order of the S3 object references - in the ManifestFile is shuffled. If you use AugmentedManifestFile, - the order of the JSON lines in the AugmentedManifestFile - is shuffled. The shuffling order is determined using the - Seed value. \n For Pipe input mode, when ShuffleConfig - is specified shuffling is done at the start of every epoch. - With large datasets, this ensures that the order of the - training data is different for each epoch, and it helps - reduce bias and possible overfitting. In a multi-node - training job when ShuffleConfig is combined with S3DataDistributionType - of ShardedByS3Key, the data is shuffled across nodes so - that the content sent to a particular node on the first - epoch might be sent to a different node on the second - epoch." + description: |- + A configuration for a shuffle option for input data in a channel. If you + use S3Prefix for S3DataType, the results of the S3 key prefix matches are + shuffled. If you use ManifestFile, the order of the S3 object references + in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order + of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling + order is determined using the Seed value. + + + For Pipe input mode, when ShuffleConfig is specified shuffling is done at + the start of every epoch. With large datasets, this ensures that the order + of the training data is different for each epoch, and it helps reduce bias + and possible overfitting. In a multi-node training job when ShuffleConfig + is combined with S3DataDistributionType of ShardedByS3Key, the data is shuffled + across nodes so that the content sent to a particular node on the first epoch + might be sent to a different node on the second epoch. properties: seed: format: int64 @@ -426,18 +479,18 @@ spec: type: string type: object resourceConfig: - description: Describes the resources, including machine learning - (ML) compute instances and ML storage volumes, to use for model - training. + description: |- + Describes the resources, including machine learning (ML) compute instances + and ML storage volumes, to use for model training. properties: instanceCount: format: int64 type: integer instanceGroups: items: - description: Defines an instance group for heterogeneous - cluster training. When requesting a training job using - the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) + description: |- + Defines an instance group for heterogeneous cluster training. When requesting + a training job using the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) API, you can configure multiple instance groups . properties: instanceCount: @@ -461,11 +514,11 @@ spec: type: integer type: object retryStrategy: - description: The retry strategy to use when a training job fails - due to an InternalServerError. RetryStrategy is specified as - part of the CreateTrainingJob and CreateHyperParameterTuningJob - requests. You can add the StoppingCondition parameter to the - request to limit the training time for the complete job. + description: |- + The retry strategy to use when a training job fails due to an InternalServerError. + RetryStrategy is specified as part of the CreateTrainingJob and CreateHyperParameterTuningJob + requests. You can add the StoppingCondition parameter to the request to limit + the training time for the complete job. properties: maximumRetryAttempts: format: int64 @@ -478,25 +531,29 @@ spec: type: string type: object stoppingCondition: - description: "Specifies a limit to how long a model training job - or model compilation job can run. It also specifies how long - a managed spot training job has to complete. When the job reaches - the time limit, SageMaker ends the training or compilation job. - Use this API to cap model training costs. \n To stop a training - job, SageMaker sends the algorithm the SIGTERM signal, which - delays job termination for 120 seconds. Algorithms can use this - 120-second window to save the model artifacts, so the results - of training are not lost. \n The training algorithms provided - by SageMaker automatically save the intermediate results of - a model training job when possible. This attempt to save artifacts - is only a best effort case as model might not be in a state - from which it can be saved. For example, if training has just - started, the model might not be ready to save. When saved, this - intermediate data is a valid model artifact. You can use it - to create a model with CreateModel. \n The Neural Topic Model - (NTM) currently does not support saving intermediate model artifacts. - When training NTMs, make sure that the maximum runtime is sufficient - for the training job to complete." + description: |- + Specifies a limit to how long a model training job or model compilation job + can run. It also specifies how long a managed spot training job has to complete. + When the job reaches the time limit, SageMaker ends the training or compilation + job. Use this API to cap model training costs. + + + To stop a training job, SageMaker sends the algorithm the SIGTERM signal, + which delays job termination for 120 seconds. Algorithms can use this 120-second + window to save the model artifacts, so the results of training are not lost. + + + The training algorithms provided by SageMaker automatically save the intermediate + results of a model training job when possible. This attempt to save artifacts + is only a best effort case as model might not be in a state from which it + can be saved. For example, if training has just started, the model might + not be ready to save. When saved, this intermediate data is a valid model + artifact. You can use it to create a model with CreateModel. + + + The Neural Topic Model (NTM) currently does not support saving intermediate + model artifacts. When training NTMs, make sure that the maximum runtime is + sufficient for the training job to complete. properties: maxRuntimeInSeconds: format: int64 @@ -506,11 +563,11 @@ spec: type: integer type: object tuningObjective: - description: Defines the objective metric for a hyperparameter - tuning job. Hyperparameter tuning uses the value of this metric - to evaluate the training jobs it launches, and returns the training - job that results in either the highest or lowest value for this - metric, depending on the value you specify for the Type parameter. + description: |- + Defines the objective metric for a hyperparameter tuning job. Hyperparameter + tuning uses the value of this metric to evaluate the training jobs it launches, + and returns the training job that results in either the highest or lowest + value for this metric, depending on the value you specify for the Type parameter. properties: metricName: type: string @@ -518,13 +575,12 @@ spec: type: string type: object vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -537,26 +593,27 @@ spec: type: object type: object trainingJobDefinitions: - description: A list of the HyperParameterTrainingJobDefinition objects - launched for this tuning job. + description: |- + A list of the HyperParameterTrainingJobDefinition objects launched for this + tuning job. items: description: Defines the training jobs launched by a hyperparameter tuning job. properties: algorithmSpecification: - description: Specifies which training algorithm to use for training - jobs that a hyperparameter tuning job launches and the metrics - to monitor. + description: |- + Specifies which training algorithm to use for training jobs that a hyperparameter + tuning job launches and the metrics to monitor. properties: algorithmName: type: string metricDefinitions: items: - description: Specifies a metric that the training algorithm - writes to stderr or stdout. SageMakerhyperparameter - tuning captures all defined metrics. You specify one - metric that a hyperparameter tuning job uses as its - objective metric to choose the best training job. + description: |- + Specifies a metric that the training algorithm writes to stderr or stdout. + SageMakerhyperparameter tuning captures all defined metrics. You specify + one metric that a hyperparameter tuning job uses as its objective metric + to choose the best training job. properties: name: type: string @@ -567,41 +624,58 @@ spec: trainingImage: type: string trainingInputMode: - description: "The training input mode that the algorithm - supports. For more information about input modes, see - Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon - SageMaker streams data directly from Amazon S3 to the - container. \n File mode \n If an algorithm supports File - mode, SageMaker downloads the training data from S3 to - the provisioned ML storage volume, and mounts the directory - to the Docker volume for the training container. \n You - must provision the ML storage volume with sufficient capacity - to accommodate the data downloaded from S3. In addition - to the training data, the ML storage volume also stores - the output model. The algorithm container uses the ML - storage volume to also store intermediate information, - if any. \n For distributed algorithms, training data is - distributed uniformly. Your training duration is predictable - if the input data objects sizes are approximately the - same. SageMaker does not split the files any further for - model training. If the object sizes are skewed, training - won't be optimal as the data distribution is also skewed - when one host in a training cluster is overloaded, thus - becoming a bottleneck in training. \n FastFile mode \n - If an algorithm supports FastFile mode, SageMaker streams - data directly from S3 to the container with no code changes, - and provides file system access to the data. Users can - author their training script to interact with these files - as if they were stored on disk. \n FastFile mode works - best when the data is read sequentially. Augmented manifest - files aren't supported. The startup time is lower when - there are fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string type: object checkpointConfig: - description: Contains information about the output location - for managed spot training checkpoint data. + description: |- + Contains information about the output location for managed spot training + checkpoint data. properties: localPath: type: string @@ -617,17 +691,19 @@ spec: enableNetworkIsolation: type: boolean hyperParameterRanges: - description: "Specifies ranges of integer, continuous, and categorical - hyperparameters that a hyperparameter tuning job searches. - The hyperparameter tuning job launches training jobs with - hyperparameter values within these ranges to find the combination - of values that result in the training job with the best performance - as measured by the objective metric of the hyperparameter - tuning job. \n The maximum number of items specified for Array - Members refers to the maximum number of hyperparameters for - each range and also the maximum for the hyperparameter tuning - job itself. That is, the sum of the number of hyperparameters - for all the ranges can't exceed the maximum number specified." + description: |- + Specifies ranges of integer, continuous, and categorical hyperparameters + that a hyperparameter tuning job searches. The hyperparameter tuning job + launches training jobs with hyperparameter values within these ranges to + find the combination of values that result in the training job with the best + performance as measured by the objective metric of the hyperparameter tuning + job. + + + The maximum number of items specified for Array Members refers to the maximum + number of hyperparameters for each range and also the maximum for the hyperparameter + tuning job itself. That is, the sum of the number of hyperparameters for + all the ranges can't exceed the maximum number specified. properties: categoricalParameterRanges: items: @@ -658,9 +734,9 @@ spec: type: array integerParameterRanges: items: - description: For a hyperparameter of the integer type, - specifies the range that a hyperparameter tuning job - searches. + description: |- + For a hyperparameter of the integer type, specifies the range that a hyperparameter + tuning job searches. properties: maxValue: type: string @@ -720,59 +796,72 @@ spec: type: object type: object inputMode: - description: "The training input mode that the algorithm - supports. For more information about input modes, see - Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, - Amazon SageMaker streams data directly from Amazon S3 - to the container. \n File mode \n If an algorithm supports - File mode, SageMaker downloads the training data from - S3 to the provisioned ML storage volume, and mounts - the directory to the Docker volume for the training - container. \n You must provision the ML storage volume - with sufficient capacity to accommodate the data downloaded - from S3. In addition to the training data, the ML storage - volume also stores the output model. The algorithm container - uses the ML storage volume to also store intermediate - information, if any. \n For distributed algorithms, - training data is distributed uniformly. Your training - duration is predictable if the input data objects sizes - are approximately the same. SageMaker does not split - the files any further for model training. If the object - sizes are skewed, training won't be optimal as the data - distribution is also skewed when one host in a training - cluster is overloaded, thus becoming a bottleneck in - training. \n FastFile mode \n If an algorithm supports - FastFile mode, SageMaker streams data directly from - S3 to the container with no code changes, and provides - file system access to the data. Users can author their - training script to interact with these files as if they - were stored on disk. \n FastFile mode works best when - the data is read sequentially. Augmented manifest files - aren't supported. The startup time is lower when there - are fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string recordWrapperType: type: string shuffleConfig: - description: "A configuration for a shuffle option for - input data in a channel. If you use S3Prefix for S3DataType, - the results of the S3 key prefix matches are shuffled. - If you use ManifestFile, the order of the S3 object - references in the ManifestFile is shuffled. If you use - AugmentedManifestFile, the order of the JSON lines in - the AugmentedManifestFile is shuffled. The shuffling - order is determined using the Seed value. \n For Pipe - input mode, when ShuffleConfig is specified shuffling - is done at the start of every epoch. With large datasets, - this ensures that the order of the training data is - different for each epoch, and it helps reduce bias and - possible overfitting. In a multi-node training job when - ShuffleConfig is combined with S3DataDistributionType - of ShardedByS3Key, the data is shuffled across nodes - so that the content sent to a particular node on the - first epoch might be sent to a different node on the - second epoch." + description: |- + A configuration for a shuffle option for input data in a channel. If you + use S3Prefix for S3DataType, the results of the S3 key prefix matches are + shuffled. If you use ManifestFile, the order of the S3 object references + in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order + of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling + order is determined using the Seed value. + + + For Pipe input mode, when ShuffleConfig is specified shuffling is done at + the start of every epoch. With large datasets, this ensures that the order + of the training data is different for each epoch, and it helps reduce bias + and possible overfitting. In a multi-node training job when ShuffleConfig + is combined with S3DataDistributionType of ShardedByS3Key, the data is shuffled + across nodes so that the content sent to a particular node on the first epoch + might be sent to a different node on the second epoch. properties: seed: format: int64 @@ -790,18 +879,18 @@ spec: type: string type: object resourceConfig: - description: Describes the resources, including machine learning - (ML) compute instances and ML storage volumes, to use for - model training. + description: |- + Describes the resources, including machine learning (ML) compute instances + and ML storage volumes, to use for model training. properties: instanceCount: format: int64 type: integer instanceGroups: items: - description: Defines an instance group for heterogeneous - cluster training. When requesting a training job using - the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) + description: |- + Defines an instance group for heterogeneous cluster training. When requesting + a training job using the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) API, you can configure multiple instance groups . properties: instanceCount: @@ -825,11 +914,11 @@ spec: type: integer type: object retryStrategy: - description: The retry strategy to use when a training job fails - due to an InternalServerError. RetryStrategy is specified - as part of the CreateTrainingJob and CreateHyperParameterTuningJob - requests. You can add the StoppingCondition parameter to the - request to limit the training time for the complete job. + description: |- + The retry strategy to use when a training job fails due to an InternalServerError. + RetryStrategy is specified as part of the CreateTrainingJob and CreateHyperParameterTuningJob + requests. You can add the StoppingCondition parameter to the request to limit + the training time for the complete job. properties: maximumRetryAttempts: format: int64 @@ -842,26 +931,29 @@ spec: type: string type: object stoppingCondition: - description: "Specifies a limit to how long a model training - job or model compilation job can run. It also specifies how - long a managed spot training job has to complete. When the - job reaches the time limit, SageMaker ends the training or - compilation job. Use this API to cap model training costs. - \n To stop a training job, SageMaker sends the algorithm the - SIGTERM signal, which delays job termination for 120 seconds. - Algorithms can use this 120-second window to save the model - artifacts, so the results of training are not lost. \n The - training algorithms provided by SageMaker automatically save - the intermediate results of a model training job when possible. - This attempt to save artifacts is only a best effort case - as model might not be in a state from which it can be saved. - For example, if training has just started, the model might - not be ready to save. When saved, this intermediate data is - a valid model artifact. You can use it to create a model with - CreateModel. \n The Neural Topic Model (NTM) currently does - not support saving intermediate model artifacts. When training - NTMs, make sure that the maximum runtime is sufficient for - the training job to complete." + description: |- + Specifies a limit to how long a model training job or model compilation job + can run. It also specifies how long a managed spot training job has to complete. + When the job reaches the time limit, SageMaker ends the training or compilation + job. Use this API to cap model training costs. + + + To stop a training job, SageMaker sends the algorithm the SIGTERM signal, + which delays job termination for 120 seconds. Algorithms can use this 120-second + window to save the model artifacts, so the results of training are not lost. + + + The training algorithms provided by SageMaker automatically save the intermediate + results of a model training job when possible. This attempt to save artifacts + is only a best effort case as model might not be in a state from which it + can be saved. For example, if training has just started, the model might + not be ready to save. When saved, this intermediate data is a valid model + artifact. You can use it to create a model with CreateModel. + + + The Neural Topic Model (NTM) currently does not support saving intermediate + model artifacts. When training NTMs, make sure that the maximum runtime is + sufficient for the training job to complete. properties: maxRuntimeInSeconds: format: int64 @@ -871,12 +963,11 @@ spec: type: integer type: object tuningObjective: - description: Defines the objective metric for a hyperparameter - tuning job. Hyperparameter tuning uses the value of this metric - to evaluate the training jobs it launches, and returns the - training job that results in either the highest or lowest - value for this metric, depending on the value you specify - for the Type parameter. + description: |- + Defines the objective metric for a hyperparameter tuning job. Hyperparameter + tuning uses the value of this metric to evaluate the training jobs it launches, + and returns the training job that results in either the highest or lowest + value for this metric, depending on the value you specify for the Type parameter. properties: metricName: type: string @@ -884,13 +975,12 @@ spec: type: string type: object vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -904,26 +994,31 @@ spec: type: object type: array warmStartConfig: - description: "Specifies the configuration for starting the hyperparameter - tuning job using one or more previous tuning jobs as a starting - point. The results of previous tuning jobs are used to inform which - combinations of hyperparameters to search over in the new tuning - job. \n All training jobs launched by the new hyperparameter tuning - job are evaluated by using the objective metric. If you specify - IDENTICAL_DATA_AND_ALGORITHM as the WarmStartType value for the - warm start configuration, the training job that performs the best - in the new tuning job is compared to the best training jobs from - the parent tuning jobs. From these, the training job that performs - the best as measured by the objective metric is returned as the - overall best training job. \n All training jobs launched by parent - hyperparameter tuning jobs and the new hyperparameter tuning jobs - count against the limit of training jobs for the tuning job." + description: |- + Specifies the configuration for starting the hyperparameter tuning job using + one or more previous tuning jobs as a starting point. The results of previous + tuning jobs are used to inform which combinations of hyperparameters to search + over in the new tuning job. + + + All training jobs launched by the new hyperparameter tuning job are evaluated + by using the objective metric. If you specify IDENTICAL_DATA_AND_ALGORITHM + as the WarmStartType value for the warm start configuration, the training + job that performs the best in the new tuning job is compared to the best + training jobs from the parent tuning jobs. From these, the training job that + performs the best as measured by the objective metric is returned as the + overall best training job. + + + All training jobs launched by parent hyperparameter tuning jobs and the new + hyperparameter tuning jobs count against the limit of training jobs for the + tuning job. properties: parentHyperParameterTuningJobs: items: - description: A previously completed or stopped hyperparameter - tuning job to be used as a starting point for a new hyperparameter - tuning job. + description: |- + A previously completed or stopped hyperparameter tuning job to be used as + a starting point for a new hyperparameter tuning job. properties: hyperParameterTuningJobName: type: string @@ -941,24 +1036,26 @@ spec: of HyperParameterTuningJob properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -969,8 +1066,9 @@ spec: - region type: object bestTrainingJob: - description: A TrainingJobSummary object that describes the training - job that completed with the best current HyperParameterTuningJobObjective. + description: |- + A TrainingJobSummary object that describes the training job that completed + with the best current HyperParameterTuningJobObjective. properties: creationTime: format: date-time @@ -978,9 +1076,9 @@ spec: failureReason: type: string finalHyperParameterTuningJobObjectiveMetric: - description: Shows the latest objective metric emitted by a training - job that was launched by a hyperparameter tuning job. You define - the objective metric in the HyperParameterTuningJobObjective + description: |- + Shows the latest objective metric emitted by a training job that was launched + by a hyperparameter tuning job. You define the objective metric in the HyperParameterTuningJobObjective parameter of HyperParameterTuningJobConfig. properties: metricName: @@ -1014,14 +1112,16 @@ spec: type: string type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -1050,15 +1150,16 @@ spec: description: If the tuning job failed, the reason it failed. type: string hyperParameterTuningJobStatus: - description: 'The status of the tuning job: InProgress, Completed, - Failed, Stopping, or Stopped.' + description: |- + The status of the tuning job: InProgress, Completed, Failed, Stopping, or + Stopped. type: string overallBestTrainingJob: - description: If the hyperparameter tuning job is an warm start tuning - job with a WarmStartType of IDENTICAL_DATA_AND_ALGORITHM, this is - the TrainingJobSummary for the training job with the best objective - metric value of all training jobs launched by this tuning job and - all parent jobs specified for the warm start tuning job. + description: |- + If the hyperparameter tuning job is an warm start tuning job with a WarmStartType + of IDENTICAL_DATA_AND_ALGORITHM, this is the TrainingJobSummary for the training + job with the best objective metric value of all training jobs launched by + this tuning job and all parent jobs specified for the warm start tuning job. properties: creationTime: format: date-time @@ -1066,9 +1167,9 @@ spec: failureReason: type: string finalHyperParameterTuningJobObjectiveMetric: - description: Shows the latest objective metric emitted by a training - job that was launched by a hyperparameter tuning job. You define - the objective metric in the HyperParameterTuningJobObjective + description: |- + Shows the latest objective metric emitted by a training job that was launched + by a hyperparameter tuning job. You define the objective metric in the HyperParameterTuningJobObjective parameter of HyperParameterTuningJobConfig. properties: metricName: diff --git a/helm/crds/sagemaker.services.k8s.aws_modelbiasjobdefinitions.yaml b/helm/crds/sagemaker.services.k8s.aws_modelbiasjobdefinitions.yaml index 79530c27..52affc97 100644 --- a/helm/crds/sagemaker.services.k8s.aws_modelbiasjobdefinitions.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_modelbiasjobdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelbiasjobdefinitions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -22,14 +21,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -37,9 +41,9 @@ spec: description: ModelBiasJobDefinitionSpec defines the desired state of ModelBiasJobDefinition. properties: jobDefinitionName: - description: The name of the bias job definition. The name must be - unique within an Amazon Web Services Region in the Amazon Web Services - account. + description: |- + The name of the bias job definition. The name must be unique within an Amazon + Web Services Region in the Amazon Web Services account. type: string jobResources: description: Identifies the resources to deploy for a monitoring job. @@ -130,8 +134,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you want to - store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -151,13 +156,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -170,8 +174,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: A time limit for how long the monitoring job is allowed @@ -182,22 +187,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -218,24 +228,26 @@ spec: ModelBiasJobDefinition properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -246,14 +258,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_modelexplainabilityjobdefinitions.yaml b/helm/crds/sagemaker.services.k8s.aws_modelexplainabilityjobdefinitions.yaml index 5a8a195b..323463f6 100644 --- a/helm/crds/sagemaker.services.k8s.aws_modelexplainabilityjobdefinitions.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_modelexplainabilityjobdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelexplainabilityjobdefinitions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -22,14 +21,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -38,9 +42,9 @@ spec: state of ModelExplainabilityJobDefinition. properties: jobDefinitionName: - description: The name of the model explainability job definition. - The name must be unique within an Amazon Web Services Region in - the Amazon Web Services account. + description: |- + The name of the model explainability job definition. The name must be unique + within an Amazon Web Services Region in the Amazon Web Services account. type: string jobResources: description: Identifies the resources to deploy for a monitoring job. @@ -62,8 +66,9 @@ spec: type: object type: object modelExplainabilityAppSpecification: - description: Configures the model explainability job to run a specified - Docker container image. + description: |- + Configures the model explainability job to run a specified Docker container + image. properties: configURI: type: string @@ -125,8 +130,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you want to - store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -146,13 +152,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -165,8 +170,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: A time limit for how long the monitoring job is allowed @@ -177,22 +183,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -213,24 +224,26 @@ spec: state of ModelExplainabilityJobDefinition properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -241,14 +254,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_modelpackagegroups.yaml b/helm/crds/sagemaker.services.k8s.aws_modelpackagegroups.yaml index b3eac111..61468fde 100644 --- a/helm/crds/sagemaker.services.k8s.aws_modelpackagegroups.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_modelpackagegroups.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelpackagegroups.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,20 +24,28 @@ spec: description: ModelPackageGroup is the Schema for the ModelPackageGroups API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "ModelPackageGroupSpec defines the desired state of ModelPackageGroup. - \n A group of versioned models in the model registry." + description: |- + ModelPackageGroupSpec defines the desired state of ModelPackageGroup. + + + A group of versioned models in the model registry. properties: modelPackageGroupDescription: description: A description for the model group. @@ -47,23 +54,27 @@ spec: description: The name of the model group. type: string tags: - description: A list of key value pairs associated with the model group. - For more information, see Tagging Amazon Web Services resources - (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + description: |- + A list of key value pairs associated with the model group. For more information, + see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) in the Amazon Web Services General Reference Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -78,24 +89,26 @@ spec: description: ModelPackageGroupStatus defines the observed state of ModelPackageGroup properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -106,14 +119,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_modelpackages.yaml b/helm/crds/sagemaker.services.k8s.aws_modelpackages.yaml index e04da761..47981afd 100644 --- a/helm/crds/sagemaker.services.k8s.aws_modelpackages.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_modelpackages.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelpackages.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,30 +24,40 @@ spec: description: ModelPackage is the Schema for the ModelPackages API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "ModelPackageSpec defines the desired state of ModelPackage. - \n A versioned model that can be deployed for SageMaker inference." + description: |- + ModelPackageSpec defines the desired state of ModelPackage. + + + A versioned model that can be deployed for SageMaker inference. properties: additionalInferenceSpecifications: - description: An array of additional Inference Specification objects. - Each additional Inference Specification specifies artifacts based - on this model package that can be used on inference endpoints. Generally - used with SageMaker Neo to store the compiled artifacts. + description: |- + An array of additional Inference Specification objects. Each additional Inference + Specification specifies artifacts based on this model package that can be + used on inference endpoints. Generally used with SageMaker Neo to store the + compiled artifacts. items: - description: A structure of additional Inference Specification. - Additional Inference Specification specifies details about inference - jobs that can be run with models based on this model package + description: |- + A structure of additional Inference Specification. Additional Inference Specification + specifies details about inference jobs that can be run with models based + on this model package properties: containers: items: @@ -109,9 +118,12 @@ spec: description: A description for the approval status of the model. type: string certifyForMarketplace: - description: "Whether to certify the model package for listing on - Amazon Web Services Marketplace. \n This parameter is optional for - unversioned models, and does not apply to versioned models." + description: |- + Whether to certify the model package for listing on Amazon Web Services Marketplace. + + + This parameter is optional for unversioned models, and does not apply to + versioned models. type: boolean clientToken: description: A unique token that guarantees that the call to this @@ -124,20 +136,21 @@ spec: versions. type: object domain: - description: The machine learning domain of your model package and - its components. Common machine learning domains include computer - vision and natural language processing. + description: |- + The machine learning domain of your model package and its components. Common + machine learning domains include computer vision and natural language processing. type: string driftCheckBaselines: - description: Represents the drift check baselines that can be used - when the model monitor is set using the model package. For more - information, see the topic on Drift Detection against Previous Baselines - in SageMaker Pipelines (https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines-quality-clarify-baseline-lifecycle.html#pipelines-quality-clarify-baseline-drift-detection) + description: |- + Represents the drift check baselines that can be used when the model monitor + is set using the model package. For more information, see the topic on Drift + Detection against Previous Baselines in SageMaker Pipelines (https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines-quality-clarify-baseline-lifecycle.html#pipelines-quality-clarify-baseline-drift-detection) in the Amazon SageMaker Developer Guide. properties: bias: - description: Represents the drift check bias baselines that can - be used when the model monitor is set using the model package. + description: |- + Represents the drift check bias baselines that can be used when the model + monitor is set using the model package. properties: configFile: description: Contains details regarding the file source. @@ -171,9 +184,9 @@ spec: type: object type: object explainability: - description: Represents the drift check explainability baselines - that can be used when the model monitor is set using the model - package. + description: |- + Represents the drift check explainability baselines that can be used when + the model monitor is set using the model package. properties: configFile: description: Contains details regarding the file source. @@ -197,9 +210,9 @@ spec: type: object type: object modelDataQuality: - description: Represents the drift check data quality baselines - that can be used when the model monitor is set using the model - package. + description: |- + Represents the drift check data quality baselines that can be used when the + model monitor is set using the model package. properties: constraints: description: Details about the metrics source. @@ -223,9 +236,9 @@ spec: type: object type: object modelQuality: - description: Represents the drift check model quality baselines - that can be used when the model monitor is set using the model - package. + description: |- + Represents the drift check model quality baselines that can be used when + the model monitor is set using the model package. properties: constraints: description: Details about the metrics source. @@ -250,13 +263,21 @@ spec: type: object type: object inferenceSpecification: - description: "Specifies details about inference jobs that can be run - with models based on this model package, including the following: - \n - The Amazon ECR paths of containers that contain the inference - code and model artifacts. \n - The instance types that the model - package supports for transform jobs and real-time endpoints used - for inference. \n - The input and output content formats that the - model package supports for inference." + description: |- + Specifies details about inference jobs that can be run with models based + on this model package, including the following: + + + - The Amazon ECR paths of containers that contain the inference code and + model artifacts. + + + - The instance types that the model package supports for transform jobs + and real-time endpoints used for inference. + + + - The input and output content formats that the model package supports + for inference. properties: containers: items: @@ -321,10 +342,16 @@ spec: type: string type: object modelApprovalStatus: - description: "Whether the model is approved for deployment. \n This - parameter is optional for versioned models, and does not apply to - unversioned models. \n For versioned models, the value of this parameter - must be set to Approved to deploy the model." + description: |- + Whether the model is approved for deployment. + + + This parameter is optional for versioned models, and does not apply to unversioned + models. + + + For versioned models, the value of this parameter must be set to Approved + to deploy the model. type: string modelMetrics: description: A structure that contains model metrics reports. @@ -430,24 +457,30 @@ spec: description: A description of the model package. type: string modelPackageGroupName: - description: "The name or Amazon Resource Name (ARN) of the model - package group that this model version belongs to. \n This parameter - is required for versioned models, and does not apply to unversioned - models." + description: |- + The name or Amazon Resource Name (ARN) of the model package group that this + model version belongs to. + + + This parameter is required for versioned models, and does not apply to unversioned + models. type: string modelPackageName: - description: "The name of the model package. The name must have 1 - to 63 characters. Valid characters are a-z, A-Z, 0-9, and - (hyphen). - \n This parameter is required for unversioned models. It is not - applicable to versioned models." + description: |- + The name of the model package. The name must have 1 to 63 characters. Valid + characters are a-z, A-Z, 0-9, and - (hyphen). + + + This parameter is required for unversioned models. It is not applicable to + versioned models. type: string samplePayloadURL: - description: The Amazon Simple Storage Service (Amazon S3) path where - the sample payload is stored. This path must point to a single gzip - compressed tar archive (.tar.gz suffix). This archive can hold multiple - files that are all equally used in the load test. Each file in the - archive must satisfy the size constraints of the InvokeEndpoint - (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_runtime_InvokeEndpoint.html#API_runtime_InvokeEndpoint_RequestSyntax) + description: |- + The Amazon Simple Storage Service (Amazon S3) path where the sample payload + is stored. This path must point to a single gzip compressed tar archive (.tar.gz + suffix). This archive can hold multiple files that are all equally used in + the load test. Each file in the archive must satisfy the size constraints + of the InvokeEndpoint (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_runtime_InvokeEndpoint.html#API_runtime_InvokeEndpoint_RequestSyntax) call. type: string sourceAlgorithmSpecification: @@ -456,10 +489,10 @@ spec: properties: sourceAlgorithms: items: - description: Specifies an algorithm that was used to create - the model package. The algorithm must be either an algorithm - resource in your SageMaker account or an algorithm in Amazon - Web Services Marketplace that you are subscribed to. + description: |- + Specifies an algorithm that was used to create the model package. The algorithm + must be either an algorithm resource in your SageMaker account or an algorithm + in Amazon Web Services Marketplace that you are subscribed to. properties: algorithmName: type: string @@ -469,23 +502,27 @@ spec: type: array type: object tags: - description: A list of key value pairs associated with the model. - For more information, see Tagging Amazon Web Services resources - (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) + description: |- + A list of key value pairs associated with the model. For more information, + see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) in the Amazon Web Services General Reference Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -494,32 +531,37 @@ spec: type: object type: array task: - description: "The machine learning task your model package accomplishes. - Common machine learning tasks include object detection and image - classification. The following tasks are supported by Inference Recommender: - \"IMAGE_CLASSIFICATION\" | \"OBJECT_DETECTION\" | \"TEXT_GENERATION\" - |\"IMAGE_SEGMENTATION\" | \"FILL_MASK\" | \"CLASSIFICATION\" | \"REGRESSION\" - | \"OTHER\". \n Specify \"OTHER\" if none of the tasks listed fit - your use case." + description: |- + The machine learning task your model package accomplishes. Common machine + learning tasks include object detection and image classification. The following + tasks are supported by Inference Recommender: "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" + | "TEXT_GENERATION" |"IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" + | "REGRESSION" | "OTHER". + + + Specify "OTHER" if none of the tasks listed fit your use case. type: string validationSpecification: - description: Specifies configurations for one or more transform jobs - that SageMaker runs to test the model package. + description: |- + Specifies configurations for one or more transform jobs that SageMaker runs + to test the model package. properties: validationProfiles: items: - description: "Contains data, such as the inputs and targeted - instance types that are used in the process of validating - the model package. \n The data provided in the validation - profile is made available to your buyers on Amazon Web Services - Marketplace." + description: |- + Contains data, such as the inputs and targeted instance types that are used + in the process of validating the model package. + + + The data provided in the validation profile is made available to your buyers + on Amazon Web Services Marketplace. properties: profileName: type: string transformJobDefinition: - description: Defines the input needed to run a transform - job using the inference specification specified in the - algorithm. + description: |- + Defines the input needed to run a transform job using the inference specification + specified in the algorithm. properties: batchStrategy: type: string @@ -534,8 +576,9 @@ spec: format: int64 type: integer transformInput: - description: Describes the input source of a transform - job and the way the transform job consumes it. + description: |- + Describes the input source of a transform job and the way the transform job + consumes it. properties: compressionType: type: string @@ -570,9 +613,9 @@ spec: type: string type: object transformResources: - description: Describes the resources, including ML instance - types and ML instance count, to use for transform - job. + description: |- + Describes the resources, including ML instance types and ML instance count, + to use for transform job. properties: instanceCount: format: int64 @@ -593,24 +636,26 @@ spec: description: ModelPackageStatus defines the observed state of ModelPackage properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -621,14 +666,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_modelqualityjobdefinitions.yaml b/helm/crds/sagemaker.services.k8s.aws_modelqualityjobdefinitions.yaml index 14339d3b..603b6afb 100644 --- a/helm/crds/sagemaker.services.k8s.aws_modelqualityjobdefinitions.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_modelqualityjobdefinitions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: modelqualityjobdefinitions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -22,14 +21,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -142,8 +146,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you want to - store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -164,13 +169,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -183,8 +187,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: A time limit for how long the monitoring job is allowed @@ -195,22 +200,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -231,24 +241,26 @@ spec: of ModelQualityJobDefinition properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -259,14 +271,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_models.yaml b/helm/crds/sagemaker.services.k8s.aws_models.yaml index aa98f653..366c1c9d 100644 --- a/helm/crds/sagemaker.services.k8s.aws_models.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_models.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: models.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -21,20 +20,28 @@ spec: description: Model is the Schema for the Models API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "ModelSpec defines the desired state of Model. \n The properties - of a model as returned by the Search API." + description: |- + ModelSpec defines the desired state of Model. + + + The properties of a model as returned by the Search API. properties: containers: description: Specifies the containers in the inference pipeline. @@ -50,20 +57,19 @@ spec: image: type: string imageConfig: - description: Specifies whether the model container is in Amazon - ECR or a private Docker registry accessible from your Amazon - Virtual Private Cloud (VPC). + description: |- + Specifies whether the model container is in Amazon ECR or a private Docker + registry accessible from your Amazon Virtual Private Cloud (VPC). properties: repositoryAccessMode: type: string repositoryAuthConfig: - description: Specifies an authentication configuration for - the private docker registry where your model image is - hosted. Specify a value for this property only if you - specified Vpc as the value for the RepositoryAccessMode - field of the ImageConfig object that you passed to a call - to CreateModel and the private Docker registry where the - model image is hosted requires authentication. + description: |- + Specifies an authentication configuration for the private docker registry + where your model image is hosted. Specify a value for this property only + if you specified Vpc as the value for the RepositoryAccessMode field of the + ImageConfig object that you passed to a call to CreateModel and the private + Docker registry where the model image is hosted requires authentication. properties: repositoryCredentialsProviderARN: type: string @@ -87,17 +93,20 @@ spec: type: object type: array enableNetworkIsolation: - description: Isolates the model container. No inbound or outbound - network calls can be made to or from the model container. + description: |- + Isolates the model container. No inbound or outbound network calls can be + made to or from the model container. type: boolean executionRoleARN: - description: "The Amazon Resource Name (ARN) of the IAM role that - SageMaker can assume to access model artifacts and docker image - for deployment on ML compute instances or for batch transform jobs. - Deploying on ML compute instances is part of model hosting. For - more information, see SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). - \n To be able to pass this role to SageMaker, the caller of this - API must have the iam:PassRole permission." + description: |- + The Amazon Resource Name (ARN) of the IAM role that SageMaker can assume + to access model artifacts and docker image for deployment on ML compute instances + or for batch transform jobs. Deploying on ML compute instances is part of + model hosting. For more information, see SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). + + + To be able to pass this role to SageMaker, the caller of this API must have + the iam:PassRole permission. type: string inferenceExecutionConfig: description: Specifies details of how containers in a multi-container @@ -110,9 +119,10 @@ spec: description: The name of the new model. type: string primaryContainer: - description: The location of the primary docker image containing inference - code, associated artifacts, and custom environment map that the - inference code uses when the model is deployed for predictions. + description: |- + The location of the primary docker image containing inference code, associated + artifacts, and custom environment map that the inference code uses when the + model is deployed for predictions. properties: containerHostname: type: string @@ -123,20 +133,19 @@ spec: image: type: string imageConfig: - description: Specifies whether the model container is in Amazon - ECR or a private Docker registry accessible from your Amazon - Virtual Private Cloud (VPC). + description: |- + Specifies whether the model container is in Amazon ECR or a private Docker + registry accessible from your Amazon Virtual Private Cloud (VPC). properties: repositoryAccessMode: type: string repositoryAuthConfig: - description: Specifies an authentication configuration for - the private docker registry where your model image is hosted. - Specify a value for this property only if you specified - Vpc as the value for the RepositoryAccessMode field of the - ImageConfig object that you passed to a call to CreateModel - and the private Docker registry where the model image is - hosted requires authentication. + description: |- + Specifies an authentication configuration for the private docker registry + where your model image is hosted. Specify a value for this property only + if you specified Vpc as the value for the RepositoryAccessMode field of the + ImageConfig object that you passed to a call to CreateModel and the private + Docker registry where the model image is hosted requires authentication. properties: repositoryCredentialsProviderARN: type: string @@ -159,23 +168,28 @@ spec: type: object type: object tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -184,13 +198,13 @@ spec: type: object type: array vpcConfig: - description: A VpcConfig object that specifies the VPC that you want - your model to connect to. Control access to and from your model - container by configuring the VPC. VpcConfig is used in hosting services - and in batch transform. For more information, see Protect Endpoints - by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Data in Batch Transform Jobs by Using an Amazon Virtual - Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-vpc.html). + description: |- + A VpcConfig object that specifies the VPC that you want your model to connect + to. Control access to and from your model container by configuring the VPC. + VpcConfig is used in hosting services and in batch transform. For more information, + see Protect Endpoints by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Data in Batch Transform Jobs by Using an Amazon Virtual Private + Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-vpc.html). properties: securityGroupIDs: items: @@ -209,24 +223,26 @@ spec: description: ModelStatus defines the observed state of Model properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -237,14 +253,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_monitoringschedules.yaml b/helm/crds/sagemaker.services.k8s.aws_monitoringschedules.yaml index dbe71a46..b788c579 100644 --- a/helm/crds/sagemaker.services.k8s.aws_monitoringschedules.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_monitoringschedules.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: monitoringschedules.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -30,34 +29,43 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "MonitoringScheduleSpec defines the desired state of MonitoringSchedule. - \n A schedule for a model monitoring job. For information about model - monitor, see Amazon SageMaker Model Monitor (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor.html)." + description: |- + MonitoringScheduleSpec defines the desired state of MonitoringSchedule. + + + A schedule for a model monitoring job. For information about model monitor, + see Amazon SageMaker Model Monitor (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor.html). properties: monitoringScheduleConfig: - description: The configuration object that specifies the monitoring - schedule and defines the monitoring job. + description: |- + The configuration object that specifies the monitoring schedule and defines + the monitoring job. properties: monitoringJobDefinition: description: Defines the monitoring job. properties: baselineConfig: - description: Configuration for monitoring constraints and - monitoring statistics. These baseline resources are compared - against the results of the current job from the series of - jobs scheduled to collect data periodically. + description: |- + Configuration for monitoring constraints and monitoring statistics. These + baseline resources are compared against the results of the current job from + the series of jobs scheduled to collect data periodically. properties: baseliningJobName: type: string @@ -139,8 +147,9 @@ spec: description: The output object for a monitoring job. properties: s3Output: - description: Information about where and how you - want to store the results of a monitoring job. + description: |- + Information about where and how you want to store the results of a monitoring + job. properties: localPath: type: string @@ -173,10 +182,10 @@ spec: type: object type: object networkConfig: - description: Networking options for a job, such as network - traffic encryption between containers, whether to allow - inbound and outbound network calls to and from containers, - and the VPC subnets and security groups to use for VPC-enabled + description: |- + Networking options for a job, such as network traffic encryption between + containers, whether to allow inbound and outbound network calls to and from + containers, and the VPC subnets and security groups to use for VPC-enabled jobs. properties: enableInterContainerTrafficEncryption: @@ -184,13 +193,12 @@ spec: enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and - hosted models have access to. Control access to and - from your training and model containers by configuring - the VPC. For more information, see Protect Endpoints - by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual - Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -225,27 +233,32 @@ spec: type: object type: object monitoringScheduleName: - description: The name of the monitoring schedule. The name must be - unique within an Amazon Web Services Region within an Amazon Web - Services account. + description: |- + The name of the monitoring schedule. The name must be unique within an Amazon + Web Services Region within an Amazon Web Services account. type: string tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -261,24 +274,26 @@ spec: description: MonitoringScheduleStatus defines the observed state of MonitoringSchedule properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -289,14 +304,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -326,8 +343,9 @@ spec: format: date-time type: string failureReason: - description: A string, up to one KB in size, that contains the reason - a monitoring job failed, if it failed. + description: |- + A string, up to one KB in size, that contains the reason a monitoring job + failed, if it failed. type: string lastModifiedTime: description: The time at which the monitoring job was last modified. diff --git a/helm/crds/sagemaker.services.k8s.aws_notebookinstancelifecycleconfigs.yaml b/helm/crds/sagemaker.services.k8s.aws_notebookinstancelifecycleconfigs.yaml index 902964f9..1ee379f7 100644 --- a/helm/crds/sagemaker.services.k8s.aws_notebookinstancelifecycleconfigs.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_notebookinstancelifecycleconfigs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: notebookinstancelifecycleconfigs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,14 +28,19 @@ spec: API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -48,41 +52,65 @@ spec: description: The name of the lifecycle configuration. type: string onCreate: - description: A shell script that runs only once, when you create a - notebook instance. The shell script must be a base64-encoded string. + description: |- + A shell script that runs only once, when you create a notebook instance. + The shell script must be a base64-encoded string. items: - description: "Contains the notebook instance lifecycle configuration - script. \n Each lifecycle configuration script has a limit of - 16384 characters. \n The value of the $PATH environment variable - that is available to both scripts is /sbin:bin:/usr/sbin:/usr/bin. - \n View CloudWatch Logs for notebook instance lifecycle configurations - in log group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook]. - \n Lifecycle configuration scripts cannot run for longer than - 5 minutes. If a script runs for longer than 5 minutes, it fails - and the notebook instance is not created or started. \n For information - about notebook instance lifestyle configurations, see Step 2.1: - (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html)." + description: |- + Contains the notebook instance lifecycle configuration script. + + + Each lifecycle configuration script has a limit of 16384 characters. + + + The value of the $PATH environment variable that is available to both scripts + is /sbin:bin:/usr/sbin:/usr/bin. + + + View CloudWatch Logs for notebook instance lifecycle configurations in log + group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook]. + + + Lifecycle configuration scripts cannot run for longer than 5 minutes. If + a script runs for longer than 5 minutes, it fails and the notebook instance + is not created or started. + + + For information about notebook instance lifestyle configurations, see Step + 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html). properties: content: type: string type: object type: array onStart: - description: A shell script that runs every time you start a notebook - instance, including when you create the notebook instance. The shell - script must be a base64-encoded string. + description: |- + A shell script that runs every time you start a notebook instance, including + when you create the notebook instance. The shell script must be a base64-encoded + string. items: - description: "Contains the notebook instance lifecycle configuration - script. \n Each lifecycle configuration script has a limit of - 16384 characters. \n The value of the $PATH environment variable - that is available to both scripts is /sbin:bin:/usr/sbin:/usr/bin. - \n View CloudWatch Logs for notebook instance lifecycle configurations - in log group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook]. - \n Lifecycle configuration scripts cannot run for longer than - 5 minutes. If a script runs for longer than 5 minutes, it fails - and the notebook instance is not created or started. \n For information - about notebook instance lifestyle configurations, see Step 2.1: - (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html)." + description: |- + Contains the notebook instance lifecycle configuration script. + + + Each lifecycle configuration script has a limit of 16384 characters. + + + The value of the $PATH environment variable that is available to both scripts + is /sbin:bin:/usr/sbin:/usr/bin. + + + View CloudWatch Logs for notebook instance lifecycle configurations in log + group /aws/sagemaker/NotebookInstances in log stream [notebook-instance-name]/[LifecycleConfigHook]. + + + Lifecycle configuration scripts cannot run for longer than 5 minutes. If + a script runs for longer than 5 minutes, it fails and the notebook instance + is not created or started. + + + For information about notebook instance lifestyle configurations, see Step + 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html). properties: content: type: string @@ -96,24 +124,26 @@ spec: state of NotebookInstanceLifecycleConfig properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -124,14 +154,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_notebookinstances.yaml b/helm/crds/sagemaker.services.k8s.aws_notebookinstances.yaml index e6093b2d..592ca623 100644 --- a/helm/crds/sagemaker.services.k8s.aws_notebookinstances.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_notebookinstances.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: notebookinstances.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,14 +28,19 @@ spec: description: NotebookInstance is the Schema for the NotebookInstances API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -44,61 +48,66 @@ spec: description: NotebookInstanceSpec defines the desired state of NotebookInstance. properties: acceleratorTypes: - description: A list of Elastic Inference (EI) instance types to associate - with this notebook instance. Currently, only one instance type can - be associated with a notebook instance. For more information, see - Using Elastic Inference in Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html). + description: |- + A list of Elastic Inference (EI) instance types to associate with this notebook + instance. Currently, only one instance type can be associated with a notebook + instance. For more information, see Using Elastic Inference in Amazon SageMaker + (https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html). items: type: string type: array additionalCodeRepositories: - description: An array of up to three Git repositories to associate - with the notebook instance. These can be either the names of Git - repositories stored as resources in your account, or the URL of - Git repositories in Amazon Web Services CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) - or in any other Git repository. These repositories are cloned at - the same level as the default repository of your notebook instance. - For more information, see Associating Git Repositories with SageMaker - Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html). + description: |- + An array of up to three Git repositories to associate with the notebook instance. + These can be either the names of Git repositories stored as resources in + your account, or the URL of Git repositories in Amazon Web Services CodeCommit + (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) or + in any other Git repository. These repositories are cloned at the same level + as the default repository of your notebook instance. For more information, + see Associating Git Repositories with SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html). items: type: string type: array defaultCodeRepository: - description: A Git repository to associate with the notebook instance - as its default code repository. This can be either the name of a - Git repository stored as a resource in your account, or the URL - of a Git repository in Amazon Web Services CodeCommit (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) - or in any other Git repository. When you open a notebook instance, - it opens in the directory that contains this repository. For more - information, see Associating Git Repositories with SageMaker Notebook - Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html). + description: |- + A Git repository to associate with the notebook instance as its default code + repository. This can be either the name of a Git repository stored as a resource + in your account, or the URL of a Git repository in Amazon Web Services CodeCommit + (https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) or + in any other Git repository. When you open a notebook instance, it opens + in the directory that contains this repository. For more information, see + Associating Git Repositories with SageMaker Notebook Instances (https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-git-repo.html). type: string directInternetAccess: - description: "Sets whether SageMaker provides internet access to the - notebook instance. If you set this to Disabled this notebook instance - is able to access resources only in your VPC, and is not be able - to connect to SageMaker training and endpoint services unless you - configure a NAT Gateway in your VPC. \n For more information, see - Notebook Instances Are Internet-Enabled by Default (https://docs.aws.amazon.com/sagemaker/latest/dg/appendix-additional-considerations.html#appendix-notebook-and-internet-access). - You can set the value of this parameter to Disabled only if you - set a value for the SubnetId parameter." + description: |- + Sets whether SageMaker provides internet access to the notebook instance. + If you set this to Disabled this notebook instance is able to access resources + only in your VPC, and is not be able to connect to SageMaker training and + endpoint services unless you configure a NAT Gateway in your VPC. + + + For more information, see Notebook Instances Are Internet-Enabled by Default + (https://docs.aws.amazon.com/sagemaker/latest/dg/appendix-additional-considerations.html#appendix-notebook-and-internet-access). + You can set the value of this parameter to Disabled only if you set a value + for the SubnetId parameter. type: string instanceType: description: The type of ML compute instance to launch for the notebook instance. type: string kmsKeyID: - description: The Amazon Resource Name (ARN) of a Amazon Web Services - Key Management Service key that SageMaker uses to encrypt data on - the storage volume attached to your notebook instance. The KMS key - you provide must be enabled. For information, see Enabling and Disabling - Keys (https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html) + description: |- + The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service + key that SageMaker uses to encrypt data on the storage volume attached to + your notebook instance. The KMS key you provide must be enabled. For information, + see Enabling and Disabling Keys (https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html) in the Amazon Web Services Key Management Service Developer Guide. type: string lifecycleConfigName: - description: 'The name of a lifecycle configuration to associate with - the notebook instance. For information about lifestyle configurations, - see Step 2.1: (Optional) Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html).' + description: |- + The name of a lifecycle configuration to associate with the notebook instance. + For information about lifestyle configurations, see Step 2.1: (Optional) + Customize a Notebook Instance (https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html). type: string notebookInstanceName: description: The name of the new notebook instance. @@ -108,52 +117,64 @@ spec: environment. type: string roleARN: - description: "When you send any requests to Amazon Web Services resources - from the notebook instance, SageMaker assumes this role to perform - tasks on your behalf. You must grant this role necessary permissions - so SageMaker can perform these tasks. The policy must allow the - SageMaker service principal (sagemaker.amazonaws.com) permissions - to assume this role. For more information, see SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). - \n To be able to pass this role to SageMaker, the caller of this - API must have the iam:PassRole permission." + description: |- + When you send any requests to Amazon Web Services resources from the notebook + instance, SageMaker assumes this role to perform tasks on your behalf. You + must grant this role necessary permissions so SageMaker can perform these + tasks. The policy must allow the SageMaker service principal (sagemaker.amazonaws.com) + permissions to assume this role. For more information, see SageMaker Roles + (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). + + + To be able to pass this role to SageMaker, the caller of this API must have + the iam:PassRole permission. type: string rootAccess: - description: "Whether root access is enabled or disabled for users - of the notebook instance. The default value is Enabled. \n Lifecycle - configurations need root access to be able to set up a notebook - instance. Because of this, lifecycle configurations associated with - a notebook instance always run with root access even if you disable - root access for users." + description: |- + Whether root access is enabled or disabled for users of the notebook instance. + The default value is Enabled. + + + Lifecycle configurations need root access to be able to set up a notebook + instance. Because of this, lifecycle configurations associated with a notebook + instance always run with root access even if you disable root access for + users. type: string securityGroupIDs: - description: The VPC security group IDs, in the form sg-xxxxxxxx. - The security groups must be for the same VPC as specified in the - subnet. + description: |- + The VPC security group IDs, in the form sg-xxxxxxxx. The security groups + must be for the same VPC as specified in the subnet. items: type: string type: array subnetID: - description: The ID of the subnet in a VPC to which you would like - to have a connectivity from your ML compute instance. + description: |- + The ID of the subnet in a VPC to which you would like to have a connectivity + from your ML compute instance. type: string tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -162,8 +183,9 @@ spec: type: object type: array volumeSizeInGB: - description: The size, in GB, of the ML storage volume to attach to - the notebook instance. The default value is 5 GB. + description: |- + The size, in GB, of the ML storage volume to attach to the notebook instance. + The default value is 5 GB. format: int64 type: integer required: @@ -175,24 +197,26 @@ spec: description: NotebookInstanceStatus defines the observed state of NotebookInstance properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -203,14 +227,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -242,12 +268,14 @@ spec: description: The status of the notebook instance. type: string stoppedByControllerMetadata: - description: The URL that you use to connect to the Jupyter notebook - that is running in your notebook instance. + description: |- + The URL that you use to connect to the Jupyter notebook that is running in + your notebook instance. type: string url: - description: The URL that you use to connect to the Jupyter notebook - that is running in your notebook instance. + description: |- + The URL that you use to connect to the Jupyter notebook that is running in + your notebook instance. type: string type: object type: object diff --git a/helm/crds/sagemaker.services.k8s.aws_pipelineexecutions.yaml b/helm/crds/sagemaker.services.k8s.aws_pipelineexecutions.yaml index 0f78545e..053c70ef 100644 --- a/helm/crds/sagemaker.services.k8s.aws_pipelineexecutions.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_pipelineexecutions.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: pipelineexecutions.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,24 +28,33 @@ spec: description: PipelineExecution is the Schema for the PipelineExecutions API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "PipelineExecutionSpec defines the desired state of PipelineExecution. - \n An execution of a pipeline." + description: |- + PipelineExecutionSpec defines the desired state of PipelineExecution. + + + An execution of a pipeline. properties: parallelismConfiguration: - description: This configuration, if specified, overrides the parallelism - configuration of the parent pipeline for this specific run. + description: |- + This configuration, if specified, overrides the parallelism configuration + of the parent pipeline for this specific run. properties: maxParallelExecutionSteps: format: int64 @@ -80,24 +88,26 @@ spec: description: PipelineExecutionStatus defines the observed state of PipelineExecution properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -108,14 +118,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_pipelines.yaml b/helm/crds/sagemaker.services.k8s.aws_pipelines.yaml index 9e09641a..579c8ee1 100644 --- a/helm/crds/sagemaker.services.k8s.aws_pipelines.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_pipelines.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: pipelines.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,25 +24,33 @@ spec: description: Pipeline is the Schema for the Pipelines API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "PipelineSpec defines the desired state of Pipeline. \n A - SageMaker Model Building Pipeline instance." + description: |- + PipelineSpec defines the desired state of Pipeline. + + + A SageMaker Model Building Pipeline instance. properties: parallelismConfiguration: - description: This is the configuration that controls the parallelism - of the pipeline. If specified, it applies to all runs of this pipeline - by default. + description: |- + This is the configuration that controls the parallelism of the pipeline. + If specified, it applies to all runs of this pipeline by default. properties: maxParallelExecutionSteps: format: int64 @@ -62,24 +69,29 @@ spec: description: The name of the pipeline. type: string roleARN: - description: The Amazon Resource Name (ARN) of the role used by the - pipeline to access and create resources. + description: |- + The Amazon Resource Name (ARN) of the role used by the pipeline to access + and create resources. type: string tags: description: A list of tags to apply to the created pipeline. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -95,24 +107,26 @@ spec: description: PipelineStatus defines the observed state of Pipeline properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -123,14 +137,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/sagemaker.services.k8s.aws_processingjobs.yaml b/helm/crds/sagemaker.services.k8s.aws_processingjobs.yaml index 3b003865..4277a125 100644 --- a/helm/crds/sagemaker.services.k8s.aws_processingjobs.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_processingjobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: processingjobs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,22 +28,29 @@ spec: description: ProcessingJob is the Schema for the ProcessingJobs API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "ProcessingJobSpec defines the desired state of ProcessingJob. - \n An Amazon SageMaker processing job that is used to analyze data and - evaluate models. For more information, see Process Data and Evaluate - Models (https://docs.aws.amazon.com/sagemaker/latest/dg/processing-job.html)." + description: |- + ProcessingJobSpec defines the desired state of ProcessingJob. + + + An Amazon SageMaker processing job that is used to analyze data and evaluate + models. For more information, see Process Data and Evaluate Models (https://docs.aws.amazon.com/sagemaker/latest/dg/processing-job.html). properties: appSpecification: description: Configures the processing job to run a specified Docker @@ -64,13 +70,23 @@ spec: environment: additionalProperties: type: string - description: The environment variables to set in the Docker container. - Up to 100 key and values entries in the map are supported. + description: |- + The environment variables to set in the Docker container. Up to 100 key and + values entries in the map are supported. type: object experimentConfig: - description: "Associates a SageMaker job as a trial component with - an experiment and trial. Specified when you call the following APIs: - \n - CreateProcessingJob \n - CreateTrainingJob \n - CreateTransformJob" + description: |- + Associates a SageMaker job as a trial component with an experiment and trial. + Specified when you call the following APIs: + + + - CreateProcessingJob + + + - CreateTrainingJob + + + - CreateTransformJob properties: experimentName: type: string @@ -80,23 +96,22 @@ spec: type: string type: object networkConfig: - description: Networking options for a processing job, such as whether - to allow inbound and outbound network calls to and from processing - containers, and the VPC subnets and security groups to use for VPC-enabled - processing jobs. + description: |- + Networking options for a processing job, such as whether to allow inbound + and outbound network calls to and from processing containers, and the VPC + subnets and security groups to use for VPC-enabled processing jobs. properties: enableInterContainerTrafficEncryption: type: boolean enableNetworkIsolation: type: boolean vpcConfig: - description: Specifies a VPC that your training jobs and hosted - models have access to. Control access to and from your training - and model containers by configuring the VPC. For more information, - see Protect Endpoints by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) - and Protect Training Jobs by Using an Amazon Virtual Private - Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + Specifies a VPC that your training jobs and hosted models have access to. + Control access to and from your training and model containers by configuring + the VPC. For more information, see Protect Endpoints by Using an Amazon Virtual + Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/host-vpc.html) + and Protect Training Jobs by Using an Amazon Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -112,16 +127,17 @@ spec: description: An array of inputs configuring the data to download into the processing container. items: - description: The inputs for a processing job. The processing input - must specify exactly one of either S3Input or DatasetDefinition - types. + description: |- + The inputs for a processing job. The processing input must specify exactly + one of either S3Input or DatasetDefinition types. properties: appManaged: type: boolean datasetDefinition: - description: Configuration for Dataset Definition inputs. The - Dataset Definition input must specify exactly one of either - AthenaDatasetDefinition or RedshiftDatasetDefinition types. + description: |- + Configuration for Dataset Definition inputs. The Dataset Definition input + must specify exactly one of either AthenaDatasetDefinition or RedshiftDatasetDefinition + types. properties: athenaDatasetDefinition: description: Configuration for Athena Dataset Definition @@ -197,8 +213,9 @@ spec: inputName: type: string s3Input: - description: Configuration for downloading input data from Amazon - S3 into the processing container. + description: |- + Configuration for downloading input data from Amazon S3 into the processing + container. properties: localPath: type: string @@ -216,9 +233,9 @@ spec: type: object type: array processingJobName: - description: The name of the processing job. The name must be unique - within an Amazon Web Services Region in the Amazon Web Services - account. + description: |- + The name of the processing job. The name must be unique within an Amazon + Web Services Region in the Amazon Web Services account. type: string processingOutputConfig: description: Output configuration for the processing job. @@ -227,9 +244,9 @@ spec: type: string outputs: items: - description: Describes the results of a processing job. The - processing output must specify exactly one of either S3Output - or FeatureStoreOutput types. + description: |- + Describes the results of a processing job. The processing output must specify + exactly one of either S3Output or FeatureStoreOutput types. properties: appManaged: type: boolean @@ -243,8 +260,9 @@ spec: outputName: type: string s3Output: - description: Configuration for uploading output data to - Amazon S3 from the processing container. + description: |- + Configuration for uploading output data to Amazon S3 from the processing + container. properties: localPath: type: string @@ -257,9 +275,10 @@ spec: type: array type: object processingResources: - description: Identifies the resources, ML compute instances, and ML - storage volumes to deploy for a processing job. In distributed training, - you specify more than one instance. + description: |- + Identifies the resources, ML compute instances, and ML storage volumes to + deploy for a processing job. In distributed training, you specify more than + one instance. properties: clusterConfig: description: Configuration for the cluster used to run a processing @@ -278,8 +297,9 @@ spec: type: object type: object roleARN: - description: The Amazon Resource Name (ARN) of an IAM role that Amazon - SageMaker can assume to perform tasks on your behalf. + description: |- + The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume + to perform tasks on your behalf. type: string stoppingCondition: description: The time limit for how long the processing job is allowed @@ -290,22 +310,27 @@ spec: type: integer type: object tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -323,24 +348,26 @@ spec: description: ProcessingJobStatus defines the observed state of ProcessingJob properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -351,14 +378,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -384,8 +413,9 @@ spec: type: object type: array failureReason: - description: A string, up to one KB in size, that contains the reason - a processing job failed, if it failed. + description: |- + A string, up to one KB in size, that contains the reason a processing job + failed, if it failed. type: string processingJobStatus: description: Provides the status of a processing job. diff --git a/helm/crds/sagemaker.services.k8s.aws_trainingjobs.yaml b/helm/crds/sagemaker.services.k8s.aws_trainingjobs.yaml index af035ce7..4bc839be 100644 --- a/helm/crds/sagemaker.services.k8s.aws_trainingjobs.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_trainingjobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: trainingjobs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -32,28 +31,36 @@ spec: description: TrainingJob is the Schema for the TrainingJobs API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "TrainingJobSpec defines the desired state of TrainingJob. - \n Contains information about a training job." + description: |- + TrainingJobSpec defines the desired state of TrainingJob. + + + Contains information about a training job. properties: algorithmSpecification: - description: The registry path of the Docker image that contains the - training algorithm and algorithm-specific metadata, including the - input mode. For more information about algorithms provided by SageMaker, - see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - For information about providing your own algorithms, see Using Your - Own Algorithms with Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html). + description: |- + The registry path of the Docker image that contains the training algorithm + and algorithm-specific metadata, including the input mode. For more information + about algorithms provided by SageMaker, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + For information about providing your own algorithms, see Using Your Own Algorithms + with Amazon SageMaker (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html). properties: algorithmName: type: string @@ -61,11 +68,11 @@ spec: type: boolean metricDefinitions: items: - description: Specifies a metric that the training algorithm - writes to stderr or stdout. SageMakerhyperparameter tuning - captures all defined metrics. You specify one metric that - a hyperparameter tuning job uses as its objective metric to - choose the best training job. + description: |- + Specifies a metric that the training algorithm writes to stderr or stdout. + SageMakerhyperparameter tuning captures all defined metrics. You specify + one metric that a hyperparameter tuning job uses as its objective metric + to choose the best training job. properties: name: type: string @@ -76,38 +83,58 @@ spec: trainingImage: type: string trainingInputMode: - description: "The training input mode that the algorithm supports. - For more information about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon SageMaker - streams data directly from Amazon S3 to the container. \n File - mode \n If an algorithm supports File mode, SageMaker downloads - the training data from S3 to the provisioned ML storage volume, - and mounts the directory to the Docker volume for the training - container. \n You must provision the ML storage volume with - sufficient capacity to accommodate the data downloaded from - S3. In addition to the training data, the ML storage volume - also stores the output model. The algorithm container uses the - ML storage volume to also store intermediate information, if - any. \n For distributed algorithms, training data is distributed - uniformly. Your training duration is predictable if the input - data objects sizes are approximately the same. SageMaker does - not split the files any further for model training. If the object - sizes are skewed, training won't be optimal as the data distribution - is also skewed when one host in a training cluster is overloaded, - thus becoming a bottleneck in training. \n FastFile mode \n - If an algorithm supports FastFile mode, SageMaker streams data - directly from S3 to the container with no code changes, and - provides file system access to the data. Users can author their - training script to interact with these files as if they were - stored on disk. \n FastFile mode works best when the data is - read sequentially. Augmented manifest files aren't supported. - The startup time is lower when there are fewer files in the - S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string type: object checkpointConfig: - description: Contains information about the output location for managed - spot training checkpoint data. + description: |- + Contains information about the output location for managed spot training + checkpoint data. properties: localPath: type: string @@ -115,16 +142,18 @@ spec: type: string type: object debugHookConfig: - description: Configuration information for the Amazon SageMaker Debugger - hook parameters, metric and tensor collections, and storage paths. - To learn more about how to configure the DebugHookConfig parameter, - see Use the SageMaker and Debugger Configuration API Operations - to Create, Update, and Debug Your Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html). + description: |- + Configuration information for the Amazon SageMaker Debugger hook parameters, + metric and tensor collections, and storage paths. To learn more about how + to configure the DebugHookConfig parameter, see Use the SageMaker and Debugger + Configuration API Operations to Create, Update, and Debug Your Training Job + (https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html). properties: collectionConfigurations: items: - description: Configuration information for the Amazon SageMaker - Debugger output tensor collections. + description: |- + Configuration information for the Amazon SageMaker Debugger output tensor + collections. properties: collectionName: type: string @@ -144,13 +173,15 @@ spec: type: string type: object debugRuleConfigurations: - description: Configuration information for Amazon SageMaker Debugger - rules for debugging output tensors. + description: |- + Configuration information for Amazon SageMaker Debugger rules for debugging + output tensors. items: - description: Configuration information for SageMaker Debugger rules - for debugging. To learn more about how to configure the DebugRuleConfiguration - parameter, see Use the SageMaker and Debugger Configuration API - Operations to Create, Update, and Debug Your Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html). + description: |- + Configuration information for SageMaker Debugger rules for debugging. To + learn more about how to configure the DebugRuleConfiguration parameter, see + Use the SageMaker and Debugger Configuration API Operations to Create, Update, + and Debug Your Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/debugger-createtrainingjob-api.html). properties: instanceType: type: string @@ -172,33 +203,36 @@ spec: type: object type: array enableInterContainerTrafficEncryption: - description: To encrypt all communications between ML compute instances - in distributed training, choose True. Encryption provides greater - security for distributed training, but training might take longer. - How long it takes depends on the amount of communication between - compute instances, especially if you use a deep learning algorithm - in distributed training. For more information, see Protect Communications - Between ML Compute Instances in a Distributed Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/train-encrypt.html). + description: |- + To encrypt all communications between ML compute instances in distributed + training, choose True. Encryption provides greater security for distributed + training, but training might take longer. How long it takes depends on the + amount of communication between compute instances, especially if you use + a deep learning algorithm in distributed training. For more information, + see Protect Communications Between ML Compute Instances in a Distributed + Training Job (https://docs.aws.amazon.com/sagemaker/latest/dg/train-encrypt.html). type: boolean enableManagedSpotTraining: - description: "To train models using managed spot training, choose - True. Managed spot training provides a fully managed and scalable - infrastructure for training machine learning models. this option - is useful when training jobs can be interrupted and when there is - flexibility when the training job is run. \n The complete and intermediate - results of jobs are stored in an Amazon S3 bucket, and can be used - as a starting point to train models incrementally. Amazon SageMaker - provides metrics and logs in CloudWatch. They can be used to see - when managed spot training jobs are running, interrupted, resumed, - or completed." + description: |- + To train models using managed spot training, choose True. Managed spot training + provides a fully managed and scalable infrastructure for training machine + learning models. this option is useful when training jobs can be interrupted + and when there is flexibility when the training job is run. + + + The complete and intermediate results of jobs are stored in an Amazon S3 + bucket, and can be used as a starting point to train models incrementally. + Amazon SageMaker provides metrics and logs in CloudWatch. They can be used + to see when managed spot training jobs are running, interrupted, resumed, + or completed. type: boolean enableNetworkIsolation: - description: Isolates the training container. No inbound or outbound - network calls can be made, except for calls between peers within - a training cluster for distributed training. If you enable network - isolation for training jobs that are configured to use a VPC, SageMaker - downloads and uploads customer data and model artifacts through - the specified VPC, but the training container does not have network + description: |- + Isolates the training container. No inbound or outbound network calls can + be made, except for calls between peers within a training cluster for distributed + training. If you enable network isolation for training jobs that are configured + to use a VPC, SageMaker downloads and uploads customer data and model artifacts + through the specified VPC, but the training container does not have network access. type: boolean environment: @@ -207,9 +241,18 @@ spec: description: The environment variables to set in the Docker container. type: object experimentConfig: - description: "Associates a SageMaker job as a trial component with - an experiment and trial. Specified when you call the following APIs: - \n - CreateProcessingJob \n - CreateTrainingJob \n - CreateTransformJob" + description: |- + Associates a SageMaker job as a trial component with an experiment and trial. + Specified when you call the following APIs: + + + - CreateProcessingJob + + + - CreateTrainingJob + + + - CreateTransformJob properties: experimentName: type: string @@ -221,33 +264,42 @@ spec: hyperParameters: additionalProperties: type: string - description: "Algorithm-specific parameters that influence the quality - of the model. You set hyperparameters before you start the learning - process. For a list of hyperparameters for each training algorithm - provided by SageMaker, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n You can specify a maximum of 100 hyperparameters. Each hyperparameter - is a key-value pair. Each key and value is limited to 256 characters, - as specified by the Length Constraint. \n Do not include any security-sensitive - information including account access IDs, secrets or tokens in any - hyperparameter field. If the use of security-sensitive credentials - are detected, SageMaker will reject your training job request and - return an exception error." + description: |- + Algorithm-specific parameters that influence the quality of the model. You + set hyperparameters before you start the learning process. For a list of + hyperparameters for each training algorithm provided by SageMaker, see Algorithms + (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + You can specify a maximum of 100 hyperparameters. Each hyperparameter is + a key-value pair. Each key and value is limited to 256 characters, as specified + by the Length Constraint. + + + Do not include any security-sensitive information including account access + IDs, secrets or tokens in any hyperparameter field. If the use of security-sensitive + credentials are detected, SageMaker will reject your training job request + and return an exception error. type: object inputDataConfig: - description: "An array of Channel objects. Each channel is a named - input source. InputDataConfig describes the input data and its location. - \n Algorithms can accept input data from one or more channels. For - example, an algorithm might have two channels of input data, training_data - and validation_data. The configuration for each channel provides - the S3, EFS, or FSx location where the input data is stored. It - also provides information about the stored data: the MIME type, - compression method, and whether the data is wrapped in RecordIO - format. \n Depending on the input mode that the algorithm supports, - SageMaker either copies input data files from an S3 bucket to a - local directory in the Docker container, or makes it available as - input streams. For example, if you specify an EFS location, input - data files are available as input streams. They do not need to be - downloaded." + description: |- + An array of Channel objects. Each channel is a named input source. InputDataConfig + describes the input data and its location. + + + Algorithms can accept input data from one or more channels. For example, + an algorithm might have two channels of input data, training_data and validation_data. + The configuration for each channel provides the S3, EFS, or FSx location + where the input data is stored. It also provides information about the stored + data: the MIME type, compression method, and whether the data is wrapped + in RecordIO format. + + + Depending on the input mode that the algorithm supports, SageMaker either + copies input data files from an S3 bucket to a local directory in the Docker + container, or makes it available as input streams. For example, if you specify + an EFS location, input data files are available as input streams. They do + not need to be downloaded. items: description: A channel is a named input source that training algorithms can consume. @@ -293,53 +345,72 @@ spec: type: object type: object inputMode: - description: "The training input mode that the algorithm supports. - For more information about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). - \n Pipe mode \n If an algorithm supports Pipe mode, Amazon - SageMaker streams data directly from Amazon S3 to the container. - \n File mode \n If an algorithm supports File mode, SageMaker - downloads the training data from S3 to the provisioned ML - storage volume, and mounts the directory to the Docker volume - for the training container. \n You must provision the ML storage - volume with sufficient capacity to accommodate the data downloaded - from S3. In addition to the training data, the ML storage - volume also stores the output model. The algorithm container - uses the ML storage volume to also store intermediate information, - if any. \n For distributed algorithms, training data is distributed - uniformly. Your training duration is predictable if the input - data objects sizes are approximately the same. SageMaker does - not split the files any further for model training. If the - object sizes are skewed, training won't be optimal as the - data distribution is also skewed when one host in a training - cluster is overloaded, thus becoming a bottleneck in training. - \n FastFile mode \n If an algorithm supports FastFile mode, - SageMaker streams data directly from S3 to the container with - no code changes, and provides file system access to the data. - Users can author their training script to interact with these - files as if they were stored on disk. \n FastFile mode works - best when the data is read sequentially. Augmented manifest - files aren't supported. The startup time is lower when there - are fewer files in the S3 bucket provided." + description: |- + The training input mode that the algorithm supports. For more information + about input modes, see Algorithms (https://docs.aws.amazon.com/sagemaker/latest/dg/algos.html). + + + Pipe mode + + + If an algorithm supports Pipe mode, Amazon SageMaker streams data directly + from Amazon S3 to the container. + + + File mode + + + If an algorithm supports File mode, SageMaker downloads the training data + from S3 to the provisioned ML storage volume, and mounts the directory to + the Docker volume for the training container. + + + You must provision the ML storage volume with sufficient capacity to accommodate + the data downloaded from S3. In addition to the training data, the ML storage + volume also stores the output model. The algorithm container uses the ML + storage volume to also store intermediate information, if any. + + + For distributed algorithms, training data is distributed uniformly. Your + training duration is predictable if the input data objects sizes are approximately + the same. SageMaker does not split the files any further for model training. + If the object sizes are skewed, training won't be optimal as the data distribution + is also skewed when one host in a training cluster is overloaded, thus becoming + a bottleneck in training. + + + FastFile mode + + + If an algorithm supports FastFile mode, SageMaker streams data directly from + S3 to the container with no code changes, and provides file system access + to the data. Users can author their training script to interact with these + files as if they were stored on disk. + + + FastFile mode works best when the data is read sequentially. Augmented manifest + files aren't supported. The startup time is lower when there are fewer files + in the S3 bucket provided. type: string recordWrapperType: type: string shuffleConfig: - description: "A configuration for a shuffle option for input - data in a channel. If you use S3Prefix for S3DataType, the - results of the S3 key prefix matches are shuffled. If you - use ManifestFile, the order of the S3 object references in - the ManifestFile is shuffled. If you use AugmentedManifestFile, - the order of the JSON lines in the AugmentedManifestFile is - shuffled. The shuffling order is determined using the Seed - value. \n For Pipe input mode, when ShuffleConfig is specified - shuffling is done at the start of every epoch. With large - datasets, this ensures that the order of the training data - is different for each epoch, and it helps reduce bias and - possible overfitting. In a multi-node training job when ShuffleConfig - is combined with S3DataDistributionType of ShardedByS3Key, - the data is shuffled across nodes so that the content sent - to a particular node on the first epoch might be sent to a - different node on the second epoch." + description: |- + A configuration for a shuffle option for input data in a channel. If you + use S3Prefix for S3DataType, the results of the S3 key prefix matches are + shuffled. If you use ManifestFile, the order of the S3 object references + in the ManifestFile is shuffled. If you use AugmentedManifestFile, the order + of the JSON lines in the AugmentedManifestFile is shuffled. The shuffling + order is determined using the Seed value. + + + For Pipe input mode, when ShuffleConfig is specified shuffling is done at + the start of every epoch. With large datasets, this ensures that the order + of the training data is different for each epoch, and it helps reduce bias + and possible overfitting. In a multi-node training job when ShuffleConfig + is combined with S3DataDistributionType of ShardedByS3Key, the data is shuffled + across nodes so that the content sent to a particular node on the first epoch + might be sent to a different node on the second epoch. properties: seed: format: int64 @@ -348,8 +419,9 @@ spec: type: object type: array outputDataConfig: - description: Specifies the path to the S3 location where you want - to store model artifacts. SageMaker creates subfolders for the artifacts. + description: |- + Specifies the path to the S3 location where you want to store model artifacts. + SageMaker creates subfolders for the artifacts. properties: kmsKeyID: type: string @@ -357,8 +429,9 @@ spec: type: string type: object profilerConfig: - description: Configuration information for Amazon SageMaker Debugger - system monitoring, framework profiling, and storage paths. + description: |- + Configuration information for Amazon SageMaker Debugger system monitoring, + framework profiling, and storage paths. properties: profilingIntervalInMilliseconds: format: int64 @@ -371,8 +444,9 @@ spec: type: string type: object profilerRuleConfigurations: - description: Configuration information for Amazon SageMaker Debugger - rules for profiling system and framework metrics. + description: |- + Configuration information for Amazon SageMaker Debugger rules for profiling + system and framework metrics. items: description: Configuration information for profiling rules. properties: @@ -396,23 +470,25 @@ spec: type: object type: array resourceConfig: - description: "The resources, including the ML compute instances and - ML storage volumes, to use for model training. \n ML storage volumes - store model artifacts and incremental states. Training algorithms - might also use ML storage volumes for scratch space. If you want - SageMaker to use the ML storage volume to store the training data, - choose File as the TrainingInputMode in the algorithm specification. - For distributed training algorithms, specify an instance count greater - than 1." + description: |- + The resources, including the ML compute instances and ML storage volumes, + to use for model training. + + + ML storage volumes store model artifacts and incremental states. Training + algorithms might also use ML storage volumes for scratch space. If you want + SageMaker to use the ML storage volume to store the training data, choose + File as the TrainingInputMode in the algorithm specification. For distributed + training algorithms, specify an instance count greater than 1. properties: instanceCount: format: int64 type: integer instanceGroups: items: - description: Defines an instance group for heterogeneous cluster - training. When requesting a training job using the CreateTrainingJob - (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) + description: |- + Defines an instance group for heterogeneous cluster training. When requesting + a training job using the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) API, you can configure multiple instance groups . properties: instanceCount: @@ -444,26 +520,32 @@ spec: type: integer type: object roleARN: - description: "The Amazon Resource Name (ARN) of an IAM role that SageMaker - can assume to perform tasks on your behalf. \n During model training, - SageMaker needs your permission to read input data from an S3 bucket, - download a Docker image that contains training code, write model - artifacts to an S3 bucket, write logs to Amazon CloudWatch Logs, - and publish metrics to Amazon CloudWatch. You grant permissions - for all of these tasks to an IAM role. For more information, see - SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). - \n To be able to pass this role to SageMaker, the caller of this - API must have the iam:PassRole permission." + description: |- + The Amazon Resource Name (ARN) of an IAM role that SageMaker can assume to + perform tasks on your behalf. + + + During model training, SageMaker needs your permission to read input data + from an S3 bucket, download a Docker image that contains training code, write + model artifacts to an S3 bucket, write logs to Amazon CloudWatch Logs, and + publish metrics to Amazon CloudWatch. You grant permissions for all of these + tasks to an IAM role. For more information, see SageMaker Roles (https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html). + + + To be able to pass this role to SageMaker, the caller of this API must have + the iam:PassRole permission. type: string stoppingCondition: - description: "Specifies a limit to how long a model training job can - run. It also specifies how long a managed Spot training job has - to complete. When the job reaches the time limit, SageMaker ends - the training job. Use this API to cap model training costs. \n To - stop a job, SageMaker sends the algorithm the SIGTERM signal, which - delays job termination for 120 seconds. Algorithms can use this - 120-second window to save the model artifacts, so the results of - training are not lost." + description: |- + Specifies a limit to how long a model training job can run. It also specifies + how long a managed Spot training job has to complete. When the job reaches + the time limit, SageMaker ends the training job. Use this API to cap model + training costs. + + + To stop a job, SageMaker sends the algorithm the SIGTERM signal, which delays + job termination for 120 seconds. Algorithms can use this 120-second window + to save the model artifacts, so the results of training are not lost. properties: maxRuntimeInSeconds: format: int64 @@ -473,23 +555,28 @@ spec: type: integer type: object tags: - description: An array of key-value pairs. You can use tags to categorize - your Amazon Web Services resources in different ways, for example, - by purpose, owner, or environment. For more information, see Tagging - Amazon Web Services Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + description: |- + An array of key-value pairs. You can use tags to categorize your Amazon Web + Services resources in different ways, for example, by purpose, owner, or + environment. For more information, see Tagging Amazon Web Services Resources + (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -498,8 +585,9 @@ spec: type: object type: array tensorBoardOutputConfig: - description: Configuration of storage locations for the Amazon SageMaker - Debugger TensorBoard output data. + description: |- + Configuration of storage locations for the Amazon SageMaker Debugger TensorBoard + output data. properties: localPath: type: string @@ -507,15 +595,16 @@ spec: type: string type: object trainingJobName: - description: The name of the training job. The name must be unique - within an Amazon Web Services Region in an Amazon Web Services account. + description: |- + The name of the training job. The name must be unique within an Amazon Web + Services Region in an Amazon Web Services account. type: string vpcConfig: - description: A VpcConfig object that specifies the VPC that you want - your training job to connect to. Control access to and from your - training container by configuring the VPC. For more information, - see Protect Training Jobs by Using an Amazon Virtual Private Cloud - (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). + description: |- + A VpcConfig object that specifies the VPC that you want your training job + to connect to. Control access to and from your training container by configuring + the VPC. For more information, see Protect Training Jobs by Using an Amazon + Virtual Private Cloud (https://docs.aws.amazon.com/sagemaker/latest/dg/train-vpc.html). properties: securityGroupIDs: items: @@ -538,24 +627,26 @@ spec: description: TrainingJobStatus defines the observed state of TrainingJob properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -566,14 +657,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -604,8 +697,9 @@ spec: format: date-time type: string debugRuleEvaluationStatuses: - description: Evaluation status of Amazon SageMaker Debugger rules - for debugging on a training job. + description: |- + Evaluation status of Amazon SageMaker Debugger rules for debugging on a training + job. items: description: Information about the status of the rule evaluation. properties: @@ -631,15 +725,17 @@ spec: format: date-time type: string modelArtifacts: - description: Information about the Amazon S3 location that is configured - for storing model artifacts. + description: |- + Information about the Amazon S3 location that is configured for storing model + artifacts. properties: s3ModelArtifacts: type: string type: object profilerRuleEvaluationStatuses: - description: Evaluation status of Amazon SageMaker Debugger rules - for profiling on a training job. + description: |- + Evaluation status of Amazon SageMaker Debugger rules for profiling on a training + job. items: description: Information about the status of the rule evaluation. properties: @@ -660,38 +756,111 @@ spec: description: Profiling status of a training job. type: string secondaryStatus: - description: "Provides detailed information about the state of the - training job. For detailed information on the secondary status of - the training job, see StatusMessage under SecondaryStatusTransition. - \n SageMaker provides primary statuses and secondary statuses that - apply to each of them: \n InProgress \n * Starting - Starting the - training job. \n * Downloading - An optional stage for algorithms - that support File training input mode. It indicates that data is - being downloaded to the ML storage volumes. \n * Training - Training - is in progress. \n * Interrupted - The job stopped because the managed - spot training instances were interrupted. \n * Uploading - Training - is complete and the model artifacts are being uploaded to the S3 - location. \n Completed \n * Completed - The training job has completed. - \n Failed \n * Failed - The training job has failed. The reason - for the failure is returned in the FailureReason field of DescribeTrainingJobResponse. - \n Stopped \n * MaxRuntimeExceeded - The job stopped because it - exceeded the maximum allowed runtime. \n * MaxWaitTimeExceeded - - The job stopped because it exceeded the maximum allowed wait time. - \n * Stopped - The training job has stopped. \n Stopping \n * Stopping - - Stopping the training job. \n Valid values for SecondaryStatus - are subject to change. \n We no longer support the following secondary - statuses: \n * LaunchingMLInstances \n * PreparingTraining \n * - DownloadingTrainingImage" + description: |- + Provides detailed information about the state of the training job. For detailed + information on the secondary status of the training job, see StatusMessage + under SecondaryStatusTransition. + + + SageMaker provides primary statuses and secondary statuses that apply to + each of them: + + + InProgress + + + * Starting - Starting the training job. + + + * Downloading - An optional stage for algorithms that support File training + input mode. It indicates that data is being downloaded to the ML storage + volumes. + + + * Training - Training is in progress. + + + * Interrupted - The job stopped because the managed spot training instances + were interrupted. + + + * Uploading - Training is complete and the model artifacts are being uploaded + to the S3 location. + + + Completed + + + * Completed - The training job has completed. + + + Failed + + + * Failed - The training job has failed. The reason for the failure is + returned in the FailureReason field of DescribeTrainingJobResponse. + + + Stopped + + + * MaxRuntimeExceeded - The job stopped because it exceeded the maximum + allowed runtime. + + + * MaxWaitTimeExceeded - The job stopped because it exceeded the maximum + allowed wait time. + + + * Stopped - The training job has stopped. + + + Stopping + + + * Stopping - Stopping the training job. + + + Valid values for SecondaryStatus are subject to change. + + + We no longer support the following secondary statuses: + + + * LaunchingMLInstances + + + * PreparingTraining + + + * DownloadingTrainingImage type: string trainingJobStatus: - description: "The status of the training job. \n SageMaker provides - the following training job statuses: \n * InProgress - The training - is in progress. \n * Completed - The training job has completed. - \n * Failed - The training job has failed. To see the reason for - the failure, see the FailureReason field in the response to a DescribeTrainingJobResponse - call. \n * Stopping - The training job is stopping. \n * Stopped - - The training job has stopped. \n For more detailed information, - see SecondaryStatus." + description: |- + The status of the training job. + + + SageMaker provides the following training job statuses: + + + * InProgress - The training is in progress. + + + * Completed - The training job has completed. + + + * Failed - The training job has failed. To see the reason for the failure, + see the FailureReason field in the response to a DescribeTrainingJobResponse + call. + + + * Stopping - The training job is stopping. + + + * Stopped - The training job has stopped. + + + For more detailed information, see SecondaryStatus. type: string warmPoolStatus: description: The status of the warm pool associated with the training diff --git a/helm/crds/sagemaker.services.k8s.aws_transformjobs.yaml b/helm/crds/sagemaker.services.k8s.aws_transformjobs.yaml index ab1923eb..8d549a4d 100644 --- a/helm/crds/sagemaker.services.k8s.aws_transformjobs.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_transformjobs.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: transformjobs.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -29,42 +28,56 @@ spec: description: TransformJob is the Schema for the TransformJobs API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object spec: - description: "TransformJobSpec defines the desired state of TransformJob. - \n A batch transform job. For information about SageMaker batch transform, - see Use Batch Transform (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform.html)." + description: |- + TransformJobSpec defines the desired state of TransformJob. + + + A batch transform job. For information about SageMaker batch transform, see + Use Batch Transform (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform.html). properties: batchStrategy: - description: "Specifies the number of records to include in a mini-batch - for an HTTP inference request. A record is a single unit of input - data that inference can be made on. For example, a single line in - a CSV file is a record. \n To enable the batch strategy, you must - set the SplitType property to Line, RecordIO, or TFRecord. \n To - use only one record when making an HTTP invocation request to a - container, set BatchStrategy to SingleRecord and SplitType to Line. - \n To fit as many records in a mini-batch as can fit within the - MaxPayloadInMB limit, set BatchStrategy to MultiRecord and SplitType - to Line." + description: |- + Specifies the number of records to include in a mini-batch for an HTTP inference + request. A record is a single unit of input data that inference can be made + on. For example, a single line in a CSV file is a record. + + + To enable the batch strategy, you must set the SplitType property to Line, + RecordIO, or TFRecord. + + + To use only one record when making an HTTP invocation request to a container, + set BatchStrategy to SingleRecord and SplitType to Line. + + + To fit as many records in a mini-batch as can fit within the MaxPayloadInMB + limit, set BatchStrategy to MultiRecord and SplitType to Line. type: string dataProcessing: - description: The data structure used to specify the data to be used - for inference in a batch transform job and to associate the data - that is relevant to the prediction results in the output. The input - filter provided allows you to exclude input data that is not needed - for inference in a batch transform job. The output filter provided - allows you to include input data relevant to interpreting the predictions - in the output from the job. For more information, see Associate + description: |- + The data structure used to specify the data to be used for inference in a + batch transform job and to associate the data that is relevant to the prediction + results in the output. The input filter provided allows you to exclude input + data that is not needed for inference in a batch transform job. The output + filter provided allows you to include input data relevant to interpreting + the predictions in the output from the job. For more information, see Associate Prediction Results with their Corresponding Input Records (https://docs.aws.amazon.com/sagemaker/latest/dg/batch-transform-data-processing.html). properties: inputFilter: @@ -77,13 +90,23 @@ spec: environment: additionalProperties: type: string - description: The environment variables to set in the Docker container. - We support up to 16 key and values entries in the map. + description: |- + The environment variables to set in the Docker container. We support up to + 16 key and values entries in the map. type: object experimentConfig: - description: "Associates a SageMaker job as a trial component with - an experiment and trial. Specified when you call the following APIs: - \n - CreateProcessingJob \n - CreateTrainingJob \n - CreateTransformJob" + description: |- + Associates a SageMaker job as a trial component with an experiment and trial. + Specified when you call the following APIs: + + + - CreateProcessingJob + + + - CreateTrainingJob + + + - CreateTransformJob properties: experimentName: type: string @@ -93,36 +116,41 @@ spec: type: string type: object maxConcurrentTransforms: - description: The maximum number of parallel requests that can be sent - to each instance in a transform job. If MaxConcurrentTransforms - is set to 0 or left unset, Amazon SageMaker checks the optional - execution-parameters to determine the settings for your chosen algorithm. - If the execution-parameters endpoint is not enabled, the default - value is 1. For more information on execution-parameters, see How - Containers Serve Requests (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-batch-code.html#your-algorithms-batch-code-how-containe-serves-requests). + description: |- + The maximum number of parallel requests that can be sent to each instance + in a transform job. If MaxConcurrentTransforms is set to 0 or left unset, + Amazon SageMaker checks the optional execution-parameters to determine the + settings for your chosen algorithm. If the execution-parameters endpoint + is not enabled, the default value is 1. For more information on execution-parameters, + see How Containers Serve Requests (https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-batch-code.html#your-algorithms-batch-code-how-containe-serves-requests). For built-in algorithms, you don't need to set a value for MaxConcurrentTransforms. format: int64 type: integer maxPayloadInMB: - description: "The maximum allowed size of the payload, in MB. A payload - is the data portion of a record (without metadata). The value in - MaxPayloadInMB must be greater than, or equal to, the size of a - single record. To estimate the size of a record in MB, divide the - size of your dataset by the number of records. To ensure that the - records fit within the maximum payload size, we recommend using - a slightly larger value. The default value is 6 MB. \n The value - of MaxPayloadInMB cannot be greater than 100 MB. If you specify + description: |- + The maximum allowed size of the payload, in MB. A payload is the data portion + of a record (without metadata). The value in MaxPayloadInMB must be greater + than, or equal to, the size of a single record. To estimate the size of a + record in MB, divide the size of your dataset by the number of records. To + ensure that the records fit within the maximum payload size, we recommend + using a slightly larger value. The default value is 6 MB. + + + The value of MaxPayloadInMB cannot be greater than 100 MB. If you specify the MaxConcurrentTransforms parameter, the value of (MaxConcurrentTransforms - * MaxPayloadInMB) also cannot exceed 100 MB. \n For cases where - the payload might be arbitrarily large and is transmitted using - HTTP chunked encoding, set the value to 0. This feature works only + * MaxPayloadInMB) also cannot exceed 100 MB. + + + For cases where the payload might be arbitrarily large and is transmitted + using HTTP chunked encoding, set the value to 0. This feature works only in supported algorithms. Currently, Amazon SageMaker built-in algorithms - do not support HTTP chunked encoding." + do not support HTTP chunked encoding. format: int64 type: integer modelClientConfig: - description: Configures the timeout and maximum number of retries - for processing a transform job invocation. + description: |- + Configures the timeout and maximum number of retries for processing a transform + job invocation. properties: invocationsMaxRetries: format: int64 @@ -132,28 +160,33 @@ spec: type: integer type: object modelName: - description: The name of the model that you want to use for the transform - job. ModelName must be the name of an existing Amazon SageMaker - model within an Amazon Web Services Region in an Amazon Web Services - account. + description: |- + The name of the model that you want to use for the transform job. ModelName + must be the name of an existing Amazon SageMaker model within an Amazon Web + Services Region in an Amazon Web Services account. type: string tags: - description: (Optional) An array of key-value pairs. For more information, - see Using Cost Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what) + description: |- + (Optional) An array of key-value pairs. For more information, see Using Cost + Allocation Tags (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-what) in the Amazon Web Services Billing and Cost Management User Guide. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -185,8 +218,9 @@ spec: type: string type: object transformJobName: - description: The name of the transform job. The name must be unique - within an Amazon Web Services Region in an Amazon Web Services account. + description: |- + The name of the transform job. The name must be unique within an Amazon Web + Services Region in an Amazon Web Services account. type: string transformOutput: description: Describes the results of the transform job. @@ -201,8 +235,9 @@ spec: type: string type: object transformResources: - description: Describes the resources, including ML instance types - and ML instance count, to use for the transform job. + description: |- + Describes the resources, including ML instance types and ML instance count, + to use for the transform job. properties: instanceCount: format: int64 @@ -223,24 +258,26 @@ spec: description: TransformJobStatus defines the observed state of TransformJob properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -251,14 +288,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status @@ -284,14 +323,16 @@ spec: type: object type: array failureReason: - description: If the transform job failed, FailureReason describes - why it failed. A transform job creates a log file, which includes - error messages, and stores it as an Amazon S3 object. For more information, - see Log Amazon SageMaker Events with Amazon CloudWatch (https://docs.aws.amazon.com/sagemaker/latest/dg/logging-cloudwatch.html). + description: |- + If the transform job failed, FailureReason describes why it failed. A transform + job creates a log file, which includes error messages, and stores it as an + Amazon S3 object. For more information, see Log Amazon SageMaker Events with + Amazon CloudWatch (https://docs.aws.amazon.com/sagemaker/latest/dg/logging-cloudwatch.html). type: string transformJobStatus: - description: The status of the transform job. If the transform job - failed, the reason is returned in the FailureReason field. + description: |- + The status of the transform job. If the transform job failed, the reason + is returned in the FailureReason field. type: string type: object type: object diff --git a/helm/crds/sagemaker.services.k8s.aws_userprofiles.yaml b/helm/crds/sagemaker.services.k8s.aws_userprofiles.yaml index 17c7fd47..b65f7b36 100644 --- a/helm/crds/sagemaker.services.k8s.aws_userprofiles.yaml +++ b/helm/crds/sagemaker.services.k8s.aws_userprofiles.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: userprofiles.sagemaker.services.k8s.aws spec: group: sagemaker.services.k8s.aws @@ -25,14 +24,19 @@ spec: description: UserProfile is the Schema for the UserProfiles API properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -43,36 +47,45 @@ spec: description: The ID of the associated Domain. type: string singleSignOnUserIdentifier: - description: A specifier for the type of value specified in SingleSignOnUserValue. - Currently, the only supported value is "UserName". If the Domain's - AuthMode is IAM Identity Center, this field is required. If the - Domain's AuthMode is not IAM Identity Center, this field cannot - be specified. + description: |- + A specifier for the type of value specified in SingleSignOnUserValue. Currently, + the only supported value is "UserName". If the Domain's AuthMode is IAM Identity + Center, this field is required. If the Domain's AuthMode is not IAM Identity + Center, this field cannot be specified. type: string singleSignOnUserValue: - description: The username of the associated Amazon Web Services Single - Sign-On User for this UserProfile. If the Domain's AuthMode is IAM - Identity Center, this field is required, and must match a valid - username of a user in your directory. If the Domain's AuthMode is - not IAM Identity Center, this field cannot be specified. + description: |- + The username of the associated Amazon Web Services Single Sign-On User for + this UserProfile. If the Domain's AuthMode is IAM Identity Center, this field + is required, and must match a valid username of a user in your directory. + If the Domain's AuthMode is not IAM Identity Center, this field cannot be + specified. type: string tags: - description: "Each tag consists of a key and an optional value. Tag - keys must be unique per resource. \n Tags that you specify for the - User Profile are also added to all Apps that the User Profile launches." + description: |- + Each tag consists of a key and an optional value. Tag keys must be unique + per resource. + + + Tags that you specify for the User Profile are also added to all Apps that + the User Profile launches. items: - description: "A tag object that consists of a key and an optional - value, used to manage metadata for SageMaker Amazon Web Services - resources. \n You can add tags to notebook instances, training - jobs, hyperparameter tuning jobs, batch transform jobs, models, - labeling jobs, work teams, endpoint configurations, and endpoints. - For more information on adding tags to SageMaker resources, see - AddTags. \n For more information on adding metadata to your Amazon - Web Services resources with tagging, see Tagging Amazon Web Services - resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). - For advice on best practices for managing Amazon Web Services - resources with tagging, see Tagging Best Practices: Implement - an Effective Amazon Web Services Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf)." + description: |- + A tag object that consists of a key and an optional value, used to manage + metadata for SageMaker Amazon Web Services resources. + + + You can add tags to notebook instances, training jobs, hyperparameter tuning + jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, + and endpoints. For more information on adding tags to SageMaker resources, + see AddTags. + + + For more information on adding metadata to your Amazon Web Services resources + with tagging, see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). + For advice on best practices for managing Amazon Web Services resources with + tagging, see Tagging Best Practices: Implement an Effective Amazon Web Services + Resource Tagging Strategy (https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf). properties: key: type: string @@ -92,9 +105,9 @@ spec: description: The JupyterServer app settings. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -115,8 +128,9 @@ spec: properties: customImages: items: - description: A custom SageMaker image. For more information, - see Bring your own SageMaker image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). + description: |- + A custom SageMaker image. For more information, see Bring your own SageMaker + image (https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html). properties: appImageConfigName: type: string @@ -128,9 +142,9 @@ spec: type: object type: array defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -147,10 +161,10 @@ spec: type: array type: object rStudioServerProAppSettings: - description: A collection of settings that configure user interaction - with the RStudioServerPro app. RStudioServerProAppSettings cannot - be updated. The RStudioServerPro app must be deleted and a new - one created to make any changes. + description: |- + A collection of settings that configure user interaction with the RStudioServerPro + app. RStudioServerProAppSettings cannot be updated. The RStudioServerPro + app must be deleted and a new one created to make any changes. properties: accessStatus: type: string @@ -162,11 +176,11 @@ spec: type: string type: array sharingSettings: - description: Specifies options for sharing SageMaker Studio notebooks. - These settings are specified as part of DefaultUserSettings - when the CreateDomain API is called, and as part of UserSettings - when the CreateUserProfile API is called. When SharingSettings - is not specified, notebook sharing isn't allowed. + description: |- + Specifies options for sharing SageMaker Studio notebooks. These settings + are specified as part of DefaultUserSettings when the CreateDomain API is + called, and as part of UserSettings when the CreateUserProfile API is called. + When SharingSettings is not specified, notebook sharing isn't allowed. properties: notebookOutputOption: type: string @@ -179,9 +193,9 @@ spec: description: The TensorBoard app settings. properties: defaultResourceSpec: - description: Specifies the ARN's of a SageMaker image and - SageMaker image version, and the instance type that the - version runs on. + description: |- + Specifies the ARN's of a SageMaker image and SageMaker image version, and + the instance type that the version runs on. properties: instanceType: type: string @@ -202,24 +216,26 @@ spec: description: UserProfileStatus defines the observed state of UserProfile properties: ackResourceMetadata: - description: All CRs managed by ACK have a common `Status.ACKResourceMetadata` - member that is used to contain resource sync state, account ownership, + description: |- + All CRs managed by ACK have a common `Status.ACKResourceMetadata` member + that is used to contain resource sync state, account ownership, constructed ARN for the resource properties: arn: - description: 'ARN is the Amazon Resource Name for the resource. - This is a globally-unique identifier and is set only by the - ACK service controller once the controller has orchestrated - the creation of the resource OR when it has verified that an - "adopted" resource (a resource where the ARN annotation was - set by the Kubernetes user on the CR) exists and matches the - supplied CR''s Spec field values. TODO(vijat@): Find a better - strategy for resources that do not have ARN in CreateOutputResponse - https://github.com/aws/aws-controllers-k8s/issues/270' + description: |- + ARN is the Amazon Resource Name for the resource. This is a + globally-unique identifier and is set only by the ACK service controller + once the controller has orchestrated the creation of the resource OR + when it has verified that an "adopted" resource (a resource where the + ARN annotation was set by the Kubernetes user on the CR) exists and + matches the supplied CR's Spec field values. + TODO(vijat@): Find a better strategy for resources that do not have ARN in CreateOutputResponse + https://github.com/aws/aws-controllers-k8s/issues/270 type: string ownerAccountID: - description: OwnerAccountID is the AWS Account ID of the account - that owns the backend AWS service API resource. + description: |- + OwnerAccountID is the AWS Account ID of the account that owns the + backend AWS service API resource. type: string region: description: Region is the AWS region in which the resource exists @@ -230,14 +246,16 @@ spec: - region type: object conditions: - description: All CRS managed by ACK have a common `Status.Conditions` - member that contains a collection of `ackv1alpha1.Condition` objects - that describe the various terminal states of the CR and its backend - AWS service API resource + description: |- + All CRS managed by ACK have a common `Status.Conditions` member that + contains a collection of `ackv1alpha1.Condition` objects that describe + the various terminal states of the CR and its backend AWS service API + resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/services.k8s.aws_adoptedresources.yaml b/helm/crds/services.k8s.aws_adoptedresources.yaml index 9a12ef7e..65eff735 100644 --- a/helm/crds/services.k8s.aws_adoptedresources.yaml +++ b/helm/crds/services.k8s.aws_adoptedresources.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: adoptedresources.services.k8s.aws spec: group: services.k8s.aws @@ -21,14 +20,19 @@ spec: description: AdoptedResource is the schema for the AdoptedResource API. properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -42,129 +46,149 @@ spec: additionalKeys: additionalProperties: type: string - description: AdditionalKeys represents any additional arbitrary - identifiers used when describing the target resource. + description: |- + AdditionalKeys represents any additional arbitrary identifiers used when + describing the target resource. type: object arn: - description: ARN is the AWS Resource Name for the resource. It - is a globally unique identifier. + description: |- + ARN is the AWS Resource Name for the resource. It is a globally + unique identifier. type: string nameOrID: - description: NameOrId is a user-supplied string identifier for - the resource. It may or may not be globally unique, depending - on the type of resource. + description: |- + NameOrId is a user-supplied string identifier for the resource. It may + or may not be globally unique, depending on the type of resource. type: string type: object kubernetes: - description: ResourceWithMetadata provides the values necessary to - create a Kubernetes resource and override any of its metadata values. + description: |- + ResourceWithMetadata provides the values necessary to create a + Kubernetes resource and override any of its metadata values. properties: group: type: string kind: type: string metadata: - description: "ObjectMeta is metadata that all persisted resources - must have, which includes all objects users must create. It - is not possible to use `metav1.ObjectMeta` inside spec, as the - controller-gen automatically converts this to an arbitrary string-string - map. https://github.com/kubernetes-sigs/controller-tools/issues/385 - \n Active discussion about inclusion of this field in the spec - is happening in this PR: https://github.com/kubernetes-sigs/controller-tools/pull/395 - \n Until this is allowed, or if it never is, we will produce - a subset of the object meta that contains only the fields which - the user is allowed to modify in the metadata." + description: |- + ObjectMeta is metadata that all persisted resources must have, which includes all objects + users must create. + It is not possible to use `metav1.ObjectMeta` inside spec, as the controller-gen + automatically converts this to an arbitrary string-string map. + https://github.com/kubernetes-sigs/controller-tools/issues/385 + + + Active discussion about inclusion of this field in the spec is happening in this PR: + https://github.com/kubernetes-sigs/controller-tools/pull/395 + + + Until this is allowed, or if it never is, we will produce a subset of the object meta + that contains only the fields which the user is allowed to modify in the metadata. properties: annotations: additionalProperties: type: string - description: 'Annotations is an unstructured key value map - stored with a resource that may be set by external tools - to store and retrieve arbitrary metadata. They are not queryable - and should be preserved when modifying objects. More info: - http://kubernetes.io/docs/user-guide/annotations' + description: |- + Annotations is an unstructured key value map stored with a resource that may be + set by external tools to store and retrieve arbitrary metadata. They are not + queryable and should be preserved when modifying objects. + More info: http://kubernetes.io/docs/user-guide/annotations type: object generateName: - description: "GenerateName is an optional prefix, used by - the server, to generate a unique name ONLY IF the Name field - has not been provided. If this field is used, the name returned - to the client will be different than the name passed. This - value will also be combined with a unique suffix. The provided - value has the same validation rules as the Name field, and - may be truncated by the length of the suffix required to - make the value unique on the server. \n If this field is - specified and the generated name exists, the server will - NOT return a 409 - instead, it will either return 201 Created - or 500 with Reason ServerTimeout indicating a unique name - could not be found in the time allotted, and the client - should retry (optionally after the time indicated in the - Retry-After header). \n Applied only if Name is not specified. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency" + description: |- + GenerateName is an optional prefix, used by the server, to generate a unique + name ONLY IF the Name field has not been provided. + If this field is used, the name returned to the client will be different + than the name passed. This value will also be combined with a unique suffix. + The provided value has the same validation rules as the Name field, + and may be truncated by the length of the suffix required to make the value + unique on the server. + + + If this field is specified and the generated name exists, the server will + NOT return a 409 - instead, it will either return 201 Created or 500 with Reason + ServerTimeout indicating a unique name could not be found in the time allotted, and the client + should retry (optionally after the time indicated in the Retry-After header). + + + Applied only if Name is not specified. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency type: string labels: additionalProperties: type: string - description: 'Map of string keys and values that can be used - to organize and categorize (scope and select) objects. May - match selectors of replication controllers and services. - More info: http://kubernetes.io/docs/user-guide/labels' + description: |- + Map of string keys and values that can be used to organize and categorize + (scope and select) objects. May match selectors of replication controllers + and services. + More info: http://kubernetes.io/docs/user-guide/labels type: object name: - description: 'Name must be unique within a namespace. Is required - when creating resources, although some resources may allow - a client to request the generation of an appropriate name - automatically. Name is primarily intended for creation idempotence - and configuration definition. Cannot be updated. More info: - http://kubernetes.io/docs/user-guide/identifiers#names' + description: |- + Name must be unique within a namespace. Is required when creating resources, although + some resources may allow a client to request the generation of an appropriate name + automatically. Name is primarily intended for creation idempotence and configuration + definition. + Cannot be updated. + More info: http://kubernetes.io/docs/user-guide/identifiers#names type: string namespace: - description: "Namespace defines the space within each name - must be unique. An empty namespace is equivalent to the - \"default\" namespace, but \"default\" is the canonical - representation. Not all objects are required to be scoped - to a namespace - the value of this field for those objects - will be empty. \n Must be a DNS_LABEL. Cannot be updated. - More info: http://kubernetes.io/docs/user-guide/namespaces" + description: |- + Namespace defines the space within each name must be unique. An empty namespace is + equivalent to the "default" namespace, but "default" is the canonical representation. + Not all objects are required to be scoped to a namespace - the value of this field for + those objects will be empty. + + + Must be a DNS_LABEL. + Cannot be updated. + More info: http://kubernetes.io/docs/user-guide/namespaces type: string ownerReferences: - description: List of objects depended by this object. If ALL - objects in the list have been deleted, this object will - be garbage collected. If this object is managed by a controller, - then an entry in this list will point to this controller, - with the controller field set to true. There cannot be more - than one managing controller. + description: |- + List of objects depended by this object. If ALL objects in the list have + been deleted, this object will be garbage collected. If this object is managed by a controller, + then an entry in this list will point to this controller, with the controller field set to true. + There cannot be more than one managing controller. items: - description: OwnerReference contains enough information - to let you identify an owning object. An owning object - must be in the same namespace as the dependent, or be - cluster-scoped, so there is no namespace field. + description: |- + OwnerReference contains enough information to let you identify an owning + object. An owning object must be in the same namespace as the dependent, or + be cluster-scoped, so there is no namespace field. properties: apiVersion: description: API version of the referent. type: string blockOwnerDeletion: - description: If true, AND if the owner has the "foregroundDeletion" - finalizer, then the owner cannot be deleted from the - key-value store until this reference is removed. See - https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion - for how the garbage collector interacts with this - field and enforces the foreground deletion. Defaults - to false. To set this field, a user needs "delete" - permission of the owner, otherwise 422 (Unprocessable - Entity) will be returned. + description: |- + If true, AND if the owner has the "foregroundDeletion" finalizer, then + the owner cannot be deleted from the key-value store until this + reference is removed. + See https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion + for how the garbage collector interacts with this field and enforces the foreground deletion. + Defaults to false. + To set this field, a user needs "delete" permission of the owner, + otherwise 422 (Unprocessable Entity) will be returned. type: boolean controller: description: If true, this reference points to the managing controller. type: boolean kind: - description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind of the referent. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string name: - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names' + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names type: string uid: - description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids' + description: |- + UID of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids type: string required: - apiVersion @@ -188,13 +212,14 @@ spec: AdoptedResource. properties: conditions: - description: A collection of `ackv1alpha1.Condition` objects that - describe the various terminal states of the adopted resource CR - and its target custom resource + description: |- + A collection of `ackv1alpha1.Condition` objects that describe the various + terminal states of the adopted resource CR and its target custom resource items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/crds/services.k8s.aws_fieldexports.yaml b/helm/crds/services.k8s.aws_fieldexports.yaml index 4a7ab61b..4d3a8f1d 100644 --- a/helm/crds/services.k8s.aws_fieldexports.yaml +++ b/helm/crds/services.k8s.aws_fieldexports.yaml @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.9.2 - creationTimestamp: null + controller-gen.kubebuilder.io/version: v0.14.0 name: fieldexports.services.k8s.aws spec: group: services.k8s.aws @@ -21,14 +20,19 @@ spec: description: FieldExport is the schema for the FieldExport API. properties: apiVersion: - description: 'APIVersion defines the versioned schema of this representation - of an object. Servers should convert recognized schemas to the latest - internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources type: string kind: - description: 'Kind is a string value representing the REST resource this - object represents. Servers may infer this from the endpoint the client - submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds type: string metadata: type: object @@ -36,15 +40,17 @@ spec: description: FieldExportSpec defines the desired state of the FieldExport. properties: from: - description: ResourceFieldSelector provides the values necessary to - identify an individual field on an individual K8s resource. + description: |- + ResourceFieldSelector provides the values necessary to identify an individual + field on an individual K8s resource. properties: path: type: string resource: - description: NamespacedResource provides all the values necessary - to identify an ACK resource of a given type (within the same - namespace as the custom resource containing this type). + description: |- + NamespacedResource provides all the values necessary to identify an ACK + resource of a given type (within the same namespace as the custom resource + containing this type). properties: group: type: string @@ -62,16 +68,18 @@ spec: - resource type: object to: - description: FieldExportTarget provides the values necessary to identify - the output path for a field export. + description: |- + FieldExportTarget provides the values necessary to identify the + output path for a field export. properties: key: description: Key overrides the default value (`.`) for the FieldExport target type: string kind: - description: FieldExportOutputType represents all types that can - be produced by a field export operation + description: |- + FieldExportOutputType represents all types that can be produced by a field + export operation enum: - configmap - secret @@ -94,12 +102,14 @@ spec: description: FieldExportStatus defines the observed status of the FieldExport. properties: conditions: - description: A collection of `ackv1alpha1.Condition` objects that - describe the various recoverable states of the field CR + description: |- + A collection of `ackv1alpha1.Condition` objects that describe the various + recoverable states of the field CR items: - description: Condition is the common struct used by all CRDs managed - by ACK service controllers to indicate terminal states of the - CR and its backend AWS service API resource + description: |- + Condition is the common struct used by all CRDs managed by ACK service + controllers to indicate terminal states of the CR and its backend AWS + service API resource properties: lastTransitionTime: description: Last time the condition transitioned from one status diff --git a/helm/templates/NOTES.txt b/helm/templates/NOTES.txt index f5fec1de..36dfcaa1 100644 --- a/helm/templates/NOTES.txt +++ b/helm/templates/NOTES.txt @@ -1,5 +1,5 @@ {{ .Chart.Name }} has been installed. -This chart deploys "public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.2.6". +This chart deploys "public.ecr.aws/aws-controllers-k8s/sagemaker-controller:1.2.7". Check its status by running: kubectl --namespace {{ .Release.Namespace }} get pods -l "app.kubernetes.io/instance={{ .Release.Name }}" diff --git a/helm/templates/_helpers.tpl b/helm/templates/_helpers.tpl index 1b3eeef8..b5ec6df7 100644 --- a/helm/templates/_helpers.tpl +++ b/helm/templates/_helpers.tpl @@ -1,5 +1,5 @@ {{/* The name of the application this chart installs */}} -{{- define "app.name" -}} +{{- define "ack-sagemaker-controller.app.name" -}} {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} {{- end -}} @@ -8,7 +8,7 @@ Create a default fully qualified app name. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). If release name contains chart name it will be used as a full name. */}} -{{- define "app.fullname" -}} +{{- define "ack-sagemaker-controller.app.fullname" -}} {{- if .Values.fullnameOverride -}} {{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} {{- else -}} @@ -22,33 +22,33 @@ If release name contains chart name it will be used as a full name. {{- end -}} {{/* The name and version as used by the chart label */}} -{{- define "chart.name-version" -}} +{{- define "ack-sagemaker-controller.chart.name-version" -}} {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} {{- end -}} {{/* The name of the service account to use */}} -{{- define "service-account.name" -}} +{{- define "ack-sagemaker-controller.service-account.name" -}} {{ default "default" .Values.serviceAccount.name }} {{- end -}} -{{- define "watch-namespace" -}} +{{- define "ack-sagemaker-controller.watch-namespace" -}} {{- if eq .Values.installScope "namespace" -}} {{ .Values.watchNamespace | default .Release.Namespace }} {{- end -}} {{- end -}} {{/* The mount path for the shared credentials file */}} -{{- define "aws.credentials.secret_mount_path" -}} +{{- define "ack-sagemaker-controller.aws.credentials.secret_mount_path" -}} {{- "/var/run/secrets/aws" -}} {{- end -}} {{/* The path the shared credentials file is mounted */}} -{{- define "aws.credentials.path" -}} +{{- define "ack-sagemaker-controller.aws.credentials.path" -}} {{- printf "%s/%s" (include "aws.credentials.secret_mount_path" .) .Values.aws.credentials.secretKey -}} {{- end -}} {{/* The rules a of ClusterRole or Role */}} -{{- define "controller-role-rules" }} +{{- define "ack-sagemaker-controller.rbac-rules" -}} rules: - apiGroups: - "" diff --git a/helm/templates/cluster-role-binding.yaml b/helm/templates/cluster-role-binding.yaml index 8ea959b2..eb8efce9 100644 --- a/helm/templates/cluster-role-binding.yaml +++ b/helm/templates/cluster-role-binding.yaml @@ -2,20 +2,21 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: - name: {{ include "app.fullname" . }} + name: {{ include "ack-sagemaker-controller.app.fullname" . }} roleRef: kind: ClusterRole apiGroup: rbac.authorization.k8s.io name: ack-sagemaker-controller subjects: - kind: ServiceAccount - name: {{ include "service-account.name" . }} + name: {{ include "ack-sagemaker-controller.service-account.name" . }} namespace: {{ .Release.Namespace }} -{{ else if .Values.watchNamespace }} -{{ $namespaces := split "," .Values.watchNamespace }} -{{ $fullname := include "app.fullname" . }} +{{ else if eq .Values.installScope "namespace" }} +{{ $wn := include "ack-sagemaker-controller.watch-namespace" . }} +{{ $namespaces := split "," $wn }} +{{ $fullname := include "ack-sagemaker-controller.app.fullname" . }} {{ $releaseNamespace := .Release.Namespace }} -{{ $serviceAccountName := include "service-account.name" . }} +{{ $serviceAccountName := include "ack-sagemaker-controller.service-account.name" . }} {{ range $namespaces }} --- apiVersion: rbac.authorization.k8s.io/v1 diff --git a/helm/templates/cluster-role-controller.yaml b/helm/templates/cluster-role-controller.yaml index b0ec4ea1..a61fb56f 100644 --- a/helm/templates/cluster-role-controller.yaml +++ b/helm/templates/cluster-role-controller.yaml @@ -1,5 +1,5 @@ {{ $labels := .Values.role.labels }} -{{ $rules := include "controller-role-rules" . }} +{{ $rbacRules := include "ack-sagemaker-controller.rbac-rules" . }} {{ if eq .Values.installScope "cluster" }} apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole @@ -9,9 +9,10 @@ metadata: {{- range $key, $value := $labels }} {{ $key }}: {{ $value | quote }} {{- end }} -{{- $rules }} -{{ else if .Values.watchNamespace }} -{{ $namespaces := split "," .Values.watchNamespace }} +{{$rbacRules }} +{{ else if eq .Values.installScope "namespace" }} +{{ $wn := include "ack-sagemaker-controller.watch-namespace" . }} +{{ $namespaces := split "," $wn }} {{ range $namespaces }} --- apiVersion: rbac.authorization.k8s.io/v1 @@ -23,6 +24,6 @@ metadata: {{- range $key, $value := $labels }} {{ $key }}: {{ $value | quote }} {{- end }} -{{- $rules }} +{{ $rbacRules }} {{ end }} {{ end }} \ No newline at end of file diff --git a/helm/templates/deployment.yaml b/helm/templates/deployment.yaml index cea38ec9..3598fdc3 100644 --- a/helm/templates/deployment.yaml +++ b/helm/templates/deployment.yaml @@ -1,20 +1,20 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: {{ include "app.fullname" . }} + name: {{ include "ack-sagemaker-controller.app.fullname" . }} namespace: {{ .Release.Namespace }} labels: - app.kubernetes.io/name: {{ include "app.name" . }} + app.kubernetes.io/name: {{ include "ack-sagemaker-controller.app.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/managed-by: Helm app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} - k8s-app: {{ include "app.name" . }} - helm.sh/chart: {{ include "chart.name-version" . }} + k8s-app: {{ include "ack-sagemaker-controller.app.name" . }} + helm.sh/chart: {{ include "ack-sagemaker-controller.chart.name-version" . }} spec: replicas: {{ .Values.deployment.replicas }} selector: matchLabels: - app.kubernetes.io/name: {{ include "app.name" . }} + app.kubernetes.io/name: {{ include "ack-sagemaker-controller.app.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} template: metadata: @@ -25,15 +25,15 @@ spec: {{- end }} {{- end }} labels: - app.kubernetes.io/name: {{ include "app.name" . }} + app.kubernetes.io/name: {{ include "ack-sagemaker-controller.app.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/managed-by: Helm - k8s-app: {{ include "app.name" . }} + k8s-app: {{ include "ack-sagemaker-controller.app.name" . }} {{- range $key, $value := .Values.deployment.labels }} {{ $key }}: {{ $value | quote }} {{- end }} spec: - serviceAccountName: {{ include "service-account.name" . }} + serviceAccountName: {{ include "ack-sagemaker-controller.service-account.name" . }} {{- if .Values.image.pullSecrets }} imagePullSecrets: {{- range .Values.image.pullSecrets }} @@ -90,7 +90,7 @@ spec: - name: AWS_ENDPOINT_URL value: {{ .Values.aws.endpoint_url | quote }} - name: ACK_WATCH_NAMESPACE - value: {{ include "watch-namespace" . }} + value: {{ include "ack-sagemaker-controller.watch-namespace" . }} - name: DELETION_POLICY value: {{ .Values.deletionPolicy }} - name: LEADER_ELECTION_NAMESPACE @@ -109,7 +109,7 @@ spec: {{- end }} {{- if .Values.aws.credentials.secretName }} - name: AWS_SHARED_CREDENTIALS_FILE - value: {{ include "aws.credentials.path" . }} + value: {{ include "ack-sagemaker-controller.aws.credentials.path" . }} - name: AWS_PROFILE value: {{ .Values.aws.credentials.profile }} {{- end }} @@ -119,7 +119,7 @@ spec: volumeMounts: {{- if .Values.aws.credentials.secretName }} - name: {{ .Values.aws.credentials.secretName }} - mountPath: {{ include "aws.credentials.secret_mount_path" . }} + mountPath: {{ include "ack-sagemaker-controller.aws.credentials.secret_mount_path" . }} readOnly: true {{- end }} {{- if .Values.deployment.extraVolumeMounts -}} diff --git a/helm/templates/leader-election-role-binding.yaml b/helm/templates/leader-election-role-binding.yaml index 94a3846c..e4aa4668 100644 --- a/helm/templates/leader-election-role-binding.yaml +++ b/helm/templates/leader-election-role-binding.yaml @@ -14,5 +14,5 @@ roleRef: name: sagemaker-leader-election-role subjects: - kind: ServiceAccount - name: {{ include "service-account.name" . }} + name: {{ include "ack-sagemaker-controller.service-account.name" . }} namespace: {{ .Release.Namespace }}{{- end }} diff --git a/helm/templates/metrics-service.yaml b/helm/templates/metrics-service.yaml index 638858a3..37241b08 100644 --- a/helm/templates/metrics-service.yaml +++ b/helm/templates/metrics-service.yaml @@ -5,18 +5,18 @@ metadata: name: {{ .Chart.Name | trimSuffix "-chart" | trunc 44 }}-controller-metrics namespace: {{ .Release.Namespace }} labels: - app.kubernetes.io/name: {{ include "app.name" . }} + app.kubernetes.io/name: {{ include "ack-sagemaker-controller.app.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/managed-by: Helm app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} - k8s-app: {{ include "app.name" . }} - helm.sh/chart: {{ include "chart.name-version" . }} + k8s-app: {{ include "ack-sagemaker-controller.app.name" . }} + helm.sh/chart: {{ include "ack-sagemaker-controller.chart.name-version" . }} spec: selector: - app.kubernetes.io/name: {{ include "app.name" . }} + app.kubernetes.io/name: {{ include "ack-sagemaker-controller.app.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/managed-by: Helm - k8s-app: {{ include "app.name" . }} + k8s-app: {{ include "ack-sagemaker-controller.app.name" . }} {{- range $key, $value := .Values.deployment.labels }} {{ $key }}: {{ $value | quote }} {{- end }} diff --git a/helm/templates/service-account.yaml b/helm/templates/service-account.yaml index 73306395..6461259d 100644 --- a/helm/templates/service-account.yaml +++ b/helm/templates/service-account.yaml @@ -3,13 +3,13 @@ apiVersion: v1 kind: ServiceAccount metadata: labels: - app.kubernetes.io/name: {{ include "app.name" . }} + app.kubernetes.io/name: {{ include "ack-sagemaker-controller.app.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/managed-by: Helm app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} - k8s-app: {{ include "app.name" . }} - helm.sh/chart: {{ include "chart.name-version" . }} - name: {{ include "service-account.name" . }} + k8s-app: {{ include "ack-sagemaker-controller.app.name" . }} + helm.sh/chart: {{ include "ack-sagemaker-controller.chart.name-version" . }} + name: {{ include "ack-sagemaker-controller.service-account.name" . }} namespace: {{ .Release.Namespace }} annotations: {{- range $key, $value := .Values.serviceAccount.annotations }} diff --git a/helm/values.yaml b/helm/values.yaml index 78750f48..90d0b12a 100644 --- a/helm/values.yaml +++ b/helm/values.yaml @@ -4,7 +4,7 @@ image: repository: public.ecr.aws/aws-controllers-k8s/sagemaker-controller - tag: 1.2.6 + tag: 1.2.7 pullPolicy: IfNotPresent pullSecrets: []