39 lines
1 KiB
SQL
39 lines
1 KiB
SQL
create table users (
|
|
id text primary key,
|
|
email text not null unique,
|
|
password text not null,
|
|
is_active integer not null default 0,
|
|
is_admin integer not null default 0
|
|
);
|
|
|
|
create table signup_requests (
|
|
id text not null,
|
|
user_id text not null,
|
|
reason text,
|
|
|
|
foreign key(user_id) references users(id) on delete cascade
|
|
);
|
|
|
|
create table websites (
|
|
name text primary key,
|
|
is_ready integer not null default 0
|
|
);
|
|
|
|
create table builds (
|
|
id integer primary key autoincrement,
|
|
website_name text not null,
|
|
-- waiting | in_progress | success | error
|
|
build_status text not null,
|
|
|
|
foreign key(website_name) references websites(name) on update cascade on delete cascade
|
|
);
|
|
|
|
create table website_members (
|
|
website_name text not null,
|
|
user_id text not null,
|
|
is_admin integer not null default 0,
|
|
|
|
foreign key(website_name) references websites(name) on update cascade on delete cascade,
|
|
foreign key(user_id) references users(id) on delete cascade,
|
|
primary key (website_name, user_id)
|
|
);
|