未验证 提交 bc0be036 编写于 作者: R rick

Fix Pipeline input failed in multi-branch mode

Signed-off-by: Nrick <1450685+LinuxSuRen@users.noreply.github.com>
上级 3a79df0d
......@@ -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
......@@ -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
......@@ -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)
......
......@@ -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 {
......
......@@ -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
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册