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.
81 lines
2.5 KiB
81 lines
2.5 KiB
CREATE SCHEMA osh; |
|
|
|
GRANT USAGE ON SCHEMA osh TO postgres; |
|
|
|
CREATE TABLE IF NOT EXISTS osh.offerings( |
|
offering_id VARCHAR(100), |
|
description VARCHAR(200), |
|
PRIMARY KEY (offeringId) |
|
); |
|
|
|
CREATE TABLE IF NOT EXISTS osh.results( |
|
results_id SERIAL, |
|
datetime TIMESTAMP WITHOUT TIME ZONE DEFAULT (NOW() AT TIME ZONE 'utc') NOT NULL, |
|
state BOOLEAN, |
|
logs bytea, |
|
task_reference VARCHAR(50), |
|
PRIMARY KEY (results_id) |
|
); |
|
|
|
|
|
CREATE TABLE IF NOT EXISTS osh.scans( |
|
scan_id SERIAL, |
|
offering_id VARCHAR(100), |
|
event_id VARCHAR(100) NOT NULL, |
|
is_managed_service BOOLEAN NOT NULL, |
|
component_list VARCHAR(100), |
|
datetime TIMESTAMP WITHOUT TIME ZONE DEFAULT (NOW() AT TIME ZONE 'utc') NOT NULL, |
|
owner VARCHAR(50) NOT NULL, |
|
results SERIAL, |
|
status VARCHAR (50) CONSTRAINT valid_status CHECK(status in ('PENDING', 'DELETED', 'COMPLETED', 'IN PROGRESS')), |
|
last_updated TIMESTAMP WITHOUT TIME ZONE DEFAULT (NOW() AT TIME ZONE 'utc') NOT NULL, |
|
PRIMARY KEY(scan_id), |
|
FOREIGN KEY (offering_id) REFERENCES osh.offerings(offering_id), |
|
FOREIGN KEY (results) REFERENCES osh.results(results_id) |
|
); |
|
|
|
CREATE TABLE IF NOT EXISTS osh.archive( |
|
scan_id SERIAL, |
|
offering_id VARCHAR(100), |
|
event_id VARCHAR(100) NOT NULL, |
|
is_managed_service BOOLEAN NOT NULL, |
|
component_list VARCHAR(100), |
|
datetime TIMESTAMP WITHOUT TIME ZONE DEFAULT (NOW() AT TIME ZONE 'utc') NOT NULL, |
|
owner VARCHAR(50) NOT NULL, |
|
results SERIAL, |
|
status VARCHAR (50) CONSTRAINT valid_status CHECK(status in ('PENDING', 'DELETED', 'COMPLETED', 'IN PROGRESS')), |
|
last_updated TIMESTAMP WITHOUT TIME ZONE DEFAULT (NOW() AT TIME ZONE 'utc') NOT NULL, |
|
PRIMARY KEY(scan_id), |
|
FOREIGN KEY (offering_id) REFERENCES osh.offerings(offering_id), |
|
FOREIGN KEY (results) REFERENCES osh.results(results_id) |
|
); |
|
|
|
CREATE TABLE IF NOT EXISTS osh.gitscans ( |
|
id SERIAL, |
|
build_system_type VARCHAR(80), |
|
repository VARCHAR(150), |
|
reference VARCHAR(100), |
|
commit_id VARCHAR(100), |
|
-- SHA256 has a length of 256 bits, so 256 bits would represent 64 hex characters |
|
hashsum VARCHAR(64), |
|
PRIMARY KEY(id) |
|
); |
|
|
|
CREATE TABLE IF NOT EXISTS osh.pncscans( |
|
id SERIAL, |
|
build_system_type VARCHAR(80), |
|
build_id VARCHAR(100), |
|
PRIMARY KEY(id) |
|
); |
|
|
|
CREATE TABLE IF NOT EXISTS osh.brewscans( |
|
id SERIAL, |
|
build_system_type VARCHAR(80), |
|
brew_id VARCHAR(100), |
|
brew_nvr VARCHAR(100), |
|
pnc_id VARCHAR(100), |
|
artifact_type VARCHAR(100), |
|
file_name VARCHAR(100), |
|
built_from_source BOOLEAN, |
|
PRIMARY KEY(id) |
|
);
|
|
|