summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.server/WebContent/data/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'src/com.gluster.storage.management.server/WebContent/data/scripts')
-rw-r--r--src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/0-version.sql2
-rw-r--r--src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/1-security-schema.sql26
-rw-r--r--src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/2-users-authorities-groups.sql21
-rw-r--r--src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/3-cluster-servers.sql16
4 files changed, 65 insertions, 0 deletions
diff --git a/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/0-version.sql b/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/0-version.sql
new file mode 100644
index 00000000..4c3d81d1
--- /dev/null
+++ b/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/0-version.sql
@@ -0,0 +1,2 @@
+create table version (version varchar(16) not null primary key);
+insert into version(version) values('1.0.0'); \ No newline at end of file
diff --git a/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/1-security-schema.sql b/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/1-security-schema.sql
new file mode 100644
index 00000000..fdde5823
--- /dev/null
+++ b/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/1-security-schema.sql
@@ -0,0 +1,26 @@
+create table users(
+ username varchar(50) not null primary key,
+ password varchar(50) not null,
+ enabled smallint not null
+ );
+
+ create table authorities (
+ username varchar(50) not null,
+ authority varchar(50) not null,
+ constraint fk_authorities_users foreign key(username) references users(username));
+ create unique index ix_auth_username on authorities (username,authority);
+
+create table groups (
+ id bigint generated by default as identity(start with 0) primary key,
+ group_name varchar(50) not null);
+
+create table group_authorities (
+ group_id bigint not null,
+ authority varchar(50) not null,
+ constraint fk_group_authorities_group foreign key(group_id) references groups(id));
+
+create table group_members (
+ id bigint generated by default as identity(start with 0) primary key,
+ username varchar(50) not null,
+ group_id bigint not null,
+ constraint fk_group_members_group foreign key(group_id) references groups(id));
diff --git a/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/2-users-authorities-groups.sql b/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/2-users-authorities-groups.sql
new file mode 100644
index 00000000..35ccf965
--- /dev/null
+++ b/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/2-users-authorities-groups.sql
@@ -0,0 +1,21 @@
+-- Create users
+insert into users(username, password, enabled) values ('gluster','gluster',1);
+insert into users(username, password, enabled) values ('guest','guest',1);
+
+-- Assign authorities to users (to be removed after implementing user group functionality)
+insert into authorities(username,authority) values ('gluster','ROLE_USER');
+insert into authorities(username,authority) values ('gluster','ROLE_ADMIN');
+insert into authorities(username,authority) values ('guest','ROLE_USER');
+
+-- Create user groups
+insert into groups(group_name) values ('Users');
+insert into groups(group_name) values ('Administrators');
+
+-- Add authorities to groups (functionality not yet implemented in code)
+insert into group_authorities(group_id, authority) select id,'ROLE_USER' from groups where group_name='Users';
+insert into group_authorities(group_id, authority) select id,'ROLE_USER' from groups where group_name='Administrators';
+insert into group_authorities(group_id, authority) select id,'ROLE_ADMIN' from groups where group_name='Administrators';
+
+-- Assign group members
+insert into group_members(group_id, username) select id,'guest' from groups where group_name='Users';
+insert into group_members(group_id, username) select id,'gluster' from groups where group_name='Administrators'; \ No newline at end of file
diff --git a/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/3-cluster-servers.sql b/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/3-cluster-servers.sql
new file mode 100644
index 00000000..17ca62d2
--- /dev/null
+++ b/src/com.gluster.storage.management.server/WebContent/data/scripts/1.0.0/3-cluster-servers.sql
@@ -0,0 +1,16 @@
+create table cluster_info (
+ id bigint generated by default as identity,
+ name varchar(255),
+ primary key (id));
+
+create unique index ix_cluster_name on cluster_info (name);
+
+create table server_info (
+ id bigint generated by default as identity,
+ name varchar(255),
+ cluster_id bigint,
+ primary key (id));
+
+create unique index ix_cluster_server on server_info (name, cluster_id);
+
+alter table server_info add constraint FK_CLUSTER_ID foreign key (cluster_id) references cluster_info(id); \ No newline at end of file