puppet-sec-lint 0.5.11 → 0.5.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 67a4dd80a401b71eaab4f79e3fa450d165c442e0ea1dd94a5f42e857da6ea1bf
4
- data.tar.gz: d2c8e7e7dc3dc0c408a5c37e7a1625f49dd02702a1367944f7a7697f9cb96b32
3
+ metadata.gz: bfaad87ab6375c69dd2cb27773653373587f35e3cc74d4cba47c0bb05a69bd18
4
+ data.tar.gz: 9c5a606fc0867a133d38ab6033f9fe6b66eaae4a8e7426f45d59fea1ff3d4b34
5
5
  SHA512:
6
- metadata.gz: 17b1aaa97c44c6bdec2ef334ae7bbe3214023f8b75f9de42cd510a9debaf499ef86e6a02611f115809ec20433b9ad7c279b86d5acde6255aa78831a5fa2804e9
7
- data.tar.gz: 2d911ad4836cea34361647374c448d506f5b9be896e2e5d664f38e81e1915a162760ec89a3b7648328be525f9129b88aba039252bcd9a5055913deaafe2d4513
6
+ metadata.gz: 26a4648b94a03331d14bcb1da29938809c5869b8f013c9f4510bfdd3dbf8557139ff66a5cb8834066cdd103ade3631001f4a7ebbc9d09b1292c4a7ec4413d96f
7
+ data.tar.gz: ce98ccc1b55c37bc67d3ba4bafdd68fee493af13cffcab88af893ce276a0b5ba860d4b0a3deb2dc9210e467e24d8f61f14395b9bab2db314c1354df8a8711351
@@ -15,6 +15,7 @@
15
15
  <orderEntry type="library" scope="PROVIDED" name="bundler (v2.2.3, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
16
16
  <orderEntry type="library" scope="PROVIDED" name="inifile (v3.0.0, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
17
17
  <orderEntry type="library" scope="PROVIDED" name="launchy (v2.5.0, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
18
+ <orderEntry type="library" scope="PROVIDED" name="logger (v1.4.3, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
18
19
  <orderEntry type="library" scope="PROVIDED" name="minitest (v5.14.4, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
19
20
  <orderEntry type="library" scope="PROVIDED" name="public_suffix (v4.0.6, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
20
21
  <orderEntry type="library" scope="PROVIDED" name="puppet-lint (v2.4.2, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
@@ -24,30 +25,7 @@
24
25
  </component>
25
26
  <component name="RakeTasksCache">
26
27
  <option name="myRootTask">
27
- <RakeTaskImpl id="rake">
28
- <subtasks>
29
- <RakeTaskImpl description="Build puppet-sec-lint-0.5.7.gem into the pkg directory" fullCommand="build" id="build" />
30
- <RakeTaskImpl description="Remove any temporary products" fullCommand="clean" id="clean" />
31
- <RakeTaskImpl description="Remove any generated files" fullCommand="clobber" id="clobber" />
32
- <RakeTaskImpl description="Build and install puppet-sec-lint-0.5.7.gem into system gems" fullCommand="install" id="install" />
33
- <RakeTaskImpl id="install">
34
- <subtasks>
35
- <RakeTaskImpl description="Build and install puppet-sec-lint-0.5.7.gem into system gems without network access" fullCommand="install:local" id="local" />
36
- </subtasks>
37
- </RakeTaskImpl>
38
- <RakeTaskImpl description="Create tag v0.5.7 and build and push puppet-sec-lint-0.5.7.gem to https://rubygems.org" fullCommand="release[remote]" id="release[remote]" />
39
- <RakeTaskImpl description="Run tests" fullCommand="test" id="test" />
40
- <RakeTaskImpl description="" fullCommand="default" id="default" />
41
- <RakeTaskImpl description="" fullCommand="release" id="release" />
42
- <RakeTaskImpl id="release">
43
- <subtasks>
44
- <RakeTaskImpl description="" fullCommand="release:guard_clean" id="guard_clean" />
45
- <RakeTaskImpl description="" fullCommand="release:rubygem_push" id="rubygem_push" />
46
- <RakeTaskImpl description="" fullCommand="release:source_control_push" id="source_control_push" />
47
- </subtasks>
48
- </RakeTaskImpl>
49
- </subtasks>
50
- </RakeTaskImpl>
28
+ <RakeTaskImpl id="rake" />
51
29
  </option>
52
30
  </component>
53
31
  </module>
data/Gemfile CHANGED
@@ -17,4 +17,6 @@ gem 'webrick'
17
17
 
18
18
  gem 'inifile'
19
19
 
20
- gem 'launchy'
20
+ gem 'launchy'
21
+
22
+ gem 'logger'
data/Gemfile.lock CHANGED
@@ -1,9 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- puppet-sec-lint (0.5.10)
4
+ puppet-sec-lint (0.5.13)
5
5
  inifile (~> 3.0.0)
6
6
  launchy (~> 2.5.0)
7
+ logger (~> 1.4.3)
7
8
  minitest (~> 5.0)
8
9
  puppet-lint (~> 2.4, >= 2.4.2)
9
10
  rack (~> 2.2.3)
@@ -18,6 +19,7 @@ GEM
18
19
  inifile (3.0.0)
19
20
  launchy (2.5.0)
20
21
  addressable (~> 2.7)
22
+ logger (1.4.3)
21
23
  minitest (5.14.4)
