Table of Contents
1 cgitをインストールする
cgitパッケージをインストールします。
- SCAN_PATHは/etc/cgitrcで設定するscan-pathの値です。
#!/bin/shset -e[ -z “${SCAN_PATH}” ] && SCAN_PATH=/srv/gitcgit_install(){ sudo pacman -Sy –noconfirm cgit cat <<EOF | sudo tee -a /etc/cgitrcscan-path=${SCAN_PATH}css=/cgit-css/cgit.csslogo=/cgit-css/cgit.pngEOF}apache_install(){ sudo pacman -Sy –noconfirm apache mod_wsgi sudo systemctl enable httpd # ssl configuration. # Country Name (2 letter code) [AU]: # State or Province Name (full name) [Some-State]: # Locality Name (eg, city) []: # Organization Name (eg, company) [Internet Widgits Pty Ltd]: # Organizational Unit Name (eg, section) []: # Common Name (e.g. server FQDN or YOUR name) []: # Email Address []: cat <<EOF | sudo openssl req -new -x509 -nodes -newkey rsa:4096 -days 1095 -keyout /etc/httpd/conf/server.key -out /etc/httpd/conf/server.crtAUSome-Statecitycompanysection${WEBDAV_SERVER_FQDN}EOF sudo sed -i /etc/httpd/conf/httpd.conf -e ‘s/^#LoadModule ssl_module/LoadModule ssl_module/g’ -e ‘s/^#LoadModule socache_shmcb_module/LoadModule socache_shmcb_module/g’ cat <<EOF | sudo tee -a /etc/httpd/conf/httpd.confInclude conf/extra/httpd-ssl.confEOF # cgi configuration. sudo sed -i /etc/httpd/conf/httpd.conf -e ‘s/#LoadModule cgid_module/LoadModule cgid_module/g’ # rewrite configuration. sudo sed -i /etc/httpd/conf/httpd.conf -e ‘s/^#LoadModule rewrite_module/LoadModule rewrite_module/g’ cat << EOF | sudo tee /etc/httpd/conf/extra/redirect-to-https.confRewriteEngine OnRewriteCond %{HTTPS} offRewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}EOF cat <<EOF | sudo tee -a /etc/httpd/conf/httpd.confInclude conf/extra/redirect-to-https.confEOF # cgit configuration. cat <<EOF | sudo tee /etc/httpd/conf/extra/cgit.confScriptAlias /cgit/ “/usr/lib/cgit/cgit.cgi/”Alias /cgit-css “/usr/share/webapps/cgit/”<Directory “/usr/share/webapps/cgit/”> AllowOverride None Options None Require all granted</Directory><Directory “/usr/lib/cgit/”> AllowOverride None Options ExecCGI FollowSymlinks Require all granted</Directory>EOF cat <<EOF | sudo tee -a /etc/httpd/conf/httpd.confInclude conf/extra/cgit.confEOF sudo systemctl restart httpd}create_repo(){ sudo mkdir -p “${SCAN_PATH}” sudo chmod 777 “${SCAN_PATH}” sudo mkdir -p “${SCAN_PATH}”/test.git sudo chmod 777 “${SCAN_PATH}”/test.git cd “${SCAN_PATH}”/test.git git init –bare}cgit_main(){ cgit_install apache_install create_repo}cgit_main
2 cgitへアクセスする
以下のURLへアクセスします。
https://<server>/cgit
先ほど作成したリポジトリが表示されます。