@izara_project/izara-market-library-service-schemas 1.0.67 → 1.0.69

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 (44) hide show
  1. package/package.json +1 -1
  2. package/src/GenerateCodeLibs/src/GenerateCodeLibs.js +2 -0
  3. package/src/reStructure/TemplateData/EndpointPerService/mainFunction/create/template.ejs +23 -11
  4. package/src/reStructure/TemplateData/externalService/lambdaRole/data.js +8 -0
  5. package/src/reStructure/TemplateData/externalService/snsTopicSubscriptions/data.js +12 -1
  6. package/src/reStructure/TemplateData/findData/findDataYaml/data.js +2 -2
  7. package/src/reStructure/TemplateData/processLogical/yaml/data.js +2 -2
  8. package/src/reStructure/TemplateData/processLogicalPagination/yaml/dsq/data.js +2 -2
  9. package/src/reStructure/TemplateData/processLogicalPagination/yaml/sqs/data.js +2 -2
  10. package/src/reStructure/TemplateData/relationshipPerAction/changeRelationship/action/functionYaml/data.js +4 -4
  11. package/src/reStructure/TemplateData/relationshipPerAction/changeRelationship/action/mainFunction/template.ejs +4 -4
  12. package/src/reStructure/TemplateData/relationshipPerAction/create/action/functionYaml/data.js +1 -1
  13. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/templateByHandler/apiTemplate.ejs +26 -44
  14. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/templateByHandler/dsqTemplate.ejs +26 -44
  15. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/templateByHandler/invTemplate.ejs +26 -44
  16. package/src/reStructure/TemplateData/relationshipPerAction/create/action/handler/templateByHandler/sqsTemplate.ejs +26 -44
  17. package/src/reStructure/TemplateData/relationshipPerAction/create/complete/functionYaml/data.js +1 -4
  18. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/functionYaml/data.js +2 -1
  19. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/templateByHandler/apiTemplate.ejs +36 -55
  20. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/templateByHandler/dsqTemplate.ejs +36 -54
  21. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/templateByHandler/invTemplate.ejs +36 -54
  22. package/src/reStructure/TemplateData/relationshipPerAction/delete/action/handler/templateByHandler/sqsTemplate.ejs +36 -54
  23. package/src/reStructure/TemplateData/relationshipPerAction/delete/complete/functionYaml/data.js +1 -4
  24. package/src/reStructure/TemplateData/relationshipPerAction/get/action/functionYaml/data.js +2 -1
  25. package/src/reStructure/TemplateData/relationshipPerAction/get/action/handler/templateByHandler/apiTemplate.ejs +28 -47
  26. package/src/reStructure/TemplateData/relationshipPerAction/get/action/handler/templateByHandler/dsqTemplate.ejs +28 -47
  27. package/src/reStructure/TemplateData/relationshipPerAction/get/action/handler/templateByHandler/invTemplate.ejs +28 -47
  28. package/src/reStructure/TemplateData/relationshipPerAction/get/action/handler/templateByHandler/sqsTemplate.ejs +28 -47
  29. package/src/reStructure/TemplateData/relationshipPerAction/get/complete/functionYaml/data.js +1 -4
  30. package/src/reStructure/TemplateData/relationshipPerAction/moveRelationship/action/functionYaml/data.js +2 -23
  31. package/src/reStructure/TemplateData/relationshipPerAction/moveRelationship/action/handler/templateByHandler/apiTemplate.ejs +15 -30
  32. package/src/reStructure/TemplateData/relationshipPerAction/moveRelationship/action/handler/templateByHandler/dsqTemplate.ejs +15 -30
  33. package/src/reStructure/TemplateData/relationshipPerAction/moveRelationship/action/handler/templateByHandler/invTemplate.ejs +15 -30
  34. package/src/reStructure/TemplateData/relationshipPerAction/moveRelationship/action/handler/templateByHandler/sqsTemplate.ejs +15 -30
  35. package/src/reStructure/TemplateData/relationshipPerAction/moveRelationship/action/mainFunction/template.ejs +2 -2
  36. package/src/reStructure/TemplateData/relationshipPerAction/moveRelationship/complete/functionYaml/data.js +1 -4
  37. package/src/reStructure/TemplateData/relationshipPerAction/update/action/functionYaml/data.js +2 -9
  38. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/templateByHandler/apiTemplate.ejs +39 -56
  39. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/templateByHandler/dsqTemplate.ejs +39 -56
  40. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/templateByHandler/invTemplate.ejs +39 -56
  41. package/src/reStructure/TemplateData/relationshipPerAction/update/action/handler/templateByHandler/sqsTemplate.ejs +39 -56
  42. package/src/reStructure/TemplateData/relationshipPerAction/update/complete/functionYaml/data.js +1 -4
  43. package/src/reStructure/TemplateData/resourceYaml/filterGenerateResource/data.js +1 -1
  44. package/src/reStructure/TemplateData/resourceYaml/generateTemplateData.js +1 -1
