diff --git a/modules/jenkins/client.go b/modules/jenkins/client.go index 803d6b9b..24eef15a 100644 --- a/modules/jenkins/client.go +++ b/modules/jenkins/client.go @@ -8,6 +8,7 @@ import ( "io/ioutil" "net/http" "net/url" + "regexp" "strings" ) @@ -43,6 +44,17 @@ func (widget *Widget) Create(jenkinsURL string, username string, apiKey string) view := &View{} parseJson(view, resp.Body) + jobs := []Job{} + + var validID = regexp.MustCompile(widget.settings.jobNameRegex) + for _, job := range view.Jobs { + if validID.MatchString(job.Name) { + jobs = append(jobs, job) + } + } + + view.Jobs = jobs + return view, nil } diff --git a/modules/jenkins/widget.go b/modules/jenkins/widget.go index 28b5eb0c..74c39f88 100644 --- a/modules/jenkins/widget.go +++ b/modules/jenkins/widget.go @@ -2,7 +2,6 @@ package jenkins import ( "fmt" - "regexp" "github.com/rivo/tview" "github.com/wtfutil/wtf/utils" @@ -73,18 +72,15 @@ func (widget *Widget) Render() { func (widget *Widget) contentFrom(view *View) string { var str string for idx, job := range view.Jobs { - var validID = regexp.MustCompile(widget.settings.jobNameRegex) - if validID.MatchString(job.Name) { - row := fmt.Sprintf( - `[%s] [%s]%-6s[white]`, - widget.RowColor(idx), - widget.jobColor(&job), - job.Name, - ) + row := fmt.Sprintf( + `[%s] [%s]%-6s[white]`, + widget.RowColor(idx), + widget.jobColor(&job), + job.Name, + ) - str += utils.HighlightableHelper(widget.View, row, idx, len(job.Name)) - } + str += utils.HighlightableHelper(widget.View, row, idx, len(job.Name)) } return str