1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-09-22 18:28:47 +02:00
phorge-phorge/src/applications
epriestley c7f23f522a Accept and route VCS HTTP requests
Summary:
Mostly ripped from D7391, with some changes:

  - Serve repositories at `/diffusion/X/`, with no special `/git/` or `/serve/` URI component.
    - This requires a little bit of magic, but I got the magic working for Git, Mercurial and SVN, and it seems reasonable.
    - I think having one URI for everything will make it easier for users to understand.
    - One downside is that git will clone into `X` by default, but I think that's not a big deal, and we can work around that in the future easily enough.
  - Accept HTTP requests for Git, SVN and Mercurial repositories.
  - Auth logic is a little different in order to be more consistent with how other things work.
  - Instead of AphrontBasicAuthResponse, added "VCSResponse". Mercurial can print strings we send it on the CLI if we're careful, so support that. I did a fair amount of digging and didn't have any luck with git or svn.
  - Commands we don't know about are assumed to require "Push" capability by default.

No actual VCS data going over the wire yet.

Test Plan:
Ran a bunch of stuff like this:

  $ hg clone http://local.aphront.com:8080/diffusion/P/
  abort: HTTP Error 403: This repository is not available over HTTP.

...and got pretty reasonable-seeming errors in all cases. All this can do is produce errors for now.

Reviewers: hach-que, btrahan

Reviewed By: hach-que

CC: aran

Maniphest Tasks: T2230

Differential Revision: https://secure.phabricator.com/D7417
2013-10-29 15:32:40 -07:00
..
arcanist/conduit
audit Make event-triggered actions more aware of application access 2013-10-21 17:00:50 -07:00
auth Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
base Accept and route VCS HTTP requests 2013-10-29 15:32:40 -07:00
cache
calendar Move PHUIFormBoxView to PHUIObjectBoxView 2013-09-25 11:23:29 -07:00
chatlog Fix chatlog application query integration 2013-10-22 13:47:47 -07:00
conduit Add ObjectBox to Condiut Cert Page 2013-10-29 14:54:10 -07:00
config Make remarkup rules runtime-pluggable in a reasonable way 2013-10-24 17:26:07 -07:00
conpherence Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
countdown Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
daemon Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
differential Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
diffusion Accept and route VCS HTTP requests 2013-10-29 15:32:40 -07:00
directory/controller Hide Audit information on Home when the application is uninstalled 2013-10-09 15:25:03 -07:00
diviner Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
doorkeeper Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
draft/storage
drydock PHUIPropertyListView 2013-10-11 07:53:56 -07:00
fact
feed Move Project transaction storage to modern tables 2013-10-22 13:49:28 -07:00
files Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
flag Work around a bug in PHP 5.3-ish with abstract methods in interfaces 2013-10-25 15:58:17 -07:00
harbormaster Harbormaster v(-2) 2013-10-22 15:01:06 -07:00
help/controller Make Differential views capability-sensitive 2013-09-26 18:45:04 -07:00
herald Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
legalpad Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
lipsum Kill PhabricatorObjectDataHandle 2013-09-11 12:27:28 -07:00
macro Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
mailinglists Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
maniphest Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
meta Update Apps Installed icons to match Projects. 2013-10-23 13:28:47 -07:00
metamta Fix "Manage herald rules" link by removing it 2013-10-21 16:58:56 -07:00
notification Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
oauthserver Initialize used variable 2013-07-09 21:55:27 -07:00
owners Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
paste Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
people Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
phame Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
phid Work around a bug in PHP 5.3-ish with abstract methods in interfaces 2013-10-25 15:58:17 -07:00
phlux Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
pholio Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
phortune Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
phpast Move PHUIFormBoxView to PHUIObjectBoxView 2013-09-25 11:23:29 -07:00
phrequent Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
phriction Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
policy Work around a bug in PHP 5.3-ish with abstract methods in interfaces 2013-10-25 15:58:17 -07:00
ponder Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
project Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
releeph Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
remarkup/conduit
repository Accept and route VCS HTTP requests 2013-10-29 15:32:40 -07:00
search Add search app icon 2013-10-23 11:30:52 -07:00
settings Fix header of "Change Password" form 2013-10-25 08:57:35 -07:00
slowvote Add filter by object ability to flag query 2013-10-25 12:52:00 -07:00
subscriptions Tie application event listeners to the applications they listen for 2013-10-21 17:00:21 -07:00
system
tokens Lock policy queries to their applications 2013-10-21 17:20:27 -07:00
transactions Add project history and title strings 2013-10-22 13:49:37 -07:00
typeahead Remove ProjectProfile->loadProfileImageURI() 2013-10-06 17:07:43 -07:00
uiexample PHUIInfoPanel 2013-10-25 11:09:06 -07:00
xhprof Make most file reads policy-aware 2013-09-30 09:38:13 -07:00