Improved deploy process
This commit is contained in:
		| @@ -15,7 +15,7 @@ __title__ = 'modules.admin' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports:  | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -0,0 +1,26 @@ | ||||
| # -*- coding: utf-8 -*- | ||||
|  | ||||
| """ | ||||
| bot Keksdose bot | ||||
| ~~~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| :copyright: (c) 2022 sh-edraft.de | ||||
| :license: MIT, see LICENSE for more details. | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.admin.command' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
|  | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -5,6 +5,7 @@ from io import BytesIO | ||||
|  | ||||
| import requests | ||||
| from cpl_core.configuration import ConfigurationABC | ||||
| from cpl_core.environment import ApplicationEnvironmentABC | ||||
| from cpl_core.logging import LoggerABC | ||||
| from cpl_discord.command import DiscordCommandABC | ||||
| from cpl_discord.service import DiscordBotServiceABC | ||||
| @@ -15,7 +16,6 @@ from discord.ext.commands import Context | ||||
| from bot_core.abc.client_utils_service_abc import ClientUtilsServiceABC | ||||
| from bot_core.abc.message_service_abc import MessageServiceABC | ||||
| from bot_core.configuration.bot_settings import BotSettings | ||||
| from modules.permission.abc.permission_service_abc import PermissionServiceABC | ||||
|  | ||||
|  | ||||
| class DeployCommand(DiscordCommandABC): | ||||
| @@ -28,7 +28,8 @@ class DeployCommand(DiscordCommandABC): | ||||
|             bot: DiscordBotServiceABC, | ||||
|             client_utils: ClientUtilsServiceABC, | ||||
|             translate: TranslatePipe, | ||||
|             bot_settings: BotSettings | ||||
|             bot_settings: BotSettings, | ||||
|             env: ApplicationEnvironmentABC | ||||
|     ): | ||||
|         DiscordCommandABC.__init__(self) | ||||
|  | ||||
| @@ -39,6 +40,7 @@ class DeployCommand(DiscordCommandABC): | ||||
|         self._client_utils = client_utils | ||||
|         self._t = translate | ||||
|         self._bot_settings = bot_settings | ||||
|         self._env = env | ||||
|  | ||||
|         self._logger.trace(__name__, f'Loaded command service: {type(self).__name__}') | ||||
|  | ||||
| @@ -52,6 +54,11 @@ class DeployCommand(DiscordCommandABC): | ||||
|             self._logger.trace(__name__, f'Finished deploy command') | ||||
|             return | ||||
|  | ||||
|         blacklist = ['venv', 'start', 'latest'] | ||||
|  | ||||
|         if old_version in blacklist: | ||||
|             raise Exception(self._t.transform('common.errors.bad_argument')) | ||||
|  | ||||
|         if len(ctx.message.attachments) > 1: | ||||
|             raise IndexError(self._t.transform('common.errors.too_many_arguments')) | ||||
|  | ||||
| @@ -80,7 +87,20 @@ class DeployCommand(DiscordCommandABC): | ||||
|             file.extractall(deploy_path) | ||||
|         except Exception as e: | ||||
|             self._logger.error(__name__, f'An error occurred extracting the zip file', e) | ||||
|             await self._message_service.send_ctx_msg(ctx, self._t.transform('common.command_error')) | ||||
|             await self._message_service.send_ctx_msg(ctx, self._t.transform('common.command_error'), without_tracking=True) | ||||
|             return | ||||
|  | ||||
|         try: | ||||
|             shutil.copy(f'{deploy_old_path}/bot/config/appsettings.{self._env.host_name}.json', f'{deploy_path}/bot/config/appsettings.{self._env.host_name}.json') | ||||
|         except Exception as e: | ||||
|             self._logger.error(__name__, f'An error occurred copying config file', e) | ||||
|             await self._message_service.send_ctx_msg(ctx, self._t.transform('common.command_error'), without_tracking=True) | ||||
|             return | ||||
|  | ||||
|         await self._message_service.send_ctx_msg(ctx, self._t.transform('modules.admin.deploy_message'), without_tracking=True) | ||||
|  | ||||
|         self._config.add_configuration('IS_RESTART', 'true') | ||||
|         await self._message_service.send_ctx_msg(ctx, self._t.transform('modules.admin.restart_message'), without_tracking=True) | ||||
|         await self._bot.stop_async() | ||||
|  | ||||
|         self._logger.trace(__name__, f'Finished deploy command') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.base' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.base.abc' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.base.command' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.base.configuration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.base.events' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.base.service' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.boot_log' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports:  | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.boot_log.configuration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.database' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports:  | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.moderator' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports:  | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -0,0 +1,26 @@ | ||||
| # -*- coding: utf-8 -*- | ||||
|  | ||||
| """ | ||||
| bot Keksdose bot | ||||
| ~~~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| :copyright: (c) 2022 sh-edraft.de | ||||
| :license: MIT, see LICENSE for more details. | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.moderator.command' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
|  | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.permission' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports:  | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.permission.abc' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.permission.configuration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.permission.events' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = 'modules.permission.service' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '1.0.0.dev2' | ||||
| __version__ = '1.0.0.dev3' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev2') | ||||
| version_info = VersionInfo(major='1', minor='0', micro='0.dev3') | ||||
|   | ||||
		Reference in New Issue
	
	Block a user