setup/postgres/psql_create_tables.sql

Mon, 18 May 2020 21:05:57 +0200

author
Mike Becker <universe@uap-core.de>
date
Mon, 18 May 2020 21:05:57 +0200
changeset 62
833e0385572a
parent 37
fecda0f466e6
child 75
33b6843fdf8a
permissions
-rw-r--r--

adds data model for issues

universe@20 1 -- This script creates the module management tables
universe@20 2 --
universe@2 3
universe@37 4 create table lpit_user (
universe@20 5 userid serial primary key,
universe@20 6 username varchar(50) not null unique,
universe@37 7 mail varchar(50),
universe@20 8 lastname varchar(50),
universe@20 9 givenname varchar(50)
universe@20 10 );
universe@37 11
universe@37 12 create table lpit_project (
universe@37 13 id serial primary key,
universe@37 14 name varchar(20) not null unique,
universe@37 15 description varchar(200),
universe@37 16 repoUrl varchar(50),
universe@37 17 owner integer references lpit_user(userid)
universe@37 18 );
universe@37 19
universe@37 20 create type version_status as enum (
universe@37 21 'Future',
universe@37 22 'Unreleased',
universe@37 23 'Released',
universe@37 24 'LTS',
universe@37 25 'Deprecated'
universe@37 26 );
universe@37 27
universe@37 28 create table lpit_version (
universe@37 29 id serial primary key,
universe@37 30 project integer not null references lpit_project(id),
universe@37 31 name varchar(20) not null,
universe@37 32 ordinal integer not null default 0,
universe@37 33 status version_status not null default 'Future'
universe@37 34 );
universe@62 35
universe@62 36 create type issue_status as enum (
universe@62 37 'InSpecification',
universe@62 38 'ToDo',
universe@62 39 'Scheduled',
universe@62 40 'InProgress',
universe@62 41 'InReview',
universe@62 42 'Done',
universe@62 43 'Rejected',
universe@62 44 'Withdrawn'
universe@62 45 );
universe@62 46
universe@62 47 create type issue_category as enum (
universe@62 48 'Feature',
universe@62 49 'Improvement',
universe@62 50 'Bug',
universe@62 51 'Task',
universe@62 52 'Test'
universe@62 53 );
universe@62 54
universe@62 55 create table lpit_issue (
universe@62 56 id serial primary key,
universe@62 57 project integer not null references lpit_project(id),
universe@62 58 status issue_status not null default 'InSpecification',
universe@62 59 category issue_category not null default 'Feature',
universe@62 60 subject varchar(20) not null,
universe@62 61 description text,
universe@62 62 version_plan integer references lpit_version(id),
universe@62 63 version_done integer references lpit_version(id),
universe@62 64 created timestamp with time zone not null default now(),
universe@62 65 updated timestamp with time zone not null default now(),
universe@62 66 eta date
universe@62 67 );

mercurial