mirror of
https://github.com/yannh/kubeconform.git
synced 2026-02-13 06:59:22 +00:00
555 lines
17 KiB
JSON
555 lines
17 KiB
JSON
{
|
|
"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",
|
|
"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",
|
|
"type": "string"
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"spec": {
|
|
"description": "TrainingJobSpec defines the desired state of TrainingJob",
|
|
"properties": {
|
|
"algorithmSpecification": {
|
|
"properties": {
|
|
"algorithmName": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"metricDefinitions": {
|
|
"items": {
|
|
"properties": {
|
|
"name": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"regex": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"regex"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"trainingImage": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"trainingInputMode": {
|
|
"enum": [
|
|
"File",
|
|
"Pipe"
|
|
],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"trainingInputMode"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"checkpointConfig": {
|
|
"properties": {
|
|
"localPath": {
|
|
"type": "string"
|
|
},
|
|
"s3Uri": {
|
|
"pattern": "^(https|s3)://([^/]+)/?(.*)$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"s3Uri"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"debugHookConfig": {
|
|
"description": "DebugHookConfig https://docs.aws.amazon.com/sagemaker/latest/dg/API_DebugHookConfig.html",
|
|
"properties": {
|
|
"collectionConfigurations": {
|
|
"items": {
|
|
"description": "CollectionConfiguration https://docs.aws.amazon.com/sagemaker/latest/dg/API_CollectionConfiguration.html",
|
|
"properties": {
|
|
"collectionName": {
|
|
"type": "string"
|
|
},
|
|
"collectionParameters": {
|
|
"items": {
|
|
"description": "Used in describing maps in Kubernetes.",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"localPath": {
|
|
"type": "string"
|
|
},
|
|
"ruleParameters": {
|
|
"items": {
|
|
"description": "Used in describing maps in Kubernetes.",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"s3OutputPath": {
|
|
"pattern": "^(https|s3)://([^/]+)/?(.*)$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"s3OutputPath"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"debugRuleConfigurations": {
|
|
"items": {
|
|
"description": "DebugRuleConfiguration https://docs.aws.amazon.com/sagemaker/latest/dg/API_DebugRuleConfiguration.html",
|
|
"properties": {
|
|
"instanceType": {
|
|
"type": "string"
|
|
},
|
|
"localPath": {
|
|
"type": "string"
|
|
},
|
|
"ruleConfigurationName": {
|
|
"type": "string"
|
|
},
|
|
"ruleEvaluatorImage": {
|
|
"type": "string"
|
|
},
|
|
"ruleParameters": {
|
|
"items": {
|
|
"description": "Used in describing maps in Kubernetes.",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"s3OutputPath": {
|
|
"pattern": "^(https|s3)://([^/]+)/?(.*)$",
|
|
"type": "string"
|
|
},
|
|
"volumeSizeInGB": {
|
|
"format": "int64",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"ruleConfigurationName",
|
|
"ruleEvaluatorImage"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"enableInterContainerTrafficEncryption": {
|
|
"type": "boolean"
|
|
},
|
|
"enableManagedSpotTraining": {
|
|
"type": "boolean"
|
|
},
|
|
"enableNetworkIsolation": {
|
|
"type": "boolean"
|
|
},
|
|
"hyperParameters": {
|
|
"items": {
|
|
"description": "Used in describing maps in Kubernetes.",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"inputDataConfig": {
|
|
"items": {
|
|
"properties": {
|
|
"channelName": {
|
|
"minLength": 1,
|
|
"pattern": "[A-Za-z0-9\\.\\-_]+",
|
|
"type": "string"
|
|
},
|
|
"compressionType": {
|
|
"enum": [
|
|
"None",
|
|
"Gzip"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"contentType": {
|
|
"type": "string"
|
|
},
|
|
"dataSource": {
|
|
"properties": {
|
|
"fileSystemDataSource": {
|
|
"properties": {
|
|
"directoryPath": {
|
|
"type": "string"
|
|
},
|
|
"fileSystemAccessMode": {
|
|
"type": "string"
|
|
},
|
|
"fileSystemId": {
|
|
"type": "string"
|
|
},
|
|
"fileSystemType": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"directoryPath",
|
|
"fileSystemAccessMode",
|
|
"fileSystemId",
|
|
"fileSystemType"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"s3DataSource": {
|
|
"properties": {
|
|
"attributeNames": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"s3DataDistributionType": {
|
|
"enum": [
|
|
"FullyReplicated",
|
|
"ShardedByS3Key"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"s3DataType": {
|
|
"enum": [
|
|
"S3Prefix",
|
|
"ManifestFile",
|
|
"AugmentedManifestFile"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"s3Uri": {
|
|
"pattern": "^(https|s3)://([^/]+)/?(.*)$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"s3DataType",
|
|
"s3Uri"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"inputMode": {
|
|
"enum": [
|
|
"Pipe",
|
|
"File"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"recordWrapperType": {
|
|
"type": "string"
|
|
},
|
|
"shuffleConfig": {
|
|
"properties": {
|
|
"seed": {
|
|
"format": "int64",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"seed"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"channelName",
|
|
"dataSource"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"minItems": 1,
|
|
"type": "array"
|
|
},
|
|
"outputDataConfig": {
|
|
"properties": {
|
|
"kmsKeyId": {
|
|
"type": "string"
|
|
},
|
|
"s3OutputPath": {
|
|
"pattern": "^(https|s3)://([^/]+)/?(.*)$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"s3OutputPath"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"region": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"resourceConfig": {
|
|
"properties": {
|
|
"instanceCount": {
|
|
"format": "int64",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"instanceType": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"volumeKmsKeyId": {
|
|
"type": "string"
|
|
},
|
|
"volumeSizeInGB": {
|
|
"format": "int64",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"instanceCount",
|
|
"instanceType",
|
|
"volumeSizeInGB"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"roleArn": {
|
|
"minLength": 20,
|
|
"type": "string"
|
|
},
|
|
"sageMakerEndpoint": {
|
|
"description": "A custom SageMaker endpoint to use when communicating with SageMaker.",
|
|
"pattern": "^(https|http)://.*$",
|
|
"type": "string"
|
|
},
|
|
"stoppingCondition": {
|
|
"properties": {
|
|
"maxRuntimeInSeconds": {
|
|
"format": "int64",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"maxWaitTimeInSeconds": {
|
|
"format": "int64",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"tags": {
|
|
"items": {
|
|
"properties": {
|
|
"key": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"value"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"tensorBoardOutputConfig": {
|
|
"description": "TensorBoardOutputConfig https://docs.aws.amazon.com/sagemaker/latest/dg/API_TensorBoardOutputConfig.html",
|
|
"properties": {
|
|
"localPath": {
|
|
"type": "string"
|
|
},
|
|
"s3OutputPath": {
|
|
"pattern": "^(https|s3)://([^/]+)/?(.*)$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"s3OutputPath"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"trainingJobName": {
|
|
"description": "The SageMaker training job name. This is optional for the SageMaker K8s operator. If it is empty, the operator will populate it with a generated name.",
|
|
"maxLength": 63,
|
|
"type": "string"
|
|
},
|
|
"vpcConfig": {
|
|
"properties": {
|
|
"securityGroupIds": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"maxItems": 5,
|
|
"minItems": 1,
|
|
"type": "array"
|
|
},
|
|
"subnets": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"maxItems": 16,
|
|
"minItems": 1,
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"securityGroupIds",
|
|
"subnets"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"algorithmSpecification",
|
|
"outputDataConfig",
|
|
"region",
|
|
"resourceConfig",
|
|
"roleArn",
|
|
"stoppingCondition"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"status": {
|
|
"description": "TrainingJobStatus defines the observed state of TrainingJob",
|
|
"properties": {
|
|
"additional": {
|
|
"description": "Field to store additional information, for example if we are unable to check the status we update this.",
|
|
"type": "string"
|
|
},
|
|
"cloudWatchLogUrl": {
|
|
"description": "Cloud Watch url for training log",
|
|
"type": "string"
|
|
},
|
|
"debugRuleEvaluationStatuses": {
|
|
"description": "Status of rule evaluation jobs, obtained from DebugRuleEvaluationStatuses. https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeTrainingJob.html#sagemaker-DescribeTrainingJob-response-DebugRuleEvaluationStatuses",
|
|
"items": {
|
|
"description": "DebugRuleEvaluationStatus https://docs.aws.amazon.com/sagemaker/latest/dg/API_DebugRuleEvaluationStatus.html",
|
|
"properties": {
|
|
"lastModifiedTime": {
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
"ruleConfigurationName": {
|
|
"type": "string"
|
|
},
|
|
"ruleEvaluationJobArn": {
|
|
"type": "string"
|
|
},
|
|
"ruleEvaluationStatus": {
|
|
"type": "string"
|
|
},
|
|
"statusDetail": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"lastCheckTime": {
|
|
"description": "The last time that we checked the status of the SageMaker job.",
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
"modelPath": {
|
|
"description": "Full path to the training artifact (model)",
|
|
"type": "string"
|
|
},
|
|
"sageMakerTrainingJobName": {
|
|
"description": "SageMaker training job name",
|
|
"type": "string"
|
|
},
|
|
"secondaryStatus": {
|
|
"description": "The secondary, more granular status of the training job. https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeTrainingJob.html#SageMaker-DescribeTrainingJob-response-SecondaryStatus",
|
|
"type": "string"
|
|
},
|
|
"trainingJobStatus": {
|
|
"description": "The status of the training job. https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeTrainingJob.html#SageMaker-DescribeTrainingJob-response-TrainingJobStatus",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"spec"
|
|
],
|
|
"type": "object"
|
|
}
|