From 7176e6d8dabbdd577e99c18fccb99fc9a09e1760 Mon Sep 17 00:00:00 2001 From: dklawren Date: Fri, 30 Jun 2017 10:34:14 -0700 Subject: Bug 1367604 - BMO extension to apply security policies to Phabricator revisions as needed * - Updated based on dylans review - Fixed custom policy to instead allow projects and subscribers and then add BMO roles to the subscriber list - Some other bug fixes * fix lifetime of phabricator_url_re() Instead of passing the value (which depends on runtime configuration) pass in a reference. Also edit extensions/BMO/Extension.pm to allow %autodetect_attach_urls regex option to be a callback instead of just a plain regexp ref. * - Fixed regex in BMO extension to detect phabricator attachments - Use request_cache for useragent handle in Util.pm --- extensions/BMO/lib/Data.pm | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'extensions/BMO/lib/Data.pm') diff --git a/extensions/BMO/lib/Data.pm b/extensions/BMO/lib/Data.pm index fcb96a558..dbf0de108 100644 --- a/extensions/BMO/lib/Data.pm +++ b/extensions/BMO/lib/Data.pm @@ -42,6 +42,11 @@ my $mozreview_url_re = qr{ $ }ix; +sub phabricator_url_re { + my $phab_uri = Bugzilla->params->{phabricator_base_uri} || 'https://example.com'; + return qr/^\Q${phab_uri}\ED\d+$/i; +} + our %autodetect_attach_urls = ( github_pr => { title => 'GitHub Pull Request', @@ -55,6 +60,12 @@ our %autodetect_attach_urls = ( content_type => 'text/x-review-board-request', can_review => 1, }, + Phabricator => { + title => 'Phabricator', + regex => \&phabricator_url_re, + content_type => 'text/x-phabricator-request', + can_review => 1, + }, google_docs => { title => 'Google Doc', regex => qr#^https://docs\.google\.com/(?:document|spreadsheets|presentation)/d/#i, -- cgit v1.2.3-24-g4f1b