Skip to content

Commit

Permalink
fix module counts
Browse files Browse the repository at this point in the history
  • Loading branch information
BenediktMKuehne committed Jul 12, 2024
1 parent b470b54 commit 927862d
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 53 deletions.
20 changes: 19 additions & 1 deletion embark/embark/helper.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,24 @@ def cleanup_charfield(charfield) -> str:
return charfield


def count_emba_modules(emba_dir_path):
s_module_cnt, p_module_cnt, q_module_cnt, l_module_cnt, f_module_cnt, d_module_cnt = 0, 0, 0, 0, 0, 0
for mod_file_ in os.listdir(f"{emba_dir_path}/modules"):
if mod_file_.startswith('S'):
s_module_cnt += 1
elif mod_file_.startswith('P'):
p_module_cnt += 1
elif mod_file_.startswith('F'):
f_module_cnt += 1
elif mod_file_.startswith('L'):
l_module_cnt += 1
elif mod_file_.startswith('Q'):
q_module_cnt += 1
elif mod_file_.startswith('D'):
d_module_cnt += 1
return s_module_cnt, p_module_cnt, q_module_cnt, l_module_cnt, f_module_cnt, d_module_cnt


def get_version_strings():
# gets us the currently installed version
if Path(settings.EMBA_ROOT + "/external/onlinechecker").exists():
Expand Down Expand Up @@ -100,4 +118,4 @@ def get_version_strings():
TEST_STRING = 'Linux / v2.6.33.2'
print(cleanup_charfield(TEST_STRING))

print(get_version_strings())
print(count_emba_modules(emba_dir_path="/home/cylox/embark/emba"))
14 changes: 9 additions & 5 deletions embark/embark/logreader.py
Original file line number Diff line number Diff line change
Expand Up @@ -112,8 +112,8 @@ def phase_identify(status_message):
failed_pattern = "EMBA failed in docker mode!"

# calculate percentage
max_module = -1
phase_nmbr = -1
max_module = -2
phase_nmbr = -2
if re.search(pattern=re.escape(pre_checker_phase_pattern), string=status_message["phase"]):
max_module = EMBA_P_MOD_CNT
phase_nmbr = EMBA_P_PHASE
Expand All @@ -130,7 +130,7 @@ def phase_identify(status_message):
max_module = 0
phase_nmbr = EMBA_PHASE_CNT
elif re.search(pattern=re.escape(failed_pattern), string=status_message["phase"]):
max_module = -2
max_module = -1
phase_nmbr = EMBA_PHASE_CNT
else:
logger.info("Undefined pattern in logreader %s ", status_message["phase"])
Expand All @@ -147,10 +147,14 @@ def update_status(self, stream_item_list):
elif max_module > 0:
self.module_cnt += 1
self.module_cnt = self.module_cnt % max_module # make sure it's in range
percentage = phase_nmbr * (100 / EMBA_PHASE_CNT) + ((100 / EMBA_PHASE_CNT) / max_module) * self.module_cnt # increments: F=6.25, S=0.65, L=3.57, P=1.25
percentage = phase_nmbr * (100 / EMBA_PHASE_CNT) + ((100 / EMBA_PHASE_CNT) / max_module) * self.module_cnt
elif max_module == -1:
percentage = 100
self.finish = True
logger.error("EMBA failed with %s ", self.status_msg)
else:
logger.error("Undefined state in logreader %s ", self.status_msg)
percentage = self.status_msg["percentage"]
percentage = self.status_msg["percentage"] # stays the same

logger.debug("Status is %d, in phase %d, with modules %d", percentage, phase_nmbr, max_module)

Expand Down
27 changes: 3 additions & 24 deletions embark/embark/settings/deploy.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

from dotenv import load_dotenv

from embark.helper import get_version_strings
from embark.helper import count_emba_modules, get_version_strings

# load .env file
load_dotenv()
Expand Down Expand Up @@ -307,30 +307,9 @@
SECURE_HSTS_SECONDS = 0
SECURE_SSL_REDIRECT = False


