Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

vigiboard / dashboard / websetup.py @ 805cc54a

History | View | Annotate | Download (1.46 KB)

1
# -*- coding: utf-8 -*-
2
"""Setup the dashboard application"""
3

    
4
import logging
5

    
6
import transaction
7
from tg import config
8

    
9
from dashboard.config.environment import load_environment
10

    
11
__all__ = ['setup_app']
12

    
13
log = logging.getLogger(__name__)
14

    
15

    
16
def setup_app(command, conf, vars):
17
    """Place any commands to setup dashboard here"""
18
    load_environment(conf.global_conf, conf.local_conf)
19
    # Load the models
20
    from dashboard import model
21
    print "Creating tables"
22
    model.metadata.create_all(bind=config['pylons.app_globals'].sa_engine)
23

    
24
    manager = model.User()
25
    manager.user_name = u'manager'
26
    manager.display_name = u'Example manager'
27
    manager.email_address = u'manager@somedomain.com'
28
    manager.password = u'managepass'
29

    
30
    model.DBSession.add(manager)
31

    
32
    group = model.Group()
33
    group.group_name = u'managers'
34
    group.display_name = u'Managers Group'
35

    
36
    group.users.append(manager)
37

    
38
    model.DBSession.add(group)
39

    
40
    permission = model.Permission()
41
    permission.permission_name = u'manage'
42
    permission.description = u'This permission give an administrative right to the bearer'
43
    permission.groups.append(group)
44

    
45
    model.DBSession.add(permission)
46

    
47
    editor = model.User()
48
    editor.user_name = u'editor'
49
    editor.display_name = u'Example editor'
50
    editor.email_address = u'editor@somedomain.com'
51
    editor.password = u'editpass'
52

    
53
    model.DBSession.add(editor)
54
    model.DBSession.flush()
55

    
56
    transaction.commit()
57
    print "Successfully setup"