@izara_project/izara-market-library-service-schemas 1.0.45 → 1.0.47

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.
Files changed (82) hide show
  1. package/package.json +5 -5
  2. package/src/reStructure/GenerateCode.js +6 -2
  3. package/src/reStructure/TemplateData/EndpointPerService/handler/api/data.js +0 -1
  4. package/src/reStructure/TemplateData/EndpointPerService/handler/api/template.ejs +1 -1
  5. package/src/reStructure/TemplateData/EndpointPerService/handler/dsq/data.js +0 -1
  6. package/src/reStructure/TemplateData/EndpointPerService/handler/inv/data.js +0 -1
  7. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/create/backupTemplate.ejs +9 -9
  8. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/create/template.ejs +13 -14
  9. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/get/template.ejs +1 -1
  10. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/update/template.ejs +4 -6
  11. package/src/reStructure/TemplateData/EndpointPerService/yaml/template.ejs +2 -2
  12. package/src/reStructure/TemplateData/externalService/lambdaRole/data.js +2 -2
  13. package/src/reStructure/TemplateData/externalService/snsTopicSubscriptions/data.js +4 -4
  14. package/src/reStructure/TemplateData/findData/findDataYaml/template.ejs +2 -2
  15. package/src/reStructure/TemplateData/flowSchema/CreateRecordComplete/functionYaml/template.ejs +1 -1
  16. package/src/reStructure/TemplateData/flowSchema/components/upload/confirmReserved/functionYaml/template.ejs +1 -1
  17. package/src/reStructure/TemplateData/flowSchema/components/upload/createObjectComplete/functionYaml/template.ejs +1 -1
  18. package/src/reStructure/TemplateData/flowSchema/components/upload/preSignUrl/createPresignUrl/functionYaml/template.ejs +1 -1
  19. package/src/reStructure/TemplateData/flowSchema/externalTopic/Complete/functionYaml/data.js +1 -1
  20. package/src/reStructure/TemplateData/flowSchema/externalTopic/Complete/functionYaml/template.ejs +1 -1
  21. package/src/reStructure/TemplateData/flowSchema/externalTopic/Process/functionYaml/data.js +5 -5
  22. package/src/reStructure/TemplateData/flowSchema/externalTopic/Process/functionYaml/template.ejs +1 -1
  23. package/src/reStructure/TemplateData/flowSchema/flowSchemaOwnTopic/EndpointComplete/functionYaml/data.js +1 -1
  24. package/src/reStructure/TemplateData/flowSchema/flowSchemaOwnTopic/EndpointComplete/functionYaml/template.ejs +1 -1
  25. package/src/reStructure/TemplateData/flowSchema/flowSchemaOwnTopic/EndpointComponent/functionYaml/data.js +5 -5
  26. package/src/reStructure/TemplateData/flowSchema/flowSchemaOwnTopic/EndpointComponent/functionYaml/template.ejs +1 -1
  27. package/src/reStructure/TemplateData/flowSchema/flowSchemaOwnTopic/FlowSchemaComponent/functionYaml/data.js +1 -1
  28. package/src/reStructure/TemplateData/flowSchema/flowStep/functionYaml/data.js +1 -1
  29. package/src/reStructure/TemplateData/flowSchema/flowStep/functionYaml/template.ejs +1 -1
  30. package/src/reStructure/TemplateData/flowSchema/flowStep/sns-in/data.js +3 -3
  31. package/src/reStructure/TemplateData/flowSchema/register/complete/functionYaml/template.ejs +1 -1
  32. package/src/reStructure/TemplateData/flowSchema/webSocketComplete/functionYaml/template.ejs +1 -1
  33. package/src/reStructure/TemplateData/flowSchema/webSocketComplete/sqs/data.js +36 -22
  34. package/src/reStructure/TemplateData/flowSchema/webSocketComplete/sqs/template.ejs +0 -9
  35. package/src/reStructure/TemplateData/flowSchema/webSocketComplete/sqs/templateSub.ejs +7 -0
  36. package/src/reStructure/TemplateData/generateRole/data.js +94 -0
  37. package/src/reStructure/TemplateData/generateRole/template.ejs +33 -0
  38. package/src/reStructure/TemplateData/perActionComplete/create/mainFunction/template.ejs +25 -21
  39. package/src/reStructure/TemplateData/perActionComplete/create/yaml/template.ejs +1 -1
  40. package/src/reStructure/TemplateData/perActionComplete/delete/mainFunction/template.ejs +6 -6
  41. package/src/reStructure/TemplateData/perActionComplete/delete/yaml/template.ejs +1 -1
  42. package/src/reStructure/TemplateData/perActionComplete/get/mainFunction/template.ejs +20 -17
  43. package/src/reStructure/TemplateData/perActionComplete/get/yaml/template.ejs +1 -1
  44. package/src/reStructure/TemplateData/perActionComplete/update/mainFunction/template.ejs +20 -17
  45. package/src/reStructure/TemplateData/perActionComplete/update/yaml/template.ejs +1 -1
  46. package/src/reStructure/TemplateData/processLogicalPagination/yaml/dsq/template.ejs +2 -2
  47. package/src/reStructure/TemplateData/processLogicalPagination/yaml/sqs/template.ejs +2 -2
  48. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/api/template.ejs +2 -2
  49. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/dsq/template.ejs +2 -2
  50. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/inv/template.ejs +2 -2
  51. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/sqs/template.ejs +2 -2
  52. package/src/reStructure/TemplateData/relationshipPerAction/create/action/mainFunction/template.ejs +2 -0
  53. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/functionYaml/template.ejs +1 -1
  54. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/mainFunction/template.ejs +19 -18
  55. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/api/data.js +2 -2
  56. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/api/template.ejs +2 -2
  57. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/dsq/data.js +1 -1
  58. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/dsq/template.ejs +2 -2
  59. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/inv/data.js +1 -1
  60. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/inv/template.ejs +2 -2
  61. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/sqs/data.js +1 -1
  62. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/sqs/template.ejs +2 -2
  63. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/sqs/template.ejs +0 -3
  64. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/mainFunction/template.ejs +2 -24
  65. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/functionYaml/template.ejs +1 -1
  66. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/handler/sqs/template.ejs +3 -5
  67. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/mainFunction/template.ejs +21 -20
  68. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/api/template.ejs +2 -2
  69. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/dsq/data.js +1 -1
  70. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/dsq/template.ejs +2 -2
  71. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/inv/template.ejs +2 -2
  72. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/sqs/template.ejs +2 -2
  73. package/src/reStructure/TemplateData/relationshipPerAction/get/complete/functionYaml/template.ejs +1 -1
  74. package/src/reStructure/TemplateData/relationshipPerAction/get/complete/mainFunction/template.ejs +19 -18
  75. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/api/template.ejs +2 -2
  76. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/dsq/data.js +1 -1
  77. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/dsq/template.ejs +2 -2
  78. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/inv/template.ejs +2 -2
  79. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/sqs/template.ejs +2 -2
  80. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/functionYaml/template.ejs +1 -1
  81. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/mainFunction/template.ejs +18 -17
  82. package/src/reStructure/libs/ValidateAddOnDataStructure.js +1 -1
