blob: a8e57cf289080000946fc3545fee9fdbc2da12cb [file] [log] [blame]
#!/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=`echo "import os; print os.path.realpath('$0')" | python`; here=`dirname $here`
mkdir -p $1
root=`echo "import os; print os.path.realpath('$1')" | python`
jsprefix=`echo "import os; print os.path.realpath('$here/../js')" | python`
uname=`uname -s`
if [ $uname = "Darwin" ]; then
libsuffix=".dylib"
else
libsuffix=".so"
fi
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$libsuffix
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 /ui-min.css $jsprefix/htdocs/ui-min.css
Alias /scdl.js $jsprefix/htdocs/scdl.js
Alias /all.js $jsprefix/htdocs/all.js
Alias /all-min.js $jsprefix/htdocs/all-min.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 /ui-min.css>
AuthType None
Require all granted
</Location>
<Location /scdl.js>
AuthType None
Require all granted
</Location>
<Location /all.js>
AuthType None
Require all granted
</Location>
<Location /all-min.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