]> git.pld-linux.org Git - packages/webapps.git/blame - webapps.sh
- apache is no longer virtual, so adding conflict on incompatible apache2
[packages/webapps.git] / webapps.sh
CommitLineData
e9689537
ER
1#!/bin/sh
2webapps=/etc/webapps
2ec41251 3webservers='apache httpd lighttpd'
e9689537 4action="$1"
f21ce9bd 5httpd="$2"
e9689537
ER
6app="$3"
7
64efe5c9
ER
8webapp_link() {
9 echo "$1" | tr '/' '-'
10}
11
e9689537 12webapp_register() {
64efe5c9
ER
13 local link=$(webapp_link $app)
14 ln -sf $webapps/$app/$httpd.conf /etc/$httpd/webapps.d/$link.conf
e9689537
ER
15}
16
17webapp_unregister() {
64efe5c9
ER
18 local link=$(webapp_link $app)
19 rm -f /etc/$httpd/webapps.d/$link.conf
e9689537
ER
20}
21
2ec41251
ER
22webapp_list() {
23 echo "registered webapps${1:+ for $1}":
24 for server in ${1:-$webservers}; do
25 [ -d /etc/$server/webapps.d ] || continue
26 echo "$server:"
27 for conf in /etc/$server/webapps.d/*; do
28 [ -L $conf ] || continue
29 app=$(readlink $conf | sed -e "s,$webapps/,,;s,/$server.conf$,,")
30 echo "- $app"
31 done
32 done
33}
34
e9689537
ER
35usage() {
36 cat >&2 <<EOF
f21ce9bd 37Usage: $0 register httpd webapp
64efe5c9 38Usage: $0 register httpd webapp/module
f21ce9bd 39Usage: $0 unregister httpd webapp
64efe5c9 40Usage: $0 unregister httpd webapp/module
f21ce9bd 41
a715016d 42Where httpd is one of the webservers
f21ce9bd
ER
43apache 1.x: apache
44apache 2.x: httpd
45lighttpd: lighttpd
64efe5c9
ER
46
47webapp modules are supported,
48drupal tinymce module webapp name would be drupal/tinymce.
e9689537
ER
49EOF
50}
51
a715016d
ER
52die() {
53 echo >&2 "$0: $*"
54 exit 1
55}
56
57checkconfig() {
cd3edc5c
ER
58 if [ -z "$httpd" ] || [ -z "$app" ]; then
59 usage
60 return
61 fi
62
a715016d
ER
63 # sanity check
64 if [ ! -d "$webapps/$app" ]; then
cd3edc5c 65 die "'$app' is not webapp? (Missing directory: $webapps/$app)"
a715016d 66 fi
5ec58d25 67 if [ ! -d "/etc/$httpd/webapps.d" ]; then
cd3edc5c 68 die "'$httpd' is not a webserver? (Missing directory: /etc/$httpd/webapps.d)"
a715016d
ER
69 fi
70}
71
e9689537
ER
72case "$action" in
73register)
a715016d 74 checkconfig
d91deb44 75 webapp_register
e9689537
ER
76 ;;
77unregister)
a715016d 78 checkconfig
d91deb44 79 webapp_unregister
e9689537 80 ;;
2ec41251
ER
81list)
82 webapp_list $2
83 ;;
e9689537
ER
84*)
85 usage
86 exit 1
87esac
This page took 0.090339 seconds and 4 git commands to generate.