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.
145 lines
4.3 KiB
145 lines
4.3 KiB
4 months ago
|
UP_SQL = """
|
||
|
CREATE TABLE afe_test_parameters (
|
||
|
id INT PRIMARY KEY AUTO_INCREMENT,
|
||
|
test_id INT NOT NULL,
|
||
|
name VARCHAR(255) NOT NULL
|
||
|
) ENGINE = InnoDB;
|
||
|
|
||
|
ALTER TABLE afe_test_parameters
|
||
|
ADD CONSTRAINT afe_test_parameters_test_ibfk
|
||
|
FOREIGN KEY (test_id) REFERENCES afe_autotests (id);
|
||
|
|
||
|
ALTER TABLE afe_test_parameters
|
||
|
ADD CONSTRAINT afe_test_parameters_unique
|
||
|
UNIQUE KEY (test_id, name);
|
||
|
|
||
|
|
||
|
CREATE TABLE afe_parameterized_jobs (
|
||
|
id INT PRIMARY KEY AUTO_INCREMENT,
|
||
|
test_id INT NOT NULL,
|
||
|
label_id INT DEFAULT NULL,
|
||
|
use_container TINYINT(1) DEFAULT 0,
|
||
|
profile_only TINYINT(1) DEFAULT 0,
|
||
|
upload_kernel_config TINYINT(1) DEFAULT 0
|
||
|
) ENGINE = InnoDB;
|
||
|
|
||
|
ALTER TABLE afe_parameterized_jobs
|
||
|
ADD CONSTRAINT afe_parameterized_jobs_test_ibfk
|
||
|
FOREIGN KEY (test_id) REFERENCES afe_autotests (id);
|
||
|
|
||
|
ALTER TABLE afe_parameterized_jobs
|
||
|
ADD CONSTRAINT afe_parameterized_jobs_label_ibfk
|
||
|
FOREIGN KEY (label_id) REFERENCES afe_labels (id);
|
||
|
|
||
|
|
||
|
CREATE TABLE afe_kernels (
|
||
|
id INT PRIMARY KEY AUTO_INCREMENT,
|
||
|
version VARCHAR(255) NOT NULL,
|
||
|
cmdline VARCHAR(255) DEFAULT ''
|
||
|
) ENGINE = InnoDB;
|
||
|
|
||
|
ALTER TABLE afe_kernels
|
||
|
ADD CONSTRAINT afe_kernals_unique
|
||
|
UNIQUE KEY (version, cmdline);
|
||
|
|
||
|
|
||
|
CREATE TABLE afe_parameterized_jobs_kernels (
|
||
|
parameterized_job_id INT NOT NULL,
|
||
|
kernel_id INT NOT NULL,
|
||
|
PRIMARY KEY (parameterized_job_id, kernel_id)
|
||
|
) ENGINE = InnoDB;
|
||
|
|
||
|
ALTER TABLE afe_parameterized_jobs_kernels
|
||
|
ADD CONSTRAINT afe_parameterized_jobs_kernels_parameterized_job_ibfk
|
||
|
FOREIGN KEY (parameterized_job_id) REFERENCES afe_parameterized_jobs (id);
|
||
|
|
||
|
|
||
|
CREATE TABLE afe_parameterized_jobs_profilers (
|
||
|
id INT PRIMARY KEY AUTO_INCREMENT,
|
||
|
parameterized_job_id INT NOT NULL,
|
||
|
profiler_id INT NOT NULL
|
||
|
) ENGINE = InnoDB;
|
||
|
|
||
|
ALTER TABLE afe_parameterized_jobs_profilers
|
||
|
ADD CONSTRAINT afe_parameterized_jobs_profilers_parameterized_job_ibfk
|
||
|
FOREIGN KEY (parameterized_job_id) REFERENCES afe_parameterized_jobs (id);
|
||
|
|
||
|
ALTER TABLE afe_parameterized_jobs_profilers
|
||
|
ADD CONSTRAINT afe_parameterized_jobs_profilers_profile_ibfk
|
||
|
FOREIGN KEY (profiler_id) REFERENCES afe_profilers (id);
|
||
|
|
||
|
ALTER TABLE afe_parameterized_jobs_profilers
|
||
|
ADD CONSTRAINT afe_parameterized_jobs_profilers_unique
|
||
|
UNIQUE KEY (parameterized_job_id, profiler_id);
|
||
|
|
||
|
|
||
|
CREATE TABLE afe_parameterized_job_profiler_parameters (
|
||
|
id INT PRIMARY KEY AUTO_INCREMENT,
|
||
|
parameterized_job_profiler_id INT NOT NULL,
|
||
|
parameter_name VARCHAR(255) NOT NULL,
|
||
|
parameter_value TEXT NOT NULL,
|
||
|
parameter_type ENUM('int', 'float', 'string')
|
||
|
) ENGINE = InnoDB;
|
||
|
|
||
|
ALTER TABLE afe_parameterized_job_profiler_parameters
|
||
|
ADD CONSTRAINT afe_parameterized_job_profiler_parameters_ibfk
|
||
|
FOREIGN KEY (parameterized_job_profiler_id)
|
||
|
REFERENCES afe_parameterized_jobs_profilers (id);
|
||
|
|
||
|
ALTER TABLE afe_parameterized_job_profiler_parameters
|
||
|
ADD CONSTRAINT afe_parameterized_job_profiler_parameters_unique
|
||
|
UNIQUE KEY (parameterized_job_profiler_id, parameter_name);
|
||
|
|
||
|
|
||
|
CREATE TABLE afe_parameterized_job_parameters (
|
||
|
id INT PRIMARY KEY AUTO_INCREMENT,
|
||
|
parameterized_job_id INT NOT NULL,
|
||
|
test_parameter_id INT NOT NULL,
|
||
|
parameter_value TEXT NOT NULL,
|
||
|
parameter_type ENUM('int', 'float', 'string')
|
||
|
) ENGINE = InnoDB;
|
||
|
|
||
|
ALTER TABLE afe_parameterized_job_parameters
|
||
|
ADD CONSTRAINT afe_parameterized_job_parameters_job_ibfk
|
||
|
FOREIGN KEY (parameterized_job_id) REFERENCES afe_parameterized_jobs (id);
|
||
|
|
||
|
ALTER TABLE afe_parameterized_job_parameters
|
||
|
ADD CONSTRAINT afe_parameterized_job_parameters_test_parameter_ibfk
|
||
|
FOREIGN KEY (test_parameter_id) REFERENCES afe_test_parameters (id);
|
||
|
|
||
|
ALTER TABLE afe_parameterized_job_parameters
|
||
|
ADD CONSTRAINT afe_parameterized_job_parameters_unique
|
||
|
UNIQUE KEY (parameterized_job_id, test_parameter_id);
|
||
|
|
||
|
|
||
|
ALTER TABLE afe_jobs
|
||
|
MODIFY COLUMN control_file TEXT DEFAULT NULL;
|
||
|
|
||
|
ALTER TABLE afe_jobs
|
||
|
ADD COLUMN parameterized_job_id INT DEFAULT NULL;
|
||
|
|
||
|
ALTER TABLE afe_jobs
|
||
|
ADD CONSTRAINT afe_jobs_parameterized_job_ibfk
|
||
|
FOREIGN KEY (parameterized_job_id) REFERENCES afe_parameterized_jobs (id);
|
||
|
"""
|
||
|
|
||
|
|
||
|
DOWN_SQL = """
|
||
|
ALTER TABLE afe_jobs
|
||
|
DROP FOREIGN KEY afe_jobs_parameterized_job_ibfk;
|
||
|
|
||
|
ALTER TABLE afe_jobs
|
||
|
DROP COLUMN parameterized_job_id;
|
||
|
|
||
|
ALTER TABLE afe_jobs
|
||
|
MODIFY COLUMN control_file TEXT;
|
||
|
|
||
|
DROP TABLE afe_parameterized_job_parameters;
|
||
|
DROP TABLE afe_parameterized_job_profiler_parameters;
|
||
|
DROP TABLE afe_parameterized_jobs_profilers;
|
||
|
DROP TABLE afe_parameterized_jobs_kernels;
|
||
|
DROP TABLE afe_kernels;
|
||
|
DROP TABLE afe_parameterized_jobs;
|
||
|
DROP TABLE afe_test_parameters;
|
||
|
"""
|