55 lines
1.5 KiB
Python
55 lines
1.5 KiB
Python
from gs.setup import Setup
|
|
import os
|
|
|
|
|
|
class GrowSystem:
|
|
|
|
version = "1.0"
|
|
|
|
initial_config = None
|
|
|
|
def __init__(self):
|
|
print("Initialize Growsystem", self.version)
|
|
|
|
if not self._is_initial_config_existing():
|
|
print("No config existing. Start setup ...")
|
|
self._setup()
|
|
return
|
|
|
|
from gs.grow_system_api import GrowSystemApi as GSA
|
|
self.gsapi = GSA()
|
|
|
|
if self._is_config_existing():
|
|
print("Skip Setup. Config existing.")
|
|
elif self._is_initial_config_existing():
|
|
print("Initial config only existing (no base config). Start activation ...")
|
|
self._activate()
|
|
|
|
def _setup(self):
|
|
setup = Setup()
|
|
setup.setup_pico()
|
|
|
|
def _activate(self):
|
|
print("Start activation!")
|
|
import gs.config.initial_config as ic
|
|
self.initial_config = ic.config
|
|
device_config = self.gsapi.activate(self.initial_config)
|
|
print("Device Config:", device_config)
|
|
|
|
def _is_config_existing(self):
|
|
return self._is_file_existing('/gs/config/config.py')
|
|
|
|
def _is_initial_config_existing(self):
|
|
return self._is_file_existing('/gs/config/initial_config.py')
|
|
|
|
def _is_file_existing(self, filepath):
|
|
try:
|
|
f = open(filepath, "r")
|
|
f.close()
|
|
# continue with the file.
|
|
return True
|
|
except OSError: # open failed
|
|
# handle the file open cas
|
|
return False
|
|
|