Cârlige
Rudel declanșează acțiuni și filtre WordPress pentru evenimentele din ciclul de viață al sandboxului. Catalogul de mai jos este cel returnat de Rudel::hooks(): 28 de acțiuni și 5 filtre.
Exemplu
add_action(
'rudel_after_environment_create',
function ( \Rudel\Environment $environment, array $context ): void {
error_log( 'Created Rudel environment ' . $environment->id );
},
10,
2
);
Majoritatea acțiunilor before și failed primesc un tablou $context. Pentru hook-urile din ciclul de viață al sandboxului, acesta conține environment (sau name, options și environments_dir la creare); acțiunile failed primesc și Throwable capturată ca $error.
Acțiuni din ciclul de viață al sandboxului
| Acțiune | Argumente |
|---|---|
rudel_before_environment_create |
$context |
rudel_after_environment_create |
$environment, $context |
rudel_environment_create_failed |
$context, $error |
rudel_before_environment_update |
$context |
rudel_after_environment_update |
$environment, $context |
rudel_environment_update_failed |
$context, $error |
rudel_before_environment_destroy |
$context |
rudel_after_environment_destroy |
$context |
rudel_environment_destroy_failed |
$context, $error |
rudel_before_environment_replace_state |
$context |
rudel_after_environment_replace_state |
$result, $context |
rudel_environment_replace_state_failed |
$context, $error |
Cele trei acțiuni replace_state aparțin lui EnvironmentManager::replace_environment_state(), pe care nicio comandă Rudel nu o apelează.
Acțiuni pentru instantanee
| Acțiune | Argumente |
|---|---|
rudel_before_recovery_point_create |
$context |
rudel_after_recovery_point_create |
$context, $meta |
rudel_before_recovery_point_restore |
$context |
rudel_after_recovery_point_restore |
$context |
rudel_before_recovery_point_delete |
$context |
rudel_after_recovery_point_delete |
$context |
$context conține environment, kind (snapshot), name și path. Fiecare dintre acestea se declanșează și sub aliasul snapshot, de exemplu rudel_after_snapshot_create, iar erorile declanșează rudel_failed_recovery_point_{create|restore|delete} și rudel_failed_snapshot_{create|restore|delete} cu $context și eroarea. Aliasurile respective nu apar în catalog.
Acțiuni de cleanup
| Acțiune | Argumente |
|---|---|
rudel_before_environment_cleanup |
$options |
rudel_after_environment_cleanup |
$result, $options |
rudel_before_environment_cleanup_merged |
$options |
rudel_after_environment_cleanup_merged |
$result, $options |
$result conține removed, skipped, errors și reasons.
Acțiuni de push Git
| Acțiune | Argumente |
|---|---|
rudel_before_environment_push |
$context |
rudel_after_environment_push |
$sha, $context |
rudel_environment_push_failed |
$context, $error |
Acestea se declanșează pentru Rudel::push(). $context conține environment, remote, message și subdir. Comanda wp rudel push face push direct și nu le declanșează.
Acțiuni de automatizare
| Acțiune | Argumente |
|---|---|
rudel_before_automation_cleanup |
$config |
rudel_after_automation_cleanup |
$result, $config |
rudel_after_automation_expiring_environments |
$result, $config |
$config este tabloul complet rudel_config. Consultați Automatizare.
Filtre
| Filtru | Argumente |
|---|---|
rudel_environment_create_options |
$options, $name, $manager |
rudel_environment_clone_source |
$clone_source, $host_url, $db_cloned, $themes_cloned, $plugins_cloned, $uploads_cloned, $extra |
rudel_environment_cleanup_options |
$options, $repository |
rudel_environment_cleanup_merged_options |
$options, $repository |
rudel_environment_db_dropin_contents |
$contents, $context |
rudel_environment_create_options poate modifica opțiunile oricărui apel de creare înainte ca Rudel să le proceseze. rudel_environment_clone_source filtrează metadatele clonării salvate într-un sandbox creat de pe gazdă. rudel_environment_db_dropin_contents se aplică numai drop-in-ului db.php folosit de mediile multisite-subsite; sandboxurile overlay, singurul tip creat de versiunile actuale, nu generează niciodată unul.
Filtrele sunt destinate ajustării politicilor, nu înlocuirii modelului de stocare al Rudel. Identitatea la execuție, prefixele tabelelor și metadatele arborilor de lucru rămân stări Rudel bazate pe DB.