Skip to content

Validate keystone workflows + Enforce full semver on capabilities#13328

Merged
cedric-cordenier merged 9 commits intodevelopfrom
chore/refactor_keystone_schema
Jun 7, 2024
Merged

Validate keystone workflows + Enforce full semver on capabilities#13328
cedric-cordenier merged 9 commits intodevelopfrom
chore/refactor_keystone_schema

Conversation

@HenryNguyen5
Copy link
Copy Markdown
Contributor

@HenryNguyen5 HenryNguyen5 commented May 25, 2024

This PR contains the following changes:

  • Workflow definitions now enforce that a full capability semver must be specified. No version ranges are allowed.
  • Validation for workflow YAMLs is now enabled.
  • The CapabilityInfo struct now embeds the version as part of the ID itself, rather than having it as a separate field.

Prior arts:

Related PR: smartcontractkit/chainlink-common#536

@cl-sonarqube-production
Copy link
Copy Markdown

@HenryNguyen5 HenryNguyen5 changed the title chore/refactor keystone schema Validate keystone workflows + Enforce full semver on capabilities Jun 4, 2024
"missing name",
func() string {
id := "15c631d295ef5e32deb99a10ee6804bc4af1385568f9b3363f6552ac6dbb2cef"
owner := "00000000000000000000000000000000000000aa"
Copy link
Copy Markdown
Contributor

@DeividasK DeividasK Jun 5, 2024

Choose a reason for hiding this comment

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

The owner needs to be within the workflow spec (not the "job spec for the workflow"), as the nodes will need to get the owner from the workflow after validating signatures, right?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I'm not too sure, I kept the structure of the test cases the same as trunk. I think we should address this in a separate topic as I want to get validation for workflow specs (not job specs) merged in first.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@DeividasK It's not part of the workflow spec (at least it wasn't last time I checked). We do pass it from the workflow spec to the RequestMetadata thus making it available to capabilities though

DeividasK
DeividasK previously approved these changes Jun 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants