summaryrefslogtreecommitdiff
path: root/config/ci/travis
diff options
context:
space:
mode:
Diffstat (limited to 'config/ci/travis')
-rw-r--r--config/ci/travis/README17
-rw-r--r--config/ci/travis/couchdb.admin.yml5
-rw-r--r--config/ci/travis/couchdb.yml4
-rwxr-xr-xconfig/ci/travis/setup_couch.sh17
4 files changed, 43 insertions, 0 deletions
diff --git a/config/ci/travis/README b/config/ci/travis/README
new file mode 100644
index 0000000..58e37b2
--- /dev/null
+++ b/config/ci/travis/README
@@ -0,0 +1,17 @@
+These files are used for Travis tests to test admin and user permissions:
+
+couchdb.yml.admin:
+
+ when activated, leap_web has admin permissions (e.g. ability to create
+ databases, upload design docs).
+
+couchdb.yml.user:
+
+ when activited, leap_web has normal permissions (e.g. can modify all the
+ records).
+
+The term 'user' here is misleading. It is really two different types of admin
+permissions.
+
+Rails or rake must be run with 'test' environment for these configs to be
+used.
diff --git a/config/ci/travis/couchdb.admin.yml b/config/ci/travis/couchdb.admin.yml
new file mode 100644
index 0000000..a7677f9
--- /dev/null
+++ b/config/ci/travis/couchdb.admin.yml
@@ -0,0 +1,5 @@
+test:
+ auto_update_design_doc: false
+ username: "anna"
+ password: "secret"
+
diff --git a/config/ci/travis/couchdb.yml b/config/ci/travis/couchdb.yml
new file mode 100644
index 0000000..a57b888
--- /dev/null
+++ b/config/ci/travis/couchdb.yml
@@ -0,0 +1,4 @@
+test:
+ auto_update_design_doc: false
+ username: "me"
+ password: "pwd"
diff --git a/config/ci/travis/setup_couch.sh b/config/ci/travis/setup_couch.sh
new file mode 100755
index 0000000..0502c12
--- /dev/null
+++ b/config/ci/travis/setup_couch.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+HOST="http://localhost:5984"
+echo "couch version :"
+curl -X GET $HOST
+echo "creating user :"
+curl -HContent-Type:application/json -XPUT $HOST/_users/org.couchdb.user:me --data-binary '{"_id": "org.couchdb.user:me","name": "me","roles": [],"type": "user","password": "pwd"}'
+echo "creating databases :"
+curl -X PUT $HOST/sessions
+curl -X PUT $HOST/users
+curl -X PUT $HOST/tickets
+echo "restricting database access :"
+curl -X PUT $HOST/sessions/_security -Hcontent-type:application/json --data-binary '{"admins":{"names":[],"roles":[]},"members":{"names":["me"],"roles":[]}}'
+curl -X PUT $HOST/users/_security -Hcontent-type:application/json --data-binary '{"admins":{"names":[],"roles":[]},"members":{"names":["me"],"roles":[]}}'
+curl -X PUT $HOST/tickets/_security -Hcontent-type:application/json --data-binary '{"admins":{"names":[],"roles":[]},"members":{"names":["me"],"roles":[]}}'
+echo "adding admin :"
+curl -X PUT $HOST/_config/admins/anna -d '"secret"'