Skip to content
This repository was archived by the owner on Dec 16, 2025. It is now read-only.

Commit 013c9fb

Browse files
committed
Merge branch 'main' into prs/adding-pickle-output-to-cli
2 parents 074ac03 + 77b7263 commit 013c9fb

File tree

3 files changed

+23
-7
lines changed

3 files changed

+23
-7
lines changed

Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ LABEL org.opencontainers.image.source="https://github.com/SovereignCloudStack/ro
2727

2828
ARG ROOKIFY_VERSION=0.0.0.dev1
2929
ENV ROOKIFY_VERSION=$ROOKIFY_VERSION
30+
ENV PYTHONPATH="${PYTHONPATH}:/app/rookify/src"
3031

3132
WORKDIR /app/rookify
3233

requirements.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
bcrypt==4.1.2
22
cachetools==5.3.2
3-
certifi==2024.2.2
3+
certifi==2024.7.4
44
cffi==1.16.0
55
charset-normalizer==3.3.2
6-
cryptography==42.0.4
6+
cryptography==43.0.1
77
dill==0.3.8
88
decorator==5.1.1
99
Deprecated==1.2.14
1010
fabric==3.2.2
1111
google-auth==2.28.1
12-
idna==3.6
12+
idna==3.7
1313
invoke==2.2.0
14-
Jinja2==3.1.3
14+
Jinja2==3.1.4
1515
kubernetes==29.0.0
1616
MarkupSafe==2.1.5
1717
oauthlib==3.2.2
@@ -22,13 +22,13 @@ pycparser==2.21
2222
PyNaCl==1.5.0
2323
python-dateutil==2.8.2
2424
PyYAML==6.0.1
25-
requests==2.31.0
25+
requests==2.32.2
2626
requests-oauthlib==1.3.1
2727
rsa==4.9
2828
six==1.16.0
2929
structlog==24.1.0
3030
transitions==0.9.0
31-
urllib3==2.2.1
31+
urllib3==2.2.2
3232
yamale==5.1.0
3333
websocket-client==1.7.0
3434
wrapt==1.16.0

src/rookify/modules/__init__.py

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,16 @@ def _load_module(
4444

4545
global _modules_loaded
4646

47-
module = importlib.import_module("rookify.modules.{0}".format(module_name))
47+
if "." in module_name:
48+
absolute_module_name = module_name
49+
else:
50+
absolute_module_name = "rookify.modules.{0}".format(module_name)
51+
52+
try:
53+
module = importlib.import_module(absolute_module_name)
54+
except ModuleNotFoundError as e:
55+
raise ModuleLoadException(module_name, str(e))
56+
4857
additional_module_names = []
4958

5059
if not hasattr(module, "ModuleHandler") or not callable(
@@ -61,6 +70,7 @@ def _load_module(
6170

6271
if module not in _modules_loaded:
6372
_modules_loaded.append(module)
73+
6474
module.ModuleHandler.register_states(machine, config)
6575

6676

@@ -79,6 +89,11 @@ def load_modules(machine: Machine, config: Dict[str, Any]) -> None:
7989
migration_modules.remove(entry.name)
8090
_load_module(machine, config, entry.name)
8191

92+
for migration_module in migration_modules.copy():
93+
if "." in migration_module:
94+
migration_modules.remove(migration_module)
95+
_load_module(machine, config, migration_module)
96+
8297
if len(migration_modules) > 0 or len(config["migration_modules"]) < 1:
8398
logger = get_logger()
8499

0 commit comments

Comments
 (0)