@webiny/pulumi-aws 5.43.0-beta.1 → 5.43.0-beta.2

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.
@@ -20,6 +20,7 @@ const ApiMigration = exports.ApiMigration = (0, _pulumi2.createAppModule)({
20
20
  config(app) {
21
21
  const core = app.getModule(_common.CoreOutput);
22
22
  const graphql = app.getModule(_.ApiGraphql);
23
+ const backgroundTask = app.getModule(_.ApiBackgroundTask);
23
24
  const role = (0, _lambdaUtils.createLambdaRole)(app, {
24
25
  name: "migration-lambda-role",
25
26
  policy: graphql.policy.output
@@ -53,6 +54,30 @@ const ApiMigration = exports.ApiMigration = (0, _pulumi2.createAppModule)({
53
54
  vpcConfig: app.getModule(_common.VpcConfig).functionVpcConfig
54
55
  }
55
56
  });
57
+
58
+ // Add IAM policy to allow states:StartExecution for the background task Step Function
59
+ const stepFunctionPolicy = app.addResource(aws.iam.Policy, {
60
+ name: "migration-lambda-step-function-policy",
61
+ config: {
62
+ policy: {
63
+ Version: "2012-10-17",
64
+ Statement: [{
65
+ Effect: "Allow",
66
+ Action: ["states:StartExecution"],
67
+ Resource: [pulumi.interpolate`${backgroundTask.stepFunction.output.arn}`, pulumi.interpolate`${backgroundTask.stepFunction.output.arn}/*`]
68
+ }]
69
+ }
70
+ }
71
+ });
72
+
73
+ // Attach policy to the Lambda role
74
+ app.addResource(aws.iam.RolePolicyAttachment, {
75
+ name: "migration-lambda-attach-step-function-policy",
76
+ config: {
77
+ role: role.output.name,
78
+ policyArn: stepFunctionPolicy.output.arn
79
+ }
80
+ });
56
81
  return {
57
82
  function: migration
58
83
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_path","_interopRequireDefault","require","pulumi","_interopRequireWildcard","aws","_pulumi2","_lambdaUtils","_common","_","_constants","_awsRegion","ApiMigration","exports","createAppModule","name","config","app","core","getModule","CoreOutput","graphql","ApiGraphql","role","createLambdaRole","policy","output","migration","addResource","lambda","Function","handler","timeout","runtime","LAMBDA_RUNTIME","memorySize","arn","description","code","asset","AssetArchive","FileArchive","path","join","paths","workspace","environment","variables","getCommonLambdaEnvVariables","apply","value","COGNITO_REGION","getEnvVariableAwsRegion","COGNITO_USER_POOL_ID","cognitoUserPoolId","DB_TABLE","primaryDynamodbTableName","DB_TABLE_LOG","logDynamodbTableName","DB_TABLE_ELASTICSEARCH","elasticsearchDynamodbTableName","ELASTIC_SEARCH_ENDPOINT","elasticsearchDomainEndpoint","ELASTIC_SEARCH_INDEX_PREFIX","process","env","ELASTICSEARCH_SHARED_INDEXES","S3_BUCKET","fileManagerBucketId","vpcConfig","VpcConfig","functionVpcConfig","function"],"sources":["ApiMigration.ts"],"sourcesContent":["import path from \"path\";\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\nimport { createAppModule, PulumiApp, PulumiAppModule } from \"@webiny/pulumi\";\n\nimport { createLambdaRole, getCommonLambdaEnvVariables } from \"../lambdaUtils\";\nimport { CoreOutput, VpcConfig } from \"../common\";\nimport { ApiGraphql } from \"~/apps\";\nimport { LAMBDA_RUNTIME } from \"~/constants\";\nimport { getEnvVariableAwsRegion } from \"~/env/awsRegion\";\n\nexport type ApiMigration = PulumiAppModule<typeof ApiMigration>;\n\nexport const ApiMigration = createAppModule({\n name: \"ApiMigration\",\n config(app: PulumiApp) {\n const core = app.getModule(CoreOutput);\n const graphql = app.getModule(ApiGraphql);\n\n const role = createLambdaRole(app, {\n name: \"migration-lambda-role\",\n policy: graphql.policy.output\n });\n\n const migration = app.addResource(aws.lambda.Function, {\n name: \"data-migration\",\n config: {\n handler: \"handler.handler\",\n timeout: 900,\n runtime: LAMBDA_RUNTIME,\n memorySize: 3008,\n role: role.output.arn,\n description: \"Performs data migrations.\",\n code: new pulumi.asset.AssetArchive({\n \".\": new pulumi.asset.FileArchive(\n path.join(app.paths.workspace, \"migration/build\")\n )\n }),\n environment: {\n variables: getCommonLambdaEnvVariables().apply(value => ({\n ...value,\n COGNITO_REGION: getEnvVariableAwsRegion(),\n COGNITO_USER_POOL_ID: core.cognitoUserPoolId,\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName,\n DB_TABLE_ELASTICSEARCH: core.elasticsearchDynamodbTableName,\n ELASTIC_SEARCH_ENDPOINT: core.elasticsearchDomainEndpoint,\n ELASTIC_SEARCH_INDEX_PREFIX: process.env.ELASTIC_SEARCH_INDEX_PREFIX,\n ELASTICSEARCH_SHARED_INDEXES: process.env.ELASTICSEARCH_SHARED_INDEXES,\n S3_BUCKET: core.fileManagerBucketId\n })) as Record<string, any>\n },\n vpcConfig: app.getModule(VpcConfig).functionVpcConfig\n }\n });\n\n return {\n function: migration\n };\n }\n});\n"],"mappings":";;;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,GAAA,GAAAD,uBAAA,CAAAF,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AAEA,IAAAK,YAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,CAAA,GAAAP,OAAA;AACA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAIO,MAAMU,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAG,IAAAE,wBAAe,EAAC;EACxCC,IAAI,EAAE,cAAc;EACpBC,MAAMA,CAACC,GAAc,EAAE;IACnB,MAAMC,IAAI,GAAGD,GAAG,CAACE,SAAS,CAACC,kBAAU,CAAC;IACtC,MAAMC,OAAO,GAAGJ,GAAG,CAACE,SAAS,CAACG,YAAU,CAAC;IAEzC,MAAMC,IAAI,GAAG,IAAAC,6BAAgB,EAACP,GAAG,EAAE;MAC/BF,IAAI,EAAE,uBAAuB;MAC7BU,MAAM,EAAEJ,OAAO,CAACI,MAAM,CAACC;IAC3B,CAAC,CAAC;IAEF,MAAMC,SAAS,GAAGV,GAAG,CAACW,WAAW,CAACvB,GAAG,CAACwB,MAAM,CAACC,QAAQ,EAAE;MACnDf,IAAI,EAAE,gBAAgB;MACtBC,MAAM,EAAE;QACJe,OAAO,EAAE,iBAAiB;QAC1BC,OAAO,EAAE,GAAG;QACZC,OAAO,EAAEC,yBAAc;QACvBC,UAAU,EAAE,IAAI;QAChBZ,IAAI,EAAEA,IAAI,CAACG,MAAM,CAACU,GAAG;QACrBC,WAAW,EAAE,2BAA2B;QACxCC,IAAI,EAAE,IAAInC,MAAM,CAACoC,KAAK,CAACC,YAAY,CAAC;UAChC,GAAG,EAAE,IAAIrC,MAAM,CAACoC,KAAK,CAACE,WAAW,CAC7BC,aAAI,CAACC,IAAI,CAAC1B,GAAG,CAAC2B,KAAK,CAACC,SAAS,EAAE,iBAAiB,CACpD;QACJ,CAAC,CAAC;QACFC,WAAW,EAAE;UACTC,SAAS,EAAE,IAAAC,wCAA2B,EAAC,CAAC,CAACC,KAAK,CAACC,KAAK,KAAK;YACrD,GAAGA,KAAK;YACRC,cAAc,EAAE,IAAAC,kCAAuB,EAAC,CAAC;YACzCC,oBAAoB,EAAEnC,IAAI,CAACoC,iBAAiB;YAC5CC,QAAQ,EAAErC,IAAI,CAACsC,wBAAwB;YACvCC,YAAY,EAAEvC,IAAI,CAACwC,oBAAoB;YACvCC,sBAAsB,EAAEzC,IAAI,CAAC0C,8BAA8B;YAC3DC,uBAAuB,EAAE3C,IAAI,CAAC4C,2BAA2B;YACzDC,2BAA2B,EAAEC,OAAO,CAACC,GAAG,CAACF,2BAA2B;YACpEG,4BAA4B,EAAEF,OAAO,CAACC,GAAG,CAACC,4BAA4B;YACtEC,SAAS,EAAEjD,IAAI,CAACkD;UACpB,CAAC,CAAC;QACN,CAAC;QACDC,SAAS,EAAEpD,GAAG,CAACE,SAAS,CAACmD,iBAAS,CAAC,CAACC;MACxC;IACJ,CAAC,CAAC;IAEF,OAAO;MACHC,QAAQ,EAAE7C;IACd,CAAC;EACL;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_path","_interopRequireDefault","require","pulumi","_interopRequireWildcard","aws","_pulumi2","_lambdaUtils","_common","_","_constants","_awsRegion","ApiMigration","exports","createAppModule","name","config","app","core","getModule","CoreOutput","graphql","ApiGraphql","backgroundTask","ApiBackgroundTask","role","createLambdaRole","policy","output","migration","addResource","lambda","Function","handler","timeout","runtime","LAMBDA_RUNTIME","memorySize","arn","description","code","asset","AssetArchive","FileArchive","path","join","paths","workspace","environment","variables","getCommonLambdaEnvVariables","apply","value","COGNITO_REGION","getEnvVariableAwsRegion","COGNITO_USER_POOL_ID","cognitoUserPoolId","DB_TABLE","primaryDynamodbTableName","DB_TABLE_LOG","logDynamodbTableName","DB_TABLE_ELASTICSEARCH","elasticsearchDynamodbTableName","ELASTIC_SEARCH_ENDPOINT","elasticsearchDomainEndpoint","ELASTIC_SEARCH_INDEX_PREFIX","process","env","ELASTICSEARCH_SHARED_INDEXES","S3_BUCKET","fileManagerBucketId","vpcConfig","VpcConfig","functionVpcConfig","stepFunctionPolicy","iam","Policy","Version","Statement","Effect","Action","Resource","interpolate","stepFunction","RolePolicyAttachment","policyArn","function"],"sources":["ApiMigration.ts"],"sourcesContent":["import path from \"path\";\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as aws from \"@pulumi/aws\";\nimport { createAppModule, PulumiApp, PulumiAppModule } from \"@webiny/pulumi\";\n\nimport { createLambdaRole, getCommonLambdaEnvVariables } from \"../lambdaUtils\";\nimport { CoreOutput, VpcConfig } from \"../common\";\nimport { ApiBackgroundTask, ApiGraphql } from \"~/apps\";\nimport { LAMBDA_RUNTIME } from \"~/constants\";\nimport { getEnvVariableAwsRegion } from \"~/env/awsRegion\";\n\nexport type ApiMigration = PulumiAppModule<typeof ApiMigration>;\n\nexport const ApiMigration = createAppModule({\n name: \"ApiMigration\",\n config(app: PulumiApp) {\n const core = app.getModule(CoreOutput);\n const graphql = app.getModule(ApiGraphql);\n const backgroundTask = app.getModule(ApiBackgroundTask);\n\n const role = createLambdaRole(app, {\n name: \"migration-lambda-role\",\n policy: graphql.policy.output\n });\n\n const migration = app.addResource(aws.lambda.Function, {\n name: \"data-migration\",\n config: {\n handler: \"handler.handler\",\n timeout: 900,\n runtime: LAMBDA_RUNTIME,\n memorySize: 3008,\n role: role.output.arn,\n description: \"Performs data migrations.\",\n code: new pulumi.asset.AssetArchive({\n \".\": new pulumi.asset.FileArchive(\n path.join(app.paths.workspace, \"migration/build\")\n )\n }),\n environment: {\n variables: getCommonLambdaEnvVariables().apply(value => ({\n ...value,\n COGNITO_REGION: getEnvVariableAwsRegion(),\n COGNITO_USER_POOL_ID: core.cognitoUserPoolId,\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName,\n DB_TABLE_ELASTICSEARCH: core.elasticsearchDynamodbTableName,\n ELASTIC_SEARCH_ENDPOINT: core.elasticsearchDomainEndpoint,\n ELASTIC_SEARCH_INDEX_PREFIX: process.env.ELASTIC_SEARCH_INDEX_PREFIX,\n ELASTICSEARCH_SHARED_INDEXES: process.env.ELASTICSEARCH_SHARED_INDEXES,\n S3_BUCKET: core.fileManagerBucketId\n })) as Record<string, any>\n },\n vpcConfig: app.getModule(VpcConfig).functionVpcConfig\n }\n });\n\n // Add IAM policy to allow states:StartExecution for the background task Step Function\n const stepFunctionPolicy = app.addResource(aws.iam.Policy, {\n name: \"migration-lambda-step-function-policy\",\n config: {\n policy: {\n Version: \"2012-10-17\",\n Statement: [\n {\n Effect: \"Allow\",\n Action: [\"states:StartExecution\"],\n Resource: [\n pulumi.interpolate`${backgroundTask.stepFunction.output.arn}`,\n pulumi.interpolate`${backgroundTask.stepFunction.output.arn}/*`\n ]\n }\n ]\n }\n }\n });\n\n // Attach policy to the Lambda role\n app.addResource(aws.iam.RolePolicyAttachment, {\n name: \"migration-lambda-attach-step-function-policy\",\n config: {\n role: role.output.name,\n policyArn: stepFunctionPolicy.output.arn\n }\n });\n\n return {\n function: migration\n };\n }\n});\n"],"mappings":"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","ignoreList":[]}
@@ -161,12 +161,12 @@ const createApiPulumiApp = (projectAppParams = {}) => {
161
161
  }
162
162
  });
