diff --git a/clients/client-sagemaker/src/commands/CreateDomainCommand.ts b/clients/client-sagemaker/src/commands/CreateDomainCommand.ts index 0ee66676bd90..85bb30a83c98 100644 --- a/clients/client-sagemaker/src/commands/CreateDomainCommand.ts +++ b/clients/client-sagemaker/src/commands/CreateDomainCommand.ts @@ -222,6 +222,14 @@ export interface CreateDomainCommandOutput extends CreateDomainResponse, __Metad * RepositoryUrl: "STRING_VALUE", // required * }, * ], + * EmrSettings: { // EmrSettings + * AssumableRoleArns: [ // AssumableRoleArns + * "STRING_VALUE", + * ], + * ExecutionRoleArns: [ // ExecutionRoleArns + * "STRING_VALUE", + * ], + * }, * }, * SpaceStorageSettings: { // DefaultSpaceStorageSettings * DefaultEbsStorageSettings: { // DefaultEbsStorageSettings @@ -324,6 +332,14 @@ export interface CreateDomainCommandOutput extends CreateDomainResponse, __Metad * RepositoryUrl: "STRING_VALUE", // required * }, * ], + * EmrSettings: { + * AssumableRoleArns: [ + * "STRING_VALUE", + * ], + * ExecutionRoleArns: [ + * "STRING_VALUE", + * ], + * }, * }, * SpaceStorageSettings: { * DefaultEbsStorageSettings: { diff --git a/clients/client-sagemaker/src/commands/CreateUserProfileCommand.ts b/clients/client-sagemaker/src/commands/CreateUserProfileCommand.ts index 7465d7688ad7..d5a1e6ce116f 100644 --- a/clients/client-sagemaker/src/commands/CreateUserProfileCommand.ts +++ b/clients/client-sagemaker/src/commands/CreateUserProfileCommand.ts @@ -193,6 +193,14 @@ export interface CreateUserProfileCommandOutput extends CreateUserProfileRespons * RepositoryUrl: "STRING_VALUE", // required * }, * ], + * EmrSettings: { // EmrSettings + * AssumableRoleArns: [ // AssumableRoleArns + * "STRING_VALUE", + * ], + * ExecutionRoleArns: [ // ExecutionRoleArns + * "STRING_VALUE", + * ], + * }, * }, * SpaceStorageSettings: { // DefaultSpaceStorageSettings * DefaultEbsStorageSettings: { // DefaultEbsStorageSettings diff --git a/clients/client-sagemaker/src/commands/DescribeDomainCommand.ts b/clients/client-sagemaker/src/commands/DescribeDomainCommand.ts index c309428e7f84..e8a2217a7d1d 100644 --- a/clients/client-sagemaker/src/commands/DescribeDomainCommand.ts +++ b/clients/client-sagemaker/src/commands/DescribeDomainCommand.ts @@ -194,6 +194,14 @@ export interface DescribeDomainCommandOutput extends DescribeDomainResponse, __M * // RepositoryUrl: "STRING_VALUE", // required * // }, * // ], + * // EmrSettings: { // EmrSettings + * // AssumableRoleArns: [ // AssumableRoleArns + * // "STRING_VALUE", + * // ], + * // ExecutionRoleArns: [ // ExecutionRoleArns + * // "STRING_VALUE", + * // ], + * // }, * // }, * // SpaceStorageSettings: { // DefaultSpaceStorageSettings * // DefaultEbsStorageSettings: { // DefaultEbsStorageSettings @@ -291,6 +299,14 @@ export interface DescribeDomainCommandOutput extends DescribeDomainResponse, __M * // RepositoryUrl: "STRING_VALUE", // required * // }, * // ], + * // EmrSettings: { + * // AssumableRoleArns: [ + * // "STRING_VALUE", + * // ], + * // ExecutionRoleArns: [ + * // "STRING_VALUE", + * // ], + * // }, * // }, * // SpaceStorageSettings: { * // DefaultEbsStorageSettings: { diff --git a/clients/client-sagemaker/src/commands/DescribeUserProfileCommand.ts b/clients/client-sagemaker/src/commands/DescribeUserProfileCommand.ts index 3859179d61bc..c7e0220daa53 100644 --- a/clients/client-sagemaker/src/commands/DescribeUserProfileCommand.ts +++ b/clients/client-sagemaker/src/commands/DescribeUserProfileCommand.ts @@ -193,6 +193,14 @@ export interface DescribeUserProfileCommandOutput extends DescribeUserProfileRes * // RepositoryUrl: "STRING_VALUE", // required * // }, * // ], + * // EmrSettings: { // EmrSettings + * // AssumableRoleArns: [ // AssumableRoleArns + * // "STRING_VALUE", + * // ], + * // ExecutionRoleArns: [ // ExecutionRoleArns + * // "STRING_VALUE", + * // ], + * // }, * // }, * // SpaceStorageSettings: { // DefaultSpaceStorageSettings * // DefaultEbsStorageSettings: { // DefaultEbsStorageSettings diff --git a/clients/client-sagemaker/src/commands/UpdateDomainCommand.ts b/clients/client-sagemaker/src/commands/UpdateDomainCommand.ts index 941e51184f23..16d4502bd8d8 100644 --- a/clients/client-sagemaker/src/commands/UpdateDomainCommand.ts +++ b/clients/client-sagemaker/src/commands/UpdateDomainCommand.ts @@ -178,6 +178,14 @@ export interface UpdateDomainCommandOutput extends UpdateDomainResponse, __Metad * RepositoryUrl: "STRING_VALUE", // required * }, * ], + * EmrSettings: { // EmrSettings + * AssumableRoleArns: [ // AssumableRoleArns + * "STRING_VALUE", + * ], + * ExecutionRoleArns: [ // ExecutionRoleArns + * "STRING_VALUE", + * ], + * }, * }, * SpaceStorageSettings: { // DefaultSpaceStorageSettings * DefaultEbsStorageSettings: { // DefaultEbsStorageSettings @@ -267,6 +275,14 @@ export interface UpdateDomainCommandOutput extends UpdateDomainResponse, __Metad * RepositoryUrl: "STRING_VALUE", // required * }, * ], + * EmrSettings: { + * AssumableRoleArns: [ + * "STRING_VALUE", + * ], + * ExecutionRoleArns: [ + * "STRING_VALUE", + * ], + * }, * }, * SpaceStorageSettings: { * DefaultEbsStorageSettings: { diff --git a/clients/client-sagemaker/src/commands/UpdateUserProfileCommand.ts b/clients/client-sagemaker/src/commands/UpdateUserProfileCommand.ts index a537de9c0da2..92eaaef315dc 100644 --- a/clients/client-sagemaker/src/commands/UpdateUserProfileCommand.ts +++ b/clients/client-sagemaker/src/commands/UpdateUserProfileCommand.ts @@ -179,6 +179,14 @@ export interface UpdateUserProfileCommandOutput extends UpdateUserProfileRespons * RepositoryUrl: "STRING_VALUE", // required * }, * ], + * EmrSettings: { // EmrSettings + * AssumableRoleArns: [ // AssumableRoleArns + * "STRING_VALUE", + * ], + * ExecutionRoleArns: [ // ExecutionRoleArns + * "STRING_VALUE", + * ], + * }, * }, * SpaceStorageSettings: { // DefaultSpaceStorageSettings * DefaultEbsStorageSettings: { // DefaultEbsStorageSettings diff --git a/clients/client-sagemaker/src/models/models_1.ts b/clients/client-sagemaker/src/models/models_1.ts index cfbd55144a6c..ebadb102bf2f 100644 --- a/clients/client-sagemaker/src/models/models_1.ts +++ b/clients/client-sagemaker/src/models/models_1.ts @@ -1778,6 +1778,37 @@ export interface CustomPosixUserConfig { Gid: number | undefined; } +/** + *
The configuration parameters that specify the IAM roles assumed by the execution role of + * SageMaker (assumable roles) and the cluster instances or job execution environments + * (execution roles or runtime roles) to manage and access resources required for running Amazon EMR + * clusters or Amazon EMR Serverless applications.
+ * @public + */ +export interface EmrSettings { + /** + *An array of Amazon Resource Names (ARNs) of the IAM roles that the execution role of + * SageMaker can assume for performing operations or tasks related to Amazon EMR clusters or Amazon EMR + * Serverless applications. These roles define the permissions and access policies required + * when performing Amazon EMR-related operations, such as listing, connecting to, or terminating + * Amazon EMR clusters or Amazon EMR Serverless applications. They are typically used in + * cross-account access scenarios, where the Amazon EMR resources (clusters or serverless + * applications) are located in a different Amazon Web Services account than the SageMaker + * domain.
+ * @public + */ + AssumableRoleArns?: string[]; + + /** + *An array of Amazon Resource Names (ARNs) of the IAM roles used by the Amazon EMR cluster instances + * or job execution environments to access other Amazon Web Services services and resources needed during the + * runtime of your Amazon EMR or Amazon EMR Serverless workloads, such as Amazon S3 for data access, Amazon CloudWatch for logging, or other + * Amazon Web Services services based on the particular workload requirements.
+ * @public + */ + ExecutionRoleArns?: string[]; +} + /** *The settings for the JupyterLab application.
* @public @@ -1807,6 +1838,15 @@ export interface JupyterLabAppSettings { * @public */ CodeRepositories?: CodeRepository[]; + + /** + *The configuration parameters that specify the IAM roles assumed by the execution role of + * SageMaker (assumable roles) and the cluster instances or job execution environments + * (execution roles or runtime roles) to manage and access resources required for running Amazon EMR + * clusters or Amazon EMR Serverless applications.
+ * @public + */ + EmrSettings?: EmrSettings; } /** @@ -12706,20 +12746,6 @@ export const ProcessingS3CompressionType = { export type ProcessingS3CompressionType = (typeof ProcessingS3CompressionType)[keyof typeof ProcessingS3CompressionType]; -/** - * @public - * @enum - */ -export const ProcessingS3DataType = { - MANIFEST_FILE: "ManifestFile", - S3_PREFIX: "S3Prefix", -} as const; - -/** - * @public - */ -export type ProcessingS3DataType = (typeof ProcessingS3DataType)[keyof typeof ProcessingS3DataType]; - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_2.ts b/clients/client-sagemaker/src/models/models_2.ts index 4e332ca28f0f..83a7fb600184 100644 --- a/clients/client-sagemaker/src/models/models_2.ts +++ b/clients/client-sagemaker/src/models/models_2.ts @@ -133,7 +133,6 @@ import { OutputConfig, ProcessingInstanceType, ProcessingS3CompressionType, - ProcessingS3DataType, ProcessingS3UploadMode, Processor, ProductionVariant, @@ -152,6 +151,20 @@ import { VendorGuidance, } from "./models_1"; +/** + * @public + * @enum + */ +export const ProcessingS3DataType = { + MANIFEST_FILE: "ManifestFile", + S3_PREFIX: "S3Prefix", +} as const; + +/** + * @public + */ +export type ProcessingS3DataType = (typeof ProcessingS3DataType)[keyof typeof ProcessingS3DataType]; + /** *Configuration for downloading input data from Amazon S3 into the processing container.
* @public @@ -9458,21 +9471,6 @@ export interface ModelCardExportArtifacts { S3ExportArtifacts: string | undefined; } -/** - * @public - * @enum - */ -export const ModelCardExportJobStatus = { - COMPLETED: "Completed", - FAILED: "Failed", - IN_PROGRESS: "InProgress", -} as const; - -/** - * @public - */ -export type ModelCardExportJobStatus = (typeof ModelCardExportJobStatus)[keyof typeof ModelCardExportJobStatus]; - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_3.ts b/clients/client-sagemaker/src/models/models_3.ts index 82ba30376526..f696e8c9db1e 100644 --- a/clients/client-sagemaker/src/models/models_3.ts +++ b/clients/client-sagemaker/src/models/models_3.ts @@ -147,7 +147,6 @@ import { MemberDefinition, ModelArtifacts, ModelCardExportArtifacts, - ModelCardExportJobStatus, ModelClientConfig, ModelConfiguration, NotificationConfiguration, @@ -181,6 +180,21 @@ import { WorkerAccessConfiguration, } from "./models_2"; +/** + * @public + * @enum + */ +export const ModelCardExportJobStatus = { + COMPLETED: "Completed", + FAILED: "Failed", + IN_PROGRESS: "InProgress", +} as const; + +/** + * @public + */ +export type ModelCardExportJobStatus = (typeof ModelCardExportJobStatus)[keyof typeof ModelCardExportJobStatus]; + /** * @public */ @@ -11574,25 +11588,6 @@ export const ModelMetadataFilterType = { */ export type ModelMetadataFilterType = (typeof ModelMetadataFilterType)[keyof typeof ModelMetadataFilterType]; -/** - *Part of the search expression. You can specify the name and value - * (domain, task, framework, framework version, task, and model).
- * @public - */ -export interface ModelMetadataFilter { - /** - *The name of the of the model to filter by.
- * @public - */ - Name: ModelMetadataFilterType | undefined; - - /** - *The value to filter the model metadata.
- * @public - */ - Value: string | undefined; -} - /** * @internal */ diff --git a/clients/client-sagemaker/src/models/models_4.ts b/clients/client-sagemaker/src/models/models_4.ts index 43310135cf07..fb2778d30372 100644 --- a/clients/client-sagemaker/src/models/models_4.ts +++ b/clients/client-sagemaker/src/models/models_4.ts @@ -145,7 +145,7 @@ import { LambdaStepMetadata, LineageType, MetricData, - ModelMetadataFilter, + ModelMetadataFilterType, ModelPackageGroupStatus, ModelPackageStatusDetails, MonitoringExecutionSummary, @@ -180,6 +180,25 @@ import { Workteam, } from "./models_3"; +/** + *Part of the search expression. You can specify the name and value + * (domain, task, framework, framework version, task, and model).
+ * @public + */ +export interface ModelMetadataFilter { + /** + *The name of the of the model to filter by.
+ * @public + */ + Name: ModelMetadataFilterType | undefined; + + /** + *The value to filter the model metadata.
+ * @public + */ + Value: string | undefined; +} + /** *One or more filters that searches for the specified resource or resources in * a search. All resource objects that satisfy the expression's condition are diff --git a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts index f05d1e642c65..712e92d306df 100644 --- a/clients/client-sagemaker/src/protocols/Aws_json1_1.ts +++ b/clients/client-sagemaker/src/protocols/Aws_json1_1.ts @@ -1232,6 +1232,7 @@ import { EdgeDeploymentModelConfig, EdgeOutputConfig, EFSFileSystemConfig, + EmrSettings, EndpointInfo, EndpointInput, EndpointInputConfiguration, @@ -1850,7 +1851,6 @@ import { ModelCardExportJobSummary, ModelCardSummary, ModelCardVersionSummary, - ModelMetadataFilter, ModelPackageStatusDetails, ModelPackageStatusItem, MonitoringExecutionSummary, @@ -1957,6 +1957,7 @@ import { ModelDashboardModel, ModelDashboardModelCard, ModelDashboardMonitoringSchedule, + ModelMetadataFilter, ModelMetadataSearchExpression, ModelMetadataSummary, ModelPackage, @@ -13156,6 +13157,8 @@ const de_ResourceNotFoundRes = async (parsedOutput: any, context: __SerdeContext // se_AssociateTrialComponentRequest omitted. +// se_AssumableRoleArns omitted. + // se_AsyncInferenceClientConfig omitted. // se_AsyncInferenceConfig omitted. @@ -14135,6 +14138,8 @@ const se_DesiredWeightAndCapacityList = (input: DesiredWeightAndCapacity[], cont // se_EFSFileSystemConfig omitted. +// se_EmrSettings omitted. + // se_EnableSagemakerServicecatalogPortfolioInput omitted. // se_EndpointInfo omitted. @@ -14168,6 +14173,8 @@ const se_EndpointInput = (input: EndpointInput, context: __SerdeContext): any => // se_EnvironmentParameterRanges omitted. +// se_ExecutionRoleArns omitted. + // se_ExperimentConfig omitted. // se_Explainability omitted. @@ -16995,6 +17002,18 @@ const de_AssociationSummary = (output: any, context: __SerdeContext): Associatio }) as any; }; +/** + * deserializeAws_json1_1AssumableRoleArns + */ +const de_AssumableRoleArns = (output: any, context: __SerdeContext): string[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return __expectString(entry) as any; + }); + return retVal; +}; + /** * deserializeAws_json1_1AsyncInferenceClientConfig */ @@ -21572,6 +21591,16 @@ const de_EFSFileSystemConfig = (output: any, context: __SerdeContext): EFSFileSy }) as any; }; +/** + * deserializeAws_json1_1EmrSettings + */ +const de_EmrSettings = (output: any, context: __SerdeContext): EmrSettings => { + return take(output, { + AssumableRoleArns: (_: any) => de_AssumableRoleArns(_, context), + ExecutionRoleArns: (_: any) => de_ExecutionRoleArns(_, context), + }) as any; +}; + /** * deserializeAws_json1_1EMRStepMetadata */ @@ -21818,6 +21847,18 @@ const de_EnvironmentParameters = (output: any, context: __SerdeContext): Environ return retVal; }; +/** + * deserializeAws_json1_1ExecutionRoleArns + */ +const de_ExecutionRoleArns = (output: any, context: __SerdeContext): string[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return __expectString(entry) as any; + }); + return retVal; +}; + /** * deserializeAws_json1_1Experiment */ @@ -23498,6 +23539,7 @@ const de_JupyterLabAppSettings = (output: any, context: __SerdeContext): Jupyter CodeRepositories: (_: any) => de_CodeRepositories(_, context), CustomImages: (_: any) => de_CustomImages(_, context), DefaultResourceSpec: (_: any) => de_ResourceSpec(_, context), + EmrSettings: (_: any) => de_EmrSettings(_, context), LifecycleConfigArns: (_: any) => de_LifecycleConfigArns(_, context), }) as any; }; diff --git a/codegen/sdk-codegen/aws-models/sagemaker.json b/codegen/sdk-codegen/aws-models/sagemaker.json index 8a918dc73161..239c34d8a2b5 100644 --- a/codegen/sdk-codegen/aws-models/sagemaker.json +++ b/codegen/sdk-codegen/aws-models/sagemaker.json @@ -2586,6 +2586,18 @@ "smithy.api#documentation": "
Lists a summary of the properties of an association. An association is an entity that\n links other lineage or experiment entities. An example would be an association between a\n training job and a model.
" } }, + "com.amazonaws.sagemaker#AssumableRoleArns": { + "type": "list", + "member": { + "target": "com.amazonaws.sagemaker#RoleArn" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 5 + } + } + }, "com.amazonaws.sagemaker#AsyncInferenceClientConfig": { "type": "structure", "members": { @@ -27131,6 +27143,26 @@ "smithy.api#pattern": "^\\d+$" } }, + "com.amazonaws.sagemaker#EmrSettings": { + "type": "structure", + "members": { + "AssumableRoleArns": { + "target": "com.amazonaws.sagemaker#AssumableRoleArns", + "traits": { + "smithy.api#documentation": "An array of Amazon Resource Names (ARNs) of the IAM roles that the execution role of\n SageMaker can assume for performing operations or tasks related to Amazon EMR clusters or Amazon EMR\n Serverless applications. These roles define the permissions and access policies required\n when performing Amazon EMR-related operations, such as listing, connecting to, or terminating\n Amazon EMR clusters or Amazon EMR Serverless applications. They are typically used in\n cross-account access scenarios, where the Amazon EMR resources (clusters or serverless\n applications) are located in a different Amazon Web Services account than the SageMaker\n domain.
" + } + }, + "ExecutionRoleArns": { + "target": "com.amazonaws.sagemaker#ExecutionRoleArns", + "traits": { + "smithy.api#documentation": "An array of Amazon Resource Names (ARNs) of the IAM roles used by the Amazon EMR cluster instances\n or job execution environments to access other Amazon Web Services services and resources needed during the \n runtime of your Amazon EMR or Amazon EMR Serverless workloads, such as Amazon S3 for data access, Amazon CloudWatch for logging, or other\n Amazon Web Services services based on the particular workload requirements.
" + } + } + }, + "traits": { + "smithy.api#documentation": "The configuration parameters that specify the IAM roles assumed by the execution role of \n SageMaker (assumable roles) and the cluster instances or job execution environments \n (execution roles or runtime roles) to manage and access resources required for running Amazon EMR\n clusters or Amazon EMR Serverless applications.
" + } + }, "com.amazonaws.sagemaker#EnableCapture": { "type": "boolean" }, @@ -27904,6 +27936,18 @@ } } }, + "com.amazonaws.sagemaker#ExecutionRoleArns": { + "type": "list", + "member": { + "target": "com.amazonaws.sagemaker#RoleArn" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 5 + } + } + }, "com.amazonaws.sagemaker#ExecutionRoleIdentityConfig": { "type": "enum", "members": { @@ -35081,6 +35125,12 @@ "traits": { "smithy.api#documentation": "A list of Git repositories that SageMaker automatically displays to users for cloning in the JupyterLab application.
" } + }, + "EmrSettings": { + "target": "com.amazonaws.sagemaker#EmrSettings", + "traits": { + "smithy.api#documentation": "The configuration parameters that specify the IAM roles assumed by the execution role of \n SageMaker (assumable roles) and the cluster instances or job execution environments \n (execution roles or runtime roles) to manage and access resources required for running Amazon EMR\n clusters or Amazon EMR Serverless applications.
" + } } }, "traits": {