示例#1
0
def get_meid(mvid):
    ''' Given a model_version_id, return its modelable_entity_id. Uses
    ENVIRONMENT_NAME environment variable to determine which database to read
    from'''
    sett = load_settings()
    eng = db.get_engine(conn_def='epi',
                        env=sett['env_variables']['ENVIRONMENT_NAME'])
    meid = pd.read_sql(
        """
        SELECT modelable_entity_id FROM epi.model_version
        WHERE model_version_id = %s""" % mvid, eng)
    return meid.values[0][0]
示例#2
0
def get_meid(mvid):
    ''' Given a model_version_id, return its modelable_entity_id. Uses
    ENVIRONMENT_NAME environment variable to determine which database to read
    from'''
    sett = load_settings()
    eng = db.get_engine(conn_def='epi',
                        env=sett['env_variables']['ENVIRONMENT_NAME'])
    meid = pd.read_sql("""
        SELECT modelable_entity_id FROM epi.model_version
        WHERE model_version_id = %s""" % mvid, eng)
    try:
        return meid.values[0][0]
    except IndexError:
        raise RuntimeError(f"No meid for {mvid} in environment "
                           f"{sett['env_variables']['ENVIRONMENT_NAME']} "
                           f"to host {eng.host}")
示例#3
0
import sqlalchemy
from sqlalchemy.sql import text

from cascade_ode.settings import load as load_settings
from cascade_ode.demographics import Demographics
from cascade_ode import db

# Set default file mask to readable-for all users
os.umask(0o0002)

# Path to this file
this_path = os.path.dirname(os.path.abspath(__file__))

# Get configuration options
settings = load_settings()

RUNNING = -1
FAILED = 7


def skip_if_uploaded(func):
    def decorated(*args, **kwargs):
        try:
            return func(*args, **kwargs)
        except sqlalchemy.exc.IntegrityError:
            log = logging.getLogger(__name__)
            log.debug(
                'Skipping file since already uploaded: {}'.format(args))
    return decorated
示例#4
0
import os
from functools import lru_cache
import pandas as pd

from cascade_ode.argument_parser import cascade_parser, inverse_parser
from cascade_ode.patch_io import setup_io_patches
from cascade_ode.settings import load as load_settings
from cascade_ode import db
from cascade_ode.setup_logger import setup_logger
from cascade_ode import sge

# Set default file mask to readable-for all users
os.umask(0o0002)

# Load settings from file
settings = load_settings(check_for_custom_conda=True)


@lru_cache()
def prepare_directories(mvid, create_directories=True):
    """Defines, creates, and returns directories for cascade outputs and logs

    Args:
        mvid (int): model_version_id associated with given cascade model run.
            Used to create directory paths.
        create_directories (bool): boolean to specify weather or not to create
            given directories. Specify 'False' to only return directory strings.
    """

    logdir = '%s/%s' % (settings['log_dir'], mvid)
    root_dir = '%s/%s' % (settings['cascade_ode_out_dir'], mvid)