Add metalctl
CLI with move
Command to Migrate CRDs and CRs Between Clusters
#146
Labels
enhancement
New feature or request
Description
We are introducing a new CLI tool called
metalctl
to interact with themetal-operator
as part of ourmetal-operator
ecosystem. The initial command to be implemented is themove
command, which will facilitate the migration ofCustom Resource Definitions (CRDs) andCustom Resources (CRs) related tometal-operator
from one Kubernetes cluster to another.Goal
metalctl
.move
command to migrate allmetal-operator
relatedCRDs andCRs between two clusters.Key Objectives
metal-operator
CRDs andCRs.movedpresent before CRs).Command Details
Command:
move
The
move
command will enable users to specify a source and target Kubernetes cluster for migratingCRDs andCRs associated with themetal-operator
.Command Options:
--source-kubeconfig
(required): Path to the kubeconfig of the source cluster.--target-kubeconfig
(required): Path to the kubeconfig of the target cluster.---crds-only
(optional): Flag to migrate only the CRDs without CRs.---crs-only
(optional): Flag to migrate only the CRs without CRDs.--namespace
(optional): Specify a namespace to filter CRDs and CRs to migrate. Defaults to all namespaces if not specified.--dry-run
(optional): Perform a dry run to show what would be moved without executing the migration.--verbose
(optional): Enable verbose logging for detailed output during migration.Example Usage:
Steps in the move Process:
source-kubeconfig
andtarget-kubeconfig
.metal-operator
.Definition of Done
metalctl
is created with a functional move command.metal-operator
CRDs and CRs between clusters.dry-run
,, andcrds-only
,crs-only
namespace
options.move
command is included.move
functionality, including unit tests and integration tests.Additional Considerations
metalctl
can include operations like listing or deleting resources, which should be planned for in the CLI structure.Console access
: Add aconsole
command to access the serial console of a server. This will allow users to remotely view or interact with a server's console for debugging and management purposes.The text was updated successfully, but these errors were encountered: