mirror of
https://github.com/JDM170/comp_auto_restart
synced 2024-10-25 13:43:54 +07:00
Add MatchIO as module
Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com>
This commit is contained in:
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
[submodule "m_match_name"]
|
||||
path = m_match_name
|
||||
url = https://github.com/JDM170/m_match_name
|
||||
1
m_match_name
Submodule
1
m_match_name
Submodule
Submodule m_match_name added at c57718af7e
9
main.py
9
main.py
@@ -9,11 +9,6 @@ from match_name import MatchIO
|
||||
|
||||
|
||||
default_values = {
|
||||
"expr_list": [
|
||||
[r"^[a-zA-Z]+\d+$", "R54-630300"], # THE01
|
||||
[r"^\d+[a-zA-Z]+\d+$", "R54-"], # 630300THE01
|
||||
[r"^[rR]\d*[-]\d+[a-zA-Z]+\d+$", ""] # R54-630300THE01
|
||||
],
|
||||
"pc": {
|
||||
"2": [ # Пятидневка
|
||||
"IT01",
|
||||
@@ -33,7 +28,7 @@ def main(comp_key, is_debug):
|
||||
list_pc_names = loaded_file.get("pc").get(comp_key)
|
||||
if list_pc_names is not None:
|
||||
for pc_name in list_pc_names:
|
||||
formatted_pc_name = matchio.check_arm_name(pc_name)
|
||||
formatted_pc_name = matchio.check_pc_name(pc_name)
|
||||
if formatted_pc_name is not False:
|
||||
if is_debug is False:
|
||||
# system("shutdown /m \\\{} /r /f /t 60 /c \"Плановая перезагрузка компьютера через 1 минуту!\"".format(formatted_pc_name))
|
||||
@@ -53,7 +48,7 @@ if __name__ == "__main__":
|
||||
loaded_file = filesio.get_data()
|
||||
if loaded_file is False:
|
||||
raise OSError
|
||||
matchio = MatchIO(loaded_file.get("expr_list"))
|
||||
matchio = MatchIO()
|
||||
main(argv[1], argv[2].strip() == "debug")
|
||||
except OSError:
|
||||
print("Файл с настройками не найден. Создан файл со стандартными настройками.")
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
#!/usr/bin/python3
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from re import match
|
||||
|
||||
# Список выражений по которым проводится проверка
|
||||
# По дефолту стоит регион R54, индекс 630300
|
||||
default_expr_list = [
|
||||
[r"^[a-zA-Z]+\d+$", "R54-630300"], # THE01
|
||||
[r"^\d+[a-zA-Z]+\d+$", "R54-"], # 630300THE01
|
||||
[r"^[rR]\d*[-]\d+[a-zA-Z]+\d+$", ""] # R54-630300THE01
|
||||
]
|
||||
|
||||
|
||||
class MatchIO:
|
||||
def __init__(self, expr_list=None):
|
||||
self.expr_list = expr_list is None and default_expr_list or expr_list
|
||||
|
||||
def check_arm_name(self, pc_name):
|
||||
for r in self.expr_list:
|
||||
if match(r[0], pc_name):
|
||||
pc_name = "{}{}".format(r[1], pc_name)
|
||||
break
|
||||
if match(self.expr_list[2][0], pc_name):
|
||||
return pc_name
|
||||
return False
|
||||
@@ -1,18 +1,4 @@
|
||||
{
|
||||
"expr_list" : [
|
||||
[
|
||||
"^[a-zA-Z]+\\d+$",
|
||||
"R54-630300"
|
||||
],
|
||||
[
|
||||
"^\\d+[a-zA-Z]+\\d+$",
|
||||
"R54-"
|
||||
],
|
||||
[
|
||||
"^[rR]\\d*[-]\\d+[a-zA-Z]+\\d+$",
|
||||
""
|
||||
]
|
||||
],
|
||||
"pc" : {
|
||||
"2" : [
|
||||
"IT01",
|
||||
|
||||
Reference in New Issue
Block a user