Шаги (Step)¶
-
class
carnival.
Step
¶ Объект, предназначенный для выполнения группы команд с какой-то целью. Вызывается из класса carnival.Task для выполнения команд (carnival.cmd) на определенных хостах.
Может требовать наличие определенных контекстных переменных для работы, указав их в аргументах конструктора, а в задаче (Task) передать нужные аргументы в конструктор.
Может вернуть значение для дальнейшего использования.
>>> ... >>> class DiskUsage(Step): >>> def __init__(self, disk_name: str): >>> self.disk_name = disk_name >>> >>> def run(self, c: Connection): >>> ...
-
run
(c: Connection) → Any¶ Метод который нужно определить для выполнения команд
Параметры: c – Соединение с хостом для выполнения шага
-
validate
(c: Connection) → None¶ Валидатор шага, запускается перед выполнением Должен выкидывать .StepValidationError в случае ошибки
Параметры: host – На котором будет выполнен шаг Исключение: StepValidationError – в случае ошибок валидации >>> from carnival.exceptions import StepValidationError >>> ... >>> def validate(self, c: "Connection") -> None: >>> raise StepValidationError("Step validation is not implemented")
-