mirror of https://github.com/knative/client.git
Check deletionTimestamp for "kn revision delete" (#860)
* Check deletionTimestamp for "kn revision delete" Fixes: #815 * Update error message for revision delete Co-authored-by: Navid Shaikh <nshaikh@redhat.com>
This commit is contained in:
parent
e1ad66a60d
commit
bcf2ec3de8
|
|
@ -378,6 +378,13 @@ func getBaseRevision(cl KnServingClient, service *servingv1.Service) (*servingv1
|
|||
|
||||
// Delete a revision by name
|
||||
func (cl *knServingClient) DeleteRevision(name string, timeout time.Duration) error {
|
||||
revision, err := cl.client.Revisions(cl.namespace).Get(name, v1.GetOptions{})
|
||||
if err != nil {
|
||||
return clienterrors.GetError(err)
|
||||
}
|
||||
if revision.GetDeletionTimestamp() != nil {
|
||||
return fmt.Errorf("can't delete revision '%s' because it has been already marked for deletion", name)
|
||||
}
|
||||
if timeout == 0 {
|
||||
return cl.deleteRevision(name)
|
||||
}
|
||||
|
|
@ -387,7 +394,7 @@ func (cl *knServingClient) DeleteRevision(name string, timeout time.Duration) er
|
|||
err, _ := waitForEvent.Wait(name, wait.Options{Timeout: &timeout}, wait.NoopMessageCallback())
|
||||
waitC <- err
|
||||
}()
|
||||
err := cl.deleteRevision(name)
|
||||
err = cl.deleteRevision(name)
|
||||
if err != nil {
|
||||
return clienterrors.GetError(err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue