blob: 37d4571eba736a3ce0f92194979e321870449abd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
1. Create PostgreSQL User and Database
$ sudo su postgres
$ psql
Replace <user> with your login and "www-data" with the user under which
apache2 is running.
CREATE DATABASE brep;
CREATE USER <user>;
GRANT ALL PRIVILEGES ON DATABASE brep TO <user>;
CREATE USER "www-data" INHERIT IN ROLE <user>;
Exit psql (^D) and postgres login (^D), then make sure the logins work:
$ psql -d brep
$ sudo sudo -u www-data psql -d brep
To troubleshooting, see PostgreSQL logs, for example:
$ sudo tail -f /var/log/postgresql/*.log
2. Create Database Schema and Load the Data
All the commands are executed from brep project root.
$ psql --quiet -d brep -f brep/package.sql
$ loader/brep-loader tests/loader/r.conf # Or some other loader config.
To verify:
$ psql -d brep -c 'SELECT name, summary FROM repository'
3. Setup Apache2 Module
Here we assume apache2 is installed and you have an appropriate VirtualServer
ready (the one for the default site is usually a good candidate). Open the
corresponding apache2 .conf file and add the following inside VirtualServer,
replacing <BREP-OUT-ROOT> and <BREP-SRC-ROOT> with the actual absolute paths
(if you built brep in the source tree, then the two would be the same).
# brep module configuration.
#
LoadModule brep_module <BREP-OUT-ROOT>/brep/mod_brep.so
SetHandler brep
brep-conf <BREP-SRC-ROOT>/etc/brep.conf
# brep static content (CSS files).
#
# Note: trailing slashes are important!
#
Alias /pkg/@/ <BREP-SRC-ROOT>/www/
<Directory "<BREP-SRC-ROOT>/www">
Require all granted
</Directory>
You may want to replace <BREP-SRC-ROOT>/etc/brep.conf with a custom
configuration file if you often need to modify it.
Restart apache2 (use the second version for systemd):
$ sudo /etc/init.d/apache2 restart
$ sudo systemctl restart apache2
To verify, visit the repository root. To troubleshoote, see Apache logs,
for example:
$ sudo tail -f /var/log/apache2/error.log
|