rev |
line source |
jbe@0
|
1
|
jbe@0
|
2 Setup the database:
|
jbe@0
|
3 $ createdb liquid_feedback
|
jbe@0
|
4 $ psql -v ON_ERROR_STOP=1 -f core.sql liquid_feedback
|
jbe@0
|
5
|
jbe@0
|
6 Optionally insert demo data:
|
jbe@0
|
7 $ psql -v ON_ERROR_STOP=1 -f demo.sql liquid_feedback
|
jbe@0
|
8
|
jbe@0
|
9 Compile lf_update binary:
|
jbe@0
|
10 $ make
|
jbe@0
|
11
|
jbe@380
|
12 Ensure that "lf_update dbname=liquid_feedback" and
|
jbe@380
|
13 "lf_update_suggestion_order dbname=liquid_feedback" are called
|
jbe@380
|
14 regularly! It is required to run these commands regularly
|
jbe@380
|
15 (i.e. every 5 minutes via cron) to update cached supporter counts,
|
jbe@380
|
16 to change the state of issues when neccessary, to calculate the
|
jbe@380
|
17 result of votings, etc. If you wish, copy the created lf_update
|
jbe@380
|
18 and lf_update_suggestion_order files to /usr/local/bin or a
|
jbe@380
|
19 similar directory.
|
jbe@202
|
20
|
jbe@380
|
21 It is possible to run these two commands in parallel, if a setup
|
jbe@380
|
22 requires splitting the load to multiple processor cores. In other
|
jbe@380
|
23 cases it is recommended to run "lf_update" first, and then
|
jbe@380
|
24 "lf_update_suggestion_order".
|
jbe@202
|
25
|
jbe@380
|
26 On successful run, these commands will not produce any output
|
jbe@380
|
27 and exit with code 0. The command "lf_update_suggestion_order" may
|
jbe@380
|
28 be called with a first argument of "-v" to print log output.
|
jbe@0
|
29
|
jbe@0
|
30 NOTE: When writing to the database, some INSERTs must be executed
|
jbe@0
|
31 within the same transaction, e.g. issues can't exist without
|
jbe@0
|
32 an initiative and vice versa.
|
jbe@0
|
33
|
jbe@8
|
34 To create an export file, which is containing all but private data,
|
jbe@8
|
35 you may use the lf_export shell-script:
|
jbe@8
|
36 $ lf_export liquid_feedback export.sql.gz
|
jbe@8
|
37
|
jbe@274
|
38 Refer to source code of function "delete_private_data"() to see,
|
jbe@274
|
39 which data gets deleted. If you need a different behaviour, please
|
jbe@274
|
40 copy the function and modify the lf_export shell script accordingly.
|
jbe@274
|
41
|
jbe@0
|
42 To uninstall the software, delete the lf_update binary
|
jbe@0
|
43 and drop the database by entering the following command:
|
jbe@0
|
44 $ dropdb liquid_feedback
|
jbe@0
|
45
|
jbe@120
|
46 Updating is done using the update scripts in the update/ directory.
|
jbe@350
|
47 Do not forget to make backups, before installing any updates.
|
jbe@251
|
48 After updating it is recommended to recreate the schema as follows
|
jbe@251
|
49 (assuming the database superuser is named "postgres"):
|
jbe@120
|
50 $ pg_dump --disable-triggers --data-only DATABASE_NAME > tmp.sql
|
jbe@120
|
51 $ dropdb DATABASE_NAME
|
jbe@120
|
52 $ createdb DATABASE_NAME
|
jbe@120
|
53 $ psql -v ON_ERROR_STOP=1 -f core.sql DATABASE_NAME
|
jbe@251
|
54 $ su postgres # (execute following command as database superuser)
|
jbe@120
|
55 $ psql -v ON_ERROR_STOP=1 -f tmp.sql DATABASE_NAME
|
jbe@251
|
56 $ exit # leave "su" command
|
jbe@120
|
57 $ rm tmp.sql
|
jbe@120
|
58
|