aws-cdk-lib 2.216.0__py3-none-any.whl → 2.218.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (151) hide show
  1. aws_cdk/__init__.py +60 -28
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.216.0.jsii.tgz → aws-cdk-lib@2.218.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +1 -1
  5. aws_cdk/aws_amazonmq/__init__.py +87 -0
  6. aws_cdk/aws_amplify/__init__.py +8 -8
  7. aws_cdk/aws_apigateway/__init__.py +229 -6
  8. aws_cdk/aws_apigatewayv2/__init__.py +60 -2
  9. aws_cdk/aws_appconfig/__init__.py +145 -0
  10. aws_cdk/aws_appflow/__init__.py +116 -0
  11. aws_cdk/aws_appintegrations/__init__.py +116 -0
  12. aws_cdk/aws_appmesh/__init__.py +12 -12
  13. aws_cdk/aws_appstream/__init__.py +101 -4
  14. aws_cdk/aws_appsync/__init__.py +61 -3
  15. aws_cdk/aws_apptest/__init__.py +58 -0
  16. aws_cdk/aws_aps/__init__.py +459 -0
  17. aws_cdk/aws_athena/__init__.py +58 -0
  18. aws_cdk/aws_auditmanager/__init__.py +58 -0
  19. aws_cdk/aws_backup/__init__.py +145 -0
  20. aws_cdk/aws_batch/__init__.py +64 -2
  21. aws_cdk/aws_bedrock/__init__.py +277 -0
  22. aws_cdk/aws_bedrockagentcore/__init__.py +3178 -0
  23. aws_cdk/aws_cassandra/__init__.py +29 -0
  24. aws_cdk/aws_certificatemanager/__init__.py +38 -10
  25. aws_cdk/aws_cleanrooms/__init__.py +163 -0
  26. aws_cdk/aws_cloudformation/__init__.py +14 -14
  27. aws_cdk/aws_cloudfront/__init__.py +69 -8
  28. aws_cdk/aws_cloudfront_origins/__init__.py +87 -7
  29. aws_cdk/aws_cloudtrail/__init__.py +58 -0
  30. aws_cdk/aws_cloudwatch/__init__.py +145 -0
  31. aws_cdk/aws_codebuild/__init__.py +115 -12
  32. aws_cdk/aws_codedeploy/__init__.py +29 -0
  33. aws_cdk/aws_codeguruprofiler/__init__.py +58 -0
  34. aws_cdk/aws_codepipeline/__init__.py +29 -0
  35. aws_cdk/aws_cognito/__init__.py +89 -2
  36. aws_cdk/aws_config/__init__.py +58 -0
  37. aws_cdk/aws_connect/__init__.py +138 -10
  38. aws_cdk/aws_cur/__init__.py +86 -3
  39. aws_cdk/aws_customerprofiles/__init__.py +58 -0
  40. aws_cdk/aws_datapipeline/__init__.py +29 -0
  41. aws_cdk/aws_datasync/__init__.py +351 -0
  42. aws_cdk/aws_datazone/__init__.py +733 -2
  43. aws_cdk/aws_directoryservice/__init__.py +29 -0
  44. aws_cdk/aws_dms/__init__.py +58 -0
  45. aws_cdk/aws_docdb/__init__.py +153 -25
  46. aws_cdk/aws_dsql/__init__.py +29 -0
  47. aws_cdk/aws_dynamodb/__init__.py +181 -0
  48. aws_cdk/aws_ec2/__init__.py +2031 -10
  49. aws_cdk/aws_ecr/__init__.py +116 -0
  50. aws_cdk/aws_ecs/__init__.py +142 -12
  51. aws_cdk/aws_efs/__init__.py +116 -0
  52. aws_cdk/aws_eks/__init__.py +118 -0
  53. aws_cdk/aws_elasticache/__init__.py +261 -0
  54. aws_cdk/aws_elasticbeanstalk/__init__.py +29 -0
  55. aws_cdk/aws_elasticloadbalancingv2/__init__.py +48 -0
  56. aws_cdk/aws_elasticsearch/__init__.py +2 -2
  57. aws_cdk/aws_emr/__init__.py +87 -0
  58. aws_cdk/aws_emrcontainers/__init__.py +58 -0
  59. aws_cdk/aws_emrserverless/__init__.py +58 -0
  60. aws_cdk/aws_entityresolution/__init__.py +145 -0
  61. aws_cdk/aws_events/__init__.py +290 -0
  62. aws_cdk/aws_evs/__init__.py +58 -4
  63. aws_cdk/aws_finspace/__init__.py +58 -0
  64. aws_cdk/aws_gamelift/__init__.py +507 -56
  65. aws_cdk/aws_glue/__init__.py +145 -0
  66. aws_cdk/aws_greengrass/__init__.py +464 -0
  67. aws_cdk/aws_groundstation/__init__.py +87 -0
  68. aws_cdk/aws_guardduty/__init__.py +87 -0
  69. aws_cdk/aws_healthimaging/__init__.py +58 -0
  70. aws_cdk/aws_healthlake/__init__.py +29 -0
  71. aws_cdk/aws_iam/__init__.py +1 -1
  72. aws_cdk/aws_internetmonitor/__init__.py +58 -0
  73. aws_cdk/aws_iot/__init__.py +957 -0
  74. aws_cdk/aws_iotanalytics/__init__.py +116 -0
  75. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +93 -38
  76. aws_cdk/aws_iotevents/__init__.py +87 -0
  77. aws_cdk/aws_iotfleethub/__init__.py +58 -0
  78. aws_cdk/aws_iotfleetwise/__init__.py +116 -0
  79. aws_cdk/aws_iotsitewise/__init__.py +568 -111
  80. aws_cdk/aws_iottwinmaker/__init__.py +145 -0
  81. aws_cdk/aws_iotwireless/__init__.py +464 -0
  82. aws_cdk/aws_kendra/__init__.py +116 -0
  83. aws_cdk/aws_kinesis/__init__.py +58 -0
  84. aws_cdk/aws_kinesisanalytics/__init__.py +31 -0
  85. aws_cdk/aws_kinesisanalyticsv2/__init__.py +29 -0
  86. aws_cdk/aws_kinesisfirehose/__init__.py +58 -0
  87. aws_cdk/aws_kinesisvideo/__init__.py +29 -0
  88. aws_cdk/aws_kms/__init__.py +68 -2
  89. aws_cdk/aws_lambda/__init__.py +104 -0
  90. aws_cdk/aws_lex/__init__.py +29 -0
  91. aws_cdk/aws_location/__init__.py +348 -0
  92. aws_cdk/aws_logs/__init__.py +232 -0
  93. aws_cdk/aws_lookoutequipment/__init__.py +29 -0
  94. aws_cdk/aws_lookoutvision/__init__.py +58 -0
  95. aws_cdk/aws_managedblockchain/__init__.py +145 -0
  96. aws_cdk/aws_medialive/__init__.py +562 -0
  97. aws_cdk/aws_mediapackage/__init__.py +2 -2
  98. aws_cdk/aws_mediatailor/__init__.py +174 -0
  99. aws_cdk/aws_memorydb/__init__.py +203 -0
  100. aws_cdk/aws_mwaa/__init__.py +58 -0
  101. aws_cdk/aws_networkfirewall/__init__.py +10 -10
  102. aws_cdk/aws_networkmanager/__init__.py +92 -0
  103. aws_cdk/aws_nimblestudio/__init__.py +29 -0
  104. aws_cdk/aws_odb/__init__.py +2082 -195
  105. aws_cdk/aws_omics/__init__.py +1520 -103
  106. aws_cdk/aws_opensearchserverless/__init__.py +222 -21
  107. aws_cdk/aws_opensearchservice/__init__.py +5 -4
  108. aws_cdk/aws_opsworks/__init__.py +29 -0
  109. aws_cdk/aws_opsworkscm/__init__.py +29 -0
  110. aws_cdk/aws_organizations/__init__.py +116 -0
  111. aws_cdk/aws_panorama/__init__.py +116 -0
  112. aws_cdk/aws_pcs/__init__.py +9 -9
  113. aws_cdk/aws_pinpoint/__init__.py +116 -0
  114. aws_cdk/aws_qbusiness/__init__.py +232 -0
  115. aws_cdk/aws_qldb/__init__.py +29 -0
  116. aws_cdk/aws_quicksight/__init__.py +295 -3
  117. aws_cdk/aws_rds/__init__.py +402 -58
  118. aws_cdk/aws_redshift/__init__.py +29 -0
  119. aws_cdk/aws_rekognition/__init__.py +87 -0
  120. aws_cdk/aws_resourcegroups/__init__.py +58 -0
  121. aws_cdk/aws_rolesanywhere/__init__.py +145 -0
  122. aws_cdk/aws_route53recoveryreadiness/__init__.py +58 -0
  123. aws_cdk/aws_route53resolver/__init__.py +29 -0
  124. aws_cdk/aws_s3/__init__.py +116 -0
  125. aws_cdk/aws_s3express/__init__.py +116 -0
  126. aws_cdk/aws_sagemaker/__init__.py +715 -1
  127. aws_cdk/aws_scheduler/__init__.py +29 -0
  128. aws_cdk/aws_secretsmanager/__init__.py +29 -0
  129. aws_cdk/aws_servicecatalog/__init__.py +191 -154
  130. aws_cdk/aws_servicecatalogappregistry/__init__.py +116 -0
  131. aws_cdk/aws_servicediscovery/__init__.py +58 -0
  132. aws_cdk/aws_ses/__init__.py +261 -0
  133. aws_cdk/aws_simspaceweaver/__init__.py +29 -0
  134. aws_cdk/aws_smsvoice/__init__.py +5218 -0
  135. aws_cdk/aws_ssm/__init__.py +87 -0
  136. aws_cdk/aws_synthetics/__init__.py +29 -0
  137. aws_cdk/aws_timestream/__init__.py +87 -0
  138. aws_cdk/aws_transfer/__init__.py +274 -12
  139. aws_cdk/aws_verifiedpermissions/__init__.py +59 -1
  140. aws_cdk/aws_voiceid/__init__.py +29 -0
  141. aws_cdk/aws_wisdom/__init__.py +232 -0
  142. aws_cdk/aws_workspaces/__init__.py +58 -0
  143. aws_cdk/aws_workspacesinstances/__init__.py +670 -2
  144. aws_cdk/aws_workspacesthinclient/__init__.py +58 -0
  145. aws_cdk/pipelines/__init__.py +5 -1
  146. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/METADATA +1 -1
  147. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/RECORD +151 -149
  148. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/LICENSE +0 -0
  149. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/NOTICE +0 -0
  150. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/WHEEL +0 -0
  151. {aws_cdk_lib-2.216.0.dist-info → aws_cdk_lib-2.218.0.dist-info}/top_level.txt +0 -0
@@ -901,6 +901,8 @@ class CfnVariantStoreProps:
901
901
  jsii_struct_bases=[],
