Skip to content

Adding titles to oneOf and repeating names #901

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 50 additions & 18 deletions schema/workflow.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ properties:
type: array
items:
type: object
title: ExtensionItem
minProperties: 1
maxProperties: 1
additionalProperties:
Expand Down Expand Up @@ -105,6 +106,7 @@ $defs:
type: array
items:
type: object
title: TaskItem
minProperties: 1
maxProperties: 1
additionalProperties:
Expand Down Expand Up @@ -157,6 +159,7 @@ $defs:
type: string
const: asyncapi
with:
title: WithAsyncAPI
type: object
properties:
document:
Expand Down Expand Up @@ -195,6 +198,7 @@ $defs:
type: string
const: grpc
with:
title: WithGRPC
type: object
properties:
proto:
Expand Down Expand Up @@ -241,6 +245,7 @@ $defs:
type: string
const: http
with:
title: WithHTTP
type: object
properties:
method:
Expand Down Expand Up @@ -274,6 +279,7 @@ $defs:
type: string
const: openapi
with:
title: WithOpenAPI
type: object
properties:
document:
Expand Down Expand Up @@ -441,7 +447,8 @@ $defs:
run:
type: object
oneOf:
- properties:
- title: RunContainer
properties:
container:
type: object
properties:
Expand All @@ -458,56 +465,66 @@ $defs:
type: object
description: The container's volume mappings, if any.
environment:
title: ContainerEnvironment
type: object
description: A key/value mapping of the environment variables, if any, to use when running the configured process.
required: [ image ]
required: [ container ]
description: Enables the execution of external processes encapsulated within a containerized environment.
- properties:
- title: RunScript
properties:
script:
type: object
properties:
language:
type: string
description: The language of the script to run.
environment:
title: ScriptEnvironment
type: object
additionalProperties: true
description: A key/value mapping of the environment variables, if any, to use when running the configured process.
oneOf:
- properties:
- title: ScriptInline
properties:
code:
type: string
required: [ code ]
description: The script's code.
- properties:
- title: ScriptExternal
properties:
source:
$ref: '#/$defs/externalResource'
description: The script's resource.
required: [ source ]
required: [ language ]
required: [ script ]
description: Enables the execution of custom scripts or code within a workflow, empowering workflows to perform specialized logic, data processing, or integration tasks by executing user-defined scripts written in various programming languages.
- properties:
- title: RunShell
properties:
shell:
type: object
properties:
command:
type: string
description: The shell command to run.
arguments:
title: ShellArguments
type: object
additionalProperties: true
description: A list of the arguments of the shell command to run.
environment:
title: ShellEnvironment
type: object
additionalProperties: true
description: A key/value mapping of the environment variables, if any, to use when running the configured process.
required: [ command ]
required: [ shell ]
description: Enables the execution of shell commands within a workflow, enabling workflows to interact with the underlying operating system and perform system-level operations, such as file manipulation, environment configuration, or system administration tasks.
- properties:
- title: RunWokflow
properties:
workflow:
title: RunWorkflowDescriptor
type: object
properties:
namespace:
Expand All @@ -521,6 +538,7 @@ $defs:
default: latest
description: The version of the workflow to run. Defaults to latest
input:
title: WorkflowInput
type: object
additionalProperties: true
description: The data, if any, to pass as input to the workflow to execute. The value should be validated against the target workflow's input schema, if specified.
Expand Down Expand Up @@ -579,6 +597,7 @@ $defs:
type: object
properties:
errors:
title: CatchErrors
type: object
as:
type: string
Expand Down Expand Up @@ -615,7 +634,8 @@ $defs:
authenticationPolicy:
type: object
oneOf:
- properties:
- title: BasicAuthenticationPolicy
properties:
basic:
type: object
properties:
Expand All @@ -628,7 +648,8 @@ $defs:
required: [ username, password ]
required: [ basic ]
description: Use basic authentication.
- properties:
- title: BearerAuthenticationPolicy
properties:
bearer:
type: object
properties:
Expand All @@ -638,7 +659,8 @@ $defs:
required: [ token ]
required: [ bearer ]
description: Use bearer authentication.
- properties:
- title: OAuth2AuthenticationPolicy
properties:
oauth2:
type: object
properties:
Expand Down Expand Up @@ -752,21 +774,24 @@ $defs:
eventConsumptionStrategy:
type: object
oneOf:
- properties:
- title: AllEventConsumptionStrategy
properties:
all:
type: array
items:
$ref: '#/$defs/eventFilter'
description: A list containing all the events that must be consumed.
required: [ all ]
- properties:
- title: AnyEventConsumptionStrategy
properties:
any:
type: array
items:
$ref: '#/$defs/eventFilter'
description: A list containing any of the events to consume.
required: [ any ]
- properties:
- title: OneEventConsumptionStrategy
properties:
one:
$ref: '#/$defs/eventFilter'
description: The single event to consume.
Expand All @@ -775,6 +800,7 @@ $defs:
type: object
properties:
with:
title: WithEvent
type: object
minProperties: 1
properties:
Expand Down Expand Up @@ -835,7 +861,8 @@ $defs:
oneOf:
- type: string
format: uri
- type: object
- title: ExternalResourceURI
type: object
properties:
uri:
type: string
Expand Down Expand Up @@ -895,17 +922,20 @@ $defs:
backoff:
type: object
oneOf:
- properties:
- title: ConstantBackoff
properties:
constant:
type: object
description: The definition of the constant backoff to use, if any.
required: [ constant ]
- properties:
- title: ExponentialBackOff
properties:
exponential:
type: object
description: The definition of the exponential backoff to use, if any.
required: [ exponential ]
- properties:
- title: LinearBackoff
properties:
linear:
type: object
description: The definition of the linear backoff to use, if any.
Expand Down Expand Up @@ -947,11 +977,13 @@ $defs:
default: json
description: The schema's format. Defaults to 'json'. The (optional) version of the format can be set using `{format}:{version}`.
oneOf:
- properties:
- title: SchemaInline
properties:
document:
description: The schema's inline definition.
required: [ document ]
- properties:
- title: SchemaExternal
properties:
resource:
$ref: '#/$defs/externalResource'
description: The schema's external resource.
Expand Down
Loading