21
1
Fork 0
mirror of https://github.com/Evolix/chexpire.git synced 2024-04-29 15:30:49 +02:00
chexpire/db/seeds.rb
2018-07-05 10:27:48 +02:00

123 lines
2.8 KiB
Ruby

CheckLog.destroy_all
Notification.destroy_all
Check.destroy_all
User.destroy_all
user1 = User.create!(
email: "colin@example.org",
password: "password",
tos_accepted: true,
confirmed_at: Time.now,
locale: :fr,
)
user2 = User.create!(
email: "colin+en@example.org",
password: "password",
tos_accepted: true,
confirmed_at: Time.now,
locale: :en,
)
check_chexpire_org = Check.create!(
user: user1,
kind: :domain,
domain: "chexpire.org",
domain_expires_at: 1.week.from_now,
domain_updated_at: 6.months.ago,
domain_created_at: Time.new(2016, 8, 4, 12, 15, 1),
comment: "The date are fake, this is a seed !",
vendor: "Some random registrar",
)
check_chexpire_org_error = Check.create!(
user: user1,
kind: :domain,
domain: "chexpire-error.org",
domain_expires_at: 1.week.from_now,
domain_updated_at: 6.months.ago,
domain_created_at: Time.new(2016, 8, 4, 12, 15, 1),
comment: "The date are fake, this is a seed !",
vendor: "Some random registrar",
last_run_at: 20.minutes.ago,
last_success_at: 4.days.ago,
)
ssl_check_chexpire_org = Check.create!(
user: user1,
kind: :ssl,
domain: "www.chexpire.org",
domain_expires_at: 1.week.from_now,
domain_updated_at: 6.months.ago,
domain_created_at: Time.new(2016, 8, 4, 12, 15, 1),
comment: "The date are fake, this is a seed !",
vendor: "Some random registrar",
)
ssl_check_chexpire_org_error = Check.create!(
user: user1,
kind: :ssl,
domain: "chexpire-error.org",
domain_expires_at: 1.week.from_now,
domain_updated_at: 6.months.ago,
domain_created_at: Time.new(2016, 8, 4, 12, 15, 1),
comment: "The date are fake, this is a seed !",
vendor: "Some random registrar",
last_run_at: 20.minutes.ago,
last_success_at: 4.days.ago,
)
100.times do |i|
ext = %w[com net org fr].sample
word = (0...rand(4..12)).map { (97 + rand(26)).chr }.join
Check.create!(
user: [user1, user2].sample,
kind: Check.kinds.keys.sample,
domain: "#{word}.#{ext}",
domain_expires_at: rand(8..300).days.from_now,
domain_updated_at: rand(1..300).days.ago,
domain_created_at: rand(301..3000).days.ago,
)
end
Notification.create!(
check: check_chexpire_org,
interval: 15,
channel: :email,
recipient: "colin@example.org",
status: :pending,
)
Notification.create!(
check: check_chexpire_org_error,
interval: 15,
channel: :email,
recipient: "colin@example.org",
status: :pending,
)
Notification.create!(
check: ssl_check_chexpire_org,
interval: 15,
channel: :email,
recipient: "colin@example.org",
status: :pending,
)
Notification.create!(
check: ssl_check_chexpire_org_error,
interval: 15,
channel: :email,
recipient: "colin@example.org",
status: :pending,
)
puts "\e[0;32mDone 👌\e[0m"
puts " "
puts "--------------------"
puts "Users: #{User.count}"
puts "Checks: #{Check.count}"
puts "Notifications: #{Notification.count}"