Skip to content

cueneythizli/policycompass

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

302 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Policy Compass

Install the policy compass web application and all dependent services for development.

Installation

Requirements:

  • Ubuntu linux 64bit (tested with 14.04 LTS)
  • git
  • make
  • bash
  • python3.4 (optional for automatic installation)
  • postgres, elasticsearch, and tons of other dependencies (see Makefile for reference)

Checkout main repository

This requires an github.com account with ssh keys.

git clone [email protected]:policycompass/policycompass.git
cd policycompass

Automatic installation on ubuntu systems

Install dependencies:

sudo make install_deps

Install dependency services and build shell environment with all development tools:

make

Start all installed services and the frontend using supervisord:

supervisord -c etc/supervisord.conf

Install Adhocracy:

make adhocracy3_install

Run Adhocracy:

supervisorctl start adhocracy:

Setup resources:

make adhocracy3_setup_resources

Manual installation

Install basic requirements:

  • python3.4
  • firefox (default setting for browser acceptance tests)

Checkout sub repositories:

git submodule foreach --recursive "(git checkout master; git submodule init; git submodule update; git pull)"

To update all repositories run:

git pull
git submodule foreach --recursive "(git submodule init; git submodule update; git-pull)"

Create Python virtualenv:

pyvenv-3.4 .

Install test runner:

bin/pip3.4 install -r requirements.txt

Install dependency services:

Read the README files in the subproject directories (./policycompass-*).

API Documentation

The API documentation for all the Policy Compass services can be found here.

Testing

Acceptance tests for the frontend webapplication and functional tests/specification that show how to use a service.

To ease distributed development every service API has a mock HTTP server which specifies HTTP responses for given HTTP requests.

Software Stack

API mock servers

You can start the example mock server with:

bin/python tests-mock-services/example-service.py

Test that it is working correctly:

wget http://localhost:9900/test/value

Run frontend acceptance tests

bin/py.test tests-acceptance-frontend

Run API tests

bin/py.test tests-api-services

Policy Compass is Free Software

This project (i.e. all files in this repository if not declared otherwise) is licensed under the GNU Affero General Public License (AGPLv3), see LICENSE.txt.

About

Policy Compass central repo

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 29.3%
  • Nginx 29.2%
  • Makefile 20.6%
  • JavaScript 19.5%
  • Shell 1.2%
  • Clojure 0.2%