Ugrás a tartalomhoz

Automatizálás

A Rudel automatizálása megakadályozza az eldobható sandboxok korlátlan felhalmozódását. Egy óránkénti WP-Cron esemény, a rudel_scheduled_cleanup, a következőket végezheti:

  • futtathatja a takarítási szabályzatot (lejárat, kor és tétlenség alapján)
  • eltávolíthatja az összevont ágakhoz tartozó sandboxokat
  • jelentést készíthet a lejárt vagy hamarosan lejáró sandboxokról

Konfiguráció

Az automatizálás ezeket a kulcsokat a rudel_config beállításból olvassa. A teljes lista a Konfiguráció oldalon található.

Kulcs Cél Alapértelmezett érték
auto_cleanup_enabled Minden eseménynél futtatja a takarítási szabályzatot 1
auto_cleanup_merged Az összevont Git munkafaágakhoz tartozó sandboxokat is eltávolítja 0
expiring_environment_notice_days Jelenti a N napon belül lejáró sandboxokat 0
max_age_days A takarítási szabályzatban használt korhatár 0
max_idle_days A takarítási szabályzatban használt tétlenségi határ 0
default_ttl_days Az új sandboxok lejárati ideje 0

Az alapértelmezett beállításokkal az esemény ütemezett, de csak azokat a sandboxokat távolítja el, amelyeknek kifejezetten beállított lejárata már elmúlt, mivel nincs megadva kor- vagy tétlenségi határ, illetve alapértelmezett TTL.

WP-Cron

Az aktiválás ütemezi az eseményt, és minden kérés újra ellenőrzi az ütemezést: az esemény mindaddig létezik, amíg a auto_cleanup_enabled, a auto_cleanup_merged vagy a expiring_environment_notice_days értéke nem nulla; ellenkező esetben eltávolítja. Deaktiváláskor törlődik.

Nincsenek automatizálási parancsok. Módosítsa a beállításokat itt: rudel_config:

Shell
wp option update rudel_config '{"auto_cleanup_enabled":1,"max_idle_days":7,"expiring_environment_notice_days":2}' --format=json
wp rudel status

A wp rudel status megjeleníti a következőket: Auto cleanup, Auto cleanup merged, Expiry notice days és Automation scheduled.

Lejárati jelentések

Ha a expiring_environment_notice_days be van állítva, minden futás összegyűjti azokat a sandboxokat, amelyek expires_at értéke ennyi napon belülre esik, majd átadja őket a rudel_after_automation_expiring_environments műveletnek, két csoportra bontva: expiring és expired. A Rudel önmagában nem küld értesítést; kösse a műveletet egy értesítési kezelőhöz.

PHP
add_action(
    'rudel_after_automation_expiring_environments',
    function ( array $report ): void {
        foreach ( $report['expiring'] as $sandbox ) {
            error_log( $sandbox['id'] . ' expires at ' . $sandbox['expires_at'] );
        }
    }
);

Futtatás most

A kiszámítható helyi vagy CI-futtatásokhoz használjon kézi takarítást:

Shell
wp rudel cleanup --dry-run
wp rudel cleanup

A PHP környezetben a Rudel::run_automation() ugyanazokat a feladatokat futtatja, mint a cron esemény.