From 25f4d23159a5ad9ab92e69c831cf7165536ea8a4 Mon Sep 17 00:00:00 2001 From: zhangjianjun_code <7844966+zhangjianjun_code@user.noreply.gitee.com> Date: Thu, 29 Oct 2020 12:11:56 +0800 Subject: [PATCH] Restore dockerfile, upload ignored routing files --- .gitignore | 2 - Dockerfile | 32 ++-- conf/app.conf | 6 +- conf/product_app.conf | 2 +- controllers/file.go | 18 ++- models/giteeissue.go | 14 +- routers/commentsRouter_controllers.go | 217 ++++++++++++++++++++++++++ taskhandler/common.go | 20 ++- taskhandler/cve.go | 51 ++++-- taskhandler/excel.go | 9 +- taskhandler/grabissue.go | 8 +- taskhandler/oricvecheck.go | 2 +- util/parsepayload.go | 2 +- 13 files changed, 326 insertions(+), 57 deletions(-) create mode 100644 routers/commentsRouter_controllers.go diff --git a/.gitignore b/.gitignore index 87abaa9..7e959ee 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,4 @@ go.sum logs/ lastupdate.tmp -commentsRouter_controllers.go -commentsRouter___________________goWork_src_cvevulner_controllers.go *.xlsx \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 0119b06..4d8809d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,30 +1,18 @@ -FROM golang:latest +FROM golang:latest as BUILDER MAINTAINER TommyLike -WORKDIR $GOPATH/src/cve-manager -ADD . $GOPATH/src/cve-manager -#WORKDIR $GOPATH/src/arvonblog -COPY ./conf/product_app.conf $GOPATH/src/cve-manager/conf/app.conf -RUN go get github.com/astaxie/beedb && go get github.com/astaxie/beego && go get github.com/astaxie/beego/orm && go get github.com/astaxie/beego/toolbox - -RUN go build -v -o ./cve-manager main.go - -EXPOSE 8080 -ENTRYPOINT ["./cve-manager"] -#ENTRYPOINT ["./main"] - # build binary -#RUN mkdir -p /go/src/gitee.com/openeuler/cve-manager -#COPY . /go/src/gitee.com/openeuler/cve-manager -#RUN cd /go/src/gitee.com/openeuler/cve-manager && CGO_ENABLED=1 go build -v -o ./cve-manager main.go +RUN mkdir -p /go/src/gitee.com/openeuler/cve-manager +COPY . /go/src/gitee.com/openeuler/cve-manager +RUN cd /go/src/gitee.com/openeuler/cve-manager && CGO_ENABLED=1 go build -v -o ./cve-manager main.go # copy binary config and utils -#FROM golang:latest -#RUN mkdir -p /opt/app/ && mkdir -p /opt/app/conf/ -#COPY ./conf/product_app.conf /opt/app/conf/app.conf +FROM golang:latest +RUN mkdir -p /opt/app/ && mkdir -p /opt/app/conf/ +COPY ./conf/product_app.conf /opt/app/conf/app.conf # overwrite config yaml -#COPY --from=BUILDER /go/src/gitee.com/openeuler/cve-manager/cve-manager /opt/app +COPY --from=BUILDER /go/src/gitee.com/openeuler/cve-manager/cve-manager /opt/app -#WORKDIR /opt/app/ -#ENTRYPOINT ["/opt/app/cve-manager"] \ No newline at end of file +WORKDIR /opt/app/ +ENTRYPOINT ["/opt/app/cve-manager"] \ No newline at end of file diff --git a/conf/app.conf b/conf/app.conf index 38b1a43..31e3b0d 100644 --- a/conf/app.conf +++ b/conf/app.conf @@ -41,7 +41,7 @@ log_level = 7 log_dir = ./logs log_path = logs/cve.log maxlines=50000 -maxsize=304800 +maxsize=204800 [crontab] ymalflag = 2 @@ -57,7 +57,7 @@ createissue = * * 05 * * * test = 0/10 * * * * * gittokenflag = 2 issueoath = * * */20 * * * -genexcelflag = 7 +genexcelflag = 2 genexcel = 00 00 04 * * * days = -30 prcnum = 50 @@ -73,7 +73,7 @@ printlog = 0 */10 * * * * #redirect_uri = http://119.8.126.102:80/v1/issue/oauth/callback # -------jianjun gitee 配置 -------- owner = cve-test -path = jasper +#path = jasper email = 7844966+zhangjianjun_code@user.noreply.gitee.com redirect_uri = http://159.138.2.2:80/v1/issue/oauth/callback diff --git a/conf/product_app.conf b/conf/product_app.conf index 40a0b4f..2667c65 100644 --- a/conf/product_app.conf +++ b/conf/product_app.conf @@ -41,7 +41,7 @@ log_level = 7 log_dir = ./logs log_path = logs/cve.log maxlines=50000 -maxsize=304800 +maxsize=204800 [crontab] ymalflag = 2 diff --git a/controllers/file.go b/controllers/file.go index a938e46..44598a4 100644 --- a/controllers/file.go +++ b/controllers/file.go @@ -80,6 +80,20 @@ func (f *FileController) TriggerCveData() { f.Ctx.WriteString("Error:start time cannot be empty") return } + //It is time-consuming to generate excel, here is the current limit processing + er := models.ExportRecord{} + err := er.QueryLast() + if err == nil { + if er.State == 0 { + eng := fmt.Sprintf("There is currently a file being generated, file information: file name %s fileCode=%s; you can use fileCode to download the file.", + er.FileName,er.FileCode) + cha := fmt.Sprintf("\n当前有一个文件正在生成,文件信息:文件名 %s fileCode= %s ;你可以使用fileCode去下载文件。",er.FileName,er.FileCode) + f.Ctx.WriteString(eng+cha) + return + } + }else { + logs.Error(err) + } rt := regexp.MustCompile(`^(\d{4})-\d{2}-(\d{2})$`) find := rt.Match([]byte(startTime)) if !find { @@ -91,8 +105,8 @@ func (f *FileController) TriggerCveData() { fileCode := common.EncryptMd5(en) //call the generate excel task by new thread go taskhandler.GenerateExcelTrigger(en, startTime,fileCode) - er := models.ExportRecord{FileName: en, FileCode: fileCode, State: 0} - err := er.Insert() + er = models.ExportRecord{FileName: en, FileCode: fileCode, State: 0} + err = er.Insert() if err != nil { f.Ctx.WriteString(fmt.Sprintf("error:%v", err)) } else { diff --git a/models/giteeissue.go b/models/giteeissue.go index 72b4199..b87a4f6 100644 --- a/models/giteeissue.go +++ b/models/giteeissue.go @@ -178,7 +178,7 @@ func parseOldTplToLoopHole(lp *Loophole, body string) { if len(sm) > 0 && len(sm[0]) > 1 { for _, v := range sm[0][1:] { if v != "" { - lp.Components = util.TrimString(v) + lp.Components = strings.ToLower(util.TrimString(v)) break } } @@ -267,7 +267,7 @@ func parseNewTplToLoopHole(lp *Loophole, body string) { if len(sm) > 0 && len(sm[0]) > 1 { for _, v := range sm[0][1:] { if v != "" { - lp.Components = util.TrimString(v) + lp.Components = strings.ToLower(util.TrimString(v)) break } } @@ -316,4 +316,14 @@ func parseNewTplToLoopHole(lp *Loophole, body string) { value := util.ExtractCommentEffectVersion(sm[0][1]) lp.InfVersion = util.TrimString(value) } + if lp.OpVector == "" { + if lp.OpScore == "" { + lp.OpScore = lp.CvsScore + lp.OpVector = lp.CvsVector + }else { + if lp.OpScore == lp.CvsScore { + lp.OpVector = lp.CvsVector + } + } + } } diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go new file mode 100644 index 0000000..c9f06f0 --- /dev/null +++ b/routers/commentsRouter_controllers.go @@ -0,0 +1,217 @@ +package routers + +import ( + "github.com/astaxie/beego" + "github.com/astaxie/beego/context/param" +) + +func init() { + + beego.GlobalControllerRouter["cvevulner/controllers:CveDetailController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:CveDetailController"], + beego.ControllerComments{ + Method: "Get", + Router: "/", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:CveErrorFeedBackController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:CveErrorFeedBackController"], + beego.ControllerComments{ + Method: "Get", + Router: "/", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:FileController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:FileController"], + beego.ControllerComments{ + Method: "DownLoadExcelByFileCode", + Router: "/downloadExcel", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:FileController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:FileController"], + beego.ControllerComments{ + Method: "DownloadLastExcel", + Router: "/lastExcel", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:FileController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:FileController"], + beego.ControllerComments{ + Method: "TriggerCveData", + Router: "/triggerCveData", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:HookEventControllers"] = append(beego.GlobalControllerRouter["cvevulner/controllers:HookEventControllers"], + beego.ControllerComments{ + Method: "Post", + Router: "/", + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:IssueOathCallbackController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:IssueOathCallbackController"], + beego.ControllerComments{ + Method: "Post", + Router: "/", + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"], + beego.ControllerComments{ + Method: "Post", + Router: "/", + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"], + beego.ControllerComments{ + Method: "GetAll", + Router: "/", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"], + beego.ControllerComments{ + Method: "Get", + Router: "/:objectId", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"], + beego.ControllerComments{ + Method: "Put", + Router: "/:objectId", + AllowHTTPMethods: []string{"put"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:ObjectController"], + beego.ControllerComments{ + Method: "Delete", + Router: "/:objectId", + AllowHTTPMethods: []string{"delete"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:PackagesController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:PackagesController"], + beego.ControllerComments{ + Method: "Get", + Router: "/", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:PackagesInfoController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:PackagesInfoController"], + beego.ControllerComments{ + Method: "Get", + Router: "/", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserController"], + beego.ControllerComments{ + Method: "Post", + Router: "/", + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserController"], + beego.ControllerComments{ + Method: "GetAll", + Router: "/", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserController"], + beego.ControllerComments{ + Method: "Get", + Router: "/:uid", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserController"], + beego.ControllerComments{ + Method: "Put", + Router: "/:uid", + AllowHTTPMethods: []string{"put"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserController"], + beego.ControllerComments{ + Method: "Delete", + Router: "/:uid", + AllowHTTPMethods: []string{"delete"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserController"], + beego.ControllerComments{ + Method: "Login", + Router: "/login", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserController"], + beego.ControllerComments{ + Method: "Logout", + Router: "/logout", + AllowHTTPMethods: []string{"get"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserLoginController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserLoginController"], + beego.ControllerComments{ + Method: "Post", + Router: "/", + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + + beego.GlobalControllerRouter["cvevulner/controllers:UserUploadController"] = append(beego.GlobalControllerRouter["cvevulner/controllers:UserUploadController"], + beego.ControllerComments{ + Method: "Post", + Router: "/", + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + +} diff --git a/taskhandler/common.go b/taskhandler/common.go index 5c72974..a6a1a1b 100644 --- a/taskhandler/common.go +++ b/taskhandler/common.go @@ -529,10 +529,26 @@ func RemoveSubstring(s string, subList []string) string { if len(subList) > 0 { for _, sub := range subList { if strings.Contains(newStr, sub) { - newStr = strings.ReplaceAll(newStr, sub, "") + if sub == "

