Skip to content

Commit

Permalink
fix:better error
Browse files Browse the repository at this point in the history
Signed-off-by: joohwan <[email protected]>
  • Loading branch information
Piwriw committed Apr 15, 2024
1 parent 6a6edfa commit de86f23
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -325,8 +325,7 @@ func (ndc *ImagePrePullController) imagePrePullJobUpdated(pullJob *v1alpha1.Imag
func (ndc *ImagePrePullController) GetTaskNodes(name string) ([]string, error) {
imagePrePullJob, err := ndc.CrdClient.OperationsV1alpha1().ImagePrePullJobs().Get(context.TODO(), name, metav1.GetOptions{})
if err != nil {
klog.Infof("ImagePrePullTask %s not exist", name)
return nil, err
return nil, fmt.Errorf("failed to get ImagePrePullTaskNodes(%s) , err: %v", name, err)
}
return imagePrePullJob.Spec.ImagePrePullTemplate.NodeNames, nil
}
Expand Down
31 changes: 20 additions & 11 deletions cloud/pkg/taskmanager/manager/executor.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ import (
api "github.com/kubeedge/kubeedge/pkg/apis/fsm/v1alpha1"
"github.com/kubeedge/kubeedge/pkg/apis/operations/v1alpha1"
"github.com/kubeedge/kubeedge/pkg/util/fsm"
"github.com/pkg/errors"
)

const TimeOutSecond = 300
Expand Down Expand Up @@ -210,25 +211,33 @@ func initExecutor(message util.TaskMessage) (*Executor, error) {
if len(nodeStatus) == 0 {
nodeList := controller.ValidateNode(message)
if len(nodeList) == 0 {
nodes, _ := controller.GetTaskNodes(message.Name)
nodeStatus = make([]v1alpha1.TaskStatus, len(nodes))
for i, nodeName := range nodes {
nodeStatus[i] = v1alpha1.TaskStatus{NodeName: nodeName, State: api.TaskFailed}
}
err = controller.UpdateNodeStatus(message.Name, nodeStatus)
nodes, err := controller.GetTaskNodes(message.Name)
if err != nil {
return nil, err
return nil, errors.Wrap(err, "failed to retrieve nodes for tasks")
}

if len(nodes) == 0 {
return nil, errors.New("no nodes available to handle tasks")
}

nodeStatus = make([]v1alpha1.TaskStatus, 0, len(nodes))
for _, nodeName := range nodes {
nodeStatus = append(nodeStatus, v1alpha1.TaskStatus{NodeName: nodeName, State: api.TaskFailed})
}
return nil, fmt.Errorf("no node need to be upgrade")

if err := controller.UpdateNodeStatus(message.Name, nodeStatus); err != nil {
return nil, errors.Wrap(err, "failed to update node status")
}
return nil, nil
}

nodeStatus = make([]v1alpha1.TaskStatus, len(nodeList))
for i, node := range nodeList {
nodeStatus[i] = v1alpha1.TaskStatus{NodeName: node.Name}
}
err = controller.UpdateNodeStatus(message.Name, nodeStatus)
if err != nil {
return nil, err

if err := controller.UpdateNodeStatus(message.Name, nodeStatus); err != nil {
return nil, errors.Wrap(err, "failed to update node status")
}
}
e := &Executor{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -213,8 +213,7 @@ func patchStatus(nodeUpgrade *v1alpha1.NodeUpgradeJob, status v1alpha1.NodeUpgra
func (ndc *NodeUpgradeController) GetTaskNodes(name string) ([]string, error) {
nodeUpgradeJob, err := ndc.CrdClient.OperationsV1alpha1().NodeUpgradeJobs().Get(context.TODO(), name, metav1.GetOptions{})
if err != nil {
klog.Infof("NodeUpgradeTask %s not exist", name)
return nil, err
return nil, fmt.Errorf("failed to get NodeUpgradeTaskNodes(%s) , err: %v", name, err)
}
return nodeUpgradeJob.Spec.NodeNames, nil
}
Expand Down

0 comments on commit de86f23

Please sign in to comment.