diff --git a/go.mod b/go.mod index 7f5fb629e6d3823185d1f223a2f1fc545af7b275..4668515f790ee3e88052fa5fa86933685f11ffc7 100644 --- a/go.mod +++ b/go.mod @@ -765,4 +765,4 @@ replace ( sigs.k8s.io/yaml => sigs.k8s.io/yaml v1.2.0 sourcegraph.com/sourcegraph/appdash => sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0 vbom.ml/util => vbom.ml/util v0.0.0-20160121211510-db5cfe13f5cc -) +) \ No newline at end of file diff --git a/go.sum b/go.sum index 9bab81710b25d1b47a9c65371a711941915fe586..2598de63d194752760b95a2f79ab074fc50c4c68 100644 --- a/go.sum +++ b/go.sum @@ -865,4 +865,4 @@ sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q= sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU= vbom.ml/util v0.0.0-20160121211510-db5cfe13f5cc h1:MksmcCZQWAQJCTA5T0jgI/0sJ51AVm4Z41MrmfczEoc= -vbom.ml/util v0.0.0-20160121211510-db5cfe13f5cc/go.mod h1:so/NYdZXCz+E3ZpW0uAoCj6uzU2+8OWDFv/HxUSs7kI= +vbom.ml/util v0.0.0-20160121211510-db5cfe13f5cc/go.mod h1:so/NYdZXCz+E3ZpW0uAoCj6uzU2+8OWDFv/HxUSs7kI= \ No newline at end of file diff --git a/pkg/controller/pipeline/pipeline_controller.go b/pkg/controller/pipeline/pipeline_controller.go index 82ff027b940fb13ac3b98e2384c6b6470922ffb4..ad6a8bb7c5f3f1e3879521b0e5d48ad8679ae732 100644 --- a/pkg/controller/pipeline/pipeline_controller.go +++ b/pkg/controller/pipeline/pipeline_controller.go @@ -104,9 +104,9 @@ func NewController(client clientset.Interface, devopsInformer.Informer().AddEventHandler(cache.ResourceEventHandlerFuncs{ AddFunc: v.enqueuePipeline, UpdateFunc: func(oldObj, newObj interface{}) { - old := oldObj.(*devopsv1alpha3.Pipeline) - new := newObj.(*devopsv1alpha3.Pipeline) - if old.ResourceVersion == new.ResourceVersion { + oldPipeline := oldObj.(*devopsv1alpha3.Pipeline) + newPipeline := newObj.(*devopsv1alpha3.Pipeline) + if oldPipeline.ResourceVersion == newPipeline.ResourceVersion { return } v.enqueuePipeline(newObj) diff --git a/pkg/kapis/devops/v1alpha2/devops.go b/pkg/kapis/devops/v1alpha2/devops.go index c8039bd197bb412e3aa93b6fad84613e6e151bb8..d5de97d3839d4976ec56413abab89898f94b127c 100644 --- a/pkg/kapis/devops/v1alpha2/devops.go +++ b/pkg/kapis/devops/v1alpha2/devops.go @@ -379,10 +379,18 @@ func (h *ProjectPipelineHandler) hasSubmitPermission(req *restful.Request) (hasP runId := req.PathParameter("run") nodeId := req.PathParameter("node") stepId := req.PathParameter("step") + branchName := req.PathParameter("branch") // check if current user can approve this input var res []clientDevOps.NodesDetail - if res, err = h.devopsOperator.GetNodesDetail(pipeParam.ProjectName, pipeParam.Name, runId, httpReq); err == nil { + + if branchName == "" { + res, err = h.devopsOperator.GetNodesDetail(pipeParam.ProjectName, pipeParam.Name, runId, httpReq) + } else { + res, err = h.devopsOperator.GetBranchNodesDetail(pipeParam.ProjectName, pipeParam.Name, branchName, runId, httpReq) + } + + if err == nil { h.approvableCheck(res, parsePipelineParam(req)) for _, node := range res { diff --git a/pkg/simple/client/devops/jenkins/pipeline.go b/pkg/simple/client/devops/jenkins/pipeline.go index 0e68fa5450926eaec7de33f751f27ab567161c0b..559f8894fabe1918f29754eb866ae83d486f0f52 100644 --- a/pkg/simple/client/devops/jenkins/pipeline.go +++ b/pkg/simple/client/devops/jenkins/pipeline.go @@ -112,7 +112,7 @@ func (p *Pipeline) ListPipelines() (*devops.PipelineList, error) { } klog.Errorf("API '%s' request response code is '%d'", p.Path, jErr.Code) } else { - err = fmt.Errorf("unknow errors happend when coumunicate with Jenkins") + err = fmt.Errorf("unknow errors happend when communicate with Jenkins") } return nil, err }