@@ -32,82 +32,64 @@ middleware.setValidatorSchema(recordHandlerSharedLib.baseValidatorSchema());
32
32
  // validate event params in middleware before into function
33
33
  let validatorSchema = {
34
34
  type: "object",
35
- required: [
36
- 'firstObject',
37
- 'secondObject',
38
- 'oldReltypeAndDirection',
39
- 'newRelType',
40
- ],
35
+ required: ["firstObject", "secondObject", "relType", "relationshipDirection"],
41
36
  properties: {
42
37
  firstObject: {
43
- type: 'object',
44
- required: ['objType', 'identifiers'],
38
+ type: "object",
39
+ required: ["objType", "identifiers"],
45
40
  properties: {
46
41
  objType: {
47
- type: 'object',
48
- required: ['objectType', 'serviceTag'],
42
+ type: "object",
43
+ required: ["serviceTag", "objectType"],
49
44
  properties: {
50
45
  serviceTag: izara.validatorSchema.stringNotEmpty(),
51
- objectType: izara.validatorSchema.stringNotEmpty(),
46
+ objectType: izara.validatorSchema.stringNotEmpty()
52
47
  }
53
48
  },
54
49
  identifiers: {
55
50
  type: "object",
56
51
  minProperties: 1
57
- },
52
+ }
58
53
  }
59
54
  },
60
55
  secondObject: {
61
- type: 'object',
62
- required: ['objType', 'identifiers'],
56
+ type: "object",
57
+ required: ["objType", "identifiers"],
63
58
  properties: {
64
59
  objType: {
65
- type: 'object',
66
- required: ['objectType', 'serviceTag'],
60
+ type: "object",
61
+ required: ["serviceTag", "objectType"],
67
62
  properties: {
68
63
  serviceTag: izara.validatorSchema.stringNotEmpty(),
69
- objectType: izara.validatorSchema.stringNotEmpty(),
64
+ objectType: izara.validatorSchema.stringNotEmpty()
70
65
  }
71
66
  },
72
67
  identifiers: {
73
68
  type: "object",
74
69
  minProperties: 1
75
- },
70
+ }
76
71
  }
77
72
  },
