~mbruzek/charms/precise/openerp-web/tests

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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#!/bin/bash

set -eu # -x for verbose logging to juju debug-log

ORIGIN=$(config-get origin)
DB_FILTER=$(config-get db_filter)
REMOTE_PRIVATE_ADDRESS=$(relation-get private-address)

USERNAME=openerp

# If $user is not set, DB is still setting itself up, we exit awaiting next run
[ -z "$REMOTE_PRIVATE_ADDRESS" ] && exit 0

if [[ $ORIGIN == lp ]]; then
  if ! getent passwd $USERNAME >/dev/null; then
      adduser --quiet --disabled-password \
              --gecos "OpenERP User" \
              $USERNAME
  fi

  cat > /etc/init/openerp-web.conf << EOF
description "OpenERP web interface."

start on runlevel [2345]
stop on runlevel [!2345]

respawn

chdir /srv/openerp-web
exec su -c "./openerp-web --proxy-mode --db-filter="${DB_FILTER}" --addons-path=addons --server-host ${REMOTE_PRIVATE_ADDRESS}" openerp
EOF

  start openerp-web || restart openerp-web

  open-port 8002/tcp

else

  cat > /etc/openerp-web/openerp-web.cfg <<EOF
[global]
server.environment = "production"

tools.sessions.on = True
tools.sessions.persistent = False

# Simple code profiling
server.profile_on = False
server.profile_dir = "profile"

# if this is part of a larger site, you can set the path
# to the TurboGears instance here
#server.webpath = ""

# logging
log.access_level = "INFO"
log.error_level = "INFO"

# Set to false to disable CSRF checks
tools.csrf.on = True
# replace builtin traceback tools by cgitb
tools.log_tracebacks.on: False
tools.cgitb.on: True
# a default install can probably avoid logging those via cgitb as they're
# available in the server log
tools.cgitb.ignore=(
    openobject.errors.Concurrency,
    openobject.errors.TinyException)

# OpenERP Server
openerp.server.host = '${REMOTE_PRIVATE_ADDRESS}'
openerp.server.port = '8070'
openerp.server.protocol = 'socket'
openerp.server.timeout = 450

# Do not spam the Apache error.log with access logs
log.screen = False

# Web client settings
[openerp-web]
# filter dblists based on url pattern?
# NONE: No Filter
# EXACT: Exact Hostname
# UNDERSCORE: Hostname_
# BOTH: Exact Hostname or Hostname_

dblist.filter = 'NONE'

# whether to show Databases button on Login screen or not
dbbutton.visible = True

# will be applied on company logo
company.url = ''

[/]
tools.sessions.storage_type = 'file'
tools.sessions.storage_path = '/var/lib/openerp-web/sessions'
                                                                
EOF

  service openerp-web start || service openerp-web restart
  open-port 80/tcp
fi