@@ -57,6 +57,9 @@ var initCmd = &cobra.Command{
5757 if err := buildDefaultConfigurationFiles (toolsConfigDir ); err != nil {
5858 log .Fatal (err )
5959 }
60+ if err := createLanguagesConfigFileLocal (toolsConfigDir ); err != nil {
61+ log .Fatal (err )
62+ }
6063 } else {
6164 err := buildRepositoryConfigurationFiles (initFlags .ApiToken )
6265 if err != nil {
@@ -74,6 +77,30 @@ var initCmd = &cobra.Command{
7477 },
7578}
7679
80+ func createLanguagesConfigFileLocal (toolsConfigDir string ) error {
81+ content := `tools:
82+ - name: semgrep
83+ languages: [CPP, Go, Java, JavaScript, JSON, Python, Ruby]
84+ extensions: [.cc, .cpcac, .cpp, .cxx, .gemspec, .go, .hpp, .ino, .java, .jbuilder, .js, .jsm, .json, .jssssx, .jsx, .mjs, .opal, .podspec, .py, .pyx, .rake, .rb, .vue]
85+ - name: trivy
86+ languages: [Multiple]
87+ extensions: []
88+ - name: pmd
89+ languages: [Java, JavaScript, XML, Ruby]
90+ extensions: [.gemspec, .java, .jbuilder, .js, .jsm, .jssssx, .jsx, .mjs, .opal, .podspec, .pom, .rake, .rb, .vue, .wsdl, .xml, .xsl]
91+ - name: pylint
92+ languages: [Python]
93+ extensions: [.py]
94+ - name: lizard
95+ languages: [CPP, Java, JavaScript, Python, Ruby]
96+ extensions: [.cc, .cpcac, .cpp, .cxx, .gemspec, .hpp, .ino, .java, .jbuilder, .js, .jsm, .jssssx, .jsx, .mjs, .opal, .podspec, .py, .pyx, .rake, .rb, .vue]
97+ - name: eslint
98+ languages: [JavaScript]
99+ extensions: [.js, .jsm, .jsx, .mjs, .vue]`
100+
101+ return os .WriteFile (filepath .Join (toolsConfigDir , "languages-config.yaml" ), []byte (content ), utils .DefaultFilePerms )
102+ }
103+
77104func createGitIgnoreFile () error {
78105 gitIgnorePath := filepath .Join (config .Config .LocalCodacyDirectory (), ".gitignore" )
79106 gitIgnoreFile , err := os .Create (gitIgnorePath )
0 commit comments