diff options
Diffstat (limited to 'etc')
-rw-r--r-- | etc/brep.conf | 49 | ||||
-rwxr-xr-x | etc/dev/apachectl (renamed from etc/apachectl) | 50 | ||||
-rwxr-xr-x | etc/dev/brep (renamed from etc/brep) | 0 | ||||
-rw-r--r-- | etc/dev/brep-site.conf | 9 | ||||
-rw-r--r-- | etc/dev/config (renamed from etc/config) | 16 | ||||
-rw-r--r-- | etc/dev/httpd.conf | 51 | ||||
-rwxr-xr-x | etc/dev/pgctl (renamed from etc/pgctl) | 0 | ||||
-rw-r--r-- | etc/httpd.conf | 113 | ||||
-rwxr-xr-x | etc/loader | 18 | ||||
-rw-r--r-- | etc/package-details.conf | 15 | ||||
-rw-r--r-- | etc/package-search.conf | 13 | ||||
-rw-r--r-- | etc/package-version-details.conf | 14 | ||||
-rw-r--r-- | etc/repository-details.conf | 7 |
13 files changed, 146 insertions, 209 deletions
diff --git a/etc/brep.conf b/etc/brep.conf new file mode 100644 index 0000000..6f806e8 --- /dev/null +++ b/etc/brep.conf @@ -0,0 +1,49 @@ +# The brep.conf file can be included once into Apache configuration file in +# the <VirtualHost> section or in the main server context. +# +LoadModule brep_module modules/mod_brep.so +LoadModule alias_module modules/mod_alias.so + +# Alternatively, if loading the modules in another place, make sure they +# are loaded. +# +<IfModule !brep_module> + Error "mod_brep is not loaded" +</IfModule> + +<IfModule !alias_module> + Error "mod_alias is not loaded" +</IfModule> + +# To use a repository root other than /pkg/, replace all occurrences of +# /pkg/ with the desired alternative root (use '/' for webserver root). +# +brep-root /pkg/ +brep-db-host localhost +brep-db-port 5432 +brep-search-results 10 +brep-pager-pages 5 +brep-description-len 500 +brep-changes-len 5000 +brep-log-verbosity 0 + +# To override brep module options place them into the separate configuration +# file, suppressing the "brep-" prefix. +# +#brep-conf /path/to/brep-site.conf + +SetHandler brep + +# Location of the brep static content (CSS files). +# +Alias /pkg/@/ /usr/share/brep/static/ + +<Directory "/usr/share/brep/static"> + Require all granted +</Directory> + +# Serve repository files from the repository root path. For example: +# +# http://example.org/pkg/1/... -> /path/to/repo/1/... +# +#AliasMatch ^/pkg/(\d+)/(.+) /path/to/repo/$1/$2 diff --git a/etc/apachectl b/etc/dev/apachectl index 4c67c1f..4d45570 100755 --- a/etc/apachectl +++ b/etc/dev/apachectl @@ -20,14 +20,16 @@ # 8 - configuration syntax error # # When multiple arguments are given, only the error from the _last_ -# one is reported. Run "apachectl help" for usage info +# one is reported. Run "apachectl help" for usage info. +# . `dirname $0`/config ARGV="$@" export AP_PORT -export AP_SERVER_NAME +export AP_GLOBAL_SERVER_NAME +export AP_BREP_SERVER_NAME export AP_ROOT export AP_ADMIN_EMAIL export AP_LOG_LEVEL @@ -36,41 +38,55 @@ export AP_DB_PORT export AP_MODULE_DIR export AP_WWW_DIR export AP_CONFIG_DIR +export AP_LOG_DIR export AP_WORKSPACE_DIR export AP_REPOSITORY_DIR -if test -n "$AP_LIB_DIRS"; then - export LD_LIBRARY_PATH=$AP_LIB_DIRS:$LD_LIBRARY_PATH +if [ -n "$AP_LIB_DIRS" ] ; then + export LD_LIBRARY_PATH=$AP_LIB_DIRS:$LD_LIBRARY_PATH fi mkdir -p "$AP_WORKSPACE_DIR" mkdir -p "$AP_LOG_DIR" mkdir -p "$AP_REPOSITORY_DIR" -# the path to your httpd binary, including options if necessary - -HTTPD="/usr/sbin/httpd -d $AP_LOG_DIR -f $AP_CONFIG_DIR/httpd.conf" +cat "$AP_CONFIG_DIR/../brep.conf" | \ +sed -e 's%modules\(/mod_brep.so\)%${AP_MODULE_DIR}\1%g' \ + -e 's%/pkg/%${AP_ROOT}%g' \ + -e 's%^\(brep-db-port\s*\).*%\1${AP_DB_PORT}%g' \ + -e 's%^\(brep-db-host\s*\).*%\1${AP_DB_HOST}%g' \ + -e 's%^#\(brep-conf\s*\)/path/to%\1${AP_CONFIG_DIR}%g' \ + -e 's%/usr/share/brep/static%${AP_WWW_DIR}%g' \ + -e 's%^#\(AliasMatch.*\)/path/to/repo%\1${AP_REPOSITORY_DIR}%g' \ +> "$AP_CONFIG_DIR/brep.conf" + +# The path to your httpd binary, including options if necessary. +# +HTTPD="/usr/sbin/httpd -f $AP_CONFIG_DIR/httpd.conf" -# a command that outputs a formatted text version of the HTML at the -# url given on the command line. Designed for lynx, however other -# programs may work. +# The command that outputs a formatted text version of the HTML at the url +# given on the command line. Designed for lynx, however other programs may work. +# LYNX="lynx -dump" -# the URL to your server's mod_status status page. If you do not -# have one, then status and fullstatus will not work. +# The URL to your server's mod_status status page. If you do not have one, +# then status and fullstatus will not work. +# STATUSURL="http://localhost:$AP_PORT/server-status" -# Set this variable to a command that increases the maximum -# number of file descriptors allowed per child process. This is -# critical for configurations that use many file descriptors, -# such as mass vhosting, or a multithreaded server. +# Set this variable to a command that increases the maximum number of file +# descriptors allowed per child process. This is critical for configurations +# that use many file descriptors, such as mass vhosting, or a multithreaded +# server. +# ULIMIT_MAX_FILES="ulimit -S -n `ulimit -H -n`" # -------------------- -------------------- # |||||||||||||||||||| END CONFIGURATION SECTION |||||||||||||||||||| # Set the maximum number of file descriptors allowed per child process. +# if [ "x$ULIMIT_MAX_FILES" != "x" ] ; then - $ULIMIT_MAX_FILES + $ULIMIT_MAX_FILES fi ERROR=0 diff --git a/etc/dev/brep-site.conf b/etc/dev/brep-site.conf new file mode 100644 index 0000000..09f020c --- /dev/null +++ b/etc/dev/brep-site.conf @@ -0,0 +1,9 @@ +# file : etc/brep-site.conf +# copyright : Copyright (c) 2014-2015 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file +# + +search-results 2 +description-len 100 +changes-len 100 +log-verbosity 1 diff --git a/etc/config b/etc/dev/config index c7edd56..cdd0b53 100644 --- a/etc/config +++ b/etc/dev/config @@ -2,7 +2,7 @@ # SCRIPT_DIR=`dirname $0` CONFIG_DIR=`cd $SCRIPT_DIR; pwd` -PROJECT_DIR="$CONFIG_DIR/.." +PROJECT_DIR="$CONFIG_DIR/../.." WORKSPACE_DIR="$PROJECT_DIR/var" LIB_DIRS="$PROJECT_DIR/brep:$PROJECT_DIR/../libbutl/butl:$PROJECT_DIR/../libbpkg/bpkg" @@ -17,9 +17,9 @@ PG_WORKSPACE_DIR="$WORKSPACE_DIR/run/pgsql" # Apache settings (used in apachectl) # AP_PORT=8080 -AP_SERVER_NAME="cppget.org:$AP_PORT" -AP_ROOT="" # Value examples: "", "/foo", "/foo/bar". -AP_ADMIN_EMAIL=admin@cppget.org +AP_GLOBAL_SERVER_NAME="localhost" +AP_BREP_SERVER_NAME="dev.cppget.org" +AP_ROOT="/" # Value examples: "/", "/foo/", "/foo/bar/". AP_LOG_LEVEL=trace1 AP_DB_HOST="$PG_WORKSPACE_DIR" AP_DB_PORT=$PG_PORT @@ -30,11 +30,3 @@ AP_CONFIG_DIR="$CONFIG_DIR" AP_LOG_DIR="$WORKSPACE_DIR/log/httpd" AP_WORKSPACE_DIR="$WORKSPACE_DIR/run/httpd" AP_REPOSITORY_DIR="$WORKSPACE_DIR/www" - -# brep-loader settings (used in loader) -# -LD_DB_HOST="$PG_WORKSPACE_DIR" -LD_DB_PORT=$PG_PORT -LD_REPOSITORIES="$CONFIG_DIR/repositories.conf" -LD_LIB_DIRS="$LIB_DIRS" -LD_EXE_DIRS="$PROJECT_DIR/loader" diff --git a/etc/dev/httpd.conf b/etc/dev/httpd.conf new file mode 100644 index 0000000..5943d70 --- /dev/null +++ b/etc/dev/httpd.conf @@ -0,0 +1,51 @@ +Listen ${AP_PORT} +ServerName ${AP_GLOBAL_SERVER_NAME}:${AP_PORT} + +CoreDumpDirectory "${AP_WORKSPACE_DIR}" +PidFile "${AP_WORKSPACE_DIR}/httpd.pid" + +ErrorLog "|/usr/sbin/rotatelogs ${AP_LOG_DIR}/error_log.%Y%m%d 86400" +ErrorLogFormat "[%t] [%l] [%m] %M" +LogLevel ${AP_LOG_LEVEL} + +Timeout 60 +KeepAlive On +KeepAliveTimeout 3 + +ThreadLimit 1000 +ServerLimit 2 +StartServers 1 +MaxClients 1000 +MinSpareThreads 400 +MaxSpareThreads 600 +ThreadsPerChild 500 +MaxRequestsPerChild 0 + +LoadModule mpm_worker_module modules/mod_mpm_worker.so +LoadModule unixd_module modules/mod_unixd.so +LoadModule filter_module modules/mod_filter.so +LoadModule authz_core_module modules/mod_authz_core.so +LoadModule authz_host_module modules/mod_authz_host.so +LoadModule status_module modules/mod_status.so +LoadModule mime_module modules/mod_mime.so +LoadModule deflate_module modules/mod_deflate.so + +<VirtualHost *:${AP_PORT}> + ServerName ${AP_GLOBAL_SERVER_NAME} +</VirtualHost> + +<VirtualHost *:${AP_PORT}> + ServerName ${AP_BREP_SERVER_NAME} + Include ${AP_CONFIG_DIR}/brep.conf +</VirtualHost> + +ExtendedStatus On + +<Location /server-status> + SetHandler server-status + Require local +</Location> + +TypesConfig /etc/mime.types +AddOutputFilterByType DEFLATE application/xhtml+xml +AddOutputFilterByType DEFLATE text/css diff --git a/etc/pgctl b/etc/dev/pgctl index d1f676f..d1f676f 100755 --- a/etc/pgctl +++ b/etc/dev/pgctl diff --git a/etc/httpd.conf b/etc/httpd.conf deleted file mode 100644 index dc56d9b..0000000 --- a/etc/httpd.conf +++ /dev/null @@ -1,113 +0,0 @@ -Listen ${AP_PORT} -ServerName "${AP_SERVER_NAME}" -ServerAdmin "${AP_ADMIN_EMAIL}" - -User apache -Group apache - -CoreDumpDirectory "${AP_WORKSPACE_DIR}" -PidFile "${AP_WORKSPACE_DIR}/httpd.pid" - -ErrorLog "|/usr/sbin/rotatelogs error_log.%Y%m%d 86400" -ErrorLogFormat "[%t] [%l] [%m] %M" -LogLevel ${AP_LOG_LEVEL} - -Timeout 60 -KeepAlive On -KeepAliveTimeout 3 - -ThreadLimit 1000 -ServerLimit 2 -StartServers 1 -MaxClients 1000 -MinSpareThreads 400 -MaxSpareThreads 600 -ThreadsPerChild 500 -MaxRequestsPerChild 0 - -LoadModule mpm_worker_module /usr/lib64/httpd/modules/mod_mpm_worker.so -LoadModule unixd_module /usr/lib64/httpd/modules/mod_unixd.so -LoadModule filter_module /usr/lib64/httpd/modules/mod_filter.so -LoadModule authz_core_module /usr/lib64/httpd/modules/mod_authz_core.so -LoadModule authz_host_module /usr/lib64/httpd/modules/mod_authz_host.so -LoadModule status_module /usr/lib64/httpd/modules/mod_status.so -LoadModule mime_module /usr/lib64/httpd/modules/mod_mime.so -LoadModule deflate_module /usr/lib64/httpd/modules/mod_deflate.so -LoadModule alias_module /usr/lib64/httpd/modules/mod_alias.so - -LoadModule repository_root_srv ${AP_MODULE_DIR}/libbrep-apache.so - -LoadModule package_search_srv ${AP_MODULE_DIR}/libbrep-apache.so - -<IfModule package_search_srv> - package-search-root "${AP_ROOT}" - package-search-db-host ${AP_DB_HOST} - package-search-db-port ${AP_DB_PORT} - package-search-conf ${AP_CONFIG_DIR}/package-search.conf -</IfModule> - -LoadModule package_details_srv ${AP_MODULE_DIR}/libbrep-apache.so - -<IfModule package_details_srv> - package-details-root "${AP_ROOT}" - package-details-db-host ${AP_DB_HOST} - package-details-db-port ${AP_DB_PORT} - package-details-conf ${AP_CONFIG_DIR}/package-details.conf -</IfModule> - -LoadModule package_version_details_srv ${AP_MODULE_DIR}/libbrep-apache.so - -<IfModule package_version_details_srv> - package-version-details-root "${AP_ROOT}" - package-version-details-db-host ${AP_DB_HOST} - package-version-details-db-port ${AP_DB_PORT} - package-version-details-conf ${AP_CONFIG_DIR}/package-version-details.conf -</IfModule> - -LoadModule repository_details_srv ${AP_MODULE_DIR}/libbrep-apache.so - -<IfModule repository_details_srv> - repository-details-root "${AP_ROOT}" - repository-details-db-host ${AP_DB_HOST} - repository-details-db-port ${AP_DB_PORT} - repository-details-conf ${AP_CONFIG_DIR}/repository-details.conf -</IfModule> - -<LocationMatch ^${AP_ROOT}/?$> - SetHandler repository-root -</LocationMatch> - -<LocationMatch ^${AP_ROOT}/[^/]+$> - SetHandler package-details -</LocationMatch> - -<LocationMatch ^${AP_ROOT}/[^/]+/[^/]+$> - SetHandler package-version-details -</LocationMatch> - -# Disable package-version-details and package-details handlers on static files -# and repository content locations. -# Location examples: /@, /@/common.css, /1, /1/math/stable. -# -<LocationMatch ^${AP_ROOT}/(@|\d+)(/.*)?$> - SetHandler None -</LocationMatch> - -# Static files locations. -# -AliasMatch ^${AP_ROOT}/@/(.+) ${AP_WWW_DIR}/$1 - -# Repository files locations. -# -AliasMatch ^${AP_ROOT}/(\d+)/(.+) ${AP_REPOSITORY_DIR}/$1/$2 - -ExtendedStatus On - -<Location /server-status> - SetHandler server-status - Require local -</Location> - -TypesConfig /etc/mime.types -AddOutputFilterByType DEFLATE application/xhtml+xml -AddOutputFilterByType DEFLATE text/css diff --git a/etc/loader b/etc/loader deleted file mode 100755 index 1ae3b48..0000000 --- a/etc/loader +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh -# file : etc/loader -# copyright : Copyright (c) 2014-2015 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file -# -# Designed to simplify running brep-loader utility. - -. `dirname $0`/config - -if test -n "$LD_LIB_DIRS"; then - export LD_LIBRARY_PATH=$LD_LIB_DIRS:$LD_LIBRARY_PATH -fi - -if test -n "$LD_EXE_DIRS"; then - export PATH=$LD_EXE_DIRS:$PATH -fi - -brep-loader --db-host "$LD_DB_HOST" --db-port $PG_PORT "$LD_REPOSITORIES" diff --git a/etc/package-details.conf b/etc/package-details.conf deleted file mode 100644 index 66a7c17..0000000 --- a/etc/package-details.conf +++ /dev/null @@ -1,15 +0,0 @@ -# file : etc/package-details.conf -# copyright : Copyright (c) 2014-2015 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file -# -# brep::module options -# -verb 1 - -# brep::package_details options -# -# @@ Set to 10. -results-on-page 2 -pages-in-pager 5 -# @@ Set to 500 (~ 80 chars x 6 lines). -description-length 100 diff --git a/etc/package-search.conf b/etc/package-search.conf deleted file mode 100644 index 4c1484f..0000000 --- a/etc/package-search.conf +++ /dev/null @@ -1,13 +0,0 @@ -# file : etc/package-search.conf -# copyright : Copyright (c) 2014-2015 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file -# -# brep::module options -# -verb 1 - -# brep::package_search options -# -# @@ Set to 10. -results-on-page 2 -pages-in-pager 5 diff --git a/etc/package-version-details.conf b/etc/package-version-details.conf deleted file mode 100644 index 865e162..0000000 --- a/etc/package-version-details.conf +++ /dev/null @@ -1,14 +0,0 @@ -# file : etc/package-version-details.conf -# copyright : Copyright (c) 2014-2015 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file -# -# brep::module options -# -verb 1 - -# brep::package_version_details options -# -# @@ Set to 500 (~ 80 chars x 6 lines). -description-length 100 -# @@ Set to 5000 (~ 80 chars x 60 lines). -changes-length 100 diff --git a/etc/repository-details.conf b/etc/repository-details.conf deleted file mode 100644 index e173cfb..0000000 --- a/etc/repository-details.conf +++ /dev/null @@ -1,7 +0,0 @@ -# file : etc/repository-details.conf -# copyright : Copyright (c) 2014-2015 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file -# -# brep::module options -# -verb 1 |