@@ -6,7 +6,7 @@
6
6
  - sqs:
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %>
8
8
  batchSize: 10
9
- filterPatterns: #**** need to update serverless framwork upper v.2.69.1
9
+ filterPatterns: #**** need to update serverless framework upper v.2.69.1
10
10
  - body: {"MessageAttributes":{"callingFlow":{"Value":["${self:custom.iz_resourcePrefix}<%- functionName %>"]}}} # functionName of callingFlow
11
11
  - body: {"MessageAttributes":{"callingFlow":{"Value":[{"exists":false}]}}}
12
12
  role: <%- roleName %>Role
@@ -6,7 +6,7 @@
6
6
  - sqs:
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- queueName %>
8
8
  batchSize: 10
9
- filterPatterns: #**** need to update serverless framwork upper v.2.69.1
9
+ filterPatterns: #**** need to update serverless framework upper v.2.69.1
10
10
  - body: {"MessageAttributes":{"callingFlow":{"Value":["${self:custom.iz_resourcePrefix}<%- functionName %>"]}}} # functionName of callingFlow
11
11
  - body: {"MessageAttributes":{"callingFlow":{"Value":[{"exists":false}]}}}
12
12
  role: <%- roleName %>Role
@@ -32,7 +32,7 @@ const STORAGE_TYPES = {
32
32
  }
33
33
 
34
34
  const templatePath = path.join(__dirname, './template.ejs');
35
-
35
+ const templateSub = path.join(__dirname, "./templateSub.ejs");
36
36
 
37
37
  const { SOURCE_PATH, SAVE_FILE_NAME, FUNCTION_NAME, HANDLER } = require('../../../../../MainLibs/src/Consts.js');
38
38
 
