]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-4463 Added the new db tables related to permission templates
authorJean-Baptiste Vilain <jean-baptiste.vilain@sonarsource.com>
Tue, 2 Jul 2013 14:13:40 +0000 (16:13 +0200)
committerJean-Baptiste Vilain <jean-baptiste.vilain@sonarsource.com>
Tue, 2 Jul 2013 14:13:40 +0000 (16:13 +0200)
sonar-core/src/main/java/org/sonar/core/persistence/DatabaseUtils.java
sonar-core/src/main/java/org/sonar/core/persistence/DatabaseVersion.java
sonar-core/src/main/resources/org/sonar/core/persistence/rows-h2.sql
sonar-core/src/main/resources/org/sonar/core/persistence/schema-h2.ddl
sonar-server/src/main/webapp/WEB-INF/db/migrate/415_create_permission_templates.rb [new file with mode: 0644]
sonar-server/src/main/webapp/WEB-INF/db/migrate/416_create_permission_templates_users.rb [new file with mode: 0644]
sonar-server/src/main/webapp/WEB-INF/db/migrate/417_create_permission_templates_groups.rb [new file with mode: 0644]

index d981d4275361b6e9dbf7561d377af5bf80d8f63f..222f6090d003b4cfda6222370597ad04751e2208 100644 (file)
@@ -71,6 +71,9 @@ public final class DatabaseUtils {
     "measure_filter_favourites",
     "metrics",
     "notifications",
+    "permission_templates",
+    "permission_templates_users",
+    "permission_templates_groups",
     "projects",
     "project_links",
     "project_measures",
index f85f02253b9d7a48782443015bcf704f4860d405..16bde3cd39723dd2bafba8efad9e2aae267d8e26 100644 (file)
@@ -32,7 +32,7 @@ import java.util.List;
  */
 public class DatabaseVersion implements BatchComponent, ServerComponent {
 
-  public static final int LAST_VERSION = 414;
+  public static final int LAST_VERSION = 417;
 
   public static enum Status {
     UP_TO_DATE, REQUIRES_UPGRADE, REQUIRES_DOWNGRADE, FRESH_INSTALL
index dbac000ea11c1fbb65b5a1895bbe2ec2e24a7eba..c1ee5787569f98869219acc77b83a11879714f3a 100644 (file)
@@ -177,6 +177,9 @@ INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('411');
 INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('412');
 INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('413');
 INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('414');
+INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('415');
+INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('416');
+INSERT INTO SCHEMA_MIGRATIONS(VERSION) VALUES ('417');
 
 INSERT INTO USERS(ID, LOGIN, NAME, EMAIL, CRYPTED_PASSWORD, SALT, CREATED_AT, UPDATED_AT, REMEMBER_TOKEN, REMEMBER_TOKEN_EXPIRES_AT) VALUES (1, 'admin', 'Administrator', '', 'a373a0e667abb2604c1fd571eb4ad47fe8cc0878', '48bc4b0d93179b5103fd3885ea9119498e9d161b', '2011-09-26 22:27:48.0', '2011-09-26 22:27:48.0', null, null);
 ALTER TABLE USERS ALTER COLUMN ID RESTART WITH 2;
index 99c8814b2c5054e9bf449b2bb85ec3527fea515f..22b9d284ae9bcb6342b5d2fcbb4b9acc4e24a028 100644 (file)
@@ -532,6 +532,30 @@ CREATE TABLE "SNAPSHOT_DATA" (
   "UPDATED_AT" TIMESTAMP,
 );
 
+CREATE TABLE "PERMISSION_TEMPLATES" (
+  "ID" INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1),
+  "NAME" VARCHAR(100) NOT NULL,
+  "DESCRIPTION" VARCHAR(4000),
+  "CREATED_AT" TIMESTAMP,
+  "UPDATED_AT" TIMESTAMP
+);
+
+CREATE TABLE "PERMISSION_TEMPLATES_USERS" (
+  "ID" INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1),
+  "USER_LOGIN" VARCHAR(40) NOT NULL,
+  "TEMPLATE_NAME" VARCHAR(100) NOT NULL,
+  "CREATED_AT" TIMESTAMP,
+  "UPDATED_AT" TIMESTAMP
+);
+
+CREATE TABLE "PERMISSION_TEMPLATES_GROUPS" (
+  "ID" INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1),
+  "GROUP_ID" INTEGER,
+  "TEMPLATE_NAME" VARCHAR(100) NOT NULL,
+  "CREATED_AT" TIMESTAMP,
+  "UPDATED_AT" TIMESTAMP
+);
+
 -- ----------------------------------------------
 -- DDL Statements for indexes
 -- ----------------------------------------------
