Merge pull request #109519 from kerthcet/refactor/remove-unnecessary-code

cleanup: remove useless codes when checking Skip status
This commit is contained in:
Kubernetes Prow Robot 2022-05-11 13:27:02 -07:00 committed by GitHub
commit 414990751e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 26 additions and 2 deletions

View File

@ -198,6 +198,11 @@ func (s *Status) IsWait() bool {
return s.Code() == Wait
}
// IsSkip returns true if and only if "Status" is non-nil and its Code is "Skip".
func (s *Status) IsSkip() bool {
return s.Code() == Skip
}
// IsUnschedulable returns true if "Status" is Unschedulable (Unschedulable or UnschedulableAndUnresolvable).
func (s *Status) IsUnschedulable() bool {
code := s.Code()
@ -207,7 +212,7 @@ func (s *Status) IsUnschedulable() bool {
// AsError returns nil if the status is a success or a wait; otherwise returns an "error" object
// with a concatenated message on reasons of the Status.
func (s *Status) AsError() error {
if s.IsSuccess() || s.IsWait() {
if s.IsSuccess() || s.IsWait() || s.IsSkip() {
return nil
}
if s.err != nil {

View File

@ -35,6 +35,7 @@ func TestStatus(t *testing.T) {
expectedMessage string
expectedIsSuccess bool
expectedIsWait bool
expectedIsSkip bool
expectedAsError error
}{
{
@ -44,6 +45,7 @@ func TestStatus(t *testing.T) {
expectedMessage: "",
expectedIsSuccess: true,
expectedIsWait: false,
expectedIsSkip: false,
expectedAsError: nil,
},
{
@ -53,6 +55,7 @@ func TestStatus(t *testing.T) {
expectedMessage: "",
expectedIsSuccess: false,
expectedIsWait: true,
expectedIsSkip: false,
expectedAsError: nil,
},
{
@ -62,14 +65,26 @@ func TestStatus(t *testing.T) {
expectedMessage: "unknown error",
expectedIsSuccess: false,
expectedIsWait: false,
expectedIsSkip: false,
expectedAsError: errors.New("unknown error"),
},
{
name: "skip status",
status: NewStatus(Skip, ""),
expectedCode: Skip,
expectedMessage: "",
expectedIsSuccess: false,
expectedIsWait: false,
expectedIsSkip: true,
expectedAsError: nil,
},
{
name: "nil status",
status: nil,
expectedCode: Success,
expectedMessage: "",
expectedIsSuccess: true,
expectedIsSkip: false,
expectedAsError: nil,
},
}
@ -92,6 +107,10 @@ func TestStatus(t *testing.T) {
t.Errorf("status.IsWait() returns %v, but want %v", test.status.IsWait(), test.expectedIsWait)
}
if test.status.IsSkip() != test.expectedIsSkip {
t.Errorf("status.IsSkip() returns %v, but want %v", test.status.IsSkip(), test.expectedIsSkip)
}
if test.status.AsError() == test.expectedAsError {
return
}

View File

@ -1038,7 +1038,7 @@ func (f *frameworkImpl) RunBindPlugins(ctx context.Context, state *framework.Cyc
}
for _, bp := range f.bindPlugins {
status = f.runBindPlugin(ctx, bp, state, pod, nodeName)
if status != nil && status.Code() == framework.Skip {
if status.IsSkip() {
continue
}
if !status.IsSuccess() {