diff --git a/conf/app.conf b/conf/app.conf index b25442fdfd66343061623545b7b340ccc72a3f8e..9edc409fd35e41aaba02abb28d869ac708ed9b48 100644 --- a/conf/app.conf +++ b/conf/app.conf @@ -45,24 +45,24 @@ maxsize=204800 [crontab] ymalflag = 2 -getymal = 00 00 23 * * * +getymal = 0 0 1 * * 1 cveflag = 2 -getcve = 00 00 01 * * * +getcve = 0 0 3 * * * oricveflag = 2 -oricvecheck = 00 00 05 * * * +oricvecheck = 0 0 5 * * * getissueflag = 2 -getissue = 00 00 05 * * * +getissue = 0 20 5 * * * issueflag = 2 -createissue = * * 05 * * * +createissue = 0 0 6 * * * test = 0/10 * * * * * gittokenflag = 2 issueoath = * * */20 * * * genexcelflag = 2 -genexcel = 0 */10 * * * * +genexcel = 0 0/10 * * * * days = -30 prcnum = 50 -printlogflag = 1 -printlog = 0 */20 * * * * +printlogflag = 2 +printlog = 0 0/20 * * * * [gitee] diff --git a/conf/product_app.conf b/conf/product_app.conf index 49c0aebbcb0e82bb33587fa38916c8f0bc1cac37..8ecfb5a62560c7f24672aeda86f4f9edcc219f09 100644 --- a/conf/product_app.conf +++ b/conf/product_app.conf @@ -46,24 +46,24 @@ maxsize=204800 [crontab] ymalflag = 1 -getymal = 00 00 01 * * 1 +getymal = 0 0 1 * * 1 cveflag = 1 -getcve = 00 00 03 * * * +getcve = 0 0 3 * * * oricveflag = 1 -oricvecheck = 00 00 05 * * * +oricvecheck = 0 0 5 * * * getissueflag = 1 -getissue = 00 00 05 * * * +getissue = 0 20 5 * * * issueflag = 1 -createissue = * * 06 * * * +createissue = 0 0 6 * * * test = 0/10 * * * * * gittokenflag = 2 issueoath = * * */20 * * * genexcelflag = 1 -genexcel = 00 00 04 * * * +genexcel = 0 30 7 * * * days = -30 prcnum = 50 printlogflag = 1 -printlog = 00 00 01 * * 1 +printlog = 0 0 1 * * 1 [gitee] diff --git a/controllers/file.go b/controllers/file.go index 0f3f53b4522fecb3190313475c9ca89c2874aa0a..57fc1880ea437135f5cb486f048012a706b4f28a 100644 --- a/controllers/file.go +++ b/controllers/file.go @@ -128,5 +128,4 @@ func (f *FileController) TriggerCveData() { "You can try to call the download file interface and pass in the param fileCode=%s to be downloaded.", en, fileCode)) } } - } diff --git "a/cve-py/mappingexcels/trust\345\214\205\345\220\215\346\230\240\345\260\204\345\205\263\347\263\273.xls" "b/cve-py/mappingexcels/trust\345\214\205\345\220\215\346\230\240\345\260\204\345\205\263\347\263\273.xls" new file mode 100644 index 0000000000000000000000000000000000000000..79e889dc58e7a7f0184b0ca56b7e4d6293d4d425 Binary files /dev/null and "b/cve-py/mappingexcels/trust\345\214\205\345\220\215\346\230\240\345\260\204\345\205\263\347\263\273.xls" differ diff --git a/main.go b/main.go index 2377e959d04809cddaa5e3301a6223ce52b61c00..a944b673b84842db30bbb49727baa55eec6e3bc0 100644 --- a/main.go +++ b/main.go @@ -27,8 +27,10 @@ func main() { taskOk := task.InitTask() if !taskOk { println("error: Timing task initialization failed, the program ends") + task.StopTask() return } + task.StartTask() if beego.BConfig.RunMode == "dev" { beego.BConfig.WebConfig.DirectoryIndex = true beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger" diff --git a/models/cve.go b/models/cve.go index 67c2d696edea7581c17579f493e966f19cfefbad..037cc89b49ab4a0827b804ec5a90f7219dd8274d 100644 --- a/models/cve.go +++ b/models/cve.go @@ -670,7 +670,7 @@ func GetCanExportTheme(cveNums, component string) (string, error) { sql := fmt.Sprintf(`SELECT b.openeuler_score,a.theme FROM cve_issue_template b JOIN cve_security_notice a ON a.cve_id = b.cve_id WHERE b.cve_num IN (%s) -AND b.owned_component = '%s'`,cveNums,component) +AND b.owned_component = '%s'`,cveNums, component) o := orm.NewOrm() _, err := o.Raw(sql).QueryRows(&res) if err != nil { @@ -715,7 +715,8 @@ func GetCanExportExcelData(cveNum, issueNum string) (list []ExcelExport, err err } sql := `SELECT b.num,c.*,a.issue_num,a.owned_component,a.cve_brief, d.sec_id,d.introduction,d.summary,d.theme,d.description,d.influence_component, -d.affect_product,d.reference_link,d.affect_status,e.public_date,openeuler_sa_num +d.affect_product,d.reference_link,d.affect_status, +e.public_date,openeuler_sa_num,a.cve_level FROM cve_issue_template a RIGHT JOIN (SELECT (SELECT COUNT(*) FROM cve_vuln_center WHERE cve_num = ?) num ,bc.cve_id,bc.cve_num diff --git a/models/excel.go b/models/excel.go index 2cc21f1c7d35442c9ab0f426d83b843e5c11642b..20dc9a0a75e0fe5ff766dc6df5e31938e24002ef 100644 --- a/models/excel.go +++ b/models/excel.go @@ -19,12 +19,13 @@ type ExcelExport struct { AffectStatus string `json:"affect_status"` PublicDate string `json:"public_date"` OpenEulerSANum string `json:"openeuler_sa_num" orm:"size(128);column(openeuler_sa_num)"` + CveLevel string `json:"cve_level" orm:"size(32);column(cve_level)"` } //ExcelPackage Released packages type ExcelPackage struct { - PubTime string - Repo string + PubTime string + Repo string Packages string } @@ -41,14 +42,16 @@ func (er *ExportRecord) QueryLast() error { err := o.QueryTable(er).OrderBy("-create_time").One(er) return err } + //Update update by column name func (er *ExportRecord) Update(field ...string) error { o := orm.NewOrm() _, err := o.Update(er, field...) return err } + //Read read by column name -func (er *ExportRecord) Read(field ...string) error{ +func (er *ExportRecord) Read(field ...string) error { o := orm.NewOrm() return o.Read(er, field...) } diff --git a/models/uploadcve.go b/models/uploadcve.go index 8ed0d09e78f38e09910c257ceff3cd27a6169773..d69f3aab7f2e74ae586cc2613b18d2b3fadf030d 100644 --- a/models/uploadcve.go +++ b/models/uploadcve.go @@ -79,7 +79,7 @@ func QueryRepoAllMaintainer(pkgName string) ([]GiteRepoMember, bool) { return grm, true } -func QueryCveOpeneulerdata(pkgName string, version string) (GitOpenEuler, bool) { +func QueryRepoMaintainer(pkgName string, version string) (GitOpenEuler, bool) { goe, ok := QueryYamlData(pkgName, version) if !ok || goe.GitId == 0 { gr, okrg := QueryOriginRepo(pkgName) @@ -158,23 +158,20 @@ func QueryCveOpeneulerdata(pkgName string, version string) (GitOpenEuler, bool) return goe, true } -func QueryCveOpeneulerDetaildata(pkgName string, version string) (GitPackageInfo, bool) { - o := orm.NewOrm() - var goe GitPackageInfo - err := o.Raw("select * from cve_git_package_info where package_name = ? and version = ?", pkgName, version).QueryRow(&goe) - if err != nil { - logs.Info("pkgName: ", pkgName, ",version: ", version, ", cve_git_package_info 无对应数据") +func QueryCveOpeneulerdata(pkgName string, version string) (GitOpenEuler, bool) { + goe, ok := QueryYamlData(pkgName, version) + if !ok || goe.GitId == 0 { + logs.Error("查询版本信息失败, ", pkgName, version) return goe, false - } else { - logs.Info("pkgName: ", pkgName, ",version: ", version, ", cve_git_package_info 查询成功") - return goe, true } + return goe, true } -func QueryCveOpeneulerDetaildataByName(pkgName string) (GitPackageInfo, bool) { +func QueryCveOpeneulerDetaildataByName(pkgName, versions string) (GitPackageInfo, bool) { o := orm.NewOrm() var goe GitPackageInfo - err := o.Raw("select * from cve_git_package_info where package_name = ? order by detail_id limit 1", pkgName).QueryRow(&goe) + err := o.Raw("select * from cve_git_package_info where package_name = ? and version = ? " + + "order by detail_id limit 1", pkgName, versions).QueryRow(&goe) if err != nil { logs.Info("pkgName: ", pkgName, ", cve_git_package_info 无对应数据") return goe, false diff --git a/task/inittask.go b/task/inittask.go index 362fcb9b15d65294d42b3f9c126e7b573ebe5272..4b6667b6ef3840eae3b6d85aa87a800e4f88c0e5 100644 --- a/task/inittask.go +++ b/task/inittask.go @@ -7,131 +7,76 @@ import ( ) //CheckOriCveTask Verify the original cve data -func CheckOriCveTask(oriCveCheck string, ch *chan bool) { +func CheckOriCveTask(oriCveCheck string) { logs.Info("校验原始cve数据 task start") CheckTask := toolbox.NewTask("CheckOriCve", oriCveCheck, CheckOriCve) - err := CheckTask.Run() - if err != nil { - logs.Error("创建校验原始cve数据失败 ,err:", err) - *ch <- false - return - } toolbox.AddTask("CheckOriCve", CheckTask) - toolbox.StartTask() logs.Info("校验原始cve数据 task end") - *ch <- true } //InitYamlTask Get yaml data source -func InitYamlTask(getYaml string, ch *chan bool) { +func InitYamlTask(getYaml string) { logs.Info("获取yaml数据源 task start") YamlTask := toolbox.NewTask("GetYamlData", getYaml, GetYamlData) - err := YamlTask.Run() - if err != nil { - logs.Error("创建获取yaml数据源任务失败 ,err:", err) - *ch <- false - return - } toolbox.AddTask("GetYamlData", YamlTask) - toolbox.StartTask() logs.Info("获取yaml数据源 task end") - *ch <- true } //InitCveTask Generate cve original data into cve library -func InitCveTask(getCve string, ch *chan bool) { +func InitCveTask(getCve string) { logs.Info("将cve原始数据生成cve库 task start") CveTask := toolbox.NewTask("ParamsCveOriginData", getCve, ParamsCveOriginData) - err := CveTask.Run() - if err != nil { - logs.Error("创建Cve任务失败 ,err:", err) - *ch <- false - return - } toolbox.AddTask("ParamsCveOriginData", CveTask) - toolbox.StartTask() logs.Info("将cve原始数据生成cve库 task end") - *ch <- true } // InitIssueTask Get the created issue data source -func InitIssueTask(getIssue string, ch *chan bool) { +func InitIssueTask(getIssue string) { logs.Info("获取已经创建的issue数据源 task start") issueTask := toolbox.NewTask("GetIssueData", getIssue, GetIssueData) - err := issueTask.Run() - if err != nil { - logs.Error("获取已经创建的issue数据源任务失败 ,err:", err) - *ch <- false - return - } toolbox.AddTask("GetIssueData", issueTask) - toolbox.StartTask() logs.Info("获取已经创建的issue数据源 task end") - *ch <- true } // InitIssueToken Execute the token acquisition task to start -func InitIssueToken(issueOath string, ch *chan bool) { - logs.Info("执行获取token任务开始") +func InitIssueToken(issueOath string) { + logs.Info("执行获取token task start") TokenTask := toolbox.NewTask("GetGiteeToken", issueOath, GetGiteeToken) - err := TokenTask.Run() - if err != nil { - logs.Error("create Issue token task failed ,err:", err) - *ch <- false - return - } toolbox.AddTask("GetGiteeToken", TokenTask) - toolbox.StartTask() - logs.Info("执行获取token任务结束") - *ch <- true + logs.Info("执行获取token task end") } // CreatTask Execute the create issue task to start -func CreatTask(createIssue string, ch *chan bool) { - logs.Info("执行创建issue任务开始") +func CreatTask(createIssue string) { + logs.Info("执行创建issue task start") cIssueTask := toolbox.NewTask("CreateIssue", createIssue, CreateIssue) - err := cIssueTask.Run() - if err != nil { - logs.Error("create Issue task failed ,err:", err) - *ch <- false - return - } toolbox.AddTask("CreateIssue", cIssueTask) - toolbox.StartTask() - logs.Info("执行创建issue任务结束") - *ch <- true + logs.Info("执行创建issue task end") } //GenSAExcelTask Execute issue to generate excel task start -func GenSAExcelTask(genExcel string, ch *chan bool) { - logs.Info("执行issue生成excel任务开始") +func GenSAExcelTask(genExcel string) { + logs.Info("执行issue生成excel task start") genExcelTask := toolbox.NewTask("GenExcelData", genExcel, GenExcelData) - err := genExcelTask.Run() - if err != nil { - logs.Error("create genExcelTask failed ,err:", err) - *ch <- false - return - } toolbox.AddTask("GenExcelData", genExcelTask) - toolbox.StartTask() - logs.Info("执行issue生成excel任务结束") - *ch <- true + logs.Info("执行issue生成excel task end") } // Print logs to the console and delete redundant logs -func PrintLogTask(printLog string, ch *chan bool) { +func PrintLogTask(printLog string) { logs.Info("创建日志任务 task start") printLogTask := toolbox.NewTask("ProcLogData", printLog, ProcLogData) - err := printLogTask.Run() - if err != nil { - logs.Error("创建日志任务失败 ,err:", err) - *ch <- false - return - } toolbox.AddTask("ProcLogData", printLogTask) - toolbox.StartTask() logs.Info("创建日志任务 task end") - *ch <- true +} + +// start task +func StartTask() { + toolbox.StartTask() +} + +func StopTask() { + toolbox.StopTask() } //InitTask Timing task initialization @@ -145,27 +90,13 @@ func InitTask() bool { ymalflag, errxs := BConfig.Int("crontab::ymalflag") if ymalflag == 1 && errxs == nil { getymal := BConfig.String("crontab::getymal") - var yamch = make(chan bool) - go InitYamlTask(getymal, &yamch) - ok := <-yamch - if !ok { - logs.Error("Failed to get yaml data: init task") - return false - } - close(yamch) + InitYamlTask(getymal) } // Verify the original cve data oricveflag, errxs := BConfig.Int("crontab::oricveflag") if oricveflag == 1 && errxs == nil { oricvecheck := BConfig.String("crontab::oricvecheck") - var checkch = make(chan bool) - go CheckOriCveTask(oricvecheck, &checkch) - ok := <-checkch - if !ok { - logs.Error("Filter cve data, whether it corresponds to the warehouse provided in yaml: init task") - return false - } - close(checkch) + CheckOriCveTask(oricvecheck) } // Refresh gittoken regularly gittokenflag, errx := BConfig.Int("crontab::gittokenflag") @@ -174,82 +105,40 @@ func InitTask() bool { // Get token from environment variable gitToken := BConfig.String("gitee::git_token") if gitToken == "xxx" { - var ch = make(chan bool) - go InitIssueToken(issueoath, &ch) - ok := <-ch - if !ok { - logs.Error("Failed to get gitee token: init task") - return false - } - close(ch) + InitIssueToken(issueoath) } } // Get the created issue getissueflag, errxs := BConfig.Int("crontab::getissueflag") if getissueflag == 1 && errxs == nil { getissue := BConfig.String("crontab::getissue") - var issuech = make(chan bool) - go InitIssueTask(getissue, &issuech) - ok := <-issuech - if !ok { - logs.Error("Failed to synchronize template on gitee: init task") - return false - } - close(issuech) + InitIssueTask(getissue) } // Generate cve vulnerability library cveflag, errxs := BConfig.Int("crontab::cveflag") if cveflag == 1 && errxs == nil { getcve := BConfig.String("crontab::getcve") - var cvech = make(chan bool) - go InitCveTask(getcve, &cvech) - ok := <-cvech - if !ok { - logs.Error("Failed to initialize cve vulnerability library: init task") - return false - } - close(cvech) + InitCveTask(getcve) } // Regularly output logs to the console printLogFlag, errxs := BConfig.Int("crontab::printlogflag") if printLogFlag == 1 && errxs == nil { printLog := BConfig.String("crontab::printlog") - var logch = make(chan bool) - go PrintLogTask(printLog, &logch) - ok := <-logch - if !ok { - logs.Error("Failed to clean log: init task") - return false - } - close(logch) + PrintLogTask(printLog) } // Add issue taskFlag, errx := BConfig.Int("crontab::issueflag") if taskFlag == 1 && errx == nil { - var ch = make(chan bool) createIssue := BConfig.String("crontab::createissue") - go CreatTask(createIssue, &ch) - ok := <-ch - if !ok { - logs.Error("Failed to create issue on gitee: init task", ) - return false - } - close(ch) + CreatTask(createIssue) } else { logs.Info("no task") } // Generate excel data from issue genexcelflag, errx := BConfig.Int("crontab::genexcelflag") if genexcelflag == 1 && errx == nil { - var ch = make(chan bool) genExcel := BConfig.String("crontab::genexcel") - go GenSAExcelTask(genExcel, &ch) - ok := <-ch - if !ok { - logs.Error("Exporting a closed issue from gitee failed: init task") - return false - } - close(ch) + GenSAExcelTask(genExcel) } else { logs.Info("no task") } diff --git a/task/issuetask.go b/task/issuetask.go index bf2f95d24a349b407494476e1daf19a8818cddb0..b65294c19f3198c60f1e07718dce247fd357e8cd 100644 --- a/task/issuetask.go +++ b/task/issuetask.go @@ -332,11 +332,11 @@ func CreateIssue() error { beforeTime := common.GetBeforeTime(days) if issueWhitelist == 1 { limitErr := addLimitedIssue(beforeTime, prcnum, years, toolYears, manYears) - logs.Error("addLimitedIssue, err: ", limitErr) + logs.Info("addLimitedIssue, err: ", limitErr) return limitErr } else { unlimitErr := addUnlimitedIssue(beforeTime, prcnum, years, toolYears, manYears) - logs.Error("addUnlimitedIssue, err: ", unlimitErr) + logs.Info("addUnlimitedIssue, err: ", unlimitErr) return unlimitErr } } @@ -359,7 +359,7 @@ func ProcUpdateIssue(issueValue models.VulnCenter, accessToken, owner, path stri it.CveBrief = issueValue.Description it.CveLevel = issueValue.CveLevel if it.Assignee == "" || len(it.Assignee) < 2 { - gitYaml, ok := models.QueryCveOpeneulerdata(issueValue.PackName, issueValue.CveVersion) + gitYaml, ok := models.QueryRepoMaintainer(issueValue.PackName, issueValue.CveVersion) if !ok || gitYaml.MainTainer == "" || len(gitYaml.MainTainer) < 1 { assignee, assErr := taskhandler.GetCollaboratorInfo(accessToken, owner, path) if assignee != "" && len(assignee) > 1 { @@ -406,7 +406,7 @@ func ProcIssue(issueValue models.VulnCenter, accessToken, owner, path string) er path = issueValue.PackName logs.Info("查询安全信息:sn: ", sn) // Get issue handler - gitYaml, ok := models.QueryCveOpeneulerdata(issueValue.PackName, issueValue.CveVersion) + gitYaml, ok := models.QueryRepoMaintainer(issueValue.PackName, issueValue.CveVersion) if !ok || gitYaml.MainTainer == "" || len(gitYaml.MainTainer) < 1 { assignee, err = taskhandler.GetCollaboratorInfo(accessToken, owner, path) if assignee == "" { diff --git a/taskhandler/createissue.go b/taskhandler/createissue.go index dec46635a67835d03aa49b488666adc56685ad76..514fa709ea0f21168f372b6791f2de56a6c0f41d 100644 --- a/taskhandler/createissue.go +++ b/taskhandler/createissue.go @@ -121,7 +121,9 @@ func CreateIssueToGit(accessToken string, owner string, path string, assignee st cve, sc, OpenEulerScore, score, labels, it, 1, it.IssueType, "", brandArray) if requestBody != "" && len(requestBody) > 1 { logs.Info("isssue_body: ", requestBody) + updateLock.Lock() resp, err := util.HTTPPatch(url, requestBody) + updateLock.Unlock() if err != nil { logs.Error("创建issue失败, cveNum: ", cve.CveNum, "err: ", err) return "", err @@ -174,7 +176,9 @@ func CreateIssueToGit(accessToken string, owner string, path string, assignee st cve, sc, "", score, labels, it, 2, issueType, "", brandArray) logs.Info("isssue_body: ", requestBody) if requestBody != "" && len(requestBody) > 1 { + updateLock.Lock() resp, err := util.HTTPPost(url, requestBody) + updateLock.Unlock() if err != nil { logs.Error("url: ", url, "创建issue失败, cveNum: ", cve.CveNum, "err: ", err) models.DeleteIssueTemplate(issTempID) diff --git a/taskhandler/cve.go b/taskhandler/cve.go index 390aec82f4e10b4c46ac2300704912395d1cc6b2..3da91d4044e6588c07506cacf043398bb0aafe0f 100644 --- a/taskhandler/cve.go +++ b/taskhandler/cve.go @@ -772,7 +772,7 @@ func GenCveVuler(cveData models.OriginUpstream, cveRef string, openeulernum int) if len(versionList) > 0 { for _, ver := range versionList { if ver != "" && len(ver) > 1 { - goe, ok = models.QueryCveOpeneulerDetaildataByName(key) + goe, ok = models.QueryCveOpeneulerDetaildataByName(key, ver) if ok { versionFlag = true break @@ -784,14 +784,14 @@ func GenCveVuler(cveData models.OriginUpstream, cveRef string, openeulernum int) } } repoFlag := false - if !versionFlag { - gr, reok := models.QueryOriginRepo(key) - if reok && gr.RepoId > 0 { - repoFlag = true - } + gr, reok := models.QueryOriginRepo(key) + if reok && gr.RepoId > 0 { + repoFlag = true } - if !versionFlag && !repoFlag { + if !versionFlag || !repoFlag { models.UpdateOriginStatus(common.GetCurTime(), cveData.PackName, cveData.Version, cveData.CveId, 4) + logs.Error("版本信息对应错误, ", cveData.PackName, cveData.Version, cveData.CveId) + return false, errors.New("数据错误,暂时不处理") } CveRes, err := models.QueryCveByNum(cveData.CveNum, key, value) if err { @@ -827,13 +827,11 @@ func SyncCveVuler(cveData models.OriginExcel, cveRef string, openeulerNum int) ( } god, ok := models.QueryCveOpeneulerdata(cveData.PackName, cveData.CveVersion) if !ok { - logs.Error("仓库不存在,暂时不处理,data: ", cveData) + logs.Error("仓库和版本对应错误, data: ", cveData) models.UpdateOriginExcelStatus(common.GetCurTime(), cveData.CveId, 4) - return false, errors.New("仓库不存在,暂时不处理") - } else { - logs.Info("获取到的数据: god:", god) + return false, errors.New("仓库和版本对应错误,暂时不处理") } - goe, ok := models.QueryCveOpeneulerDetaildataByName(cveData.PackName) + goe, ok := models.QueryCveOpeneulerDetaildataByName(cveData.PackName, cveData.CveVersion) if !ok { logs.Error("仓库存在,yaml数据源不存在,god: ", god, ", cveData: ", cveData) } @@ -1473,7 +1471,7 @@ func GenCveVulerByIssue(cveData models.GiteOriginIssue, cveRef string, openeuler models.UpdateCveIssueStatusById(3, cveData.Id) return false, err } - goe, ok := models.QueryCveOpeneulerDetaildataByName(cveData.RepoPath) + goe, ok := models.QueryCveOpeneulerDetaildataByName(cveData.RepoPath, hole.Version) if !ok || goe.DetailId == 0 { logs.Error("获取数据失败,", "Components: ", hole.Components, ",Version: ", hole.Version) } diff --git a/taskhandler/oricvecheck.go b/taskhandler/oricvecheck.go index f8f6f47370554ef6ff477bd68073e67b7d7aa2a2..98facf952ff949199d7468bc44f63ab64e31634c 100644 --- a/taskhandler/oricvecheck.go +++ b/taskhandler/oricvecheck.go @@ -42,7 +42,7 @@ func CheckCveOriginData(prcnum int) (string, error) { gits, ok := models.QueryCveOpeneulerdata(pkList[0], pkList[1]) if !ok { models.UpdateOriginExist(common.GetCurTime(), cveData.PackName, cveData.Version, cveData.CveId, 0) - logs.Info("不存在,还原: ", cveData, ", gits: ", gits) + logs.Info("仓库和版本对应关系错误, 还原: ", cveData, ", gits: ", gits) break } else { models.UpdateOriginExist(common.GetCurTime(), cveData.PackName, cveData.Version, cveData.CveId, 1) diff --git a/taskhandler/yaml.go b/taskhandler/yaml.go index 02c8614b33bedc13ca65156432368985f2272b16..5b9ff8d884f791cb1d9d221de7042f5312cff40c 100644 --- a/taskhandler/yaml.go +++ b/taskhandler/yaml.go @@ -194,7 +194,7 @@ func ProcPackDetail(url string, value map[string]interface{}, tableValue models. ok, _ := models.GetSingleYaml(&ge) if ok { logs.Info("第 ", i, "条数据, PackageName: ", ge.PackageName, "已经存在,不需要再次插入") - gpinfo, okinfo := models.QueryCveOpeneulerDetaildata(ge.PackageName, ge.Version) + gpinfo, okinfo := models.QueryCveOpeneulerDetaildataByName(ge.PackageName, ge.Version) if !okinfo && gpinfo.DetailId == 0 { _, pierr := GetPackageInfo(url, tableValue, ge) if pierr != nil { @@ -213,7 +213,7 @@ func ProcPackDetail(url string, value map[string]interface{}, tableValue models. ok, _ := models.GetSingleYaml(&ge) if ok { logs.Info("第 ", i, "条数据, PackageName: ", ge.PackageName, "已经存在,不需要再次插入") - gpinfo, okinfo := models.QueryCveOpeneulerDetaildata(ge.PackageName, ge.Version) + gpinfo, okinfo := models.QueryCveOpeneulerDetaildataByName(ge.PackageName, ge.Version) if !okinfo && gpinfo.DetailId == 0 { _, pierr := GetPackageInfo(url, tableValue, ge) if pierr != nil {