def provision_regions(items, database_name, overwrite=False, clear=False, skip_user_check=False): from isomer.provisions.base import provisionList from isomer.database import objectmodels provisionList(regions, 'region', overwrite, clear, skip_user_check) log('Provisioning: regions: Done.', emitter='PROVISIONS')
def provision_default_leerstandsmelderobject(items, database_name, overwrite=False, clear=False, skip_user_check=False): """Provisions the default system vessel""" from isomer.provisions.base import provisionList from isomer.database import objectmodels leerstandsmelderObject = objectmodels['leerstandsmelderobject'].find_one( {'name': 'Hello World!'} ) if leerstandsmelderObject is not None: if overwrite is False: log('Default leerstandsmelder object already existing. Skipping provisions.') return else: leerstandsmelderObject.delete() provisionList([DefaultLeerstandsmelderObject], 'leerstandsmelderobject', overwrite, clear, skip_user_check) log('Provisioning: Default Leerstandsmelder object: Done.', emitter='PROVISIONS')
def provision_system_user( items, database_name, overwrite=False, clear=False, skip_user_check=False ): """Provision a system user""" from isomer.provisions.base import provisionList from isomer.database import objectmodels # TODO: Add a root user and make sure owner can access it later. # Setting up details and asking for a password here is not very useful, # since this process is usually run automated. if overwrite is True: isolog("Refusing to overwrite system user!", lvl=warn, emitter="PROVISIONS") overwrite = False system_user_count = objectmodels["user"].count({"name": "System"}) if system_user_count == 0 or clear is False: provisionList(Users, "user", overwrite, clear, skip_user_check=True) isolog("Provisioning: Users: Done.", emitter="PROVISIONS") else: isolog("System user already present.", lvl=warn, emitter="PROVISIONS")
def provision_system_vessel(items, database_name, overwrite=False, clear=False, skip_user_check=False): """Provisions the default system vessel""" from isomer.provisions.base import provisionList from isomer.database import objectmodels vessel = objectmodels['vessel'].find_one({'name': 'Default System Vessel'}) if vessel is not None: if overwrite is False: isolog('Default vessel already existing. Skipping provisions.') return else: vessel.delete() provisionList([SystemVessel], 'vessel', overwrite, clear, skip_user_check) sysconfig = objectmodels['systemconfig'].find_one({'active': True}) isolog('Adapting system config for default vessel:', sysconfig) sysconfig.vesseluuid = SystemVessel['uuid'] sysconfig.save() isolog('Provisioning: Vessel: Done.', emitter='PROVISIONS')
def provision_system_config(items, database_name, overwrite=False, clear=False, skip_user_check=False): """Provision a basic system configuration""" from isomer.provisions.base import provisionList from isomer.database import objectmodels default_system_config_count = objectmodels["systemconfig"].count( {"name": "Default System Configuration"}) if default_system_config_count == 0 or (clear or overwrite): provisionList([SystemConfiguration], "systemconfig", overwrite, clear, skip_user_check) isolog("Provisioning: System: Done.", emitter="PROVISIONS") else: isolog( "Default system configuration already present.", lvl=warn, emitter="PROVISIONS", )