job rerun with resourceVersion

Signed-off-by: runzexia <runzexia@yunify.com>
This commit is contained in:
runzexia
2019-11-06 21:22:01 +08:00
parent 0c11778e01
commit e72b0be0c9
4 changed files with 22 additions and 5 deletions

View File

@@ -19,6 +19,7 @@
package operations
import (
k8serr "k8s.io/apimachinery/pkg/api/errors"
"kubesphere.io/kubesphere/pkg/models/workloads"
"kubesphere.io/kubesphere/pkg/server/errors"
"net/http"
@@ -34,15 +35,20 @@ func RerunJob(req *restful.Request, resp *restful.Response) {
job := req.PathParameter("job")
namespace := req.PathParameter("namespace")
action := req.QueryParameter("action")
resourceVersion := req.QueryParameter("resourceVersion")
switch action {
case "rerun":
err = workloads.JobReRun(namespace, job)
err = workloads.JobReRun(namespace, job, resourceVersion)
default:
resp.WriteHeaderAndEntity(http.StatusBadRequest, errors.Wrap(fmt.Errorf("invalid operation %s", action)))
return
}
if err != nil {
if k8serr.IsConflict(err) {
resp.WriteHeaderAndEntity(http.StatusConflict, errors.Wrap(err))
return
}
resp.WriteHeaderAndEntity(http.StatusInternalServerError, errors.Wrap(err))
return
}