def count_emba_modules(emba_dir_path):
s_module_cnt, p_module_cnt, q_module_cnt, l_module_cnt, f_module_cnt = 0, 0, 0, 0, 0
for mod_file_ in os.listdir(f"{emba_dir_path}/modules"):
if mod_file_.startswith('S'):
s_module_cnt += 1
elif mod_file_.startswith('P'):
p_module_cnt += 1
elif mod_file_.startswith('F'):
f_module_cnt += 1
elif mod_file_.startswith('L'):
l_module_cnt += 1
elif mod_file_.startswith('Q'):
q_module_cnt += 1
return s_module_cnt, p_module_cnt, f_module_cnt, l_module_cnt, q_module_cnt


try:
EMBA_S_MOD_CNT, EMBA_P_MOD_CNT, EMBA_F_MOD_CNT, EMBA_L_MOD_CNT, EMBA_Q_MOD_CNT = count_emba_modules(EMBA_ROOT)
EMBA_S_MOD_CNT, EMBA_P_MOD_CNT, EMBA_Q_MOD_CNT, EMBA_L_MOD_CNT, EMBA_F_MOD_CNT, EMBA_D_MOD_CNT = count_emba_modules(EMBA_ROOT)
except FileNotFoundError as file_error:
print("[Warning] Installation is missing the EMBA submodule")
EMBA_S_MOD_CNT = 44
EMBA_P_MOD_CNT = 18
EMBA_F_MOD_CNT = 4
EMBA_L_MOD_CNT = 8
EMBA_S_MOD_CNT, EMBA_P_MOD_CNT, EMBA_Q_MOD_CNT, EMBA_L_MOD_CNT, EMBA_F_MOD_CNT, EMBA_D_MOD_CNT = 46, 20, 1, 10, 6, 3

VERSION = get_version_strings()
26 changes: 3 additions & 23 deletions embark/embark/settings/dev.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

from dotenv import load_dotenv

from embark.helper import get_version_strings
from embark.helper import count_emba_modules, get_version_strings

# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent.parent
Expand Down Expand Up @@ -271,29 +271,9 @@
}
TEMP_DIR = Path("/tmp/")


def count_emba_modules(emba_dir_path):
s_module_cnt, p_module_cnt, q_module_cnt, l_module_cnt, f_module_cnt = 0, 0, 0, 0, 0
for mod_file_ in os.listdir(f"{emba_dir_path}/modules"):
if mod_file_.startswith('S'):
s_module_cnt += 1
elif mod_file_.startswith('P'):
p_module_cnt += 1
elif mod_file_.startswith('F'):
f_module_cnt += 1
elif mod_file_.startswith('L'):
l_module_cnt += 1
elif mod_file_.startswith('Q'):
q_module_cnt += 1
return s_module_cnt, p_module_cnt, f_module_cnt, l_module_cnt, q_module_cnt


try:
EMBA_S_MOD_CNT, EMBA_P_MOD_CNT, EMBA_F_MOD_CNT, EMBA_L_MOD_CNT, EMBA_Q_MOD_CNT = count_emba_modules(EMBA_ROOT)
EMBA_S_MOD_CNT, EMBA_P_MOD_CNT, EMBA_Q_MOD_CNT, EMBA_L_MOD_CNT, EMBA_F_MOD_CNT, EMBA_D_MOD_CNT = count_emba_modules(EMBA_ROOT)
except FileNotFoundError as file_error:
EMBA_S_MOD_CNT = 44
EMBA_P_MOD_CNT = 18
EMBA_F_MOD_CNT = 4
EMBA_L_MOD_CNT = 8
EMBA_S_MOD_CNT, EMBA_P_MOD_CNT, EMBA_Q_MOD_CNT, EMBA_L_MOD_CNT, EMBA_F_MOD_CNT, EMBA_D_MOD_CNT = 46, 20, 1, 10, 6, 3

VERSION = get_version_strings()

0 comments on commit 927862d

Please sign in to comment.