when db is created we should create a shop for the root_domain saas

modified:   development.ini
	modified:   make_post_sell/scripts/initialize_db.py
This commit is contained in:
Russell Ballestrini 2022-08-26 12:58:54 -04:00
parent d19fc96bb3
commit 8eec43d64c
2 changed files with 28 additions and 2 deletions

View file

@ -38,6 +38,7 @@ session.samesite = None
###
app.root_domain = blanka.foxhop.net
app.root_domain_owner_email = russell.ballestrini@gmail.com
app.root_url = http://blanka.foxhop.net:6501
# TODO: these values should be moved to environment variables & we should create an

View file

@ -5,15 +5,40 @@ from pyramid.paster import bootstrap, get_appsettings, setup_logging
from sqlalchemy.exc import OperationalError
from .. import models
from ..models.user import get_or_create_user_by_email
from ..models import Shop
def setup_models(dbsession):
def setup_models(dbsession, settings):
"""
Add or update models / fixtures in the database.
"""
# model = models.mymodel.MyModel(name='one', value=1)
# dbsession.add(model)
root_domain_shop = Shop(
settings["app.root_domain"],
"000-000-0000",
"none",
"Reserved shop for SaaS root domain."
)
root_domain_shop.domain_name = settings["app.root_domain"]
dbsession.add(root_domain_shop)
dbsession.flush()
root_domain_owner = get_or_create_user_by_email(
dbsession,
settings["app.root_domain_owner_email"]
)
dbsession.add(root_domain_owner)
dbsession.flush()
us = root_domain_shop.add_user_to_shop(root_domain_owner, role_id=0)
dbsession.add(us)
dbsession.flush()
def parse_args(argv):
@ -37,7 +62,7 @@ def main(argv=sys.argv):
try:
with env['request'].tm:
dbsession = env['request'].dbsession
setup_models(dbsession)
setup_models(dbsession, settings)
except OperationalError:
print('''
Pyramid is having a problem using your SQL database. The problem