Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

vigiboard / vigiboard / websetup.py @ 57f7cb3f

History | View | Annotate | Download (1.93 KB)

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

    
4
import logging
5

    
6
import transaction
7
from tg import config
8

    
9
from vigiboard.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 vigiboard here"""
18
    load_environment(conf.global_conf, conf.local_conf)
19
    # Load the models
20
    from vigiboard import model
21
    print "Creating tables"
22
    model.metadata.create_all(bind=config['pylons.app_globals'].sa_engine)
23

    
24
    # Create the default user for TG, must be change for real test and production
25
    manager = model.User()
26
    manager.user_name = u'manager'
27
    manager.display_name = u'Example manager'
28
    manager.email_address = u'manager@somedomain.com'
29
    manager.password = u'managepass'
30

    
31
    model.DBSession.add(manager)
32

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

    
37
    group.users.append(manager)
38

    
39
    model.DBSession.add(group)
40

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

    
46
    model.DBSession.add(permission)
47

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

    
54
    model.DBSession.add(editor)
55

    
56
    group = model.Group()
57
    group.group_name = u'editors'
58
    group.display_name = u'Editors Group'
59

    
60
    group.users.append(editor)
61

    
62
    model.DBSession.add(group)
63

    
64
    permission = model.Permission()
65
    permission.permission_name = u'edit'
66
    permission.description = u'This permission give an Editor the right to edit'
67
    permission.groups.append(group)
68

    
69
    model.DBSession.add(permission)
70

    
71
    model.DBSession.flush()
72

    
73
    transaction.commit()
74
    print "Successfully setup"