from .base import Base
from .install import Install
from .code_stub import Code_stub
from .ins_ds_rabbitmq import Ins_Ds_Rabbitmq
from .ins_ds_docserver import Ins_Ds_Docserver
from .ins_ds_redis import Ins_Ds_Redis
from .ins_ds_postgres import Ins_Ds_Postgres
from .ins_ds_frontend import Ins_Ds_Frontend
from .ins_cs_api import Ins_Cs_Api
from .ins_cs_frontend import Ins_Cs_Frontend
from .ins_cs_ssoapi import Ins_Cs_Ssoapi
from .ins_cs_draw import Ins_Cs_Draw
from .ins_cs_filestorage import Ins_Cs_Filestorage
from .ins_cs_postgres import Ins_Cs_Postgres
from .ins_cs_registry import Ins_Cs_Registry
from .ins_cs_rabbitmq import Ins_Cs_Rabbitmq
from .ins_cs_processing import Ins_Cs_Processing
from .ins_cs_searchapi import Ins_Cs_Searchapi
from .ds_only import DS_Only
from .hl_cs_filestorage_registry import Hl_Cs_Filestorage_Registry
from .hl_cs_api_ssoapi import Hl_Cs_Api_Ssoapi
from .mail_only import Mail_Only
from .ins_minio import Ins_Minio
class Ins_High_Load(Base):

    def preload(self):
        self.semaphore = ["Выберите необходимое действие:",
            [
                # {
                #     "lang": "Установка сервиса minio",
                #     "exec": Ins_Minio,
                #     "msg": "Начинаем установку сервиса minio.\n\n",
                #     "logger_name": "Ins_Minio",
                #     "logger_level": self.logger_level,
                #     "DETALIZATION": 5
                # },
                {
                    "lang": "Установка сервисов Сервера документов",
                    "exec": DS_Only,
#                    "msg": "Начинаем установку Р7-Офис Сервера Документов Р7.\n\n",
                    "logger_name": "Install",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 2
                },
                {
                    "lang": "Установка сервисов CS-RabbitMQ",
                    "exec": Ins_Cs_Rabbitmq,
#                    "msg": "Начинаем установку сервиса CS-RabbitMQ.\n\n",
                    "logger_name": "Ins_Cs_Rabbitmq",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 2
                },
                {
                    "lang": "Установка сервисов CS-PostgreSQL",
                    "exec": Ins_Cs_Postgres,
#                    "msg": "Начинаем установку сервиса CS-PostgreSQL.\n\n",
                    "logger_name": "Ins_Cs_Postgres",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 3
                },
                {
                    "lang": "Установка сервисов CS-SearchApi",
                    "exec": Ins_Cs_Searchapi,
#                    "msg": "Начинаем установку сервиса CS-SearchApi.\n\n",
                    "logger_name": "Ins_Cs_Searchapi",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 2
                },
                {
                    "lang": "Установка сервисов CS-FileStorage и CS-Registry",
                    "exec": Hl_Cs_Filestorage_Registry,
#                    "msg": "Начинаем установку сервисов CS-FileStorage и CS-Registry.\n\n",
                    "logger_name": "Hl_Cs_Filestorage_Registry",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 3
                },
                {
                    "lang": "Установка сервисов CS-Processing",
                    "exec": Ins_Cs_Processing,
#                    "msg": "Начинаем установку сервиса CS-Processing.\n\n",
                    "logger_name": "Ins_Cs_Processing",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 4
                },
                {
                    "lang": "Установка сервисов CS-Draw",
                    "exec": Ins_Cs_Draw,
#                    "msg": "Начинаем установку сервиса CS-Draw.\n\n",
                    "logger_name": "Ins_Cs_Draw",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 3
                },
                {
                    "lang": "Установка сервисов CS-Api и CS-SsoApi",
                    "exec": Hl_Cs_Api_Ssoapi,
#                    "msg": "Начинаем установку сервисов CS-Api и CS-SsoApi.\n\n",
                    "logger_name": "Hl_Cs_Api_Ssoapi",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 4
                },
                {
                    "lang": "Установка сервисов CS-Frontend",
                    "exec": Ins_Cs_Frontend,
#                    "msg": "Начинаем установку сервисов CS-Frontend.\n\n",
                    "logger_name": "Ins_Cs_Frontend",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 4
                },
                {
                    "lang": "Установка сервисов Почтового сервера",
                    "exec": Mail_Only,
#                    "msg": "Начинаем установку Р7-Офис.\n\n",
                    "logger_name": "Install",
                    "logger_level": self.logger_level,
                    "DETALIZATION": 2
                },                
            ]
        ];
