Skip to content

Commit

Permalink
Develop (#481)
Browse files Browse the repository at this point in the history
* fix data-races when running analysis (#477)

* fix possible wrong path concat on windows

* enable data race detection on make test

* fix data-races when running analysis

Previously when we start an analysis of language/tool we controlled the
state of execution using the monitor package, but many objects use the
same instance of monitor doing updates and reads concurrent resulting
in possible data races. This commit drops the monitor package and replace
to use the `sync.WaitGroup` to control the state of go routines.
An improvement was also made to control the timeout of analysis using
`time.After` function to receive the channel when timeout occurred or close
the `done` channel when analysis finish. An mutex was added on Service
to avoid data races when adding errors on Analysis.

* improvement on Swift rules description (#479)

* feature/dependency-check (#478)

* Adding owasp dependency check formatter

* Adding tests and fixing lint

* Adding flag to enable owasp dependency check

* Fixing pipeline errors

* Fixing some errors

* Updating devkit version

* Feature/dotnet cli (#480)

* Adding dotnet cli dependency check

* Fixing lint errors

* Adding lisence header

* Improving security code scan

* Adding validation to not found solution in scs, adding license headers

* Adding code in security code scan

* Updating csharp example with vulnerable dependencies, adding validation to failed build in security code scan

* Fixing some errors

* Adding code, line and filepath in dotnet cli. Fixing some errors

* Updating horusec json

* Fixing commit authors issues

* Fixing some issues found during tests

* Adding validation to dotnetcli output

* Fixing lint error

* Fixing lint errors

* Fixing lint error

* Updating horusec config json

* Updating go modules and adding missing unity test

* Fixing error to remove .horusec

* [skip ci] Update versioning file

Co-authored-by: matheusalcantarazup <84723211+matheusalcantarazup@users.noreply.github.com>
Co-authored-by: nathanmartinszup <63246935+nathanmartinszup@users.noreply.github.com>
  • Loading branch information
3 people authored Jun 22, 2021
1 parent 1c477e5 commit 51177b1
Show file tree
Hide file tree
Showing 116 changed files with 2,452 additions and 1,039 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,4 @@ deployments/certs
horusec-analysis-*.json
cmd/horusec/start/examples/
vendor
obj/
2 changes: 1 addition & 1 deletion .semver.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
alpha: 0
beta: 0
rc: 0
release: v2.1.0
release: v2.2.0
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ coverage:

test:
$(GO) clean -testcache
$(GO) test -v $(GO_LIST_TO_TEST) -timeout=5m -parallel=1 -failfast -short
$(GO) test -v $(GO_LIST_TO_TEST) -race -timeout=5m -parallel=1 -failfast -short

test-e2e:
$(GO) clean -testcache
Expand Down
2 changes: 2 additions & 0 deletions cmd/app/generate/generate.go
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ func (g *Generate) createAndWriteOnFile() error {
return g.writeConfigOnFile(outputFile)
}

//nolint:gomnd // magic number
func (g *Generate) createAndOpenFile() (outputFile *os.File, err error) {
if _, err = os.Create(g.configs.GetConfigFilePath()); err != nil {
return nil, err
Expand All @@ -90,6 +91,7 @@ func (g *Generate) writeConfigOnFile(outputFile *os.File) error {
return nil
}

//nolint:gomnd // magic number
func (g *Generate) readFileAndCreateNewKeys() error {
configFile, err := os.OpenFile(g.configs.GetConfigFilePath(), os.O_CREATE|os.O_WRONLY, 0600)
if err != nil {
Expand Down
3 changes: 2 additions & 1 deletion cmd/app/start/start.go
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,8 @@ func (s *Start) CreateStartCommand() *cobra.Command {
BoolP("information-severity", "I", s.configs.GetEnableInformationSeverity(), "Used to enable or disable information severity vulnerabilities, information vulnerabilities can contain a lot of false positives. Example: -I=\"true\"")
_ = startCmd.PersistentFlags().
StringSliceP("show-vulnerabilities-types", "", s.configs.GetShowVulnerabilitiesTypes(), "Used to show in the output vulnerabilities of types: Vulnerability, Risk Accepted, False Positive, Corrected. Example --show-vulnerabilities-types=\"Vulnerability, Risk Accepted\"")

_ = startCmd.PersistentFlags().
BoolP("enable-owasp-dependency-check", "w", s.configs.GetEnableOwaspDependencyCheck(), "Enable owasp dependency check. Example -w=\"true\". Default: false")
if !dist.IsStandAlone() {
_ = startCmd.PersistentFlags().
BoolP("disable-docker", "D", s.configs.GetDisableDocker(), "Used to run horusec without docker if enabled it will only run the following tools: horusec-csharp, horusec-kotlin, horusec-java, horusec-kubernetes, horusec-leaks, horusec-nodejs, horusec-dart, horusec-nginx. Example: -D=\"true\"")
Expand Down
1 change: 1 addition & 0 deletions config/.example-horusec-cli.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
"horusecCliWorkDir": {},
"horusecCliRepositoryName": "horus",
"horusecCliDisableDocker": true,
"horusecCLiEnableOwaspDependencyCheck": true,
"horusecCliCustomRulesPath": "test",
"horusecCliFalsePositiveHashes": [
"hash1",
Expand Down
21 changes: 17 additions & 4 deletions config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,16 @@ import (
"path/filepath"
"strings"

enumsVulnerability "github.com/ZupIT/horusec-devkit/pkg/enums/vulnerability"

"github.com/sirupsen/logrus"

"github.com/google/uuid"
"github.com/iancoleman/strcase"
"github.com/sirupsen/logrus"
"github.com/spf13/cobra"
"github.com/spf13/viper"

enumsVulnerability "github.com/ZupIT/horusec-devkit/pkg/enums/vulnerability"
"github.com/ZupIT/horusec-devkit/pkg/utils/env"
"github.com/ZupIT/horusec-devkit/pkg/utils/logger"

"github.com/ZupIT/horusec/config/dist"
customImages "github.com/ZupIT/horusec/internal/entities/custom_images"
"github.com/ZupIT/horusec/internal/entities/toolsconfig"
Expand Down Expand Up @@ -86,6 +85,8 @@ func (c *Config) NewConfigsFromCobraAndLoadsCmdStartFlags(cmd *cobra.Command) IC
c.SetCustomRulesPath(c.extractFlagValueString(cmd, "custom-rules-path", c.GetCustomRulesPath()))
c.SetEnableInformationSeverity(c.extractFlagValueBool(cmd, "information-severity", c.GetEnableInformationSeverity()))
c.SetShowVulnerabilitiesTypes(c.extractFlagValueStringSlice(cmd, "show-vulnerabilities-types", c.GetShowVulnerabilitiesTypes()))
c.SetEnableOwaspDependencyCheck(c.extractFlagValueBool(cmd, "enable-owasp-dependency-check", c.GetDisableDocker()))

return c
}

Expand Down Expand Up @@ -121,6 +122,7 @@ func (c *Config) NewConfigsFromViper() IConfig {
c.SetEnableInformationSeverity(viper.GetBool(c.toLowerCamel(EnvEnableInformationSeverity)))
c.SetCustomImages(viper.Get(c.toLowerCamel(EnvCustomImages)))
c.SetShowVulnerabilitiesTypes(viper.GetStringSlice(c.toLowerCamel(EnvShowVulnerabilitiesTypes)))
c.SetEnableOwaspDependencyCheck(viper.GetBool(c.toLowerCamel(EnvEnableOwaspDependencyCheck)))
return c
}

Expand Down Expand Up @@ -150,6 +152,7 @@ func (c *Config) NewConfigsFromEnvironments() IConfig {
c.SetCustomRulesPath(env.GetEnvOrDefault(EnvCustomRulesPath, c.customRulesPath))
c.SetEnableInformationSeverity(env.GetEnvOrDefaultBool(EnvEnableInformationSeverity, c.enableInformationSeverity))
c.SetShowVulnerabilitiesTypes(c.factoryParseInputToSliceString(env.GetEnvOrDefaultInterface(EnvShowVulnerabilitiesTypes, c.showVulnerabilitiesTypes)))
c.SetEnableOwaspDependencyCheck(env.GetEnvOrDefaultBool(EnvEnableOwaspDependencyCheck, c.enableOwaspDependencyCheck))
return c
}

Expand Down Expand Up @@ -474,6 +477,7 @@ func (c *Config) toMap() map[string]interface{} {
"enableInformationSeverity": c.enableInformationSeverity,
"customImages": c.customImages,
"showVulnerabilitiesTypes": c.showVulnerabilitiesTypes,
"enableOwaspDependencyCheck": c.enableOwaspDependencyCheck,
}
}

Expand Down Expand Up @@ -517,6 +521,7 @@ func (c *Config) ToMapLowerCase() map[string]interface{} {
c.toLowerCamel(EnvEnableInformationSeverity): c.GetEnableInformationSeverity(),
c.toLowerCamel(EnvCustomImages): c.GetCustomImages(),
c.toLowerCamel(EnvShowVulnerabilitiesTypes): c.GetShowVulnerabilitiesTypes(),
c.toLowerCamel(EnvEnableOwaspDependencyCheck): c.GetEnableOwaspDependencyCheck(),
}
}

Expand Down Expand Up @@ -618,3 +623,11 @@ func (c *Config) SetCustomImages(configData interface{}) {

c.customImages = customImg
}

func (c *Config) GetEnableOwaspDependencyCheck() bool {
return c.enableOwaspDependencyCheck
}

func (c *Config) SetEnableOwaspDependencyCheck(enableOwaspDependencyCheck bool) {
c.enableOwaspDependencyCheck = enableOwaspDependencyCheck
}
11 changes: 11 additions & 0 deletions config/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.Equal(t, false, configs.GetEnableInformationSeverity())
assert.Equal(t, 0, len(configs.GetCustomImages()))
assert.Equal(t, 1, len(configs.GetShowVulnerabilitiesTypes()))
assert.Equal(t, false, configs.GetEnableOwaspDependencyCheck())
})
t.Run("Should change horusec config and return your new values", func(t *testing.T) {
currentPath, _ := os.Getwd()
Expand Down Expand Up @@ -102,6 +103,7 @@ func TestNewHorusecConfig(t *testing.T) {
configs.SetEnableInformationSeverity(true)
configs.SetCustomImages(map[languages.Language]string{languages.Go: "test/test"})
configs.SetShowVulnerabilitiesTypes([]string{vulnerability.Vulnerability.ToString()})
configs.SetEnableOwaspDependencyCheck(true)

assert.NotEqual(t, configs.GetDefaultConfigFilePath(), configs.GetConfigFilePath())
assert.NotEqual(t, "http://0.0.0.0:8000", configs.GetHorusecAPIUri())
Expand Down Expand Up @@ -132,6 +134,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.Equal(t, true, configs.GetEnableInformationSeverity())
assert.Equal(t, []string{vulnerability.Vulnerability.ToString()}, configs.GetShowVulnerabilitiesTypes())
assert.NotEqual(t, map[languages.Language]string{}, configs.GetCustomImages())
assert.Equal(t, true, configs.GetEnableOwaspDependencyCheck())
})
t.Run("Should return horusec config using new viper file", func(t *testing.T) {
viper.Reset()
Expand Down Expand Up @@ -166,6 +169,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.Equal(t, true, configs.GetDisableDocker())
assert.Equal(t, "test", configs.GetCustomRulesPath())
assert.Equal(t, true, configs.GetEnableInformationSeverity())
assert.Equal(t, true, configs.GetEnableOwaspDependencyCheck())
assert.Equal(t, []string{vulnerability.Vulnerability.ToString(), vulnerability.FalsePositive.ToString()}, configs.GetShowVulnerabilitiesTypes())
assert.Equal(t, toolsconfig.ToolConfig{
IsToIgnore: true,
Expand Down Expand Up @@ -205,6 +209,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.Equal(t, map[string]string{"x-headers": "some-other-value"}, configs.GetHeaders())
assert.Equal(t, "test", configs.GetContainerBindProjectPath())
assert.Equal(t, true, configs.GetEnableInformationSeverity())
assert.Equal(t, true, configs.GetEnableOwaspDependencyCheck())
assert.Equal(t, toolsconfig.ToolConfig{
IsToIgnore: true,
}, configs.GetToolsConfig()[tools.GoSec])
Expand All @@ -231,6 +236,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.NoError(t, os.Setenv(EnvHeaders, "{\"x-auth\": \"987654321\"}"))
assert.NoError(t, os.Setenv(EnvContainerBindProjectPath, "./my-path"))
assert.NoError(t, os.Setenv(EnvDisableDocker, "true"))
assert.NoError(t, os.Setenv(EnvEnableOwaspDependencyCheck, "true"))
assert.NoError(t, os.Setenv(EnvCustomRulesPath, "test"))
assert.NoError(t, os.Setenv(EnvEnableInformationSeverity, "true"))
assert.NoError(t, os.Setenv(EnvShowVulnerabilitiesTypes, fmt.Sprintf("%s, %s", vulnerability.Vulnerability.ToString(), vulnerability.RiskAccepted.ToString())))
Expand Down Expand Up @@ -260,6 +266,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.Equal(t, true, configs.GetDisableDocker())
assert.Equal(t, "test", configs.GetCustomRulesPath())
assert.Equal(t, true, configs.GetEnableInformationSeverity())
assert.Equal(t, true, configs.GetEnableOwaspDependencyCheck())
assert.Equal(t, []string{vulnerability.Vulnerability.ToString(), vulnerability.RiskAccepted.ToString()}, configs.GetShowVulnerabilitiesTypes())
})
t.Run("Should return horusec config using viper file and override by environment and override by flags", func(t *testing.T) {
Expand Down Expand Up @@ -296,6 +303,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.Equal(t, map[string]string{"x-headers": "some-other-value"}, configs.GetHeaders())
assert.Equal(t, "test", configs.GetContainerBindProjectPath())
assert.Equal(t, true, configs.GetEnableInformationSeverity())
assert.Equal(t, true, configs.GetEnableOwaspDependencyCheck())
assert.Equal(t, toolsconfig.ToolConfig{
IsToIgnore: true,
}, configs.GetToolsConfig()[tools.GoSec])
Expand Down Expand Up @@ -324,6 +332,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.NoError(t, os.Setenv(EnvDisableDocker, "true"))
assert.NoError(t, os.Setenv(EnvCustomRulesPath, "test"))
assert.NoError(t, os.Setenv(EnvEnableInformationSeverity, "true"))
assert.NoError(t, os.Setenv(EnvEnableOwaspDependencyCheck, "true"))
assert.NoError(t, os.Setenv(EnvShowVulnerabilitiesTypes, fmt.Sprintf("%s, %s", vulnerability.Vulnerability.ToString(), vulnerability.RiskAccepted.ToString())))
configs.NewConfigsFromEnvironments()
assert.Equal(t, configFilePath, configs.GetConfigFilePath())
Expand Down Expand Up @@ -352,6 +361,7 @@ func TestNewHorusecConfig(t *testing.T) {
assert.Equal(t, true, configs.GetDisableDocker())
assert.Equal(t, "test", configs.GetCustomRulesPath())
assert.Equal(t, true, configs.GetEnableInformationSeverity())
assert.Equal(t, true, configs.GetEnableOwaspDependencyCheck())
cobraCmd := &cobra.Command{
Use: "start",
Short: "Start horusec-cli",
Expand Down Expand Up @@ -416,6 +426,7 @@ func TestToLowerCamel(t *testing.T) {
assert.Equal(t, "horusecCliWorkDir", configs.toLowerCamel(EnvWorkDir))
assert.Equal(t, "horusecCliCustomImages", configs.toLowerCamel(EnvCustomImages))
assert.Equal(t, "horusecCliShowVulnerabilitiesTypes", configs.toLowerCamel(EnvShowVulnerabilitiesTypes))
assert.Equal(t, "horusecCliEnableOwaspDependencyCheck", configs.toLowerCamel(EnvEnableOwaspDependencyCheck))
})
}

Expand Down
2 changes: 2 additions & 0 deletions config/entity.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ const (
EnvEnableInformationSeverity = "HORUSEC_CLI_ENABLE_INFORMATION_SEVERITY"
EnvCustomImages = "HORUSEC_CLI_CUSTOM_IMAGES"
EnvShowVulnerabilitiesTypes = "HORUSEC_CLI_SHOW_VULNERABILITIES_TYPES"
EnvEnableOwaspDependencyCheck = "HORUSEC_CLI_ENABLE_OWASP_DEPENDENCY_CHECK"
)

type Config struct {
Expand Down Expand Up @@ -77,6 +78,7 @@ type Config struct {
enableCommitAuthor bool
disableDocker bool
enableInformationSeverity bool
enableOwaspDependencyCheck bool
severitiesToIgnore []string
filesOrPathsToIgnore []string
falsePositiveHashes []string
Expand Down
3 changes: 3 additions & 0 deletions config/interface.go
Original file line number Diff line number Diff line change
Expand Up @@ -111,4 +111,7 @@ type IConfig interface {

SetShowVulnerabilitiesTypes(vulnerabilitiesTypes []string)
GetShowVulnerabilitiesTypes() []string

GetEnableOwaspDependencyCheck() bool
SetEnableOwaspDependencyCheck(enableOwaspDependencyCheck bool)
}
1 change: 1 addition & 0 deletions deployments/all-version-cli.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ v2-0-0
v2-0-1
v2-0-2
v2-1-0
v2-2-0
2 changes: 1 addition & 1 deletion deployments/version-cli-latest.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v2-1-0
v2-2-0
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Http" Version="2.2.2" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Core" Version="2.2.5" />
<PackageReference Include="SecurityCodeScan.VS2017" Version="3.5.0" />
</ItemGroup>

</Project>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Http" Version="2.2.2"/>
<PackageReference Include="Microsoft.AspNetCore.Mvc.Core" Version="2.2.5"/>
<PackageReference Include="Wire" Version="1.0.0"/>
<PackageReference Include="Microsoft.ChakraCore" Version="1.11.13"/>
<PackageReference Include="adplug" Version="2.3.1"/>
<PackageReference Include="HtmlSanitizer" Version="4.0.217"/>
<PackageReference Include="Sustainsys.Saml2" Version="2.0.0"/>
<PackageReference Include="MetadataExtractor" Version="2.1.0"/>
</ItemGroup>
</Project>
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ go 1.16

require (
github.com/Microsoft/go-winio v0.5.0 // indirect
github.com/ZupIT/horusec-devkit v1.0.4
github.com/ZupIT/horusec-devkit v1.0.7
github.com/ZupIT/horusec-engine v0.3.3-0.20210428113330-765b5cfcf9b1
github.com/bmatcuk/doublestar/v2 v2.0.4
github.com/containerd/containerd v1.5.1 // indirect
Expand Down
8 changes: 8 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,16 @@ github.com/ZupIT/horusec-devkit v1.0.2 h1:AItfaHVYgVXaaCjHcBgKkT4FrQ/XEYv7jnBiOi
github.com/ZupIT/horusec-devkit v1.0.2/go.mod h1:0mlKsix5/t+kFlVukmOS65xpJymiYAv8bmJj5eiykZU=
github.com/ZupIT/horusec-devkit v1.0.3-0.20210601122747-70b80bd3b85a h1:OwqdhE65HJ3ofnVEEYbeatPcQyrRfIZTXiWqVkxjtA4=
github.com/ZupIT/horusec-devkit v1.0.3-0.20210601122747-70b80bd3b85a/go.mod h1:0mlKsix5/t+kFlVukmOS65xpJymiYAv8bmJj5eiykZU=
github.com/ZupIT/horusec-devkit v1.0.4-0.20210610121339-a6e36de9097f h1:1ipUc0jwX5UOg6tgZZMsrg9B018pjh9ehtaNvaTJQPE=
github.com/ZupIT/horusec-devkit v1.0.4-0.20210610121339-a6e36de9097f/go.mod h1:0mlKsix5/t+kFlVukmOS65xpJymiYAv8bmJj5eiykZU=
github.com/ZupIT/horusec-devkit v1.0.4-0.20210614190314-6b82fbba5da2 h1:+MJ8AtdkeGKfkm+3aQOS+SYZykiwqrW6s+VOomQdXbE=
github.com/ZupIT/horusec-devkit v1.0.4-0.20210614190314-6b82fbba5da2/go.mod h1:0mlKsix5/t+kFlVukmOS65xpJymiYAv8bmJj5eiykZU=
github.com/ZupIT/horusec-devkit v1.0.4 h1:SpgBiqp4AZOuMHqanwmV/Q/Ib2tAKQlfeBS1jH+mgpc=
github.com/ZupIT/horusec-devkit v1.0.4/go.mod h1:0mlKsix5/t+kFlVukmOS65xpJymiYAv8bmJj5eiykZU=
github.com/ZupIT/horusec-devkit v1.0.5 h1:ElaAFRZUebqzSCF2jHLc21TeBYUCI/8Z+MIt4Rwq9uo=
github.com/ZupIT/horusec-devkit v1.0.5/go.mod h1:0mlKsix5/t+kFlVukmOS65xpJymiYAv8bmJj5eiykZU=
github.com/ZupIT/horusec-devkit v1.0.7 h1:o9EUpIpoYtcjEwJJtYVRQ+z4Gf0LBzJImnbsNfQyzU8=
github.com/ZupIT/horusec-devkit v1.0.7/go.mod h1:0mlKsix5/t+kFlVukmOS65xpJymiYAv8bmJj5eiykZU=
github.com/ZupIT/horusec-engine v0.3.3-0.20210428113330-765b5cfcf9b1 h1:6kCZzpEKjNeNsQzoD7Qx93KhuYLF6U4SUJThC2YLRsQ=
github.com/ZupIT/horusec-engine v0.3.3-0.20210428113330-765b5cfcf9b1/go.mod h1:J1pXu3E+r5BGW+5tcprMVWJ8JFIcFbAiGWSgqYCavJo=
github.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c=
Expand Down
15 changes: 8 additions & 7 deletions horusec-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,16 @@
"horusecCliEnableGitHistoryAnalysis": false,
"horusecCliEnableInformationSeverity": false,
"horusecCliFalsePositiveHashes": [
"e09bfb33f98e86cdcf547f72c7be3e99474de1b2ec8d6ded6ad7f6caaa78cd7c",
"5f5397c5a451b73e73be34c7a0330ec26f00fe41df15cdb317f87df3211aa563",
"bfd91103f38d189f60a7080b9bae6aad940e6b7637b4218017a80c4b4c15385a",
"37fa0cfe47519c1b2b6a8e29538571b81fd8787ca4217825ae6d8dcf86d70de8",
"85492fbc829b64336a4f858022fbe52f05e27ee18d7a8fbdf5ffd23991ebd7a9",
"06f6ce2402e20f1e885e5d59f66db4dde44dfdd2eaf821d86b1d066a707c9fff",
"00bf1f0dbed9d82a929b8353f093f26c48e49c3db1a5e23bfb6f6eafba808b2c",
"362a89c4517db256b648e9b1d21ddb0d99018e7c7b9f9b45d200ede54a49363d",
"5fc8f08b377cdc0c92913da73a2d8d8acd85896993e04ae4c15e34ecb829d8b5",
"3e64eb0ec371e5ef7d97adec60d3b94cb7dd5a1189951f2a45ed1827e6781d30",
"9c205ee4b31bea1254f4e8031958995912312a524105469cb49e757d59558496",
"b176f4967e7b0e54faabb9688d1d9ff6f10959d4a34280b9e035bfd63c4f352e",
"316176f18dac308bbcfc3ece628796eb438c8387a7d0da83f583fcacab3a01c4",
"1dbef4655a4a2378e67acf89bf9b78c13041634a63a8ef0a84ff5e6237d17216",
"37fa0cfe47519c1b2b6a8e29538571b81fd8787ca4217825ae6d8dcf86d70de8"
"2eab7620998c54bcbdb1da9ad96f54c3b6ac7b5e0babbff8f502ec10594479ad",
"85d4e95cd519dda872c8da0bc50b742ef067bb9f1e5b9fea42924eb21c5e688e"
],
"horusecCliFilesOrPathsToIgnore": [
"**/e2e/**",
Expand Down
Loading

0 comments on commit 51177b1

Please sign in to comment.