Spike: auto-generate JSON schema

This is a spike issue based on the discussion #218473 (comment 484819611)

The purpose of this spike issue is to try to auto-generate JSON schema since it could solve the overhead of manually maintain and updating a schema when we introduce a new keyword.

The JSON schema will answer the following JTBD and solutions:

  1. When writing a pipeline I would like to know what are the available keywords I can use.
    • Proposed solution - auto-complete of keywords in an accurate position (e.g. Script, When keywords could only be suggested underneath jobs)
    • Auto-suggested of valid values - e.g. when user writes Stage: we should suggest a list of available stages, when a user writes when: we should auto-suggest (manual, always, delay, etc...)
  2. When looking at a keyword i would like to know what this keyword is doing.
    • Tooltip when hovering over a keyword
    • link to the keyword documentation

Expected outcome

  • List of breakdown issues to generate a JSON schema

Current experience (in .com only)

image

Edited by Dov Hershkovitch