Перейти до вмісту

Конфігурація

Rudel має два типи конфігурації: налаштування, що зберігаються в параметрі rudel_config WordPress, і константи, які ви визначаєте в wp-config.php.

Параметр rudel_config

Налаштування зберігаються в одному масиві в wp_options під ключем rudel_config. Поки параметр не записано, для кожного ключа використовується типове значення. Невідомі ключі ігноруються, а значення зберігаються як цілі числа.

Ключ Типове значення Значення
max_sandboxes 0 Відмовити у створенні ізольованого середовища, якщо їхня кількість досягне цього значення. 0 означає відсутність обмеження.
max_disk_mb 0 Відмовити у створенні ізольованого середовища, якщо розмір його каталогів у мегабайтах досягне цього значення. Клоновані таблиці не враховуються. 0 означає відсутність обмеження.
default_ttl_days 0 Термін дії для нових ізольованих середовищ, створених без ttl_days або expires_at. 0 означає, що термін дії не обмежено.
max_age_days 0 Очищення видаляє ізольовані середовища, старші за це значення. 0 вимикає обмеження за віком.
max_idle_days 0 Очищення видаляє ізольовані середовища, у яких протягом цього часу не було зафіксовано активності (запиту середовища або знімка). 0 вимикає обмеження часу бездіяльності.
auto_cleanup_enabled 1 Щогодини застосовувати політику очищення з WP-Cron.
auto_cleanup_merged 0 Також виконувати очищення з WP-Cron для об’єднаних гілок.
expiring_environment_notice_days 0 Під час кожного запуску автоматизації збирати ізольовані середовища, термін дії яких завершується протягом цієї кількості днів, і передавати їх дії rudel_after_automation_expiring_environments.
auto_snapshot_before_restore 1 Зберігати знімок pre-restore-... перед кожним відновленням.

wp rudel status виводить поточні значення.

Запишіть параметр за допомогою WP-CLI. Для пропущених ключів залишаються типові значення:

Командна оболонка
wp option update rudel_config '{"max_age_days":14,"max_idle_days":3,"auto_cleanup_merged":1}' --format=json

Або з PHP:

PHP
$config = new Rudel\RudelConfig();
$config->set( 'max_sandboxes', 20 );
$config->save();

Подію WP-Cron буде заплановано або скасовано під час наступного запиту після зміни. Див. Автоматизація.

Константи

Визначте ці параметри в wp-config.php перед рядком завантаження Rudel.

Константа Типове значення Значення
RUDEL_CLI_COMMAND rudel Назва кореневої команди WP-CLI.
RUDEL_ENVIRONMENTS_DIR wp-content/rudel-environments Каталог для каталогів ізольованих середовищ. Файли тем завжди обслуговуються з /wp-content/rudel-environments/{id}/themes, тому інший каталог також має бути доступним за цією URL.
RUDEL_RUNTIME_TABLE_PREFIX rudel_ Частина назв таблиць Rudel після префікса WordPress. Див. Стан виконання.
RUDEL_RUNTIME_TABLE_ENVIRONMENTS Повна назва таблиці середовищ, що перевизначає типову, після префікса WordPress.
RUDEL_RUNTIME_TABLE_WORKTREES Повна назва таблиці робочих дерев, що перевизначає типову, після префікса WordPress.
RUDEL_DB_DRIVER auto Драйвер для автономного доступу до Rudel\Connection: auto, mysqli або pdo. Запити WordPress завжди використовують $wpdb.
RUDEL_GIT_AUTHOR_NAME Rudel Ім’я автора, яке Rudel записує в конфігурацію Git checkout, якщо там немає user.name; використовується для комітів wp rudel push.
RUDEL_GIT_AUTHOR_EMAIL rudel@localhost Адреса електронної пошти автора, яку Rudel записує, якщо в checkout немає user.email.

Константи в запиті ізольованого середовища

Коли запит вибирає ізольоване середовище, початкове налаштування визначає константи, які може читати код. Найкорисніші з них:

Константа Значення
RUDEL_ID ID ізольованого середовища
RUDEL_PATH каталог ізольованого середовища
RUDEL_TABLE_PREFIX префікс таблиць ізольованого середовища
RUDEL_THEME_SLUG тема, що обслуговується з ізольованого середовища
RUDEL_HOST_URL, RUDEL_ENVIRONMENT_URL URL хоста й ізольованого середовища
RUDEL_DISABLE_EMAIL true; вихідну пошту заблоковано

Надавайте перевагу методам API, як-от Rudel::id(), замість прямого читання констант.

Початкове налаштування також визначає WP_DEBUG, WP_DEBUG_LOG, WP_DEBUG_DISPLAY, WP_TEMP_DIR, WP_CACHE_KEY_SALT і вісім ключів та солей автентифікації, але лише ті, які wp-config.php ще не визначив. Див. Журналювання помилок та Ізоляція.