@@ -48,7 +48,6 @@ const { SOURCE_PATH, SAVE_FILE_NAME, FUNCTION_NAME, HANDLER } = require('../../.
48
48
 
49
49
  function createDataForDefaultSnsInSqs(_izContext, allFlowSchema, srcPath) {
50
50
  let resultsForCreateDefaultSnsInSqs = [];
51
- let defaultDsqQueueDataList = [];
52
51
  for (const flowSchema of allFlowSchema.records) {
53
52
  if (flowSchema.hasOwnProperty("flowSteps")) {
54
53
 
@@ -62,36 +61,51 @@ function createDataForDefaultSnsInSqs(_izContext, allFlowSchema, srcPath) {
62
61
  if (flowSteps.includes("Out")) {
63
62
  if (flowSchema.outputTopic) {
64
63
  let topicOut = `${upperCase(flowSchema.flowTag)}`;
65
- defaultDsqQueueDataList.push({
66
- queueName: `WebSocketComplete` + upperCase(HANDLER.hdrSqs),
67
- subscribeTo: topicOut
68
- }
64
+ resultsForCreateDefaultSnsInSqs.push(createSubscriptionForWebSocketComplete(topicOut, srcPath)
69
65
  )
70
-
71
66
  }
72
67
  }
73
68
  }
74
69
  }
75
70
  }
76
71
  }
72
+ resultsForCreateDefaultSnsInSqs.push(createWebSocketCompleteQueue(srcPath))
77
73
 
78
- if (defaultDsqQueueDataList.length) {
79
- for (let defaultDsqQueueData of defaultDsqQueueDataList) {
80
- resultsForCreateDefaultSnsInSqs.push({
81
- templatePath: templatePath,
82
- templateData: defaultDsqQueueData,
83
- setting: {
84
- initialData: "Resources:\n",
85
- savePath: path.join(srcPath, SOURCE_PATH.resourceYaml),
86
- saveFileName: SAVE_FILE_NAME.snsInSqsYaml,
87
- fileExtension: ".yml",
88
- isAppend: true
89
- }
90
- })
91
- }
92
- }
93
74
 
94
75
  return resultsForCreateDefaultSnsInSqs;
95
76
  }
96
77
 
78
+
79
+ function createSubscriptionForWebSocketComplete(subscribeTo, srcPath) {
80
+ return {
81
+ templatePath: templateSub,
82
+ templateData: {
83
+ subscribeTo,
84
+ queueName: `WebSocketComplete` + upperCase(HANDLER.hdrSqs)
85
+ },
86
+ setting: {
87
+ initialData: "Resources:\n",
88
+ savePath: path.join(srcPath, SOURCE_PATH.resourceYaml),
89
+ saveFileName: SAVE_FILE_NAME.snsInSqsYaml,
90
+ fileExtension: ".yml",
91
+ isAppend: true
92
+ }
93
+ }
94
+ }
95
+
96
+ function createWebSocketCompleteQueue(srcPath) {
97
+ return {
98
+ templatePath: templatePath,
99
+ templateData: {
100
+ queueName: "WebSocketComplete" + upperCase(HANDLER.hdrSqs),
101
+ },
102
+ setting: {
103
+ initialData: "Resources:\n",
104
+ savePath: path.join(srcPath, SOURCE_PATH.resourceYaml),
105
+ saveFileName: SAVE_FILE_NAME.snsInSqsYaml,
106
+ fileExtension: ".yml",
107
+ isAppend: true
108
+ }
109
+ }
110
+ }
97
111
  module.exports = createDataForDefaultSnsInSqs;
@@ -1,12 +1,3 @@
1
- <% if (subscribeTo) { %>
2
- ##===== SNS Subscription
3
- SubscriptionToOut<%- subscribeTo %>:
4
- Type: AWS::SNS::Subscription
5
- Properties:
6
- TopicArn: !Ref Out<%- subscribeTo %>
7
- Endpoint: "arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- queueName %>"
8
- Protocol: "sqs"
9
- <% } %>
10
1
  #------- queue ---------
11
2
  <%- queueName %>:
12
3
  Type: "AWS::SQS::Queue"
@@ -0,0 +1,7 @@
1
+ ##===== SNS Subscription
2
+ SubscriptionToOut<%- subscribeTo %>:
3
+ Type: AWS::SNS::Subscription
4
+ Properties:
5
+ TopicArn: !Ref Out<%- subscribeTo %>
6
+ Endpoint: "arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- queueName %>"
7
+ Protocol: "sqs"
@@ -0,0 +1,94 @@
1
+ /*
2
+ Copyright (C) 2020 Sven Mason <http://izara.io>
3
+ This program is free software: you can redistribute it and/or modify
4
+ it under the terms of the GNU Affero General Public License as
5
+ published by the Free Software Foundation, either version 3 of the
6
+ License, or (at your option) any later version.
7
+ This program is distributed in the hope that it will be useful,
8
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
9
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
+ GNU Affero General Public License for more details.
11
+ You should have received a copy of the GNU Affero General Public License
12
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
13
+ */
14
+
15
+ 'use strict';
16
+
17
+ const { SOURCE_GENERATE_IAM_ROLE, SOURCE_PATH, SAVE_FILE_NAME } = require('../../../MainLibs/src/Consts');
18
+ const { firstLetterUpperCase: upperCase } = require("../../../MainLibs/index").utils;
19
+ const path = require('path');
20
+ const templatePath = path.join(__dirname, "./template.ejs")
21
+
22
+ function generateRole(_izContext, createSourceParams, srcPath) {
23
+ // console.log("createSourceParams", createSourceParams);
24
+ let reformCreateSourceParams = {};
25
+ let createSourceRole = [];
26
+ for (const createSource of createSourceParams) {
27
+ const { roleName, additionalResourcePermission } = createSource.templateData
28
+ if (additionalResourcePermission && roleName) {
29
+ if (!reformCreateSourceParams[roleName]) {
30
+ reformCreateSourceParams[roleName] = {
31
+ resourcePermissions: [...additionalResourcePermission]
32
+ };
33
+ } else {
34
+ let resourcePermission = reformCreateSourceParams[roleName].resourcePermissions
35
+ let mergeResource = [...resourcePermission, ...additionalResourcePermission]
36
+
37
+ const seen = new Set();
38
+ const unique = [];
39
+
40
+ for (const permission of mergeResource) {
41
+ const key = JSON.stringify(permission);
42
+ if (!seen.has(key)) {
43
+ seen.add(key);
44
+ unique.push(permission);
45
+ }
46
+ }
47
+ reformCreateSourceParams[roleName].resourcePermissions = unique;
48
+ }
49
+ }
50
+ }
51
+ console.log("reformCreateSourceParams", JSON.stringify(reformCreateSourceParams, null, 2))
52
+ // console.log("reformCreateSourceParams", reformCreateSourceParams)
53
+ for (const [roleName, roleData] of Object.entries(reformCreateSourceParams)) {
54
+ // console.log("roleName in reformCreateSourceParams", roleName)
55
+ // console.log('roleData', JSON.stringify(roleData, null, 2))
56
+
57
+ createSourceRole.push(
58
+ {
59
+ templatePath: templatePath,
60
+ templateData: { roleName, roleData },
61
+ setting: {
62
+ initialData: "Resources:\n",
63
+ savePath: path.join(srcPath, SOURCE_PATH.appYaml),
64
+ saveFileName: SAVE_FILE_NAME.sharedResourceYaml,
65
+ fileExtension: '.yml',
66
+ isAppend: true
67
+ }
68
+ }
69
+ )
70
+ }
71
+
72
+ return createSourceRole;
73
+ }
74
+
75
+
76
+ module.exports = {
77
+ generateRole
78
+ }
79
+
80
+ /*
81
+ <%_ additionalResourcePermission.forEach(resourcePermission => { _%>
82
+ - Effect: <%- resourcePermission.effect %>
83
+ Action:
84
+ <%_ Object.keys(resourcePermission.action).forEach(resourcePerAction => { _%>
85
+ <%_ resourcePermission.action[resourcePerAction].forEach(permission => { _%>
86
+ - <%- resourcePerAction %>:<%- permission %>
87
+ <%_ }) _%>
88
+ <%_ }) _%>
89
+ Resource:
90
+ <%_ resourcePermission.resource.forEach(resource => { _%>
91
+ - "<%- resource %>"
92
+ <%_ }) _%>
93
+ <%_}) _%>
94
+ */
@@ -0,0 +1,33 @@
1
+ <%- roleName %>Role:
2
+ Type: AWS::IAM::Role
3
+ Properties:
4
+ RoleName: ${self:custom.iz_resourcePrefix}<%- roleName %>Role
5
+ AssumeRolePolicyDocument:
6
+ Version: "2012-10-17"
7
+ Statement:
8
+ - Effect: Allow
9
+ Principal:
10
+ Service: "lambda.amazonaws.com"
11
+ Action: sts:AssumeRole
12
+ ManagedPolicyArns:
13
+ - arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
14
+ Policies:
15
+ - PolicyName: ${self:custom.iz_resourcePrefix}<%- roleName %>Policy
16
+ PolicyDocument:
17
+ Version: "2012-10-17"
18
+ Statement:
19
+ <%_ roleData.resourcePermissions.forEach(resourcePermission => { _%>
20
+ - Effect: <%- resourcePermission.effect.trim() %>
21
+ Action:
22
+ <%_ Object.keys(resourcePermission.action).forEach(action => { _%>
23
+ <%_ resourcePermission.action[action].forEach(permission => { _%>
24
+ - <%- action.trim() %>:<%- permission.trim() %>
25
+ <%_ }) _%>
26
+ <%_ }) _%>
27
+ Resource:
28
+ <%_ resourcePermission.resource.forEach(resource => { _%>
29
+ - "<%- resource.trim() _%>"
30
+ <%_ }) _%>
31
+ <%_ }) _%>
32
+ #<#additionalResource<%- roleName %>Role#>
33
+ #<#/additionalResource<%- roleName %>Role#>
@@ -57,7 +57,7 @@ module.exports.createObjectComplete = async (
57
57
  passBackProperties,
58
58
  });
