Esempio n. 1
0
def main():
    logging.basicConfig(filename='log/lims_sql.log', format='%(levelname)s: %(message)s', level=logging.DEBUG)
    logging.info(local_datetime_string() + '- App Initiated')

    kwargs_task_hourly = {
        "cutoff_month": 6, 
        "tablename_dispo_history": 'dispo_history', 
        "tablename_sample_results": 'sample_results', 
        "tablename_update_date": 'update_date'
    }

    kwargs_task_daily = {
        "cutoff_month": 36, 
        "tablename_dispo_history": 'dispo_history_3_years', 
        "tablename_sample_results": 'sample_results_3_years', 
        "tablename_update_date": 'update_date_3_years'
    }

    def hourly():
        return SampleUpdateTask(**kwargs_task_hourly)

    def daily():
        return SampleUpdateTask(**kwargs_task_daily)

    Scheduler([hourly]).on(hour=11, minute=55).every(hours=1, minutes=0).run()
    Scheduler([daily]).on(hour=23, minute=55).run()

    return None
Esempio n. 2
0
def main():
    def exit():
        logger.debug("Stopping active friends")
        for f in ui.friend_list:
            f.close()
        logger.debug("Shutdown scheduler")
        ui.scheduler.must_run = False
        while ui.scheduler.isRunning():
            logger.debug("Waiting scheduler")
            if ui.scheduler.waiting_authorized_contact == True:
                break
            sleep(0.1)
        logger.debug("Restore profile")
        config.restore_profile()
        if config.useusb == QtCore.Qt.Checked:
            logger.debug("Restore USB")
            config.restore_useusb()

    opt_parser = OptionParser()
    opt_parser.add_option("-d",
                          "--debug",
                          dest="debug_mode",
                          action="store_true",
                          default='False',
                          help="Debug mode")

    app = QtGui.QApplication(sys.argv)
    #    app.setOrganizationName("HeySms")
    #    app.setOrganizationDomain("HeySms")
    app.setApplicationName("HeySms")
    (options, args) = opt_parser.parse_args([str(i) for i in app.arguments()])
    logger.set_debug(options.debug_mode)

    main_window = QtGui.QMainWindow()
    ui = Ui_MainWindow(app)
    ui.setupUi(main_window)
    config.parent = ui

    ui.call_listener = Call_listener(ui)
    ui.call_listener.start()
    logger.debug("Call_listener started")
    ui.sms_listener = Sms_listener(ui)
    ui.sms_listener.start()
    logger.debug("Sms_listener started")
    ui.scheduler = Scheduler(ui)
    ui.scheduler.start()
    logger.debug("Scheduler started")

    main_window.setWindowTitle("HeySms")
    main_window.setAttribute(QtCore.Qt.WA_Maemo5AutoOrientation, True)
    main_window.show()
    main_window.repaint()
    ui.central_widget.repaint()
    ui.central_widget.reload_contacts()

    QtCore.QObject.connect(app, QtCore.SIGNAL("aboutToQuit()"), exit)

    sys.exit(app.exec_())
Esempio n. 3
0
def main():
    global scheduler, schedulerThread, downloader

    setup()

    downloader = Downloader()
    scheduler = Scheduler()
    schedulerThread = None
    Pusher()

    t = threading.Thread(target=send_heartbeat)
    t.daemon = True
    t.start()

    t = threading.Thread(target=websocket_server)
    t.daemon = True
    t.start()

    watchdog_thread = threading.Event()
    notify_systemd(watchdog_thread)

    if is_under_voltage():
        browser_template('under_voltage')
        sleep(5)

    logging.debug('Entering infinite loop.')
    while True:
        if not scheduler.slides or len(
                scheduler.slides
        ) - 1 == scheduler.index or scheduler.state != scheduler.STATE_OK:
            schedulerThread = threading.Thread(target=run_scheduler)
            schedulerThread.start()
            if not scheduler.slides and schedulerThread.isAlive():
                wait_for_scheduler()

        broadcast_loop(scheduler)

        if scheduler.index is 0 and schedulerThread and schedulerThread.isAlive(
        ):
            wait_for_scheduler()
Esempio n. 4
0
    def __init__(self, server_id, server_data, client):
        self.server_id = server_id
        self.client = client

        self.server_os = 'w'
        self.gamemap = 'chernarus+'
        self.hive = 'public'
        self.servername = DEFAULT_SERVERNAME
        self.max_players = 1
        self.gametime = '0:00'
        self.time_acceleration = 0

        self._update(server_data)

        self.players = {}
        self.first_players_fetch = True

        self.create_callbacks(
            'player',
            ['connect', 'disconnect', 'guid', 'chat', 'kick', 'ping_update'])

        self.create_callbacks('tool', [
            'started', 'stopped', 'halted', 'error', 'config_update',
            'module_update', 'notice'
        ])

        self.client.api.server_state(self.server_id, ServerStates.STARTING)

        self.setup_rcon()

        self.scheduler = Scheduler()
        self.tasks_created = False
        self.checkalive_fails = 0
        self.reconnects = 0

        self.start()

        self._modules = []
        self.load_modules()
Esempio n. 5
0
    def __init__(self, name, igh=None):
        Instrument.__init__(self, name, tags=['virtual'])

        self._igh = qkit.instruments.get(igh)

        self.add_parameter('timeout',
                           type=float,
                           flags=Instrument.FLAG_GETSET,
                           units='sec')
        self.add_parameter('idle_mintime',
                           type=float,
                           flags=Instrument.FLAG_GETSET,
                           units='sec')
        self.add_parameter('slow_mintime',
                           type=float,
                           flags=Instrument.FLAG_GETSET,
                           units='sec')
        self.add_parameter('disk_mintime',
                           type=float,
                           flags=Instrument.FLAG_GETSET,
                           units='sec')
        self.add_parameter('timeout_mode',
                           type=bool,
                           flags=Instrument.FLAG_GET)
        self.add_parameter('idle_mode', type=bool, flags=Instrument.FLAG_GET)
        self.add_parameter('plot_enable', type=bool, flags=Instrument.FLAG_GET)
        self.add_parameter('status', type=str, flags=Instrument.FLAG_GET)

        self.add_function('start')
        self.add_function('stop')
        self.add_function('plot_start')
        self.add_function('plot_stop')
        self.add_function('set_default_fast')
        self.add_function('set_default_slow')

        self._debug_counter = 0

        self._timeout = 10
        self._idle_mintime = 10
        self._slow_mintime = 300
        self._disk_mintime = 10

        self._slow_lasttime = 0
        self._disk_lasttime = 0

        self.plot_stop()

        self._dir = os.path.join(qkit.cfg.get('datadir'), 'Tlog')
        self._filebasename = 'temperature_log'
        self._this_month = None

        if not os.path.isdir(self._dir):
            os.makedirs(self._dir)

        self._last_hour = TimeBuffer(60 * 60, self._dir, 'last_hour.dat')
        self._last_12hour = TimeBuffer(60 * 60 * 12, self._dir,
                                       'last_12hour.dat')

        self._task = Scheduler(self._run_all,
                               self._timeout,
                               self._idle_mintime,
                               timeout_mode=True,
                               idle_mode=True)
        self._status = 'running'

        self.get_all()
Esempio n. 6
0
from lib.libvirt_utils import LibvirtUtils, VirtDupXML, SnapshotManager
from lib.scheduler import Scheduler
from lib.config import Config
from pprint import pprint
import libvirt
from lib.qemu_utils import img_info
import logging

#config_path = "/etc/virt-dup.yml"

config_path = "/home/spencer/git-repos/virt-dup/virt-dup.yml"

config = Config(config_path)

Scheduler(config)
"""
lv = LibvirtUtils(config)

domain = lv.domain_search('ubuntu18.04')

xml = VirtDupXML(config, domain)
#xml.delete_all_jobs()
#xml.add_job()

for job in xml.loaded_jobs:
#    pass

    sm = SnapshotManager(config, xml, job)
    sm.stage_image(staging=False)
#    sm.block_commit()
Esempio n. 7
0
pubSub = PubSub()


def import_events() -> [Event]:
    events = []
    events_path = Path('events.json').resolve()

    with open(events_path, 'r') as f:
        data = f.read()
        events_json = json.loads(data)
        for event_json in events_json:
            event = Event(**event_json)
            event.date = datetime.strptime(event_json['date'],
                                           '%Y-%m-%d %H:%M')  # format date
            events.append(event)
        return events


def subscribe_events_to_functions():
    pubSub.subscribe('PRINT_CONSOLE', print_console)
    pubSub.subscribe('WRITE_QUOTE_FILE', write_quote_file)


if __name__ == '__main__':
    subscribe_events_to_functions()
    events = import_events()
    # Just for testing, we will publish_missed_events one time only
    scheduler = Scheduler(waitSec=1, events=events)
    scheduler.publish_missed_events()
    scheduler.active = False
Esempio n. 8
0
 def run(self):
     self.scheduler = Scheduler()
     self.scheduler.start()
Esempio n. 9
0
import sys

from json import dumps
from flask import request, render_template, redirect, url_for, session
from flask_wtf.csrf import CSRFError
from config import *
from . import app, csrf, apscheduler

from lib.login import login_check
from lib import common
from lib.scheduler import Scheduler
from lib.dependency import Dependency

reload(sys)
sys.setdefaultencoding('utf8')
scheduler = Scheduler()
dependency = Dependency()


@app.template_filter(name='unicode2str')
def unicode2str(data):
    convert = []
    for i in data:
        convert.append(str(i))
    return convert


# 镜像详情
@app.route('/images_details')
@app.route('/tmp_link')
def images_details():