Temp manage.py
This commit is contained in:
4
cloud.py
4
cloud.py
@@ -1,9 +1,9 @@
|
|||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
|
|
||||||
from pillar_server import PillarServer
|
from pillar import PillarServer
|
||||||
|
|
||||||
app = PillarServer('.')
|
app = PillarServer('.')
|
||||||
app.process_extensions()
|
app.process_extensions()
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
app.run('::0', 5000, debug=True)
|
app.run('::0', 5001, debug=True)
|
||||||
|
89
manage.py
Executable file
89
manage.py
Executable file
@@ -0,0 +1,89 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
import logging
|
||||||
|
|
||||||
|
import os
|
||||||
|
from eve.methods.post import post_internal
|
||||||
|
from eve.methods.put import put_internal
|
||||||
|
from flask.ext.script import Manager
|
||||||
|
|
||||||
|
from pillar import PillarServer
|
||||||
|
|
||||||
|
app = PillarServer('.')
|
||||||
|
app.process_extensions()
|
||||||
|
|
||||||
|
# Use a sensible default when running manage.py commands.
|
||||||
|
if not os.environ.get('EVE_SETTINGS'):
|
||||||
|
settings_path = os.path.join(os.path.dirname(os.path.abspath(__file__)),
|
||||||
|
'pillar', 'eve_settings.py')
|
||||||
|
os.environ['EVE_SETTINGS'] = settings_path
|
||||||
|
|
||||||
|
manager = Manager(app)
|
||||||
|
log = logging.getLogger('manage')
|
||||||
|
log.setLevel(logging.INFO)
|
||||||
|
|
||||||
|
|
||||||
|
def put_item(collection, item):
|
||||||
|
item_id = item['_id']
|
||||||
|
internal_fields = ['_id', '_etag', '_updated', '_created']
|
||||||
|
for field in internal_fields:
|
||||||
|
item.pop(field, None)
|
||||||
|
# print item
|
||||||
|
# print type(item_id)
|
||||||
|
p = put_internal(collection, item, **{'_id': item_id})
|
||||||
|
if p[0]['_status'] == 'ERR':
|
||||||
|
print(p)
|
||||||
|
print(item)
|
||||||
|
|
||||||
|
|
||||||
|
@manager.command
|
||||||
|
def setup_db(admin_email):
|
||||||
|
"""Setup the database
|
||||||
|
- Create admin, subscriber and demo Group collection
|
||||||
|
- Create admin user (must use valid blender-id credentials)
|
||||||
|
- Create one project
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Create default groups
|
||||||
|
groups_list = []
|
||||||
|
for group in ['admin', 'subscriber', 'demo']:
|
||||||
|
g = {'name': group}
|
||||||
|
g = post_internal('groups', g)
|
||||||
|
groups_list.append(g[0]['_id'])
|
||||||
|
print("Creating group {0}".format(group))
|
||||||
|
|
||||||
|
# Create admin user
|
||||||
|
user = {'username': admin_email,
|
||||||
|
'groups': groups_list,
|
||||||
|
'roles': ['admin', 'subscriber', 'demo'],
|
||||||
|
'settings': {'email_communications': 1},
|
||||||
|
'auth': [],
|
||||||
|
'full_name': admin_email,
|
||||||
|
'email': admin_email}
|
||||||
|
result, _, _, status = post_internal('users', user)
|
||||||
|
if status != 201:
|
||||||
|
raise SystemExit('Error creating user {}: {}'.format(admin_email, result))
|
||||||
|
user.update(result)
|
||||||
|
print("Created user {0}".format(user['_id']))
|
||||||
|
|
||||||
|
# Create a default project by faking a POST request.
|
||||||
|
with app.test_request_context(data={'project_name': u'Default Project'}):
|
||||||
|
from flask import g
|
||||||
|
from pillar.api.projects.routes import create_project
|
||||||
|
|
||||||
|
g.current_user = {'user_id': user['_id'],
|
||||||
|
'groups': user['groups'],
|
||||||
|
'roles': set(user['roles'])}
|
||||||
|
|
||||||
|
create_project(overrides={'url': 'default-project',
|
||||||
|
'is_private': False})
|
||||||
|
|
||||||
|
|
||||||
|
@manager.command
|
||||||
|
def register_local_user(email, password):
|
||||||
|
from pillar.api.local_auth import create_local_user
|
||||||
|
create_local_user(email, password)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
manager.run()
|
Reference in New Issue
Block a user