Class: Mxrb::OfficialMarketplace::SecurityAuditor

Inherits:
Object
  • Object
show all
Defined in:
lib/mxrb/official_marketplace/content_api.rb

Overview

Reviews Content API-backed lock entries for updates and known vulnerabilities.

Instance Method Summary collapse

Constructor Details

#initialize(target:, api: nil) ⇒ SecurityAuditor

Returns a new instance of SecurityAuditor.



255
256
257
258
# File 'lib/mxrb/official_marketplace/content_api.rb', line 255

def initialize(target:, api: nil)
  @target = File.expand_path(target)
  @api = api
end

Instance Method Details

#audit(mendix_version: nil) ⇒ Object



260
261
262
263
264
265
266
267
268
269
270
# File 'lib/mxrb/official_marketplace/content_api.rb', line 260

def audit(mendix_version: nil)
  entries = OfficialMarketplace.lock(@target).fetch('packages').select do |_name, entry|
    entry['source'] == 'mendix' && entry['content_id']
  end
  return [] if entries.empty?

  @api ||= ContentApi.new
  entries.map do |name, entry|
    audit_entry(name, entry, mendix_version)
  end
end