163
163
  const cloudfront = app.addModule(_.ApiCloudfront);
164
+ const backgroundTask = app.addModule(_.ApiBackgroundTask);
164
165
  const migration = app.addModule(_.ApiMigration);
165
166
  const domains = app.getParam(projectAppParams.domains);
166
167
  if (domains) {
167
168
  (0, _customDomain.applyCustomDomain)(cloudfront, domains);
168
169
  }
169
- const backgroundTask = app.addModule(_.ApiBackgroundTask);
170
170
  app.addOutputs({
171
171
  region: aws.config.region,
172
172
  cognitoUserPoolId: core.cognitoUserPoolId,
@@ -1 +1 @@
1
- {"version":3,"names":["aws","_interopRequireWildcard","require","_pulumi","_","_customDomain","_utils","_constants","_variant","_env","_projectName","_awsRegion","createApiPulumiApp","projectAppParams","baseApp","createPulumiApp","name","path","config","program","app","searchEngineParams","openSearch","getParam","elasticSearch","params","domainName","process","env","AWS_ELASTIC_SEARCH_DOMAIN_NAME","indexPrefix","ELASTIC_SEARCH_INDEX_PREFIX","sharedIndexes","ELASTICSEARCH_SHARED_INDEXES","pulumiResourceNamePrefix","onResource","resource","startsWith","pulumi","addHandler","productionEnvironments","create","DEFAULT_PROD_ENV_NAMES","isProduction","includes","run","core","addModule","CoreOutput","vpcEnabled","vpc","VpcConfig","enabled","pageBuilder","ApiPageBuilder","COGNITO_REGION","getEnvVariableAwsRegion","COGNITO_USER_POOL_ID","cognitoUserPoolId","DB_TABLE","primaryDynamodbTableName","DB_TABLE_LOG","logDynamodbTableName","DB_TABLE_ELASTICSEARCH","elasticsearchDynamodbTableName","ELASTIC_SEARCH_ENDPOINT","elasticsearchDomainEndpoint","S3_BUCKET","fileManagerBucketId","apwScheduler","ApiApwScheduler","primaryDynamodbTableArn","graphql","ApiGraphql","EVENT_BUS","eventBusArn","IMPORT_CREATE_HANDLER","import","functions","output","arn","EXPORT_PROCESS_HANDLER","export","OKTA_ISSUER","APW_SCHEDULER_SCHEDULE_ACTION_HANDLER","scheduleAction","lambda","apwSchedulerEventRule","eventRule","apwSchedulerEventTarget","eventTarget","websocket","ApiWebsocket","fileManager","ApiFileManager","apiGateway","ApiGateway","method","function","download","cloudfront","ApiCloudfront","migration","ApiMigration","domains","applyCustomDomain","backgroundTask","ApiBackgroundTask","addOutputs","region","cognitoAppClientId","cognitoUserPoolPasswordPolicy","apwSchedulerScheduleAction","apwSchedulerExecuteAction","executeAction","apwSchedulerEventTargetId","targetId","dynamoDbTable","migrationLambdaArn","graphqlLambdaName","graphqlLambdaRole","role","backgroundTaskLambdaArn","backgroundTaskStepFunctionArn","stepFunction","websocketApiId","websocketApi","id","websocketApiUrl","dynamoDbElasticsearchTable","addDomainsUrlsOutputs","cloudfrontDistribution","map","distributionDomain","distributionUrl","usedDomain","usedUrl","tagResources","WbyProjectName","getEnvVariableWebinyProjectName","WbyEnvironment","getEnvVariableWebinyEnv","WbyEnvironmentVariant","getEnvVariableWebinyVariant","withServiceManifest","withCommonLambdaEnvVariables","addServiceManifest","manifest","bgTaskSfn","resources","distributionId","exports"],"sources":["createApiPulumiApp.ts"],"sourcesContent":["import * as aws from \"@pulumi/aws\";\nimport { createPulumiApp, PulumiAppParam, PulumiAppParamCallback } from \"@webiny/pulumi\";\nimport {\n ApiApwScheduler,\n ApiBackgroundTask,\n ApiCloudfront,\n ApiFileManager,\n ApiGateway,\n ApiGraphql,\n ApiMigration,\n ApiPageBuilder,\n ApiWebsocket,\n CoreOutput,\n CreateCorePulumiAppParams,\n VpcConfig\n} from \"~/apps\";\nimport { applyCustomDomain, CustomDomainParams } from \"../customDomain\";\nimport {\n addDomainsUrlsOutputs,\n tagResources,\n withCommonLambdaEnvVariables,\n withServiceManifest\n} from \"~/utils\";\nimport { DEFAULT_PROD_ENV_NAMES } from \"~/constants\";\nimport { getEnvVariableWebinyVariant } from \"~/env/variant\";\nimport { getEnvVariableWebinyEnv } from \"~/env/env\";\nimport { getEnvVariableWebinyProjectName } from \"~/env/projectName\";\nimport { getEnvVariableAwsRegion } from \"~/env/awsRegion\";\n\nexport type ApiPulumiApp = ReturnType<typeof createApiPulumiApp>;\n\nexport interface ApiElasticsearchConfig {\n domainName: string;\n indexPrefix: string;\n sharedIndexes: boolean;\n}\n\nexport interface ApiOpenSearchConfig {\n domainName: string;\n indexPrefix: string;\n sharedIndexes: boolean;\n}\n\nexport interface CreateApiPulumiAppParams {\n /**\n * Enables ElasticSearch infrastructure.\n * Note that it requires also changes in application code.\n */\n elasticSearch?: PulumiAppParam<boolean | Partial<ApiElasticsearchConfig>>;\n\n /**\n * Enables OpenSearch infrastructure.\n * Note that it requires also changes in application code.\n */\n openSearch?: PulumiAppParam<boolean | Partial<ApiOpenSearchConfig>>;\n\n /**\n * Enables or disables VPC for the API.\n * For VPC to work you also have to enable it in the Core application.\n */\n vpc?: PulumiAppParam<boolean>;\n\n /** Custom domain configuration */\n domains?: PulumiAppParamCallback<CustomDomainParams>;\n\n /**\n * Provides a way to adjust existing Pulumi code (cloud infrastructure resources)\n * or add additional ones into the mix.\n */\n pulumi?: (app: ApiPulumiApp) => void | Promise<void>;\n\n /**\n * Prefixes names of all Pulumi cloud infrastructure resource with given prefix.\n */\n pulumiResourceNamePrefix?: PulumiAppParam<string>;\n\n /**\n * Treats provided environments as production environments, which\n * are deployed in production deployment mode.\n * https://www.webiny.com/docs/architecture/deployment-modes/production\n */\n productionEnvironments?: PulumiAppParam<string[]>;\n}\n\nexport const createApiPulumiApp = (projectAppParams: CreateApiPulumiAppParams = {}) => {\n const baseApp = createPulumiApp({\n name: \"api\",\n path: \"apps/api\",\n config: projectAppParams,\n program: async app => {\n let searchEngineParams:\n | CreateCorePulumiAppParams[\"openSearch\"]\n | CreateCorePulumiAppParams[\"elasticSearch\"]\n | null = null;\n\n if (projectAppParams.openSearch) {\n searchEngineParams = app.getParam(projectAppParams.openSearch);\n } else if (projectAppParams.elasticSearch) {\n searchEngineParams = app.getParam(projectAppParams.elasticSearch);\n }\n\n if (searchEngineParams) {\n const params = app.getParam(searchEngineParams);\n if (typeof params === \"object\") {\n if (params.domainName) {\n process.env.AWS_ELASTIC_SEARCH_DOMAIN_NAME = params.domainName;\n }\n\n if (params.indexPrefix) {\n process.env.ELASTIC_SEARCH_INDEX_PREFIX = params.indexPrefix;\n }\n\n if (params.sharedIndexes) {\n process.env.ELASTICSEARCH_SHARED_INDEXES = \"true\";\n }\n }\n }\n\n const pulumiResourceNamePrefix = app.getParam(\n projectAppParams.pulumiResourceNamePrefix\n );\n if (pulumiResourceNamePrefix) {\n app.onResource(resource => {\n if (!resource.name.startsWith(pulumiResourceNamePrefix)) {\n resource.name = `${pulumiResourceNamePrefix}${resource.name}`;\n }\n });\n }\n\n // Overrides must be applied via a handler, registered at the very start of the program.\n // By doing this, we're ensuring user's adjustments are not applied too late.\n if (projectAppParams.pulumi) {\n app.addHandler(() => {\n return projectAppParams.pulumi!(app as ApiPulumiApp);\n });\n }\n\n const productionEnvironments =\n app.params.create.productionEnvironments || DEFAULT_PROD_ENV_NAMES;\n const isProduction = productionEnvironments.includes(app.params.run.env);\n\n // Register core output as a module available to all the other modules\n const core = app.addModule(CoreOutput);\n\n // Register VPC config module to be available to other modules.\n const vpcEnabled = app.getParam(projectAppParams?.vpc) ?? isProduction;\n app.addModule(VpcConfig, { enabled: vpcEnabled });\n\n const pageBuilder = app.addModule(ApiPageBuilder, {\n env: {\n COGNITO_REGION: getEnvVariableAwsRegion(),\n COGNITO_USER_POOL_ID: core.cognitoUserPoolId,\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName,\n DB_TABLE_ELASTICSEARCH: core.elasticsearchDynamodbTableName,\n ELASTIC_SEARCH_ENDPOINT: core.elasticsearchDomainEndpoint,\n\n // Not required. Useful for testing purposes / ephemeral environments.\n // https://www.webiny.com/docs/key-topics/ci-cd/testing/slow-ephemeral-environments\n ELASTIC_SEARCH_INDEX_PREFIX: process.env.ELASTIC_SEARCH_INDEX_PREFIX,\n ELASTICSEARCH_SHARED_INDEXES: process.env.ELASTICSEARCH_SHARED_INDEXES,\n\n S3_BUCKET: core.fileManagerBucketId\n }\n });\n\n const apwScheduler = app.addModule(ApiApwScheduler, {\n primaryDynamodbTableArn: core.primaryDynamodbTableArn,\n\n env: {\n COGNITO_REGION: getEnvVariableAwsRegion(),\n COGNITO_USER_POOL_ID: core.cognitoUserPoolId,\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName,\n S3_BUCKET: core.fileManagerBucketId\n }\n });\n\n const graphql = app.addModule(ApiGraphql, {\n env: {\n COGNITO_REGION: getEnvVariableAwsRegion(),\n COGNITO_USER_POOL_ID: core.cognitoUserPoolId,\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName,\n DB_TABLE_ELASTICSEARCH: core.elasticsearchDynamodbTableName,\n ELASTIC_SEARCH_ENDPOINT: core.elasticsearchDomainEndpoint,\n\n // Not required. Useful for testing purposes / ephemeral environments.\n // https://www.webiny.com/docs/key-topics/ci-cd/testing/slow-ephemeral-environments\n ELASTIC_SEARCH_INDEX_PREFIX: process.env.ELASTIC_SEARCH_INDEX_PREFIX,\n ELASTICSEARCH_SHARED_INDEXES: process.env.ELASTICSEARCH_SHARED_INDEXES,\n\n S3_BUCKET: core.fileManagerBucketId,\n EVENT_BUS: core.eventBusArn,\n IMPORT_CREATE_HANDLER: pageBuilder.import.functions.create.output.arn,\n EXPORT_PROCESS_HANDLER: pageBuilder.export.functions.process.output.arn,\n // TODO: move to okta plugin\n OKTA_ISSUER: process.env[\"OKTA_ISSUER\"],\n APW_SCHEDULER_SCHEDULE_ACTION_HANDLER:\n apwScheduler.scheduleAction.lambda.output.arn\n },\n apwSchedulerEventRule: apwScheduler.eventRule.output,\n apwSchedulerEventTarget: apwScheduler.eventTarget.output\n });\n\n const websocket = app.addModule(ApiWebsocket);\n\n const fileManager = app.addModule(ApiFileManager, {\n env: {\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName\n }\n });\n\n const apiGateway = app.addModule(ApiGateway, {\n \"graphql-post\": {\n path: \"/graphql\",\n method: \"POST\",\n function: graphql.functions.graphql.output.arn\n },\n \"graphql-options\": {\n path: \"/graphql\",\n method: \"OPTIONS\",\n function: graphql.functions.graphql.output.arn\n },\n \"files-any\": {\n path: \"/files/{path+}\",\n method: \"ANY\",\n function: fileManager.functions.download.output.arn\n },\n \"private-any\": {\n path: \"/private/{path+}\",\n method: \"ANY\",\n function: fileManager.functions.download.output.arn\n },\n \"cms-post\": {\n path: \"/cms/{key+}\",\n method: \"POST\",\n function: graphql.functions.graphql.output.arn\n },\n \"cms-options\": {\n path: \"/cms/{key+}\",\n method: \"OPTIONS\",\n function: graphql.functions.graphql.output.arn\n },\n \"files-catch-all\": {\n path: \"/{path+}\",\n method: \"ANY\",\n function: fileManager.functions.download.output.arn\n }\n });\n\n const cloudfront = app.addModule(ApiCloudfront);\n const migration = app.addModule(ApiMigration);\n\n const domains = app.getParam(projectAppParams.domains);\n if (domains) {\n applyCustomDomain(cloudfront, domains);\n }\n\n const backgroundTask = app.addModule(ApiBackgroundTask);\n\n app.addOutputs({\n region: aws.config.region,\n cognitoUserPoolId: core.cognitoUserPoolId,\n cognitoAppClientId: core.cognitoAppClientId,\n cognitoUserPoolPasswordPolicy: core.cognitoUserPoolPasswordPolicy,\n apwSchedulerScheduleAction: apwScheduler.scheduleAction.lambda.output.arn,\n apwSchedulerExecuteAction: apwScheduler.executeAction.lambda.output.arn,\n apwSchedulerEventRule: apwScheduler.eventRule.output.name,\n apwSchedulerEventTargetId: apwScheduler.eventTarget.output.targetId,\n dynamoDbTable: core.primaryDynamodbTableName,\n migrationLambdaArn: migration.function.output.arn,\n graphqlLambdaName: graphql.functions.graphql.output.name,\n graphqlLambdaRole: graphql.role.output.arn,\n backgroundTaskLambdaArn: backgroundTask.backgroundTask.output.arn,\n backgroundTaskStepFunctionArn: backgroundTask.stepFunction.output.arn,\n websocketApiId: websocket.websocketApi.output.id,\n websocketApiUrl: websocket.websocketApiUrl\n });\n\n // Only add `dynamoDbElasticsearchTable` output if using search engine (ES/OS).\n if (searchEngineParams) {\n app.addOutputs({\n dynamoDbElasticsearchTable: core.elasticsearchDynamodbTableName\n });\n }\n\n app.addHandler(() => {\n addDomainsUrlsOutputs({\n app,\n cloudfrontDistribution: cloudfront,\n map: {\n distributionDomain: \"cloudfrontApiDomain\",\n distributionUrl: \"cloudfrontApiUrl\",\n usedDomain: \"apiDomain\",\n usedUrl: \"apiUrl\"\n }\n });\n });\n\n tagResources({\n WbyProjectName: getEnvVariableWebinyProjectName(),\n WbyEnvironment: getEnvVariableWebinyEnv(),\n WbyEnvironmentVariant: getEnvVariableWebinyVariant()\n });\n\n return {\n fileManager,\n graphql,\n apiGateway,\n websocket,\n cloudfront,\n apwScheduler,\n migration,\n backgroundTask\n };\n }\n });\n\n const app = withServiceManifest(withCommonLambdaEnvVariables(baseApp));\n\n app.addHandler(() => {\n app.addServiceManifest({\n name: \"api\",\n manifest: {\n bgTaskSfn: baseApp.resources.backgroundTask.stepFunction.output.arn,\n cloudfront: {\n distributionId: baseApp.resources.cloudfront.output.id\n }\n }\n });\n });\n\n return app;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["aws","_interopRequireWildcard","require","_pulumi","_","_customDomain","_utils","_constants","_variant","_env","_projectName","_awsRegion","createApiPulumiApp","projectAppParams","baseApp","createPulumiApp","name","path","config","program","app","searchEngineParams","openSearch","getParam","elasticSearch","params","domainName","process","env","AWS_ELASTIC_SEARCH_DOMAIN_NAME","indexPrefix","ELASTIC_SEARCH_INDEX_PREFIX","sharedIndexes","ELASTICSEARCH_SHARED_INDEXES","pulumiResourceNamePrefix","onResource","resource","startsWith","pulumi","addHandler","productionEnvironments","create","DEFAULT_PROD_ENV_NAMES","isProduction","includes","run","core","addModule","CoreOutput","vpcEnabled","vpc","VpcConfig","enabled","pageBuilder","ApiPageBuilder","COGNITO_REGION","getEnvVariableAwsRegion","COGNITO_USER_POOL_ID","cognitoUserPoolId","DB_TABLE","primaryDynamodbTableName","DB_TABLE_LOG","logDynamodbTableName","DB_TABLE_ELASTICSEARCH","elasticsearchDynamodbTableName","ELASTIC_SEARCH_ENDPOINT","elasticsearchDomainEndpoint","S3_BUCKET","fileManagerBucketId","apwScheduler","ApiApwScheduler","primaryDynamodbTableArn","graphql","ApiGraphql","EVENT_BUS","eventBusArn","IMPORT_CREATE_HANDLER","import","functions","output","arn","EXPORT_PROCESS_HANDLER","export","OKTA_ISSUER","APW_SCHEDULER_SCHEDULE_ACTION_HANDLER","scheduleAction","lambda","apwSchedulerEventRule","eventRule","apwSchedulerEventTarget","eventTarget","websocket","ApiWebsocket","fileManager","ApiFileManager","apiGateway","ApiGateway","method","function","download","cloudfront","ApiCloudfront","backgroundTask","ApiBackgroundTask","migration","ApiMigration","domains","applyCustomDomain","addOutputs","region","cognitoAppClientId","cognitoUserPoolPasswordPolicy","apwSchedulerScheduleAction","apwSchedulerExecuteAction","executeAction","apwSchedulerEventTargetId","targetId","dynamoDbTable","migrationLambdaArn","graphqlLambdaName","graphqlLambdaRole","role","backgroundTaskLambdaArn","backgroundTaskStepFunctionArn","stepFunction","websocketApiId","websocketApi","id","websocketApiUrl","dynamoDbElasticsearchTable","addDomainsUrlsOutputs","cloudfrontDistribution","map","distributionDomain","distributionUrl","usedDomain","usedUrl","tagResources","WbyProjectName","getEnvVariableWebinyProjectName","WbyEnvironment","getEnvVariableWebinyEnv","WbyEnvironmentVariant","getEnvVariableWebinyVariant","withServiceManifest","withCommonLambdaEnvVariables","addServiceManifest","manifest","bgTaskSfn","resources","distributionId","exports"],"sources":["createApiPulumiApp.ts"],"sourcesContent":["import * as aws from \"@pulumi/aws\";\nimport { createPulumiApp, PulumiAppParam, PulumiAppParamCallback } from \"@webiny/pulumi\";\nimport {\n ApiApwScheduler,\n ApiBackgroundTask,\n ApiCloudfront,\n ApiFileManager,\n ApiGateway,\n ApiGraphql,\n ApiMigration,\n ApiPageBuilder,\n ApiWebsocket,\n CoreOutput,\n CreateCorePulumiAppParams,\n VpcConfig\n} from \"~/apps\";\nimport { applyCustomDomain, CustomDomainParams } from \"../customDomain\";\nimport {\n addDomainsUrlsOutputs,\n tagResources,\n withCommonLambdaEnvVariables,\n withServiceManifest\n} from \"~/utils\";\nimport { DEFAULT_PROD_ENV_NAMES } from \"~/constants\";\nimport { getEnvVariableWebinyVariant } from \"~/env/variant\";\nimport { getEnvVariableWebinyEnv } from \"~/env/env\";\nimport { getEnvVariableWebinyProjectName } from \"~/env/projectName\";\nimport { getEnvVariableAwsRegion } from \"~/env/awsRegion\";\n\nexport type ApiPulumiApp = ReturnType<typeof createApiPulumiApp>;\n\nexport interface ApiElasticsearchConfig {\n domainName: string;\n indexPrefix: string;\n sharedIndexes: boolean;\n}\n\nexport interface ApiOpenSearchConfig {\n domainName: string;\n indexPrefix: string;\n sharedIndexes: boolean;\n}\n\nexport interface CreateApiPulumiAppParams {\n /**\n * Enables ElasticSearch infrastructure.\n * Note that it requires also changes in application code.\n */\n elasticSearch?: PulumiAppParam<boolean | Partial<ApiElasticsearchConfig>>;\n\n /**\n * Enables OpenSearch infrastructure.\n * Note that it requires also changes in application code.\n */\n openSearch?: PulumiAppParam<boolean | Partial<ApiOpenSearchConfig>>;\n\n /**\n * Enables or disables VPC for the API.\n * For VPC to work you also have to enable it in the Core application.\n */\n vpc?: PulumiAppParam<boolean>;\n\n /** Custom domain configuration */\n domains?: PulumiAppParamCallback<CustomDomainParams>;\n\n /**\n * Provides a way to adjust existing Pulumi code (cloud infrastructure resources)\n * or add additional ones into the mix.\n */\n pulumi?: (app: ApiPulumiApp) => void | Promise<void>;\n\n /**\n * Prefixes names of all Pulumi cloud infrastructure resource with given prefix.\n */\n pulumiResourceNamePrefix?: PulumiAppParam<string>;\n\n /**\n * Treats provided environments as production environments, which\n * are deployed in production deployment mode.\n * https://www.webiny.com/docs/architecture/deployment-modes/production\n */\n productionEnvironments?: PulumiAppParam<string[]>;\n}\n\nexport const createApiPulumiApp = (projectAppParams: CreateApiPulumiAppParams = {}) => {\n const baseApp = createPulumiApp({\n name: \"api\",\n path: \"apps/api\",\n config: projectAppParams,\n program: async app => {\n let searchEngineParams:\n | CreateCorePulumiAppParams[\"openSearch\"]\n | CreateCorePulumiAppParams[\"elasticSearch\"]\n | null = null;\n\n if (projectAppParams.openSearch) {\n searchEngineParams = app.getParam(projectAppParams.openSearch);\n } else if (projectAppParams.elasticSearch) {\n searchEngineParams = app.getParam(projectAppParams.elasticSearch);\n }\n\n if (searchEngineParams) {\n const params = app.getParam(searchEngineParams);\n if (typeof params === \"object\") {\n if (params.domainName) {\n process.env.AWS_ELASTIC_SEARCH_DOMAIN_NAME = params.domainName;\n }\n\n if (params.indexPrefix) {\n process.env.ELASTIC_SEARCH_INDEX_PREFIX = params.indexPrefix;\n }\n\n if (params.sharedIndexes) {\n process.env.ELASTICSEARCH_SHARED_INDEXES = \"true\";\n }\n }\n }\n\n const pulumiResourceNamePrefix = app.getParam(\n projectAppParams.pulumiResourceNamePrefix\n );\n if (pulumiResourceNamePrefix) {\n app.onResource(resource => {\n if (!resource.name.startsWith(pulumiResourceNamePrefix)) {\n resource.name = `${pulumiResourceNamePrefix}${resource.name}`;\n }\n });\n }\n\n // Overrides must be applied via a handler, registered at the very start of the program.\n // By doing this, we're ensuring user's adjustments are not applied too late.\n if (projectAppParams.pulumi) {\n app.addHandler(() => {\n return projectAppParams.pulumi!(app as ApiPulumiApp);\n });\n }\n\n const productionEnvironments =\n app.params.create.productionEnvironments || DEFAULT_PROD_ENV_NAMES;\n const isProduction = productionEnvironments.includes(app.params.run.env);\n\n // Register core output as a module available to all the other modules\n const core = app.addModule(CoreOutput);\n\n // Register VPC config module to be available to other modules.\n const vpcEnabled = app.getParam(projectAppParams?.vpc) ?? isProduction;\n app.addModule(VpcConfig, { enabled: vpcEnabled });\n\n const pageBuilder = app.addModule(ApiPageBuilder, {\n env: {\n COGNITO_REGION: getEnvVariableAwsRegion(),\n COGNITO_USER_POOL_ID: core.cognitoUserPoolId,\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName,\n DB_TABLE_ELASTICSEARCH: core.elasticsearchDynamodbTableName,\n ELASTIC_SEARCH_ENDPOINT: core.elasticsearchDomainEndpoint,\n\n // Not required. Useful for testing purposes / ephemeral environments.\n // https://www.webiny.com/docs/key-topics/ci-cd/testing/slow-ephemeral-environments\n ELASTIC_SEARCH_INDEX_PREFIX: process.env.ELASTIC_SEARCH_INDEX_PREFIX,\n ELASTICSEARCH_SHARED_INDEXES: process.env.ELASTICSEARCH_SHARED_INDEXES,\n\n S3_BUCKET: core.fileManagerBucketId\n }\n });\n\n const apwScheduler = app.addModule(ApiApwScheduler, {\n primaryDynamodbTableArn: core.primaryDynamodbTableArn,\n\n env: {\n COGNITO_REGION: getEnvVariableAwsRegion(),\n COGNITO_USER_POOL_ID: core.cognitoUserPoolId,\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName,\n S3_BUCKET: core.fileManagerBucketId\n }\n });\n\n const graphql = app.addModule(ApiGraphql, {\n env: {\n COGNITO_REGION: getEnvVariableAwsRegion(),\n COGNITO_USER_POOL_ID: core.cognitoUserPoolId,\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName,\n DB_TABLE_ELASTICSEARCH: core.elasticsearchDynamodbTableName,\n ELASTIC_SEARCH_ENDPOINT: core.elasticsearchDomainEndpoint,\n\n // Not required. Useful for testing purposes / ephemeral environments.\n // https://www.webiny.com/docs/key-topics/ci-cd/testing/slow-ephemeral-environments\n ELASTIC_SEARCH_INDEX_PREFIX: process.env.ELASTIC_SEARCH_INDEX_PREFIX,\n ELASTICSEARCH_SHARED_INDEXES: process.env.ELASTICSEARCH_SHARED_INDEXES,\n\n S3_BUCKET: core.fileManagerBucketId,\n EVENT_BUS: core.eventBusArn,\n IMPORT_CREATE_HANDLER: pageBuilder.import.functions.create.output.arn,\n EXPORT_PROCESS_HANDLER: pageBuilder.export.functions.process.output.arn,\n // TODO: move to okta plugin\n OKTA_ISSUER: process.env[\"OKTA_ISSUER\"],\n APW_SCHEDULER_SCHEDULE_ACTION_HANDLER:\n apwScheduler.scheduleAction.lambda.output.arn\n },\n apwSchedulerEventRule: apwScheduler.eventRule.output,\n apwSchedulerEventTarget: apwScheduler.eventTarget.output\n });\n\n const websocket = app.addModule(ApiWebsocket);\n\n const fileManager = app.addModule(ApiFileManager, {\n env: {\n DB_TABLE: core.primaryDynamodbTableName,\n DB_TABLE_LOG: core.logDynamodbTableName\n }\n });\n\n const apiGateway = app.addModule(ApiGateway, {\n \"graphql-post\": {\n path: \"/graphql\",\n method: \"POST\",\n function: graphql.functions.graphql.output.arn\n },\n \"graphql-options\": {\n path: \"/graphql\",\n method: \"OPTIONS\",\n function: graphql.functions.graphql.output.arn\n },\n \"files-any\": {\n path: \"/files/{path+}\",\n method: \"ANY\",\n function: fileManager.functions.download.output.arn\n },\n \"private-any\": {\n path: \"/private/{path+}\",\n method: \"ANY\",\n function: fileManager.functions.download.output.arn\n },\n \"cms-post\": {\n path: \"/cms/{key+}\",\n method: \"POST\",\n function: graphql.functions.graphql.output.arn\n },\n \"cms-options\": {\n path: \"/cms/{key+}\",\n method: \"OPTIONS\",\n function: graphql.functions.graphql.output.arn\n },\n \"files-catch-all\": {\n path: \"/{path+}\",\n method: \"ANY\",\n function: fileManager.functions.download.output.arn\n }\n });\n\n const cloudfront = app.addModule(ApiCloudfront);\n const backgroundTask = app.addModule(ApiBackgroundTask);\n const migration = app.addModule(ApiMigration);\n\n const domains = app.getParam(projectAppParams.domains);\n if (domains) {\n applyCustomDomain(cloudfront, domains);\n }\n\n app.addOutputs({\n region: aws.config.region,\n cognitoUserPoolId: core.cognitoUserPoolId,\n cognitoAppClientId: core.cognitoAppClientId,\n cognitoUserPoolPasswordPolicy: core.cognitoUserPoolPasswordPolicy,\n apwSchedulerScheduleAction: apwScheduler.scheduleAction.lambda.output.arn,\n apwSchedulerExecuteAction: apwScheduler.executeAction.lambda.output.arn,\n apwSchedulerEventRule: apwScheduler.eventRule.output.name,\n apwSchedulerEventTargetId: apwScheduler.eventTarget.output.targetId,\n dynamoDbTable: core.primaryDynamodbTableName,\n migrationLambdaArn: migration.function.output.arn,\n graphqlLambdaName: graphql.functions.graphql.output.name,\n graphqlLambdaRole: graphql.role.output.arn,\n backgroundTaskLambdaArn: backgroundTask.backgroundTask.output.arn,\n backgroundTaskStepFunctionArn: backgroundTask.stepFunction.output.arn,\n websocketApiId: websocket.websocketApi.output.id,\n websocketApiUrl: websocket.websocketApiUrl\n });\n\n // Only add `dynamoDbElasticsearchTable` output if using search engine (ES/OS).\n if (searchEngineParams) {\n app.addOutputs({\n dynamoDbElasticsearchTable: core.elasticsearchDynamodbTableName\n });\n }\n\n app.addHandler(() => {\n addDomainsUrlsOutputs({\n app,\n cloudfrontDistribution: cloudfront,\n map: {\n distributionDomain: \"cloudfrontApiDomain\",\n distributionUrl: \"cloudfrontApiUrl\",\n usedDomain: \"apiDomain\",\n usedUrl: \"apiUrl\"\n }\n });\n });\n\n tagResources({\n WbyProjectName: getEnvVariableWebinyProjectName(),\n WbyEnvironment: getEnvVariableWebinyEnv(),\n WbyEnvironmentVariant: getEnvVariableWebinyVariant()\n });\n\n return {\n fileManager,\n graphql,\n apiGateway,\n websocket,\n cloudfront,\n apwScheduler,\n migration,\n backgroundTask\n };\n }\n });\n\n const app = withServiceManifest(withCommonLambdaEnvVariables(baseApp));\n\n app.addHandler(() => {\n app.addServiceManifest({\n name: \"api\",\n manifest: {\n bgTaskSfn: baseApp.resources.backgroundTask.stepFunction.output.arn,\n cloudfront: {\n distributionId: baseApp.resources.cloudfront.output.id\n }\n }\n });\n });\n\n return app;\n};\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/pulumi-aws",
3
- "version": "5.43.0-beta.1",
3
+ "version": "5.43.0-beta.2",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/webiny/webiny-js.git"
@@ -16,22 +16,22 @@
16
16
  "@pulumi/aws": "6.67.0",
17
17
  "@pulumi/pulumi": "3.147.0",
18
18
  "@pulumi/random": "4.17.0",
19
- "@webiny/aws-sdk": "5.43.0-beta.1",
20
- "@webiny/cli-plugin-deploy-pulumi": "5.43.0-beta.1",
21
- "@webiny/pulumi": "5.43.0-beta.1",
22
- "@webiny/utils": "5.43.0-beta.1",
23
- "@webiny/wcp": "5.43.0-beta.1",
19
+ "@webiny/aws-sdk": "5.43.0-beta.2",
20
+ "@webiny/cli-plugin-deploy-pulumi": "5.43.0-beta.2",
21
+ "@webiny/pulumi": "5.43.0-beta.2",
22
+ "@webiny/utils": "5.43.0-beta.2",
23
+ "@webiny/wcp": "5.43.0-beta.2",
24
24
  "form-data": "4.0.0",
25
25
  "lodash": "4.17.21",
26
26
  "node-fetch": "2.6.7",
27
27
  "zod": "3.23.8"
28
28
  },
29
29
  "devDependencies": {
30
- "@webiny/api-page-builder": "5.43.0-beta.1",
31
- "@webiny/aws-layers": "5.43.0-beta.1",
32
- "@webiny/cli": "5.43.0-beta.1",
33
- "@webiny/feature-flags": "5.43.0-beta.1",
34
- "@webiny/project-utils": "5.43.0-beta.1",
30
+ "@webiny/api-page-builder": "5.43.0-beta.2",
31
+ "@webiny/aws-layers": "5.43.0-beta.2",
32
+ "@webiny/cli": "5.43.0-beta.2",
33
+ "@webiny/feature-flags": "5.43.0-beta.2",
34
+ "@webiny/project-utils": "5.43.0-beta.2",
35
35
  "chalk": "4.1.2",
36
36
  "mime": "3.0.0",
37
37
  "rimraf": "6.0.1",
@@ -54,5 +54,5 @@
54
54
  ]
55
55
  }
56
56
  },
57
- "gitHead": "d47a234b09383cb7ab2d9907300b8eaa89aa64d6"
57
+ "gitHead": "dbed8c263df662358aca18c3cf452cd280f2dfd9"
58
58
  }