Skip to content

Commit

Permalink
Merge pull request #5608 from Checkmarx/fix/kics_ar
Browse files Browse the repository at this point in the history
fix(kics_ar): reverting go routine
  • Loading branch information
cxMiguelSilva authored Jul 15, 2022
2 parents 60b2869 + eb8abf1 commit cf023ce
Show file tree
Hide file tree
Showing 6 changed files with 1 addition and 24 deletions.
10 changes: 1 addition & 9 deletions internal/console/remediate.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import (
"fmt"
"os"
"path/filepath"
"sync"

"github.com/Checkmarx/kics/internal/console/flags"
consoleHelpers "github.com/Checkmarx/kics/internal/console/helpers"
Expand Down Expand Up @@ -104,20 +103,13 @@ func remediate(cmd *cobra.Command) error {
// get all the remediationSets related to each filePath
remediationSets := summary.GetRemediationSets(results, include)

wg := &sync.WaitGroup{}

for filePath := range remediationSets {
wg.Add(1)
fix := remediationSets[filePath].(remediation.Set)
go func(filePath string) {
defer wg.Done()
err = summary.RemediateFile(filePath, fix)
}(filePath)
err = summary.RemediateFile(filePath, fix)
if err != nil {
return err
}
}
wg.Wait()

fmt.Printf("\nSelected remediation: %d\n", summary.SelectedRemediationNumber)
fmt.Printf("Remediation done: %d\n", summary.ActualRemediationDoneNumber)
Expand Down
2 changes: 0 additions & 2 deletions pkg/parser/parser.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import (
"errors"
"os"
"strings"
"sync"

"github.com/Checkmarx/kics/pkg/model"
"github.com/Checkmarx/kics/pkg/utils"
Expand Down Expand Up @@ -73,7 +72,6 @@ type Parser struct {
parsers kindParser
extensions model.Extensions
Platform []string
Mu sync.RWMutex
}

// ParsedDocument is a struct containing data retrieved from parsing
Expand Down
5 changes: 0 additions & 5 deletions pkg/parser/terraform/variables.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import (
"fmt"
"os"
"path/filepath"
"sync"

"github.com/Checkmarx/kics/pkg/parser/terraform/converter"
"github.com/hashicorp/hcl/v2"
Expand All @@ -15,8 +14,6 @@ import (

var inputVariableMap = make(converter.VariableMap)

var mutex = &sync.Mutex{}

func mergeMaps(baseMap, newItems converter.VariableMap) {
for key, value := range newItems {
baseMap[key] = value
Expand Down Expand Up @@ -124,7 +121,5 @@ func getInputVariables(currentPath string) {
mergeMaps(variablesMap, variables)
}

mutex.Lock()
inputVariableMap["var"] = cty.ObjectVal(variablesMap)
mutex.Unlock()
}
2 changes: 0 additions & 2 deletions pkg/remediation/remediation.go
Original file line number Diff line number Diff line change
Expand Up @@ -162,9 +162,7 @@ func (s *Summary) writeRemediation(remediatedLines, lines []string, filePath, si
}

log.Info().Msgf("file '%s' was remediated with '%s'", filePath, similarityID)
s.mu.Lock()
s.ActualRemediationDoneNumber++
s.mu.Unlock()

return remediatedLines
}
2 changes: 0 additions & 2 deletions pkg/remediation/scan.go
Original file line number Diff line number Diff line change
Expand Up @@ -116,9 +116,7 @@ func getPayload(filePath string, content []byte) (model.FileMetadatas, error) {
return model.FileMetadatas{}, errors.New("failed to get parser")
}

p[0].Mu.Lock()
documents, er := p[0].Parse(filePath, content)
p[0].Mu.Unlock()

if er != nil {
log.Error().Msgf("failed to parse file '%s': %s", filePath, er)
Expand Down
4 changes: 0 additions & 4 deletions pkg/remediation/utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import (
"path/filepath"
"regexp"
"strings"
"sync"

"github.com/Checkmarx/kics/pkg/model"
"github.com/Checkmarx/kics/pkg/utils"
Expand All @@ -16,7 +15,6 @@ import (
type Summary struct {
SelectedRemediationNumber int
ActualRemediationDoneNumber int
mu sync.RWMutex
}

// GetRemediationSets collects all the replacements and additions per file
Expand Down Expand Up @@ -158,9 +156,7 @@ func (s *Summary) GetRemediationSetsFromVulns(vulnerabilities []model.Vulnerabil
var remediationSet Set

if shouldRemediate(&file, include) {
s.mu.Lock()
s.SelectedRemediationNumber++
s.mu.Unlock()
r := &Remediation{
Line: file.Line,
Remediation: file.Remediation,
Expand Down

0 comments on commit cf023ce

Please sign in to comment.