def load_data(cls): default = resource_filename("lxd_image_server", "default_config.toml") paths = [os.getenv("LXD_IMAGE_SERVER_CONFIG")] with cls._lock: cls.data = confight.load_app('lxd-image-server', default=default, paths=paths)
def start(self) -> None: config = confight.load_app('nice-bot', extension='toml') signal.signal(signal.SIGINT, self.shutdown) bootstrap = Bootstrap(config) bot, dp = bootstrap.bot, bootstrap.dp logging.info('Starting nice-bot') logging.info('Database shape: %r', dp.df.shape) bot.run(config['bot']['token'])
def load_data(cls): if cls.data: return cls.original_load_paths = confight.__dict__['load_paths'] confight.__dict__['load_paths'] = cls.confight_load_paths cls.data.update(confight.load_app('lxd-image-server')) # allow non root installs as well cls.data.update(confight.load_user_app('lxd-image-server')) confight.__dict__['load_paths'] = cls.original_load_paths cls.paths = cls.pathsAsDict.keys() cls.pathsAsDict = {} # allow lack of any config file if 'mirrors' not in cls.data: cls.data['mirrors'] = {}
def load_data(cls): if cls.data: return cls.data.update(confight.load_app('lxd-image-server'))
def __attrs_post_init__(self): gpio.setwarnings(False) gpio.setup(self.pump, gpio.OUT, initial=gpio.LOW) def water_on(self): if not self.pump_on and not self.sensor_on: gpio.output(self.pump, gpio.HIGH) def water_off(self): if self.pump_on: gpio.output(self.pump, gpio.LOW) @property def pump_on(self) -> bool: return gpio.input(self.pump) == gpio.HIGH @property def sensor_on(self) -> bool: return any(sensor.wet for sensor in sensors) config = confight.load_app('pi-watering-bot') sensors = list() gpio.setmode(gpio.BCM) ads = ADS1115.ADS1115() for name, sensor in config['hardware']['sensors'].items(): sensors.append( AdcSensor(name, sensor['pin'], sensor['threshold']) if sensor['type'] == 'adc' else PinSensor(name, sensor['pin']))