diff --git a/sonar-server/src/main/webapp/WEB-INF/db/migrate/415_create_permission_templates.rb b/sonar-server/src/main/webapp/WEB-INF/db/migrate/415_create_permission_templates.rb
new file mode 100644 (file)
index 0000000..58ace28
--- /dev/null
@@ -0,0 +1,35 @@
+#
+# Sonar, entreprise quality control tool.
+# Copyright (C) 2008-2013 SonarSource
+# mailto:contact AT sonarsource DOT com
+#
+# SonarQube is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 3 of the License, or (at your option) any later version.
+#
+# SonarQube is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with this program; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+#
+#
+# @since Sonar 3.7
+# See SONAR-4463
+#
+class CreatePermissionTemplates < ActiveRecord::Migration
+
+  def self.up
+    create_table :permission_templates do |t|
+      t.column :name,        :string,  :null => false,   :limit => 100
+      t.column :description, :string,  :null => true,    :limit => 4000
+      t.column :created_at,  :datetime,  :null => true
+      t.column :updated_at,  :datetime,  :null => true
+    end
+  end
+
+end
\ No newline at end of file
diff --git a/sonar-server/src/main/webapp/WEB-INF/db/migrate/416_create_permission_templates_users.rb b/sonar-server/src/main/webapp/WEB-INF/db/migrate/416_create_permission_templates_users.rb
new file mode 100644 (file)
index 0000000..36b3d22
--- /dev/null
@@ -0,0 +1,35 @@
+#
+# Sonar, entreprise quality control tool.
+# Copyright (C) 2008-2013 SonarSource
+# mailto:contact AT sonarsource DOT com
+#
+# SonarQube is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 3 of the License, or (at your option) any later version.
+#
+# SonarQube is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with this program; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+#
+#
+# @since Sonar 3.7
+# See SONAR-4463
+#
+class CreatePermissionTemplatesUsers < ActiveRecord::Migration
+
+  def self.up
+    create_table :permission_templates_users do |t|
+      t.column :user_login,       :string,  :null => false,   :limit => 40
+      t.column :template_name,    :string,  :null => false,   :limit => 100
+      t.column :created_at,       :datetime,  :null => true
+      t.column :updated_at,       :datetime,  :null => true
+    end
+  end
+
+end
\ No newline at end of file
diff --git a/sonar-server/src/main/webapp/WEB-INF/db/migrate/417_create_permission_templates_groups.rb b/sonar-server/src/main/webapp/WEB-INF/db/migrate/417_create_permission_templates_groups.rb
new file mode 100644 (file)
index 0000000..3c6b08d
--- /dev/null
@@ -0,0 +1,35 @@
+#
+# Sonar, entreprise quality control tool.
+# Copyright (C) 2008-2013 SonarSource
+# mailto:contact AT sonarsource DOT com
+#
+# SonarQube is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 3 of the License, or (at your option) any later version.
+#
+# SonarQube is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with this program; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+#
+#
+# @since Sonar 3.7
+# See SONAR-4463
+#
+class CreatePermissionTemplatesGroups < ActiveRecord::Migration
+
+  def self.up
+    create_table :permission_templates_groups do |t|
+      t.column :group_id,         :integer,   :null => true
+      t.column :template_name,    :string,    :null => false,   :limit => 100
+      t.column :created_at,       :datetime,  :null => true
+      t.column :updated_at,       :datetime,  :null => true
+    end
+  end
+
+end
\ No newline at end of file