This repository has been archived on 2023-08-16. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
Felix f2acf705ee making code safer
still doesn't quite work
2019-08-14 14:28:29 +01:00
.idea Fix various bits for import 2019-07-14 15:15:14 +01:00
doc Payroll sumission API improved and test added 2017-09-18 17:13:18 +01:00
etc/code-point-open Added codepoint open data to etc. dir with LICENCE file 2017-09-21 13:15:20 +01:00
images fixes 2017-04-20 16:40:24 +01:00
lib making code safer 2019-08-14 14:28:29 +01:00
log Added log folder and gitignore config 2016-09-15 16:55:27 +01:00
public Word wrap feedback in admin console 2017-10-23 15:02:18 +01:00
script added new relations 2019-07-03 17:36:36 +01:00
share Added entity postcode lookup 2019-07-12 21:30:34 +01:00
t Possible fix for test failure 2019-07-14 15:52:39 +01:00
templates Fix various bits for import 2019-07-14 15:15:14 +01:00
.DS_Store custom graph duration and dateRange added 2019-08-14 14:00:34 +01:00
.gitignore updated git ignore and commented out currently redundant code 2019-07-12 17:07:42 +01:00
.travis.yml Disable postgres tests while investigating unrelated issue to current 2018-01-02 21:58:20 +00:00
CHANGELOG.md fixed some api and import stuff 2019-07-09 13:50:26 +01:00
cpanfile Fix various bits for import 2019-07-14 15:15:14 +01:00
make_leaderboards Fixed rank sending and added leaderboard creation script 2017-07-20 11:56:24 +01:00
pear-local_loop.conf Merge remote-tracking branch 'origin/TBSliver/Minion-Tasks' into finn/minionimport 2019-07-05 18:50:37 +01:00
pear-local_loop.development.conf Fix various bits for import 2019-07-14 15:15:14 +01:00
pear-local_loop.testing.conf Update config and tests so deployment and testing use separate databases. 2017-03-08 18:52:04 +00:00
README.md Merge remote-tracking branch 'origin/TBSliver/Minion-Tasks' into finn/minionimport 2019-07-05 18:50:37 +01:00

Pear LocalLoop Server

Current Status

Master: Build Status

Development: Build Status

Testing

To run the main test framework, first install all the dependencies, then run the tests:

cpanm --installdeps .
prove -lr

To run the main framework against a PostgreSQL backend, assuming you have postgres installed, you will need some extra dependencies first:

cpanm --installdeps . --with-feature postgres
PEAR_TEST_PG=1 prove -lr

Minion

to set up minion support, you will need to create a database and user for minion to connect to. In production his should be a PostgreSQL database, however an SQLite db can be used in testing.

To use the SQLite version, run the following commands:

cpanm --installdeps --with-feature sqlite .

And then add the following to your configuration file:

  minion => {
    SQLite => 'sqlite:minion.db',
  },

This will then use an SQLite db for the minion backend, at minion.db

Example PostgreSQL setup

# Example commands - probably not the best ones
# TODO come back and improve these with proper ownership and DDL rights
sudo -u postgres createuser minion
sudo -u postgres createdb localloop_minion
sudo -u postgres psql
psql=# alter user minion with encrypted password 'abc123';
psql=# grant all privileges on database localloop_minion to minion;

Dev notes

Local test database

To install a local DB:

./script/deploy_db install -c 'dbi:SQLite:dbname=foodloop.db'

To do an upgrade of it after making DB changes to commit:

./script/deploy_db write_ddl -c 'dbi:SQLite:dbname=foodloop.db'
./script/deploy_db upgrade -c 'dbi:SQLite:dbname=foodloop.db'

To redo leaderboards:

./script/pear-local_loop recalc_leaderboards

To serve a test version locally of the server:

morbo script/pear-local_loop