İçeriğe geç

Kancalar

Rudel, yalıtılmış ortamın yaşam döngüsü olayları çevresinde WordPress eylemlerini ve filtrelerini tetikler. Aşağıdaki katalogda Rudel::hooks() tarafından döndürülenler yer alır: 28 eylem ve 5 filtre.

Örnek

PHP
add_action(
    'rudel_after_environment_create',
    function ( \Rudel\Environment $environment, array $context ): void {
        error_log( 'Created Rudel environment ' . $environment->id );
    },
    10,
    2
);

Çoğu before ve failed eylemi bir $context dizisi alır. Yalıtılmış ortam yaşam döngüsü kancalarında bu dizi environment değerini (oluşturma sırasında ise name, options ve environments_dir değerlerini) içerir; failed eylemleri ayrıca yakalanan Throwable değerini $error olarak alır.

Yalıtılmış ortam yaşam döngüsü eylemleri

Eylem Bağımsız değişkenler
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 eylemi EnvironmentManager::replace_environment_state() öğesine aittir; hiçbir Rudel komutu bunları çağırmaz.

Anlık görüntü eylemleri

Eylem Bağımsız Değişkenler
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 ve path içerir. Bunların her biri ayrıca snapshot takma adıyla da çalışır; örneğin rudel_after_snapshot_create. Hatalar rudel_failed_recovery_point_{create|restore|delete} ve rudel_failed_snapshot_{create|restore|delete} ile $context'ı ve hatayı iletir. Bu takma adlar katalogda yer almaz.

Temizleme eylemleri

Eylem Bağımsız Değişkenler
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 ve errors ile reasons içerir.

Git push eylemleri

Eylem Bağımsız Değişkenler
rudel_before_environment_push $context
rudel_after_environment_push $sha, $context
rudel_environment_push_failed $context, $error

Bunlar Rudel::push() için çalışır. $context, environment, remote, message ve subdir içerir. wp rudel push komutu doğrudan push işlemi yapar ve bunları çalıştırmaz.

Otomasyon eylemleri

Eylem Bağımsız Değişkenler
rudel_before_automation_cleanup $config
rudel_after_automation_cleanup $result, $config
rudel_after_automation_expiring_environments $result, $config

$config, rudel_config dizisinin tamamıdır. Otomasyon bölümüne bakın.

Filtreler

Filtre Bağımsız Değişkenler
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, herhangi bir oluşturma çağrısının seçeneklerini Rudel bunları işlemeden önce değiştirebilir. rudel_environment_clone_source, ana makineden oluşturulan bir korumalı alanda saklanan klon meta verilerini filtreler. rudel_environment_db_dropin_contents yalnızca çoklu site alt site ortamlarının kullandığı db.php drop-in'i için geçerlidir; mevcut sürümlerin oluşturduğu tek tür olan kaplama korumalı alanları bunu hiçbir zaman oluşturmaz.

Filtreler, Rudel depolama modelini değiştirmek için değil, politikayı ayarlamak için kullanılır. Çalışma zamanı kimliği, tablo önekleri ve çalışma ağacı meta verileri DB destekli Rudel durumu olarak kalır.