59
59
 
60
- if (_.isEmpty(returnValue)) {
60
+ if (_.isEmpty(returnValue.requestParams)) {
61
61
  _izContext.logger.debug("message callingFlowProperties is empty");
62
62
  throw new NoRetryError("message not an object")
63
63
  };
@@ -65,36 +65,36 @@ module.exports.createObjectComplete = async (
65
65
  if (!returnValue.hasOwnProperty("queryResult")) {
66
66
  errorsFound.push("message is not have property queryResult, should be not happen");
67
67
  };
68
- if (!returnValue.hasOwnProperty("objType")) {
68
+ if (!returnValue.requestParams.hasOwnProperty("objType")) {
69
69
  errorsFound.push("message is not have property objType, should be not happen");
70
70
  };
71
- if (!returnValue.hasOwnProperty("objInstanceFull")) {
71
+ if (!returnValue.requestParams.hasOwnProperty("objInstanceFull")) {
72
72
  errorsFound.push("message is not have property objInstance, should be not objInstance");
73
73
  };
74
74
 
75
75
  if (status == "error" && errorsFound.length > 0) {
76
76
  errorsFound.push("error before validate");
77
77
  } else if (status == "error" && errorsFound.length == 0) {
78
- errorsFound.push("[invalid]statur is error not have errorfound form graphService");
78
+ errorsFound.push("[invalid]status is error not have errorsFound form graphService");
79
79
 
80
80
  };
81
81
  if (status === "complete" && errorsFound.length > 0) {
82
- errorsFound.push("[Invalid] status is commplete should be not have errorsFound");
82
+ errorsFound.push("[Invalid] status is complete should be not have errorsFound");
83
83
  };
84
84
  if (graphServiceTag == null) {
85
85
  errorsFound.push("[Invalid] graphServerTag is not empty string");
86
86
  };
87
87
 
88
88
  if (errorsFound.length > 0) {
89
- _izContext.logger.debug("Have error form grapService:", errorsFound);
90
- errorsFound = errorsFound.concat(errorsFound);
89
+ _izContext.logger.debug("Have error form graphServerTag:", errorsFound);
90
+ errorsFound = errorsFound.concat(errorsFound.join(","));
91
91
  };
92
92
 
93
93
  let awaitingStepId = await asyncFlowSharedLib.createAwaitingStepId(
94
94
  (hash({
95
- objType: returnValue.objType,
95
+ objType: returnValue.requestParams.objType,
96
96
  graphServerTag: graphServiceTag,
97
- identifiers: returnValue.objInstanceFull.identifiers
97
+ identifiers: returnValue.requestParams.objInstanceFull.identifiers
98
98
  })),
99
99
  PREFIX.CREATE_OBJECT_ASYNC
100
100
  )
@@ -114,20 +114,21 @@ module.exports.createObjectComplete = async (
114
114
  if (await asyncFlowSharedLib.checkAllAwaitingStepsFinished(
115
115
  _izContext,
116
116
  pendingStepId,
117
- awaitingStepId
117
+ awaitingStepId,
118
+ errorsFound
118
119
  )) {
119
120
  _izContext.logger.debug("finish all awaitingStep");
120
121
 
121
122
  let messageObject = {
122
123
  objType: {
123
- objectType: returnValue.objType.objectType,
124
- serviceTag: returnValue.objType.serviceTag
124
+ objectType: returnValue.requestParams.objType.objectType,
125
+ serviceTag: returnValue.requestParams.objType.serviceTag
125
126
  },
126
127
  objInstanceFull: {
127
- identifiers: returnValue.objInstanceFull.identifiers,
128
- fields: returnValue.objInstanceFull.fields
128
+ identifiers: returnValue.requestParams.objInstanceFull.identifiers,
129
+ fields: returnValue.requestParams.objInstanceFull.fields
129
130
  },
130
- relationships: returnValue.relationships,
131
+ relationships: returnValue.requestParams.relationships,
131
132
  status: status,
132
133
  errorsFound: errorsFound
133
134
  }
@@ -143,15 +144,18 @@ module.exports.createObjectComplete = async (
143
144
  _izContext.logger.debug("Send message to OutCreateObjectComplete :::>", sendMessageOutCreateObjectComplete)
144
145
  await sns.publishAsync(_izContext, sendMessageOutCreateObjectComplete);
145
146
 
146
- await asyncFlowSharedLib.removeAwaitingMultipleStep(
147
- _izContext,
148
- awaitingStepId,
149
- pendingStepId
150
- );
151
-
147
+
152
148
  //(<afterSendMessage>)
153
149
  //(</afterSendMessage>)
154
150
  }
151
+
152
+ await asyncFlowSharedLib.removeAwaitingMultipleStep(
153
+ _izContext,
154
+ awaitingStepId,
155
+ pendingStepId,
156
+ errorsFound
157
+ );
158
+
155
159
  })
156
160
  )
157
161
  //(<beforeReturn>)
@@ -6,7 +6,7 @@
6
6
  - sqs:
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %>
8
8
  batchSize: 10
9
- filterPatterns: #**** need to update serverless framwork upper v.2.69.1
9
+ filterPatterns: #**** need to update serverless framework upper v.2.69.1
10
10
  - body: {"MessageAttributes":{"callingFlow":{"Value":["${self:custom.iz_resourcePrefix}<%-firstLetterUpperCase(functionName) %>"]}}} # functionName of callingFlow
11
11
  - body: {"MessageAttributes":{"callingFlow":{"Value":[{"exists":false}]}}}
12
12
  role: <%- roleName %>Role
@@ -53,12 +53,12 @@ module.exports.deleteNodeComplete = async (
53
53
 
54
54
  let deleteNodeComplete = {
55
55
  objType: {
56
- objectType: returnValue.objType.objectType,
57
- serviceTag: returnValue.objType.serviceTag
56
+ objectType: returnValue.requestParams.objType.objectType,
57
+ serviceTag: returnValue.requestParams.objType.serviceTag
58
58
  },
59
59
  objInstance: {
60
- identifiers: returnValue.objInstanceFull.identifiers,
61
- fields: returnValue.objInstanceFull.fields
60
+ identifiers: returnValue.requestParams.objInstanceFull.identifiers,
61
+ fields: returnValue.requestParams.objInstanceFull.fields
62
62
  },
63
63
  status: status,
64
64
  errorsFound: errorsFound
@@ -82,8 +82,8 @@ module.exports.deleteNodeComplete = async (
82
82
  //(</beforeReturn>)
83
83
 
84
84
  return {
85
- objType: returnValue.objType,
86
- objInstanceFull: returnValue.objInstanceFull,
85
+ objType: returnValue.requestParams.objType,
86
+ objInstanceFull: returnValue.requestParams.objInstanceFull,
87
87
  errorsFound: errorsFound
88
88
  }
89
89
 
@@ -6,7 +6,7 @@
6
6
  - sqs:
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %>
8
8
  batchSize: 10
9
- filterPatterns: #**** need to update serverless framwork upper v.2.69.1
9
+ filterPatterns: #**** need to update serverless framework upper v.2.69.1
10
10
  - body: {"MessageAttributes":{"callingFlow":{"Value":["${self:custom.iz_resourcePrefix}<%-firstLetterUpperCase(functionName) %>"]}}} # functionName of callingFlow
11
11
  - body: {"MessageAttributes":{"callingFlow":{"Value":[{"exists":false}]}}}
12
12
  role: <%- roleName %>Role
@@ -43,7 +43,7 @@ module.exports.updateNodeComplete = async (
43
43
  passBackProperties = {}
44
44
  ) => {
45
45
  try {
46
- _izContext.logger.debug("Function:updateNodeComplete", {
46
+ _izContext.logger.debug("Function:GetComplete", {
47
47
  _izContext: _izContext,
48
48
  returnValue: returnValue,
49
49
  status: status,
@@ -54,10 +54,10 @@ module.exports.updateNodeComplete = async (
54
54
  // start create AwaitingStepId
55
55
  let awaitingStepId = asyncFlowSharedLib.createAwaitingStepId(
56
56
  hash({
57
- objectType: returnValue.objType.objectType,
58
- serviceTag: returnValue.objType.serviceTag,
59
- identifiers: returnValue.objInstanceFull.identifiers,
60
- fields: returnValue.objInstanceFull.fields
57
+ objectType: returnValue.requestParams.objType.objectType,
58
+ serviceTag: returnValue.requestParams.objType.serviceTag,
59
+ identifiers: returnValue.requestParams.objInstanceFull.identifiers,
60
+ fields: returnValue.requestParams.objInstanceFull.fields
61
61
  }),
62
62
  PREFIX.updateNode
63
63
  )
@@ -76,18 +76,19 @@ module.exports.updateNodeComplete = async (
76
76
  if (await asyncFlowSharedLib.checkAllAwaitingStepsFinished(
77
77
  _izContext,
78
78
  pendingStepId,
79
- awaitingStepId
79
+ awaitingStepId,
80
+ errorsFound
80
81
  )) {
81
82
  _izContext.logger.debug("finished all awaitingStep");
82
83
 
83
84
  let updateCompleteMsg = {
84
85
  objType: {
85
- objectType: returnValue.objType.objectType,
86
- serviceTag: returnValue.objType.serviceTag
86
+ objectType: returnValue.requestParams.objType.objectType,
87
+ serviceTag: returnValue.requestParams.objType.serviceTag
87
88
  },
88
89
  objInstance: {
89
- identifiers: returnValue.objInstanceFull.identifiers,
90
- fields: returnValue.objInstanceFull.fields
90
+ identifiers: returnValue.requestParams.objInstanceFull.identifiers,
91
+ fields: returnValue.requestParams.objInstanceFull.fields
91
92
  },
92
93
  status: status,
93
94
  errorsFound: errorsFound
@@ -107,12 +108,14 @@ module.exports.updateNodeComplete = async (
107
108
  _izContext.logger.debug("Send Message to OutUpdateNodeComplete::", sendMessageToOutUpdateNodeComplete);
108
109
  await sns.publishAsync(_izContext, sendMessageToOutUpdateNodeComplete)
109
110
 
110
- await asyncFlowSharedLib.removeAwaitingMultipleStep(
111
- _izContext,
112
- awaitingStepId,
113
- pendingStepId
114
- );
115
111
  }
112
+
113
+ await asyncFlowSharedLib.removeAwaitingMultipleStep(
114
+ _izContext,
115
+ awaitingStepId,
116
+ pendingStepId,
117
+ errorsFound
118
+ );
116
119
  })
117
120
  )
118
121
 
@@ -120,8 +123,8 @@ module.exports.updateNodeComplete = async (
120
123
  //(</beforeReturn>)
121
124
 
122
125
  return {
123
- objType: returnValue.objType,
124
- objInstanceFull: returnValue.objInstanceFull,
126
+ objType: returnValue.requestParams.objType,
127
+ objInstanceFull: returnValue.requestParams.objInstanceFull,
125
128
  errorsFound: errorsFound
126
129
  }
127
130
 
@@ -6,7 +6,7 @@
6
6
  - sqs:
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %>
8
8
  batchSize: 10
9
- filterPatterns: #**** need to update serverless framwork upper v.2.69.1
9
+ filterPatterns: #**** need to update serverless framework upper v.2.69.1
10
10
  - body: {"MessageAttributes":{"callingFlow":{"Value":["${self:custom.iz_resourcePrefix}<%-firstLetterUpperCase(functionName) %>"]}}} # functionName of callingFlow
11
11
  - body: {"MessageAttributes":{"callingFlow":{"Value":[{"exists":false}]}}}
12
12
  role: <%- roleName %>Role
@@ -54,10 +54,10 @@ module.exports.updateNodeComplete = async (
54
54
  // start create AwaitingStepId
55
55
  let awaitingStepId = asyncFlowSharedLib.createAwaitingStepId(
56
56
  hash({
57
- objectType: returnValue.objType.objectType,
58
- serviceTag: returnValue.objType.serviceTag,
59
- identifiers: returnValue.objInstanceFull.identifiers,
60
- fields: returnValue.objInstanceFull.fields
57
+ objectType: returnValue.requestParams.objType.objectType,
58
+ serviceTag: returnValue.requestParams.objType.serviceTag,
59
+ identifiers: returnValue.requestParams.objInstanceFull.identifiers,
60
+ fields: returnValue.requestParams.objInstanceFull.fields
61
61
  }),
62
62
  PREFIX.updateNode
63
63
  )
@@ -76,18 +76,19 @@ module.exports.updateNodeComplete = async (
76
76
  if (await asyncFlowSharedLib.checkAllAwaitingStepsFinished(
77
77
  _izContext,
78
78
  pendingStepId,
79
- awaitingStepId
79
+ awaitingStepId,
80
+ errorsFound
80
81
  )) {
81
82
  _izContext.logger.debug("finished all awaitingStep");
82
83
 
83
84
  let updateCompleteMsg = {
84
85
  objType: {
85
- objectType: returnValue.objType.objectType,
86
- serviceTag: returnValue.objType.serviceTag
86
+ objectType: returnValue.requestParams.objType.objectType,
87
+ serviceTag: returnValue.requestParams.objType.serviceTag
87
88
  },
88
89
  objInstanceFull: {
89
- identifiers: returnValue.objInstanceFull.identifiers,
90
- fields: returnValue.objInstanceFull.fields
90
+ identifiers: returnValue.requestParams.objInstanceFull.identifiers,
91
+ fields: returnValue.requestParams.objInstanceFull.fields
91
92
  },
92
93
  status: status,
93
94
  errorsFound: errorsFound
@@ -107,21 +108,23 @@ module.exports.updateNodeComplete = async (
107
108
  _izContext.logger.debug("Send Message to OutUpdateNodeComplete::", sendMessageToOutUpdateNodeComplete);
108
109
  await sns.publishAsync(_izContext, sendMessageToOutUpdateNodeComplete)
109
110
 
110
- await asyncFlowSharedLib.removeAwaitingMultipleStep(
111
- _izContext,
112
- awaitingStepId,
113
- pendingStepId
114
- );
115
111
  }
112
+
113
+ await asyncFlowSharedLib.removeAwaitingMultipleStep(
114
+ _izContext,
115
+ awaitingStepId,
116
+ pendingStepId,
117
+ errorsFound
118
+ );
116
119
  })
117
120
  )
118
121
 
119
122
  //(<beforeReturn>)
120
123
  //(</beforeReturn>)
121
-
124
+
122
125
  return {
123
- objType: returnValue.objType,
124
- objInstanceFull: returnValue.objInstanceFull,
126
+ objType: returnValue.requestParams.objType,
127
+ objInstanceFull: returnValue.requestParams.objInstanceFull,
125
128
  errorsFound: errorsFound
126
129
  }
127
130
 
@@ -6,7 +6,7 @@
6
6
  - sqs:
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %>
8
8
  batchSize: 10
9
- filterPatterns: #**** need to update serverless framwork upper v.2.69.1
9
+ filterPatterns: #**** need to update serverless framework upper v.2.69.1
10
10
  - body: {"MessageAttributes":{"callingFlow":{"Value":["${self:custom.iz_resourcePrefix}<%-firstLetterUpperCase(functionName) %>"]}}} # functionName of callingFlow
11
11
  - body: {"MessageAttributes":{"callingFlow":{"Value":[{"exists":false}]}}}
12
12
  role: <%- roleName %>Role
@@ -7,6 +7,6 @@
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- functionName %><%- firstLetterUpperCase(handlerType) %>
8
8
  batchSize: 10
9
9
  role: <%- roleName %>Role
10
- #<#<%- functionName %><%- handlerType %>IamRole#>
11
- #<#/<%- functionName %><%- handlerType %>IamRole#>
10
+ #<#<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
11
+ #<#/<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
12
12
  <%_ function firstLetterUpperCase(text){ return text.charAt(0).toUpperCase() + text.slice(1) } _%>
@@ -7,6 +7,6 @@
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- functionName %><%- firstLetterUpperCase(handlerType) %>
8
8
  batchSize: 10
9
9
  role: <%- roleName %>Role
10
- #<#<%- functionName %><%- handlerType %>IamRole#>
11
- #<#/<%- functionName %><%- handlerType %>IamRole#>
10
+ #<#<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
11
+ #<#/<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
12
12
  <%_ function firstLetterUpperCase(text){ return text.charAt(0).toUpperCase() + text.slice(1) } _%>
@@ -10,8 +10,8 @@
10
10
  #<#Authorizer#>
11
11
  #<#/Authorizer#>
12
12
  role: <%- roleName %>Role
13
- #<#<%- functionName %><%- handlerType %>IamRole#>
14
- #<#/<%- functionName %><%- handlerType %>IamRole#>
13
+ #<#<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
14
+ #<#/<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
15
15
  <%_ function firstLetterUpperCase(text){
16
16
  return text.charAt(0).toUpperCase() + text.slice(1)
17
17
  } _%>
@@ -7,8 +7,8 @@
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %><%- firstLetterUpperCase(handlerType) %>
8
8
  batchSize: 10
9
9
  role: <%- roleName %>Role
10
- #<#<%- functionName %><%- handlerType %>IamRole#>
11
- #<#/<%- functionName %><%- handlerType %>IamRole#>
10
+ #<#<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
11
+ #<#/<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
12
12
  <%_ function firstLetterUpperCase(text){
13
13
  return text.charAt(0).toUpperCase() + text.slice(1)
14
14
  } _%>
@@ -3,8 +3,8 @@
3
3
  handler: <%- join(resourceLocation, `${firstLetterUpperCase(functionName)}_${firstLetterUpperCase(handlerType)}.main`)%>
4
4
  name: ${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %><%- firstLetterUpperCase(handlerType) %>
5
5
  role: <%- roleName %>Role
6
- #<#<%- functionName %><%- handlerType %>IamRole#>
7
- #<#/<%- functionName %><%- handlerType %>IamRole#>
6
+ #<#<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
7
+ #<#/<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
8
8
  <%_ function firstLetterUpperCase(text){
9
9
  return text.charAt(0).toUpperCase() + text.slice(1)
10
10
  } _%>
@@ -7,8 +7,8 @@
7
7
  arn: arn:aws:sqs:${self:custom.iz_region}:${self:custom.iz_accountId}:${self:custom.iz_resourcePrefix}<%- firstLetterUpperCase(functionName) %><%- firstLetterUpperCase(handlerType) %>
8
8
  batchSize: 10
9
9
  role: <%- roleName %>Role
10
- #<#<%- functionName %><%- handlerType %>IamRole#>
11
- #<#/<%- functionName %><%- handlerType %>IamRole#>
10
+ #<#<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
11
+ #<#/<%- functionName %><%- firstLetterUpperCase(handlerType) %>IamRole#>
12
12
  <%_ function firstLetterUpperCase(text){
13
13
  return text.charAt(0).toUpperCase() + text.slice(1)
14
14
  } _%>