blob: e09a6551e277cb9410bbdf856ca009c20d60d470 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
server {
listen {{ services.git.port }};
listen [::]:{{ services.git.port }};
server_name {{ ( subdomains | selectattr('service', 'eq', 'git') | first ).full_domain }};
root /usr/share/webapps/cgit;
try_files $uri @cgit;
access_log /var/log/nginx/git.joeac.net/access.log;
error_log /var/log/nginx/git.joeac.net/error.log;
location ~ /(.+)/(HEAD|info/refs|objects|git-upload-pack|git-receive-pack) {
if (-f /srv/git/$1/git-daemon-export-ok) {
set $auth_basic "private-write repository";
}
if (!-f /srv/git/$1/git-daemon-export-ok) {
set $auth_basic "private repository";
}
if ($arg_service != git-receive-pack) {
set $auth_basic off;
}
auth_basic $auth_basic;
auth_basic_user_file .htpasswd;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME /usr/libexec/git-core/git-http-backend;
fastcgi_param PATH_INFO $uri;
fastcgi_param GIT_PROJECT_ROOT /srv/git;
fastcgi_param GIT_HTTP_EXPORT_ALL 1;
fastcgi_param REMOTE_USER $remote_user;
fastcgi_param HOME /srv/git;
fastcgi_pass unix:{{ fcgiwrap_socket }};
}
location @cgit {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME /usr/share/webapps/cgit/cgit.cgi;
fastcgi_param PATH_INFO $uri;
fastcgi_param QUERY_STRING $args;
fastcgi_param HTTP_HOST $server_name;
fastcgi_pass unix:{{ fcgiwrap_socket }};
}
}
|