added cvemon in a worker now with upsert_all
This commit is contained in:
parent
44be58eeb3
commit
dfbca14799
5 changed files with 24 additions and 10 deletions
10
app/workers/cve_list_importer_worker.rb
Normal file
10
app/workers/cve_list_importer_worker.rb
Normal file
|
@ -0,0 +1,10 @@
|
|||
require '/data_importer/lib/importers/cve_list_importer.rb'
|
||||
|
||||
class CveListImporterWorker
|
||||
include Faktory::Job
|
||||
|
||||
def perform(*args)
|
||||
puts "Hello, I am #{jid} with args #{args}"
|
||||
CveListImporter.new.import
|
||||
end
|
||||
end
|
10
app/workers/cvemon_cve_importer_worker.rb
Normal file
10
app/workers/cvemon_cve_importer_worker.rb
Normal file
|
@ -0,0 +1,10 @@
|
|||
require '/data_importer/lib/importers/cvemon_cve_importer.rb'
|
||||
|
||||
class CvemonCveImporterWorker
|
||||
include Faktory::Job
|
||||
|
||||
def perform(*args)
|
||||
puts "Hello, I am #{jid} with args #{args}"
|
||||
CvemonCveImporter.new.import
|
||||
end
|
||||
end
|
|
@ -4,6 +4,7 @@ class CreateCvemonCves < ActiveRecord::Migration[7.0]
|
|||
t.string :cve_id
|
||||
t.index :cve_id, unique: true
|
||||
t.string :urls, array: true
|
||||
t.timestamps
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -43,6 +43,8 @@ ActiveRecord::Schema[7.0].define(version: 2022_04_11_181501) do
|
|||
create_table "cvemon_cves", force: :cascade do |t|
|
||||
t.string "cve_id"
|
||||
t.string "urls", array: true
|
||||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
t.index ["cve_id"], name: "index_cvemon_cves_on_cve_id", unique: true
|
||||
end
|
||||
|
||||
|
|
|
@ -20,14 +20,6 @@ class CvemonCveImporter
|
|||
end
|
||||
end
|
||||
|
||||
def bulk_insert(cves)
|
||||
CvemonCve.bulk_insert do |worker|
|
||||
cves.each do |attrs|
|
||||
worker.add(attrs)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def import
|
||||
feed = get_cve_data
|
||||
cve_ids = feed.keys
|
||||
|
@ -35,7 +27,6 @@ class CvemonCveImporter
|
|||
cves = cve_ids.map do |cve_id|
|
||||
{ :cve_id => cve_id, :urls => feed[cve_id] }
|
||||
end
|
||||
|
||||
bulk_insert(cves)
|
||||
CvemonCve.upsert_all(cves, unique_by: :cve_id)
|
||||
end
|
||||
end
|
Loading…
Add table
Reference in a new issue