diff --git a/cve-vulner-manager/cve-ddd/app/bulletin.go b/cve-vulner-manager/cve-ddd/app/bulletin.go index d9bcc106bfc58f0e6d50dd405ca2190aac556a21..e634396fb84903ff6c110b26bf298ed89685f307 100644 --- a/cve-vulner-manager/cve-ddd/app/bulletin.go +++ b/cve-vulner-manager/cve-ddd/app/bulletin.go @@ -31,7 +31,7 @@ const ( ) type BulletinService interface { - GenerateBulletins([]string, string) (string, error) + GenerateBulletins([]string, string, bool) (string, error) } func NewBulletinService( @@ -72,7 +72,7 @@ type bulletinService struct { log *logrus.Entry } -func (b *bulletinService) GenerateBulletins(cveNum []string, date string) (string, error) { +func (b *bulletinService) GenerateBulletins(cveNum []string, date string, noTestCve bool) (string, error) { handleBranch, err := b.maJun.GetReleasedBranch() if err != nil { return "", fmt.Errorf("get release branch err: %w", err) @@ -104,9 +104,6 @@ func (b *bulletinService) GenerateBulletins(cveNum []string, date string) (strin b.testResult.Init(handleBranch, date) - // 用成功转测的数据进行过滤,只发布转测成功的cve - testedCves := b.testResult.Filter(cves) - indexContent, err := b.getIndexContent() if err != nil { return "", fmt.Errorf("get %s failed: %w", fileIndex, err) @@ -119,7 +116,14 @@ func (b *bulletinService) GenerateBulletins(cveNum []string, date string) (strin uploadDir := b.generateUploadDir() - bulletins := testedCves.GenerateBulletins() + var bulletins []domain.SecurityBulletin + if noTestCve { + bulletins = cves.GenerateBulletins() + } else { + // 用成功转测的数据进行过滤,只发布转测成功的cve + testedCves := b.testResult.Filter(cves) + bulletins = testedCves.GenerateBulletins() + } var updateFixedFiles []string diff --git a/cve-vulner-manager/cve-ddd/controller/cve.go b/cve-vulner-manager/cve-ddd/controller/cve.go index 3fcc57a8affa2089730c2f5fc347e6b9383e3857..00ea7c8fff8c68627a2ddcd44a41ef87031711c5 100644 --- a/cve-vulner-manager/cve-ddd/controller/cve.go +++ b/cve-vulner-manager/cve-ddd/controller/cve.go @@ -87,7 +87,7 @@ func (c *CveController) Generate() { return } - uploadDir, err := c.BulletinService.GenerateBulletins(request.CveNum, request.Date) + uploadDir, err := c.BulletinService.GenerateBulletins(request.CveNum, request.Date, request.NoTestCve) if err != nil { c.BulletinLog.Errorf("generate security bulletins failed: %s", err.Error()) } else { diff --git a/cve-vulner-manager/cve-ddd/controller/cve_request.go b/cve-vulner-manager/cve-ddd/controller/cve_request.go index 1bf8247c478814285a4f4e5e4f4598319d859b86..20a0e039c3d0f08c058996e655e621ec50f945e7 100644 --- a/cve-vulner-manager/cve-ddd/controller/cve_request.go +++ b/cve-vulner-manager/cve-ddd/controller/cve_request.go @@ -5,6 +5,7 @@ import "cvevulner/cve-ddd/app" type CollectRequest = app.CmdToCollectData type GenerateRequest struct { - CveNum []string `json:"cve_num" valid:"Required"` - Date string `json:"date" valid:"Required"` + CveNum []string `json:"cve_num" valid:"Required"` + Date string `json:"date" valid:"Required"` + NoTestCve bool `json:"no_test_cve" valid:"Required"` }