diff --git a/go.mod b/go.mod index df7b58e75b5a0cb6f9184be25c4f47e01cd44271..57f1f61b68ae6feaa16a6d1209d919d5d6625483 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 2d0a69c636e187d0582a9e99eab02f9c0912f959..c0ffcb5fe8a477bdfb8143dae80e754cd7b04948 100644 --- a/go.sum +++ b/go.sum @@ -885,4 +885,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 }