You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
git-instaweb: Add support for running gitweb via 'plackup'
PSGI is an interface between Perl web applications and web servers, and
Plack is a Perl module and toolkit that contains PSGI middleware, helpers
and adapters to web servers; see http://plackperl.org
PSGI and Plack are inspired by Python's WSGI and Ruby's Rack (and
probably JavaScript's Jack/JSGI).
Plack core distribution includes HTTP::Server::PSGI, a reference PSGI
standalone web server implementation. 'plackup' is a command line
launcher to run PSGI applications from command line, connecting web
app to a web server via Plack::Runner module. By default it uses
HTTP::Server::PSGI as a web server.
git-instaweb generates gitweb.psgi wrapper (in $GIT_DIR/gitweb). This
wrapper uses Plack::App::WrapCGI to compile gitweb.cgi (which is a CGI
script) into a PSGI application using CGI::Compile and CGI::Emulate::PSGI.
git-instaweb then runs this wrapper, using by default HTTP::Server::PSGI
standalone Perl server, via Plack::Runner.
The configuration for 'plackup' is currently embedded in generated
gitweb.psgi wrapper, instead of using httpd.conf ($conf).
To run git-instaweb with '--httpd=plackup', you need to have instaled
Plack core, CGI::Emulate::PSGI, CGI::Compile. Those modules have to be
available for Perl scripts (which can be done for example by setting
PERL5LIB environment variable). This is currently not documented.
Signed-off-by: Jakub Narebski <[email protected]>
Acked-by: Petr Baudis <[email protected]>
Acked-by: Eric Wong <[email protected]>
Signed-off-by: Junio C Hamano <[email protected]>
0 commit comments