build-labels 0.0.80 → 0.0.81

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trivy-runner.rb +12 -2
  3. data/lib/version.rb +1 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 85c6a279190386fdb2b18065e676e640484c5ce4b2f4fe3b3de8597bb81214a8
4
- data.tar.gz: 419d06b5f33b03d79312022cc7ee4df622d2bcca99474177481d131890cdfa6f
3
+ metadata.gz: 476e27617813a76b8dc23859333d42a05d7be58b318a565e20d6df009dc41b4d
4
+ data.tar.gz: e26ea40307746c5b3201fad92fe47a9ca57c489f9ec3b7dbe0aaa88094baa653
5
5
  SHA512:
6
- metadata.gz: f915e25af163403dd28199c99cd08d1acac593d780bdd7fd3841028e567c6944342ebbe9a6198d05586ab2f70c02bf19d547d24eb0f5a0e4fc240eec8fdafaa1
7
- data.tar.gz: 9c45b412e6622ac2bc9aa528ef8fb0cb0e13d9c8663cfe85f8e3b9b00c85d186c392455f515a9c38fd53fda4ea68421bb12e1e6c066cab531dacf2e7e8e18d3a
6
+ metadata.gz: 3f3f93bbe70d686fef054fca76c6238d2d2142147d1b0861183a779480fb81971499c177acf7779d03c15909582b98552cf9186e737ae448bf096a76cb64a584
7
+ data.tar.gz: a863e23dab5dc2ab15e462943e5cf24b25310f3b096929f02faac1038483e274545a58b49f671d489db896a6d285fb7573950266cb7458db69445cf3a4c45fd4
data/lib/trivy-runner.rb CHANGED
@@ -37,8 +37,7 @@ class TrivyRunner
37
37
 
38
38
  verify_images(images)
39
39
  images.values.uniq.each do |image_id|
40
- return 1 unless system('trivy', 'image', '--image-src', 'docker', '--scanners', 'vuln',
41
- '--severity', severity.join(','), '--exit-code', '1', image_id)
40
+ return 1 unless scan(image_id, severity)
42
41
  end
43
42
  verify_images(images)
44
43
  0
@@ -49,6 +48,17 @@ class TrivyRunner
49
48
 
50
49
  private
51
50
 
51
+ def scan(image_id, severity)
52
+ environment = ENV.keys.grep(/\ATRIVY_/) - %w[TRIVY_IMAGE]
53
+ cache_dir = ENV.fetch('TRIVY_CACHE_DIR', '/root/.cache/trivy')
54
+ system('docker', 'run', '--rm', '--pull', 'always',
55
+ '--mount', 'type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock,readonly',
56
+ '--mount', "type=volume,src=trivy-cache,dst=#{cache_dir}",
57
+ *environment.flat_map { ['--env', _1] }, ENV.fetch('TRIVY_IMAGE', 'aquasec/trivy'),
58
+ 'image', '--cache-dir', cache_dir, '--image-src', 'docker', '--scanners', 'vuln',
59
+ '--severity', severity.join(','), '--exit-code', '1', image_id)
60
+ end
61
+
52
62
  def empty_compose?(file)
53
63
  document = YAML.safe_load(File.read(file), aliases: true)
54
64
  document.is_a?(Hash) && document['services'] == {}
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module BuildLabels
2
2
  class Builder
3
- VERSION = '0.0.80'
3
+ VERSION = '0.0.81'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: build-labels
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.80
4
+ version: 0.0.81
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artyom B