fix: real K8s replicas in list API, full Helm values in modify YAML editor
- Add Replicas field to entity.Instance - Add EnrichReplicas to InstanceService (batch K8s deployment query) - convertInstanceResponse uses instance.Replicas instead of hardcoded 0 - ModifyModal: load full Helm values from values-diff API (Current deployed) - Remove stale loadValuesDiff, use single useEffect for all data loading - Fix YAML lineWidth:0 for no line wrapping
This commit is contained in:
@ -53,6 +53,7 @@ type Instance struct {
|
||||
Revision int // Helm Release Revision
|
||||
CreatedAt time.Time
|
||||
UpdatedAt time.Time
|
||||
Replicas int // Running K8s replicas (enriched, not persisted)
|
||||
}
|
||||
|
||||
// NewInstance 创建新实例
|
||||
|
||||
@ -473,6 +473,24 @@ func (s *InstanceService) ScaleInstance(ctx context.Context, clusterID, instance
|
||||
return instance, nil
|
||||
}
|
||||
|
||||
// EnrichReplicas 批量获取实例的 K8s 实际副本数并设置到 entity 上
|
||||
func (s *InstanceService) EnrichReplicas(ctx context.Context, clusterID string, instances []*entity.Instance) []*entity.Instance {
|
||||
if s.scaleClient == nil || len(instances) == 0 {
|
||||
return instances
|
||||
}
|
||||
cluster, err := s.clusterRepo.GetByID(ctx, clusterID)
|
||||
if err != nil {
|
||||
return instances
|
||||
}
|
||||
for _, inst := range instances {
|
||||
r, err := s.scaleClient.GetDeploymentReplicas(ctx, cluster, inst.Namespace, inst.Name)
|
||||
if err == nil {
|
||||
inst.Replicas = int(r)
|
||||
}
|
||||
}
|
||||
return instances
|
||||
}
|
||||
|
||||
// GetRunningReplicas returns the actual K8s deployment replicas count.
|
||||
func (s *InstanceService) GetRunningReplicas(ctx context.Context, cluster *entity.Cluster, instance *entity.Instance) int {
|
||||
if s.scaleClient == nil {
|
||||
|
||||
Reference in New Issue
Block a user