This is an automated email from the ASF dual-hosted git repository.
chenyulin0719 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/yunikorn-k8shim.git
The following commit(s) were added to refs/heads/master by this push:
new 1f15c1bc [YUNIKORN-3345] Turn on nonamedreturns linter (#1065)
1f15c1bc is described below
commit 1f15c1bce235c7bdd6bb4d3687ed7152be21d5a2
Author: PoiBlackTea <[email protected]>
AuthorDate: Mon Aug 17 16:42:29 2026 +0000
[YUNIKORN-3345] Turn on nonamedreturns linter (#1065)
[YUNIKORN-3345] Add doc comments to PredicateManager interface
remove unused EventsToRegister interface comment
Closes: #1065
Signed-off-by: Yu-Lin Chen <[email protected]>
---
.golangci.yml | 1 +
pkg/cache/application_test.go | 2 +-
pkg/cache/scheduler_callback_test.go | 4 ++--
pkg/common/resource.go | 2 +-
pkg/common/test/configmap_lister_mock.go | 2 +-
pkg/common/test/csi_lister_mock.go | 2 +-
pkg/common/test/namespacelister_mock.go | 2 +-
pkg/common/test/nodelister_mock.go | 2 +-
pkg/common/test/podlister_mock.go | 2 +-
pkg/common/test/priorityclass_lister_mock.go | 4 ++--
pkg/common/test/schedulerapi_mock.go | 2 +-
pkg/common/test/volumeattachment_lister_mock.go | 4 ++--
pkg/common/test/volumebinder_mock.go | 8 ++++----
pkg/plugin/predicates/predicate_manager.go | 10 +++++++---
pkg/shim/scheduler_perf_test.go | 4 ++--
pkg/shim/scheduler_test.go | 2 +-
test/e2e/framework/helpers/k8s/k8s_utils.go | 8 ++++----
test/e2e/gang_scheduling/gang_scheduling_test.go | 3 ++-
test/e2e/spark_jobs_scheduling/spark_jobs_scheduling_test.go | 2 +-
19 files changed, 36 insertions(+), 30 deletions(-)
diff --git a/.golangci.yml b/.golangci.yml
index 2df04d8a..92f89b48 100644
--- a/.golangci.yml
+++ b/.golangci.yml
@@ -65,6 +65,7 @@ linters:
- dogsled
- whitespace
- ginkgolinter
+ - nonamedreturns
exclusions:
generated: lax
presets:
diff --git a/pkg/cache/application_test.go b/pkg/cache/application_test.go
index 0fffcc8e..8b224ae2 100644
--- a/pkg/cache/application_test.go
+++ b/pkg/cache/application_test.go
@@ -450,7 +450,7 @@ func TestReleaseAppAllocation(t *testing.T) {
func newMockSchedulerAPI() *mockSchedulerAPI {
return &mockSchedulerAPI{
- registerFn: func(request *si.RegisterResourceManagerRequest,
callback api.ResourceManagerCallback) (response
*si.RegisterResourceManagerResponse, e error) {
+ registerFn: func(request *si.RegisterResourceManagerRequest,
callback api.ResourceManagerCallback) (*si.RegisterResourceManagerResponse,
error) {
return nil, nil
},
UpdateAllocationFn: func(request *si.AllocationRequest) error {
diff --git a/pkg/cache/scheduler_callback_test.go
b/pkg/cache/scheduler_callback_test.go
index cd4d7980..90619a77 100644
--- a/pkg/cache/scheduler_callback_test.go
+++ b/pkg/cache/scheduler_callback_test.go
@@ -579,11 +579,11 @@ func (m *mockPredicateManager) EventsToRegister(_
fwk.QueueingHintFn) []fwk.Clus
return nil
}
-func (m *mockPredicateManager) Predicates(_ *v1.Pod, _ *framework.NodeInfo, _
bool) (plugin string, error error) {
+func (m *mockPredicateManager) Predicates(_ *v1.Pod, _ *framework.NodeInfo, _
bool) (string, error) {
return "", nil
}
-func (m *mockPredicateManager) PreemptionPredicates(_ *v1.Pod, _
*framework.NodeInfo, _ []*v1.Pod, _ int) (index int) {
+func (m *mockPredicateManager) PreemptionPredicates(_ *v1.Pod, _
*framework.NodeInfo, _ []*v1.Pod, _ int) int {
return 0
}
diff --git a/pkg/common/resource.go b/pkg/common/resource.go
index 9328a957..1a6ff8a1 100644
--- a/pkg/common/resource.go
+++ b/pkg/common/resource.go
@@ -53,7 +53,7 @@ func (w *ResourceBuilder) Build() *si.Resource {
// GetPodResource from a pod's containers and convert that into an internal
resource.
// Scheduling only accounts for requests.
// Convert the pod into a resource to allow for pod count checks in quotas and
nodes.
-func GetPodResource(pod *v1.Pod) (resource *si.Resource) {
+func GetPodResource(pod *v1.Pod) *si.Resource {
podResource := &si.Resource{
Resources: map[string]*si.Quantity{"pods": {Value: 1}},
}
diff --git a/pkg/common/test/configmap_lister_mock.go
b/pkg/common/test/configmap_lister_mock.go
index 954fcb63..1d85ad49 100644
--- a/pkg/common/test/configmap_lister_mock.go
+++ b/pkg/common/test/configmap_lister_mock.go
@@ -44,7 +44,7 @@ func NewConfigMapListerMock() *ConfigMapListerMock {
}
}
-func (c ConfigMapListerMock) List(selector labels.Selector) (ret
[]*v1.ConfigMap, err error) {
+func (c ConfigMapListerMock) List(selector labels.Selector) ([]*v1.ConfigMap,
error) {
return c.configMaps, nil
}
diff --git a/pkg/common/test/csi_lister_mock.go
b/pkg/common/test/csi_lister_mock.go
index 61bde98f..49f84eab 100644
--- a/pkg/common/test/csi_lister_mock.go
+++ b/pkg/common/test/csi_lister_mock.go
@@ -40,6 +40,6 @@ func (n CSINodeListerMock) Get(name string)
(*storagev1.CSINode, error) {
}
// List lists all CSINodes in the indexer.
-func (n CSINodeListerMock) List(selector labels.Selector) (ret
[]*storagev1.CSINode, err error) {
+func (n CSINodeListerMock) List(selector labels.Selector)
([]*storagev1.CSINode, error) {
return nil, fmt.Errorf("not implemented")
}
diff --git a/pkg/common/test/namespacelister_mock.go
b/pkg/common/test/namespacelister_mock.go
index 7ff575f1..2c96a71b 100644
--- a/pkg/common/test/namespacelister_mock.go
+++ b/pkg/common/test/namespacelister_mock.go
@@ -38,7 +38,7 @@ func NewMockNamespaceLister(errIfNotFound bool)
listersV1.NamespaceLister {
}
}
-func (nsl *MockNamespaceLister) List(labels.Selector) (ret []*v1.Namespace,
err error) {
+func (nsl *MockNamespaceLister) List(labels.Selector) ([]*v1.Namespace, error)
{
return nil, nil
}
diff --git a/pkg/common/test/nodelister_mock.go
b/pkg/common/test/nodelister_mock.go
index 705a2ddc..24d9d724 100644
--- a/pkg/common/test/nodelister_mock.go
+++ b/pkg/common/test/nodelister_mock.go
@@ -43,7 +43,7 @@ func (n *NodeListerMock) RemoveNode(node *v1.Node) {
delete(n.nodes, node)
}
-func (n *NodeListerMock) List(selector labels.Selector) (ret []*v1.Node, err
error) {
+func (n *NodeListerMock) List(selector labels.Selector) ([]*v1.Node, error) {
list := make([]*v1.Node, 0, len(n.nodes))
for node := range n.nodes {
if selector.Matches(labels.Set(node.Labels)) {
diff --git a/pkg/common/test/podlister_mock.go
b/pkg/common/test/podlister_mock.go
index ebfad177..69605106 100644
--- a/pkg/common/test/podlister_mock.go
+++ b/pkg/common/test/podlister_mock.go
@@ -44,7 +44,7 @@ func (n *PodListerMock) DeletePod(pod *v1.Pod) {
delete(n.pods, pod)
}
-func (n *PodListerMock) List(selector labels.Selector) (ret []*v1.Pod, err
error) {
+func (n *PodListerMock) List(selector labels.Selector) ([]*v1.Pod, error) {
result := make([]*v1.Pod, 0)
for pod := range n.pods {
if selector.Matches(labels.Set(pod.Labels)) {
diff --git a/pkg/common/test/priorityclass_lister_mock.go
b/pkg/common/test/priorityclass_lister_mock.go
index f54f9b26..24d80c67 100644
--- a/pkg/common/test/priorityclass_lister_mock.go
+++ b/pkg/common/test/priorityclass_lister_mock.go
@@ -36,8 +36,8 @@ func NewMockPriorityClassLister()
listersV1.PriorityClassLister {
}
}
-func (nsl *MockPriorityClassLister) List(labels.Selector) (ret
[]*v1.PriorityClass, err error) {
- ret = make([]*v1.PriorityClass, 0)
+func (nsl *MockPriorityClassLister) List(labels.Selector)
([]*v1.PriorityClass, error) {
+ ret := make([]*v1.PriorityClass, 0)
for _, pc := range nsl.priorityClasses {
ret = append(ret, pc)
}
diff --git a/pkg/common/test/schedulerapi_mock.go
b/pkg/common/test/schedulerapi_mock.go
index 3d7f1147..9e31800b 100644
--- a/pkg/common/test/schedulerapi_mock.go
+++ b/pkg/common/test/schedulerapi_mock.go
@@ -42,7 +42,7 @@ type SchedulerAPIMock struct {
func NewSchedulerAPIMock() *SchedulerAPIMock {
return &SchedulerAPIMock{
registerFn: func(request *si.RegisterResourceManagerRequest,
- callback api.ResourceManagerCallback) (response
*si.RegisterResourceManagerResponse, e error) {
+ callback api.ResourceManagerCallback)
(*si.RegisterResourceManagerResponse, error) {
return nil, nil
},
UpdateAllocationFn: func(request *si.AllocationRequest) error {
diff --git a/pkg/common/test/volumeattachment_lister_mock.go
b/pkg/common/test/volumeattachment_lister_mock.go
index e8190490..3140b292 100644
--- a/pkg/common/test/volumeattachment_lister_mock.go
+++ b/pkg/common/test/volumeattachment_lister_mock.go
@@ -36,8 +36,8 @@ func NewMockVolumeAttachmentLister()
listersv1.VolumeAttachmentLister {
}
}
-func (nsl *MockVolumeAttachmentLister) List(labels.Selector) (ret
[]*storagev1.VolumeAttachment, err error) {
- ret = make([]*storagev1.VolumeAttachment, 0)
+func (nsl *MockVolumeAttachmentLister) List(labels.Selector)
([]*storagev1.VolumeAttachment, error) {
+ ret := make([]*storagev1.VolumeAttachment, 0)
for _, pc := range nsl.volumeAttachments {
ret = append(ret, pc)
}
diff --git a/pkg/common/test/volumebinder_mock.go
b/pkg/common/test/volumebinder_mock.go
index 149d60a6..db2e6479 100644
--- a/pkg/common/test/volumebinder_mock.go
+++ b/pkg/common/test/volumebinder_mock.go
@@ -49,7 +49,7 @@ func NewVolumeBinderMock() *VolumeBinderMock {
}
}
-func (v *VolumeBinderMock) GetPodVolumeClaims(_ klog.Logger, _ *v1.Pod)
(podVolumeClaims *volumebinding.PodVolumeClaims, err error) {
+func (v *VolumeBinderMock) GetPodVolumeClaims(_ klog.Logger, _ *v1.Pod)
(*volumebinding.PodVolumeClaims, error) {
if v.volumeClaimError != nil {
return nil, v.volumeClaimError
}
@@ -57,11 +57,11 @@ func (v *VolumeBinderMock) GetPodVolumeClaims(_
klog.Logger, _ *v1.Pod) (podVolu
return v.podVolumeClaim, nil
}
-func (v *VolumeBinderMock) GetEligibleNodes(_ klog.Logger, _
[]*v1.PersistentVolumeClaim) (eligibleNodes sets.Set[string]) {
+func (v *VolumeBinderMock) GetEligibleNodes(_ klog.Logger, _
[]*v1.PersistentVolumeClaim) sets.Set[string] {
return nil
}
-func (v *VolumeBinderMock) FindPodVolumes(_ klog.Logger, _ *v1.Pod, _
*volumebinding.PodVolumeClaims, _ *v1.Node) (podVolumes
*volumebinding.PodVolumes, reasons volumebinding.ConflictReasons, err error) {
+func (v *VolumeBinderMock) FindPodVolumes(_ klog.Logger, _ *v1.Pod, _
*volumebinding.PodVolumeClaims, _ *v1.Node) (*volumebinding.PodVolumes,
volumebinding.ConflictReasons, error) {
if v.findPodVolumesError != nil {
return nil, nil, v.findPodVolumesError
}
@@ -73,7 +73,7 @@ func (v *VolumeBinderMock) FindPodVolumes(_ klog.Logger, _
*v1.Pod, _ *volumebin
return v.podVolumes, nil, nil
}
-func (v *VolumeBinderMock) AssumePodVolumes(_ klog.Logger, _ *v1.Pod, _
string, _ *volumebinding.PodVolumes) (allFullyBound bool, err error) {
+func (v *VolumeBinderMock) AssumePodVolumes(_ klog.Logger, _ *v1.Pod, _
string, _ *volumebinding.PodVolumes) (bool, error) {
if v.assumeVolumeError != nil {
return false, v.assumeVolumeError
}
diff --git a/pkg/plugin/predicates/predicate_manager.go
b/pkg/plugin/predicates/predicate_manager.go
index a2339e90..9b30b99a 100644
--- a/pkg/plugin/predicates/predicate_manager.go
+++ b/pkg/plugin/predicates/predicate_manager.go
@@ -46,8 +46,12 @@ import (
type PredicateManager interface {
EventsToRegister(queueingHintFn fwk.QueueingHintFn)
[]fwk.ClusterEventWithHint
- Predicates(pod *v1.Pod, node *framework.NodeInfo, allocate bool)
(plugin string, error error)
- PreemptionPredicates(pod *v1.Pod, node *framework.NodeInfo, victims
[]*v1.Pod, startIndex int) (index int)
+ // Predicates checks if a pod can fit on a node.
+ // Returns the name of the predicate plugin that failed (may be empty)
and any error encountered.
+ Predicates(pod *v1.Pod, node *framework.NodeInfo, allocate bool)
(string, error)
+ // PreemptionPredicates checks if a pod can be scheduled on the node by
preempting victims.
+ // Returns the victim index that allows the pod to fit, or -1 if none.
+ PreemptionPredicates(pod *v1.Pod, node *framework.NodeInfo, victims
[]*v1.Pod, startIndex int) int
}
var _ PredicateManager = &predicateManagerImpl{}
@@ -127,7 +131,7 @@ func buildClusterEvents(actionMap
map[fwk.EventResource]fwk.ActionType, queueing
return events
}
-func (p *predicateManagerImpl) Predicates(pod *v1.Pod, node
*framework.NodeInfo, allocate bool) (plugin string, error error) {
+func (p *predicateManagerImpl) Predicates(pod *v1.Pod, node
*framework.NodeInfo, allocate bool) (string, error) {
if allocate {
return p.predicatesAllocate(pod, node)
}
diff --git a/pkg/shim/scheduler_perf_test.go b/pkg/shim/scheduler_perf_test.go
index 509add8f..fde25878 100644
--- a/pkg/shim/scheduler_perf_test.go
+++ b/pkg/shim/scheduler_perf_test.go
@@ -112,7 +112,7 @@ func BenchmarkSchedulingThroughPut(b *testing.B) {
for i := 0; i < numNodes; i++ {
addNode(cluster, "test.host."+strconv.Itoa(i))
}
- err = wait.PollUntilContextTimeout(context.Background(), time.Second,
time.Second*60, true, func(ctx context.Context) (done bool, err error) {
+ err = wait.PollUntilContextTimeout(context.Background(), time.Second,
time.Second*60, true, func(ctx context.Context) (bool, error) {
return cluster.GetActiveNodeCountInCore(partitionName) ==
numNodes, nil
})
assert.NilError(b, err, "node initialization did not finish in time")
@@ -128,7 +128,7 @@ func BenchmarkSchedulingThroughPut(b *testing.B) {
defer ps.stop()
// await binding of pods
- err = wait.PollUntilContextTimeout(context.Background(), time.Second,
time.Second*60, true, func(ctx context.Context) (done bool, err error) {
+ err = wait.PollUntilContextTimeout(context.Background(), time.Second,
time.Second*60, true, func(ctx context.Context) (bool, error) {
c := ps.getCompletedPodsCount()
fmt.Printf("Number of completed pods: %d\n", c)
return c == totalPods, nil
diff --git a/pkg/shim/scheduler_test.go b/pkg/shim/scheduler_test.go
index ecfb8d4b..10b68d42 100644
--- a/pkg/shim/scheduler_test.go
+++ b/pkg/shim/scheduler_test.go
@@ -167,7 +167,7 @@ func TestSchedulerRegistrationFailed(t *testing.T) {
mockedAPIProvider := client.NewMockedAPIProvider(false)
mockedAPIProvider.GetAPIs().SchedulerAPI =
test.NewSchedulerAPIMock().RegisterFunction(
func(request *si.RegisterResourceManagerRequest,
- callback api.ResourceManagerCallback) (response
*si.RegisterResourceManagerResponse, e error) {
+ callback api.ResourceManagerCallback)
(*si.RegisterResourceManagerResponse, error) {
return nil, fmt.Errorf("some error")
})
diff --git a/test/e2e/framework/helpers/k8s/k8s_utils.go
b/test/e2e/framework/helpers/k8s/k8s_utils.go
index c8f5fd6b..46ee9f0d 100644
--- a/test/e2e/framework/helpers/k8s/k8s_utils.go
+++ b/test/e2e/framework/helpers/k8s/k8s_utils.go
@@ -1485,8 +1485,8 @@ func GetWorkerNodes(nodes v1.NodeList) []v1.Node {
}
// Sums up current resource usage in a list of pods. Non-running pods are
filtered out.
-func GetPodsTotalRequests(podList *v1.PodList) (reqs v1.ResourceList) {
- reqs = make(v1.ResourceList)
+func GetPodsTotalRequests(podList *v1.PodList) v1.ResourceList {
+ reqs := make(v1.ResourceList)
for i := range podList.Items {
pod := podList.Items[i]
podReqs := v1.ResourceList{}
@@ -1502,7 +1502,7 @@ func GetPodsTotalRequests(podList *v1.PodList) (reqs
v1.ResourceList) {
}
}
}
- return
+ return reqs
}
// GetNodesAvailRes Returns map of nodeName to list of available resource
(memory and cpu only) amounts.
@@ -1868,7 +1868,7 @@ func (k *KubeCtl) GetSecret(namespace, secretName string)
(*v1.Secret, error) {
func (k *KubeCtl) WaitForSecret(namespace, secretName string, timeout
time.Duration) error {
var cond wait.ConditionFunc // nolint:staticcheck
- cond = func() (done bool, err error) {
+ cond = func() (bool, error) {
secret, err := k.GetSecret(namespace, secretName)
if err != nil {
return false, err
diff --git a/test/e2e/gang_scheduling/gang_scheduling_test.go
b/test/e2e/gang_scheduling/gang_scheduling_test.go
index 57cbbe1d..f25cb66d 100644
--- a/test/e2e/gang_scheduling/gang_scheduling_test.go
+++ b/test/e2e/gang_scheduling/gang_scheduling_test.go
@@ -672,8 +672,9 @@ var _ = Describe("", func() {
})
-func createJob(applicationID string, minResource map[string]resource.Quantity,
annotations k8s.PodAnnotation, parallelism int32) (job *batchv1.Job) {
+func createJob(applicationID string, minResource map[string]resource.Quantity,
annotations k8s.PodAnnotation, parallelism int32) *batchv1.Job {
var (
+ job *batchv1.Job
err error
requests = v1.ResourceList{}
limits = v1.ResourceList{}
diff --git a/test/e2e/spark_jobs_scheduling/spark_jobs_scheduling_test.go
b/test/e2e/spark_jobs_scheduling/spark_jobs_scheduling_test.go
index 19830352..32a9d2a7 100644
--- a/test/e2e/spark_jobs_scheduling/spark_jobs_scheduling_test.go
+++ b/test/e2e/spark_jobs_scheduling/spark_jobs_scheduling_test.go
@@ -97,7 +97,7 @@ var _ = Describe("", func() {
By(fmt.Sprintf("Get apps from specific queue: %s",
sparkQueueName))
var appsFromQueue []*dao.ApplicationDAOInfo
// Poll for apps to appear in the queue
- err = wait.PollUntilContextTimeout(context.TODO(),
time.Millisecond*100, time.Duration(120)*time.Second, false,
func(context.Context) (done bool, err error) {
+ err = wait.PollUntilContextTimeout(context.TODO(),
time.Millisecond*100, time.Duration(120)*time.Second, false,
func(context.Context) (bool, error) {
appsFromQueue, err =
restClient.GetApps(configmanager.DefaultPartition, sparkQueueName)
if err != nil {
return false, err
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]