" { + newStr = strings.ReplaceAll(newStr, sub, "") + } else { + newStr = strings.ReplaceAll(newStr, sub, " ") + } + } } } - logs.Info("s: ",s, ",newstr: ", newStr) return newStr } + +func deleteTailBlank(str string) string { + spaceNum := 0 + for i := len(str)-1; i >= 0; i-- { // 去除字符串尾部的所有空格 + if str[i] == ' ' { + spaceNum++ + } else { + break + } + } + return str[:len(str)-spaceNum] +} \ No newline at end of file diff --git a/taskhandler/cve.go b/taskhandler/cve.go index fd9fe6c..48df328 100644 --- a/taskhandler/cve.go +++ b/taskhandler/cve.go @@ -226,11 +226,17 @@ func InsertCveExcelGroups(cveData models.OriginExcel, cveRef string, openeulerNu sec.AffectStatus = "Fixed" sec.Summary = cveData.PackName + " security update" sec.ReferenceLink = cveRef + cveData.CveNum - specCharList := []string{"\n"} + specCharList := []string{"\n", "\r", "\t"} if goe.Decription != "" && len(goe.Decription) > 0 { - sec.Description = goe.Decription + "\n\n" + "Security Fix(es):" + "\n\n" + RemoveSubstring(cveData.CveDesc, specCharList) + "(" + vul.CveNum + ")" + sec.Description = RemoveSubstring(goe.Decription, specCharList) + "\n\n" + + "Security Fix(es):" + "\n\n" + RemoveSubstring(cveData.CveDesc, specCharList) } else { - sec.Description = "Security Fix(es):" + "\n\n" + RemoveSubstring(cveData.CveDesc, specCharList) + "(" + vul.CveNum + ")" + sec.Description = "Security Fix(es):" + "\n\n" + RemoveSubstring(cveData.CveDesc, specCharList) + } + if sec.Description != "" && len(sec.Description) > 1 { + sec.Description = deleteTailBlank(sec.Description) + "(" + vul.CveNum + ")" + } else { + sec.Description += "(" + vul.CveNum + ")" } var sc models.Score sc.CveNum = cveData.CveNum @@ -561,11 +567,17 @@ func InsertCveGroups(cveData models.OriginUpstream, cveRef string, openeulerNum sec.AffectStatus = "Fixed" sec.Summary = pkList[0] + " security update" sec.ReferenceLink = cveRef + cveData.CveNum - specCharList := []string{"\n"} + specCharList := []string{"\n", "\r", "\t"} if goe.Decription != "" && len(goe.Decription) > 0 { - sec.Description = goe.Decription + "\n\n" + "Security Fix(es):" + "\n\n" + RemoveSubstring(cveDesc.EnDescription, specCharList) + "(" + vul.CveNum + ")" + sec.Description = RemoveSubstring(goe.Decription, specCharList) + "\n\n" + "Security Fix(es):" + "\n\n" + + RemoveSubstring(cveDesc.EnDescription, specCharList) } else { - sec.Description = "Security Fix(es):" + "\n\n" + RemoveSubstring(cveDesc.EnDescription, specCharList) + "(" + vul.CveNum + ")" + sec.Description = "Security Fix(es):" + "\n\n" + RemoveSubstring(cveDesc.EnDescription, specCharList) + } + if sec.Description != "" && len(sec.Description) > 1 { + sec.Description = deleteTailBlank(sec.Description) + "(" + vul.CveNum + ")" + } else { + sec.Description += "(" + vul.CveNum + ")" } var sc models.Score sc.CveNum = cveData.CveNum @@ -897,7 +909,7 @@ func InsertIssueCveGroups(cveData models.GiteOriginIssue, lop models.Loophole, c cveStatus int8, goe models.GitPackageInfo, owner string) (bool, error) { var vul models.VulnCenter vul.CveNum = cveData.CveNumber - specCharList := []string{"

