Skip to content

Add YAML schemas for system tests components, tests, and metadata#722

Closed
kishansinghifs1 wants to merge 1 commit into
precice:developfrom
kishansinghifs1:feat-add-yaml-for-system
Closed

Add YAML schemas for system tests components, tests, and metadata#722
kishansinghifs1 wants to merge 1 commit into
precice:developfrom
kishansinghifs1:feat-add-yaml-for-system

Conversation

@kishansinghifs1

@kishansinghifs1 kishansinghifs1 commented Feb 24, 2026

Copy link
Copy Markdown
Contributor

Add YAML schemas for components, tests, and metadata : #403

  • Added JSON schemas and component templates to define and enforce the expected YAML structure.
  • Configured mappings so the Red Hat YAML extension provides autocompletion, hover docs, and inline validation when editing these files.
  • The component template schema documents the expected Docker Compose service fragment structure; note that Jinja2 template syntax ({{ }}, {% %}) will still produce warnings in the editor since it's not valid YAML.

Checklist:

  • I added a summary of any user-facing changes (compared to the last release) in the changelog-entries/<PRnumber>.md.
  • I will remember to squash-and-merge, providing a useful summary of the changes of this PR.

@Logende Logende self-requested a review February 24, 2026 13:57
@MakisH MakisH added the GSoC Contributed in the context of the Google Summer of Code label Feb 25, 2026
@precice-bot

Copy link
Copy Markdown
Collaborator

This pull request has been mentioned on preCICE Forum on Discourse. There might be relevant details there:

https://precice.discourse.group/t/gsoc-2026-kishan-singh-system-tests-improvements/2775/1

@MakisH MakisH changed the title Fix #403 : Add YAML schemas for components, tests, and metadata . Add YAML schemas for system tests components, tests, and metadata May 9, 2026

@MakisH MakisH left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for demonstrating that #403 is possible, @kishansinghifs1. It looks like it works for tests.yaml and components.yaml.

How did you generate the schema?

There have been several changes since this PR was opened (I could only look at it closer now), and we would anyway need to add the respective headers to all related YAML files.

Would you still like to pursue this PR?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The schema header still needs to be added to the various component templates.

You write that

The component template schema documents the expected Docker Compose service fragment structure; note that Jinja2 template syntax ({{ }}, {% %}) will still produce warnings in the editor since it's not valid YAML.

What exactly breaks? It is still a regular comment, no?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There have recently been some changes in the schema in develop since #842: the repository is now an optional property of each build_args (actually, a required one of any property ending in _REF).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This would still need to be added to the respective metadata.yaml files, right? Or can we centrally make it being picked up automatically for every file?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There have been a few new parameters since this was opened: max_time, max_time_windows, timeout.

@MakisH MakisH linked an issue Jun 16, 2026 that may be closed by this pull request
@kishansinghifs1 kishansinghifs1 deleted the feat-add-yaml-for-system branch June 17, 2026 11:07
@kishansinghifs1

Copy link
Copy Markdown
Contributor Author

Thank you for demonstrating that #403 is possible, @kishansinghifs1. It looks like it works for tests.yaml and components.yaml.

How did you generate the schema?

There have been several changes since this PR was opened (I could only look at it closer now), and we would anyway need to add the respective headers to all related YAML files.

Would you still like to pursue this PR?

Sorry @MakisH due to the time constraint I would not be able to work further over the respective issue. Thank you!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

GSoC Contributed in the context of the Google Summer of Code systemtests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

YAML schema for system test cases

3 participants