78
- oldReltypeAndDirection: {
79
- type: 'object',
80
- required: ['relType', 'relationshipDirection'],
73
+ relType: {
74
+ type: "object",
75
+ required: ["relationshipTag", "serviceTag"],
81
76
  properties: {
82
- relType: {
83
- type: 'object',
84
- required: ['serviceTag', 'relationshipTag'],
85
- properties: {
86
- serviceTag: izara.validatorSchema.stringNotEmpty(),
87
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
88
- }
89
- },
90
- relationshipProperties: {
91
- type: 'object',
92
- },
93
- relationshipDirection: {
77
+ relationshipTag: izara.validatorSchema.stringNotEmpty(),
78
+ serviceTag: {
94
79
  type: 'string',
95
- enum: ['from', 'to']
96
-
80
+ pattern: "^[a-zA-Z0-9_-]+$",
81
+ enum: [process.env.iz_serviceTag]
97
82
  },
98
83
  }
99
84
  },
100
- newRelType: {
85
+ relationshipDirection: {
86
+ type: "string",
87
+ enum: ['from', "to"]
88
+ },
89
+ relationshipProperties: {
101
90
  type: 'object',
102
- required: ['serviceTag', 'relationshipTag'],
103
- properties: {
104
- serviceTag: izara.validatorSchema.stringNotEmpty(),
105
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
106
- }
91
+ default: {}
107
92
  },
108
- settings: {
109
- type: 'object'
110
- }
111
93
  }
112
94
  };
113
95
 
@@ -82,10 +82,7 @@ function createParamForCreateSource(srcPath) {
82
82
  ),
83
83
  createIamRole(
84
84
  {
85
- [RESOURCE_CLASSES.sns]:
86
- [
87
- SNS_RESOURCE.publish, SNS_RESOURCE.subscribe
88
- ]
85
+ [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish, SNS_RESOURCE.subscribe],
89
86
  },
90
87
  [
91
88
  resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_In"),
@@ -98,7 +98,8 @@ function createParamForCreateSource(allObjectRelationships, handlerType, srcPath
98
98
  createIamRole(
99
99
  {
100
100
  [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish, SNS_RESOURCE.subscribe],
101
- [RESOURCE_CLASSES.sqs]: [SQS_RESOURCE.receiveMessage, SQS_RESOURCE.sendMessage] },
101
+ [RESOURCE_CLASSES.sqs]: Object.values(SQS_RESOURCE)
102
+ },
102
103
  [
103
104
  resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.deleteRelComplete) + "_Out"),
104
105
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(handlerType)),
@@ -27,20 +27,15 @@ const <%- functionName %> = require('./<%- firstLetterUpperCase(functionName) %>
27
27
  // validate event params in middleware before into function
28
28
  let validatorSchema = {
29
29
  type: "object",
30
- required: [
31
- 'firstObject',
32
- 'secondObject',
33
- 'oldReltypeAndDirection',
34
- 'newRelType',
35
- ],
30
+ required: ["firstObject","secondObject", "relType", "relationshipProperties","relationshipDirection"],
36
31
  properties: {
37
32
  firstObject: {
38
- type: 'object',
39
- required: ['objType', 'identifiers'],
33
+ type: "object",
34
+ required: ["objType","identifiers"],
40
35
  properties: {
41
36
  objType: {
42
- type: 'object',
43
- required: ['objectType', 'serviceTag'],
37
+ type: "object",
38
+ required: ["serviceTag","objectType"],
44
39
  properties: {
45
40
  serviceTag: izara.validatorSchema.stringNotEmpty(),
46
41
  objectType: izara.validatorSchema.stringNotEmpty(),
@@ -49,63 +44,49 @@ let validatorSchema = {
49
44
  identifiers: {
50
45
  type: "object",
51
46
  minProperties: 1
52
- },
47
+ }
53
48
  }
54
49
  },
55
50
  secondObject: {
56
- type: 'object',
57
- required: ['objType', 'identifiers'],
58
- properties: {
59
- objType: {
60
- type: 'object',
61
- required: ['objectType', 'serviceTag'],
62
- properties: {
63
- serviceTag: izara.validatorSchema.stringNotEmpty(),
64
- objectType: izara.validatorSchema.stringNotEmpty(),
65
- }
66
- },
67
- identifiers: {
68
- type: "object",
69
- minProperties: 1
70
- },
51
+ type: "object",
52
+ required: ["objType","identifiers"],
53
+ properties: {
54
+ objType: {
55
+ type: "object",
56
+ required: ["serviceTag","objectType"],
57
+ properties: {
58
+ serviceTag: izara.validatorSchema.stringNotEmpty(),
59
+ objectType: izara.validatorSchema.stringNotEmpty(),
60
+ }
61
+ },
62
+ identifiers: {
63
+ type: "object",
64
+ minProperties: 1
71
65
  }
72
- },
73
- oldReltypeAndDirection: {
74
- type: 'object',
75
- required: ['relType', 'relationshipDirection'],
66
+ }
67
+ },
68
+ relType: {
69
+ type: "object",
70
+ required: ["relationshipTag", "serviceTag"],
76
71
  properties: {
77
- relType: {
78
- type: 'object',
79
- required: ['serviceTag', 'relationshipTag'],
80
- properties: {
81
- serviceTag: izara.validatorSchema.stringNotEmpty(),
82
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
83
- }
84
- },
85
- relationshipProperties: {
86
- type: 'object',
87
- },
88
- relationshipDirection: {
72
+ relationshipTag: izara.validatorSchema.stringNotEmpty(),
73
+ serviceTag: {
89
74
  type: 'string',
90
- enum: ['from', 'to']
91
-
92
- },
75
+ pattern: "^[a-zA-Z0-9_-]+$",
76
+ enum: [process.env.iz_serviceTag]
77
+ }
93
78
  }
94
79
  },
95
- newRelType: {
96
- type: 'object',
97
- required: ['serviceTag', 'relationshipTag'],
98
- properties: {
99
- serviceTag: izara.validatorSchema.stringNotEmpty(),
100
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
101
- }
80
+ relationshipProperties: {
81
+ type: "object",
82
+ minProperties: 1
102
83
  },
103
- settings: {
104
- type: 'object'
84
+ relationshipDirection: {
85
+ type: "string",
86
+ enum: ['from','to']
105
87
  }
106
88
  }
107
89
  };
108
-
109
90
  //(<globalVariable>
110
91
  //</globalVariable>)
111
92
 
@@ -48,20 +48,15 @@ middleware.setValidatorSchema(recordHandlerSharedLib.baseValidatorSchema(
48
48
  // validate event params in middlewware before into function.
49
49
  let validatorSchema = {
50
50
  type: "object",
51
- required: [
52
- 'firstObject',
53
- 'secondObject',
54
- 'oldReltypeAndDirection',
55
- 'newRelType',
56
- ],
51
+ required: ["firstObject","secondObject", "relType", "relationshipProperties","relationshipDirection"],
57
52
  properties: {
58
53
  firstObject: {
59
- type: 'object',
60
- required: ['objType', 'identifiers'],
54
+ type: "object",
55
+ required: ["objType","identifiers"],
61
56
  properties: {
62
57
  objType: {
63
- type: 'object',
64
- required: ['objectType', 'serviceTag'],
58
+ type: "object",
59
+ required: ["serviceTag","objectType"],
65
60
  properties: {
66
61
  serviceTag: izara.validatorSchema.stringNotEmpty(),
67
62
  objectType: izara.validatorSchema.stringNotEmpty(),
@@ -70,59 +65,46 @@ let validatorSchema = {
70
65
  identifiers: {
71
66
  type: "object",
72
67
  minProperties: 1
73
- },
68
+ }
74
69
  }
75
70
  },
76
71
  secondObject: {
77
- type: 'object',
78
- required: ['objType', 'identifiers'],
79
- properties: {
80
- objType: {
81
- type: 'object',
82
- required: ['objectType', 'serviceTag'],
83
- properties: {
84
- serviceTag: izara.validatorSchema.stringNotEmpty(),
85
- objectType: izara.validatorSchema.stringNotEmpty(),
86
- }
87
- },
88
- identifiers: {
89
- type: "object",
90
- minProperties: 1
91
- },
72
+ type: "object",
73
+ required: ["objType","identifiers"],
74
+ properties: {
75
+ objType: {
76
+ type: "object",
77
+ required: ["serviceTag","objectType"],
78
+ properties: {
79
+ serviceTag: izara.validatorSchema.stringNotEmpty(),
80
+ objectType: izara.validatorSchema.stringNotEmpty(),
81
+ }
82
+ },
83
+ identifiers: {
84
+ type: "object",
85
+ minProperties: 1
92
86
  }
93
- },
94
- oldReltypeAndDirection: {
95
- type: 'object',
96
- required: ['relType', 'relationshipDirection'],
87
+ }
88
+ },
89
+ relType: {
90
+ type: "object",
91
+ required: ["relationshipTag", "serviceTag"],
97
92
  properties: {
98
- relType: {
99
- type: 'object',
100
- required: ['serviceTag', 'relationshipTag'],
101
- properties: {
102
- serviceTag: izara.validatorSchema.stringNotEmpty(),
103
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
104
- }
105
- },
106
- relationshipProperties: {
107
- type: 'object',
108
- },
109
- relationshipDirection: {
93
+ relationshipTag: izara.validatorSchema.stringNotEmpty(),
94
+ serviceTag: {
110
95
  type: 'string',
111
- enum: ['from', 'to']
112
-
113
- },
96
+ pattern: "^[a-zA-Z0-9_-]+$",
97
+ enum: [process.env.iz_serviceTag]
98
+ }
114
99
  }
115
100
  },
116
- newRelType: {
117
- type: 'object',
118
- required: ['serviceTag', 'relationshipTag'],
119
- properties: {
120
- serviceTag: izara.validatorSchema.stringNotEmpty(),
121
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
122
- }
101
+ relationshipProperties: {
102
+ type: "object",
103
+ minProperties: 1
123
104
  },
124
- settings: {
125
- type: 'object'
105
+ relationshipDirection: {
106
+ type: "string",
107
+ enum: ['from','to']
126
108
  }
127
109
  }
128
110
  };
@@ -31,20 +31,15 @@ const <%- functionName %> = require('./<%- firstLetterUpperCase(functionName) %>
31
31
  // validate event params in middlewware before into function.
32
32
  let validatorSchema = {
33
33
  type: "object",
34
- required: [
35
- 'firstObject',
36
- 'secondObject',
37
- 'oldReltypeAndDirection',
38
- 'newRelType',
39
- ],
34
+ required: ["firstObject","secondObject", "relType", "relationshipProperties","relationshipDirection"],
40
35
  properties: {
41
36
  firstObject: {
42
- type: 'object',
43
- required: ['objType', 'identifiers'],
37
+ type: "object",
38
+ required: ["objType","identifiers"],
44
39
  properties: {
45
40
  objType: {
46
- type: 'object',
47
- required: ['objectType', 'serviceTag'],
41
+ type: "object",
42
+ required: ["serviceTag","objectType"],
48
43
  properties: {
49
44
  serviceTag: izara.validatorSchema.stringNotEmpty(),
50
45
  objectType: izara.validatorSchema.stringNotEmpty(),
@@ -53,59 +48,46 @@ let validatorSchema = {
53
48
  identifiers: {
54
49
  type: "object",
55
50
  minProperties: 1
56
- },
51
+ }
57
52
  }
58
53
  },
59
54
  secondObject: {
60
- type: 'object',
61
- required: ['objType', 'identifiers'],
62
- properties: {
63
- objType: {
64
- type: 'object',
65
- required: ['objectType', 'serviceTag'],
66
- properties: {
67
- serviceTag: izara.validatorSchema.stringNotEmpty(),
68
- objectType: izara.validatorSchema.stringNotEmpty(),
69
- }
70
- },
71
- identifiers: {
72
- type: "object",
73
- minProperties: 1
74
- },
55
+ type: "object",
56
+ required: ["objType","identifiers"],
57
+ properties: {
58
+ objType: {
59
+ type: "object",
60
+ required: ["serviceTag","objectType"],
61
+ properties: {
62
+ serviceTag: izara.validatorSchema.stringNotEmpty(),
63
+ objectType: izara.validatorSchema.stringNotEmpty(),
64
+ }
65
+ },
66
+ identifiers: {
67
+ type: "object",
68
+ minProperties: 1
75
69
  }
76
- },
77
- oldReltypeAndDirection: {
78
- type: 'object',
79
- required: ['relType', 'relationshipDirection'],
70
+ }
71
+ },
72
+ relType: {
73
+ type: "object",
74
+ required: ["relationshipTag", "serviceTag"],
80
75
  properties: {
81
- relType: {
82
- type: 'object',
83
- required: ['serviceTag', 'relationshipTag'],
84
- properties: {
85
- serviceTag: izara.validatorSchema.stringNotEmpty(),
86
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
87
- }
88
- },
89
- relationshipProperties: {
90
- type: 'object',
91
- },
92
- relationshipDirection: {
76
+ relationshipTag: izara.validatorSchema.stringNotEmpty(),
77
+ serviceTag: {
93
78
  type: 'string',
94
- enum: ['from', 'to']
95
-
96
- },
79
+ pattern: "^[a-zA-Z0-9_-]+$",
80
+ enum: [process.env.iz_serviceTag]
81
+ }
97
82
  }
98
83
  },
99
- newRelType: {
100
- type: 'object',
101
- required: ['serviceTag', 'relationshipTag'],
102
- properties: {
103
- serviceTag: izara.validatorSchema.stringNotEmpty(),
104
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
105
- }
84
+ relationshipProperties: {
85
+ type: "object",
86
+ minProperties: 1
106
87
  },
107
- settings: {
108
- type: 'object'
88
+ relationshipDirection: {
89
+ type: "string",
90
+ enum: ['from','to']
109
91
  }
110
92
  }
111
93
  };
@@ -32,20 +32,15 @@ middleware.setValidatorSchema(recordHandlerSharedLib.baseValidatorSchema());
32
32
  // validate event params in middleware before into function
33
33
  let validatorSchema = {
34
34
  type: "object",
35
- required: [
36
- 'firstObject',
37
- 'secondObject',
38
- 'oldReltypeAndDirection',
39
- 'newRelType',
40
- ],
35
+ required: ["firstObject","secondObject", "relType", "relationshipProperties","relationshipDirection"],
41
36
  properties: {
42
37
  firstObject: {
43
- type: 'object',
44
- required: ['objType', 'identifiers'],
38
+ type: "object",
39
+ required: ["objType","identifiers"],
45
40
  properties: {
46
41
  objType: {
47
- type: 'object',
48
- required: ['objectType', 'serviceTag'],
42
+ type: "object",
43
+ required: ["serviceTag","objectType"],
49
44
  properties: {
50
45
  serviceTag: izara.validatorSchema.stringNotEmpty(),
51
46
  objectType: izara.validatorSchema.stringNotEmpty(),
@@ -54,59 +49,46 @@ let validatorSchema = {
54
49
  identifiers: {
55
50
  type: "object",
56
51
  minProperties: 1
57
- },
52
+ }
58
53
  }
59
54
  },
60
55
  secondObject: {
61
- type: 'object',
62
- required: ['objType', 'identifiers'],
63
- properties: {
64
- objType: {
65
- type: 'object',
66
- required: ['objectType', 'serviceTag'],
67
- properties: {
68
- serviceTag: izara.validatorSchema.stringNotEmpty(),
69
- objectType: izara.validatorSchema.stringNotEmpty(),
70
- }
71
- },
72
- identifiers: {
73
- type: "object",
74
- minProperties: 1
75
- },
56
+ type: "object",
57
+ required: ["objType","identifiers"],
58
+ properties: {
59
+ objType: {
60
+ type: "object",
61
+ required: ["serviceTag","objectType"],
62
+ properties: {
63
+ serviceTag: izara.validatorSchema.stringNotEmpty(),
64
+ objectType: izara.validatorSchema.stringNotEmpty(),
65
+ }
66
+ },
67
+ identifiers: {
68
+ type: "object",
69
+ minProperties: 1
76
70
  }
77
- },
78
- oldReltypeAndDirection: {
79
- type: 'object',
80
- required: ['relType', 'relationshipDirection'],
71
+ }
72
+ },
73
+ relType: {
74
+ type: "object",
75
+ required: ["relationshipTag", "serviceTag"],
81
76
  properties: {
82
- relType: {
83
- type: 'object',
84
- required: ['serviceTag', 'relationshipTag'],
85
- properties: {
86
- serviceTag: izara.validatorSchema.stringNotEmpty(),
87
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
88
- }
89
- },
90
- relationshipProperties: {
91
- type: 'object',
92
- },
93
- relationshipDirection: {
77
+ relationshipTag: izara.validatorSchema.stringNotEmpty(),
78
+ serviceTag: {
94
79
  type: 'string',
95
- enum: ['from', 'to']
96
-
97
- },
80
+ pattern: "^[a-zA-Z0-9_-]+$",
81
+ enum: [process.env.iz_serviceTag]
82
+ }
98
83
  }
99
84
  },
100
- newRelType: {
101
- type: 'object',
102
- required: ['serviceTag', 'relationshipTag'],
103
- properties: {
104
- serviceTag: izara.validatorSchema.stringNotEmpty(),
105
- relationshipTag: izara.validatorSchema.stringNotEmpty(),
106
- }
85
+ relationshipProperties: {
86
+ type: "object",
87
+ minProperties: 1
107
88
  },
108
- settings: {
109
- type: 'object'
89
+ relationshipDirection: {
90
+ type: "string",
91
+ enum: ['from','to']
110
92
  }
111
93
  }
112
94
  };
@@ -80,10 +80,7 @@ function createParamForCreateSource(srcPath) {
80
80
  ),
81
81
  createIamRole(
82
82
  {
83
- [RESOURCE_CLASSES.sns]:
84
- [
85
- SNS_RESOURCE.publish, SNS_RESOURCE.subscribe
86
- ]
83
+ [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish, SNS_RESOURCE.subscribe],
87
84
  },
88
85
  [
89
86
  resourceNames(RESOURCE_CLASSES.sns, upperCase(functionName) + "_In"),
@@ -98,7 +98,8 @@ function createParamForCreateSource(allObjectRelationships, handlerType, srcPath
98
98
  createIamRole(
99
99
  {
100
100
  [RESOURCE_CLASSES.sns]: [SNS_RESOURCE.publish, SNS_RESOURCE.subscribe],
101
- [RESOURCE_CLASSES.sqs]: [SQS_RESOURCE.receiveMessage, SQS_RESOURCE.sendMessage] },
101
+ [RESOURCE_CLASSES.sqs]: Object.values(SQS_RESOURCE)
102
+ },
102
103
  [
103
104
  resourceNames(RESOURCE_CLASSES.sns, upperCase(FUNCTION_NAME.getRelComplete) + "_Out"),
104
105
  resourceNames(RESOURCE_CLASSES.sqs, upperCase(functionName) + upperCase(handlerType)),