summaryrefslogtreecommitdiff
path: root/doc/DEVELOP.md
diff options
context:
space:
mode:
authorAzul <azul@riseup.net>2016-07-04 21:26:46 +0200
committerAzul <azul@riseup.net>2016-07-05 08:56:05 +0200
commit6b08e8c89d26225786736ad69ba335b275a1a048 (patch)
tree11307fe8684f62a9302b6243ef2be2614fac1a30 /doc/DEVELOP.md
parent638acc59a241e141cf0fc9ccbf4e3c5578b98f0c (diff)
[doc] update install documentation
Diffstat (limited to 'doc/DEVELOP.md')
-rw-r--r--doc/DEVELOP.md27
1 files changed, 17 insertions, 10 deletions
diff --git a/doc/DEVELOP.md b/doc/DEVELOP.md
index cdd0867..e0c07d6 100644
--- a/doc/DEVELOP.md
+++ b/doc/DEVELOP.md
@@ -7,17 +7,24 @@ control checks. This is handy for local development. However, there is
the risk that running tests with Couch in Admin Party yields false
results.
-You have two options:
+We recommend keeping the default CouchDB configuration locally and testing
+the more complex setup with access control in Continuous Integration.
-1) Use Admin Party and accept the risk
-2) Stop Admin Party by creating user accounts & security docs by running the
-following script:
+Please see .travis.yml for the configuration of our CI runs.
- test/travis/setup_couch.sh
+In order to prepare you local couch for development run
+```
+bin/rake db:rotate
+bin/rake db:migrate
+```
-### Database configuration
+### Customized database configuration (advanced)
+
+If you want to stop Admin Party mode you need to create user accounts &
+security docs. You can use the following script as a guideline:
+ test/travis/setup_couch.sh
-Copy & adapt the default database configuration:
+Afterwards copy & adapt the default database configuration:
```
mv config/couchdb.example.yml config/couchdb.yml
@@ -37,14 +44,14 @@ Some tips on modifying the views:
## Engines ##
-Leap Web contains some. They live in their own subdirectory and are included through bundler via their path. This way changes to the engines immediately affect the server as if they were in the main `app` directory.
+We use engines to separate optional functionality from the core. They live in their own subdirectory and are included through bundler via their path. This way changes to the engines immediately affect the server as if they were in the main `app` directory.
Currently Leap Web includes 2 Engines:
* [support](https://github.com/leapcode/leap_web/blob/master/engines/support) - Help ticket management
* [billing](https://github.com/leapcode/leap_web/blob/master/engines/billing) - Billing System
-## Creating a new engine ##
+## Creating a new engine (advanced) ##
If you want to add functionality to the webapp but keep it easy to remove you might consider adding an engine. This only makes sense if your engine really is a plugin - so no other pieces of code depend on it.
@@ -99,7 +106,7 @@ For example:
visit robot_path(@robot, :locale => nil)
end
-## Debugging
+## Debugging Production (advanced)
Sometimes bugs only show up when deployed to the live production server. Debugging can be tricky,
because the open source mod_passenger does not support debugger. You can't just run