Awesome
Welcome to the world of GeoCouch
GeoCouch is a spatial extension for Couchbase and Apache CouchDB.
For Couchbase
For compiling Couchbase (it includes GeoCouch), please see https://github.com/couchbase/tlm
For Apache CouchDB
This version of GeoCouch needs at least Apache CouchDB 1.3.x.
Checkout the code
First checkout the source code for Apache CouchDB into a directory that will
be referred to as <path-to-couchdb-source>
.
Then checkout the GeoCouch source:
git clone https://github.com/couchbase/geocouch.git
There's a new directory called geocouch
created. From now on this directory
will be referred to as <path-to-geocouch-source>
.
Build instructions
Make sure you have built Apache CouchDB from source including make dev
. So
go to your <path-to-couchdb-source>
and run:
./bootstrap
./configure
make dev
After that you can compile GeoCouch from within the GeoCouch directory:
COUCH_SRC=<path-to-couchdb-source>/src/couchdb make couchdb
Now copy the configuration file into your Apache CouchDB directory:
cp gc-couchdb/etc/couchdb/default.d/geocouch.ini <path-to-couchdb-source>/etc/couchdb/default.d/
Running Apache CouchDB
Apache CouchDB needs the compiled geocouch in the include path. You can either copy gc-couchdb
and vtree
into <path-to-couchdb-source>/src/
or set the ERL_LIBS
environment variable to the GeoCouch root directory.
cd <path-to-couchdb-source>
ERL_LIBS="<path-to-geocouch-source>" ./utils/run
Running tests
After you've followed the build instructions you can run the tests with
COUCH_SRC=<path-to-couchdb-source>/src/couchdb make couchdb-check
In order to run the JavaScript based tests, you need to start Apache CouchDB first:
cd <path-to-couchdb-source>
ERL_LIBS="<path-to-geocouch-source>" ./utils/run
The tests can either be run from the command line or the browser.
From command line
From the command line the easiest way is to use the supplied runner script.
From within the <path-to-geocouch-source>
:
cd gc-couchdb
./utils/runjstests.sh <path-to-couchdb-source>/test/javascript/run ./share/www/script/test
From browser
To run it from the browser first copy the JavaScript tests into the same directory as the other Apache CouchDB tests:
cp <path-to-geocouch-source>/gc-couchdb/share/www/script/test/* <path-to-couchdb-source>/share/www/script/test/
Then add the tests to <path-to-couchdb-source>/share/www/script/couch_tests.js
loadTest("spatial.js");
loadTest("list_spatial.js");
loadTest("etags_spatial.js");
loadTest("multiple_spatial_rows.js");
loadTest("spatial_compaction.js");
loadTest("spatial_design_docs.js");
loadTest("spatial_bugfixes.js");
loadTest("spatial_offsets.js");
loadTest("spatial_range.js");
More information
For more information and samples please see the README in the gc-couchdb subdirectory.
License
GeoCouch is licensed under the Apache License 2.0.