summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Bugzilla/Hook.pm9
-rw-r--r--Bugzilla/Install/DB.pm2
-rw-r--r--extensions/Example/Extension.pm6
3 files changed, 17 insertions, 0 deletions
diff --git a/Bugzilla/Hook.pm b/Bugzilla/Hook.pm
index 1b4bdd971..abedfde4a 100644
--- a/Bugzilla/Hook.pm
+++ b/Bugzilla/Hook.pm
@@ -718,6 +718,15 @@ during an installation or upgrade. If you need to modify your custom
schema or add new columns to existing tables, do it here. No params are
passed.
+=head2 install_update_db_fielddefs
+
+This is used to update the schema of the fielddefs table before
+any other schema changes take place. No params are passed.
+
+This hook should only be used for updating the schema of the C<fielddefs>
+table. Do not modify any other table in this hook. To modify other tables, use
+the L</install_update_db> hook.
+
=head2 db_schema_abstract_schema
This allows you to add tables to Bugzilla. Note that we recommend that you
diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm
index 9cbd66f42..fee87fa92 100644
--- a/Bugzilla/Install/DB.pm
+++ b/Bugzilla/Install/DB.pm
@@ -119,6 +119,8 @@ sub update_fielddefs_definition {
{TYPE => 'BOOLEAN', NOTNULL => 1, DEFAULT => 'FALSE'});
$dbh->do('UPDATE fielddefs SET is_numeric = 1 WHERE type = '
. FIELD_TYPE_BUG_ID);
+
+ Bugzilla::Hook::process('install_update_db_fielddefs');
# Remember, this is not the function for adding general table changes.
# That is below. Add new changes to the fielddefs table above this
diff --git a/extensions/Example/Extension.pm b/extensions/Example/Extension.pm
index 78f7c6d24..14bf6df87 100644
--- a/extensions/Example/Extension.pm
+++ b/extensions/Example/Extension.pm
@@ -402,6 +402,12 @@ sub install_before_final_checks {
# hook/global/setting-descs-settings.none.tmpl .
}
+#sub install_update_db_fielddefs {
+# my $dbh = Bugzilla->dbh;
+# $dbh->bz_add_column('fielddefs', 'example_column',
+# {TYPE => 'MEDIUMTEXT', NOTNULL => 1, DEFAULT => ''});
+#}
+
sub job_map {
my ($self, $args) = @_;