@adobe/helix-deploy 11.0.4 → 11.0.6

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/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [11.0.6](https://github.com/adobe/helix-deploy/compare/v11.0.5...v11.0.6) (2024-02-24)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **deps:** update external fixes ([#671](https://github.com/adobe/helix-deploy/issues/671)) ([3731730](https://github.com/adobe/helix-deploy/commit/373173029b1d7457361dd7197d5113ec2f4733c4))
7
+
8
+ ## [11.0.5](https://github.com/adobe/helix-deploy/compare/v11.0.4...v11.0.5) (2024-02-20)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **aws:** allow extra permissions to optionally include an alias ([#666](https://github.com/adobe/helix-deploy/issues/666)) ([bed38d3](https://github.com/adobe/helix-deploy/commit/bed38d3732de306827712f627520127d0a2a1f35))
14
+
1
15
  ## [11.0.4](https://github.com/adobe/helix-deploy/compare/v11.0.3...v11.0.4) (2024-02-17)
2
16
 
3
17
 
package/README.md CHANGED
@@ -132,7 +132,7 @@ AWS Deployment Options
132
132
  --aws-log-format The lambda log format. Can be either "JSON" or "Text". [string]
133
133
  --aws-layers List of layers ARNs to attach to the lambda function. [array]
134
134
  --aws-tracing-mode The lambda tracing mode. Can be either "Active" or "PassThrough". [string]
135
- --aws-extra-permissions A list of additional invoke permissions to add to the lambda function in the form <SourceARN>@<Principal>. [array]
135
+ --aws-extra-permissions A list of additional invoke permissions to add to the lambda function in the form <SourceARN>@<Principal>. Optionally, you can use <SourceARN>@<Principal>:<Alias> if you want to scope the permission to a specific alias. [array]
136
136
  --aws-tags A list of additional tags to attach to the lambda function in the form key=value. To remove a tag, use key= (i.e. without a value).[array]
137
137
 
138
138
  Google Deployment Options
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adobe/helix-deploy",
3
- "version": "11.0.4",
3
+ "version": "11.0.6",
4
4
  "description": "Library and Commandline Tools to build and deploy OpenWhisk Actions",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/adobe/helix-deploy#readme",
@@ -40,13 +40,13 @@
40
40
  "@adobe/fastly-native-promises": "3.0.6",
41
41
  "@adobe/fetch": "4.1.1",
42
42
  "@adobe/helix-shared-process-queue": "3.0.1",
43
- "@aws-sdk/client-apigatewayv2": "3.515.0",
44
- "@aws-sdk/client-lambda": "3.516.0",
45
- "@aws-sdk/client-s3": "3.515.0",
46
- "@aws-sdk/client-secrets-manager": "3.515.0",
47
- "@aws-sdk/client-ssm": "3.515.0",
48
- "@aws-sdk/client-sts": "3.515.0",
49
- "@fastly/js-compute": "3.8.2",
43
+ "@aws-sdk/client-apigatewayv2": "3.521.0",
44
+ "@aws-sdk/client-lambda": "3.521.0",
45
+ "@aws-sdk/client-s3": "3.521.0",
46
+ "@aws-sdk/client-secrets-manager": "3.521.0",
47
+ "@aws-sdk/client-ssm": "3.521.0",
48
+ "@aws-sdk/client-sts": "3.521.0",
49
+ "@fastly/js-compute": "3.8.3",
50
50
  "@google-cloud/functions": "3.2.0",
51
51
  "@google-cloud/secret-manager": "5.1.0",
52
52
  "@google-cloud/storage": "7.7.0",
@@ -58,14 +58,14 @@
58
58
  "archiver": "6.0.1",
59
59
  "chalk-template": "1.1.0",
60
60
  "constants-browserify": "1.0.0",
61
- "dotenv": "16.4.4",
61
+ "dotenv": "16.4.5",
62
62
  "form-data": "4.0.0",
63
63
  "fs-extra": "11.2.0",
64
- "isomorphic-git": "1.25.5",
64
+ "isomorphic-git": "1.25.6",
65
65
  "openwhisk": "3.21.8",
66
66
  "semver": "7.6.0",
67
67
  "tar": "6.2.0",
68
- "webpack": "5.90.2",
68
+ "webpack": "5.90.3",
69
69
  "yargs": "17.7.2"
70
70
  },
71
71
  "devDependencies": {
@@ -75,15 +75,15 @@
75
75
  "@semantic-release/changelog": "6.0.3",
76
76
  "@semantic-release/git": "10.0.1",
77
77
  "c8": "9.1.0",
78
- "eslint": "8.56.0",
78
+ "eslint": "8.57.0",
79
79
  "husky": "9.0.11",
80
80
  "lint-staged": "15.2.2",
81
81
  "mocha": "10.3.0",
82
82
  "mocha-junit-reporter": "2.2.1",
83
83
  "mocha-multi-reporters": "1.5.1",
84
- "nock": "13.5.1",
84
+ "nock": "13.5.3",
85
85
  "semantic-release": "22.0.12",
86
- "yauzl": "2.10.0"
86
+ "yauzl": "3.1.0"
87
87
  },
88
88
  "engines": {
89
89
  "node": ">=12.0"
@@ -255,7 +255,7 @@ export default class AWSConfig {
255
255
  type: 'string',
256
256
  })
257
257
  .option('aws-extra-permissions', {
258
- description: 'A list of additional invoke permissions to add to the lambda function in the form <SourceARN>@<Principal>.',
258
+ description: 'A list of additional invoke permissions to add to the lambda function in the form <SourceARN>@<Principal>. Optionally, you can use <SourceARN>@<Principal>:<Alias> if you want to scope the permission to a specific alias.',
259
259
  type: 'string',
260
260
  array: true,
261
261
  })
@@ -1044,16 +1044,19 @@ export default class AWSDeployer extends BaseDeployer {
1044
1044
 
1045
1045
  if (this._cfg.extraPermissions) {
1046
1046
  await Promise.allSettled(this._cfg.extraPermissions.map(async (extraPermission) => {
1047
- const [sourceArn, principal] = extraPermission.split('@', 2);
1047
+ const [sourceArn, principalAndOptionalAlias] = extraPermission.split('@', 2);
1048
+ const [principal, alias] = principalAndOptionalAlias.split(':', 2);
1049
+ const functionNameForPermission = alias ? `${functionName}:${alias}` : functionName;
1050
+
1048
1051
  try {
1049
1052
  await this._lambda.send(new AddPermissionCommand({
1050
- FunctionName: functionName,
1053
+ FunctionName: functionNameForPermission,
1051
1054
  Action: 'lambda:InvokeFunction',
1052
1055
  SourceArn: sourceArn,
1053
1056
  Principal: principal,
1054
1057
  StatementId: crypto.createHash('sha256').update(functionName + sourceArn).digest('hex'),
1055
1058
  }));
1056
- this.log.info(chalk`{green ok:} added invoke permissions for ${sourceArn}`);
1059
+ this.log.info(chalk`{green ok:} added invoke permissions for ${sourceArn} on ${functionNameForPermission}`);
1057
1060
  } catch (e) {
1058
1061
  // ignore, most likely the permission already exists
1059
1062
  }