", "\n"} + specCharList := []string{"

", "\n", "\r", "\t"} vul.Description = RemoveSubstring(lop.BriefIntroduction, specCharList) vul.Status = cveStatus vul.CveVersion = RemoveSubstring(lop.Version, specCharList) @@ -925,8 +937,13 @@ func InsertIssueCveGroups(cveData models.GiteOriginIssue, lop models.Loophole, c sec.Status = 0 sec.AffectStatus = "Fixed" sec.Summary = lop.Components + " security update" - sec.Description = goe.Decription + "\n\n" + "Security Fix(es):" + "\n\n" + - RemoveSubstring(lop.BriefIntroduction, specCharList) + "(" + vul.CveNum + ")" + sec.Description = RemoveSubstring(goe.Decription, specCharList) + "\n\n" + "Security Fix(es):" + "\n\n" + + RemoveSubstring(lop.BriefIntroduction, specCharList) + if sec.Description != "" && len(sec.Description) > 1 { + sec.Description = deleteTailBlank(sec.Description) + "(" + vul.CveNum + ")" + } else { + sec.Description += "(" + vul.CveNum + ")" + } sec.ReferenceLink = cveRef + cveData.CveNumber sec.Introduction = "An update for " + lop.Components + " is now available for " + lop.InfProduct + "." sec.Theme = sec.Introduction + ";\n\n" + "openEuler Security has rated this" + @@ -1059,7 +1076,7 @@ func UpdateIssueCveGroups(cveData models.GiteOriginIssue, lop models.Loophole, c cveStatus int8, goe models.GitPackageInfo, vul models.VulnCenter, owner string) (bool, error) { //var vul models.VulnCenter vul.CveNum = cveData.CveNumber - specCharList := []string{"

