50 lines
1.9 KiB
SQL
50 lines
1.9 KiB
SQL
-- fix this fk ref
|
|
ALTER TABLE vm_template DROP FOREIGN KEY fk_template_region;
|
|
alter table vm_template
|
|
add constraint fk_template_region foreign key (region_id) references vm_host_region (id);
|
|
|
|
create table vm_custom_pricing
|
|
(
|
|
id integer unsigned not null auto_increment primary key,
|
|
name varchar(100) not null,
|
|
enabled bit(1) not null,
|
|
created timestamp default current_timestamp,
|
|
expires timestamp,
|
|
region_id integer unsigned not null,
|
|
currency varchar(5) not null,
|
|
cpu_cost float not null,
|
|
memory_cost float not null,
|
|
ip4_cost float not null,
|
|
ip6_cost float not null,
|
|
|
|
constraint fk_custom_pricing_region foreign key (region_id) references vm_host_region (id)
|
|
);
|
|
create table vm_custom_pricing_disk
|
|
(
|
|
id integer unsigned not null auto_increment primary key,
|
|
pricing_id integer unsigned not null,
|
|
kind smallint unsigned not null,
|
|
interface smallint unsigned not null,
|
|
cost float not null,
|
|
|
|
constraint fk_custom_pricing_disk foreign key (pricing_id) references vm_custom_pricing (id)
|
|
);
|
|
ALTER TABLE vm MODIFY COLUMN template_id int (10) unsigned NULL;
|
|
ALTER TABLE vm
|
|
add COLUMN custom_template_id int(10) unsigned NULL;
|
|
|
|
create table vm_custom_template
|
|
(
|
|
id integer unsigned not null auto_increment primary key,
|
|
cpu tinyint unsigned not null,
|
|
memory bigint unsigned not null,
|
|
disk_size bigint unsigned not null,
|
|
disk_type smallint unsigned not null,
|
|
disk_interface smallint unsigned not null,
|
|
pricing_id integer unsigned not null,
|
|
|
|
constraint fk_custom_template_pricing foreign key (pricing_id) references vm_custom_pricing (id)
|
|
);
|
|
alter table vm
|
|
add constraint fk_vm_custom_template foreign key (custom_template_id) references vm_custom_template (id);
|