25 lines
980 B
SQL
25 lines
980 B
SQL
-- Software packages table for uploaded installers
|
|
CREATE TABLE software_packages (
|
|
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
organization_id UUID NOT NULL REFERENCES organizations(id),
|
|
name VARCHAR(255) NOT NULL,
|
|
description TEXT,
|
|
version VARCHAR(100) NOT NULL,
|
|
package_type VARCHAR(50) NOT NULL,
|
|
platform VARCHAR(50) NOT NULL,
|
|
architecture VARCHAR(50) NOT NULL,
|
|
filename VARCHAR(500) NOT NULL,
|
|
file_size BIGINT NOT NULL,
|
|
checksum VARCHAR(255),
|
|
install_command TEXT,
|
|
tags JSONB NOT NULL DEFAULT '[]',
|
|
metadata JSONB NOT NULL DEFAULT '{}',
|
|
uploaded_by_user_id UUID NOT NULL REFERENCES users(id),
|
|
created_at TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW(),
|
|
updated_at TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW()
|
|
);
|
|
|
|
CREATE INDEX idx_software_packages_org ON software_packages(organization_id);
|
|
CREATE INDEX idx_software_packages_platform ON software_packages(platform);
|
|
CREATE INDEX idx_software_packages_name ON software_packages(name);
|