class

Beryl::Apply::AutoCloseSchedule

Inherits Beryl::Apply::Primitive < Reference < Object

Primitive auto-close-schedule : pose un at +Nh qui rejoue une autre recipe sur ce même host. Sert au pattern « fenêtre temporaire » (cf. sshd-public-open qui ouvre 22 pour 1 h, auto-close via cette primitive). Idempotent : si un job at du même tag existe déjà, on le supprime et on en pose un nouveau (réinitialisation du compteur).

- auto-close-schedule:
    tag: sshd-public-window
    after_hours: 1
    recipe: sshd-public-close

Le job posé exécute beryl apply --recipe <recipe> au moment où il se déclenche. Il faut donc que le binaire beryl soit présent côté serveur cible (cf. recipe beryl-bin à venir, ou pkg-install du shard packagé).

Le tag distingue plusieurs fenêtres concurrentes sur le même host (ex. l'opérateur lance deux sshd-public-open avec des durées différentes — chacune a son tag unique).

Constants

TAG_DIR = "/var/run/beryl/auto-close"

Instance methods

apply(shell : Shell, params : Hash(String, YAML::Any), dry_run : Bool, context : Context) : StepResult

params est le hash brut du step YAML (ex: {"packages" => [...]}), déjà interpolé par l'Executor. context porte les infos dérivées du host (cf. Context).

Source
name

Nom kebab-case utilisé comme clé de step dans les recettes (« pkg-install », « service-enable », …).

Source