@orcabus/platform-cdk-constructs 0.0.79 → 0.0.81

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.
package/.jsii CHANGED
@@ -7163,6 +7163,6 @@
7163
7163
  "symbolId": "shared-config/slack:SlackAlerts"
7164
7164
  }
7165
7165
  },
7166
- "version": "0.0.79",
7167
- "fingerprint": "U/v9TzmKlKu10VoC5ePrhoNX6anGEibIyYgkCEJEc/o="
7166
+ "version": "0.0.81",
7167
+ "fingerprint": "XFIclUwPaWZibvImPUiwMSZv01Z2jQZDcabz0fAxp7Q="
7168
7168
  }
@@ -15,7 +15,7 @@ const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
15
15
  const aws_route53_targets_1 = require("aws-cdk-lib/aws-route53-targets");
16
16
  const config_1 = require("./config");
17
17
  class OrcaBusApiGateway extends constructs_1.Construct {
18
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.apigateway.OrcaBusApiGateway", version: "0.0.79" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.apigateway.OrcaBusApiGateway", version: "0.0.81" };
19
19
  /**
20
20
  * The AWS region where the API Gateway is deployed.
21
21
  */
@@ -13,7 +13,7 @@ exports.CROSS_DEPLOYMENT_ARTIFACT_BUCKET_NAME = "orcabus-cross-deployment-codepi
13
13
  exports.CROSS_DEPLOYMENT_ARTIFACT_KMS_ALIAS = "orcabus-cross-deployment-codepipeline-artifact";
14
14
  exports.CROSS_DEPLOYMENT_ARTIFACT_KMS_ARN_SSM_PARAMETER_NAME = "/orcabus/deployment-stack-pipeline/artifact-bucket/kms-key-arn";
15
15
  class CrossDeploymentArtifactBucket extends constructs_1.Construct {
16
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.CrossDeploymentArtifactBucket", version: "0.0.79" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.CrossDeploymentArtifactBucket", version: "0.0.81" };
17
17
  /**
18
18
  * The S3 bucket used to store artifacts for cross-deployment pipelines.
19
19
  */
