diff --git a/config/config.ts b/config/config.ts index 51ced4282..82e9f4c4a 100644 --- a/config/config.ts +++ b/config/config.ts @@ -54,8 +54,7 @@ export const getEnvironmentConfig = (stage: AppStage): EnvironmentConfig | null bsRunsUploadManagerStackProps: getBsRunsUploadManagerStackProps(stage), icav2CopyBatchUtilityStackProps: getICAv2CopyBatchUtilityStackProps(stage), bsshIcav2FastqCopyManagerStackProps: getBsshIcav2FastqCopyManagerStackProps(stage), - cttsov2Icav2PipelineManagerStackProps: - getCttsov2Icav2PipelineManagerStackProps(stage), + cttsov2Icav2PipelineManagerStackProps: getCttsov2Icav2PipelineManagerStackProps(stage), }, }, }; @@ -80,8 +79,7 @@ export const getEnvironmentConfig = (stage: AppStage): EnvironmentConfig | null bsRunsUploadManagerStackProps: getBsRunsUploadManagerStackProps(stage), icav2CopyBatchUtilityStackProps: getICAv2CopyBatchUtilityStackProps(stage), bsshIcav2FastqCopyManagerStackProps: getBsshIcav2FastqCopyManagerStackProps(stage), - cttsov2Icav2PipelineManagerStackProps: - getCttsov2Icav2PipelineManagerStackProps(stage), + cttsov2Icav2PipelineManagerStackProps: getCttsov2Icav2PipelineManagerStackProps(stage), }, }, }; @@ -106,8 +104,7 @@ export const getEnvironmentConfig = (stage: AppStage): EnvironmentConfig | null bsRunsUploadManagerStackProps: getBsRunsUploadManagerStackProps(stage), icav2CopyBatchUtilityStackProps: getICAv2CopyBatchUtilityStackProps(stage), bsshIcav2FastqCopyManagerStackProps: getBsshIcav2FastqCopyManagerStackProps(stage), - cttsov2Icav2PipelineManagerStackProps: - getCttsov2Icav2PipelineManagerStackProps(stage), + cttsov2Icav2PipelineManagerStackProps: getCttsov2Icav2PipelineManagerStackProps(stage), }, }, }; diff --git a/config/stacks/cttsov2Icav2PipelineManager.ts b/config/stacks/cttsov2Icav2PipelineManager.ts index 7ebe77620..74cc6f641 100644 --- a/config/stacks/cttsov2Icav2PipelineManager.ts +++ b/config/stacks/cttsov2Icav2PipelineManager.ts @@ -1,14 +1,12 @@ import { - AccountName, + AppStage, eventBusName, cttsov2Icav2PipelineIdSSMParameterPath, icav2CopyBatchUtilityName, cttsov2Icav2PipelineSfnSSMName, cttsov2Icav2PipelineSfnSSMArn, cttsov2Icav2PipelineManagerDynamodbTableName, - icav2AccessTokenSecretNameDev, - icav2AccessTokenSecretNameStg, - icav2AccessTokenSecretNameProd, + icav2AccessTokenSecretName, cttsov2DynamoDbTableSSMArn, cttsov2DynamoDbTableSSMName, } from '../constants'; @@ -18,40 +16,23 @@ import { Cttsov2Icav2PipelineTableConfig } from '../../lib/workload/stateful/sta // Stateful export const getCttsov2Icav2PipelineTableStackProps = (): Cttsov2Icav2PipelineTableConfig => { return { - cttsov2_icav2_dynamodb_table_arn_ssm_parameter_path: cttsov2DynamoDbTableSSMArn, - cttsov2_icav2_dynamodb_table_name_ssm_parameter_path: cttsov2DynamoDbTableSSMName, - dynamodb_table_name: cttsov2Icav2PipelineManagerDynamodbTableName, + cttsov2Icav2DynamodbTableArnSsmParameterPath: cttsov2DynamoDbTableSSMArn, + cttsov2Icav2DynamodbTableNameSsmParameterPath: cttsov2DynamoDbTableSSMName, + dynamodbTableName: cttsov2Icav2PipelineManagerDynamodbTableName, }; }; // Stateless export const getCttsov2Icav2PipelineManagerStackProps = ( - n: AccountName + stage: AppStage ): Cttsov2Icav2PipelineManagerConfig => { - const baseConfig = { - ssm_parameter_list: [cttsov2Icav2PipelineIdSSMParameterPath], - icav2_copy_batch_utility_state_machine_name: icav2CopyBatchUtilityName, - cttso_v2_launch_state_machine_arn_ssm_parameter_path: cttsov2Icav2PipelineSfnSSMArn, - cttso_v2_launch_state_machine_name_ssm_parameter_path: cttsov2Icav2PipelineSfnSSMName, - dynamodb_table_name: cttsov2Icav2PipelineManagerDynamodbTableName, - eventbus_name: eventBusName, + return { + ssmParameterList: [cttsov2Icav2PipelineIdSSMParameterPath], + icav2CopyBatchUtilityStateMachineName: icav2CopyBatchUtilityName, + cttsov2LaunchStateMachineArnSsmParameterPath: cttsov2Icav2PipelineSfnSSMArn, + cttsov2LaunchStateMachineNameSsmParameterPath: cttsov2Icav2PipelineSfnSSMName, + dynamodbTableName: cttsov2Icav2PipelineManagerDynamodbTableName, + eventbusName: eventBusName, + icav2TokenSecretId: icav2AccessTokenSecretName[stage], }; - - switch (n) { - case 'beta': - return { - ...baseConfig, - icav2_token_secret_id: icav2AccessTokenSecretNameDev, - }; - case 'gamma': - return { - ...baseConfig, - icav2_token_secret_id: icav2AccessTokenSecretNameStg, - }; - case 'prod': - return { - ...baseConfig, - icav2_token_secret_id: icav2AccessTokenSecretNameProd, - }; - } }; diff --git a/lib/workload/stateful/stacks/cttso-v2-pipeline-dynamo-db/deploy/stack.ts b/lib/workload/stateful/stacks/cttso-v2-pipeline-dynamo-db/deploy/stack.ts index d88de79fc..5322f62de 100644 --- a/lib/workload/stateful/stacks/cttso-v2-pipeline-dynamo-db/deploy/stack.ts +++ b/lib/workload/stateful/stacks/cttso-v2-pipeline-dynamo-db/deploy/stack.ts @@ -4,9 +4,9 @@ import * as ssm from 'aws-cdk-lib/aws-ssm'; import { DynamodbIcav2PipelineConstruct } from '../../../../components/dynamodb-icav2-table'; export interface Cttsov2Icav2PipelineTableConfig { - dynamodb_table_name: string; - cttsov2_icav2_dynamodb_table_arn_ssm_parameter_path: string; - cttsov2_icav2_dynamodb_table_name_ssm_parameter_path: string; + dynamodbTableName: string; + cttsov2Icav2DynamodbTableArnSsmParameterPath: string; + cttsov2Icav2DynamodbTableNameSsmParameterPath: string; } export type Cttsov2Icav2PipelineTableStackProps = Cttsov2Icav2PipelineTableConfig & cdk.StackProps; @@ -25,7 +25,7 @@ export class Cttsov2Icav2PipelineTable extends cdk.Stack { this, 'cttsov2_icav2_pipeline_table', { - table_name: props.dynamodb_table_name, + table_name: props.dynamodbTableName, } ); @@ -36,7 +36,7 @@ export class Cttsov2Icav2PipelineTable extends cdk.Stack { this, 'cttsov2_icav2_pipeline_table_arn_ssm_path', { - parameterName: props.cttsov2_icav2_dynamodb_table_arn_ssm_parameter_path, + parameterName: props.cttsov2Icav2DynamodbTableArnSsmParameterPath, stringValue: dynamodb_table.table_name_arn, } ).parameterName; @@ -45,8 +45,8 @@ export class Cttsov2Icav2PipelineTable extends cdk.Stack { this, 'cttsov2_icav2_pipeline_table_name_ssm_path', { - parameterName: props.cttsov2_icav2_dynamodb_table_name_ssm_parameter_path, - stringValue: props.dynamodb_table_name, + parameterName: props.cttsov2Icav2DynamodbTableNameSsmParameterPath, + stringValue: props.dynamodbTableName, } ).parameterName; } diff --git a/lib/workload/stateless/stacks/cttso-v2-pipeline-manager/deploy/constructs/cttsov2-icav2-manager/index.ts b/lib/workload/stateless/stacks/cttso-v2-pipeline-manager/deploy/constructs/cttsov2-icav2-manager/index.ts index 02132ef2a..33897e2e7 100644 --- a/lib/workload/stateless/stacks/cttso-v2-pipeline-manager/deploy/constructs/cttsov2-icav2-manager/index.ts +++ b/lib/workload/stateless/stacks/cttso-v2-pipeline-manager/deploy/constructs/cttsov2-icav2-manager/index.ts @@ -15,25 +15,25 @@ import { PythonFunction } from '@aws-cdk/aws-lambda-python-alpha'; interface Cttsov2Icav2ManagerConstructProps { /* Stack Objects */ - dynamodb_table_obj: dynamodb.ITableV2; - icav2_access_token_secret_obj: secretsManager.ISecret; - lambda_layer_obj: lambda.ILayerVersion; - icav2_copy_batch_state_machine_obj: sfn.IStateMachine; - ssm_parameter_obj_list: ssm.IStringParameter[]; // List of parameters the workflow session state machine will need access to - eventbus_obj: events.IEventBus; + dynamodbTableObj: dynamodb.ITableV2; + icav2AccessTokenSecretObj: secretsManager.ISecret; + lambdaLayerObj: lambda.ILayerVersion; + icav2CopyBatchStateMachineObj: sfn.IStateMachine; + ssmParameterObjList: ssm.IStringParameter[]; // List of parameters the workflow session state machine will need access to + eventbusObj: events.IEventBus; /* Lambdas paths */ - generate_db_uuid_lambda_path: string; // __dirname + '/../../../lambdas/generate_db_uuid' - generate_trimmed_samplesheet_lambda_path: string; // __dirname + '/../../../lambdas/generate_trimmed_samplesheet_lambda_path' - upload_samplesheet_to_cache_dir_lambda_path: string; // __dirname + '/../../../lambdas/upload_samplesheet_to_cache_dir' - generate_copy_manifest_dict_lambda_path: string; // __dirname + '/../../../lambdas/generate_copy_manifest_dict' - launch_cttso_nextflow_pipeline_lambda_path: string; // __dirname + '/../../../lambdas/launch_cttso_nextflow_pipeline' + generateDbUuidLambdaPath: string; // __dirname + '/../../../lambdas/generate_db_uuid' + generateTrimmedSamplesheetLambdaPath: string; // __dirname + '/../../../lambdas/generate_trimmed_samplesheet_lambda_path' + uploadSamplesheetToCacheDirLambdaPath: string; // __dirname + '/../../../lambdas/upload_samplesheet_to_cache_dir' + generateCopyManifestDictLambdaPath: string; // __dirname + '/../../../lambdas/generate_copy_manifest_dict' + launchCttsov2NextflowPipelineLambdaPath: string; // __dirname + '/../../../lambdas/launch_cttso_nextflow_pipeline' /* Step function templates */ - workflow_definition_body_path: string; // __dirname + '/../../../step_functions_templates/cttso_v2_launch_step_function.json' + workflowDefinitionBodyPath: string; // __dirname + '/../../../step_functions_templates/cttso_v2_launch_step_function.json' } export class Cttsov2Icav2PipelineManagerConstruct extends Construct { - public readonly cttso_v2_launch_state_machine_name: string; - public readonly cttso_v2_launch_state_machine_arn: string; + public readonly cttsov2LaunchStateMachineName: string; + public readonly cttsov2LaunchStateMachineArn: string; constructor(scope: Construct, id: string, props: Cttsov2Icav2ManagerConstructProps) { super(scope, id); @@ -43,27 +43,27 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { this, 'launch_cttso_nextflow_pipeline_lambda_python_function', { - entry: props.launch_cttso_nextflow_pipeline_lambda_path, + entry: props.launchCttsov2NextflowPipelineLambdaPath, runtime: lambda.Runtime.PYTHON_3_11, architecture: lambda.Architecture.ARM_64, index: 'handler.py', handler: 'handler', memorySize: 1024, - layers: [props.lambda_layer_obj], + layers: [props.lambdaLayerObj], timeout: Duration.seconds(60), environment: { - ICAV2_ACCESS_TOKEN_SECRET_ID: props.icav2_access_token_secret_obj.secretName, + ICAV2_ACCESS_TOKEN_SECRET_ID: props.icav2AccessTokenSecretObj.secretName, }, } ); // Add icav2 secrets permissions to lambda - props.icav2_access_token_secret_obj.grantRead( + props.icav2AccessTokenSecretObj.grantRead( launch_cttso_nextflow_pipeline_lambda_obj.role ); // Add each of the ssm parameters to the lambda role policy - props.ssm_parameter_obj_list.forEach((ssm_parameter_obj) => { + props.ssmParameterObjList.forEach((ssm_parameter_obj) => { ssm_parameter_obj.grantRead(launch_cttso_nextflow_pipeline_lambda_obj.role); }); @@ -73,13 +73,13 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { this, 'generate_db_uuid_lambda_python_function', { - entry: props.generate_db_uuid_lambda_path, + entry: props.generateDbUuidLambdaPath, runtime: lambda.Runtime.PYTHON_3_11, architecture: lambda.Architecture.ARM_64, index: 'handler.py', handler: 'handler', memorySize: 1024, - layers: [props.lambda_layer_obj], + layers: [props.lambdaLayerObj], timeout: Duration.seconds(60), } ); @@ -90,13 +90,13 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { this, 'generate_copy_manifest_dict_lambda_python_function', { - entry: props.generate_copy_manifest_dict_lambda_path, + entry: props.generateCopyManifestDictLambdaPath, runtime: lambda.Runtime.PYTHON_3_11, architecture: lambda.Architecture.ARM_64, index: 'handler.py', handler: 'handler', memorySize: 1024, - layers: [props.lambda_layer_obj], + layers: [props.lambdaLayerObj], timeout: Duration.seconds(60), } ); @@ -107,13 +107,13 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { this, 'generate_trimmed_samplesheet_lambda_python_function', { - entry: props.generate_trimmed_samplesheet_lambda_path, + entry: props.generateTrimmedSamplesheetLambdaPath, runtime: lambda.Runtime.PYTHON_3_11, architecture: lambda.Architecture.ARM_64, index: 'handler.py', handler: 'handler', memorySize: 1024, - layers: [props.lambda_layer_obj], + layers: [props.lambdaLayerObj], timeout: Duration.seconds(60), } ); @@ -123,27 +123,27 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { this, 'upload_samplesheet_to_cache_dir_lambda_python_function', { - entry: props.upload_samplesheet_to_cache_dir_lambda_path, + entry: props.uploadSamplesheetToCacheDirLambdaPath, runtime: lambda.Runtime.PYTHON_3_11, architecture: lambda.Architecture.ARM_64, index: 'handler.py', handler: 'handler', memorySize: 1024, - layers: [props.lambda_layer_obj], + layers: [props.lambdaLayerObj], timeout: Duration.seconds(60), environment: { - ICAV2_ACCESS_TOKEN_SECRET_ID: props.icav2_access_token_secret_obj.secretName, + ICAV2_ACCESS_TOKEN_SECRET_ID: props.icav2AccessTokenSecretObj.secretName, }, } ); // Add icav2 secrets permissions to lambda - props.icav2_access_token_secret_obj.grantRead( + props.icav2AccessTokenSecretObj.grantRead( upload_samplesheet_to_cache_dir_lambda_obj.role ); // Add each of the ssm parameters to the lambda role policy - props.ssm_parameter_obj_list.forEach((ssm_parameter_obj) => { + props.ssmParameterObjList.forEach((ssm_parameter_obj) => { ssm_parameter_obj.grantRead(upload_samplesheet_to_cache_dir_lambda_obj.role); }); @@ -153,7 +153,7 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { 'cttso_v2_launch_step_functions_state_machine', { // defintiontemplate - definitionBody: DefinitionBody.fromFile(props.workflow_definition_body_path), + definitionBody: DefinitionBody.fromFile(props.workflowDefinitionBodyPath), // definitionSubstitutions definitionSubstitutions: { /* Lambda arns */ @@ -165,11 +165,11 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { upload_samplesheet_to_cache_dir_lambda_obj.functionArn, /* Subfunction state machines */ __copy_batch_data_state_machine_arn__: - props.icav2_copy_batch_state_machine_obj.stateMachineArn, + props.icav2CopyBatchStateMachineObj.stateMachineArn, /* Dynamodb tables */ - __table_name__: props.dynamodb_table_obj.tableName, + __table_name__: props.dynamodbTableObj.tableName, /* Event bus to push to */ - __eventbus_name__: props.eventbus_obj.eventBusName, + __eventbus_name__: props.eventbusObj.eventBusName, }, } ); @@ -186,7 +186,7 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { }); // Allow state machine to read/write to dynamodb table - props.dynamodb_table_obj.grantReadWriteData(stateMachine.role); + props.dynamodbTableObj.grantReadWriteData(stateMachine.role); // Because we run a nested state machine, we need to add the permissions to the state machine role // See https://stackoverflow.com/questions/60612853/nested-step-function-in-a-step-function-unknown-error-not-authorized-to-cr @@ -200,11 +200,11 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { ); // Add state machine execution permissions to stateMachine role - props.icav2_copy_batch_state_machine_obj.grantStartExecution(stateMachine.role); + props.icav2CopyBatchStateMachineObj.grantStartExecution(stateMachine.role); // Trigger state machine on event const rule = new events.Rule(this, 'cttso_v2_launch_step_function_rule', { - eventBus: props.eventbus_obj, + eventBus: props.eventbusObj, eventPattern: { source: ['orcabus.wfm'], detailType: ['WorkflowRunStateChange'], @@ -226,10 +226,10 @@ export class Cttsov2Icav2PipelineManagerConstruct extends Construct { ); // Allow the statemachine to submit events to the event bus - props.eventbus_obj.grantPutEventsTo(stateMachine.role); + props.eventbusObj.grantPutEventsTo(stateMachine.role); // Set outputs - this.cttso_v2_launch_state_machine_name = stateMachine.stateMachineName; - this.cttso_v2_launch_state_machine_arn = stateMachine.stateMachineArn; + this.cttsov2LaunchStateMachineName = stateMachine.stateMachineName; + this.cttsov2LaunchStateMachineArn = stateMachine.stateMachineArn; } } diff --git a/lib/workload/stateless/stacks/cttso-v2-pipeline-manager/deploy/stack.ts b/lib/workload/stateless/stacks/cttso-v2-pipeline-manager/deploy/stack.ts index e1c0d9ed0..fcb6fdf6f 100644 --- a/lib/workload/stateless/stacks/cttso-v2-pipeline-manager/deploy/stack.ts +++ b/lib/workload/stateless/stacks/cttso-v2-pipeline-manager/deploy/stack.ts @@ -10,23 +10,23 @@ import { PythonLambdaLayerConstruct } from '../../../../components/python-lambda import path from 'path'; export interface Cttsov2Icav2PipelineManagerConfig { - icav2_token_secret_id: string; // "/icav2/umccr-prod/service-production-jwt-token-secret-arn" - ssm_parameter_list: string[]; // List of parameters the workflow session state machine will need access to - icav2_copy_batch_utility_state_machine_name: string; - cttso_v2_launch_state_machine_arn_ssm_parameter_path: string; - cttso_v2_launch_state_machine_name_ssm_parameter_path: string; - dynamodb_table_name: string; - eventbus_name: string; + icav2TokenSecretId: string; // "/icav2/umccr-prod/service-production-jwt-token-secret-arn" + ssmParameterList: string[]; // List of parameters the workflow session state machine will need access to + icav2CopyBatchUtilityStateMachineName: string; + cttsov2LaunchStateMachineArnSsmParameterPath: string; + cttsov2LaunchStateMachineNameSsmParameterPath: string; + dynamodbTableName: string; + eventbusName: string; } export type cttsov2Icav2PipelineManagerStackProps = Cttsov2Icav2PipelineManagerConfig & cdk.StackProps; export class Cttsov2Icav2PipelineManagerStack extends cdk.Stack { - public readonly cttso_v2_launch_state_machine_arn: string; - public readonly cttso_v2_launch_state_machine_name: string; - public readonly cttso_v2_launch_state_machine_arn_ssm_parameter_path: string; - public readonly cttso_v2_launch_state_machine_name_ssm_parameter_path: string; + public readonly cttsov2LaunchStateMachineArn: string; + public readonly cttsov2LaunchStateMachineName: string; + public readonly cttsov2LaunchStateMachineArnSsmParameterPath: string; + public readonly cttsov2LaunchStateMachineNameSsmParameterPath: string; constructor(scope: Construct, id: string, props: cttsov2Icav2PipelineManagerStackProps) { super(scope, id, props); @@ -35,21 +35,21 @@ export class Cttsov2Icav2PipelineManagerStack extends cdk.Stack { const icav2_copy_batch_stack_state_machine_obj = sfn.StateMachine.fromStateMachineName( this, 'icav2_copy_batch_state_machine', - props.icav2_copy_batch_utility_state_machine_name + props.icav2CopyBatchUtilityStateMachineName ); // Get dynamodb table for construct const dynamodb_table_obj = dynamodb.TableV2.fromTableName( this, 'dynamodb_table', - props.dynamodb_table_name + props.dynamodbTableName ); // Get ICAv2 Access token secret object for construct const icav2_access_token_secret_obj = secretsManager.Secret.fromSecretNameV2( this, 'Icav2SecretsObject', - props.icav2_token_secret_id + props.icav2TokenSecretId ); // Get lambda layer object @@ -60,66 +60,65 @@ export class Cttsov2Icav2PipelineManagerStack extends cdk.Stack { }); // Set ssm parameter object list - const ssm_parameter_obj_list = props.ssm_parameter_list.map((ssm_parameter_path: string) => + const ssm_parameter_obj_list = props.ssmParameterList.map((ssm_parameter_path: string) => ssm.StringParameter.fromStringParameterName(this, ssm_parameter_path, ssm_parameter_path) ); // Get event bus - const eventbus_obj = events.EventBus.fromEventBusName(this, 'eventbus', props.eventbus_name); + const eventbus_obj = events.EventBus.fromEventBusName(this, 'eventbus', props.eventbusName); const cttso_v2_launch_state_machine = new Cttsov2Icav2PipelineManagerConstruct(this, id, { /* Stack Objects */ - dynamodb_table_obj: dynamodb_table_obj, - icav2_access_token_secret_obj: icav2_access_token_secret_obj, - lambda_layer_obj: lambda_layer_obj.lambda_layer_version_obj, - icav2_copy_batch_state_machine_obj: icav2_copy_batch_stack_state_machine_obj, - ssm_parameter_obj_list: ssm_parameter_obj_list, - eventbus_obj: eventbus_obj, + dynamodbTableObj: dynamodb_table_obj, + icav2AccessTokenSecretObj: icav2_access_token_secret_obj, + lambdaLayerObj: lambda_layer_obj.lambdaLayerVersionObj, + icav2CopyBatchStateMachineObj: icav2_copy_batch_stack_state_machine_obj, + ssmParameterObjList: ssm_parameter_obj_list, + eventbusObj: eventbus_obj, /* Lambdas paths */ - generate_db_uuid_lambda_path: path.join(__dirname, '../lambdas/generate_db_uuid'), // __dirname + '/../../../lambdas/generate_uuid' - generate_trimmed_samplesheet_lambda_path: path.join( + generateDbUuidLambdaPath: path.join(__dirname, '../lambdas/generate_db_uuid'), // __dirname + '/../../../lambdas/generate_uuid' + generateTrimmedSamplesheetLambdaPath: path.join( __dirname, '../lambdas/generate_and_trim_cttso_samplesheet_dict' ), // __dirname + '/../../../lambdas/generate_and_trim_cttso_samplesheet_dict' - upload_samplesheet_to_cache_dir_lambda_path: path.join( + uploadSamplesheetToCacheDirLambdaPath: path.join( __dirname, '../lambdas/upload_samplesheet_to_cache_dir' ), // __dirname + '/../../../lambdas/upload_samplesheet_to_cache_dir' - generate_copy_manifest_dict_lambda_path: path.join( + generateCopyManifestDictLambdaPath: path.join( __dirname, '../lambdas/generate_copy_manifest_dict' ), // __dirname + '/../../../lambdas/generate_copy_manifest_dict' - launch_cttso_nextflow_pipeline_lambda_path: path.join( + launchCttsov2NextflowPipelineLambdaPath: path.join( __dirname, '../lambdas/launch_cttso_nextflow_pipeline' ), // __dirname + '../launch_cttso_nextflow_pipeline' /* Step function templates */ - workflow_definition_body_path: path.join( + workflowDefinitionBodyPath: path.join( __dirname, '../step_functions_templates/cttso_v2_launch_workflow_state_machine.asl.json' ), // __dirname + '/../../../step_functions_templates/cttso_v2_launch_workflow_state_machine.asl.json' }); // Set outputs - this.cttso_v2_launch_state_machine_arn = - cttso_v2_launch_state_machine.cttso_v2_launch_state_machine_arn; - this.cttso_v2_launch_state_machine_name = - cttso_v2_launch_state_machine.cttso_v2_launch_state_machine_name; - this.cttso_v2_launch_state_machine_arn_ssm_parameter_path = - props.cttso_v2_launch_state_machine_arn_ssm_parameter_path; - this.cttso_v2_launch_state_machine_name_ssm_parameter_path = - props.cttso_v2_launch_state_machine_name_ssm_parameter_path; + this.cttsov2LaunchStateMachineArn = cttso_v2_launch_state_machine.cttsov2LaunchStateMachineArn; + this.cttsov2LaunchStateMachineName = + cttso_v2_launch_state_machine.cttsov2LaunchStateMachineName; + this.cttsov2LaunchStateMachineArnSsmParameterPath = + props.cttsov2LaunchStateMachineArnSsmParameterPath; + this.cttsov2LaunchStateMachineNameSsmParameterPath = + props.cttsov2LaunchStateMachineNameSsmParameterPath; // Set SSM Parameter for the state machine arn new ssm.StringParameter(this, 'state_machine_arn_ssm_parameter', { - parameterName: this.cttso_v2_launch_state_machine_arn_ssm_parameter_path, - stringValue: this.cttso_v2_launch_state_machine_arn, + parameterName: this.cttsov2LaunchStateMachineArnSsmParameterPath, + stringValue: this.cttsov2LaunchStateMachineArn, }); // Set SSM Parameter for the state machine name new ssm.StringParameter(this, 'state_machine_name_ssm_parameter', { - parameterName: this.cttso_v2_launch_state_machine_name_ssm_parameter_path, - stringValue: this.cttso_v2_launch_state_machine_name, + parameterName: this.cttsov2LaunchStateMachineNameSsmParameterPath, + stringValue: this.cttsov2LaunchStateMachineName, }); } }