You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mock-gui/db/migrations/202502150000000_create.rb

83 lines
2.3 KiB

require "sequel"
Sequel.migration do
change do
create_table(:repos) do
primary_key :id
String :reponame, :null => false, :unique => true
String :descr, text: true
Datetime :create_at, default: Sequel.lit("CURRENT_TIMESTAMP")
Integer :public
end
create_table(:projects) do
primary_key :id
String :projname
String :descr, text: true
Integer :public
String :remote_address, text: true
String :remote_command, text: true
Datetime :create_at, default: Sequel.lit("CURRENT_TIMESTAMP")
end
create_table(:repos_projects) do
foreign_key :proj_id, :projects, :key => :id
foreign_key :repo_id, :repos, :key => :id
primary_key [:proj_id, :repo_id]
end
create_table(:recips) do
primary_key :id
String :content, text: true
String :filepath, text: true
String :descr, text: true
Datetime :create_at, default: Sequel.lit("CURRENT_TIMESTAMP")
end
create_table(:repos_recips) do
foreign_key :repo_id, :repos, :key => :id
foreign_key :recip_id, :recips, :key => :id
primary_key [:recip_id, :repo_id]
end
create_table(:rpms) do
primary_key :id
String :savepath, text: true
String :rpmname, text: true
Integer :sign
String :signpath, text: true
String :filehash, text: true
foreign_key :repo_id, :repos, :key => :id
end
create_table(:buildtask) do
primary_key :id
foreign_key :repo_id, :repos, :key => :id
foreign_key :proj_id, :projects, :key => :id
Datetime :create_at, default: Sequel.lit("CURRENT_TIMESTAMP")
String :logpath, text: true
Integer :result
String :errlogpath, text: true
end
create_table(:build_rpm) do
foreign_key :build_id, :buildtask, :key => :id
foreign_key :rpm_id, :rpms, :key => :id
primary_key [:build_id, :rpm_id]
end
create_table(:projects_projects) do
foreign_key :proj_id, :projects, :key => :id
foreign_key :proj_id_repository, :projects, :key => :id
primary_key [:proj_id, :proj_id_repository]
end
create_table(:projects_repos_spec) do
foreign_key :proj_id, :projects, :key => :id
foreign_key :repo_id, :repos, :key => :id
String :spec_name, :null => false, text: true
primary_key [:proj_id, :repo_id]
end
end
end