mirror of
https://github.com/internetee/registry.git
synced 2025-07-01 16:53:37 +02:00
Merge branch 'task#104941754' into staging
# Conflicts: # lib/tasks/import.rake
This commit is contained in:
commit
821e864bc3
3 changed files with 25 additions and 11 deletions
|
@ -1,5 +1,8 @@
|
|||
module Legacy
|
||||
class Dnskey < Db
|
||||
self.table_name = :dnskey
|
||||
|
||||
belongs_to :object_registry, foreign_key: :id
|
||||
belongs_to :object, foreign_key: :id
|
||||
end
|
||||
end
|
||||
|
|
|
@ -2,6 +2,8 @@ module Legacy
|
|||
class Nsset < Db
|
||||
self.table_name = :nsset
|
||||
|
||||
belongs_to :object, foreign_key: :id
|
||||
belongs_to :object_state, foreign_key: :id, primary_key: :object_id
|
||||
has_many :hosts, foreign_key: :nssetid
|
||||
end
|
||||
end
|
||||
|
|
|
@ -212,7 +212,7 @@ namespace :import do
|
|||
end
|
||||
end
|
||||
|
||||
Contact.import contact_columns, contacts, validate: false, timestamps: false
|
||||
Contact.import contact_columns, contacts, {validate: false, timestamps: false}
|
||||
puts "-----> Imported #{count} new contacts in #{(Time.zone.now.to_f - start).round(2)} seconds"
|
||||
end
|
||||
|
||||
|
@ -267,6 +267,8 @@ namespace :import do
|
|||
creator_str
|
||||
updator_str
|
||||
legacy_domain_id
|
||||
created_at
|
||||
updated_at
|
||||
)
|
||||
|
||||
dnskey_columns = %w(
|
||||
|
@ -279,6 +281,7 @@ namespace :import do
|
|||
creator_str
|
||||
updator_str
|
||||
legacy_domain_id
|
||||
updated_at
|
||||
)
|
||||
|
||||
domains, nameservers, dnskeys, domain_contacts = [], [], [], []
|
||||
|
@ -353,7 +356,8 @@ namespace :import do
|
|||
end
|
||||
|
||||
# nameservers
|
||||
x.nsset.hosts.each do |host|
|
||||
nsset = x.nsset
|
||||
nsset.hosts.each do |host|
|
||||
ip_maps = host.host_ipaddr_maps
|
||||
ips = {}
|
||||
ip_maps.each do |ip_map|
|
||||
|
@ -368,7 +372,9 @@ namespace :import do
|
|||
ips[:ipv6].try(:strip),
|
||||
x.object_registry.try(:registrar).try(:name),
|
||||
x.object.try(:registrar).try(:name) ? x.object.try(:registrar).try(:name) : x.object_registry.try(:registrar).try(:name),
|
||||
x.id
|
||||
x.id,
|
||||
nsset.object_registry.try(:crdate),
|
||||
nsset.object.read_attribute(:update).nil? ? x.object_registry.try(:crdate) : x.object.read_attribute(:update)
|
||||
]
|
||||
end if x.nsset && x.nsset.hosts
|
||||
|
||||
|
@ -382,15 +388,16 @@ namespace :import do
|
|||
1, # ds_digest_type /SHA1)
|
||||
x.object_registry.try(:registrar).try(:name),
|
||||
x.object.try(:registrar).try(:name) ? x.object.try(:registrar).try(:name) : x.object_registry.try(:registrar).try(:name),
|
||||
x.id
|
||||
x.id,
|
||||
key.object.read_attribute(:update).nil? ? x.object_registry.try(:crdate) : x.object.read_attribute(:update)
|
||||
]
|
||||
end
|
||||
|
||||
if index % 10000 == 0 && index != 0
|
||||
Domain.import domain_columns, domains, {validate: false, timestamps: false}
|
||||
Nameserver.import nameserver_columns, nameservers, validate: false
|
||||
Dnskey.import dnskey_columns, dnskeys, validate: false
|
||||
DomainContact.import domain_contact_columns, domain_contacts, validate: false
|
||||
Nameserver.import nameserver_columns, nameservers, {validate: false, timestamps: false}
|
||||
Dnskey.import dnskey_columns, dnskeys, {validate: false, timestamps: false}
|
||||
DomainContact.import domain_contact_columns, domain_contacts, validate: false # created_at is taken from contact at the bottom
|
||||
domains, nameservers, dnskeys, domain_contacts = [], [], [], []
|
||||
end
|
||||
rescue => e
|
||||
|
@ -400,9 +407,9 @@ namespace :import do
|
|||
end
|
||||
|
||||
Domain.import domain_columns, domains, {validate: false, timestamps: false}
|
||||
Nameserver.import nameserver_columns, nameservers, validate: false
|
||||
Dnskey.import dnskey_columns, dnskeys, validate: false
|
||||
DomainContact.import domain_contact_columns, domain_contacts, validate: false
|
||||
Nameserver.import nameserver_columns, nameservers, {validate: false, timestamps: false}
|
||||
Dnskey.import dnskey_columns, dnskeys, {validate: false, timestamps: false}
|
||||
DomainContact.import domain_contact_columns, domain_contacts, {validate: false, timestamps: false}
|
||||
|
||||
puts '-----> Updating relations...'
|
||||
|
||||
|
@ -429,7 +436,9 @@ namespace :import do
|
|||
# contacts
|
||||
ActiveRecord::Base.connection.execute(
|
||||
"UPDATE domain_contacts "\
|
||||
"SET contact_id = contacts.id "\
|
||||
"SET contact_id = contacts.id, "\
|
||||
"updated_at = contacts.updated_at, "\
|
||||
"created_at = contacts.created_at "\
|
||||
"FROM contacts "\
|
||||
"WHERE contacts.legacy_id = legacy_contact_id "\
|
||||
"AND legacy_contact_id IS NOT NULL "\
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue