Exemple #1
0
from cylc.owner import USER
from cylc.envvar import expandvars
from cylc.mkdir_p import mkdir_p
import cylc.flags
from cylc.cfgspec.utils import coerce_interval
from cylc.cfgspec.utils import coerce_interval_list
from cylc.network import PRIVILEGE_LEVELS


"Cylc site and user configuration file spec."

coercers['interval_seconds'] = lambda *args: coerce_interval(
    *args, check_syntax_version=False)
coercers['interval_minutes'] = lambda *args: coerce_interval(
    *args, back_comp_unit_factor=60, check_syntax_version=False)
coercers['interval_minutes_list'] = lambda *args: coerce_interval_list(
    *args, back_comp_unit_factor=60, check_syntax_version=False)


SPEC = {
    'process pool size': vdr(vtype='integer', default=4),
    'temporary directory': vdr(vtype='string'),
    'state dump rolling archive length': vdr(
        vtype='integer', vmin=1, default=10),
    'disable interactive command prompts': vdr(vtype='boolean', default=True),
    'enable run directory housekeeping': vdr(vtype='boolean', default=False),
    'run directory rolling archive length': vdr(
        vtype='integer', vmin=0, default=2),
    'submission polling intervals': vdr(
        vtype='interval_minutes_list', default=[]),
    'execution polling intervals': vdr(
        vtype='interval_minutes_list', default=[]),
Exemple #2
0
from parsec.validate import coercers
from parsec import ParsecError
from parsec.upgrade import upgrader, converter
from cylc.owner import USER
from cylc.envvar import expandvars
from cylc.mkdir_p import mkdir_p
import cylc.flags
from cylc.cfgspec.utils import (coerce_interval, coerce_interval_list,
                                DurationFloat)
from cylc.network import PRIVILEGE_LEVELS

coercers['interval_seconds'] = lambda *args: coerce_interval(
    *args, check_syntax_version=False)
coercers['interval_minutes'] = lambda *args: coerce_interval(
    *args, back_comp_unit_factor=60, check_syntax_version=False)
coercers['interval_minutes_list'] = lambda *args: coerce_interval_list(
    *args, back_comp_unit_factor=60, check_syntax_version=False)

SPEC = {
    'process pool size':
    vdr(vtype='integer', default=4),
    'temporary directory':
    vdr(vtype='string'),
    'state dump rolling archive length':
    vdr(vtype='integer', vmin=1, default=10),
    'disable interactive command prompts':
    vdr(vtype='boolean', default=True),
    'enable run directory housekeeping':
    vdr(vtype='boolean', default=False),
    'run directory rolling archive length':
    vdr(vtype='integer', vmin=0, default=2),
    'submission polling intervals':
Exemple #3
0
        else:
            n_dig = len(upper)
            return [str(i).zfill(n_dig) for i in range(int(lower), int(upper) + 1)]
    return value


coercers["cycletime"] = _coerce_cycletime
coercers["cycletime_format"] = _coerce_cycletime_format
coercers["cycletime_time_zone"] = _coerce_cycletime_time_zone
coercers["cycleinterval"] = _coerce_cycleinterval
coercers["final_cycletime"] = _coerce_final_cycletime
coercers["interval"] = coerce_interval
coercers["interval_minutes"] = lambda *a: coerce_interval(*a, back_comp_unit_factor=60)
coercers["interval_seconds"] = coerce_interval
coercers["interval_list"] = coerce_interval_list
coercers["interval_minutes_list"] = lambda *a: coerce_interval_list(*a, back_comp_unit_factor=60)
coercers["interval_seconds_list"] = coerce_interval_list
coercers["parameter_list"] = _coerce_parameter_list


SPEC = {
    "title": vdr(vtype="string", default=""),
    "description": vdr(vtype="string", default=""),
    "group": vdr(vtype="string", default="(ungrouped)"),
    "URL": vdr(vtype="string", default=""),
    "cylc": {
        "UTC mode": vdr(vtype="boolean", default=GLOBAL_CFG.get(["cylc", "UTC mode"])),
        "cycle point format": vdr(vtype="cycletime_format", default=None),
        "cycle point num expanded year digits": vdr(vtype="integer", default=0),
        "cycle point time zone": vdr(vtype="cycletime_time_zone", default=None),
        "required run mode": vdr(vtype="string", options=["live", "dummy", "simulation", ""]),
Exemple #4
0
def _coerce_final_cycletime(value, keys, _):
    """Coerce final cycle point."""
    return _strip_and_unquote(keys, value)


coercers['cycletime'] = _coerce_cycletime
coercers['cycletime_format'] = _coerce_cycletime_format
coercers['cycletime_time_zone'] = _coerce_cycletime_time_zone
coercers['cycleinterval'] = _coerce_cycleinterval
coercers['final_cycletime'] = _coerce_final_cycletime
coercers['interval'] = coerce_interval
coercers['interval_minutes'] = lambda *a: coerce_interval(
    *a, back_comp_unit_factor=60)
coercers['interval_seconds'] = coerce_interval
coercers['interval_list'] = coerce_interval_list
coercers['interval_minutes_list'] = lambda *a: coerce_interval_list(
    *a, back_comp_unit_factor=60)
coercers['interval_seconds_list'] = coerce_interval_list

SPEC = {
    'title': vdr(vtype='string', default=""),
    'description': vdr(vtype='string', default=""),
    'URL': vdr(vtype='string', default=""),
    'cylc': {
        'UTC mode':
        vdr(vtype='boolean', default=GLOBAL_CFG.get(['cylc', 'UTC mode'])),
        'cycle point format':
        vdr(vtype='cycletime_format', default=None),
        'cycle point num expanded year digits':
        vdr(vtype='integer', default=0),
        'cycle point time zone':
        vdr(vtype='cycletime_time_zone', default=None),