Move vCluster To Other Project
This API can be used to move a virtual cluster from one project to another.
Migrating a tenant cluster between projects while Argo CD integration is enabled is not supported. This operation deletes all Argo CD applications managed by Platform for that cluster and removes their workloads. Applications are not recreated in the destination project. The tenant cluster may also get stuck in Terminating.
Avoid this migration path when Argo CD integration is active. If migration is necessary, manually remove all Argo CD-managed applications and workloads before migrating, and reconfigure the integration in the destination project afterward. See Deploy applications for details on managing Argo CD integration.
Move a vCluster to another project example​
Example request:
apiVersion: management.loft.sh/v1
kind: ProjectMigrateVirtualClusterInstance
metadata: {}
sourceVirtualClusterInstance:
name: my-virtual-cluster
namespace: loft-p-my-other-project
Move a vCluster to another project reference​
sourceVirtualClusterInstance required object ​
SourceVirtualClusterInstance is the tenant cluster instance to migrate into this project
sourceVirtualClusterInstance required object ​name string ​
Name of the tenant cluster instance to migrate
name string ​namespace string ​
Namespace of the tenant cluster instance to migrate
namespace string ​Move a vCluster to another project (create)​
Move a virtual cluster into another project using this API.
- curl
Create a file object.yaml with the following contents:
apiVersion: management.loft.sh/v1
kind: ProjectMigrateVirtualClusterInstance
metadata: {}
sourceVirtualClusterInstance:
name: my-virtual-cluster
namespace: loft-p-my-other-project
Then run the following curl command:
# Exchange my-object in the url below with the name of the Move Virtual Cluster To Other Project
curl -s -X POST --insecure \
"https://$LOFT_DOMAIN/kubernetes/management/apis/management.loft.sh/v1/projects/my-object/migratevirtualclusterinstance" \
--data-binary "$(cat object.yaml)" \
-H "Content-Type: application/yaml" \
-H "Authorization: Bearer $ACCESS_KEY"