22
24
  public_suffix (4.0.6)
23
25
  puppet-lint (2.4.2)
@@ -31,6 +33,7 @@ PLATFORMS
31
33
  DEPENDENCIES
32
34
  inifile
33
35
  launchy
36
+ logger
34
37
  minitest (~> 5.0)
35
38
  puppet-lint
36
39
  puppet-sec-lint!
data/exe/puppet-sec-lint CHANGED
@@ -5,6 +5,7 @@ require 'json'
5
5
  require 'launchy'
6
6
  require 'optparse'
7
7
  require 'optparse/uri'
8
+ require 'logger'
8
9
  require_relative '../lib/puppet-sec-lint/version'
9
10
  require_relative '../lib/visitors/configuration_visitor'
10
11
  require_relative '../lib/facades/configuration_file_facade'
@@ -12,6 +13,9 @@ require_relative '../lib/facades/configuration_file_facade'
12
13
  ConfigurationVisitor.GenerateIDs
13
14
  ConfigurationFileFacade.LoadConfigurations
14
15
 
16
+ $logger = Logger.new(STDOUT)
17
+ $logger.level = Logger::ERROR
18
+
15
19
  #get free port
16
20
  loop do
17
21
  $port = rand(3000..9999)
@@ -49,6 +53,11 @@ OptionParser.new do |opts|
49
53
  opts.on("-p", "--port=PORT", "TCP Port open for socket communication with the language server (Default:5007)") do |port|
50
54
  options[:port] = port
51
55
  end
56
+
57
+ opts.on("-v", "--verbose", "Verbose mode (shows all communications and other debug info)") do |v|
58
+ options[:verbose] = v
59
+ $logger.level = Logger::DEBUG
60
+ end
52
61
  end.parse!
53
62
 
54
63
  puts '___ _ _ ___ ___ ____ ___ ____ ____ ____ _ _ ____ _ ___ _ _ _ _ _ _ ___ ____ ____ '
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PuppetSecLint
4
- VERSION = "0.5.11"
4
+ VERSION = "0.5.13"
5
5
  YEAR = "2021"
6
6
  AUTHOR = "Tiago Ribeiro"
7
7
  end
data/lib/rule_engine.rb CHANGED
@@ -22,8 +22,8 @@ class RuleEngine
22
22
  lexer = PuppetLint::Lexer.new
23
23
  tokens = lexer.tokenise(code)
24
24
  rescue => error
25
- puts "Error in getting tokens from Puppet-Lint"
26
- puts error.backtrace
25
+ $logger.error("Error in getting tokens from Puppet-Lint")
26
+ $logger.error(error.backtrace)
27
27
  tokens = []
28
28
  end
29
29
 
@@ -40,7 +40,7 @@ class RuleEngine
40
40
  (result << rule.AnalyzeTokens(tokens)).flatten!
41
41
  end
42
42
  rescue
43
- puts "Error in running rule #{rule.name}"
43
+ $logger.error("Error in running rule #{rule.name}")
44
44
  end
45
45
  end
46
46
 
@@ -18,7 +18,7 @@ class LanguageServer
18
18
  length=Integer(line.scan(/\d/).join(''))
19
19
  line=client.read(length+2)
20
20
  request = JSON.parse(line)
21
- puts line
21
+ $logger.debug(line)
22
22
 
23
23
  method_name = request['method'].sub('/', '_')
24
24
  response = if self.respond_to? "client_"+method_name then self.send("client_"+method_name,request['id'],request['params']) end
@@ -27,7 +27,7 @@ class LanguageServer
27
27
  client.flush
28
28
  client.print("Content-Length: "+response.length.to_s+"\r\n\r\n")
29
29
  client.print(response)
30
- puts response
30
+ $logger.debug(response)
31
31
  end
32
32
  end
33
33
  client.close
@@ -1,4 +1,5 @@
1
1
  require "rack"
2
+ require 'webrick'
2
3
  require 'json'
3
4
  require 'uri'
4
5
  require_relative '../rule_engine'
@@ -43,7 +44,8 @@ class LinterServer
43
44
  end
44
45
 
45
46
  def self.start(port)
46
- Rack::Handler::WEBrick.run(LinterServer.new, :Port => port)
47
+ log = WEBrick::Log.new $stdout,1
48
+ Rack::Handler::WEBrick.run(LinterServer.new, :Port => port,Logger: log )
47
49
  end
48
50
 
49
51
  end
@@ -37,6 +37,7 @@ Gem::Specification.new do |spec|
37
37
  spec.add_runtime_dependency 'webrick', '~> 1.7.0'
38
38
  spec.add_runtime_dependency 'inifile', '~> 3.0.0'
39
39
  spec.add_runtime_dependency 'launchy', '~> 2.5.0'
40
+ spec.add_runtime_dependency 'logger', '~> 1.4.3'
40
41
 
41
42
  # For more information and examples about making a new gem, checkout our
42
43
  # guide at: https://bundler.io/guides/creating_gem.html
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet-sec-lint
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.11
4
+ version: 0.5.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tiago Ribeiro
@@ -114,6 +114,20 @@ dependencies:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
116
  version: 2.5.0
117
+ - !ruby/object:Gem::Dependency
118
+ name: logger
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: 1.4.3
124
+ type: :runtime
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: 1.4.3
117
131
  description: This is a more complete security linter for the puppet language
118
132
  email:
119
133
  - tiago7b27@gmail.com