Skip to content

Commit

Permalink
Add schema URL to the meta object (#313)
Browse files Browse the repository at this point in the history
Added property 'meta.schemaUri' to JSON schemas of Eiffel events. Minor
version number of all events increased accordingly.
  • Loading branch information
z-sztrom committed Oct 17, 2022
1 parent 7f2f525 commit d390932
Show file tree
Hide file tree
Showing 70 changed files with 9,707 additions and 24 deletions.
119 changes: 119 additions & 0 deletions definitions/EiffelActivityCanceledEvent/3.2.0.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
# Copyright 2017-2022 Ericsson AB and others.
# For a full list of individual contributors, please see the commit history.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
---
$schema: http://json-schema.org/draft-04/schema#
_abbrev: ActC
_description: The EiffelActivityCanceledEvent signals that a previously
triggered activity execution has been canceled _before it has started_.
This is typically used in queuing situations where a queued execution
is dequeued. It is recommended that __CAUSE__ links be used to indicate
the reason.
type: object
properties:
meta:
$ref: ../EiffelMetaProperty/3.1.0.yml
data:
type: object
properties:
reason:
_description: Any human readable information as to the reason
for dequeueing.
type: string
customData:
type: array
items:
$ref: ../EiffelCustomDataProperty/1.0.0.yml
additionalProperties: false
links:
type: array
items:
$ref: ../EiffelEventLink/1.1.1.yml
required:
- meta
- data
- links
additonalProperties: false
_links:
ACTIVITY_EXECUTION:
description: Declares the activity execution that was canceled.
In other words, [EiffelActivityTriggeredEvent](../eiffel-vocabulary/EiffelActivityTriggeredEvent.md)
acts as a handle for the activity execution. This differs from
__CONTEXT__. In __ACTIVITY_EXECUTION__ the source carries information
pertaining to the target (i.e. the activity started, finished
or was canceled). In __CONTEXT__, on the other hand, the source
constitutes a subset of the target (e.g. this test case was executed
as part of that activity or test suite).
required: true
multiple: false
targets:
any_type: false
types:
- EiffelActivityTriggeredEvent
CAUSE:
description: While for most events it is recommended that __CAUSE__
SHOULD not be used in conjunction with __CONTEXT__, EiffelActivityCanceledEvent
is a special case as it represents a deviation from previous
intention. Therefore it is recommended that __CAUSE__ always
be included where applicable.
required: false
multiple: true
targets:
any_type: true
types: []
CONTEXT:
description: Identifies the activity or test suite of which this
event constitutes a part.
required: false
multiple: false
targets:
any_type: false
types:
- EiffelActivityTriggeredEvent
- EiffelTestSuiteStartedEvent
FLOW_CONTEXT:
description: 'Identifies the flow context of the event: which is
the continuous integration and delivery flow in which this occurred
– e.g. which product, project, track or version this is applicable
to.'
required: false
multiple: true
targets:
any_type: false
types:
- EiffelFlowContextDefinedEvent
_history:
- version: 3.2.0
introduced_in: 'No edition set'
changes: Add schema URL to the meta object (see [Issue 280](https://github.com/eiffel-community/eiffel/issues/280)).
- version: 3.1.0
introduced_in: '[edition-lyon](../../../tree/edition-lyon)'
changes: Add links.domainId member (see [Issue 233](https://github.com/eiffel-community/eiffel/issues/233)).
- version: 3.0.0
introduced_in: '[edition-agen](../../../tree/edition-agen)'
changes: Improved information integrity protection (see [Issue
185](https://github.com/eiffel-community/eiffel/issues/185)).
- version: 2.0.0
introduced_in: '[dc5ec6f](../../../blob/dc5ec6fb87e293eeffe88fdafe698eec0f5a2c89/eiffel-vocabulary/EiffelActivityCanceledEvent.md)'
changes: Introduced purl identifiers instead of GAVs (see [Issue
182](https://github.com/eiffel-community/eiffel/issues/182))
- version: 1.1.0
introduced_in: '[edition-toulouse](../../../tree/edition-toulouse)'
changes: Multiple links of type FLOW_CONTEXT allowed.
- version: 1.0.0
introduced_in: '[edition-bordeaux](../../../tree/edition-bordeaux)'
changes: Initial version.
_examples:
- title: Simple example
url: ../examples/events/EiffelActivityCanceledEvent/simple.json
176 changes: 176 additions & 0 deletions definitions/EiffelActivityFinishedEvent/3.3.0.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,176 @@
# Copyright 2017-2022 Ericsson AB and others.
# For a full list of individual contributors, please see the commit history.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
---
$schema: http://json-schema.org/draft-04/schema#
_abbrev: ActF
_description: The EiffelActivityFinishedEvent declares that a previously
started activity (declared by [EiffelActivityTriggeredEvent](./EiffelActivityTriggeredEvent.md)
followed by [EiffelActivityStartedEvent](./EiffelActivityStartedEvent.md))
has finished.
type: object
properties:
meta:
$ref: ../EiffelMetaProperty/3.1.0.yml
data:
type: object
properties:
outcome:
_description: The outcome of the activity.
type: object
properties:
conclusion:
_description: |-
A terse standardized conclusion of the activity, designed to be machine readable.
SUCCESSFUL signifies that the activity was concluded and the outcome matched expectations.
UNSUCCESSFUL signifies that the activity was concluded, but the outcome did not match expectations. To exemplify, a compilation job was successfully invoked, but compilation failed.
FAILED signifies that the activity could not be successfully executed. To exemplify, a compilation could not be invoked, e.g. due to misconfiguration or environment issues.
ABORTED signifies that the activity was aborted before it could be concluded.
TIMED_OUT signifies that the activity did not conclude within the allowed time frame.
INCONCLUSIVE signifies that the outcome of the activity could not be determined.
type: string
enum:
- SUCCESSFUL
- UNSUCCESSFUL
- FAILED
- ABORTED
- TIMED_OUT
- INCONCLUSIVE
description:
_description: A verbose description of the activity outcome,
designed to provide human readers with further information.
type: string
required:
- conclusion
persistentLogs:
_description: An array of persistent log files generated during
execution.
type: array
items:
type: object
properties:
mediaType:
_description: The [media type](https://en.wikipedia.org/wiki/Media_type)
of the URI's payload. Can be used to differentiate
between various representations of the same log, e.g.
text/html for human consumption and text/plain or application/json
for the machine-readable form.
type: string
name:
_description: The name of the log file.
type: string
tags:
_description: Arbitrary tags and keywords that describe
this log.
type: array
items:
type: string
uri:
_description: The URI at which the log can be retrieved.
type: string
required:
- name
- uri
additionalProperties: false
customData:
type: array
items:
$ref: ../EiffelCustomDataProperty/1.0.0.yml
additionalProperties: false
required:
- outcome
links:
type: array
items:
$ref: ../EiffelEventLink/1.1.1.yml
required:
- meta
- data
- links
additionalProperties: false
_links:
ACTIVITY_EXECUTION:
description: Declares the activity execution that was finished.
In other words, [EiffelActivityTriggeredEvent](../eiffel-vocabulary/EiffelActivityTriggeredEvent.md)
acts as a handle for the activity execution. This differs from
__CONTEXT__. In __ACTIVITY_EXECUTION__ the source carries information
pertaining to the target (i.e. the activity started, finished
or was canceled). In __CONTEXT__, on the other hand, the source
constitutes a subset of the target (e.g. this test case was executed
as part of that activity or test suite).
required: true
multiple: false
targets:
any_type: false
types:
- EiffelActivityTriggeredEvent
CAUSE:
description: 'Identifies a cause of the event occurring. SHOULD
not be used in conjunction with __CONTEXT__: individual events
providing __CAUSE__ within a larger context gives rise to ambiguity.
It is instead recommended to let the root event of the context
declare __CAUSE__.'
required: false
multiple: true
targets:
any_type: true
types: []
CONTEXT:
description: Identifies the activity or test suite of which this
event constitutes a part.
required: false
multiple: false
targets:
any_type: false
types:
- EiffelActivityTriggeredEvent
- EiffelTestSuiteStartedEvent
FLOW_CONTEXT:
description: 'Identifies the flow context of the event: which is
the continuous integration and delivery flow in which this occurred
– e.g. which product, project, track or version this is applicable
to.'
required: false
multiple: true
targets:
any_type: false
types:
- EiffelFlowContextDefinedEvent
_history:
- version: 3.3.0
introduced_in: 'No edition set'
changes: Add schema URL to the meta object (see [Issue 280](https://github.com/eiffel-community/eiffel/issues/280)).
- version: 3.2.0
introduced_in: '[edition-lyon](../../../tree/edition-lyon)'
changes: Add links.domainId member (see [Issue 233](https://github.com/eiffel-community/eiffel/issues/233)).
- version: 3.1.0
introduced_in: No edition set
changes: Add `data.persistentLogs.{mediaType,tags}`.
- version: 3.0.0
introduced_in: '[edition-agen](../../../tree/edition-agen)'
changes: Improved information integrity protection (see [Issue
185](https://github.com/eiffel-community/eiffel/issues/185)).
- version: 2.0.0
introduced_in: '[dc5ec6f](../../../blob/dc5ec6fb87e293eeffe88fdafe698eec0f5a2c89/eiffel-vocabulary/EiffelActivityFinishedEvent.md)'
changes: Introduced purl identifiers instead of GAVs (see [Issue
182](https://github.com/eiffel-community/eiffel/issues/182))
- version: 1.1.0
introduced_in: '[edition-toulouse](../../../tree/edition-toulouse)'
changes: Multiple links of type FLOW_CONTEXT allowed.
- version: 1.0.0
introduced_in: '[edition-bordeaux](../../../tree/edition-bordeaux)'
changes: Initial version.
_examples:
- title: Simple example
url: ../examples/events/EiffelActivityFinishedEvent/simple.json

0 comments on commit d390932

Please sign in to comment.