· 7 years ago · Dec 17, 2018, 02:50 PM
1mirror_db = Rise::MirrorManager.configuration.database
2unless File.exist?(mirror_db)
3 SQLite3::Database.new(mirror_db) do |db|
4 db.execute %{
5 CREATE TABLE IF NOT EXISTS mirrors(
6 mirror_id INTEGER NOT NULL PRIMARY KEY,
7 name TEXT NOT NULL UNIQUE
8 );}
9
10 db.execute %{
11 CREATE TABLE IF NOT EXISTS sync_stats(
12 sync_stats_id INTEGER NOT NULL PRIMARY KEY,
13 mirror_id INTEGER NOT NULL,
14 pre_cmd_status TEXT,
15 sync_status TEXT,
16 post_cmd_status TEXT,
17 FOREIGN KEY (mirror_id) REFERENCES mirror (mirror_id)
18 ON DELETE CASCADE ON UPDATE NO ACTION
19 );}
20
21 db.execute <<-SQL
22 INSERT INTO mirrors (name) VALUES
23 ('Ubuntu'),
24 ('CentOS'),
25 ('ArchLinux'),
26 ('Alpine'),
27 ('RISE');
28 SQL
29 end
30end