", "\n"} + specCharList := []string{"

", "\n", "\r", "\t"} vul.Description = RemoveSubstring(lop.BriefIntroduction, specCharList) vul.Status = cveStatus vul.CveVersion = RemoveSubstring(lop.Version, specCharList) @@ -1075,8 +1092,13 @@ func UpdateIssueCveGroups(cveData models.GiteOriginIssue, lop models.Loophole, c sec.Status = 0 sec.AffectStatus = "Fixed" sec.Summary = lop.Components + " security update" - sec.Description = goe.Decription + "\n\n" + "Security Fix(es):" + "\n\n" + - RemoveSubstring(lop.BriefIntroduction, specCharList) + "(" + vul.CveNum + ")" + sec.Description = RemoveSubstring(goe.Decription, specCharList) + "\n\n" + "Security Fix(es):" + "\n\n" + + RemoveSubstring(lop.BriefIntroduction, specCharList) + if sec.Description != "" && len(sec.Description) > 1 { + sec.Description = deleteTailBlank(sec.Description) + "(" + vul.CveNum + ")" + } else { + sec.Description += "(" + vul.CveNum + ")" + } sec.ReferenceLink = cveRef + cveData.CveNumber sec.Introduction = "An update for " + lop.Components + " is now available for " + lop.InfProduct + "." sec.Theme = sec.Introduction + ";\n\n" + "openEuler Security has rated this" + @@ -1346,7 +1368,7 @@ func GenCveVulerByIssue(cveData models.GiteOriginIssue, cveRef string, openeuler if !ok || goe.DetailId == 0 { logs.Error("获取数据失败,", "Components: ", hole.Components, ",Version: ", hole.Version) } - if cveData.State != "" && strings.ToLower(cveData.State) == "rejected" { + if cveData.State != "" && (strings.ToLower(cveData.State) == "rejected" || cveData.State == "已拒绝") { logs.Info("处理issue状态为拒绝状态的数据:", cveData) cvd, ok := models.QueryCveByNum(cveData.CveNumber, cveData.RepoPath, hole.Version) if ok && cvd.CveNum != "" { @@ -1366,7 +1388,7 @@ func GenCveVulerByIssue(cveData models.GiteOriginIssue, cveRef string, openeuler models.UpdateCveStatusExportByNum(common.GetCurTime(), cveData.CveNumber, 2, 2, cveData.RepoPath) models.UpdateCveIssueStatusById(2, cveData.Id) return true, nil - } else if cveData.State != "" && strings.ToLower(cveData.State) == "closed" { + } else if cveData.State != "" && (strings.ToLower(cveData.State) == "closed" || cveData.State == "已完成") { logs.Info("处理issue状态为关闭状态的数据:", cveData) cvd, ok := models.QueryCveByNum(cveData.CveNumber, cveData.RepoPath, hole.Version) if ok && cvd.CveNum != "" { @@ -1426,6 +1448,7 @@ func GetCveIssueData(prcnum, days, openeulernum int, cveRef, owner string) (bool if cveOrg.CveNumber == "" || len(cveOrg.CveNumber) == 0 { logs.Error("数据异常, 不处理, cveData: ", cveOrg) models.UpdateCveIssueStatusById(3, cveOrg.Id) + ch <- i continue } go func(idx int, cveData models.GiteOriginIssue) { diff --git a/taskhandler/excel.go b/taskhandler/excel.go index 1f5ef75..7a9d306 100644 --- a/taskhandler/excel.go +++ b/taskhandler/excel.go @@ -8,6 +8,7 @@ import ( "errors" "fmt" "github.com/360EntSecGroup-Skylar/excelize/v2" + "github.com/astaxie/beego" "github.com/astaxie/beego/logs" "io" "io/ioutil" @@ -713,10 +714,10 @@ func ExtractPackageData(lp string) (pkgList []models.ExcelPackage, err error) { func getDateByGite(pkgList []models.ExcelPackage, startTime string, c chan<- []IssueAndPkg) { defer wgTrigger.Done() - //token := beego.AppConfig.String("gitee::git_token") - token := "8457c66db66955376519059b97e33dd1" - //owner := beego.AppConfig.String("gitee::owner") - owner := "src-openeuler" + token := beego.AppConfig.String("gitee::git_token") + //token := "8457c66db66955376519059b97e33dd1" + owner := beego.AppConfig.String("gitee::owner") + //owner := "src-openeuler" st := util.TimeStrToInt(startTime, "2006-01-02") chData := make([]IssueAndPkg, 0) for _, v := range pkgList { diff --git a/taskhandler/grabissue.go b/taskhandler/grabissue.go index 8583e91..3910d2b 100644 --- a/taskhandler/grabissue.go +++ b/taskhandler/grabissue.go @@ -18,7 +18,7 @@ const ( //GiteOrgReposURL get all repository url GiteOrgReposURL = `https://gitee.com/api/v5/orgs/%v/repos?access_token=%v&type=all&page=%v&per_page=%v` //GiteRepoIssuesURL get issue list url - GiteRepoIssuesURL = `https://gitee.com/api/v5/repos/%v/%v/issues?state=%v&sort=created&direction=desc&page=%v&per_page=%v` + GiteRepoIssuesURL = `https://gitee.com/api/v5/repos/%v/%v/issues?access_token=%v&state=%v&sort=created&direction=desc&page=%v&per_page=%v` //GiteRepoBranch get repo branch url GiteRepoBranch = `https://gitee.com/api/v5/repos/%v/%v/branches?access_token=%v` //RepoInfoURL get repo info url @@ -68,6 +68,7 @@ type Info struct { //GrabIssueByOrg grab issue by org name func GrabIssueByOrg(accToken, org string) error { + logs.Info("grab issue start......") orgInfo, err := GetOrgInfo(accToken, org) if err != nil { logs.Error(err) @@ -217,7 +218,7 @@ func GetOrgRepos(accToken, org string, page int64) { //GetIssueList get the repository issue list func GetIssueList(accToken, owner, repo, state string, page int) (issueList []models.HookIssue, err error) { - resp, err := http.Get(fmt.Sprintf(GiteRepoIssuesURL, owner, repo, state, page, perPage)) + resp, err := http.Get(fmt.Sprintf(GiteRepoIssuesURL, owner, repo,accToken, state, page, perPage)) if err != nil { return issueList, err } @@ -226,7 +227,8 @@ func GetIssueList(accToken, owner, repo, state string, page int) (issueList []mo if err != nil { return issueList, err } - logs.Error(string(body)) + // + //logs.Error(string(body)) err = json.Unmarshal(body, &issueList) return } diff --git a/taskhandler/oricvecheck.go b/taskhandler/oricvecheck.go index f9b40c6..f8f6f47 100644 --- a/taskhandler/oricvecheck.go +++ b/taskhandler/oricvecheck.go @@ -30,6 +30,7 @@ func CheckCveOriginData(prcnum int) (string, error) { count = count + 1 logs.Info("当前正常解析第: ", count, "条数据,i:", i, ", cvenum: ", cveOrg.Ids) go func(idx int, cveData models.OriginUpstream) { + ch <- idx packNameList := []string{} if cveData.PackName != "" && len(cveData.PackName) > 0 { packNameList = strings.Split(cveData.PackName, ",") @@ -50,7 +51,6 @@ func CheckCveOriginData(prcnum int) (string, error) { } } } - ch <- idx }(i, cveOrg) } for i := 0; i < cap(ch); i++ { diff --git a/util/parsepayload.go b/util/parsepayload.go index 25dad53..a1fc974 100644 --- a/util/parsepayload.go +++ b/util/parsepayload.go @@ -137,7 +137,7 @@ func init() { VectorMap["PR"] = mPr mUI := make(map[string]string) mUI["N"] = "None" - mUI["R"] = "Require" + mUI["R"] = "Required" VectorMap["UI"] = mUI mS := make(map[string]string) mS["U"] = "Unchanged" -- Gitee