⚠️ Execution Method (Must Read): This skill executes queries via the local Python dispatcher script. Using hcloud, openstack, or other CLI tools or direct API calls is prohibited.
- The dispatcher script is located at
scripts/huawei-cloud.pywithin the skill directory- All scripts and environment check scripts are inside the skill package. You must use
skill action=execto execute them. Do not run them directly in a shell.- Do not attempt hcloud, openstack, curl IAM, or any other CLI/API methods. This skill does not depend on those tools.
- All paths are relative to the skill directory, which is the directory where this SKILL.md is located.
This skill plans Huawei Cloud CCE container migrations by inventorying source clusters, mapping dependencies, designing migration batches, and generating risk assessments with rollback strategies. It performs read-only resource discovery and planning only — it does NOT create target resources, modify networks, migrate data, or delete source resources.
Architecture: Python dispatcher ( scripts/huawei-cloud.py) → Huawei Cloud Python SDK + Kubernetes client → CCE clusters, node pools, addons, workloads, Services, Ingresses, PVCs, PVs, ConfigMaps, Secrets, VPC, subnets, security groups, ELB, EIP, EVS, SFS/SFS Turbo → Dependency matrix → Migration batches → Risk assessment → Rollback & validation plans → Output report
Related Skills:
SkillPurposehuawei-cloud-cce-availability-risk-scannerScan availability risks before migrationhuawei-cloud-cce-dependency-impact-analyzerAnalyze dependency impact for changeshuawei-cloud-cce-change-impact-analyzerAssess change impact before migrationhuawei-cloud-cce-daily-cluster-inspectorPre-migration cluster health inspectionhuawei-cloud-cce-cost-optimization-advisorCost analysis for migration sizing
Capabilities:
Typical Use Cases:
huaweicloudsdkcore, huaweicloudsdkcce, huaweicloudsdkvpc, huaweicloudsdkecs, huaweicloudsdkevs, huaweicloudsdkeip, huaweicloudsdkelb, huaweicloudsdkiam, kubernetespython3 --versionpip3 install huaweicloudsdkcore huaweicloudsdkcce huaweicloudsdkvpc huaweicloudsdkecs huaweicloudsdkevs huaweicloudsdkeip huaweicloudsdkelb huaweicloudsdkiam kubernetesValid Huawei Cloud credentials (AK/SK mode)
Security Rules:
echo $HUAWEI_AK or echo $HUAWEI_SK to check credentialsHUAWEI_AK, HUAWEI_SK, HUAWEI_REGIONConfiguration Method (Environment Variables Only):
bash
export HUAWEI_AK=<your-ak>
export HUAWEI_SK=<your-sk>
export HUAWEI_REGION=cn-north-4
Additional Variables:
VariableRequiredDescriptionHUAWEI_AKYesHuawei Cloud Access KeyHUAWEI_SKYesHuawei Cloud Secret KeyHUAWEI_REGIONNoDefault region (overrides region param if set)HUAWEI_PROJECT_IDNoProject ID (auto-obtained via IAM API when not set)HUAWEI_SECURITY_TOKENNoRequired when using temporary AK/SK
API ActionServicePurposeCCE cluster readCCEhuawei_list_cce_clustersCCE node readCCEhuawei_list_cce_nodesCCE nodepool readCCEhuawei_list_cce_nodepoolsCCE addon readCCEhuawei_list_cce_addonsCCE workload readCCEhuawei_get_cce_deploymentsCCE Service readCCEhuawei_get_cce_servicesCCE Ingress readCCEhuawei_get_cce_ingressesCCE PVC readCCEhuawei_get_cce_pvcsCCE PV readCCEhuawei_get_cce_pvsCCE ConfigMap readCCEhuawei_list_cce_configmapsCCE Secret readCCEhuawei_list_cce_secretsVPC readVPChuawei_list_vpc, huawei_list_vpc_subnets, huawei_list_security_groupsELB readELBhuawei_list_elbEIP readEIPhuawei_list_eipEVS readEVShuawei_list_evsSFS readSFShuawei_list_sfs, huawei_list_sfs_turbo
Permission Failure Handling:
All actions are invoked via the dispatcher script:
bash
python3 scripts/huawei-cloud.py <action> region=<region> cluster_id=<cluster_id> [key=value ...]
ActionRequired ParamsDescriptionhuawei_list_cce_clusters``regionList CCE clusters in the regionhuawei_list_cce_nodes``region, cluster_idList cluster nodeshuawei_list_cce_nodepools``region, cluster_idList node poolshuawei_list_cce_addons``region, cluster_idList installed addons
ActionRequired ParamsDescriptionhuawei_get_cce_deployments``region, cluster_idList Deploymentshuawei_get_cce_services``region, cluster_idList Serviceshuawei_get_cce_ingresses``region, cluster_idList Ingresseshuawei_get_cce_pvcs``region, cluster_idList PersistentVolumeClaimshuawei_get_cce_pvs``region, cluster_idList PersistentVolumeshuawei_list_cce_configmaps``region, cluster_idList ConfigMapshuawei_list_cce_secrets``region, cluster_idList Secrets (existence only, no values)
ActionRequired ParamsDescriptionhuawei_list_vpc``regionList VPCshuawei_list_vpc_subnets``region, vpc_idList subnets in a VPChuawei_list_security_groups``regionList security groupshuawei_list_elb``regionList Elastic Load Balancershuawei_list_eip``regionList Elastic IPshuawei_list_evs``regionList EVS diskshuawei_list_sfs``regionList SFS file systemshuawei_list_sfs_turbo``regionList SFS Turbo file systems
bash
# List clusters for migration scope
python3 scripts/huawei-cloud.py huawei_list_cce_clusters region=cn-north-4
# Inventory cluster workloads
python3 scripts/huawei-cloud.py huawei_get_cce_deployments region=cn-north-4 cluster_id=<cluster_id>
# Inventory networking resources
python3 scripts/huawei-cloud.py huawei_get_cce_services region=cn-north-4 cluster_id=<cluster_id>
python3 scripts/huawei-cloud.py huawei_get_cce_ingresses region=cn-north-4 cluster_id=<cluster_id>
# Inventory storage resources
python3 scripts/huawei-cloud.py huawei_get_cce_pvcs region=cn-north-4 cluster_id=<cluster_id>
python3 scripts/huawei-cloud.py huawei_get_cce_pvs region=cn-north-4 cluster_id=<cluster_id>
# Inventory cloud resources
python3 scripts/huawei-cloud.py huawei_list_vpc region=cn-north-4
python3 scripts/huawei-cloud.py huawei_list_elb region=cn-north-4
python3 scripts/huawei-cloud.py huawei_list_evs region=cn-north-4
ParameterRequiredDescriptionDefaultregionYesHuawei Cloud region (e.g., cn-north-4)-cluster_idYes (most actions)CCE cluster ID-namespaceContext-dependentKubernetes namespace-vpc_idYes (subnet listing)VPC ID for subnet queries-
Region NameRegion IDNorth China - Beijing 4cn-north-4North China - Beijing 1cn-north-1East China - Shanghai 1cn-east-3East China - Shanghai 2cn-east-2South China - Guangzhoucn-south-1South China - Shenzhencn-south-4Southwest China - Guiyang 1cn-southwest-2Asia Pacific - Bangkokap-southeast-2Asia Pacific - Singaporeap-southeast-1Asia Pacific - Hong Kongap-southeast-3Europe - Pariseu-west-0
See Output Schema for the complete JSON response structure.
Key Output Fields:
FieldDescriptionsummaryMigration planning summary with scope descriptionsourceSource region and cluster IDinventory.clustersCCE cluster inventoryinventory.nodepoolsNode pool inventoryinventory.workloadsWorkload inventory (Deployments, Services, Ingresses, etc.)inventory.networkingNetworking inventory (VPC, subnets, security groups, ELB, EIP)inventory.storageStorage inventory (PVC/PV, EVS, SFS/SFS Turbo)inventory.configurationConfiguration inventory (ConfigMaps, Secrets existence only)dependency_matrixDependency relationships (ingress traffic, service calls, storage bindings, config references, external systems)migration_batchesMigration batch design with validation points and downtime windowsrisksRisk list with severity classification and mitigation strategiesrollback_planRollback strategy per batchvalidation_planValidation steps per batch
To verify this skill is working correctly:
python3 scripts/huawei-cloud.py huawei_list_cce_clusters region=cn-north-4 and confirm it returns cluster datapython3 scripts/huawei-cloud.py huawei_get_cce_deployments region=cn-north-4 cluster_id=<cluster_id> and confirm it returns deployment datapython3 scripts/huawei-cloud.py huawei_list_vpc region=cn-north-4 and confirm it returns VPC dataproject_id, AK/SK, tokens, and certificates in output must be masked or omittedhuawei-cloud-cce-availability-risk-scanner as a pre-migration health check before finalizing the migration planDocumentDescriptionWorkflowMigration planning workflow, inventory steps, dependency mapping, and batch design processRisk RulesSafety constraints, prohibited actions, and authorization boundariesOutput SchemaComplete JSON response format for migration planning results
python3 scripts/huawei-cloud.py <action>; do not use hcloud CLI or direct API callsPitfallSymptomQuick FixSkipping dependency mappingMigration batches miss cross-service dependenciesAlways build dependency matrix before batch designExposing Secret valuesOutput contains sensitive Secret dataOnly record Secret existence and name; never output valuesUnmasked credentialsOutput contains project_id, AK/SK, or tokensMask or omit all credential fields in outputMissing cloud resource inventoryMigration plan ignores VPC/ELB/EVS dependenciesInclude all cloud resource categories in inventoryNo rollback strategyMigration batch has no rollback planEvery batch must include a rollback strategy and validation stepsIgnoring downtime windowsMigration plan schedules batches during peak hoursAlign batch design with business downtime windowsAssuming migration can executeSkill attempts to create target resourcesThis skill is read-only; all execution goes to manual confirmation checklistWrong cluster_idAPI returns 404 or empty resultsVerify cluster ID via huawei_list_cce_clustersCredential permission deniedAPI returns 403Check IAM permissions for CCE/VPC/ELB/EVS/SFS read access