diff options
author | David Lawrence <dlawrence@mozilla.com> | 2011-04-01 05:38:47 +0200 |
---|---|---|
committer | David Lawrence <dlawrence@mozilla.com> | 2011-04-01 05:38:47 +0200 |
commit | 14151ea2f8fb33d4336afa161a0e8b8bed6e5daa (patch) | |
tree | cfc8220d3a81b92c69b17bb8543f1a024e1e4f94 /extensions/Example | |
parent | 827893640965d055b40193c825dad3555acb4eb3 (diff) | |
download | bugzilla-14151ea2f8fb33d4336afa161a0e8b8bed6e5daa.tar.gz bugzilla-14151ea2f8fb33d4336afa161a0e8b8bed6e5daa.tar.xz |
Bug 644334 - Add hook to Bugzilla::Install::Filesystem to allow extensions to create files/directories/htaccess
r/a=mkanat
Diffstat (limited to 'extensions/Example')
-rw-r--r-- | extensions/Example/Extension.pm | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/extensions/Example/Extension.pm b/extensions/Example/Extension.pm index f56416559..5b95335b8 100644 --- a/extensions/Example/Extension.pm +++ b/extensions/Example/Extension.pm @@ -31,6 +31,7 @@ use Bugzilla::User; use Bugzilla::User::Setting; use Bugzilla::Util qw(diff_arrays html_quote); use Bugzilla::Status qw(is_open_state); +use Bugzilla::Install::Filesystem; # This is extensions/Example/lib/Util.pm. I can load this here in my # Extension.pm only because I have a Config.pm. @@ -402,6 +403,33 @@ sub install_before_final_checks { # hook/global/setting-descs-settings.none.tmpl . } +sub install_filesystem { + my ($self, $args) = @_; + my $create_dirs = $args->{'create_dirs'}; + my $recurse_dirs = $args->{'recurse_dirs'}; + my $htaccess = $args->{'htaccess'}; + + # Create a new directory in datadir specifically for this extension. + # The directory will need to allow files to be created by the extension + # code as well as allow the webserver to server content from it. + # my $data_path = bz_locations->{'datadir'} . "/" . __PACKAGE__->NAME; + # $create_dirs->{$data_path} = Bugzilla::Install::Filesystem::DIR_CGI_WRITE; + + # Update the permissions of any files and directories that currently reside + # in the extension's directory. + # $recurse_dirs->{$data_path} = { + # files => Bugzilla::Install::Filesystem::CGI_READ, + # dirs => Bugzilla::Install::Filesystem::DIR_CGI_WRITE + # }; + + # Create a htaccess file that allows specific content to be served from the + # extension's directory. + # $htaccess->{"$data_path/.htaccess"} = { + # perms => Bugzilla::Install::Filesystem::WS_SERVE, + # contents => Bugzilla::Install::Filesystem::HT_DEFAULT_DENY + # }; +} + #sub install_update_db_fielddefs { # my $dbh = Bugzilla->dbh; # $dbh->bz_add_column('fielddefs', 'example_column', |