@@ -32,7 +32,7 @@ exports.DEFAULT_SYNTH_STEP_PARTIAL_BUILD_SPEC = {
32
32
  * before using this construct.
33
33
  */
34
34
  class DeploymentStackPipeline extends constructs_1.Construct {
35
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.DeploymentStackPipeline", version: "0.0.79" };
35
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.deploymentPipeline.DeploymentStackPipeline", version: "0.0.81" };
36
36
  /**
37
37
  * The code pipeline construct that is created.
38
38
  */
package/dynamodb/index.js CHANGED
@@ -40,7 +40,7 @@ const dynamodb = __importStar(require("aws-cdk-lib/aws-dynamodb"));
40
40
  const aws_cdk_lib_1 = require("aws-cdk-lib");
41
41
  const config_1 = require("./config");
42
42
  class DynamoDbPartitionedConstruct extends constructs_1.Construct {
43
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbPartitionedConstruct", version: "0.0.79" };
43
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbPartitionedConstruct", version: "0.0.81" };
44
44
  table;
45
45
  constructor(scope, id, props) {
46
46
  super(scope, id);
@@ -75,7 +75,7 @@ class DynamoDbPartitionedConstruct extends constructs_1.Construct {
75
75
  }
76
76
  exports.DynamoDbPartitionedConstruct = DynamoDbPartitionedConstruct;
77
77
  class DynamoDbNonPartitionedConstruct extends constructs_1.Construct {
78
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbNonPartitionedConstruct", version: "0.0.79" };
78
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.dynamodb.DynamoDbNonPartitionedConstruct", version: "0.0.81" };
79
79
  table;
80
80
  constructor(scope, id, props) {
81
81
  super(scope, id);
package/ecs/index.js CHANGED
@@ -55,7 +55,7 @@ exports.LAMBDA_ARCHITECTURE_MAP = {
55
55
  ['ARM64']: lambda.Architecture.ARM_64
56
56
  };
57
57
  class EcsFargateTaskConstruct extends constructs_1.Construct {
58
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.ecs.EcsFargateTaskConstruct", version: "0.0.79" };
58
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.ecs.EcsFargateTaskConstruct", version: "0.0.81" };
59
59
  cluster;
60
60
  taskDefinition;
61
61
  taskExecutionRole;
@@ -17,7 +17,7 @@ var SfnEventStatus;
17
17
  SfnEventStatus["ABORTED"] = "ABORTED";
18
18
  })(SfnEventStatus || (exports.SfnEventStatus = SfnEventStatus = {}));
19
19
  class SfnSlackNotification extends constructs_1.Construct {
20
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.eventbridgeRule.SfnSlackNotification", version: "0.0.79" };
20
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.eventbridgeRule.SfnSlackNotification", version: "0.0.81" };
21
21
  rule;
22
22
  constructor(scope, id, props) {
23
23
  super(scope, id);
package/lambda/index.js CHANGED
@@ -57,7 +57,7 @@ function getPythonUvDockerImage() {
57
57
  return aws_cdk_lib_1.DockerImage.fromBuild(path_1.default.join(__dirname, 'build_python'));
58
58
  }
59
59
  class PythonUvFunction extends aws_lambda_python_alpha_1.PythonFunction {
60
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.lambda.PythonUvFunction", version: "0.0.79" };
60
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.lambda.PythonUvFunction", version: "0.0.81" };
61
61
  // Class constructs, to be used for caching the layers
62
62
  // This means that if there are multiple lambdas throughout the stack
63
63
  // They will all use the same layer
@@ -1,8 +1,14 @@
1
1
  # FIMXE Implement the following imports
2
- from typing import Optional, Dict
2
+ from typing import Optional, List, Dict, TypedDict, NotRequired
3
3
 
4
4
  from .globals import DATA_SHARING_SUBDOMAIN_NAME
5
- from ..utils.requests_helpers import get_url, get_request, get_request_response_results, patch_request
5
+ from ..utils.requests_helpers import (
6
+ get_url,
7
+ get_request,
8
+ get_request_response_results,
9
+ patch_request,
10
+ post_request,
11
+ )
6
12
 
7
13
 
8
14
  # Get url for the subdomain
@@ -20,22 +26,18 @@ def get_data_sharing_url(endpoint: str) -> str:
20
26
 
21
27
  # Wrappers
22
28
  def get_data_sharing_request(
23
- endpoint: str,
24
- params: Optional[Dict] = None,
29
+ endpoint: str,
30
+ params: Optional[Dict] = None,
25
31
  ):
26
- return get_request(
27
- url=get_data_sharing_url(endpoint),
28
- params=params
29
- )
32
+ return get_request(url=get_data_sharing_url(endpoint), params=params)
30
33
 
31
34
 
32
35
  def get_data_sharing_request_response_results(
33
- endpoint: str,
34
- params: Optional[Dict] = None,
36
+ endpoint: str,
37
+ params: Optional[Dict] = None,
35
38
  ):
36
39
  return get_request_response_results(
37
- url=get_data_sharing_url(endpoint),
38
- params=params
40
+ url=get_data_sharing_url(endpoint), params=params
39
41
  )
40
42
 
41
43
 
@@ -43,26 +45,57 @@ def data_sharing_patch_request(
43
45
  endpoint: str,
44
46
  json_data: Optional[Dict] = None,
45
47
  ):
46
- return patch_request(
47
- url=get_data_sharing_url(endpoint),
48
- json_data=json_data
49
- )
48
+ return patch_request(url=get_data_sharing_url(endpoint), json_data=json_data)
50
49
 
51
50
 
52
51
  def data_sharing_post_request(
53
52
  endpoint: str,
54
53
  json_data: Optional[Dict] = None,
55
54
  ):
56
- return patch_request(
57
- url=get_data_sharing_url(endpoint),
58
- json_data=json_data
55
+ return patch_request(url=get_data_sharing_url(endpoint), json_data=json_data)
56
+
57
+
58
+ # Models
59
+ class PackageRequestDict(TypedDict):
60
+ libraryIdList: List[str]
61
+ dataTypeList: List[str]
62
+ portalRunIdList: NotRequired[List[str]]
63
+ defrostArchivedFastqs: NotRequired[bool]
64
+ useWorkflowFilters: NotRequired[bool]
65
+ instrumentRunIdList: NotRequired[List[str]]
66
+
67
+
68
+ def create_package(
69
+ package_name: str,
70
+ package_request: PackageRequestDict,
71
+ ) -> Dict:
72
+ response = post_request(
73
+ json_data={
74
+ "packageName": package_name,
75
+ "packageRequest": package_request,
76
+ },
77
+ url=get_data_sharing_url("/api/v1/package"),
59
78
  )
60
79
 
80
+ return response
61
81
 
62
- from .query_helpers import (
63
- get_package,
64
- get_push_job
65
- )
82
+
83
+ def push_package(
84
+ package_id: str,
85
+ location_uri: str,
86
+ ) -> Dict:
87
+
88
+ response = post_request(
89
+ json_data={
90
+ "shareDestination": location_uri,
91
+ },
92
+ url=get_data_sharing_url(f"/api/v1/package/{package_id}:push"),
93
+ )
94
+
95
+ return response
96
+
97
+
98
+ from .query_helpers import get_package, get_push_job
66
99
 
67
100
  from .update_helpers import (
68
101
  update_package_status,
@@ -74,6 +107,9 @@ __all__ = [
74
107
  "get_package",
75
108
  "get_push_job",
76
109
  # Push job helpers
110
+ "push_package",
77
111
  "update_package_status",
78
112
  "update_push_job_status",
79
- ]
113
+ # Package helpers
114
+ "create_package",
115
+ ]
@@ -107,17 +107,29 @@ def get_ssm_value(parameter_name) -> str:
107
107
 
108
108
  return get_ssm_parameter_response['Parameter']['Value']
109
109
 
110
+ ORCABUS_ACCESS_TOKEN = None
111
+ HOSTNAME = None
110
112
 
111
113
  def get_orcabus_token() -> str:
112
114
  """
113
115
  From the AWS Secrets Manager, retrieve the OrcaBus token.
114
116
  :return:
115
117
  """
116
- return (
117
- json.loads(
118
- get_secret_value(environ.get("ORCABUS_TOKEN_SECRET_ID"))
119
- )['id_token']
120
- )
118
+ global ORCABUS_ACCESS_TOKEN
119
+ if ORCABUS_ACCESS_TOKEN is None:
120
+ ORCABUS_ACCESS_TOKEN = (
121
+ json.loads(
122
+ get_secret_value(environ.get("ORCABUS_TOKEN_SECRET_ID"))
123
+ )['id_token']
124
+ )
125
+ return ORCABUS_ACCESS_TOKEN
126
+
121
127
 
122
128
  def get_hostname() -> str:
123
- return get_ssm_value(environ.get("HOSTNAME_SSM_PARAMETER_NAME"))
129
+ global HOSTNAME
130
+
131
+ if HOSTNAME is None:
132
+ HOSTNAME = (
133
+ get_ssm_value(environ.get("HOSTNAME_SSM_PARAMETER_NAME"))
134
+ )
135
+ return HOSTNAME
@@ -13,7 +13,7 @@ const aws_cloudwatch_actions_1 = require("aws-cdk-lib/aws-cloudwatch-actions");
13
13
  * SNS topic.
14
14
  */
15
15
  class MonitoredQueue extends constructs_1.Construct {
16
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.monitoredQueue.MonitoredQueue", version: "0.0.79" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.monitoredQueue.MonitoredQueue", version: "0.0.81" };
17
17
  queue;
18
18
  deadLetterQueue;
19
19
  alarm;
@@ -7,7 +7,7 @@ const aws_iam_1 = require("aws-cdk-lib/aws-iam");
7
7
  * A construct which represents a named role that a Lambda function can assume.
8
8
  */
9
9
  class NamedLambdaRole extends aws_iam_1.Role {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.namedLambdaRole.NamedLambdaRole", version: "0.0.79" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.namedLambdaRole.NamedLambdaRole", version: "0.0.81" };
11
11
  constructor(scope, id, props) {
12
12
  super(scope, id, {
13
13
  assumedBy: new aws_iam_1.ServicePrincipal("lambda.amazonaws.com"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orcabus/platform-cdk-constructs",
3
- "version": "0.0.79",
3
+ "version": "0.0.81",
4
4
  "description": "CDK Package for OrcaBus infrastructure.",
5
5
  "main": "index.ts",
6
6
  "types": "index.d.ts",
@@ -15,7 +15,7 @@ const aws_cdk_lib_1 = require("aws-cdk-lib");
15
15
  * to the provider framework.
16
16
  */
17
17
  class ProviderFunction extends constructs_1.Construct {
18
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.provider.ProviderFunction", version: "0.0.79" };
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.provider.ProviderFunction", version: "0.0.81" };
19
19
  _function;
20
20
  _response;
21
21
  constructor(scope, id, props) {
@@ -32,6 +32,7 @@ exports.FILE_MANAGER_BUCKETS = {
32
32
  `pipeline-montauk-977251586657-${deployment_stack_pipeline_1.PROD_ENVIRONMENT.region}`,
33
33
  "research-data-550435500918-ap-southeast-2",
34
34
  "project-data-889522050439-ap-southeast-2",
35
+ "project-data-491085415398-ap-southeast-2",
35
36
  ],
36
37
  };
37
38
  // Cache buckets where the `byob-icav2/*/cache/*` pattern is ignored for the ingester.
@@ -55,4 +56,4 @@ exports.FILE_MANAGER_ACCESS_KEY_ARNS = {
55
56
  exports.FILE_MANAGER_INGEST_ROLE = "orcabus-file-manager-ingest-role";
56
57
  exports.FILE_MANAGER_PRESIGN_USER = "orcabus-file-manager-presign-user"; // pragma: allowlist secret
57
58
  exports.FILE_MANAGER_DOMAIN_PREFIX = "file";
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZmlsZS1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBRUgsNEVBSXNDO0FBRXRDLDZCQUEyQztBQUMzQyx1Q0FBK0M7QUFFL0MsNERBQTREO0FBQy9DLFFBQUEsb0JBQW9CLEdBQWdDO0lBQy9ELElBQUksRUFBRTtRQUNKLGdCQUFnQjtRQUNoQixxQkFBcUIsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMxRSxpQ0FBaUMsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUN0RiwwQkFBMEIsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMvRSw0QkFBNEI7S0FDN0I7SUFDRCxLQUFLLEVBQUU7UUFDTCxnQkFBZ0I7UUFDaEIscUJBQXFCLDZDQUFpQixDQUFDLE9BQU8sSUFBSSw2Q0FBaUIsQ0FBQyxNQUFNLEVBQUU7UUFDNUUsaUNBQWlDLDZDQUFpQixDQUFDLE9BQU8sSUFBSSw2Q0FBaUIsQ0FBQyxNQUFNLEVBQUU7UUFDeEYsMEJBQTBCLDZDQUFpQixDQUFDLE9BQU8sSUFBSSw2Q0FBaUIsQ0FBQyxNQUFNLEVBQUU7S0FDbEY7SUFDRCxJQUFJLEVBQUU7UUFDSiw2QkFBNkI7UUFDN0IsbURBQW1EO1FBQ25ELGdEQUFnRDtRQUNoRCxxQkFBcUIsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMxRSxpQ0FBaUMsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUN0RiwwQkFBMEIsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMvRSxpQ0FBaUMsNENBQWdCLENBQUMsTUFBTSxFQUFFO1FBQzFELDJDQUEyQztRQUMzQywwQ0FBMEM7S0FDM0M7Q0FDRixDQUFDO0FBRUYsc0ZBQXNGO0FBQ3pFLFFBQUEsMEJBQTBCLEdBQWdDO0lBQ3JFLElBQUksRUFBRSxDQUFDLDBCQUFxQixDQUFDLElBQUksQ0FBQztJQUNsQyxLQUFLLEVBQUUsQ0FBQywwQkFBcUIsQ0FBQyxLQUFLLENBQUM7SUFDcEMsSUFBSSxFQUFFLENBQUMsMEJBQXFCLENBQUMsSUFBSSxDQUFDO0NBQ25DLENBQUM7QUFFRix3R0FBd0c7QUFDeEcsdURBQXVEO0FBQzFDLFFBQUEsa0NBQWtDLEdBQWE7SUFDeEQsdUNBQXVDO0NBQzFDLENBQUM7QUFFVyxRQUFBLGdDQUFnQyxHQUMzQyxtQ0FBbUMsQ0FBQyxDQUFDLDJCQUEyQjtBQUNsRSxJQUFBLDRCQUFrQixFQUFDLHdDQUFnQyxDQUFDLENBQUM7QUFFeEMsUUFBQSw0QkFBNEIsR0FBOEI7SUFDckUsSUFBSSxFQUFFLDBCQUEwQiw0Q0FBZ0IsQ0FBQyxNQUFNLElBQUksNENBQWdCLENBQUMsT0FBTyxXQUFXLHdDQUFnQyxFQUFFO0lBQ2hJLEtBQUssRUFBRSwwQkFBMEIsNkNBQWlCLENBQUMsTUFBTSxJQUFJLDZDQUFpQixDQUFDLE9BQU8sV0FBVyx3Q0FBZ0MsRUFBRTtJQUNuSSxJQUFJLEVBQUUsMEJBQTBCLDRDQUFnQixDQUFDLE1BQU0sSUFBSSw0Q0FBZ0IsQ0FBQyxPQUFPLFdBQVcsd0NBQWdDLEVBQUU7Q0FDakksQ0FBQztBQUVXLFFBQUEsd0JBQXdCLEdBQUcsa0NBQWtDLENBQUM7QUFDOUQsUUFBQSx5QkFBeUIsR0FBRyxtQ0FBbUMsQ0FBQyxDQUFDLDJCQUEyQjtBQUM1RixRQUFBLDBCQUEwQixHQUFHLE1BQU0sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2hhcmVkIGNvbmZpZyBmb3IgdGhlIEZpbGVNYW5hZ2VyLlxuICovXG5cbmltcG9ydCB7XG4gIEJFVEFfRU5WSVJPTk1FTlQsXG4gIEdBTU1BX0VOVklST05NRU5ULFxuICBQUk9EX0VOVklST05NRU5ULFxufSBmcm9tIFwiLi4vZGVwbG95bWVudC1zdGFjay1waXBlbGluZVwiO1xuaW1wb3J0IHsgU3RhZ2VOYW1lIH0gZnJvbSBcIi4vYWNjb3VudHNcIjtcbmltcG9ydCB7UElQRUxJTkVfQ0FDSEVfQlVDS0VUfSBmcm9tIFwiLi9zM1wiO1xuaW1wb3J0IHsgdmFsaWRhdGVTZWNyZXROYW1lIH0gZnJvbSBcIi4vc2VjcmV0c1wiO1xuXG4vLyBSZWd1bGFyIGJ1Y2tldHMgd2hlcmUgYWxsIGRhdGEgaXMgYXZhaWxhYmxlIGFuZCBpbmdlc3RlZC5cbmV4cG9ydCBjb25zdCBGSUxFX01BTkFHRVJfQlVDS0VUUzogUmVjb3JkPFN0YWdlTmFtZSwgc3RyaW5nW10+ID0ge1xuICBCRVRBOiBbXG4gICAgXCJ1bWNjci10ZW1wLWRldlwiLFxuICAgIGBudHNtLWZpbmdlcnByaW50cy0ke0JFVEFfRU5WSVJPTk1FTlQuYWNjb3VudH0tJHtCRVRBX0VOVklST05NRU5ULnJlZ2lvbn1gLFxuICAgIGBmYXN0cS1tYW5hZ2VyLXNlcXVhbGktb3V0cHV0cy0ke0JFVEFfRU5WSVJPTk1FTlQuYWNjb3VudH0tJHtCRVRBX0VOVklST05NRU5ULnJlZ2lvbn1gLFxuICAgIGBkYXRhLXNoYXJpbmctYXJ0aWZhY3RzLSR7QkVUQV9FTlZJUk9OTUVOVC5hY2NvdW50fS0ke0JFVEFfRU5WSVJPTk1FTlQucmVnaW9ufWAsXG4gICAgXCJmaWxlbWFuYWdlci1pbnZlbnRvcnktdGVzdFwiLFxuICBdLFxuICBHQU1NQTogW1xuICAgIFwidW1jY3ItdGVtcC1zdGdcIixcbiAgICBgbnRzbS1maW5nZXJwcmludHMtJHtHQU1NQV9FTlZJUk9OTUVOVC5hY2NvdW50fS0ke0dBTU1BX0VOVklST05NRU5ULnJlZ2lvbn1gLFxuICAgIGBmYXN0cS1tYW5hZ2VyLXNlcXVhbGktb3V0cHV0cy0ke0dBTU1BX0VOVklST05NRU5ULmFjY291bnR9LSR7R0FNTUFfRU5WSVJPTk1FTlQucmVnaW9ufWAsXG4gICAgYGRhdGEtc2hhcmluZy1hcnRpZmFjdHMtJHtHQU1NQV9FTlZJUk9OTUVOVC5hY2NvdW50fS0ke0dBTU1BX0VOVklST05NRU5ULnJlZ2lvbn1gLFxuICBdLFxuICBQUk9EOiBbXG4gICAgXCJvcmcudW1jY3IuZGF0YS5vbmNvYW5hbHlzZXJcIixcbiAgICBcImFyY2hpdmUtcHJvZC1hbmFseXNpcy01MDM5NzcyNzU2MTYtYXAtc291dGhlYXN0LTJcIixcbiAgICBcImFyY2hpdmUtcHJvZC1mYXN0cS01MDM5NzcyNzU2MTYtYXAtc291dGhlYXN0LTJcIixcbiAgICBgbnRzbS1maW5nZXJwcmludHMtJHtQUk9EX0VOVklST05NRU5ULmFjY291bnR9LSR7UFJPRF9FTlZJUk9OTUVOVC5yZWdpb259YCxcbiAgICBgZmFzdHEtbWFuYWdlci1zZXF1YWxpLW91dHB1dHMtJHtQUk9EX0VOVklST05NRU5ULmFjY291bnR9LSR7UFJPRF9FTlZJUk9OTUVOVC5yZWdpb259YCxcbiAgICBgZGF0YS1zaGFyaW5nLWFydGlmYWN0cy0ke1BST0RfRU5WSVJPTk1FTlQuYWNjb3VudH0tJHtQUk9EX0VOVklST05NRU5ULnJlZ2lvbn1gLFxuICAgIGBwaXBlbGluZS1tb250YXVrLTk3NzI1MTU4NjY1Ny0ke1BST0RfRU5WSVJPTk1FTlQucmVnaW9ufWAsXG4gICAgXCJyZXNlYXJjaC1kYXRhLTU1MDQzNTUwMDkxOC1hcC1zb3V0aGVhc3QtMlwiLFxuICAgIFwicHJvamVjdC1kYXRhLTg4OTUyMjA1MDQzOS1hcC1zb3V0aGVhc3QtMlwiLFxuICBdLFxufTtcblxuLy8gQ2FjaGUgYnVja2V0cyB3aGVyZSB0aGUgYGJ5b2ItaWNhdjIvKi9jYWNoZS8qYCBwYXR0ZXJuIGlzIGlnbm9yZWQgZm9yIHRoZSBpbmdlc3Rlci5cbmV4cG9ydCBjb25zdCBGSUxFX01BTkFHRVJfQ0FDSEVfQlVDS0VUUzogUmVjb3JkPFN0YWdlTmFtZSwgc3RyaW5nW10+ID0ge1xuICBCRVRBOiBbUElQRUxJTkVfQ0FDSEVfQlVDS0VULkJFVEFdLFxuICBHQU1NQTogW1BJUEVMSU5FX0NBQ0hFX0JVQ0tFVC5HQU1NQV0sXG4gIFBST0Q6IFtQSVBFTElORV9DQUNIRV9CVUNLRVQuUFJPRF0sXG59O1xuXG4vLyBDcm9zcyBhY2NvdW50IGJ1Y2tldHMgd2hlcmUgdGhlIGRldi9zdGcvcHJvZCBmaWxlbWFuYWdlciBpbnN0YW5jZXMgc2hvdWxkIGFsbCBpbmdlc3QgdGhlIHNhbWUgYnVja2V0LFxuLy8gc28gbW9yZSBjYXJlIG5lZWRzIHRvIGJlIHRha2VuIHdoZW4gdGFnZ2luZyBvYmplY3RzLlxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOQUdFUl9DUk9TU19BQ0NPVU5UX0JVQ0tFVFM6IHN0cmluZ1tdID0gW1xuICAgIFwidGVzdC1kYXRhLTUwMzk3NzI3NTYxNi1hcC1zb3V0aGVhc3QtMlwiXG5dO1xuXG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX1BSRVNJR05fVVNFUl9TRUNSRVQgPVxuICBcIm9yY2FidXMvZmlsZS1tYW5hZ2VyLXByZXNpZ24tdXNlclwiOyAvLyBwcmFnbWE6IGFsbG93bGlzdCBzZWNyZXRcbnZhbGlkYXRlU2VjcmV0TmFtZShGSUxFX01BTkFHRVJfUFJFU0lHTl9VU0VSX1NFQ1JFVCk7XG5cbmV4cG9ydCBjb25zdCBGSUxFX01BTkFHRVJfQUNDRVNTX0tFWV9BUk5TOiBSZWNvcmQ8U3RhZ2VOYW1lLCBzdHJpbmc+ID0ge1xuICBCRVRBOiBgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjoke0JFVEFfRU5WSVJPTk1FTlQucmVnaW9ufToke0JFVEFfRU5WSVJPTk1FTlQuYWNjb3VudH06c2VjcmV0OiR7RklMRV9NQU5BR0VSX1BSRVNJR05fVVNFUl9TRUNSRVR9YCxcbiAgR0FNTUE6IGBhcm46YXdzOnNlY3JldHNtYW5hZ2VyOiR7R0FNTUFfRU5WSVJPTk1FTlQucmVnaW9ufToke0dBTU1BX0VOVklST05NRU5ULmFjY291bnR9OnNlY3JldDoke0ZJTEVfTUFOQUdFUl9QUkVTSUdOX1VTRVJfU0VDUkVUfWAsXG4gIFBST0Q6IGBhcm46YXdzOnNlY3JldHNtYW5hZ2VyOiR7UFJPRF9FTlZJUk9OTUVOVC5yZWdpb259OiR7UFJPRF9FTlZJUk9OTUVOVC5hY2NvdW50fTpzZWNyZXQ6JHtGSUxFX01BTkFHRVJfUFJFU0lHTl9VU0VSX1NFQ1JFVH1gLFxufTtcblxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOQUdFUl9JTkdFU1RfUk9MRSA9IFwib3JjYWJ1cy1maWxlLW1hbmFnZXItaW5nZXN0LXJvbGVcIjtcbmV4cG9ydCBjb25zdCBGSUxFX01BTkFHRVJfUFJFU0lHTl9VU0VSID0gXCJvcmNhYnVzLWZpbGUtbWFuYWdlci1wcmVzaWduLXVzZXJcIjsgLy8gcHJhZ21hOiBhbGxvd2xpc3Qgc2VjcmV0XG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX0RPTUFJTl9QUkVGSVggPSBcImZpbGVcIjtcbiJdfQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZmlsZS1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7O0FBRUgsNEVBSXNDO0FBRXRDLDZCQUEyQztBQUMzQyx1Q0FBK0M7QUFFL0MsNERBQTREO0FBQy9DLFFBQUEsb0JBQW9CLEdBQWdDO0lBQy9ELElBQUksRUFBRTtRQUNKLGdCQUFnQjtRQUNoQixxQkFBcUIsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMxRSxpQ0FBaUMsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUN0RiwwQkFBMEIsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMvRSw0QkFBNEI7S0FDN0I7SUFDRCxLQUFLLEVBQUU7UUFDTCxnQkFBZ0I7UUFDaEIscUJBQXFCLDZDQUFpQixDQUFDLE9BQU8sSUFBSSw2Q0FBaUIsQ0FBQyxNQUFNLEVBQUU7UUFDNUUsaUNBQWlDLDZDQUFpQixDQUFDLE9BQU8sSUFBSSw2Q0FBaUIsQ0FBQyxNQUFNLEVBQUU7UUFDeEYsMEJBQTBCLDZDQUFpQixDQUFDLE9BQU8sSUFBSSw2Q0FBaUIsQ0FBQyxNQUFNLEVBQUU7S0FDbEY7SUFDRCxJQUFJLEVBQUU7UUFDSiw2QkFBNkI7UUFDN0IsbURBQW1EO1FBQ25ELGdEQUFnRDtRQUNoRCxxQkFBcUIsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMxRSxpQ0FBaUMsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUN0RiwwQkFBMEIsNENBQWdCLENBQUMsT0FBTyxJQUFJLDRDQUFnQixDQUFDLE1BQU0sRUFBRTtRQUMvRSxpQ0FBaUMsNENBQWdCLENBQUMsTUFBTSxFQUFFO1FBQzFELDJDQUEyQztRQUMzQywwQ0FBMEM7UUFDMUMsMENBQTBDO0tBQzNDO0NBQ0YsQ0FBQztBQUVGLHNGQUFzRjtBQUN6RSxRQUFBLDBCQUEwQixHQUFnQztJQUNyRSxJQUFJLEVBQUUsQ0FBQywwQkFBcUIsQ0FBQyxJQUFJLENBQUM7SUFDbEMsS0FBSyxFQUFFLENBQUMsMEJBQXFCLENBQUMsS0FBSyxDQUFDO0lBQ3BDLElBQUksRUFBRSxDQUFDLDBCQUFxQixDQUFDLElBQUksQ0FBQztDQUNuQyxDQUFDO0FBRUYsd0dBQXdHO0FBQ3hHLHVEQUF1RDtBQUMxQyxRQUFBLGtDQUFrQyxHQUFhO0lBQ3hELHVDQUF1QztDQUMxQyxDQUFDO0FBRVcsUUFBQSxnQ0FBZ0MsR0FDM0MsbUNBQW1DLENBQUMsQ0FBQywyQkFBMkI7QUFDbEUsSUFBQSw0QkFBa0IsRUFBQyx3Q0FBZ0MsQ0FBQyxDQUFDO0FBRXhDLFFBQUEsNEJBQTRCLEdBQThCO0lBQ3JFLElBQUksRUFBRSwwQkFBMEIsNENBQWdCLENBQUMsTUFBTSxJQUFJLDRDQUFnQixDQUFDLE9BQU8sV0FBVyx3Q0FBZ0MsRUFBRTtJQUNoSSxLQUFLLEVBQUUsMEJBQTBCLDZDQUFpQixDQUFDLE1BQU0sSUFBSSw2Q0FBaUIsQ0FBQyxPQUFPLFdBQVcsd0NBQWdDLEVBQUU7SUFDbkksSUFBSSxFQUFFLDBCQUEwQiw0Q0FBZ0IsQ0FBQyxNQUFNLElBQUksNENBQWdCLENBQUMsT0FBTyxXQUFXLHdDQUFnQyxFQUFFO0NBQ2pJLENBQUM7QUFFVyxRQUFBLHdCQUF3QixHQUFHLGtDQUFrQyxDQUFDO0FBQzlELFFBQUEseUJBQXlCLEdBQUcsbUNBQW1DLENBQUMsQ0FBQywyQkFBMkI7QUFDNUYsUUFBQSwwQkFBMEIsR0FBRyxNQUFNLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNoYXJlZCBjb25maWcgZm9yIHRoZSBGaWxlTWFuYWdlci5cbiAqL1xuXG5pbXBvcnQge1xuICBCRVRBX0VOVklST05NRU5ULFxuICBHQU1NQV9FTlZJUk9OTUVOVCxcbiAgUFJPRF9FTlZJUk9OTUVOVCxcbn0gZnJvbSBcIi4uL2RlcGxveW1lbnQtc3RhY2stcGlwZWxpbmVcIjtcbmltcG9ydCB7IFN0YWdlTmFtZSB9IGZyb20gXCIuL2FjY291bnRzXCI7XG5pbXBvcnQge1BJUEVMSU5FX0NBQ0hFX0JVQ0tFVH0gZnJvbSBcIi4vczNcIjtcbmltcG9ydCB7IHZhbGlkYXRlU2VjcmV0TmFtZSB9IGZyb20gXCIuL3NlY3JldHNcIjtcblxuLy8gUmVndWxhciBidWNrZXRzIHdoZXJlIGFsbCBkYXRhIGlzIGF2YWlsYWJsZSBhbmQgaW5nZXN0ZWQuXG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX0JVQ0tFVFM6IFJlY29yZDxTdGFnZU5hbWUsIHN0cmluZ1tdPiA9IHtcbiAgQkVUQTogW1xuICAgIFwidW1jY3ItdGVtcC1kZXZcIixcbiAgICBgbnRzbS1maW5nZXJwcmludHMtJHtCRVRBX0VOVklST05NRU5ULmFjY291bnR9LSR7QkVUQV9FTlZJUk9OTUVOVC5yZWdpb259YCxcbiAgICBgZmFzdHEtbWFuYWdlci1zZXF1YWxpLW91dHB1dHMtJHtCRVRBX0VOVklST05NRU5ULmFjY291bnR9LSR7QkVUQV9FTlZJUk9OTUVOVC5yZWdpb259YCxcbiAgICBgZGF0YS1zaGFyaW5nLWFydGlmYWN0cy0ke0JFVEFfRU5WSVJPTk1FTlQuYWNjb3VudH0tJHtCRVRBX0VOVklST05NRU5ULnJlZ2lvbn1gLFxuICAgIFwiZmlsZW1hbmFnZXItaW52ZW50b3J5LXRlc3RcIixcbiAgXSxcbiAgR0FNTUE6IFtcbiAgICBcInVtY2NyLXRlbXAtc3RnXCIsXG4gICAgYG50c20tZmluZ2VycHJpbnRzLSR7R0FNTUFfRU5WSVJPTk1FTlQuYWNjb3VudH0tJHtHQU1NQV9FTlZJUk9OTUVOVC5yZWdpb259YCxcbiAgICBgZmFzdHEtbWFuYWdlci1zZXF1YWxpLW91dHB1dHMtJHtHQU1NQV9FTlZJUk9OTUVOVC5hY2NvdW50fS0ke0dBTU1BX0VOVklST05NRU5ULnJlZ2lvbn1gLFxuICAgIGBkYXRhLXNoYXJpbmctYXJ0aWZhY3RzLSR7R0FNTUFfRU5WSVJPTk1FTlQuYWNjb3VudH0tJHtHQU1NQV9FTlZJUk9OTUVOVC5yZWdpb259YCxcbiAgXSxcbiAgUFJPRDogW1xuICAgIFwib3JnLnVtY2NyLmRhdGEub25jb2FuYWx5c2VyXCIsXG4gICAgXCJhcmNoaXZlLXByb2QtYW5hbHlzaXMtNTAzOTc3Mjc1NjE2LWFwLXNvdXRoZWFzdC0yXCIsXG4gICAgXCJhcmNoaXZlLXByb2QtZmFzdHEtNTAzOTc3Mjc1NjE2LWFwLXNvdXRoZWFzdC0yXCIsXG4gICAgYG50c20tZmluZ2VycHJpbnRzLSR7UFJPRF9FTlZJUk9OTUVOVC5hY2NvdW50fS0ke1BST0RfRU5WSVJPTk1FTlQucmVnaW9ufWAsXG4gICAgYGZhc3RxLW1hbmFnZXItc2VxdWFsaS1vdXRwdXRzLSR7UFJPRF9FTlZJUk9OTUVOVC5hY2NvdW50fS0ke1BST0RfRU5WSVJPTk1FTlQucmVnaW9ufWAsXG4gICAgYGRhdGEtc2hhcmluZy1hcnRpZmFjdHMtJHtQUk9EX0VOVklST05NRU5ULmFjY291bnR9LSR7UFJPRF9FTlZJUk9OTUVOVC5yZWdpb259YCxcbiAgICBgcGlwZWxpbmUtbW9udGF1ay05NzcyNTE1ODY2NTctJHtQUk9EX0VOVklST05NRU5ULnJlZ2lvbn1gLFxuICAgIFwicmVzZWFyY2gtZGF0YS01NTA0MzU1MDA5MTgtYXAtc291dGhlYXN0LTJcIixcbiAgICBcInByb2plY3QtZGF0YS04ODk1MjIwNTA0MzktYXAtc291dGhlYXN0LTJcIixcbiAgICBcInByb2plY3QtZGF0YS00OTEwODU0MTUzOTgtYXAtc291dGhlYXN0LTJcIixcbiAgXSxcbn07XG5cbi8vIENhY2hlIGJ1Y2tldHMgd2hlcmUgdGhlIGBieW9iLWljYXYyLyovY2FjaGUvKmAgcGF0dGVybiBpcyBpZ25vcmVkIGZvciB0aGUgaW5nZXN0ZXIuXG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX0NBQ0hFX0JVQ0tFVFM6IFJlY29yZDxTdGFnZU5hbWUsIHN0cmluZ1tdPiA9IHtcbiAgQkVUQTogW1BJUEVMSU5FX0NBQ0hFX0JVQ0tFVC5CRVRBXSxcbiAgR0FNTUE6IFtQSVBFTElORV9DQUNIRV9CVUNLRVQuR0FNTUFdLFxuICBQUk9EOiBbUElQRUxJTkVfQ0FDSEVfQlVDS0VULlBST0RdLFxufTtcblxuLy8gQ3Jvc3MgYWNjb3VudCBidWNrZXRzIHdoZXJlIHRoZSBkZXYvc3RnL3Byb2QgZmlsZW1hbmFnZXIgaW5zdGFuY2VzIHNob3VsZCBhbGwgaW5nZXN0IHRoZSBzYW1lIGJ1Y2tldCxcbi8vIHNvIG1vcmUgY2FyZSBuZWVkcyB0byBiZSB0YWtlbiB3aGVuIHRhZ2dpbmcgb2JqZWN0cy5cbmV4cG9ydCBjb25zdCBGSUxFX01BTkFHRVJfQ1JPU1NfQUNDT1VOVF9CVUNLRVRTOiBzdHJpbmdbXSA9IFtcbiAgICBcInRlc3QtZGF0YS01MDM5NzcyNzU2MTYtYXAtc291dGhlYXN0LTJcIlxuXTtcblxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOQUdFUl9QUkVTSUdOX1VTRVJfU0VDUkVUID1cbiAgXCJvcmNhYnVzL2ZpbGUtbWFuYWdlci1wcmVzaWduLXVzZXJcIjsgLy8gcHJhZ21hOiBhbGxvd2xpc3Qgc2VjcmV0XG52YWxpZGF0ZVNlY3JldE5hbWUoRklMRV9NQU5BR0VSX1BSRVNJR05fVVNFUl9TRUNSRVQpO1xuXG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX0FDQ0VTU19LRVlfQVJOUzogUmVjb3JkPFN0YWdlTmFtZSwgc3RyaW5nPiA9IHtcbiAgQkVUQTogYGFybjphd3M6c2VjcmV0c21hbmFnZXI6JHtCRVRBX0VOVklST05NRU5ULnJlZ2lvbn06JHtCRVRBX0VOVklST05NRU5ULmFjY291bnR9OnNlY3JldDoke0ZJTEVfTUFOQUdFUl9QUkVTSUdOX1VTRVJfU0VDUkVUfWAsXG4gIEdBTU1BOiBgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjoke0dBTU1BX0VOVklST05NRU5ULnJlZ2lvbn06JHtHQU1NQV9FTlZJUk9OTUVOVC5hY2NvdW50fTpzZWNyZXQ6JHtGSUxFX01BTkFHRVJfUFJFU0lHTl9VU0VSX1NFQ1JFVH1gLFxuICBQUk9EOiBgYXJuOmF3czpzZWNyZXRzbWFuYWdlcjoke1BST0RfRU5WSVJPTk1FTlQucmVnaW9ufToke1BST0RfRU5WSVJPTk1FTlQuYWNjb3VudH06c2VjcmV0OiR7RklMRV9NQU5BR0VSX1BSRVNJR05fVVNFUl9TRUNSRVR9YCxcbn07XG5cbmV4cG9ydCBjb25zdCBGSUxFX01BTkFHRVJfSU5HRVNUX1JPTEUgPSBcIm9yY2FidXMtZmlsZS1tYW5hZ2VyLWluZ2VzdC1yb2xlXCI7XG5leHBvcnQgY29uc3QgRklMRV9NQU5BR0VSX1BSRVNJR05fVVNFUiA9IFwib3JjYWJ1cy1maWxlLW1hbmFnZXItcHJlc2lnbi11c2VyXCI7IC8vIHByYWdtYTogYWxsb3dsaXN0IHNlY3JldFxuZXhwb3J0IGNvbnN0IEZJTEVfTUFOQUdFUl9ET01BSU5fUFJFRklYID0gXCJmaWxlXCI7XG4iXX0=
@@ -23,7 +23,7 @@ exports.VPC_LOOKUP_PROPS = {
23
23
  * Helper for looking up the shared OrcaBus VPC.
24
24
  */
25
25
  class OrcaBusVpc {
26
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusVpc", version: "0.0.79" };
26
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusVpc", version: "0.0.81" };
27
27
  /**
28
28
  * The shared VPC that is used by OrcaBus.
29
29
  * @param scope
@@ -42,7 +42,7 @@ exports.SHARED_SECURITY_GROUP_NAME = "OrcaBusSharedComputeSecurityGroup";
42
42
  * Helper for looking up the shared compute security group by name.
43
43
  */
44
44
  class OrcaBusSharedComputeSecurityGroup {
45
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusSharedComputeSecurityGroup", version: "0.0.79" };
45
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.networking.OrcaBusSharedComputeSecurityGroup", version: "0.0.81" };
46
46
  /**
47
47
  * The shared security group that is used by compute resources to access the database.
48
48
  * @param scope
@@ -11,7 +11,7 @@ exports.SLACK_ALERTS_SNS_TOPIC = "AwsChatBotTopic-alerts";
11
11
  * A helper class to construct the arn for the slack SNS topic.
12
12
  */
13
13
  class SlackAlerts {
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.slack.SlackAlerts", version: "0.0.79" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@orcabus/platform-cdk-constructs.sharedConfig.slack.SlackAlerts", version: "0.0.81" };
15
15
  /**
16
16
  * Format the ARN for the slack alerts SNS topic for the current stack.
17
17
  * @param stack