4.10.0
This commit is contained in:
@@ -68,6 +68,7 @@ func flattenResourceK8sCP(d *schema.ResourceData, k8s k8s.RecordK8S, masters []c
|
||||
d.Set("highly_available_lb", k8s.HighlyAvailableLB)
|
||||
d.Set("address_vip", flattenAddressVIP(k8s.AddressVIP))
|
||||
d.Set("extnet_only", k8s.ExtnetOnly)
|
||||
d.Set("zone_id", k8s.ZoneID)
|
||||
|
||||
flattenCPParams(d, k8s.K8SGroups.Masters, masters)
|
||||
}
|
||||
@@ -109,6 +110,7 @@ func flattenK8sData(d *schema.ResourceData, cluster *k8s.RecordK8S, masters []co
|
||||
d.Set("address_vip", flattenAddressVIP(cluster.AddressVIP))
|
||||
d.Set("extnet_only", cluster.ExtnetOnly)
|
||||
d.Set("with_lb", cluster.WithLB)
|
||||
d.Set("zone_id", cluster.ZoneID)
|
||||
}
|
||||
|
||||
func flattenAddressVIP(addressVIP k8s.K8SAddressVIP) []map[string]interface{} {
|
||||
@@ -295,6 +297,7 @@ func flattenK8sItems(k8sList *k8s.ListK8S) []map[string]interface{} {
|
||||
"updated_by": item.UpdatedBy,
|
||||
"updated_time": item.UpdatedTime,
|
||||
"vins_id": item.VINSID,
|
||||
"zone_id": item.ZoneID,
|
||||
"workers_groups": flattenWorkersGroupList(item.WorkersGroup),
|
||||
}
|
||||
|
||||
|
||||
@@ -114,6 +114,10 @@ func resourceK8sCPCreate(ctx context.Context, d *schema.ResourceData, m interfac
|
||||
createReq.ExtNetID = 0
|
||||
}
|
||||
|
||||
if zoneID, ok := d.GetOk("zone_id"); ok {
|
||||
createReq.ZoneID = uint64(zoneID.(int))
|
||||
}
|
||||
|
||||
if vins, ok := d.GetOk("vins_id"); ok {
|
||||
createReq.VinsId = uint64(vins.(int))
|
||||
} else {
|
||||
@@ -398,6 +402,14 @@ func resourceK8sCPUpdate(ctx context.Context, d *schema.ResourceData, m interfac
|
||||
}
|
||||
}
|
||||
|
||||
if d.HasChange("zone_id") {
|
||||
start := d.Get("start").(bool)
|
||||
err := handleZoneID(ctx, c, k8sData.ID, uint64(d.Get("zone_id").(int)), start)
|
||||
if err != nil {
|
||||
return diag.FromErr(err)
|
||||
}
|
||||
}
|
||||
|
||||
if d.HasChange("start") {
|
||||
err := handleStart(ctx, c, d.Get("start").(bool), k8sData)
|
||||
if err != nil {
|
||||
@@ -588,6 +600,43 @@ func handleStart(ctx context.Context, c *controller.ControllerCfg, start bool, k
|
||||
return nil
|
||||
}
|
||||
|
||||
func handleZoneID(ctx context.Context, c *controller.ControllerCfg, k8sId uint64, zoneID uint64, start bool) error {
|
||||
|
||||
if start {
|
||||
stopReq := k8s.StopRequest{
|
||||
K8SID: k8sId,
|
||||
}
|
||||
|
||||
_, err := c.CloudBroker().K8S().Stop(ctx, stopReq)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
req := k8s.MigrateToZoneRequest{
|
||||
K8SID: k8sId,
|
||||
ZoneID: zoneID,
|
||||
}
|
||||
|
||||
_, err := c.CloudBroker().K8S().MigrateToZone(ctx, req)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if start {
|
||||
startReq := k8s.StartRequest{
|
||||
K8SID: k8sId,
|
||||
}
|
||||
|
||||
_, err := c.CloudBroker().K8S().Start(ctx, startReq)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func handleUpdateLbSysctlParams(ctx context.Context, d *schema.ResourceData, c *controller.ControllerCfg, k8sData *k8s.RecordK8S) error {
|
||||
|
||||
lbSysctlParams := d.Get("lb_sysctl_params").([]interface{})
|
||||
|
||||
@@ -179,6 +179,10 @@ func dataSourceK8sListDeletedSchemaMake() map[string]*schema.Schema {
|
||||
Type: schema.TypeInt,
|
||||
Computed: true,
|
||||
},
|
||||
"zone_id": {
|
||||
Type: schema.TypeInt,
|
||||
Computed: true,
|
||||
},
|
||||
"k8sci_id": {
|
||||
Type: schema.TypeInt,
|
||||
Computed: true,
|
||||
@@ -491,6 +495,10 @@ func dataSourceK8sListSchemaMake() map[string]*schema.Schema {
|
||||
Type: schema.TypeInt,
|
||||
Computed: true,
|
||||
},
|
||||
"zone_id": {
|
||||
Type: schema.TypeInt,
|
||||
Computed: true,
|
||||
},
|
||||
"k8sci_id": {
|
||||
Type: schema.TypeInt,
|
||||
Computed: true,
|
||||
@@ -1017,6 +1025,10 @@ func dataSourceK8sSchemaMake() map[string]*schema.Schema {
|
||||
Type: schema.TypeInt,
|
||||
Computed: true,
|
||||
},
|
||||
"zone_id": {
|
||||
Type: schema.TypeInt,
|
||||
Computed: true,
|
||||
},
|
||||
"created_by": {
|
||||
Type: schema.TypeString,
|
||||
Computed: true,
|
||||
@@ -1343,6 +1355,11 @@ func resourceK8sCPSchemaMake() map[string]*schema.Schema {
|
||||
Description: "Network plugin to be used",
|
||||
ValidateFunc: validation.StringInSlice([]string{"flannel", "weavenet", "calico"}, true),
|
||||
},
|
||||
"zone_id": {
|
||||
Type: schema.TypeInt,
|
||||
Optional: true,
|
||||
Computed: true,
|
||||
},
|
||||
"num": {
|
||||
Type: schema.TypeInt,
|
||||
Optional: true,
|
||||
|
||||
Reference in New Issue
Block a user