902
902
  name_mapping={
903
903
  "accelerators": "accelerators",
904
+ "container_registry_map": "containerRegistryMap",
905
+ "container_registry_map_uri": "containerRegistryMapUri",
904
906
  "definition_repository": "definitionRepository",
905
907
  "definition_uri": "definitionUri",
906
908
  "description": "description",
@@ -923,6 +925,8 @@ class CfnWorkflowProps:
923
925
  self,
924
926
  *,
925
927
  accelerators: typing.Optional[builtins.str] = None,
928
+ container_registry_map: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflow.ContainerRegistryMapProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
929
+ container_registry_map_uri: typing.Optional[builtins.str] = None,
926
930
  definition_repository: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflow.DefinitionRepositoryProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
927
931
  definition_uri: typing.Optional[builtins.str] = None,
928
932
  description: typing.Optional[builtins.str] = None,
@@ -942,6 +946,8 @@ class CfnWorkflowProps:
942
946
  '''Properties for defining a ``CfnWorkflow``.
943
947
 
944
948
  :param accelerators:
949
+ :param container_registry_map: Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see `Container images <https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html>`_ in the *AWS HealthOmics User Guide* .
950
+ :param container_registry_map_uri:
945
951
  :param definition_repository: Contains information about a source code repository that hosts the workflow definition files.
946
952
  :param definition_uri: The URI of a definition for the workflow.
947
953
  :param description: The parameter's description.
@@ -969,6 +975,19 @@ class CfnWorkflowProps:
969
975
 
970
976
  cfn_workflow_props = omics.CfnWorkflowProps(
971
977
  accelerators="accelerators",
978
+ container_registry_map=omics.CfnWorkflow.ContainerRegistryMapProperty(
979
+ image_mappings=[omics.CfnWorkflow.ImageMappingProperty(
980
+ destination_image="destinationImage",
981
+ source_image="sourceImage"
982
+ )],
983
+ registry_mappings=[omics.CfnWorkflow.RegistryMappingProperty(
984
+ ecr_account_id="ecrAccountId",
985
+ ecr_repository_prefix="ecrRepositoryPrefix",
986
+ upstream_registry_url="upstreamRegistryUrl",
987
+ upstream_repository_prefix="upstreamRepositoryPrefix"
988
+ )]
989
+ ),
990
+ container_registry_map_uri="containerRegistryMapUri",
972
991
  definition_repository=omics.CfnWorkflow.DefinitionRepositoryProperty(
973
992
  connection_arn="connectionArn",
974
993
  exclude_file_patterns=["excludeFilePatterns"],
@@ -1004,6 +1023,8 @@ class CfnWorkflowProps:
1004
1023
  if __debug__:
1005
1024
  type_hints = typing.get_type_hints(_typecheckingstub__09bedca50200dd06a4bbe4bb6135e76dacff76287249f3d28b8f285f8205f173)
1006
1025
  check_type(argname="argument accelerators", value=accelerators, expected_type=type_hints["accelerators"])
1026
+ check_type(argname="argument container_registry_map", value=container_registry_map, expected_type=type_hints["container_registry_map"])
1027
+ check_type(argname="argument container_registry_map_uri", value=container_registry_map_uri, expected_type=type_hints["container_registry_map_uri"])
1007
1028
  check_type(argname="argument definition_repository", value=definition_repository, expected_type=type_hints["definition_repository"])
1008
1029
  check_type(argname="argument definition_uri", value=definition_uri, expected_type=type_hints["definition_uri"])
1009
1030
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
@@ -1022,6 +1043,10 @@ class CfnWorkflowProps:
1022
1043
  self._values: typing.Dict[builtins.str, typing.Any] = {}
1023
1044
  if accelerators is not None:
1024
1045
  self._values["accelerators"] = accelerators
1046
+ if container_registry_map is not None:
1047
+ self._values["container_registry_map"] = container_registry_map
1048
+ if container_registry_map_uri is not None:
1049
+ self._values["container_registry_map_uri"] = container_registry_map_uri
1025
1050
  if definition_repository is not None:
1026
1051
  self._values["definition_repository"] = definition_repository
1027
1052
  if definition_uri is not None:
@@ -1061,6 +1086,27 @@ class CfnWorkflowProps:
1061
1086
  result = self._values.get("accelerators")
1062
1087
  return typing.cast(typing.Optional[builtins.str], result)
1063
1088
 
1089
+ @builtins.property
1090
+ def container_registry_map(
1091
+ self,
1092
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.ContainerRegistryMapProperty"]]:
1093
+ '''Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.
1094
+
1095
+ For more information, see `Container images <https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html>`_ in the *AWS HealthOmics User Guide* .
1096
+
1097
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflow.html#cfn-omics-workflow-containerregistrymap
1098
+ '''
1099
+ result = self._values.get("container_registry_map")
1100
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.ContainerRegistryMapProperty"]], result)
1101
+
1102
+ @builtins.property
1103
+ def container_registry_map_uri(self) -> typing.Optional[builtins.str]:
1104
+ '''
1105
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflow.html#cfn-omics-workflow-containerregistrymapuri
1106
+ '''
1107
+ result = self._values.get("container_registry_map_uri")
1108
+ return typing.cast(typing.Optional[builtins.str], result)
1109
+
1064
1110
  @builtins.property
1065
1111
  def definition_repository(
1066
1112
  self,
@@ -1226,11 +1272,18 @@ class CfnWorkflowProps:
1226
1272
  "version_name": "versionName",
1227
1273
  "workflow_id": "workflowId",
1228
1274
  "accelerators": "accelerators",
1275
+ "container_registry_map": "containerRegistryMap",
1276
+ "container_registry_map_uri": "containerRegistryMapUri",
1277
+ "definition_repository": "definitionRepository",
1229
1278
  "definition_uri": "definitionUri",
1230
1279
  "description": "description",
1231
1280
  "engine": "engine",
1232
1281
  "main": "main",
1233
1282
  "parameter_template": "parameterTemplate",
1283
+ "parameter_template_path": "parameterTemplatePath",
1284
+ "readme_markdown": "readmeMarkdown",
1285
+ "readme_path": "readmePath",
1286
+ "readme_uri": "readmeUri",
1234
1287
  "storage_capacity": "storageCapacity",
1235
1288
  "storage_type": "storageType",
1236
1289
  "tags": "tags",
@@ -1244,11 +1297,18 @@ class CfnWorkflowVersionProps:
1244
1297
  version_name: builtins.str,
1245
1298
  workflow_id: builtins.str,
1246
1299
  accelerators: typing.Optional[builtins.str] = None,
1300
+ container_registry_map: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.ContainerRegistryMapProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1301
+ container_registry_map_uri: typing.Optional[builtins.str] = None,
1302
+ definition_repository: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.DefinitionRepositoryProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1247
1303
  definition_uri: typing.Optional[builtins.str] = None,
1248
1304
  description: typing.Optional[builtins.str] = None,
1249
1305
  engine: typing.Optional[builtins.str] = None,
1250
1306
  main: typing.Optional[builtins.str] = None,
1251
1307
  parameter_template: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.WorkflowParameterProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
1308
+ parameter_template_path: typing.Optional[builtins.str] = None,
1309
+ readme_markdown: typing.Optional[builtins.str] = None,
1310
+ readme_path: typing.Optional[builtins.str] = None,
1311
+ readme_uri: typing.Optional[builtins.str] = None,
1252
1312
  storage_capacity: typing.Optional[jsii.Number] = None,
1253
1313
  storage_type: typing.Optional[builtins.str] = None,
1254
1314
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
@@ -1259,11 +1319,18 @@ class CfnWorkflowVersionProps:
1259
1319
  :param version_name: The name of the workflow version.
1260
1320
  :param workflow_id: The workflow's ID.
1261
1321
  :param accelerators:
1322
+ :param container_registry_map: Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see `Container images <https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html>`_ in the *AWS HealthOmics User Guide* .
1323
+ :param container_registry_map_uri:
1324
+ :param definition_repository: Contains information about a source code repository that hosts the workflow definition files.
1262
1325
  :param definition_uri:
1263
1326
  :param description: The description of the workflow version.
1264
1327
  :param engine:
1265
1328
  :param main:
1266
1329
  :param parameter_template:
1330
+ :param parameter_template_path: Path to the primary workflow parameter template JSON file inside the repository.
1331
+ :param readme_markdown: The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.
1332
+ :param readme_path: The path to the workflow README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the README.md file from the root directory of the repository will be used.
1333
+ :param readme_uri: The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. The S3 URI must begin with s3://USER-OWNED-BUCKET/. The requester must have access to the S3 bucket and object. The max README content length is 500 KiB.
1267
1334
  :param storage_capacity:
1268
1335
  :param storage_type:
1269
1336
  :param tags: A map of resource tags.
@@ -1284,6 +1351,28 @@ class CfnWorkflowVersionProps:
1284
1351
 
1285
1352
  # the properties below are optional
1286
1353
  accelerators="accelerators",
1354
+ container_registry_map=omics.CfnWorkflowVersion.ContainerRegistryMapProperty(
1355
+ image_mappings=[omics.CfnWorkflowVersion.ImageMappingProperty(
1356
+ destination_image="destinationImage",
1357
+ source_image="sourceImage"
1358
+ )],
1359
+ registry_mappings=[omics.CfnWorkflowVersion.RegistryMappingProperty(
1360
+ ecr_account_id="ecrAccountId",
1361
+ ecr_repository_prefix="ecrRepositoryPrefix",
1362
+ upstream_registry_url="upstreamRegistryUrl",
1363
+ upstream_repository_prefix="upstreamRepositoryPrefix"
1364
+ )]
1365
+ ),
1366
+ container_registry_map_uri="containerRegistryMapUri",
1367
+ definition_repository=omics.CfnWorkflowVersion.DefinitionRepositoryProperty(
1368
+ connection_arn="connectionArn",
1369
+ exclude_file_patterns=["excludeFilePatterns"],
1370
+ full_repository_id="fullRepositoryId",
1371
+ source_reference=omics.CfnWorkflowVersion.SourceReferenceProperty(
1372
+ type="type",
1373
+ value="value"
1374
+ )
1375
+ ),
1287
1376
  definition_uri="definitionUri",
1288
1377
  description="description",
1289
1378
  engine="engine",
@@ -1294,6 +1383,10 @@ class CfnWorkflowVersionProps:
1294
1383
  optional=False
1295
1384
  )
1296
1385
  },
1386
+ parameter_template_path="parameterTemplatePath",
1387
+ readme_markdown="readmeMarkdown",
1388
+ readme_path="readmePath",
1389
+ readme_uri="readmeUri",
1297
1390
  storage_capacity=123,
1298
1391
  storage_type="storageType",
1299
1392
  tags={
@@ -1307,11 +1400,18 @@ class CfnWorkflowVersionProps:
1307
1400
  check_type(argname="argument version_name", value=version_name, expected_type=type_hints["version_name"])
1308
1401
  check_type(argname="argument workflow_id", value=workflow_id, expected_type=type_hints["workflow_id"])
1309
1402
  check_type(argname="argument accelerators", value=accelerators, expected_type=type_hints["accelerators"])
1403
+ check_type(argname="argument container_registry_map", value=container_registry_map, expected_type=type_hints["container_registry_map"])
1404
+ check_type(argname="argument container_registry_map_uri", value=container_registry_map_uri, expected_type=type_hints["container_registry_map_uri"])
1405
+ check_type(argname="argument definition_repository", value=definition_repository, expected_type=type_hints["definition_repository"])
1310
1406
  check_type(argname="argument definition_uri", value=definition_uri, expected_type=type_hints["definition_uri"])
1311
1407
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
1312
1408
  check_type(argname="argument engine", value=engine, expected_type=type_hints["engine"])
1313
1409
  check_type(argname="argument main", value=main, expected_type=type_hints["main"])
1314
1410
  check_type(argname="argument parameter_template", value=parameter_template, expected_type=type_hints["parameter_template"])
1411
+ check_type(argname="argument parameter_template_path", value=parameter_template_path, expected_type=type_hints["parameter_template_path"])
1412
+ check_type(argname="argument readme_markdown", value=readme_markdown, expected_type=type_hints["readme_markdown"])
1413
+ check_type(argname="argument readme_path", value=readme_path, expected_type=type_hints["readme_path"])
1414
+ check_type(argname="argument readme_uri", value=readme_uri, expected_type=type_hints["readme_uri"])
1315
1415
  check_type(argname="argument storage_capacity", value=storage_capacity, expected_type=type_hints["storage_capacity"])
1316
1416
  check_type(argname="argument storage_type", value=storage_type, expected_type=type_hints["storage_type"])
1317
1417
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
@@ -1322,6 +1422,12 @@ class CfnWorkflowVersionProps:
1322
1422
  }
1323
1423
  if accelerators is not None:
1324
1424
  self._values["accelerators"] = accelerators
1425
+ if container_registry_map is not None:
1426
+ self._values["container_registry_map"] = container_registry_map
1427
+ if container_registry_map_uri is not None:
1428
+ self._values["container_registry_map_uri"] = container_registry_map_uri
1429
+ if definition_repository is not None:
1430
+ self._values["definition_repository"] = definition_repository
1325
1431
  if definition_uri is not None:
1326
1432
  self._values["definition_uri"] = definition_uri
1327
1433
  if description is not None:
@@ -1332,6 +1438,14 @@ class CfnWorkflowVersionProps:
1332
1438
  self._values["main"] = main
1333
1439
  if parameter_template is not None:
1334
1440
  self._values["parameter_template"] = parameter_template
1441
+ if parameter_template_path is not None:
1442
+ self._values["parameter_template_path"] = parameter_template_path
1443
+ if readme_markdown is not None:
1444
+ self._values["readme_markdown"] = readme_markdown
1445
+ if readme_path is not None:
1446
+ self._values["readme_path"] = readme_path
1447
+ if readme_uri is not None:
1448
+ self._values["readme_uri"] = readme_uri
1335
1449
  if storage_capacity is not None:
1336
1450
  self._values["storage_capacity"] = storage_capacity
1337
1451
  if storage_type is not None:
@@ -1369,6 +1483,38 @@ class CfnWorkflowVersionProps:
1369
1483
  result = self._values.get("accelerators")
1370
1484
  return typing.cast(typing.Optional[builtins.str], result)
1371
1485
 
1486
+ @builtins.property
1487
+ def container_registry_map(
1488
+ self,
1489
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.ContainerRegistryMapProperty"]]:
1490
+ '''Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.
1491
+
1492
+ For more information, see `Container images <https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html>`_ in the *AWS HealthOmics User Guide* .
1493
+
1494
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html#cfn-omics-workflowversion-containerregistrymap
1495
+ '''
1496
+ result = self._values.get("container_registry_map")
1497
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.ContainerRegistryMapProperty"]], result)
1498
+
1499
+ @builtins.property
1500
+ def container_registry_map_uri(self) -> typing.Optional[builtins.str]:
1501
+ '''
1502
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html#cfn-omics-workflowversion-containerregistrymapuri
1503
+ '''
1504
+ result = self._values.get("container_registry_map_uri")
1505
+ return typing.cast(typing.Optional[builtins.str], result)
1506
+
1507
+ @builtins.property
1508
+ def definition_repository(
1509
+ self,
1510
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.DefinitionRepositoryProperty"]]:
1511
+ '''Contains information about a source code repository that hosts the workflow definition files.
1512
+
1513
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html#cfn-omics-workflowversion-definitionrepository
1514
+ '''
1515
+ result = self._values.get("definition_repository")
1516
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.DefinitionRepositoryProperty"]], result)
1517
+
1372
1518
  @builtins.property
1373
1519
  def definition_uri(self) -> typing.Optional[builtins.str]:
1374
1520
  '''
@@ -1412,6 +1558,48 @@ class CfnWorkflowVersionProps:
1412
1558
  result = self._values.get("parameter_template")
1413
1559
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.WorkflowParameterProperty"]]]], result)
1414
1560
 
1561
+ @builtins.property
1562
+ def parameter_template_path(self) -> typing.Optional[builtins.str]:
1563
+ '''Path to the primary workflow parameter template JSON file inside the repository.
1564
+
1565
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html#cfn-omics-workflowversion-parametertemplatepath
1566
+ '''
1567
+ result = self._values.get("parameter_template_path")
1568
+ return typing.cast(typing.Optional[builtins.str], result)
1569
+
1570
+ @builtins.property
1571
+ def readme_markdown(self) -> typing.Optional[builtins.str]:
1572
+ '''The markdown content for the workflow's README file.
1573
+
1574
+ This provides documentation and usage information for users of the workflow.
1575
+
1576
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html#cfn-omics-workflowversion-readmemarkdown
1577
+ '''
1578
+ result = self._values.get("readme_markdown")
1579
+ return typing.cast(typing.Optional[builtins.str], result)
1580
+
1581
+ @builtins.property
1582
+ def readme_path(self) -> typing.Optional[builtins.str]:
1583
+ '''The path to the workflow README markdown file within the repository.
1584
+
1585
+ This file provides documentation and usage information for the workflow. If not specified, the README.md file from the root directory of the repository will be used.
1586
+
1587
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html#cfn-omics-workflowversion-readmepath
1588
+ '''
1589
+ result = self._values.get("readme_path")
1590
+ return typing.cast(typing.Optional[builtins.str], result)
1591
+
1592
+ @builtins.property
1593
+ def readme_uri(self) -> typing.Optional[builtins.str]:
1594
+ '''The S3 URI of the README file for the workflow.
1595
+
1596
+ This file provides documentation and usage information for the workflow. The S3 URI must begin with s3://USER-OWNED-BUCKET/. The requester must have access to the S3 bucket and object. The max README content length is 500 KiB.
1597
+
1598
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html#cfn-omics-workflowversion-readmeuri
1599
+ '''
1600
+ result = self._values.get("readme_uri")
1601
+ return typing.cast(typing.Optional[builtins.str], result)
1602
+
1415
1603
  @builtins.property
1416
1604
  def storage_capacity(self) -> typing.Optional[jsii.Number]:
1417
1605
  '''
@@ -2191,6 +2379,27 @@ class CfnAnnotationStore(
2191
2379
 
2192
2380
  jsii.create(self.__class__, self, [scope, id, props])
2193
2381
 
2382
+ @jsii.member(jsii_name="fromAnnotationStoreName")
2383
+ @builtins.classmethod
2384
+ def from_annotation_store_name(
2385
+ cls,
2386
+ scope: _constructs_77d1e7e8.Construct,
2387
+ id: builtins.str,
2388
+ annotation_store_name: builtins.str,
2389
+ ) -> IAnnotationStoreRef:
2390
+ '''Creates a new IAnnotationStoreRef from a annotationStoreName.
2391
+
2392
+ :param scope: -
2393
+ :param id: -
2394
+ :param annotation_store_name: -
2395
+ '''
2396
+ if __debug__:
2397
+ type_hints = typing.get_type_hints(_typecheckingstub__ea8d23b9f77f5d9216bba34b2f07ff06220a6053227128a855b380a90746d1fe)
2398
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
2399
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
2400
+ check_type(argname="argument annotation_store_name", value=annotation_store_name, expected_type=type_hints["annotation_store_name"])
2401
+ return typing.cast(IAnnotationStoreRef, jsii.sinvoke(cls, "fromAnnotationStoreName", [scope, id, annotation_store_name]))
2402
+
2194
2403
  @jsii.member(jsii_name="inspect")
2195
2404
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
2196
2405
  '''Examines the CloudFormation resource and discloses attributes.
@@ -2760,6 +2969,48 @@ class CfnReferenceStore(
2760
2969
 
2761
2970
  jsii.create(self.__class__, self, [scope, id, props])
2762
2971
 
2972
+ @jsii.member(jsii_name="fromReferenceStoreArn")
2973
+ @builtins.classmethod
2974
+ def from_reference_store_arn(
2975
+ cls,
2976
+ scope: _constructs_77d1e7e8.Construct,
2977
+ id: builtins.str,
2978
+ arn: builtins.str,
2979
+ ) -> IReferenceStoreRef:
2980
+ '''Creates a new IReferenceStoreRef from an ARN.
2981
+
2982
+ :param scope: -
2983
+ :param id: -
2984
+ :param arn: -
2985
+ '''
2986
+ if __debug__:
2987
+ type_hints = typing.get_type_hints(_typecheckingstub__03eab96b33743423157434263c495ecf4bb597bb49fcadef0690e503e3540689)
2988
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
2989
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
2990
+ check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
2991
+ return typing.cast(IReferenceStoreRef, jsii.sinvoke(cls, "fromReferenceStoreArn", [scope, id, arn]))
2992
+
2993
+ @jsii.member(jsii_name="fromReferenceStoreId")
2994
+ @builtins.classmethod
2995
+ def from_reference_store_id(
2996
+ cls,
2997
+ scope: _constructs_77d1e7e8.Construct,
2998
+ id: builtins.str,
2999
+ reference_store_id: builtins.str,
3000
+ ) -> IReferenceStoreRef:
3001
+ '''Creates a new IReferenceStoreRef from a referenceStoreId.
3002
+
3003
+ :param scope: -
3004
+ :param id: -
3005
+ :param reference_store_id: -
3006
+ '''
3007
+ if __debug__:
3008
+ type_hints = typing.get_type_hints(_typecheckingstub__7d3a144262ad49c5d6ecb97bcdeda753c5514368bac2ab437b403dd5ecbff176)
3009
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3010
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3011
+ check_type(argname="argument reference_store_id", value=reference_store_id, expected_type=type_hints["reference_store_id"])
3012
+ return typing.cast(IReferenceStoreRef, jsii.sinvoke(cls, "fromReferenceStoreId", [scope, id, reference_store_id]))
3013
+
2763
3014
  @jsii.member(jsii_name="inspect")
2764
3015
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
2765
3016
  '''Examines the CloudFormation resource and discloses attributes.
@@ -3281,6 +3532,48 @@ class CfnSequenceStore(
3281
3532
 
3282
3533
  jsii.create(self.__class__, self, [scope, id, props])
3283
3534
 
3535
+ @jsii.member(jsii_name="fromSequenceStoreArn")
3536
+ @builtins.classmethod
3537
+ def from_sequence_store_arn(
3538
+ cls,
3539
+ scope: _constructs_77d1e7e8.Construct,
3540
+ id: builtins.str,
3541
+ arn: builtins.str,
3542
+ ) -> ISequenceStoreRef:
3543
+ '''Creates a new ISequenceStoreRef from an ARN.
3544
+
3545
+ :param scope: -
3546
+ :param id: -
3547
+ :param arn: -
3548
+ '''
3549
+ if __debug__:
3550
+ type_hints = typing.get_type_hints(_typecheckingstub__d0401ce1b5169b8a6f265ee186bf5ea3e78a0a8a2b71e6256e2a1effe74e148d)
3551
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3552
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3553
+ check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
3554
+ return typing.cast(ISequenceStoreRef, jsii.sinvoke(cls, "fromSequenceStoreArn", [scope, id, arn]))
3555
+
3556
+ @jsii.member(jsii_name="fromSequenceStoreId")
3557
+ @builtins.classmethod
3558
+ def from_sequence_store_id(
3559
+ cls,
3560
+ scope: _constructs_77d1e7e8.Construct,
3561
+ id: builtins.str,
3562
+ sequence_store_id: builtins.str,
3563
+ ) -> ISequenceStoreRef:
3564
+ '''Creates a new ISequenceStoreRef from a sequenceStoreId.
3565
+
3566
+ :param scope: -
3567
+ :param id: -
3568
+ :param sequence_store_id: -
3569
+ '''
3570
+ if __debug__:
3571
+ type_hints = typing.get_type_hints(_typecheckingstub__939e1e0c5383ed843656a8c66c9eeac470cdb45344d2aa8c6353ab2273bb3618)
3572
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3573
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3574
+ check_type(argname="argument sequence_store_id", value=sequence_store_id, expected_type=type_hints["sequence_store_id"])
3575
+ return typing.cast(ISequenceStoreRef, jsii.sinvoke(cls, "fromSequenceStoreId", [scope, id, sequence_store_id]))
3576
+
3284
3577
  @jsii.member(jsii_name="inspect")
3285
3578
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
3286
3579
  '''Examines the CloudFormation resource and discloses attributes.
@@ -3674,6 +3967,27 @@ class CfnVariantStore(
3674
3967
 
3675
3968
  jsii.create(self.__class__, self, [scope, id, props])
3676
3969
 
3970
+ @jsii.member(jsii_name="fromVariantStoreName")
3971
+ @builtins.classmethod
3972
+ def from_variant_store_name(
3973
+ cls,
3974
+ scope: _constructs_77d1e7e8.Construct,
3975
+ id: builtins.str,
3976
+ variant_store_name: builtins.str,
3977
+ ) -> IVariantStoreRef:
3978
+ '''Creates a new IVariantStoreRef from a variantStoreName.
3979
+
3980
+ :param scope: -
3981
+ :param id: -
3982
+ :param variant_store_name: -
3983
+ '''
3984
+ if __debug__:
3985
+ type_hints = typing.get_type_hints(_typecheckingstub__2f419b3d012ad3960d3cb7ca202c16de7716902d7708b8a5f93c80ecc69b0794)
3986
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3987
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3988
+ check_type(argname="argument variant_store_name", value=variant_store_name, expected_type=type_hints["variant_store_name"])
3989
+ return typing.cast(IVariantStoreRef, jsii.sinvoke(cls, "fromVariantStoreName", [scope, id, variant_store_name]))
3990
+
3677
3991
  @jsii.member(jsii_name="inspect")
3678
3992
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
3679
3993
  '''Examines the CloudFormation resource and discloses attributes.
@@ -3996,10 +4310,11 @@ class CfnWorkflow(
3996
4310
  ):
3997
4311
  '''Creates a private workflow. Before you create a private workflow, you must create and configure these required resources:.
3998
4312
 
3999
- - *Workflow definition files* : Define your workflow in one or more workflow definition files, written in WDL, Nextflow, or CWL. The workflow definition specifies the inputs and outputs for runs that use the workflow. It also includes specifications for the runs and run tasks for your workflow, including compute and memory requirements. The workflow definition file must be in .zip format.
4000
- - (Optional) *Parameter template* : You can create a parameter template file that defines the run parameters, or AWS HealthOmics can generate the parameter template for you.
4001
- - *ECR container images* : Create container images for the workflow in a private ECR repository, or synchronize images from a supported upstream registry with your Amazon ECR private repository.
4002
- - (Optional) *Sentieon licenses* : Request a Sentieon license if using the Sentieon software in a private workflow.
4313
+ - *Workflow definition file:* A workflow definition file written in WDL, Nextflow, or CWL. The workflow definition specifies the inputs and outputs for runs that use the workflow. It also includes specifications for the runs and run tasks for your workflow, including compute and memory requirements. The workflow definition file must be in ``.zip`` format. For more information, see `Workflow definition files <https://docs.aws.amazon.com/omics/latest/dev/workflow-definition-files.html>`_ in AWS HealthOmics.
4314
+ - You can use Amazon Q CLI to build and validate your workflow definition files in WDL, Nextflow, and CWL. For more information, see `Example prompts for Amazon Q CLI <https://docs.aws.amazon.com/omics/latest/dev/getting-started.html#omics-q-prompts>`_ and the `AWS HealthOmics Agentic generative AI tutorial <https://docs.aws.amazon.com/https://github.com/aws-samples/aws-healthomics-tutorials/tree/main/generative-ai>`_ on GitHub.
4315
+ - *(Optional) Parameter template file:* A parameter template file written in JSON. Create the file to define the run parameters, or AWS HealthOmics generates the parameter template for you. For more information, see `Parameter template files for HealthOmics workflows <https://docs.aws.amazon.com/omics/latest/dev/parameter-templates.html>`_ .
4316
+ - *ECR container images:* Create container images for the workflow in a private ECR repository, or synchronize images from a supported upstream registry with your Amazon ECR private repository.
4317
+ - *(Optional) Sentieon licenses:* Request a Sentieon license to use the Sentieon software in private workflows.
4003
4318
 
4004
4319
  For more information, see `Creating or updating a private workflow in AWS HealthOmics <https://docs.aws.amazon.com/omics/latest/dev/creating-private-workflows.html>`_ in the *AWS HealthOmics User Guide* .
4005
4320
 
@@ -4015,6 +4330,19 @@ class CfnWorkflow(
4015
4330
 
4016
4331
  cfn_workflow = omics.CfnWorkflow(self, "MyCfnWorkflow",
4017
4332
  accelerators="accelerators",
4333
+ container_registry_map=omics.CfnWorkflow.ContainerRegistryMapProperty(
4334
+ image_mappings=[omics.CfnWorkflow.ImageMappingProperty(
4335
+ destination_image="destinationImage",
4336
+ source_image="sourceImage"
4337
+ )],
4338
+ registry_mappings=[omics.CfnWorkflow.RegistryMappingProperty(
4339
+ ecr_account_id="ecrAccountId",
4340
+ ecr_repository_prefix="ecrRepositoryPrefix",
4341
+ upstream_registry_url="upstreamRegistryUrl",
4342
+ upstream_repository_prefix="upstreamRepositoryPrefix"
4343
+ )]
4344
+ ),
4345
+ container_registry_map_uri="containerRegistryMapUri",
4018
4346
  definition_repository=omics.CfnWorkflow.DefinitionRepositoryProperty(
4019
4347
  connection_arn="connectionArn",
4020
4348
  exclude_file_patterns=["excludeFilePatterns"],
@@ -4054,6 +4382,8 @@ class CfnWorkflow(
4054
4382
  id: builtins.str,
4055
4383
  *,
4056
4384
  accelerators: typing.Optional[builtins.str] = None,
4385
+ container_registry_map: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflow.ContainerRegistryMapProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4386
+ container_registry_map_uri: typing.Optional[builtins.str] = None,
4057
4387
  definition_repository: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflow.DefinitionRepositoryProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4058
4388
  definition_uri: typing.Optional[builtins.str] = None,
4059
4389
  description: typing.Optional[builtins.str] = None,
@@ -4074,6 +4404,8 @@ class CfnWorkflow(
4074
4404
  :param scope: Scope in which this resource is defined.
4075
4405
  :param id: Construct identifier for this resource (unique in its scope).
4076
4406
  :param accelerators:
4407
+ :param container_registry_map: Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see `Container images <https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html>`_ in the *AWS HealthOmics User Guide* .
4408
+ :param container_registry_map_uri:
4077
4409
  :param definition_repository: Contains information about a source code repository that hosts the workflow definition files.
4078
4410
  :param definition_uri: The URI of a definition for the workflow.
4079
4411
  :param description: The parameter's description.
@@ -4096,6 +4428,8 @@ class CfnWorkflow(
4096
4428
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
4097
4429
  props = CfnWorkflowProps(
4098
4430
  accelerators=accelerators,
4431
+ container_registry_map=container_registry_map,
4432
+ container_registry_map_uri=container_registry_map_uri,
4099
4433
  definition_repository=definition_repository,
4100
4434
  definition_uri=definition_uri,
4101
4435
  description=description,
@@ -4227,6 +4561,36 @@ class CfnWorkflow(
4227
4561
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4228
4562
  jsii.set(self, "accelerators", value) # pyright: ignore[reportArgumentType]
4229
4563
 
4564
+ @builtins.property
4565
+ @jsii.member(jsii_name="containerRegistryMap")
4566
+ def container_registry_map(
4567
+ self,
4568
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.ContainerRegistryMapProperty"]]:
4569
+ '''Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.'''
4570
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.ContainerRegistryMapProperty"]], jsii.get(self, "containerRegistryMap"))
4571
+
4572
+ @container_registry_map.setter
4573
+ def container_registry_map(
4574
+ self,
4575
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.ContainerRegistryMapProperty"]],
4576
+ ) -> None:
4577
+ if __debug__:
4578
+ type_hints = typing.get_type_hints(_typecheckingstub__d61321fc4a694dded60b8fceeeafd83e9ae3f79a0329bdba98cd03787f3daa3c)
4579
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4580
+ jsii.set(self, "containerRegistryMap", value) # pyright: ignore[reportArgumentType]
4581
+
4582
+ @builtins.property
4583
+ @jsii.member(jsii_name="containerRegistryMapUri")
4584
+ def container_registry_map_uri(self) -> typing.Optional[builtins.str]:
4585
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "containerRegistryMapUri"))
4586
+
4587
+ @container_registry_map_uri.setter
4588
+ def container_registry_map_uri(self, value: typing.Optional[builtins.str]) -> None:
4589
+ if __debug__:
4590
+ type_hints = typing.get_type_hints(_typecheckingstub__1466a9fdbdff03b1c7b3fd5e72f7386ca160db487d501609519ca1c35a987aca)
4591
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4592
+ jsii.set(self, "containerRegistryMapUri", value) # pyright: ignore[reportArgumentType]
4593
+
4230
4594
  @builtins.property
4231
4595
  @jsii.member(jsii_name="definitionRepository")
4232
4596
  def definition_repository(
@@ -4434,6 +4798,93 @@ class CfnWorkflow(
4434
4798
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4435
4799
  jsii.set(self, "workflowBucketOwnerId", value) # pyright: ignore[reportArgumentType]
4436
4800
 
4801
+ @jsii.data_type(
4802
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflow.ContainerRegistryMapProperty",
4803
+ jsii_struct_bases=[],
4804
+ name_mapping={
4805
+ "image_mappings": "imageMappings",
4806
+ "registry_mappings": "registryMappings",
4807
+ },
4808
+ )
4809
+ class ContainerRegistryMapProperty:
4810
+ def __init__(
4811
+ self,
4812
+ *,
4813
+ image_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflow.ImageMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4814
+ registry_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflow.RegistryMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4815
+ ) -> None:
4816
+ '''Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.
4817
+
4818
+ For more information, see `Container images <https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html>`_ in the *AWS HealthOmics User Guide* .
4819
+
4820
+ :param image_mappings: Image mappings specify path mappings between the ECR private repository and their corresponding external repositories.
4821
+ :param registry_mappings: Mapping that provides the ECR repository path where upstream container images are pulled and synchronized.
4822
+
4823
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-containerregistrymap.html
4824
+ :exampleMetadata: fixture=_generated
4825
+
4826
+ Example::
4827
+
4828
+ # The code below shows an example of how to instantiate this type.
4829
+ # The values are placeholders you should change.
4830
+ from aws_cdk import aws_omics as omics
4831
+
4832
+ container_registry_map_property = omics.CfnWorkflow.ContainerRegistryMapProperty(
4833
+ image_mappings=[omics.CfnWorkflow.ImageMappingProperty(
4834
+ destination_image="destinationImage",
4835
+ source_image="sourceImage"
4836
+ )],
4837
+ registry_mappings=[omics.CfnWorkflow.RegistryMappingProperty(
4838
+ ecr_account_id="ecrAccountId",
4839
+ ecr_repository_prefix="ecrRepositoryPrefix",
4840
+ upstream_registry_url="upstreamRegistryUrl",
4841
+ upstream_repository_prefix="upstreamRepositoryPrefix"
4842
+ )]
4843
+ )
4844
+ '''
4845
+ if __debug__:
4846
+ type_hints = typing.get_type_hints(_typecheckingstub__b93208b886c42793f6b22971c79ed50b456a125a28fedf2949548b0a03f82c3e)
4847
+ check_type(argname="argument image_mappings", value=image_mappings, expected_type=type_hints["image_mappings"])
4848
+ check_type(argname="argument registry_mappings", value=registry_mappings, expected_type=type_hints["registry_mappings"])
4849
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
4850
+ if image_mappings is not None:
4851
+ self._values["image_mappings"] = image_mappings
4852
+ if registry_mappings is not None:
4853
+ self._values["registry_mappings"] = registry_mappings
4854
+
4855
+ @builtins.property
4856
+ def image_mappings(
4857
+ self,
4858
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.ImageMappingProperty"]]]]:
4859
+ '''Image mappings specify path mappings between the ECR private repository and their corresponding external repositories.
4860
+
4861
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-containerregistrymap.html#cfn-omics-workflow-containerregistrymap-imagemappings
4862
+ '''
4863
+ result = self._values.get("image_mappings")
4864
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.ImageMappingProperty"]]]], result)
4865
+
4866
+ @builtins.property
4867
+ def registry_mappings(
4868
+ self,
4869
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.RegistryMappingProperty"]]]]:
4870
+ '''Mapping that provides the ECR repository path where upstream container images are pulled and synchronized.
4871
+
4872
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-containerregistrymap.html#cfn-omics-workflow-containerregistrymap-registrymappings
4873
+ '''
4874
+ result = self._values.get("registry_mappings")
4875
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkflow.RegistryMappingProperty"]]]], result)
4876
+
4877
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4878
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4879
+
4880
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4881
+ return not (rhs == self)
4882
+
4883
+ def __repr__(self) -> str:
4884
+ return "ContainerRegistryMapProperty(%s)" % ", ".join(
4885
+ k + "=" + repr(v) for k, v in self._values.items()
4886
+ )
4887
+
4437
4888
  @jsii.data_type(
4438
4889
  jsii_type="aws-cdk-lib.aws_omics.CfnWorkflow.DefinitionRepositoryProperty",
4439
4890
  jsii_struct_bases=[],
@@ -4547,23 +4998,28 @@ class CfnWorkflow(
4547
4998
  )
4548
4999
 
4549
5000
  @jsii.data_type(
4550
- jsii_type="aws-cdk-lib.aws_omics.CfnWorkflow.SourceReferenceProperty",
5001
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflow.ImageMappingProperty",
4551
5002
  jsii_struct_bases=[],
4552
- name_mapping={"type": "type", "value": "value"},
5003
+ name_mapping={
5004
+ "destination_image": "destinationImage",
5005
+ "source_image": "sourceImage",
5006
+ },
4553
5007
  )
4554
- class SourceReferenceProperty:
5008
+ class ImageMappingProperty:
4555
5009
  def __init__(
4556
5010
  self,
4557
5011
  *,
4558
- type: typing.Optional[builtins.str] = None,
4559
- value: typing.Optional[builtins.str] = None,
5012
+ destination_image: typing.Optional[builtins.str] = None,
5013
+ source_image: typing.Optional[builtins.str] = None,
4560
5014
  ) -> None:
4561
- '''Contains information about the source reference in a code repository, such as a branch, tag, or commit.
5015
+ '''Specifies image mappings that workflow tasks can use.
4562
5016
 
4563
- :param type: The type of source reference, such as branch, tag, or commit.
4564
- :param value: The value of the source reference, such as the branch name, tag name, or commit ID.
5017
+ For example, you can replace all the task references of a public image to use an equivalent image in your private ECR repository. You can use image mappings with upstream registries that don't support pull through cache. You need to manually synchronize the upstream registry with your private repository.
4565
5018
 
4566
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-sourcereference.html
5019
+ :param destination_image: Specifies the URI of the corresponding image in the private ECR registry.
5020
+ :param source_image: Specifies the URI of the source image in the upstream registry.
5021
+
5022
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-imagemapping.html
4567
5023
  :exampleMetadata: fixture=_generated
4568
5024
 
4569
5025
  Example::
@@ -4572,37 +5028,37 @@ class CfnWorkflow(
4572
5028
  # The values are placeholders you should change.
4573
5029
  from aws_cdk import aws_omics as omics
4574
5030
 
4575
- source_reference_property = omics.CfnWorkflow.SourceReferenceProperty(
4576
- type="type",
4577
- value="value"
5031
+ image_mapping_property = omics.CfnWorkflow.ImageMappingProperty(
5032
+ destination_image="destinationImage",
5033
+ source_image="sourceImage"
4578
5034
  )
4579
5035
  '''
4580
5036
  if __debug__:
4581
- type_hints = typing.get_type_hints(_typecheckingstub__f4e57d9f64919c2d451cd965846e1f5ee2aa3404611459632e4dd2699b4654d1)
4582
- check_type(argname="argument type", value=type, expected_type=type_hints["type"])
4583
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5037
+ type_hints = typing.get_type_hints(_typecheckingstub__98f85817eb366199f668581daf61aabd43de777e1bd4110572941bbd0bb03687)
5038
+ check_type(argname="argument destination_image", value=destination_image, expected_type=type_hints["destination_image"])
5039
+ check_type(argname="argument source_image", value=source_image, expected_type=type_hints["source_image"])
4584
5040
  self._values: typing.Dict[builtins.str, typing.Any] = {}
4585
- if type is not None:
4586
- self._values["type"] = type
4587
- if value is not None:
4588
- self._values["value"] = value
5041
+ if destination_image is not None:
5042
+ self._values["destination_image"] = destination_image
5043
+ if source_image is not None:
5044
+ self._values["source_image"] = source_image
4589
5045
 
4590
5046
  @builtins.property
4591
- def type(self) -> typing.Optional[builtins.str]:
4592
- '''The type of source reference, such as branch, tag, or commit.
5047
+ def destination_image(self) -> typing.Optional[builtins.str]:
5048
+ '''Specifies the URI of the corresponding image in the private ECR registry.
4593
5049
 
4594
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-sourcereference.html#cfn-omics-workflow-sourcereference-type
5050
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-imagemapping.html#cfn-omics-workflow-imagemapping-destinationimage
4595
5051
  '''
4596
- result = self._values.get("type")
5052
+ result = self._values.get("destination_image")
4597
5053
  return typing.cast(typing.Optional[builtins.str], result)
4598
5054
 
4599
5055
  @builtins.property
4600
- def value(self) -> typing.Optional[builtins.str]:
4601
- '''The value of the source reference, such as the branch name, tag name, or commit ID.
5056
+ def source_image(self) -> typing.Optional[builtins.str]:
5057
+ '''Specifies the URI of the source image in the upstream registry.
4602
5058
 
4603
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-sourcereference.html#cfn-omics-workflow-sourcereference-value
5059
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-imagemapping.html#cfn-omics-workflow-imagemapping-sourceimage
4604
5060
  '''
4605
- result = self._values.get("value")
5061
+ result = self._values.get("source_image")
4606
5062
  return typing.cast(typing.Optional[builtins.str], result)
4607
5063
 
4608
5064
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
@@ -4612,14 +5068,189 @@ class CfnWorkflow(
4612
5068
  return not (rhs == self)
4613
5069
 
4614
5070
  def __repr__(self) -> str:
4615
- return "SourceReferenceProperty(%s)" % ", ".join(
5071
+ return "ImageMappingProperty(%s)" % ", ".join(
4616
5072
  k + "=" + repr(v) for k, v in self._values.items()
4617
5073
  )
4618
5074
 
4619
5075
  @jsii.data_type(
4620
- jsii_type="aws-cdk-lib.aws_omics.CfnWorkflow.WorkflowParameterProperty",
5076
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflow.RegistryMappingProperty",
4621
5077
  jsii_struct_bases=[],
4622
- name_mapping={"description": "description", "optional": "optional"},
5078
+ name_mapping={
5079
+ "ecr_account_id": "ecrAccountId",
5080
+ "ecr_repository_prefix": "ecrRepositoryPrefix",
5081
+ "upstream_registry_url": "upstreamRegistryUrl",
5082
+ "upstream_repository_prefix": "upstreamRepositoryPrefix",
5083
+ },
5084
+ )
5085
+ class RegistryMappingProperty:
5086
+ def __init__(
5087
+ self,
5088
+ *,
5089
+ ecr_account_id: typing.Optional[builtins.str] = None,
5090
+ ecr_repository_prefix: typing.Optional[builtins.str] = None,
5091
+ upstream_registry_url: typing.Optional[builtins.str] = None,
5092
+ upstream_repository_prefix: typing.Optional[builtins.str] = None,
5093
+ ) -> None:
5094
+ '''If you are using the ECR pull through cache feature, the registry mapping maps between the ECR repository and the upstream registry where container images are pulled and synchronized.
5095
+
5096
+ :param ecr_account_id: Account ID of the account that owns the upstream container image.
5097
+ :param ecr_repository_prefix: The repository prefix to use in the ECR private repository.
5098
+ :param upstream_registry_url: The URI of the upstream registry.
5099
+ :param upstream_repository_prefix: The repository prefix of the corresponding repository in the upstream registry.
5100
+
5101
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-registrymapping.html
5102
+ :exampleMetadata: fixture=_generated
5103
+
5104
+ Example::
5105
+
5106
+ # The code below shows an example of how to instantiate this type.
5107
+ # The values are placeholders you should change.
5108
+ from aws_cdk import aws_omics as omics
5109
+
5110
+ registry_mapping_property = omics.CfnWorkflow.RegistryMappingProperty(
5111
+ ecr_account_id="ecrAccountId",
5112
+ ecr_repository_prefix="ecrRepositoryPrefix",
5113
+ upstream_registry_url="upstreamRegistryUrl",
5114
+ upstream_repository_prefix="upstreamRepositoryPrefix"
5115
+ )
5116
+ '''
5117
+ if __debug__:
5118
+ type_hints = typing.get_type_hints(_typecheckingstub__bf8725b8e4b50a33568267e8b0666f0c8b9e8a47c56098879cb0cdba27310fbf)
5119
+ check_type(argname="argument ecr_account_id", value=ecr_account_id, expected_type=type_hints["ecr_account_id"])
5120
+ check_type(argname="argument ecr_repository_prefix", value=ecr_repository_prefix, expected_type=type_hints["ecr_repository_prefix"])
5121
+ check_type(argname="argument upstream_registry_url", value=upstream_registry_url, expected_type=type_hints["upstream_registry_url"])
5122
+ check_type(argname="argument upstream_repository_prefix", value=upstream_repository_prefix, expected_type=type_hints["upstream_repository_prefix"])
5123
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
5124
+ if ecr_account_id is not None:
5125
+ self._values["ecr_account_id"] = ecr_account_id
5126
+ if ecr_repository_prefix is not None:
5127
+ self._values["ecr_repository_prefix"] = ecr_repository_prefix
5128
+ if upstream_registry_url is not None:
5129
+ self._values["upstream_registry_url"] = upstream_registry_url
5130
+ if upstream_repository_prefix is not None:
5131
+ self._values["upstream_repository_prefix"] = upstream_repository_prefix
5132
+
5133
+ @builtins.property
5134
+ def ecr_account_id(self) -> typing.Optional[builtins.str]:
5135
+ '''Account ID of the account that owns the upstream container image.
5136
+
5137
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-registrymapping.html#cfn-omics-workflow-registrymapping-ecraccountid
5138
+ '''
5139
+ result = self._values.get("ecr_account_id")
5140
+ return typing.cast(typing.Optional[builtins.str], result)
5141
+
5142
+ @builtins.property
5143
+ def ecr_repository_prefix(self) -> typing.Optional[builtins.str]:
5144
+ '''The repository prefix to use in the ECR private repository.
5145
+
5146
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-registrymapping.html#cfn-omics-workflow-registrymapping-ecrrepositoryprefix
5147
+ '''
5148
+ result = self._values.get("ecr_repository_prefix")
5149
+ return typing.cast(typing.Optional[builtins.str], result)
5150
+
5151
+ @builtins.property
5152
+ def upstream_registry_url(self) -> typing.Optional[builtins.str]:
5153
+ '''The URI of the upstream registry.
5154
+
5155
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-registrymapping.html#cfn-omics-workflow-registrymapping-upstreamregistryurl
5156
+ '''
5157
+ result = self._values.get("upstream_registry_url")
5158
+ return typing.cast(typing.Optional[builtins.str], result)
5159
+
5160
+ @builtins.property
5161
+ def upstream_repository_prefix(self) -> typing.Optional[builtins.str]:
5162
+ '''The repository prefix of the corresponding repository in the upstream registry.
5163
+
5164
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-registrymapping.html#cfn-omics-workflow-registrymapping-upstreamrepositoryprefix
5165
+ '''
5166
+ result = self._values.get("upstream_repository_prefix")
5167
+ return typing.cast(typing.Optional[builtins.str], result)
5168
+
5169
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5170
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5171
+
5172
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5173
+ return not (rhs == self)
5174
+
5175
+ def __repr__(self) -> str:
5176
+ return "RegistryMappingProperty(%s)" % ", ".join(
5177
+ k + "=" + repr(v) for k, v in self._values.items()
5178
+ )
5179
+
5180
+ @jsii.data_type(
5181
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflow.SourceReferenceProperty",
5182
+ jsii_struct_bases=[],
5183
+ name_mapping={"type": "type", "value": "value"},
5184
+ )
5185
+ class SourceReferenceProperty:
5186
+ def __init__(
5187
+ self,
5188
+ *,
5189
+ type: typing.Optional[builtins.str] = None,
5190
+ value: typing.Optional[builtins.str] = None,
5191
+ ) -> None:
5192
+ '''Contains information about the source reference in a code repository, such as a branch, tag, or commit.
5193
+
5194
+ :param type: The type of source reference, such as branch, tag, or commit.
5195
+ :param value: The value of the source reference, such as the branch name, tag name, or commit ID.
5196
+
5197
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-sourcereference.html
5198
+ :exampleMetadata: fixture=_generated
5199
+
5200
+ Example::
5201
+
5202
+ # The code below shows an example of how to instantiate this type.
5203
+ # The values are placeholders you should change.
5204
+ from aws_cdk import aws_omics as omics
5205
+
5206
+ source_reference_property = omics.CfnWorkflow.SourceReferenceProperty(
5207
+ type="type",
5208
+ value="value"
5209
+ )
5210
+ '''
5211
+ if __debug__:
5212
+ type_hints = typing.get_type_hints(_typecheckingstub__f4e57d9f64919c2d451cd965846e1f5ee2aa3404611459632e4dd2699b4654d1)
5213
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
5214
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5215
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
5216
+ if type is not None:
5217
+ self._values["type"] = type
5218
+ if value is not None:
5219
+ self._values["value"] = value
5220
+
5221
+ @builtins.property
5222
+ def type(self) -> typing.Optional[builtins.str]:
5223
+ '''The type of source reference, such as branch, tag, or commit.
5224
+
5225
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-sourcereference.html#cfn-omics-workflow-sourcereference-type
5226
+ '''
5227
+ result = self._values.get("type")
5228
+ return typing.cast(typing.Optional[builtins.str], result)
5229
+
5230
+ @builtins.property
5231
+ def value(self) -> typing.Optional[builtins.str]:
5232
+ '''The value of the source reference, such as the branch name, tag name, or commit ID.
5233
+
5234
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflow-sourcereference.html#cfn-omics-workflow-sourcereference-value
5235
+ '''
5236
+ result = self._values.get("value")
5237
+ return typing.cast(typing.Optional[builtins.str], result)
5238
+
5239
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5240
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5241
+
5242
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5243
+ return not (rhs == self)
5244
+
5245
+ def __repr__(self) -> str:
5246
+ return "SourceReferenceProperty(%s)" % ", ".join(
5247
+ k + "=" + repr(v) for k, v in self._values.items()
5248
+ )
5249
+
5250
+ @jsii.data_type(
5251
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflow.WorkflowParameterProperty",
5252
+ jsii_struct_bases=[],
5253
+ name_mapping={"description": "description", "optional": "optional"},
4623
5254
  )
4624
5255
  class WorkflowParameterProperty:
4625
5256
  def __init__(
@@ -4722,6 +5353,28 @@ class CfnWorkflowVersion(
4722
5353
 
4723
5354
  # the properties below are optional
4724
5355
  accelerators="accelerators",
5356
+ container_registry_map=omics.CfnWorkflowVersion.ContainerRegistryMapProperty(
5357
+ image_mappings=[omics.CfnWorkflowVersion.ImageMappingProperty(
5358
+ destination_image="destinationImage",
5359
+ source_image="sourceImage"
5360
+ )],
5361
+ registry_mappings=[omics.CfnWorkflowVersion.RegistryMappingProperty(
5362
+ ecr_account_id="ecrAccountId",
5363
+ ecr_repository_prefix="ecrRepositoryPrefix",
5364
+ upstream_registry_url="upstreamRegistryUrl",
5365
+ upstream_repository_prefix="upstreamRepositoryPrefix"
5366
+ )]
5367
+ ),
5368
+ container_registry_map_uri="containerRegistryMapUri",
5369
+ definition_repository=omics.CfnWorkflowVersion.DefinitionRepositoryProperty(
5370
+ connection_arn="connectionArn",
5371
+ exclude_file_patterns=["excludeFilePatterns"],
5372
+ full_repository_id="fullRepositoryId",
5373
+ source_reference=omics.CfnWorkflowVersion.SourceReferenceProperty(
5374
+ type="type",
5375
+ value="value"
5376
+ )
5377
+ ),
4725
5378
  definition_uri="definitionUri",
4726
5379
  description="description",
4727
5380
  engine="engine",
@@ -4732,6 +5385,10 @@ class CfnWorkflowVersion(
4732
5385
  optional=False
4733
5386
  )
4734
5387
  },
5388
+ parameter_template_path="parameterTemplatePath",
5389
+ readme_markdown="readmeMarkdown",
5390
+ readme_path="readmePath",
5391
+ readme_uri="readmeUri",
4735
5392
  storage_capacity=123,
4736
5393
  storage_type="storageType",
4737
5394
  tags={
@@ -4749,11 +5406,18 @@ class CfnWorkflowVersion(
4749
5406
  version_name: builtins.str,
4750
5407
  workflow_id: builtins.str,
4751
5408
  accelerators: typing.Optional[builtins.str] = None,
5409
+ container_registry_map: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.ContainerRegistryMapProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5410
+ container_registry_map_uri: typing.Optional[builtins.str] = None,
5411
+ definition_repository: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.DefinitionRepositoryProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4752
5412
  definition_uri: typing.Optional[builtins.str] = None,
4753
5413
  description: typing.Optional[builtins.str] = None,
4754
5414
  engine: typing.Optional[builtins.str] = None,
4755
5415
  main: typing.Optional[builtins.str] = None,
4756
5416
  parameter_template: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.WorkflowParameterProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
5417
+ parameter_template_path: typing.Optional[builtins.str] = None,
5418
+ readme_markdown: typing.Optional[builtins.str] = None,
5419
+ readme_path: typing.Optional[builtins.str] = None,
5420
+ readme_uri: typing.Optional[builtins.str] = None,
4757
5421
  storage_capacity: typing.Optional[jsii.Number] = None,
4758
5422
  storage_type: typing.Optional[builtins.str] = None,
4759
5423
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
@@ -4765,11 +5429,18 @@ class CfnWorkflowVersion(
4765
5429
  :param version_name: The name of the workflow version.
4766
5430
  :param workflow_id: The workflow's ID.
4767
5431
  :param accelerators:
5432
+ :param container_registry_map: Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see `Container images <https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html>`_ in the *AWS HealthOmics User Guide* .
5433
+ :param container_registry_map_uri:
5434
+ :param definition_repository: Contains information about a source code repository that hosts the workflow definition files.
4768
5435
  :param definition_uri:
4769
5436
  :param description: The description of the workflow version.
4770
5437
  :param engine:
4771
5438
  :param main:
4772
5439
  :param parameter_template:
5440
+ :param parameter_template_path: Path to the primary workflow parameter template JSON file inside the repository.
5441
+ :param readme_markdown: The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.
5442
+ :param readme_path: The path to the workflow README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the README.md file from the root directory of the repository will be used.
5443
+ :param readme_uri: The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. The S3 URI must begin with s3://USER-OWNED-BUCKET/. The requester must have access to the S3 bucket and object. The max README content length is 500 KiB.
4773
5444
  :param storage_capacity:
4774
5445
  :param storage_type:
4775
5446
  :param tags: A map of resource tags.
@@ -4783,11 +5454,18 @@ class CfnWorkflowVersion(
4783
5454
  version_name=version_name,
4784
5455
  workflow_id=workflow_id,
4785
5456
  accelerators=accelerators,
5457
+ container_registry_map=container_registry_map,
5458
+ container_registry_map_uri=container_registry_map_uri,
5459
+ definition_repository=definition_repository,
4786
5460
  definition_uri=definition_uri,
4787
5461
  description=description,
4788
5462
  engine=engine,
4789
5463
  main=main,
4790
5464
  parameter_template=parameter_template,
5465
+ parameter_template_path=parameter_template_path,
5466
+ readme_markdown=readme_markdown,
5467
+ readme_path=readme_path,
5468
+ readme_uri=readme_uri,
4791
5469
  storage_capacity=storage_capacity,
4792
5470
  storage_type=storage_type,
4793
5471
  tags=tags,
@@ -4925,6 +5603,54 @@ class CfnWorkflowVersion(
4925
5603
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4926
5604
  jsii.set(self, "accelerators", value) # pyright: ignore[reportArgumentType]
4927
5605
 
5606
+ @builtins.property
5607
+ @jsii.member(jsii_name="containerRegistryMap")
5608
+ def container_registry_map(
5609
+ self,
5610
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.ContainerRegistryMapProperty"]]:
5611
+ '''Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.'''
5612
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.ContainerRegistryMapProperty"]], jsii.get(self, "containerRegistryMap"))
5613
+
5614
+ @container_registry_map.setter
5615
+ def container_registry_map(
5616
+ self,
5617
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.ContainerRegistryMapProperty"]],
5618
+ ) -> None:
5619
+ if __debug__:
5620
+ type_hints = typing.get_type_hints(_typecheckingstub__46a9bb90d987260f113e2b2c7bfe0d00e76229ce25afbfccf1a386b82f85e224)
5621
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5622
+ jsii.set(self, "containerRegistryMap", value) # pyright: ignore[reportArgumentType]
5623
+
5624
+ @builtins.property
5625
+ @jsii.member(jsii_name="containerRegistryMapUri")
5626
+ def container_registry_map_uri(self) -> typing.Optional[builtins.str]:
5627
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "containerRegistryMapUri"))
5628
+
5629
+ @container_registry_map_uri.setter
5630
+ def container_registry_map_uri(self, value: typing.Optional[builtins.str]) -> None:
5631
+ if __debug__:
5632
+ type_hints = typing.get_type_hints(_typecheckingstub__65acb20ad98b8b631169a3db99c88bd3662a7e2bd947577b5265d087e4b8362d)
5633
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5634
+ jsii.set(self, "containerRegistryMapUri", value) # pyright: ignore[reportArgumentType]
5635
+
5636
+ @builtins.property
5637
+ @jsii.member(jsii_name="definitionRepository")
5638
+ def definition_repository(
5639
+ self,
5640
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.DefinitionRepositoryProperty"]]:
5641
+ '''Contains information about a source code repository that hosts the workflow definition files.'''
5642
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.DefinitionRepositoryProperty"]], jsii.get(self, "definitionRepository"))
5643
+
5644
+ @definition_repository.setter
5645
+ def definition_repository(
5646
+ self,
5647
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.DefinitionRepositoryProperty"]],
5648
+ ) -> None:
5649
+ if __debug__:
5650
+ type_hints = typing.get_type_hints(_typecheckingstub__76f88fb7dbfba72f92fec4a64878a9e7fdd595353c2e76e5f675a9f318a5b5e6)
5651
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5652
+ jsii.set(self, "definitionRepository", value) # pyright: ignore[reportArgumentType]
5653
+
4928
5654
  @builtins.property
4929
5655
  @jsii.member(jsii_name="definitionUri")
4930
5656
  def definition_uri(self) -> typing.Optional[builtins.str]:
@@ -4962,86 +5688,587 @@ class CfnWorkflowVersion(
4962
5688
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4963
5689
  jsii.set(self, "engine", value) # pyright: ignore[reportArgumentType]
4964
5690
 
4965
- @builtins.property
4966
- @jsii.member(jsii_name="main")
4967
- def main(self) -> typing.Optional[builtins.str]:
4968
- return typing.cast(typing.Optional[builtins.str], jsii.get(self, "main"))
5691
+ @builtins.property
5692
+ @jsii.member(jsii_name="main")
5693
+ def main(self) -> typing.Optional[builtins.str]:
5694
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "main"))
5695
+
5696
+ @main.setter
5697
+ def main(self, value: typing.Optional[builtins.str]) -> None:
5698
+ if __debug__:
5699
+ type_hints = typing.get_type_hints(_typecheckingstub__bb201e46965fe4b385e0e52f84a505023c34c0c16c33aea7e75a09209c34d1af)
5700
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5701
+ jsii.set(self, "main", value) # pyright: ignore[reportArgumentType]
5702
+
5703
+ @builtins.property
5704
+ @jsii.member(jsii_name="parameterTemplate")
5705
+ def parameter_template(
5706
+ self,
5707
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.WorkflowParameterProperty"]]]]:
5708
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.WorkflowParameterProperty"]]]], jsii.get(self, "parameterTemplate"))
5709
+
5710
+ @parameter_template.setter
5711
+ def parameter_template(
5712
+ self,
5713
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.WorkflowParameterProperty"]]]],
5714
+ ) -> None:
5715
+ if __debug__:
5716
+ type_hints = typing.get_type_hints(_typecheckingstub__909f80095cd6043c196e37a387a0f1f32bfcddcd8f9a81c5e8f5ac8b4874faa9)
5717
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5718
+ jsii.set(self, "parameterTemplate", value) # pyright: ignore[reportArgumentType]
5719
+
5720
+ @builtins.property
5721
+ @jsii.member(jsii_name="parameterTemplatePath")
5722
+ def parameter_template_path(self) -> typing.Optional[builtins.str]:
5723
+ '''Path to the primary workflow parameter template JSON file inside the repository.'''
5724
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "parameterTemplatePath"))
5725
+
5726
+ @parameter_template_path.setter
5727
+ def parameter_template_path(self, value: typing.Optional[builtins.str]) -> None:
5728
+ if __debug__:
5729
+ type_hints = typing.get_type_hints(_typecheckingstub__1012e58717a3baf054312a40aba36847bbd98b702310ea8aff265f26caeab471)
5730
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5731
+ jsii.set(self, "parameterTemplatePath", value) # pyright: ignore[reportArgumentType]
5732
+
5733
+ @builtins.property
5734
+ @jsii.member(jsii_name="readmeMarkdown")
5735
+ def readme_markdown(self) -> typing.Optional[builtins.str]:
5736
+ '''The markdown content for the workflow's README file.'''
5737
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "readmeMarkdown"))
5738
+
5739
+ @readme_markdown.setter
5740
+ def readme_markdown(self, value: typing.Optional[builtins.str]) -> None:
5741
+ if __debug__:
5742
+ type_hints = typing.get_type_hints(_typecheckingstub__3cea66896cfd0dfa12a8b3d0b44794207352c9c78eb70c50e46466b4eea34898)
5743
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5744
+ jsii.set(self, "readmeMarkdown", value) # pyright: ignore[reportArgumentType]
5745
+
5746
+ @builtins.property
5747
+ @jsii.member(jsii_name="readmePath")
5748
+ def readme_path(self) -> typing.Optional[builtins.str]:
5749
+ '''The path to the workflow README markdown file within the repository.'''
5750
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "readmePath"))
5751
+
5752
+ @readme_path.setter
5753
+ def readme_path(self, value: typing.Optional[builtins.str]) -> None:
5754
+ if __debug__:
5755
+ type_hints = typing.get_type_hints(_typecheckingstub__40cad564b15c28b2c112ad54de257f81d4d31fdfe311871657ae5bd714eb9ee6)
5756
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5757
+ jsii.set(self, "readmePath", value) # pyright: ignore[reportArgumentType]
5758
+
5759
+ @builtins.property
5760
+ @jsii.member(jsii_name="readmeUri")
5761
+ def readme_uri(self) -> typing.Optional[builtins.str]:
5762
+ '''The S3 URI of the README file for the workflow.'''
5763
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "readmeUri"))
5764
+
5765
+ @readme_uri.setter
5766
+ def readme_uri(self, value: typing.Optional[builtins.str]) -> None:
5767
+ if __debug__:
5768
+ type_hints = typing.get_type_hints(_typecheckingstub__abe09bb1e32d84773aaf309a744224900a63bf483fa24970e875c0b0a2f1b1cb)
5769
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5770
+ jsii.set(self, "readmeUri", value) # pyright: ignore[reportArgumentType]
5771
+
5772
+ @builtins.property
5773
+ @jsii.member(jsii_name="storageCapacity")
5774
+ def storage_capacity(self) -> typing.Optional[jsii.Number]:
5775
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "storageCapacity"))
5776
+
5777
+ @storage_capacity.setter
5778
+ def storage_capacity(self, value: typing.Optional[jsii.Number]) -> None:
5779
+ if __debug__:
5780
+ type_hints = typing.get_type_hints(_typecheckingstub__ba60096260fa288ca386a5b2841efb8fa9833ea893400efeba006766f392a7b7)
5781
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5782
+ jsii.set(self, "storageCapacity", value) # pyright: ignore[reportArgumentType]
5783
+
5784
+ @builtins.property
5785
+ @jsii.member(jsii_name="storageType")
5786
+ def storage_type(self) -> typing.Optional[builtins.str]:
5787
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "storageType"))
5788
+
5789
+ @storage_type.setter
5790
+ def storage_type(self, value: typing.Optional[builtins.str]) -> None:
5791
+ if __debug__:
5792
+ type_hints = typing.get_type_hints(_typecheckingstub__50ce9715f4efa14e458d6207fae79f6b0ebc36a3bf74435e024116d9f8060ca2)
5793
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5794
+ jsii.set(self, "storageType", value) # pyright: ignore[reportArgumentType]
5795
+
5796
+ @builtins.property
5797
+ @jsii.member(jsii_name="tags")
5798
+ def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
5799
+ '''A map of resource tags.'''
5800
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], jsii.get(self, "tags"))
5801
+
5802
+ @tags.setter
5803
+ def tags(
5804
+ self,
5805
+ value: typing.Optional[typing.Mapping[builtins.str, builtins.str]],
5806
+ ) -> None:
5807
+ if __debug__:
5808
+ type_hints = typing.get_type_hints(_typecheckingstub__bfbcbf729952f991d2243244c21c373b5bf1a3947ed2973ab1664037cdf636f8)
5809
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5810
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
5811
+
5812
+ @builtins.property
5813
+ @jsii.member(jsii_name="workflowBucketOwnerId")
5814
+ def workflow_bucket_owner_id(self) -> typing.Optional[builtins.str]:
5815
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "workflowBucketOwnerId"))
5816
+
5817
+ @workflow_bucket_owner_id.setter
5818
+ def workflow_bucket_owner_id(self, value: typing.Optional[builtins.str]) -> None:
5819
+ if __debug__:
5820
+ type_hints = typing.get_type_hints(_typecheckingstub__bc6b06c168132bf54bf849b9d49774230af45a049e67f52bc48dd0220c18775d)
5821
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5822
+ jsii.set(self, "workflowBucketOwnerId", value) # pyright: ignore[reportArgumentType]
5823
+
5824
+ @jsii.data_type(
5825
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflowVersion.ContainerRegistryMapProperty",
5826
+ jsii_struct_bases=[],
5827
+ name_mapping={
5828
+ "image_mappings": "imageMappings",
5829
+ "registry_mappings": "registryMappings",
5830
+ },
5831
+ )
5832
+ class ContainerRegistryMapProperty:
5833
+ def __init__(
5834
+ self,
5835
+ *,
5836
+ image_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.ImageMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
5837
+ registry_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.RegistryMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
5838
+ ) -> None:
5839
+ '''Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries.
5840
+
5841
+ For more information, see `Container images <https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html>`_ in the *AWS HealthOmics User Guide* .
5842
+
5843
+ :param image_mappings: Image mappings specify path mappings between the ECR private repository and their corresponding external repositories.
5844
+ :param registry_mappings: Mapping that provides the ECR repository path where upstream container images are pulled and synchronized.
5845
+
5846
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-containerregistrymap.html
5847
+ :exampleMetadata: fixture=_generated
5848
+
5849
+ Example::
5850
+
5851
+ # The code below shows an example of how to instantiate this type.
5852
+ # The values are placeholders you should change.
5853
+ from aws_cdk import aws_omics as omics
5854
+
5855
+ container_registry_map_property = omics.CfnWorkflowVersion.ContainerRegistryMapProperty(
5856
+ image_mappings=[omics.CfnWorkflowVersion.ImageMappingProperty(
5857
+ destination_image="destinationImage",
5858
+ source_image="sourceImage"
5859
+ )],
5860
+ registry_mappings=[omics.CfnWorkflowVersion.RegistryMappingProperty(
5861
+ ecr_account_id="ecrAccountId",
5862
+ ecr_repository_prefix="ecrRepositoryPrefix",
5863
+ upstream_registry_url="upstreamRegistryUrl",
5864
+ upstream_repository_prefix="upstreamRepositoryPrefix"
5865
+ )]
5866
+ )
5867
+ '''
5868
+ if __debug__:
5869
+ type_hints = typing.get_type_hints(_typecheckingstub__32eb3bf30b3d01f44e56bdf643f62609b8cbc84d473cb19e3564543b645033d4)
5870
+ check_type(argname="argument image_mappings", value=image_mappings, expected_type=type_hints["image_mappings"])
5871
+ check_type(argname="argument registry_mappings", value=registry_mappings, expected_type=type_hints["registry_mappings"])
5872
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
5873
+ if image_mappings is not None:
5874
+ self._values["image_mappings"] = image_mappings
5875
+ if registry_mappings is not None:
5876
+ self._values["registry_mappings"] = registry_mappings
5877
+
5878
+ @builtins.property
5879
+ def image_mappings(
5880
+ self,
5881
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.ImageMappingProperty"]]]]:
5882
+ '''Image mappings specify path mappings between the ECR private repository and their corresponding external repositories.
5883
+
5884
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-containerregistrymap.html#cfn-omics-workflowversion-containerregistrymap-imagemappings
5885
+ '''
5886
+ result = self._values.get("image_mappings")
5887
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.ImageMappingProperty"]]]], result)
5888
+
5889
+ @builtins.property
5890
+ def registry_mappings(
5891
+ self,
5892
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.RegistryMappingProperty"]]]]:
5893
+ '''Mapping that provides the ECR repository path where upstream container images are pulled and synchronized.
5894
+
5895
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-containerregistrymap.html#cfn-omics-workflowversion-containerregistrymap-registrymappings
5896
+ '''
5897
+ result = self._values.get("registry_mappings")
5898
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.RegistryMappingProperty"]]]], result)
5899
+
5900
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5901
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5902
+
5903
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5904
+ return not (rhs == self)
5905
+
5906
+ def __repr__(self) -> str:
5907
+ return "ContainerRegistryMapProperty(%s)" % ", ".join(
5908
+ k + "=" + repr(v) for k, v in self._values.items()
5909
+ )
5910
+
5911
+ @jsii.data_type(
5912
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflowVersion.DefinitionRepositoryProperty",
5913
+ jsii_struct_bases=[],
5914
+ name_mapping={
5915
+ "connection_arn": "connectionArn",
5916
+ "exclude_file_patterns": "excludeFilePatterns",
5917
+ "full_repository_id": "fullRepositoryId",
5918
+ "source_reference": "sourceReference",
5919
+ },
5920
+ )
5921
+ class DefinitionRepositoryProperty:
5922
+ def __init__(
5923
+ self,
5924
+ *,
5925
+ connection_arn: typing.Optional[builtins.str] = None,
5926
+ exclude_file_patterns: typing.Optional[typing.Sequence[builtins.str]] = None,
5927
+ full_repository_id: typing.Optional[builtins.str] = None,
5928
+ source_reference: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWorkflowVersion.SourceReferenceProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5929
+ ) -> None:
5930
+ '''Contains information about a source code repository that hosts the workflow definition files.
5931
+
5932
+ :param connection_arn: The Amazon Resource Name (ARN) of the connection to the source code repository.
5933
+ :param exclude_file_patterns: A list of file patterns to exclude when retrieving the workflow definition from the repository.
5934
+ :param full_repository_id: The full repository identifier, including the repository owner and name. For example, 'repository-owner/repository-name'.
5935
+ :param source_reference: The source reference for the repository, such as a branch name, tag, or commit ID.
5936
+
5937
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-definitionrepository.html
5938
+ :exampleMetadata: fixture=_generated
5939
+
5940
+ Example::
5941
+
5942
+ # The code below shows an example of how to instantiate this type.
5943
+ # The values are placeholders you should change.
5944
+ from aws_cdk import aws_omics as omics
5945
+
5946
+ definition_repository_property = omics.CfnWorkflowVersion.DefinitionRepositoryProperty(
5947
+ connection_arn="connectionArn",
5948
+ exclude_file_patterns=["excludeFilePatterns"],
5949
+ full_repository_id="fullRepositoryId",
5950
+ source_reference=omics.CfnWorkflowVersion.SourceReferenceProperty(
5951
+ type="type",
5952
+ value="value"
5953
+ )
5954
+ )
5955
+ '''
5956
+ if __debug__:
5957
+ type_hints = typing.get_type_hints(_typecheckingstub__e0748aa0fb5a9a9d624696b0fc54ab2faf0941992918eb234ba6c3bb4a47aef5)
5958
+ check_type(argname="argument connection_arn", value=connection_arn, expected_type=type_hints["connection_arn"])
5959
+ check_type(argname="argument exclude_file_patterns", value=exclude_file_patterns, expected_type=type_hints["exclude_file_patterns"])
5960
+ check_type(argname="argument full_repository_id", value=full_repository_id, expected_type=type_hints["full_repository_id"])
5961
+ check_type(argname="argument source_reference", value=source_reference, expected_type=type_hints["source_reference"])
5962
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
5963
+ if connection_arn is not None:
5964
+ self._values["connection_arn"] = connection_arn
5965
+ if exclude_file_patterns is not None:
5966
+ self._values["exclude_file_patterns"] = exclude_file_patterns
5967
+ if full_repository_id is not None:
5968
+ self._values["full_repository_id"] = full_repository_id
5969
+ if source_reference is not None:
5970
+ self._values["source_reference"] = source_reference
5971
+
5972
+ @builtins.property
5973
+ def connection_arn(self) -> typing.Optional[builtins.str]:
5974
+ '''The Amazon Resource Name (ARN) of the connection to the source code repository.
5975
+
5976
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-definitionrepository.html#cfn-omics-workflowversion-definitionrepository-connectionarn
5977
+ '''
5978
+ result = self._values.get("connection_arn")
5979
+ return typing.cast(typing.Optional[builtins.str], result)
5980
+
5981
+ @builtins.property
5982
+ def exclude_file_patterns(self) -> typing.Optional[typing.List[builtins.str]]:
5983
+ '''A list of file patterns to exclude when retrieving the workflow definition from the repository.
5984
+
5985
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-definitionrepository.html#cfn-omics-workflowversion-definitionrepository-excludefilepatterns
5986
+ '''
5987
+ result = self._values.get("exclude_file_patterns")
5988
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
5989
+
5990
+ @builtins.property
5991
+ def full_repository_id(self) -> typing.Optional[builtins.str]:
5992
+ '''The full repository identifier, including the repository owner and name.
5993
+
5994
+ For example, 'repository-owner/repository-name'.
5995
+
5996
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-definitionrepository.html#cfn-omics-workflowversion-definitionrepository-fullrepositoryid
5997
+ '''
5998
+ result = self._values.get("full_repository_id")
5999
+ return typing.cast(typing.Optional[builtins.str], result)
6000
+
6001
+ @builtins.property
6002
+ def source_reference(
6003
+ self,
6004
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.SourceReferenceProperty"]]:
6005
+ '''The source reference for the repository, such as a branch name, tag, or commit ID.
6006
+
6007
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-definitionrepository.html#cfn-omics-workflowversion-definitionrepository-sourcereference
6008
+ '''
6009
+ result = self._values.get("source_reference")
6010
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.SourceReferenceProperty"]], result)
6011
+
6012
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6013
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6014
+
6015
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6016
+ return not (rhs == self)
6017
+
6018
+ def __repr__(self) -> str:
6019
+ return "DefinitionRepositoryProperty(%s)" % ", ".join(
6020
+ k + "=" + repr(v) for k, v in self._values.items()
6021
+ )
6022
+
6023
+ @jsii.data_type(
6024
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflowVersion.ImageMappingProperty",
6025
+ jsii_struct_bases=[],
6026
+ name_mapping={
6027
+ "destination_image": "destinationImage",
6028
+ "source_image": "sourceImage",
6029
+ },
6030
+ )
6031
+ class ImageMappingProperty:
6032
+ def __init__(
6033
+ self,
6034
+ *,
6035
+ destination_image: typing.Optional[builtins.str] = None,
6036
+ source_image: typing.Optional[builtins.str] = None,
6037
+ ) -> None:
6038
+ '''Specifies image mappings that workflow tasks can use.
6039
+
6040
+ For example, you can replace all the task references of a public image to use an equivalent image in your private ECR repository. You can use image mappings with upstream registries that don't support pull through cache. You need to manually synchronize the upstream registry with your private repository.
6041
+
6042
+ :param destination_image: Specifies the URI of the corresponding image in the private ECR registry.
6043
+ :param source_image: Specifies the URI of the source image in the upstream registry.
6044
+
6045
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-imagemapping.html
6046
+ :exampleMetadata: fixture=_generated
6047
+
6048
+ Example::
6049
+
6050
+ # The code below shows an example of how to instantiate this type.
6051
+ # The values are placeholders you should change.
6052
+ from aws_cdk import aws_omics as omics
6053
+
6054
+ image_mapping_property = omics.CfnWorkflowVersion.ImageMappingProperty(
6055
+ destination_image="destinationImage",
6056
+ source_image="sourceImage"
6057
+ )
6058
+ '''
6059
+ if __debug__:
6060
+ type_hints = typing.get_type_hints(_typecheckingstub__421f9ca400f5d5d6c3aa9a53dbe35757f3408b2b30be15794288deb51c48b293)
6061
+ check_type(argname="argument destination_image", value=destination_image, expected_type=type_hints["destination_image"])
6062
+ check_type(argname="argument source_image", value=source_image, expected_type=type_hints["source_image"])
6063
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
6064
+ if destination_image is not None:
6065
+ self._values["destination_image"] = destination_image
6066
+ if source_image is not None:
6067
+ self._values["source_image"] = source_image
6068
+
6069
+ @builtins.property
6070
+ def destination_image(self) -> typing.Optional[builtins.str]:
6071
+ '''Specifies the URI of the corresponding image in the private ECR registry.
6072
+
6073
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-imagemapping.html#cfn-omics-workflowversion-imagemapping-destinationimage
6074
+ '''
6075
+ result = self._values.get("destination_image")
6076
+ return typing.cast(typing.Optional[builtins.str], result)
6077
+
6078
+ @builtins.property
6079
+ def source_image(self) -> typing.Optional[builtins.str]:
6080
+ '''Specifies the URI of the source image in the upstream registry.
6081
+
6082
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-imagemapping.html#cfn-omics-workflowversion-imagemapping-sourceimage
6083
+ '''
6084
+ result = self._values.get("source_image")
6085
+ return typing.cast(typing.Optional[builtins.str], result)
6086
+
6087
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6088
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6089
+
6090
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6091
+ return not (rhs == self)
6092
+
6093
+ def __repr__(self) -> str:
6094
+ return "ImageMappingProperty(%s)" % ", ".join(
6095
+ k + "=" + repr(v) for k, v in self._values.items()
6096
+ )
6097
+
6098
+ @jsii.data_type(
6099
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflowVersion.RegistryMappingProperty",
6100
+ jsii_struct_bases=[],
6101
+ name_mapping={
6102
+ "ecr_account_id": "ecrAccountId",
6103
+ "ecr_repository_prefix": "ecrRepositoryPrefix",
6104
+ "upstream_registry_url": "upstreamRegistryUrl",
6105
+ "upstream_repository_prefix": "upstreamRepositoryPrefix",
6106
+ },
6107
+ )
6108
+ class RegistryMappingProperty:
6109
+ def __init__(
6110
+ self,
6111
+ *,
6112
+ ecr_account_id: typing.Optional[builtins.str] = None,
6113
+ ecr_repository_prefix: typing.Optional[builtins.str] = None,
6114
+ upstream_registry_url: typing.Optional[builtins.str] = None,
6115
+ upstream_repository_prefix: typing.Optional[builtins.str] = None,
6116
+ ) -> None:
6117
+ '''If you are using the ECR pull through cache feature, the registry mapping maps between the ECR repository and the upstream registry where container images are pulled and synchronized.
6118
+
6119
+ :param ecr_account_id: Account ID of the account that owns the upstream container image.
6120
+ :param ecr_repository_prefix: The repository prefix to use in the ECR private repository.
6121
+ :param upstream_registry_url: The URI of the upstream registry.
6122
+ :param upstream_repository_prefix: The repository prefix of the corresponding repository in the upstream registry.
6123
+
6124
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-registrymapping.html
6125
+ :exampleMetadata: fixture=_generated
6126
+
6127
+ Example::
6128
+
6129
+ # The code below shows an example of how to instantiate this type.
6130
+ # The values are placeholders you should change.
6131
+ from aws_cdk import aws_omics as omics
6132
+
6133
+ registry_mapping_property = omics.CfnWorkflowVersion.RegistryMappingProperty(
6134
+ ecr_account_id="ecrAccountId",
6135
+ ecr_repository_prefix="ecrRepositoryPrefix",
6136
+ upstream_registry_url="upstreamRegistryUrl",
6137
+ upstream_repository_prefix="upstreamRepositoryPrefix"
6138
+ )
6139
+ '''
6140
+ if __debug__:
6141
+ type_hints = typing.get_type_hints(_typecheckingstub__9eab95380e8258bf7a10a1ed8080d039134ac7daf1f5f0c979d28cb4f5c4f426)
6142
+ check_type(argname="argument ecr_account_id", value=ecr_account_id, expected_type=type_hints["ecr_account_id"])
6143
+ check_type(argname="argument ecr_repository_prefix", value=ecr_repository_prefix, expected_type=type_hints["ecr_repository_prefix"])
6144
+ check_type(argname="argument upstream_registry_url", value=upstream_registry_url, expected_type=type_hints["upstream_registry_url"])
6145
+ check_type(argname="argument upstream_repository_prefix", value=upstream_repository_prefix, expected_type=type_hints["upstream_repository_prefix"])
6146
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
6147
+ if ecr_account_id is not None:
6148
+ self._values["ecr_account_id"] = ecr_account_id
6149
+ if ecr_repository_prefix is not None:
6150
+ self._values["ecr_repository_prefix"] = ecr_repository_prefix
6151
+ if upstream_registry_url is not None:
6152
+ self._values["upstream_registry_url"] = upstream_registry_url
6153
+ if upstream_repository_prefix is not None:
6154
+ self._values["upstream_repository_prefix"] = upstream_repository_prefix
6155
+
6156
+ @builtins.property
6157
+ def ecr_account_id(self) -> typing.Optional[builtins.str]:
6158
+ '''Account ID of the account that owns the upstream container image.
6159
+
6160
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-registrymapping.html#cfn-omics-workflowversion-registrymapping-ecraccountid
6161
+ '''
6162
+ result = self._values.get("ecr_account_id")
6163
+ return typing.cast(typing.Optional[builtins.str], result)
6164
+
6165
+ @builtins.property
6166
+ def ecr_repository_prefix(self) -> typing.Optional[builtins.str]:
6167
+ '''The repository prefix to use in the ECR private repository.
6168
+
6169
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-registrymapping.html#cfn-omics-workflowversion-registrymapping-ecrrepositoryprefix
6170
+ '''
6171
+ result = self._values.get("ecr_repository_prefix")
6172
+ return typing.cast(typing.Optional[builtins.str], result)
6173
+
6174
+ @builtins.property
6175
+ def upstream_registry_url(self) -> typing.Optional[builtins.str]:
6176
+ '''The URI of the upstream registry.
6177
+
6178
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-registrymapping.html#cfn-omics-workflowversion-registrymapping-upstreamregistryurl
6179
+ '''
6180
+ result = self._values.get("upstream_registry_url")
6181
+ return typing.cast(typing.Optional[builtins.str], result)
6182
+
6183
+ @builtins.property
6184
+ def upstream_repository_prefix(self) -> typing.Optional[builtins.str]:
6185
+ '''The repository prefix of the corresponding repository in the upstream registry.
6186
+
6187
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-registrymapping.html#cfn-omics-workflowversion-registrymapping-upstreamrepositoryprefix
6188
+ '''
6189
+ result = self._values.get("upstream_repository_prefix")
6190
+ return typing.cast(typing.Optional[builtins.str], result)
6191
+
6192
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6193
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6194
+
6195
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6196
+ return not (rhs == self)
6197
+
6198
+ def __repr__(self) -> str:
6199
+ return "RegistryMappingProperty(%s)" % ", ".join(
6200
+ k + "=" + repr(v) for k, v in self._values.items()
6201
+ )
6202
+
6203
+ @jsii.data_type(
6204
+ jsii_type="aws-cdk-lib.aws_omics.CfnWorkflowVersion.SourceReferenceProperty",
6205
+ jsii_struct_bases=[],
6206
+ name_mapping={"type": "type", "value": "value"},
6207
+ )
6208
+ class SourceReferenceProperty:
6209
+ def __init__(
6210
+ self,
6211
+ *,
6212
+ type: typing.Optional[builtins.str] = None,
6213
+ value: typing.Optional[builtins.str] = None,
6214
+ ) -> None:
6215
+ '''Contains information about the source reference in a code repository, such as a branch, tag, or commit.
4969
6216
 
4970
- @main.setter
4971
- def main(self, value: typing.Optional[builtins.str]) -> None:
4972
- if __debug__:
4973
- type_hints = typing.get_type_hints(_typecheckingstub__bb201e46965fe4b385e0e52f84a505023c34c0c16c33aea7e75a09209c34d1af)
4974
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4975
- jsii.set(self, "main", value) # pyright: ignore[reportArgumentType]
6217
+ :param type: The type of source reference, such as branch, tag, or commit.
6218
+ :param value: The value of the source reference, such as the branch name, tag name, or commit ID.
4976
6219
 
4977
- @builtins.property
4978
- @jsii.member(jsii_name="parameterTemplate")
4979
- def parameter_template(
4980
- self,
4981
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.WorkflowParameterProperty"]]]]:
4982
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.WorkflowParameterProperty"]]]], jsii.get(self, "parameterTemplate"))
6220
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-sourcereference.html
6221
+ :exampleMetadata: fixture=_generated
4983
6222
 
4984
- @parameter_template.setter
4985
- def parameter_template(
4986
- self,
4987
- value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnWorkflowVersion.WorkflowParameterProperty"]]]],
4988
- ) -> None:
4989
- if __debug__:
4990
- type_hints = typing.get_type_hints(_typecheckingstub__909f80095cd6043c196e37a387a0f1f32bfcddcd8f9a81c5e8f5ac8b4874faa9)
4991
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4992
- jsii.set(self, "parameterTemplate", value) # pyright: ignore[reportArgumentType]
6223
+ Example::
4993
6224
 
4994
- @builtins.property
4995
- @jsii.member(jsii_name="storageCapacity")
4996
- def storage_capacity(self) -> typing.Optional[jsii.Number]:
4997
- return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "storageCapacity"))
6225
+ # The code below shows an example of how to instantiate this type.
6226
+ # The values are placeholders you should change.
6227
+ from aws_cdk import aws_omics as omics
6228
+
6229
+ source_reference_property = omics.CfnWorkflowVersion.SourceReferenceProperty(
6230
+ type="type",
6231
+ value="value"
6232
+ )
6233
+ '''
6234
+ if __debug__:
6235
+ type_hints = typing.get_type_hints(_typecheckingstub__bd0032779911f1051b3896f001118256f2cbf0d060b22c10b5fdeb3b3e488c73)
6236
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
6237
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6238
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
6239
+ if type is not None:
6240
+ self._values["type"] = type
6241
+ if value is not None:
6242
+ self._values["value"] = value
4998
6243
 
4999
- @storage_capacity.setter
5000
- def storage_capacity(self, value: typing.Optional[jsii.Number]) -> None:
5001
- if __debug__:
5002
- type_hints = typing.get_type_hints(_typecheckingstub__ba60096260fa288ca386a5b2841efb8fa9833ea893400efeba006766f392a7b7)
5003
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5004
- jsii.set(self, "storageCapacity", value) # pyright: ignore[reportArgumentType]
6244
+ @builtins.property
6245
+ def type(self) -> typing.Optional[builtins.str]:
6246
+ '''The type of source reference, such as branch, tag, or commit.
5005
6247
 
5006
- @builtins.property
5007
- @jsii.member(jsii_name="storageType")
5008
- def storage_type(self) -> typing.Optional[builtins.str]:
5009
- return typing.cast(typing.Optional[builtins.str], jsii.get(self, "storageType"))
6248
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-sourcereference.html#cfn-omics-workflowversion-sourcereference-type
6249
+ '''
6250
+ result = self._values.get("type")
6251
+ return typing.cast(typing.Optional[builtins.str], result)
5010
6252
 
5011
- @storage_type.setter
5012
- def storage_type(self, value: typing.Optional[builtins.str]) -> None:
5013
- if __debug__:
5014
- type_hints = typing.get_type_hints(_typecheckingstub__50ce9715f4efa14e458d6207fae79f6b0ebc36a3bf74435e024116d9f8060ca2)
5015
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5016
- jsii.set(self, "storageType", value) # pyright: ignore[reportArgumentType]
6253
+ @builtins.property
6254
+ def value(self) -> typing.Optional[builtins.str]:
6255
+ '''The value of the source reference, such as the branch name, tag name, or commit ID.
5017
6256
 
5018
- @builtins.property
5019
- @jsii.member(jsii_name="tags")
5020
- def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
5021
- '''A map of resource tags.'''
5022
- return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], jsii.get(self, "tags"))
6257
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-omics-workflowversion-sourcereference.html#cfn-omics-workflowversion-sourcereference-value
6258
+ '''
6259
+ result = self._values.get("value")
6260
+ return typing.cast(typing.Optional[builtins.str], result)
5023
6261
 
5024
- @tags.setter
5025
- def tags(
5026
- self,
5027
- value: typing.Optional[typing.Mapping[builtins.str, builtins.str]],
5028
- ) -> None:
5029
- if __debug__:
5030
- type_hints = typing.get_type_hints(_typecheckingstub__bfbcbf729952f991d2243244c21c373b5bf1a3947ed2973ab1664037cdf636f8)
5031
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5032
- jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
6262
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6263
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5033
6264
 
5034
- @builtins.property
5035
- @jsii.member(jsii_name="workflowBucketOwnerId")
5036
- def workflow_bucket_owner_id(self) -> typing.Optional[builtins.str]:
5037
- return typing.cast(typing.Optional[builtins.str], jsii.get(self, "workflowBucketOwnerId"))
6265
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6266
+ return not (rhs == self)
5038
6267
 
5039
- @workflow_bucket_owner_id.setter
5040
- def workflow_bucket_owner_id(self, value: typing.Optional[builtins.str]) -> None:
5041
- if __debug__:
5042
- type_hints = typing.get_type_hints(_typecheckingstub__bc6b06c168132bf54bf849b9d49774230af45a049e67f52bc48dd0220c18775d)
5043
- check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5044
- jsii.set(self, "workflowBucketOwnerId", value) # pyright: ignore[reportArgumentType]
6268
+ def __repr__(self) -> str:
6269
+ return "SourceReferenceProperty(%s)" % ", ".join(
6270
+ k + "=" + repr(v) for k, v in self._values.items()
6271
+ )
5045
6272
 
5046
6273
  @jsii.data_type(
5047
6274
  jsii_type="aws-cdk-lib.aws_omics.CfnWorkflowVersion.WorkflowParameterProperty",
@@ -5220,6 +6447,8 @@ def _typecheckingstub__9cee3839b5919ab156aab54490277c559d790311fd9ea2b761f99373f
5220
6447
  def _typecheckingstub__09bedca50200dd06a4bbe4bb6135e76dacff76287249f3d28b8f285f8205f173(
5221
6448
  *,
5222
6449
  accelerators: typing.Optional[builtins.str] = None,
6450
+ container_registry_map: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflow.ContainerRegistryMapProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6451
+ container_registry_map_uri: typing.Optional[builtins.str] = None,
5223
6452
  definition_repository: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflow.DefinitionRepositoryProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
5224
6453
  definition_uri: typing.Optional[builtins.str] = None,
5225
6454
  description: typing.Optional[builtins.str] = None,
@@ -5244,11 +6473,18 @@ def _typecheckingstub__32259ddc7b7d888918efaf09deb63ba780f3721ec1da9ea606ed8100a
5244
6473
  version_name: builtins.str,
5245
6474
  workflow_id: builtins.str,
5246
6475
  accelerators: typing.Optional[builtins.str] = None,
6476
+ container_registry_map: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.ContainerRegistryMapProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6477
+ container_registry_map_uri: typing.Optional[builtins.str] = None,
6478
+ definition_repository: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.DefinitionRepositoryProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
5247
6479
  definition_uri: typing.Optional[builtins.str] = None,
5248
6480
  description: typing.Optional[builtins.str] = None,
5249
6481
  engine: typing.Optional[builtins.str] = None,
5250
6482
  main: typing.Optional[builtins.str] = None,
5251
6483
  parameter_template: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.WorkflowParameterProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6484
+ parameter_template_path: typing.Optional[builtins.str] = None,
6485
+ readme_markdown: typing.Optional[builtins.str] = None,
6486
+ readme_path: typing.Optional[builtins.str] = None,
6487
+ readme_uri: typing.Optional[builtins.str] = None,
5252
6488
  storage_capacity: typing.Optional[jsii.Number] = None,
5253
6489
  storage_type: typing.Optional[builtins.str] = None,
5254
6490
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
@@ -5318,6 +6554,14 @@ def _typecheckingstub__ba5dcb906702f10b4a247a16c504ec605912264b052a73f0ae664d93b
5318
6554
  """Type checking stubs"""
5319
6555
  pass
5320
6556
 
6557
+ def _typecheckingstub__ea8d23b9f77f5d9216bba34b2f07ff06220a6053227128a855b380a90746d1fe(
6558
+ scope: _constructs_77d1e7e8.Construct,
6559
+ id: builtins.str,
6560
+ annotation_store_name: builtins.str,
6561
+ ) -> None:
6562
+ """Type checking stubs"""
6563
+ pass
6564
+
5321
6565
  def _typecheckingstub__3d66bbde88d332dceb0812bb6bbf08c2418490d8b0e9774a97971a3b895f48b8(
5322
6566
  inspector: _TreeInspector_488e0dd5,
5323
6567
  ) -> None:
@@ -5415,6 +6659,22 @@ def _typecheckingstub__e38c503967033ff76d3e45880727cc62a1df749cb0aac8298f6d06d14
5415
6659
  """Type checking stubs"""
5416
6660
  pass
5417
6661
 
6662
+ def _typecheckingstub__03eab96b33743423157434263c495ecf4bb597bb49fcadef0690e503e3540689(
6663
+ scope: _constructs_77d1e7e8.Construct,
6664
+ id: builtins.str,
6665
+ arn: builtins.str,
6666
+ ) -> None:
6667
+ """Type checking stubs"""
6668
+ pass
6669
+
6670
+ def _typecheckingstub__7d3a144262ad49c5d6ecb97bcdeda753c5514368bac2ab437b403dd5ecbff176(
6671
+ scope: _constructs_77d1e7e8.Construct,
6672
+ id: builtins.str,
6673
+ reference_store_id: builtins.str,
6674
+ ) -> None:
6675
+ """Type checking stubs"""
6676
+ pass
6677
+
5418
6678
  def _typecheckingstub__1d75805be97b46dc8c38477db9eef63661d2478cb95cd31687daa2a21a351dfd(
5419
6679
  inspector: _TreeInspector_488e0dd5,
5420
6680
  ) -> None:
@@ -5538,6 +6798,22 @@ def _typecheckingstub__a589aadb7c598845d5e4c6ef138fe8cbeb7253209ba9eb0e5e590611e
5538
6798
  """Type checking stubs"""
5539
6799
  pass
5540
6800
 
6801
+ def _typecheckingstub__d0401ce1b5169b8a6f265ee186bf5ea3e78a0a8a2b71e6256e2a1effe74e148d(
6802
+ scope: _constructs_77d1e7e8.Construct,
6803
+ id: builtins.str,
6804
+ arn: builtins.str,
6805
+ ) -> None:
6806
+ """Type checking stubs"""
6807
+ pass
6808
+
6809
+ def _typecheckingstub__939e1e0c5383ed843656a8c66c9eeac470cdb45344d2aa8c6353ab2273bb3618(
6810
+ scope: _constructs_77d1e7e8.Construct,
6811
+ id: builtins.str,
6812
+ sequence_store_id: builtins.str,
6813
+ ) -> None:
6814
+ """Type checking stubs"""
6815
+ pass
6816
+
5541
6817
  def _typecheckingstub__ea9a45fe9e84d5319386c1a777f6361e3fed5c916c543c8964323b54759ee470(
5542
6818
  inspector: _TreeInspector_488e0dd5,
5543
6819
  ) -> None:
@@ -5625,6 +6901,14 @@ def _typecheckingstub__6d38872c12590b13122bc23c110efd40d1aa8369a37e1015fcc0ee252
5625
6901
  """Type checking stubs"""
5626
6902
  pass
5627
6903
 
6904
+ def _typecheckingstub__2f419b3d012ad3960d3cb7ca202c16de7716902d7708b8a5f93c80ecc69b0794(
6905
+ scope: _constructs_77d1e7e8.Construct,
6906
+ id: builtins.str,
6907
+ variant_store_name: builtins.str,
6908
+ ) -> None:
6909
+ """Type checking stubs"""
6910
+ pass
6911
+
5628
6912
  def _typecheckingstub__8ca6bc97e153eee8b1d732a90be1690a35fffe864b7b05aaaac9e52711640fed(
5629
6913
  inspector: _TreeInspector_488e0dd5,
5630
6914
  ) -> None:
@@ -5687,6 +6971,8 @@ def _typecheckingstub__b2d05cb293836959a925b22dbe1861bc4457d2d510bd3a480ae858ea9
5687
6971
  id: builtins.str,
5688
6972
  *,
5689
6973
  accelerators: typing.Optional[builtins.str] = None,
6974
+ container_registry_map: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflow.ContainerRegistryMapProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6975
+ container_registry_map_uri: typing.Optional[builtins.str] = None,
5690
6976
  definition_repository: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflow.DefinitionRepositoryProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
5691
6977
  definition_uri: typing.Optional[builtins.str] = None,
5692
6978
  description: typing.Optional[builtins.str] = None,
@@ -5724,6 +7010,18 @@ def _typecheckingstub__286f71b00d1993ebc792c6e260606dac95cf17ec599b45b4cb2111b4c
5724
7010
  """Type checking stubs"""
5725
7011
  pass
5726
7012
 
7013
+ def _typecheckingstub__d61321fc4a694dded60b8fceeeafd83e9ae3f79a0329bdba98cd03787f3daa3c(
7014
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnWorkflow.ContainerRegistryMapProperty]],
7015
+ ) -> None:
7016
+ """Type checking stubs"""
7017
+ pass
7018
+
7019
+ def _typecheckingstub__1466a9fdbdff03b1c7b3fd5e72f7386ca160db487d501609519ca1c35a987aca(
7020
+ value: typing.Optional[builtins.str],
7021
+ ) -> None:
7022
+ """Type checking stubs"""
7023
+ pass
7024
+
5727
7025
  def _typecheckingstub__6b6e4242f1457a50b9f5b17595e8985df9311b3b5ec98f525f390f9387770415(
5728
7026
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnWorkflow.DefinitionRepositoryProperty]],
5729
7027
  ) -> None:
@@ -5814,6 +7112,14 @@ def _typecheckingstub__fec2ca5e32cee87eaac65d878c60669f18bb90724ac13ab05f21221eb
5814
7112
  """Type checking stubs"""
5815
7113
  pass
5816
7114
 
7115
+ def _typecheckingstub__b93208b886c42793f6b22971c79ed50b456a125a28fedf2949548b0a03f82c3e(
7116
+ *,
7117
+ image_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflow.ImageMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7118
+ registry_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflow.RegistryMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7119
+ ) -> None:
7120
+ """Type checking stubs"""
7121
+ pass
7122
+
5817
7123
  def _typecheckingstub__a3c23b09e8f18584c69d282b6816697f2992e22dbf81773246b66875fbb0c0c8(
5818
7124
  *,
5819
7125
  connection_arn: typing.Optional[builtins.str] = None,
@@ -5824,6 +7130,24 @@ def _typecheckingstub__a3c23b09e8f18584c69d282b6816697f2992e22dbf81773246b66875f
5824
7130
  """Type checking stubs"""
5825
7131
  pass
5826
7132
 
7133
+ def _typecheckingstub__98f85817eb366199f668581daf61aabd43de777e1bd4110572941bbd0bb03687(
7134
+ *,
7135
+ destination_image: typing.Optional[builtins.str] = None,
7136
+ source_image: typing.Optional[builtins.str] = None,
7137
+ ) -> None:
7138
+ """Type checking stubs"""
7139
+ pass
7140
+
7141
+ def _typecheckingstub__bf8725b8e4b50a33568267e8b0666f0c8b9e8a47c56098879cb0cdba27310fbf(
7142
+ *,
7143
+ ecr_account_id: typing.Optional[builtins.str] = None,
7144
+ ecr_repository_prefix: typing.Optional[builtins.str] = None,
7145
+ upstream_registry_url: typing.Optional[builtins.str] = None,
7146
+ upstream_repository_prefix: typing.Optional[builtins.str] = None,
7147
+ ) -> None:
7148
+ """Type checking stubs"""
7149
+ pass
7150
+
5827
7151
  def _typecheckingstub__f4e57d9f64919c2d451cd965846e1f5ee2aa3404611459632e4dd2699b4654d1(
5828
7152
  *,
5829
7153
  type: typing.Optional[builtins.str] = None,
@@ -5847,11 +7171,18 @@ def _typecheckingstub__f9bbd83c3821b6d01e1b0445c2a66c0e7c312d81583ae6cf8dbe78c8d
5847
7171
  version_name: builtins.str,
5848
7172
  workflow_id: builtins.str,
5849
7173
  accelerators: typing.Optional[builtins.str] = None,
7174
+ container_registry_map: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.ContainerRegistryMapProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7175
+ container_registry_map_uri: typing.Optional[builtins.str] = None,
7176
+ definition_repository: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.DefinitionRepositoryProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
5850
7177
  definition_uri: typing.Optional[builtins.str] = None,
5851
7178
  description: typing.Optional[builtins.str] = None,
5852
7179
  engine: typing.Optional[builtins.str] = None,
5853
7180
  main: typing.Optional[builtins.str] = None,
5854
7181
  parameter_template: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.WorkflowParameterProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7182
+ parameter_template_path: typing.Optional[builtins.str] = None,
7183
+ readme_markdown: typing.Optional[builtins.str] = None,
7184
+ readme_path: typing.Optional[builtins.str] = None,
7185
+ readme_uri: typing.Optional[builtins.str] = None,
5855
7186
  storage_capacity: typing.Optional[jsii.Number] = None,
5856
7187
  storage_type: typing.Optional[builtins.str] = None,
5857
7188
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
@@ -5890,6 +7221,24 @@ def _typecheckingstub__b69952a53a68976751566fbcf17774d0dfa2d7ede106cb440b751f76c
5890
7221
  """Type checking stubs"""
5891
7222
  pass
5892
7223
 
7224
+ def _typecheckingstub__46a9bb90d987260f113e2b2c7bfe0d00e76229ce25afbfccf1a386b82f85e224(
7225
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnWorkflowVersion.ContainerRegistryMapProperty]],
7226
+ ) -> None:
7227
+ """Type checking stubs"""
7228
+ pass
7229
+
7230
+ def _typecheckingstub__65acb20ad98b8b631169a3db99c88bd3662a7e2bd947577b5265d087e4b8362d(
7231
+ value: typing.Optional[builtins.str],
7232
+ ) -> None:
7233
+ """Type checking stubs"""
7234
+ pass
7235
+
7236
+ def _typecheckingstub__76f88fb7dbfba72f92fec4a64878a9e7fdd595353c2e76e5f675a9f318a5b5e6(
7237
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnWorkflowVersion.DefinitionRepositoryProperty]],
7238
+ ) -> None:
7239
+ """Type checking stubs"""
7240
+ pass
7241
+
5893
7242
  def _typecheckingstub__7a8ff1e5a2ba3fcf1c5fb306e96445a76ec1ac6872615b206206a2a173f64978(
5894
7243
  value: typing.Optional[builtins.str],
5895
7244
  ) -> None:
@@ -5920,6 +7269,30 @@ def _typecheckingstub__909f80095cd6043c196e37a387a0f1f32bfcddcd8f9a81c5e8f5ac8b4
5920
7269
  """Type checking stubs"""
5921
7270
  pass
5922
7271
 
7272
+ def _typecheckingstub__1012e58717a3baf054312a40aba36847bbd98b702310ea8aff265f26caeab471(
7273
+ value: typing.Optional[builtins.str],
7274
+ ) -> None:
7275
+ """Type checking stubs"""
7276
+ pass
7277
+
7278
+ def _typecheckingstub__3cea66896cfd0dfa12a8b3d0b44794207352c9c78eb70c50e46466b4eea34898(
7279
+ value: typing.Optional[builtins.str],
7280
+ ) -> None:
7281
+ """Type checking stubs"""
7282
+ pass
7283
+
7284
+ def _typecheckingstub__40cad564b15c28b2c112ad54de257f81d4d31fdfe311871657ae5bd714eb9ee6(
7285
+ value: typing.Optional[builtins.str],
7286
+ ) -> None:
7287
+ """Type checking stubs"""
7288
+ pass
7289
+
7290
+ def _typecheckingstub__abe09bb1e32d84773aaf309a744224900a63bf483fa24970e875c0b0a2f1b1cb(
7291
+ value: typing.Optional[builtins.str],
7292
+ ) -> None:
7293
+ """Type checking stubs"""
7294
+ pass
7295
+
5923
7296
  def _typecheckingstub__ba60096260fa288ca386a5b2841efb8fa9833ea893400efeba006766f392a7b7(
5924
7297
  value: typing.Optional[jsii.Number],
5925
7298
  ) -> None:
@@ -5944,6 +7317,50 @@ def _typecheckingstub__bc6b06c168132bf54bf849b9d49774230af45a049e67f52bc48dd0220
5944
7317
  """Type checking stubs"""
5945
7318
  pass
5946
7319
 
7320
+ def _typecheckingstub__32eb3bf30b3d01f44e56bdf643f62609b8cbc84d473cb19e3564543b645033d4(
7321
+ *,
7322
+ image_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.ImageMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7323
+ registry_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.RegistryMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7324
+ ) -> None:
7325
+ """Type checking stubs"""
7326
+ pass
7327
+
7328
+ def _typecheckingstub__e0748aa0fb5a9a9d624696b0fc54ab2faf0941992918eb234ba6c3bb4a47aef5(
7329
+ *,
7330
+ connection_arn: typing.Optional[builtins.str] = None,
7331
+ exclude_file_patterns: typing.Optional[typing.Sequence[builtins.str]] = None,
7332
+ full_repository_id: typing.Optional[builtins.str] = None,
7333
+ source_reference: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWorkflowVersion.SourceReferenceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7334
+ ) -> None:
7335
+ """Type checking stubs"""
7336
+ pass
7337
+
7338
+ def _typecheckingstub__421f9ca400f5d5d6c3aa9a53dbe35757f3408b2b30be15794288deb51c48b293(
7339
+ *,
7340
+ destination_image: typing.Optional[builtins.str] = None,
7341
+ source_image: typing.Optional[builtins.str] = None,
7342
+ ) -> None:
7343
+ """Type checking stubs"""
7344
+ pass
7345
+
7346
+ def _typecheckingstub__9eab95380e8258bf7a10a1ed8080d039134ac7daf1f5f0c979d28cb4f5c4f426(
7347
+ *,
7348
+ ecr_account_id: typing.Optional[builtins.str] = None,
7349
+ ecr_repository_prefix: typing.Optional[builtins.str] = None,
7350
+ upstream_registry_url: typing.Optional[builtins.str] = None,
7351
+ upstream_repository_prefix: typing.Optional[builtins.str] = None,
7352
+ ) -> None:
7353
+ """Type checking stubs"""
7354
+ pass
7355
+
7356
+ def _typecheckingstub__bd0032779911f1051b3896f001118256f2cbf0d060b22c10b5fdeb3b3e488c73(
7357
+ *,
7358
+ type: typing.Optional[builtins.str] = None,
7359
+ value: typing.Optional[builtins.str] = None,
7360
+ ) -> None:
7361
+ """Type checking stubs"""
7362
+ pass
7363
+
5947
7364
  def _typecheckingstub__3d434101b6df92e22ac3acf923cd7bb4105c1a82dad119b383839a4f14189485(
5948
7365
  *,
5949
7366
  description: typing.Optional[builtins.str] = None,