Куки
Rudel задейства действия и филтри WordPress при събития от жизнения цикъл на пясъчниците. Каталогът по-долу съответства на резултата от Rudel::hooks(): 28 действия и 5 филтъра.
Пример
add_action(
'rudel_after_environment_create',
function ( \Rudel\Environment $environment, array $context ): void {
error_log( 'Created Rudel environment ' . $environment->id );
},
10,
2
);
Повечето действия before и failed получават масив $context. При куките за жизнения цикъл на пясъчника той съдържа environment (или name, options и environments_dir при създаване); действията failed получават и уловеното Throwable като $error.
Действия за жизнения цикъл на пясъчника
| Действие | Аргументи |
|---|---|
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 |
Трите действия replace_state принадлежат на EnvironmentManager::replace_environment_state(), което не се извиква от нито една команда Rudel.
Действия за снимки
| Действие | Аргументи |
|---|---|
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 съдържа environment, kind (snapshot), name и path. Всяко от тях се задейства и под псевдоним snapshot, например rudel_after_snapshot_create, а при неуспех се задействат rudel_failed_recovery_point_{create|restore|delete} и rudel_failed_snapshot_{create|restore|delete} с $context и грешката. Тези псевдоними не са включени в каталога.
Действия за почистване
| Действие | Аргументи |
|---|---|
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 съдържа removed, skipped, errors и reasons.
Действия за изпращане на промени Git
| Действие | Аргументи |
|---|---|
rudel_before_environment_push |
$context |
rudel_after_environment_push |
$sha, $context |
rudel_environment_push_failed |
$context, $error |
Те се задействат за Rudel::push(). $context съдържа environment, remote, message и subdir. Командата wp rudel push изпраща директно и не ги задейства.
Действия за автоматизация
| Действие | Аргументи |
|---|---|
rudel_before_automation_cleanup |
$config |
rudel_after_automation_cleanup |
$result, $config |
rudel_after_automation_expiring_environments |
$result, $config |
$config е целият масив rudel_config. Вижте Automation.
Филтри
| Филтър | Аргументи |
|---|---|
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 може да променя опциите на всеки извикващ код преди Rudel да ги обработи. rudel_environment_clone_source филтрира метаданните на клонирането, съхранени в изолирана среда, създадена от хоста. rudel_environment_db_dropin_contents се отнася само за добавката db.php, която използват среди с под-сайтове в мултисайт; наслагващите изолирани среди, единственият вид, създаван от текущите версии, никога не генерират такава добавка.
Филтрите са предназначени за корекции на правилата, а не за замяна на модела за съхранение на Rudel. Идентичността по време на изпълнение, префиксите на таблиците и метаданните на работните дървета остават състояние на Rudel, съхранявано в базата данни.