forked from sh-edraft.de/sh_discord_bot
		
	Added set version tool #70
This commit is contained in:
		| @@ -13,12 +13,22 @@ | ||||
|       "moderator": "src/modules/moderator/moderator.json", | ||||
|       "permission": "src/modules/permission/permission.json", | ||||
|       "bot-api": "src/bot_api/bot-api.json", | ||||
|       "post-build": "tools/post_build/post-build.json" | ||||
|       "post-build": "tools/post_build/post-build.json", | ||||
|       "set-version": "tools/set_version/set-version.json" | ||||
|     }, | ||||
|     "Scripts": { | ||||
|  | ||||
|       "sv": "cpl set-version", | ||||
|       "set-version": "cpl run set-version $ARGS; echo '';", | ||||
|  | ||||
|       "pre-build": "cpl set-version $ARGS", | ||||
|       "post-build": "cpl run post-build", | ||||
|  | ||||
|       "pre-prod": "cpl build", | ||||
|       "prod": "export KDB_ENVIRONMENT=production; export KDB_NAME=KDB-Prod; cpl start;", | ||||
|       "pre-stage": "cpl build", | ||||
|       "stage": "export KDB_ENVIRONMENT=staging; export KDB_NAME=KDB-Stage; cpl start;", | ||||
|       "pre-dev": "cpl build", | ||||
|       "dev": "export KDB_ENVIRONMENT=development; export KDB_NAME=KDB-Dev; cpl start;", | ||||
|       "build-docker": "cpl b; docker-compose down; docker build -t kdb:kdb .", | ||||
|       "compose": "docker-compose up -d", | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot' | ||||
| __title__ = 'kdb-bot.bot' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "0", | ||||
|       "Minor": "3", | ||||
|       "Micro": "0" | ||||
|       "Micro": "dev70" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
| @@ -23,7 +23,7 @@ | ||||
|       "Flask==2.2.2", | ||||
|       "Flask-Classful==0.14.2", | ||||
|       "Flask-Cors==3.0.10", | ||||
|       "PyJWT==2.5.0", | ||||
|       "PyJWT==2.6.0", | ||||
|       "waitress==2.1.2", | ||||
|       "Flask-SocketIO==5.3.1", | ||||
|       "eventlet==0.33.1", | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api' | ||||
| __title__ = 'kdb-bot.bot_api' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.abc' | ||||
| __title__ = 'kdb-bot.bot_api.abc' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -2,9 +2,9 @@ | ||||
|   "ProjectSettings": { | ||||
|     "Name": "bot-api", | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "0", | ||||
|       "Micro": "0" | ||||
|       "Major": "0", | ||||
|       "Minor": "3", | ||||
|       "Micro": "dev70" | ||||
|     }, | ||||
|     "Author": "", | ||||
|     "AuthorEmail": "", | ||||
| @@ -16,7 +16,7 @@ | ||||
|     "LicenseName": "", | ||||
|     "LicenseDescription": "", | ||||
|     "Dependencies": [ | ||||
|       "cpl-core==2022.10.0.post6" | ||||
|       "cpl-core==2022.10.0.post7" | ||||
|     ], | ||||
|     "DevDependencies": [ | ||||
|       "cpl-cli==2022.10.0" | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.configuration' | ||||
| __title__ = 'kdb-bot.bot_api.configuration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.controller' | ||||
| __title__ = 'kdb-bot.bot_api.controller' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.controller.discord' | ||||
| __title__ = 'kdb-bot.bot_api.controller.discord' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.event' | ||||
| __title__ = 'kdb-bot.bot_api.event' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.exception' | ||||
| __title__ = 'kdb-bot.bot_api.exception' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.filter' | ||||
| __title__ = 'kdb-bot.bot_api.filter' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.filter.discord' | ||||
| __title__ = 'kdb-bot.bot_api.filter.discord' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.logging' | ||||
| __title__ = 'kdb-bot.bot_api.logging' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.mail' | ||||
| __title__ = 'kdb-bot.bot_api.mail' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.model' | ||||
| __title__ = 'kdb-bot.bot_api.model' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.model.discord' | ||||
| __title__ = 'kdb-bot.bot_api.model.discord' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.route' | ||||
| __title__ = 'kdb-bot.bot_api.route' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.service' | ||||
| __title__ = 'kdb-bot.bot_api.service' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_api.transformer' | ||||
| __title__ = 'kdb-bot.bot_api.transformer' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core' | ||||
| __title__ = 'kdb-bot.bot_core' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core.abc' | ||||
| __title__ = 'kdb-bot.bot_core.abc' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -2,9 +2,9 @@ | ||||
|   "ProjectSettings": { | ||||
|     "Name": "bot-core", | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "0", | ||||
|       "Micro": "0" | ||||
|       "Major": "0", | ||||
|       "Minor": "3", | ||||
|       "Micro": "dev70" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
| @@ -16,7 +16,7 @@ | ||||
|     "LicenseName": "MIT", | ||||
|     "LicenseDescription": "MIT, see LICENSE for more details.", | ||||
|     "Dependencies": [ | ||||
|       "cpl-core>=2022.10.0" | ||||
|       "cpl-core>=0.3.dev70" | ||||
|     ], | ||||
|     "DevDependencies": [ | ||||
|       "cpl-cli==2022.10.0" | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core.configuration' | ||||
| __title__ = 'kdb-bot.bot_core.configuration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core.core_extension' | ||||
| __title__ = 'kdb-bot.bot_core.core_extension' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core.events' | ||||
| __title__ = 'kdb-bot.bot_core.events' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core.helper' | ||||
| __title__ = 'kdb-bot.bot_core.helper' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core.logging' | ||||
| __title__ = 'kdb-bot.bot_core.logging' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core.pipes' | ||||
| __title__ = 'kdb-bot.bot_core.pipes' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_core.service' | ||||
| __title__ = 'kdb-bot.bot_core.service' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_data' | ||||
| __title__ = 'kdb-bot.bot_data' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_data.abc' | ||||
| __title__ = 'kdb-bot.bot_data.abc' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -2,9 +2,9 @@ | ||||
|   "ProjectSettings": { | ||||
|     "Name": "bot-data", | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "0", | ||||
|       "Micro": "0" | ||||
|       "Major": "0", | ||||
|       "Minor": "3", | ||||
|       "Micro": "dev70" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
| @@ -16,7 +16,7 @@ | ||||
|     "LicenseName": "MIT", | ||||
|     "LicenseDescription": "MIT, see LICENSE for more details.", | ||||
|     "Dependencies": [ | ||||
|       "cpl-core>=2022.10.0" | ||||
|       "cpl-core>=0.3.dev70" | ||||
|     ], | ||||
|     "DevDependencies": [ | ||||
|       "cpl-cli==2022.10.0" | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_data.migration' | ||||
| __title__ = 'kdb-bot.bot_data.migration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_data.model' | ||||
| __title__ = 'kdb-bot.bot_data.model' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'bot_data.service' | ||||
| __title__ = 'kdb-bot.bot_data.service' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.admin' | ||||
| __title__ = 'kdb-bot.modules.admin' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.admin.command' | ||||
| __title__ = 'kdb-bot.modules.admin.command' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.auto_role' | ||||
| __title__ = 'kdb-bot.modules.auto_role' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.auto_role.command' | ||||
| __title__ = 'kdb-bot.modules.auto_role.command' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.auto_role.events' | ||||
| __title__ = 'kdb-bot.modules.auto_role.events' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.auto_role.helper' | ||||
| __title__ = 'kdb-bot.modules.auto_role.helper' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.base' | ||||
| __title__ = 'kdb-bot.modules.base' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.base.abc' | ||||
| __title__ = 'kdb-bot.modules.base.abc' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.base.command' | ||||
| __title__ = 'kdb-bot.modules.base.command' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.base.configuration' | ||||
| __title__ = 'kdb-bot.modules.base.configuration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.base.events' | ||||
| __title__ = 'kdb-bot.modules.base.events' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.base.service' | ||||
| __title__ = 'kdb-bot.modules.base.service' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.boot_log' | ||||
| __title__ = 'kdb-bot.modules.boot_log' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.boot_log.configuration' | ||||
| __title__ = 'kdb-bot.modules.boot_log.configuration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.database' | ||||
| __title__ = 'kdb-bot.modules.database' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.moderator' | ||||
| __title__ = 'kdb-bot.modules.moderator' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.moderator.command' | ||||
| __title__ = 'kdb-bot.modules.moderator.command' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.permission' | ||||
| __title__ = 'kdb-bot.modules.permission' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.permission.abc' | ||||
| __title__ = 'kdb-bot.modules.permission.abc' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.permission.configuration' | ||||
| __title__ = 'kdb-bot.modules.permission.configuration' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.permission.events' | ||||
| __title__ = 'kdb-bot.modules.permission.events' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
| @@ -11,7 +11,7 @@ Discord bot  for the Keksdose discord Server | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'modules.permission.service' | ||||
| __title__ = 'kdb-bot.modules.permission.service' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
|   | ||||
							
								
								
									
										26
									
								
								kdb-bot/tools/set_version/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								kdb-bot/tools/set_version/__init__.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| # -*- coding: utf-8 -*- | ||||
|  | ||||
| """ | ||||
| set-version CPL internal tool to set version from branch name | ||||
| ~~~~~~~~~~~~~~~~~~~ | ||||
|  | ||||
| CPL internal tool to set version from branch name | ||||
|  | ||||
| :copyright: (c) 2022 sh-edraft.de | ||||
| :license: MIT, see LICENSE for more details. | ||||
|  | ||||
| """ | ||||
|  | ||||
| __title__ = 'set_version' | ||||
| __author__ = 'Sven Heidemann' | ||||
| __license__ = 'MIT' | ||||
| __copyright__ = 'Copyright (c) 2022 sh-edraft.de' | ||||
| __version__ = '2022.7.0' | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
|  | ||||
| # imports:  | ||||
|  | ||||
| VersionInfo = namedtuple('VersionInfo', 'major minor micro') | ||||
| version_info = VersionInfo(major='2022', minor='7', micro='0') | ||||
							
								
								
									
										111
									
								
								kdb-bot/tools/set_version/application.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										111
									
								
								kdb-bot/tools/set_version/application.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,111 @@ | ||||
| import os | ||||
| import traceback | ||||
|  | ||||
| from cpl_cli.configuration import ProjectSettings | ||||
| from cpl_core.utils import String | ||||
|  | ||||
| from cpl_cli.configuration.version_settings_name_enum import VersionSettingsNameEnum | ||||
| from cpl_cli.configuration.workspace_settings import WorkspaceSettings | ||||
| from cpl_core.application.application_abc import ApplicationABC | ||||
| from cpl_core.configuration.configuration_abc import ConfigurationABC | ||||
| from cpl_core.console.console import Console | ||||
| from cpl_core.dependency_injection.service_provider_abc import ServiceProviderABC | ||||
| from cpl_core.pipes.version_pipe import VersionPipe | ||||
| from set_version.git_service import GitService | ||||
| from set_version.version_setter_service import VersionSetterService | ||||
|  | ||||
|  | ||||
| class Application(ApplicationABC): | ||||
|  | ||||
|     def __init__(self, config: ConfigurationABC, services: ServiceProviderABC): | ||||
|         ApplicationABC.__init__(self, config, services) | ||||
|  | ||||
|         self._workspace: WorkspaceSettings = config.get_configuration(WorkspaceSettings) | ||||
|  | ||||
|         self._git_service: GitService = self._services.get_service(GitService) | ||||
|         self._version_setter: VersionSetterService = self._services.get_service(VersionSetterService) | ||||
|         self._version_pipe: VersionPipe = self._services.get_service(VersionPipe) | ||||
|  | ||||
|     def configure(self): | ||||
|         self._configuration.parse_console_arguments(self._services) | ||||
|  | ||||
|     def main(self): | ||||
|         Console.write_line('Set versions:') | ||||
|  | ||||
|         args = self._configuration.additional_arguments | ||||
|         version = {} | ||||
|         branch = "" | ||||
|         suffix = "" | ||||
|         force = False | ||||
|         if '--force' in args: | ||||
|             args.remove('--force') | ||||
|             force = True | ||||
|  | ||||
|         if len(args) > 1: | ||||
|             Console.error(f'Unexpected argument(s): {", ".join(args[1:])}') | ||||
|             return | ||||
|  | ||||
|         if len(args) == 1: | ||||
|             suffix = f'.{args[0]}' | ||||
|  | ||||
|         try: | ||||
|             branch = self._git_service.get_active_branch_name() | ||||
|             Console.write_line(f'Found branch: {branch}') | ||||
|         except Exception as e: | ||||
|             Console.error('Branch not found', traceback.format_exc()) | ||||
|             return | ||||
|  | ||||
|         try: | ||||
|             if branch.startswith('#'): | ||||
|                 self._configuration.add_json_file(self._workspace.projects[self._workspace.default_project], optional=False, output=False) | ||||
|                 ps: ProjectSettings = self._configuration.get_configuration(ProjectSettings) | ||||
|  | ||||
|                 version[VersionSettingsNameEnum.major.value] = ps.version.major | ||||
|                 version[VersionSettingsNameEnum.minor.value] = ps.version.minor | ||||
|                 version[VersionSettingsNameEnum.micro.value] = f'dev{branch.split("#")[1]}' | ||||
|             else: | ||||
|                 version[VersionSettingsNameEnum.major.value] = branch.split('.')[0] | ||||
|                 version[VersionSettingsNameEnum.minor.value] = branch.split('.')[1] | ||||
|                 if len(branch.split('.')) == 2: | ||||
|                     version[VersionSettingsNameEnum.micro.value] = f'0{suffix}' | ||||
|                 else: | ||||
|                     version[VersionSettingsNameEnum.micro.value] = f'{branch.split(".")[2]}{suffix}' | ||||
|         except Exception as e: | ||||
|             Console.error(f'Branch {branch} does not contain valid version') | ||||
|             return | ||||
|  | ||||
|         diff_paths = [] | ||||
|         for file in self._git_service.get_diff_files(): | ||||
|             if 'kdb-bot/src' in file: | ||||
|                 file = file.replace('kdb-bot/src', '') | ||||
|  | ||||
|             if file.startswith('tools') or 'kdb-web/src' in file: | ||||
|                 continue | ||||
|  | ||||
|             if '/' in file: | ||||
|                 file = file.split('/')[1] | ||||
|             else: | ||||
|                 file = os.path.basename(os.path.dirname(file)) | ||||
|  | ||||
|             if file in diff_paths: | ||||
|                 continue | ||||
|  | ||||
|             diff_paths.append(file) | ||||
|  | ||||
|         try: | ||||
|             skipped = [] | ||||
|             for project in self._workspace.projects: | ||||
|                 if project not in diff_paths and String.convert_to_snake_case(project) not in diff_paths and not force: | ||||
|                     # Console.write_line(f'Skipping {project} due to missing changes') | ||||
|                     skipped.append(project) | ||||
|                     continue | ||||
|  | ||||
|                 Console.write_line(f'Set dependencies {self._version_pipe.transform(version)} for {project}') | ||||
|                 self._version_setter.set_dependencies(self._workspace.projects[project], version, 'Dependencies', skipped=skipped) | ||||
|                 self._version_setter.set_dependencies(self._workspace.projects[project], version, 'DevDependencies', skipped=skipped) | ||||
|  | ||||
|                 Console.write_line(f'Set version {self._version_pipe.transform(version)} for {project}') | ||||
|                 self._version_setter.set_version(self._workspace.projects[project], version) | ||||
|         except Exception as e: | ||||
|             Console.error('Version could not be set', traceback.format_exc()) | ||||
|             return | ||||
							
								
								
									
										18
									
								
								kdb-bot/tools/set_version/git_service.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								kdb-bot/tools/set_version/git_service.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | ||||
| import os | ||||
|  | ||||
| from cpl_core.environment import ApplicationEnvironmentABC | ||||
| from git import Repo | ||||
|  | ||||
|  | ||||
| class GitService: | ||||
|  | ||||
|     def __init__(self, env: ApplicationEnvironmentABC): | ||||
|         self._env = env | ||||
|         self._repo = Repo(os.path.abspath(os.path.join(env.working_directory, '../'))) | ||||
|  | ||||
|     def get_active_branch_name(self) -> str: | ||||
|         branch = self._repo.active_branch | ||||
|         return branch.name | ||||
|  | ||||
|     def get_diff_files(self) -> list[str]: | ||||
|         return [item.a_path for item in self._repo.index.diff(None)] | ||||
							
								
								
									
										14
									
								
								kdb-bot/tools/set_version/main.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								kdb-bot/tools/set_version/main.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| from cpl_core.application import ApplicationBuilder | ||||
|  | ||||
| from set_version.application import Application | ||||
| from set_version.startup import Startup | ||||
|  | ||||
|  | ||||
| def main(): | ||||
|     app_builder = ApplicationBuilder(Application) | ||||
|     app_builder.use_startup(Startup) | ||||
|     app_builder.build().run() | ||||
|  | ||||
|  | ||||
| if __name__ == '__main__': | ||||
|     main() | ||||
							
								
								
									
										45
									
								
								kdb-bot/tools/set_version/set-version.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								kdb-bot/tools/set_version/set-version.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,45 @@ | ||||
| { | ||||
|   "ProjectSettings": { | ||||
|     "Name": "set-version", | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "0", | ||||
|       "Micro": "0" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
|     "Description": "CPL internal tool to set version from branch name", | ||||
|     "LongDescription": "CPL internal tool to set version from branch name", | ||||
|     "URL": "https://www.sh-edraft.de", | ||||
|     "CopyrightDate": "2022", | ||||
|     "CopyrightName": "sh-edraft.de", | ||||
|     "LicenseName": "MIT", | ||||
|     "LicenseDescription": "MIT, see LICENSE for more details.", | ||||
|     "Dependencies": [ | ||||
|       "cpl-core==2022.10.0.post7", | ||||
|       "GitPython==3.1.27" | ||||
|     ], | ||||
|     "DevDependencies": [ | ||||
|       "cpl-cli==2022.10.0" | ||||
|     ], | ||||
|     "PythonVersion": ">=3.10.4", | ||||
|     "PythonPath": {}, | ||||
|     "Classifiers": [] | ||||
|   }, | ||||
|   "BuildSettings": { | ||||
|     "ProjectType": "console", | ||||
|     "SourcePath": "", | ||||
|     "OutputPath": "../../dist", | ||||
|     "Main": "set_version.main", | ||||
|     "EntryPoint": "set-version", | ||||
|     "IncludePackageData": false, | ||||
|     "Included": [], | ||||
|     "Excluded": [ | ||||
|       "*/__pycache__", | ||||
|       "*/logs", | ||||
|       "*/tests" | ||||
|     ], | ||||
|     "PackageData": {}, | ||||
|     "ProjectReferences": [] | ||||
|   } | ||||
| } | ||||
							
								
								
									
										31
									
								
								kdb-bot/tools/set_version/startup.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								kdb-bot/tools/set_version/startup.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,31 @@ | ||||
| import os | ||||
|  | ||||
| from cpl_cli.configuration import WorkspaceSettings | ||||
| from cpl_core.application import StartupABC | ||||
| from cpl_core.configuration import ConfigurationABC | ||||
| from cpl_core.dependency_injection import ServiceProviderABC, ServiceCollectionABC | ||||
| from cpl_core.environment import ApplicationEnvironment | ||||
| from cpl_core.pipes.version_pipe import VersionPipe | ||||
| from set_version.git_service import GitService | ||||
| from set_version.version_setter_service import VersionSetterService | ||||
|  | ||||
|  | ||||
| class Startup(StartupABC): | ||||
|  | ||||
|     def __init__(self): | ||||
|         StartupABC.__init__(self) | ||||
|  | ||||
|     def configure_configuration(self, configuration: ConfigurationABC, environment: ApplicationEnvironment) -> ConfigurationABC: | ||||
|         configuration.add_json_file('cpl-workspace.json', optional=True, output=False) | ||||
|         if configuration.get_configuration(WorkspaceSettings) is None: | ||||
|             environment.set_working_directory(os.path.join(environment.working_directory, '../../')) | ||||
|             configuration.add_json_file('cpl-workspace.json', optional=False, output=False) | ||||
|  | ||||
|         return configuration | ||||
|  | ||||
|     def configure_services(self, services: ServiceCollectionABC, environment: ApplicationEnvironment) -> ServiceProviderABC: | ||||
|         services.add_pipes() | ||||
|         services.add_singleton(GitService) | ||||
|         services.add_transient(VersionSetterService) | ||||
|  | ||||
|         return services.build_service_provider() | ||||
							
								
								
									
										57
									
								
								kdb-bot/tools/set_version/version_setter_service.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								kdb-bot/tools/set_version/version_setter_service.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,57 @@ | ||||
| import json | ||||
| import os | ||||
| from string import ascii_letters | ||||
|  | ||||
| from cpl_core.environment import ApplicationEnvironmentABC | ||||
| from cpl_core.utils import String | ||||
|  | ||||
|  | ||||
| class VersionSetterService: | ||||
|  | ||||
|     def __init__(self, env: ApplicationEnvironmentABC): | ||||
|         self._env = env | ||||
|  | ||||
|     def _read_file(self, file: str) -> dict: | ||||
|         project_json = {} | ||||
|         with open(os.path.join(self._env.working_directory, file), 'r', encoding='utf-8') as f: | ||||
|             # load json | ||||
|             project_json = json.load(f) | ||||
|             f.close() | ||||
|  | ||||
|         return project_json | ||||
|  | ||||
|     def _write_file(self, file: str, project_json: dict): | ||||
|         with open(os.path.join(self._env.working_directory, file), 'w', encoding='utf-8') as f: | ||||
|             f.write(json.dumps(project_json, indent=2)) | ||||
|             f.close() | ||||
|  | ||||
|     def set_version(self, file: str, version: dict): | ||||
|         project_json = self._read_file(file) | ||||
|         project_json['ProjectSettings']['Version'] = version | ||||
|         self._write_file(file, project_json) | ||||
|  | ||||
|     def set_dependencies(self, file: str, version: dict, key: str, skipped=None): | ||||
|         project_json = self._read_file(file) | ||||
|         if key not in project_json['ProjectSettings']: | ||||
|             project_json['ProjectSettings'][key] = [] | ||||
|  | ||||
|         dependencies = project_json['ProjectSettings'][key] | ||||
|         new_deps = [] | ||||
|         for dependency in dependencies: | ||||
|             if not dependency.startswith('cpl-'): | ||||
|                 new_deps.append(dependency) | ||||
|                 continue | ||||
|  | ||||
|             dep_version = dependency.split('=')[1] | ||||
|             dep_name = dependency.split('=')[0] | ||||
|             if dep_name[len(dep_name)-1] not in ascii_letters: | ||||
|                 dep_name = dep_name[:len(dep_name)-1] | ||||
|  | ||||
|             if skipped is not None and (dep_name in skipped or String.convert_to_snake_case(dep_name) in skipped) or dep_version == '': | ||||
|                 new_deps.append(dependency) | ||||
|                 continue | ||||
|  | ||||
|             new_deps.append(dependency.replace(dep_version, f'{version["Major"]}.{version["Minor"]}.{version["Micro"]}')) | ||||
|  | ||||
|         project_json['ProjectSettings'][key] = new_deps | ||||
|         self._write_file(file, project_json) | ||||
		Reference in New Issue
	
	Block a user