summaryrefslogtreecommitdiffstats
path: root/sca-cpp/trunk/modules/server/server-conf
blob: 61dcdeeb91248fadfb184bf4ab45ebcdf693d756 (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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#!/bin/sh

#  Licensed to the Apache Software Foundation (ASF) under one
#  or more contributor license agreements.  See the NOTICE file
#  distributed with this work for additional information
#  regarding copyright ownership.  The ASF licenses this file
#  to you under the Apache License, Version 2.0 (the
#  "License"); you may not use this file except in compliance
#  with the License.  You may obtain a copy of the License at
#  
#    http://www.apache.org/licenses/LICENSE-2.0
#    
#  Unless required by applicable law or agreed to in writing,
#  software distributed under the License is distributed on an
#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
#  KIND, either express or implied.  See the License for the
#  specific language governing permissions and limitations
#  under the License.

# Generate a server conf
here=`readlink -f $0`; here=`dirname $here`
mkdir -p $1
root=`readlink -f $1`

jsprefix=`readlink -f $here/../js`

conf=`cat $root/conf/httpd.conf | grep "# Generated by: httpd-conf"`
host=`echo $conf | awk '{ print $6 }'`
port=`echo $conf | awk '{ print $7 }' | awk -F "/" '{ print $1 }'`
pport=`echo $conf | awk '{ print $7 }' | awk -F "/" '{ print $2 }'`
if [ "$pport" = "" ]; then
    pport=$port
fi
servername="http://$host:$pport"

sslconf=`cat $root/conf/httpd.conf | grep "# Generated by: httpd-ssl-conf"`
if [ "$sslconf" != "" ]; then
    sslport=`echo $sslconf | awk '{ print $6 }' | awk -F "/" '{ print $1 }'`
    sslpport=`echo $sslconf | awk '{ print $6 }' | awk -F "/" '{ print $2 }'`
    if [ "$sslpport" = "" ]; then
        sslpport=$sslport
    fi
    servername="https://$host:$sslpport"
fi

cat >>$root/conf/modules.conf <<EOF
# Generated by: server-conf $*
# Support for SCA component wiring
LoadModule mod_tuscany_wiring $here/libmod_tuscany_wiring.so

EOF

cat >>$root/conf/httpd.conf <<EOF
# Generated by: server-conf $*
# Route all wiring through the configured server name
SCAWiringServerName $servername

# Serve JavaScript client scripts
Alias /component.js $jsprefix/htdocs/component.js
Alias /util.js $jsprefix/htdocs/util.js
Alias /elemutil.js $jsprefix/htdocs/elemutil.js
Alias /xmlutil.js $jsprefix/htdocs/xmlutil.js
Alias /atomutil.js $jsprefix/htdocs/atomutil.js
Alias /jsonutil.js $jsprefix/htdocs/jsonutil.js
Alias /ui.js $jsprefix/htdocs/ui.js
Alias /ui.css $jsprefix/htdocs/ui.css
Alias /scdl.js $jsprefix/htdocs/scdl.js

<Location /component.js>
AuthType None
Require all granted
</Location>
<Location /util.js>
AuthType None
Require all granted
</Location>
<Location /elemutil.js>
AuthType None
Require all granted
</Location>
<Location /xmlutil.js>
AuthType None
Require all granted
</Location>
<Location /atomutil.js>
AuthType None
Require all granted
</Location>
<Location /jsonutil.js>
AuthType None
Require all granted
</Location>
<Location /ui.js>
AuthType None
Require all granted
</Location>
<Location /ui.css>
AuthType None
Require all granted
</Location>
<Location /scdl.js>
AuthType None
Require all granted
</Location>

EOF

ssl=`cat $root/conf/httpd.conf | grep "# Generated by: httpd-ssl-conf"`
if [ "$ssl" != "" ]; then
    cat >>$root/conf/httpd.conf <<EOF
# Configure SSL certificates
SCAWiringSSLCACertificateFile "$root/cert/ca.crt"
SCAWiringSSLCertificateFile "$root/cert/server.crt"
SCAWiringSSLCertificateKeyFile "$root/cert/server.key"

EOF

fi