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

Add Shim Status information to .shim.status #51

Open
voigt opened this issue Mar 17, 2024 · 2 comments · May be fixed by #45
Open

Add Shim Status information to .shim.status #51

voigt opened this issue Mar 17, 2024 · 2 comments · May be fixed by #45
Labels
area/manager help wanted Extra attention is needed
Milestone

Comments

@voigt
Copy link
Contributor

voigt commented Mar 17, 2024

As a shim operator, I would like to see correct status information per shim in the .shim.status field.

Furthermore we'd like to display proper conditions, depending on the rollout state of the shim.

Possible example:

status:
  nodes: 3
  readyNodes: 2
  updatedNodes: 2
  conditions:
  - lastTransitionTime: "2024-01-30T22:38:57Z"
    lastUpdateTime: "2024-01-30T22:38:57Z"
    message: Shim has minimum availability.
    reason: MinimumShimsAvailable
    status: "True"
    type: Available
  - lastTransitionTime: "2024-01-30T22:38:54Z"
    lastUpdateTime: "2024-01-30T22:39:06Z"
    message: Job "<nodename>-<shimname>" has successfully progressed.
    reason: NewShimAvailable
    status: "True"
    type: Progressing

Please consider this as an idea for inspiration only. I welcome any suggestions for displaying the relevant status information!

@voigt voigt added this to the v1.0.0 milestone Mar 17, 2024
@voigt voigt linked a pull request Mar 17, 2024 that will close this issue
11 tasks
@voigt voigt added the help wanted Extra attention is needed label Mar 17, 2024
@phyrog phyrog linked a pull request Mar 19, 2024 that will close this issue
11 tasks
@rajatjindal
Copy link
Member

this will be a great addition. would adding the shim version as part of the status field makes sense as well? it will be useful to have that info exposed as status field that other tools can then read. (e.g. spinkube-doctor)

@voigt
Copy link
Contributor Author

voigt commented May 19, 2024

Interesting thought @rajatjindal! Any idea where to get this info from?

If you consider the shim spec, there is no reliable source to derive the shim version from. Here an example:

apiVersion: runtime.kwasm.sh/v1alpha1 
kind: Shim
metadata:
  name: spin-v2
  labels:
[...]
spec:
  nodeSelector:
    spin: "true"

  fetchStrategy:
    type: annonymousHttp
    anonHttp:
      location: "https://github.com/spinkube/containerd-shim-spin/releases/download/v0.14.1/containerd-shim-spin-v2-linux-aarch64.tar.gz"

  runtimeClass:
    name: spin-v2
    handler: spin

  rolloutStrategy:
    type: recreate

We could extract it from the filename or the URL path. But this is not a universally applicable approach.
Not sure if it is worth to adjust the spec and add a version...? This again would require manual maintenance...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/manager help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants