Skip to content
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

tasks.schema.json is incomplete #1041

Closed
sevaa opened this issue May 29, 2024 · 2 comments
Closed

tasks.schema.json is incomplete #1041

sevaa opened this issue May 29, 2024 · 2 comments

Comments

@sevaa
Copy link

sevaa commented May 29, 2024

Tried to validate the manifests of actual tasks in the AzDevOps Services database against tasks.schema.json as posted here. There are several fields that are present in task.json files of actual tasks but are missing in the schema:

  • In the task manifest root:
    • serverOwned: boolean
    • contentsUploaded: boolean
    • iconUrl: never saw a nonnull
    • hostType: never saw a nonnull
    • definitionType: string, the only value I've seen was "task"
    • ecosystem: string, saw "node" and "dotnet"
    • satisfies: array of strings
    • contributionIdentifier: string, but I only saw it in third party tasks
    • contributionVersion: string, but I only saw it in third party tasks
  • Under category, enum option "Tool"
  • Under execution, the following options can be found:
    • AgentPlugin
    • HttpRequest
    • HttpRequestChain
    • Delay
    • ManualValidation
    • Process
    • PowerShellExe
    • ServiceBus
    • RM:ManualIntervention
    • Node14 - only in third party tasks
    • Node18 - only in third party tasks
    • Node20 - only in third party tasks
  • inputs[].properties.resizable - can be a string with "true" or "false" as opposed to a JSON boolean
  • inputs[].validation - object with string properties expression, message
  • postjobexecution - saw AgentPlugin there
  • version.isTest: boolean
  • visibility - enum option "Preview"

Also, JSON schemata and JSON in general are case sensitive. There are some instances where the casing of a property doesn't match.

If the schema was meant to be open ended, with nonstandard fields supported seamlessly, then there was no need to put additionalProperties:false into it.

@vmapetr
Copy link
Contributor

vmapetr commented Jun 3, 2024

Hi @sevaa thanks for reporting!
We are working on more prioritized issues at the moment, but will get back to this one soon.

Copy link

github-actions bot commented Sep 1, 2024

This issue has had no activity in 90 days. Please comment if it is not actually stale

@github-actions github-actions bot added the stale label Sep 1, 2024
@github-actions github-actions bot closed this as completed Sep 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants