ebonite.core.objects.requirements module¶
-
class
ebonite.core.objects.requirements.
Requirement
[source]¶ Bases:
ebonite.core.objects.requirements.Requirement
,pyjackson.decorators.SubtypeRegisterMixin
Base class for python requirement
-
type
= 'pyjackson.decorators.Requirement'¶
-
-
class
ebonite.core.objects.requirements.
PythonRequirement
[source]¶ Bases:
ebonite.core.objects.requirements.Requirement
-
module
= None¶
-
type
= 'ebonite.core.objects.requirements.PythonRequirement'¶
-
-
class
ebonite.core.objects.requirements.
InstallableRequirement
(module: str, version: str = None, package_name: str = None)[source]¶ Bases:
ebonite.core.objects.requirements.PythonRequirement
This class represents pip-installable python library
Parameters: - module – name of python module
- version – version of python package
- package_name – Optional. pip package name for this module, if it is different from module name
-
type
= 'installable'¶
-
package
¶ Pip package name
-
classmethod
from_module
(mod: module, package_name: str = None) → ebonite.core.objects.requirements.InstallableRequirement[source]¶ Factory method to create
InstallableRequirement
from module objectParameters: - mod – module object
- package_name – PIP package name if it is not equal to module name
Returns:
-
classmethod
from_str
(name)[source]¶ Factory method for creating
InstallableRequirement
from stringParameters: name – string representation Returns: InstallableRequirement
-
class
ebonite.core.objects.requirements.
CustomRequirement
(name: str, source64zip: str, is_package: bool)[source]¶ Bases:
ebonite.core.objects.requirements.PythonRequirement
This class represents local python code that you need as a requirement for your code
Parameters: - name – filename of this code
- source64zip – zipped and base64-encoded source
- is_package – whether this code should be in %name%/__init__.py
-
type
= 'custom'¶
-
static
from_module
(mod: module) → ebonite.core.objects.requirements.CustomRequirement[source]¶ Factory method to create
CustomRequirement
from module objectParameters: mod – module object Returns: CustomRequirement
-
static
compress
(s: str) → str[source]¶ Helper method to compress source code
Parameters: s – source code Returns: base64 encoded string of zipped source
-
static
decompress
(s: str) → str[source]¶ Helper method to decompress source code
Parameters: s – compressed source code Returns: decompressed source code
-
module
¶ Module name for this requirement
-
source
¶ Source code of this requirement
-
sources
¶
-
class
ebonite.core.objects.requirements.
FileRequirement
(name: str, source64zip: str)[source]¶ Bases:
ebonite.core.objects.requirements.CustomRequirement
-
to_sources_dict
()[source]¶ Mapping path -> source code for this requirement
Returns: dict path -> source
-
type
= 'ebonite.core.objects.requirements.FileRequirement'¶
-
-
class
ebonite.core.objects.requirements.
UnixPackageRequirement
(package_name: str)[source]¶ Bases:
ebonite.core.objects.requirements.Requirement
-
type
= 'ebonite.core.objects.requirements.UnixPackageRequirement'¶
-
-
class
ebonite.core.objects.requirements.
Requirements
(requirements: List[ebonite.core.objects.requirements.Requirement] = None)[source]¶ Bases:
ebonite.core.objects.base.EboniteParams
A collection of requirements
Parameters: requirements – list of Requirement
instances-
installable
¶ List of installable requirements
-
custom
¶ List of custom requirements
-
of_type
(type_: Type[T]) → List[T][source]¶ Parameters: type – type of requirements Returns: List of requirements of type type_
-
modules
¶ List of module names
-
add
(requirement: ebonite.core.objects.requirements.Requirement)[source]¶ Adds requirement to this collection
Parameters: requirement – Requirement
instance to add
-
-
ebonite.core.objects.requirements.
resolve_requirements
(other: Union[ebonite.core.objects.requirements.Requirements, ebonite.core.objects.requirements.Requirement, List[ebonite.core.objects.requirements.Requirement], str, List[str]]) → ebonite.core.objects.requirements.Requirements[source]¶ Helper method to create
Requirements
from any supported source. Supported formats:Requirements
,Requirement
, list ofRequirement
, string representation or list of string representationsParameters: other – requirement in supported format Returns: Requirements
instance