Bugfixes for cli

This commit is contained in:
2021-03-16 18:28:31 +01:00
parent 121b9b84a0
commit 08836c1045
35 changed files with 123 additions and 73 deletions

View File

@@ -15,7 +15,7 @@ __title__ = 'sh_cpl.cpl_cli'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
@@ -29,4 +29,4 @@ from .main import main
from .startup import Startup
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -0,0 +1,5 @@
{
"CLI": {
"PipPath": "https://pip-dev.sh-edraft.de"
}
}

View File

@@ -0,0 +1,25 @@
import traceback
from typing import Optional
from cpl.configuration.configuration_model_abc import ConfigurationModelABC
from cpl.console import Console
from cpl_cli.cli_settings_name_enum import CLISettingsNameEnum
class CLISettings(ConfigurationModelABC):
def __init__(self):
ConfigurationModelABC.__init__(self)
self._pip_path: Optional[str] = None
@property
def pip_path(self) -> str:
return self._pip_path
def from_dict(self, settings: dict):
try:
self._pip_path = settings[CLISettingsNameEnum.pip_path.value]
except Exception as e:
Console.error(f'[ ERROR ] [ {__name__} ]: Reading error in {self.__name__} settings')
Console.error(f'[ EXCEPTION ] [ {__name__} ]: {e} -> {traceback.format_exc()}')

View File

@@ -0,0 +1,6 @@
from enum import Enum
class CLISettingsNameEnum(Enum):
pip_path = 'PipPath'

View File

@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.command'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
@@ -28,4 +28,4 @@ from .publish_service import PublishService
from .version_service import VersionService
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -9,6 +9,7 @@ from cpl.configuration import ConfigurationABC
from cpl.console.console import Console
from cpl.console.foreground_color_enum import ForegroundColorEnum
from cpl.utils.pip import Pip
from cpl_cli.cli_settings import CLISettings
from cpl_cli.command_abc import CommandABC
from cpl_cli.configuration import ProjectSettingsNameEnum, VersionSettingsNameEnum, BuildSettingsNameEnum
from cpl_cli.configuration.build_settings import BuildSettings
@@ -18,7 +19,7 @@ from cpl_cli.error import Error
class InstallService(CommandABC):
def __init__(self, runtime: ApplicationRuntimeABC, configuration: ConfigurationABC):
def __init__(self, runtime: ApplicationRuntimeABC, configuration: ConfigurationABC, cli_settings: CLISettings):
"""
Service for the CLI command install
:param runtime:
@@ -28,6 +29,7 @@ class InstallService(CommandABC):
self._runtime = runtime
self._config = configuration
self._cli_settings = cli_settings
def _install_project(self):
"""
@@ -50,7 +52,7 @@ class InstallService(CommandABC):
Console.spinner(
f'Installing: {dependency}',
Pip.install, dependency,
source='https://pip.sh-edraft.de' if 'sh_cpl' in dependency else None,
source=self._cli_settings.pip_path if 'sh_cpl' in dependency else None,
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL,
text_foreground_color=ForegroundColorEnum.green,
@@ -150,7 +152,7 @@ class InstallService(CommandABC):
Console.spinner(
f'Installing: {package}',
Pip.install, package,
source='https://pip.sh-edraft.de' if 'sh_cpl' in package else None,
source=self._cli_settings.pip_path if 'sh_cpl' in package else None,
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL,
text_foreground_color=ForegroundColorEnum.green,

View File

@@ -6,13 +6,14 @@ from cpl.application import ApplicationRuntimeABC
from cpl.console import ForegroundColorEnum
from cpl.console.console import Console
from cpl.utils.pip import Pip
from cpl_cli.cli_settings import CLISettings
from cpl_cli.command_abc import CommandABC
from cpl_cli.configuration.project_settings import ProjectSettings
class UpdateService(CommandABC):
def __init__(self, runtime: ApplicationRuntimeABC, project_settings: ProjectSettings):
def __init__(self, runtime: ApplicationRuntimeABC, project_settings: ProjectSettings, cli_settings: CLISettings):
"""
Service for the CLI command update
:param runtime:
@@ -22,6 +23,7 @@ class UpdateService(CommandABC):
self._runtime = runtime
self._project_settings = project_settings
self._cli_settings = cli_settings
def _update_project_dependencies(self):
"""
@@ -38,7 +40,7 @@ class UpdateService(CommandABC):
'--upgrade',
'--upgrade-strategy',
'eager',
source='https://pip.sh-edraft.de' if 'sh_cpl' in name else None,
source=self._cli_settings.pip_path if 'sh_cpl' in name else None,
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL
)

View File

@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.configuration'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
@@ -28,4 +28,4 @@ from .version_settings import VersionSettings
from .version_settings_name_enum import VersionSettingsNameEnum
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.live_server'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,7 +15,7 @@ __title__ = 'cpl_cli.publish'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
@@ -24,4 +24,4 @@ from .publisher_abc import PublisherABC
from .publisher_service import PublisherService
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -47,6 +47,8 @@ class Startup(StartupABC):
self._configuration.add_environment_variables('PYTHON_')
self._configuration.add_environment_variables('CPL_')
self._configuration.add_json_file('cpl.json', optional=True, output=False)
self._configuration.add_json_file('appsettings.json', path=self._app_host.application_runtime.runtime_directory,
optional=False, output=False)
self._configuration.add_console_argument(ConsoleArgument('', 'build', ['b', 'B'], ''))
self._configuration.add_console_argument(ConsoleArgument('', 'generate', ['g', 'G'], '', console_arguments=[
ConsoleArgument('', 'abc', ['a', 'A'], ' '),

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.templates'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.templates.build'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.templates.generate'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.templates.new'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.templates.new.console'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.templates.new.console.src'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.templates.new.console.src.tests'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')

View File

@@ -15,11 +15,11 @@ __title__ = 'cpl_cli.templates.publish'
__author__ = 'Sven Heidemann'
__license__ = 'MIT'
__copyright__ = 'Copyright (c) 2020 - 2021 sh-edraft.de'
__version__ = '2021.4.1.post7'
__version__ = '2021.4.1.post8'
from collections import namedtuple
# imports:
VersionInfo = namedtuple('VersionInfo', 'major minor micro')
version_info = VersionInfo(major='2021', minor='04', micro='01-7')
version_info = VersionInfo(major='2021', minor='04', micro='01-8')