Skip to content

Conversation

0XSIKIPON
Copy link

@0XSIKIPON 0XSIKIPON commented Jul 13, 2025

closes #747

📑 Description

What this PR does / Why we need it

This PR introduces a new CLI command cyctl helm migrate to automate migration of existing Helm releases within a namespace to Cyclops Modules.
By running,
cyctl helm migrate --namespace <ns> --releases <release-name or list of releases> --repo <template repo> --path <template path> --version <version>
The system will :

  • Validates the specified Helm chart template repo/path@version.
  • Fetches values from all Helm releases in a given namespace.
  • Creates Cyclops Modules using the template and Helm values.

✅ Checks

  • I have tested my code (provide screenshots or screen recordings of a working solution)
  • I have performed a self-review of my code

Before Migrating:

cyclops1

Run cmd to migrate helm release to Cyclops Module:
cyclops4

Migrated helm release to Cyclops Module:
cyclops2
cyclops3

Additional context

PR Type

/kind feature

@0XSIKIPON 0XSIKIPON requested a review from a team as a code owner July 13, 2025 01:27
Copy link
Collaborator

@petar-cvit petar-cvit left a comment

Choose a reason for hiding this comment

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

Thanks for the PR 🧡

I left a comment on reusing the Kubernetes client from cyclops-ctrl/pkg. Also, migrating the whole namespace at once sounds a bit risky. Can we require users to provide a list of releases they want to migrate?


"github.com/cyclops-ui/cyclops/cyclops-ctrl/api/v1alpha1"
cyclopsclient "github.com/cyclops-ui/cyclops/cyclops-ctrl/api/v1alpha1/client"
"github.com/cyclops-ui/cycops-cyctl/utility"
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can we use the Kubernetes client from cyclops-ctrl/pkg instead? This way, you don't have to reimplement the utility package

cyctl/go.mod Outdated
module github.com/cyclops-ui/cycops-cyctl

go 1.22.0
go 1.24.0
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can you revert to the previous version of Go and other dependencies unless crucial?

@0XSIKIPON
Copy link
Author

@petar-cvit Thank you for the feedback. I'll be working on the requested changes and push the refactored version.

@0XSIKIPON
Copy link
Author

0XSIKIPON commented Aug 3, 2025

@petar-cvit I have made the required changes and updated the PR description, you can check again.

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 Helm releases to Cyclops modules using cyctl

2 participants