Skip to content

[Addon] migrate cloudshell to native helmchart#789

Open
preko-p wants to merge 1 commit into
kubevela:masterfrom
preko-p:preko-p/cloudshell-native-helmchart-787
Open

[Addon] migrate cloudshell to native helmchart#789
preko-p wants to merge 1 commit into
kubevela:masterfrom
preko-p:preko-p/cloudshell-native-helmchart-787

Conversation

@preko-p

@preko-p preko-p commented Jun 8, 2026

Copy link
Copy Markdown

Description of your changes

Migrates the cloudshell addon from the FluxCD-backed helm component to the native KubeVela helmchart component as a scoped worked example for:

Fixes #787

This keeps the existing chart, chart version, release name, release namespace, and values:

  • chart source: cloudtty
  • chart repo: https://cloudtty.github.io/cloudtty
  • chart version: 0.3.0
  • release name: cloudshell-operator
  • release namespace: vela-system

It also bumps the addon metadata version from 0.0.10 to 0.0.11 and removes the now-unused fluxcd dependency.

Special review notes:

  • This PR intentionally changes only one addon so maintainers can validate the migration shape before broader addon changes.
  • The native helmchart schema was checked against current KubeVela core sources/docs for chart.source, repoURL, version, release, and top-level values.
  • cloudtty 0.3.0 does not ship a Helm crds/ directory; its CRD is rendered through a normal chart template gated by the existing installCRDs: true default value, so I did not add options.includeCRDs.
  • Existing live installs may still need maintainer review for Flux-to-native takeover/upgrade behavior, because native helmchart does not exactly replicate Flux upgradeCRD semantics.

How has this code been tested?

Ran locally:

  • make check-addon-semver
  • git diff --check
  • rg -n "fluxcd|GitRepository|Kustomization|Bucket|OCIRepository|HelmRepository|type:\s*helm$" addons/cloudshell

The final grep returned no residual FluxCD or exact old type: helm references under addons/cloudshell.

Not run locally:

  • vela render/install validation
  • helm validation
  • cue validation
  • cluster/e2e addon install validation

Those tools were not available in my local runner environment.

Checklist

I have:

  • Title of the PR starts with type (e.g. [Addon] , [example] or [Doc]).
  • Updated/Added any relevant documentation and examples. Not applicable; this updates an existing addon implementation only.
  • New addon should be put in experimental. Not applicable; this updates an existing addon.
  • Update addon should modify the version in metadata.yaml to generate a new version.

Verified Addon promotion rules

This PR does not promote an experimental addon to verified.


Summary by cubic

Migrates the cloudshell addon from Flux-backed helm to native KubeVela helmchart for simpler management and no fluxcd dependency. Fixes #787.

Refactors

  • Switch component to helmchart (chart cloudtty, repo https://cloudtty.github.io/cloudtty, version 0.3.0).
  • Set release.name cloudshell-operator and release.namespace vela-system; keep existing values.
  • Remove fluxcd from dependencies; bump addon version to 0.0.11.
  • Note: CRDs are rendered by the chart (installCRDs: true); no options.includeCRDs added.

Written for commit 2db7ff7. Summary will update on new commits.

Review in cubic

Signed-off-by: preko-p <278021202+preko-p@users.noreply.github.com>

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

No issues found across 2 files

Re-trigger cubic

@preko-p

preko-p commented Jun 9, 2026

Copy link
Copy Markdown
Author

I dug into the failing Addon-test rather than pushing a workaround.

The failure looks like a CI/core baseline mismatch, not a catalog-local template error:

  • the workflow installs KubeVela CLI/core v1.10.1
  • the addon test then runs vela addon enable addons/cloudshell
  • the updated CloudShell template uses native type: helmchart
  • that test cluster does not have WorkloadDefinition.core.oam.dev/helmchart, so the admission webhook rejects the Application

I checked this repo for an existing native helmchart definition to reuse and only found FluxCD HelmChart CRDs/definitions, not a native KubeVela workload definition. A catalog-local fix would either reintroduce FluxCD, which defeats the purpose of #787, or vendor a global native helmchart capability into the CloudShell addon, which feels like unsafe scope creep.

So I think this needs maintainer direction: should the catalog CI/core baseline be updated to a KubeVela version that includes native helmchart, or should this PR be deferred until that baseline is available?

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.

Migrate FluxCD-backed addons to the native helmchart component

1 participant