Skip to content

Commit 1b9a637

Browse files
Schema correction for ActC (#377)
* Correct ActC schema regarding additionalProperties spelling
1 parent d736d6e commit 1b9a637

File tree

3 files changed

+311
-1
lines changed

3 files changed

+311
-1
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
# Copyright 2017-2024 Ericsson AB and others.
2+
# For a full list of individual contributors, please see the commit history.
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License");
5+
# you may not use this file except in compliance with the License.
6+
# You may obtain a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS,
12+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
# See the License for the specific language governing permissions and
14+
# limitations under the License.
15+
---
16+
$schema: http://json-schema.org/draft-04/schema#
17+
_abbrev: ActC
18+
_description: The EiffelActivityCanceledEvent signals that a previously
19+
triggered activity execution has been canceled _before it has started_.
20+
This is typically used in queuing situations where a queued execution
21+
is dequeued. It is recommended that __CAUSE__ links be used to indicate
22+
the reason.
23+
type: object
24+
properties:
25+
meta:
26+
$ref: ../EiffelMetaProperty/3.1.0.yml
27+
data:
28+
type: object
29+
properties:
30+
reason:
31+
_description: Any human readable information as to the reason
32+
for dequeueing.
33+
type: string
34+
customData:
35+
type: array
36+
items:
37+
$ref: ../EiffelCustomDataProperty/1.0.0.yml
38+
additionalProperties: false
39+
links:
40+
type: array
41+
items:
42+
$ref: ../EiffelEventLink/1.1.1.yml
43+
required:
44+
- meta
45+
- data
46+
- links
47+
additionalProperties: false
48+
_links:
49+
ACTIVITY_EXECUTION:
50+
description: Declares the activity execution that was canceled.
51+
In other words, [EiffelActivityTriggeredEvent](../eiffel-vocabulary/EiffelActivityTriggeredEvent.md)
52+
acts as a handle for the activity execution. This differs from
53+
__CONTEXT__. In __ACTIVITY_EXECUTION__ the source carries information
54+
pertaining to the target (i.e. the activity started, finished
55+
or was canceled). In __CONTEXT__, on the other hand, the source
56+
constitutes a subset of the target (e.g. this test case was executed
57+
as part of that activity or test suite).
58+
required: true
59+
multiple: false
60+
targets:
61+
any_type: false
62+
types:
63+
- EiffelActivityTriggeredEvent
64+
CAUSE:
65+
description: While for most events it is recommended that __CAUSE__
66+
SHOULD not be used in conjunction with __CONTEXT__, EiffelActivityCanceledEvent
67+
is a special case as it represents a deviation from previous
68+
intention. Therefore it is recommended that __CAUSE__ always
69+
be included where applicable.
70+
required: false
71+
multiple: true
72+
targets:
73+
any_type: true
74+
types: []
75+
CONTEXT:
76+
description: Identifies the activity or test suite of which this
77+
event constitutes a part.
78+
required: false
79+
multiple: false
80+
targets:
81+
any_type: false
82+
types:
83+
- EiffelActivityTriggeredEvent
84+
- EiffelTestSuiteStartedEvent
85+
FLOW_CONTEXT:
86+
description: 'Identifies the flow context of the event: which is
87+
the continuous integration and delivery flow in which this occurred
88+
– e.g. which product, project, track or version this is applicable
89+
to.'
90+
required: false
91+
multiple: true
92+
targets:
93+
any_type: false
94+
types:
95+
- EiffelFlowContextDefinedEvent
96+
_history:
97+
- version: 4.0.0
98+
changes: Fix bug in schema regarding additionalProperties (see [Issue 376](https://github.com/eiffel-community/eiffel/issues/376)).
99+
- version: 3.2.0
100+
introduced_in: edition-arica
101+
changes: Add schema URL to the meta object (see [Issue 280](https://github.com/eiffel-community/eiffel/issues/280)).
102+
- version: 3.1.0
103+
introduced_in: edition-lyon
104+
changes: Add links.domainId member (see [Issue 233](https://github.com/eiffel-community/eiffel/issues/233)).
105+
- version: 3.0.0
106+
introduced_in: edition-agen
107+
changes: Improved information integrity protection (see [Issue
108+
185](https://github.com/eiffel-community/eiffel/issues/185)).
109+
- version: 2.0.0
110+
introduced_in: edition-agen
111+
changes: Introduced purl identifiers instead of GAVs (see [Issue
112+
182](https://github.com/eiffel-community/eiffel/issues/182))
113+
- version: 1.1.0
114+
introduced_in: edition-toulouse
115+
changes: Multiple links of type FLOW_CONTEXT allowed.
116+
- version: 1.0.0
117+
introduced_in: edition-bordeaux
118+
changes: Initial version.
119+
_examples:
120+
- title: Simple example
121+
url: ../examples/events/EiffelActivityCanceledEvent/simple.json

eiffel-vocabulary/EiffelActivityCanceledEvent.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<!---
2-
This file was generated from ../definitions/EiffelActivityCanceledEvent/3.2.0.yml.
2+
This file was generated from ../definitions/EiffelActivityCanceledEvent/4.0.0.yml.
33
See that file for a copyright notice.
44
--->
55

@@ -177,6 +177,7 @@ __Description:__ A URI pointing at a location from where the schema used when cr
177177

178178
| Version | Introduced in | Changes |
179179
| ------- | ------------- | ------- |
180+
| 4.0.0 | Not yet released in an edition | Fix bug in schema regarding additionalProperties (see [Issue 376](https://github.com/eiffel-community/eiffel/issues/376)). |
180181
| 3.2.0 | [edition-arica](../../../tree/edition-arica) | Add schema URL to the meta object (see [Issue 280](https://github.com/eiffel-community/eiffel/issues/280)). |
181182
| 3.1.0 | [edition-lyon](../../../tree/edition-lyon) | Add links.domainId member (see [Issue 233](https://github.com/eiffel-community/eiffel/issues/233)). |
182183
| 3.0.0 | [edition-agen](../../../tree/edition-agen) | Improved information integrity protection (see [Issue 185](https://github.com/eiffel-community/eiffel/issues/185)). |
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-04/schema#",
3+
"type": "object",
4+
"properties": {
5+
"meta": {
6+
"type": "object",
7+
"properties": {
8+
"id": {
9+
"type": "string",
10+
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
11+
},
12+
"type": {
13+
"type": "string",
14+
"enum": [
15+
"EiffelActivityCanceledEvent"
16+
]
17+
},
18+
"version": {
19+
"type": "string",
20+
"enum": [
21+
"4.0.0"
22+
],
23+
"default": "4.0.0"
24+
},
25+
"time": {
26+
"type": "integer"
27+
},
28+
"tags": {
29+
"type": "array",
30+
"items": {
31+
"type": "string"
32+
}
33+
},
34+
"source": {
35+
"type": "object",
36+
"properties": {
37+
"domainId": {
38+
"type": "string"
39+
},
40+
"host": {
41+
"type": "string"
42+
},
43+
"name": {
44+
"type": "string"
45+
},
46+
"serializer": {
47+
"type": "string",
48+
"pattern": "^pkg:"
49+
},
50+
"uri": {
51+
"type": "string"
52+
}
53+
},
54+
"additionalProperties": false
55+
},
56+
"security": {
57+
"type": "object",
58+
"properties": {
59+
"authorIdentity": {
60+
"type": "string"
61+
},
62+
"integrityProtection": {
63+
"type": "object",
64+
"properties": {
65+
"signature": {
66+
"type": "string"
67+
},
68+
"alg": {
69+
"type": "string",
70+
"enum": [
71+
"HS256",
72+
"HS384",
73+
"HS512",
74+
"RS256",
75+
"RS384",
76+
"RS512",
77+
"ES256",
78+
"ES384",
79+
"ES512",
80+
"PS256",
81+
"PS384",
82+
"PS512"
83+
]
84+
},
85+
"publicKey": {
86+
"type": "string"
87+
}
88+
},
89+
"required": [
90+
"signature",
91+
"alg"
92+
],
93+
"additionalProperties": false
94+
},
95+
"sequenceProtection": {
96+
"type": "array",
97+
"items": {
98+
"type": "object",
99+
"properties": {
100+
"sequenceName": {
101+
"type": "string"
102+
},
103+
"position": {
104+
"type": "integer"
105+
}
106+
},
107+
"additionalProperties": false,
108+
"required": [
109+
"sequenceName",
110+
"position"
111+
]
112+
}
113+
}
114+
},
115+
"additionalProperties": false,
116+
"required": [
117+
"authorIdentity"
118+
]
119+
},
120+
"schemaUri": {
121+
"type": "string"
122+
}
123+
},
124+
"required": [
125+
"id",
126+
"type",
127+
"version",
128+
"time"
129+
],
130+
"additionalProperties": false
131+
},
132+
"data": {
133+
"type": "object",
134+
"properties": {
135+
"reason": {
136+
"type": "string"
137+
},
138+
"customData": {
139+
"type": "array",
140+
"items": {
141+
"type": "object",
142+
"properties": {
143+
"key": {
144+
"type": "string"
145+
},
146+
"value": {}
147+
},
148+
"required": [
149+
"key",
150+
"value"
151+
],
152+
"additionalProperties": false
153+
}
154+
}
155+
},
156+
"additionalProperties": false
157+
},
158+
"links": {
159+
"type": "array",
160+
"items": {
161+
"type": "object",
162+
"properties": {
163+
"type": {
164+
"type": "string"
165+
},
166+
"target": {
167+
"type": "string",
168+
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
169+
},
170+
"domainId": {
171+
"type": "string"
172+
}
173+
},
174+
"required": [
175+
"type",
176+
"target"
177+
],
178+
"additionalProperties": false
179+
}
180+
}
181+
},
182+
"required": [
183+
"meta",
184+
"data",
185+
"links"
186+
],
187+
"additionalProperties": false
188+
}

0 commit comments

Comments
 (0)