Automaatio
Rudel-järjestelmän automaatio estää väliaikaisten eristysympäristöjen kertymisen. Yksi tunnin välein suoritettava WP-Cron-tapahtuma, rudel_scheduled_cleanup, voi:
- suorittaa siivouskäytännön (vanheneminen, ikä ja toimettomuus)
- siivota yhdistetyt haarat
- raportoida vanhentuneet tai pian vanhenevat eristysympäristöt
Määritykset
Automaatio lukee nämä avaimet valinnasta rudel_config. Koko luettelo on sivulla Määritykset.
| Avain | Tarkoitus | Oletusarvo |
|---|---|---|
auto_cleanup_enabled |
Suorittaa siivouskäytännön jokaisessa tapahtumassa | 1 |
auto_cleanup_merged |
Poistaa lisäksi yhdistetyt Git-työpuun haarat käyttävät eristysympäristöt | 0 |
expiring_environment_notice_days |
Raportoi N päivän sisällä vanhenevat eristysympäristöt | 0 |
max_age_days |
Siivouskäytännön käyttämä ikäraja | 0 |
max_idle_days |
Siivouskäytännön käyttämä toimettomuusraja | 0 |
default_ttl_days |
Uusille eristysympäristöille annettava vanhenemisaika | 0 |
Oletusarvoilla tapahtuma on ajoitettu, mutta se poistaa vain eristysympäristöt, joiden nimenomainen vanhenemisaika on jo mennyt, koska ikä- tai toimettomuusrajaa eikä oletusarvoista elinaikaa (TTL) ole asetettu.
WP-Cron
Aktivointi ajoittaa tapahtuman, ja jokaisessa pyynnössä aikataulu tarkistetaan uudelleen: tapahtuma on olemassa, jos jokin arvoista auto_cleanup_enabled, auto_cleanup_merged tai expiring_environment_notice_days on nollasta poikkeava; muussa tapauksessa se poistetaan. Käytöstä poistaminen poistaa tapahtuman.
Automaatioon ei ole komentoja. Muuta asetuksia kohteessa 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 näyttää arvot Auto cleanup, Auto cleanup merged, Expiry notice days ja Automation scheduled.
Vanhenemisraportit
Kun asetus expiring_environment_notice_days on määritetty, jokaisessa ajossa kerätään eristysympäristöt, joiden expires_at osuu kyseisen päivän sisälle, ja välitetään ne toiminnolle rudel_after_automation_expiring_environments jaoteltuina ryhmiin expiring ja expired. Rudel ei lähetä ilmoituksia itse; ilmoita omistajille liittämällä toiminto ilmoitusjärjestelmään.
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'] );
}
}
);
Suorittaminen nyt
Käytä manuaalista siivousta paikallisissa tai CI-ajoissa, joiden tulosten on oltava ennakoitavia:
wp rudel cleanup --dry-run
wp rudel cleanup
Kohteesta PHP komento Rudel::run_automation() suorittaa samat tehtävät kuin cron-tapahtuma.