104 lines
3.7 KiB
Bash
Executable File
104 lines
3.7 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# check to see if the hosted examples or API docs need an update
|
|
cd /osgeo/openlayers/repos/openlayers
|
|
REMOTE_HEAD=`git ls-remote https://github.com/openlayers/openlayers/ | grep HEAD | awk '{print $1}'`
|
|
LOCAL_HEAD=`git rev-parse HEAD`
|
|
|
|
# if there's something different in the remote, update and build
|
|
if [ ! o$REMOTE_HEAD = o$LOCAL_HEAD ]; then
|
|
|
|
git checkout master
|
|
git clean -f
|
|
git pull origin master
|
|
|
|
# copy everything over to the dev dir within the website (keep the clone clean)
|
|
rsync -r --exclude=.git . /osgeo/openlayers/sites/openlayers.org/dev
|
|
|
|
# make examples use built lib
|
|
cd /osgeo/openlayers/sites/openlayers.org/dev/tools
|
|
|
|
python exampleparser.py /osgeo/openlayers/repos/openlayers/examples /osgeo/openlayers/sites/openlayers.org/dev/examples
|
|
|
|
if [ ! -f closure-compiler.jar ]; then
|
|
wget -c http://closure-compiler.googlecode.com/files/compiler-latest.zip
|
|
unzip compiler-latest.zip
|
|
mv compiler.jar closure-compiler.jar
|
|
fi
|
|
|
|
cd /osgeo/openlayers/sites/openlayers.org/dev/build
|
|
./build.py -c closure tests.cfg
|
|
./build.py -c closure mobile.cfg OpenLayers.mobile.js
|
|
./build.py -c closure light.cfg OpenLayers.light.js
|
|
./build.py -c none tests.cfg OpenLayers.debug.js
|
|
./build.py -c none mobile.cfg OpenLayers.mobile.debug.js
|
|
./build.py -c none light.cfg OpenLayers.light.debug.js
|
|
cp OpenLayers*.js ..
|
|
|
|
cd /osgeo/openlayers/sites/openlayers.org/dev
|
|
sed -i -e 's!../lib/OpenLayers.js?mobile!../OpenLayers.mobile.js!' examples/*.html
|
|
sed -i -e 's!../lib/OpenLayers.js!../OpenLayers.js!' examples/*.html
|
|
|
|
# update the API docs
|
|
if [ ! -d /osgeo/openlayers/sites/dev.openlayers.org/apidocs ]; then
|
|
mkdir -p /osgeo/openlayers/sites/dev.openlayers.org/apidocs
|
|
fi
|
|
if [ ! -d /osgeo/openlayers/sites/dev.openlayers.org/docs ]; then
|
|
mkdir -p /osgeo/openlayers/sites/dev.openlayers.org/docs
|
|
fi
|
|
naturaldocs --input lib --output HTML /osgeo/openlayers/sites/dev.openlayers.org/apidocs -p apidoc_config -s Default OL
|
|
naturaldocs --input lib --output HTML /osgeo/openlayers/sites/dev.openlayers.org/docs -p doc_config -s Default OL
|
|
|
|
fi
|
|
|
|
# check to see if the website needs an update
|
|
cd /osgeo/openlayers/repos/website
|
|
REMOTE_HEAD=`git ls-remote https://github.com/openlayers/website/ | grep HEAD | awk '{print $1}'`
|
|
LOCAL_HEAD=`git rev-parse HEAD`
|
|
|
|
# if there's something different in the remote, update the clone
|
|
if [ ! o$REMOTE_HEAD = o$LOCAL_HEAD ]; then
|
|
|
|
git checkout master
|
|
git clean -f
|
|
git pull origin master
|
|
|
|
# copy everything over to the website dir (keep the clone clean)
|
|
# can't use --delete here because of nested dev dir from above
|
|
rsync -r --exclude=.git . /osgeo/openlayers/sites/openlayers.org
|
|
|
|
fi
|
|
|
|
# check to see if prose docs need an update
|
|
cd /osgeo/openlayers/repos/docs
|
|
REMOTE_HEAD=`git ls-remote https://github.com/openlayers/docs/ | grep HEAD | awk '{print $1}'`
|
|
LOCAL_HEAD=`git rev-parse HEAD`
|
|
|
|
# if there's something different in the remote, update the clone
|
|
if [ ! o$REMOTE_HEAD = o$LOCAL_HEAD ]; then
|
|
|
|
git checkout master
|
|
git clean -f
|
|
git pull origin master
|
|
|
|
mkdir -p /osgeo/openlayers/sites/docs.openlayers.org /tmp/ol/docs/build/doctrees
|
|
sphinx-build -b html -d /tmp/ol/docs/build/doctrees . /osgeo/openlayers/sites/docs.openlayers.org
|
|
|
|
fi
|
|
|
|
## UPDATES FROM THE OLD SVN REPO
|
|
|
|
# Get current 'Last Changed Rev'
|
|
SVNREV=`svn info http://svn.openlayers.org/ | grep 'Revision' | awk '{print $2}'`
|
|
|
|
# Get the last svn rev
|
|
touch /tmp/ol_svn_rev
|
|
OLD_SVNREV="o`cat /tmp/ol_svn_rev`"
|
|
|
|
# If they're not equal, do some work.
|
|
if [ ! o$SVNREV = $OLD_SVNREV ]; then
|
|
svn up /osgeo/openlayers/repos/old_svn_repo/
|
|
# Record the revision
|
|
echo -n $SVNREV > /tmp/ol_svn_rev
|
|
fi
|