Migrating the classes to pydantic
main / Explore-Gitea-Actions (push) Failing after 14s

This commit is contained in:
2026-08-03 23:37:25 +01:00
parent a68d7b1d59
commit 8d73d5ded7
15 changed files with 814 additions and 479 deletions
+13 -13
View File
@@ -1,42 +1,42 @@
# directory actions registry
from playbook.action_registry import ActionRegistry
from playbook.models import StepLog
from playbook.logging_models import StepLogModel
import os
diract = ActionRegistry("directory_actions_reg")
diract = ActionRegistry(name="directory_actions_reg")
@diract.register(name="directory_exists", version="stat1.0")
def directory_exists(ctx, name) -> StepLog:
def directory_exists(ctx, name) -> StepLogModel:
if not os.path.exists(ctx["repoPath"]):
return StepLog.fail(name, [
return StepLogModel.fail(name, [
{"status": "failed", "output": f"dir '{ctx["repoPath"]}' doesn't exist"}]
)
return StepLog.ok(name, "directory exists")
return StepLogModel.ok(name, "directory exists")
@diract.register(name="create_dir", version="stat1.0")
def create_dir(ctx, name) -> StepLog:
def create_dir(ctx, name) -> StepLogModel:
try:
os.makedirs(ctx["repoPath"])
except Exception as e:
return StepLog.fail(name, [{"status": "failed", "output": str(e)}])
return StepLogModel.fail(name, [{"status": "failed", "output": str(e)}])
return StepLog.ok(name, "dir create successfully")
return StepLogModel.ok(name, "dir create successfully")
@diract.register(name="create_dir_if_not_exists", version="stat1.0")
def create_dir_if_not_exists(ctx, name) -> StepLog:
log: StepLog = directory_exists(ctx, name + f".{directory_exists.__name__}")
def create_dir_if_not_exists(ctx, name) -> StepLogModel:
log: StepLogModel = directory_exists(ctx, name + f".{directory_exists.__name__}")
msg: str = ""
if log.failed:
dir_creation_log: StepLog = create_dir(ctx, name + f".{create_dir.__name__}")
dir_creation_log: StepLogModel = create_dir(ctx, name + f".{create_dir.__name__}")
if dir_creation_log.failed:
return StepLog.fail(name, [{"status": "failed", "output": dir_creation_log}])
return StepLogModel.fail(name, [{"status": "failed", "output": dir_creation_log}])
msg = "dir created succesfully"
else:
msg = "dir already exists"
return StepLog.ok(name, msg)
return StepLogModel.ok(name, msg)