Automatizavimas
Rudel automatizavimas neleidžia kauptis vienkartinėms smėlio dėžėms. Vienas kas valandą vykstantis WP-Cron įvykis, rudel_scheduled_cleanup, gali:
- vykdyti valymo politiką (pagal galiojimo pabaigą, amžių ir neveiklumą)
- valyti sujungtas šakas
- pranešti apie pasibaigusio arba netrukus pasibaigsiančio galiojimo smėlio dėžes
Konfigūracija
Automatizavimas skaito šiuos raktus iš parinkties rudel_config. Visas sąrašas pateiktas puslapyje Konfigūracija.
| Raktas | Paskirtis | Numatytoji reikšmė |
|---|---|---|
auto_cleanup_enabled |
Vykdyti valymo politiką per kiekvieną įvykį | 1 |
auto_cleanup_merged |
Taip pat pašalinti smėlio dėžes, kurių susietos darbinio medžio Git šakos sujungtos | 0 |
expiring_environment_notice_days |
Pranešti apie smėlio dėžes, kurių galiojimas baigsis per N dienų | 0 |
max_age_days |
Valymo politikoje naudojama amžiaus riba | 0 |
max_idle_days |
Valymo politikoje naudojama neveiklumo riba | 0 |
default_ttl_days |
Naujoms smėlio dėžėms nustatoma galiojimo trukmė | 0 |
Esant numatytosioms reikšmėms, įvykis suplanuojamas, bet pašalinamos tik tos smėlio dėžės, kurių aiškiai nustatyta galiojimo pabaiga jau praėjusi, nes nenustatyta nei amžiaus, nei neveiklumo riba, nei numatytoji galiojimo trukmė.
WP-Cron
Aktyvinus suplanuojamas įvykis, o kiekviena užklausa iš naujo patikrina tvarkaraštį: įvykis vykdomas, kol bent vienos iš reikšmių auto_cleanup_enabled, auto_cleanup_merged arba expiring_environment_notice_days reikšmė nėra nulis; kitu atveju jis pašalinamas. Išjungus įvykis pašalinamas.
Automatizavimo komandų nėra. Pakeiskite nustatymus čia: rudel_config:
wp option update rudel_config '{"auto_cleanup_enabled":1,"max_idle_days":7,"expiring_environment_notice_days":2}' --format=json
wp rudel status
wp rudel status rodo Auto cleanup, Auto cleanup merged, Expiry notice days ir Automation scheduled.
Galiojimo pabaigos ataskaitos
Nustačius expiring_environment_notice_days, kiekvieno vykdymo metu surenkamos smėlio dėžės, kurių expires_at sueis per nurodytą dienų skaičių, ir perduodamos veiksmui rudel_after_automation_expiring_environments, suskirstytos į expiring ir expired. Rudel pats nepraneša; susiekite veiksmą su savininkų informavimo mechanizmu.
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'] );
}
}
);
Vykdymas dabar
Jei norite nuspėjamai vykdyti vietinį arba CI valymą, naudokite rankinį valymą:
wp rudel cleanup --dry-run
wp rudel cleanup
Iš PHP komanda Rudel::run_automation() vykdo tas pačias užduotis kaip ir įvykis cron.