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

Workflow Spec should include version information #13544

Open
isubasinghe opened this issue Sep 2, 2024 · 1 comment
Open

Workflow Spec should include version information #13544

isubasinghe opened this issue Sep 2, 2024 · 1 comment
Labels
area/spec Changes to the workflow specification. type/feature Feature request

Comments

@isubasinghe
Copy link
Member

Summary

A new Version field would need to be added into the Workflow specification.

Use Cases

  1. Rely explicitly on this version field instead of deducing versions through other missing fields/present fields to provide backwards compatibility.
  2. As an operator, I would be able to determine if my current running workflow can be safely upgraded to use a newer controller. This is a far weaker argument, admittedly.
@isubasinghe isubasinghe added the type/feature Feature request label Sep 2, 2024
@Joibel
Copy link
Member

Joibel commented Sep 2, 2024

This is in theory already in the API version at the top of the CR:

apiVersion: argoproj.io/v1alpha1
kind: Workflow

Currently it's set at v1alpha1, which is often treated as "anything goes", as this project is treating it.

https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/ explains how this is supposed to be implemented.

A version bump would be required for incompatible changes with the mutating webhook knowing how to convert versions.

I'd suggest the Validating Webhook (#13503) is a more important thing to get in at the moment and we need to be more careful with API (CRD) changes in future.

@agilgur5 agilgur5 added the area/spec Changes to the workflow specification. label Sep 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/spec Changes to the workflow specification. type/feature Feature request
Projects
None yet
Development

No branches or pull requests

3 participants