Saltar al contenido

Configuración

Rudel tiene dos tipos de configuración: ajustes guardados en la opción rudel_config WordPress y constantes que se definen en wp-config.php.

La opción rudel_config

Los ajustes se almacenan en una matriz de wp_options bajo rudel_config. Hasta que se escriba la opción, cada clave usa su valor predeterminado. Las claves desconocidas se ignoran y los valores se guardan como enteros.

Clave Valor predeterminado Significado
max_sandboxes 0 Impide crear un sandbox cuando hay esta cantidad. 0 significa que no hay límite.
max_disk_mb 0 Impide crear un sandbox cuando los directorios de sandbox ocupan esta cantidad de megabytes. No se cuentan las tablas clonadas. 0 significa que no hay límite.
default_ttl_days 0 Vencimiento de los nuevos sandboxes creados sin ttl_days ni expires_at. 0 significa que no vencen.
max_age_days 0 La limpieza elimina los sandboxes más antiguos que este valor. 0 desactiva la regla de antigüedad.
max_idle_days 0 La limpieza elimina los sandboxes sin actividad registrada (una solicitud de sandbox o una instantánea) durante este tiempo. 0 desactiva la regla de inactividad.
auto_cleanup_enabled 1 Ejecuta cada hora la política de limpieza de WP-Cron.
auto_cleanup_merged 0 También ejecuta la limpieza de ramas fusionadas de WP-Cron.
expiring_environment_notice_days 0 Recopila en cada ejecución de automatización los sandboxes que vencen dentro de esta cantidad de días y los pasa a la acción rudel_after_automation_expiring_environments.
auto_snapshot_before_restore 1 Guarda una instantánea de pre-restore-... antes de cada restauración.

wp rudel status muestra los valores actuales.

Escriba la opción con WP-CLI. Las claves que omita conservan sus valores predeterminados:

Shell
wp option update rudel_config '{"max_age_days":14,"max_idle_days":3,"auto_cleanup_merged":1}' --format=json

O desde PHP:

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

El evento WP-Cron se programa o se elimina en la siguiente solicitud después de un cambio. Consulte Automatización.

Constantes

Defínalas en wp-config.php antes de la línea de arranque de Rudel.

Constante Valor predeterminado Significado
RUDEL_CLI_COMMAND rudel Nombre del comando raíz de WP-CLI.
RUDEL_ENVIRONMENTS_DIR wp-content/rudel-environments Directorio que contiene los directorios de sandbox. Los recursos del tema siempre se sirven desde /wp-content/rudel-environments/{id}/themes, por lo que cualquier otro directorio debe seguir siendo accesible desde ese URL.
RUDEL_RUNTIME_TABLE_PREFIX rudel_ Parte de los nombres de las tablas de Rudel después del prefijo WordPress. Consulte Estado de ejecución.
RUDEL_RUNTIME_TABLE_ENVIRONMENTS Nombre completo alternativo para la tabla de entornos, después del prefijo WordPress.
RUDEL_RUNTIME_TABLE_WORKTREES Nombre completo alternativo para la tabla de worktrees, después del prefijo WordPress.
RUDEL_DB_DRIVER auto Controlador para el acceso independiente a Rudel\Connection: auto, mysqli o pdo. Las solicitudes de WordPress siempre usan $wpdb.
RUDEL_GIT_AUTHOR_NAME Rudel Nombre del autor que Rudel escribe en la configuración de Git de un checkout si no tiene user.name; se usa para las confirmaciones de wp rudel push.
RUDEL_GIT_AUTHOR_EMAIL rudel@localhost Correo electrónico del autor que Rudel escribe si el checkout no tiene user.email.

Constantes dentro de una solicitud de sandbox

Cuando una solicitud selecciona un sandbox, el arranque define constantes que el código puede leer. Las más útiles son:

Constante Valor
RUDEL_ID ID del sandbox
RUDEL_PATH Directorio del sandbox
RUDEL_TABLE_PREFIX Prefijo de tabla del sandbox
RUDEL_THEME_SLUG Tema servido desde el sandbox
RUDEL_HOST_URL, RUDEL_ENVIRONMENT_URL URL del host y del sandbox
RUDEL_DISABLE_EMAIL true; el correo saliente está bloqueado

Prefiera los métodos API, como Rudel::id(), en lugar de leer las constantes directamente.

El arranque también define WP_DEBUG, WP_DEBUG_LOG, WP_DEBUG_DISPLAY, WP_TEMP_DIR, WP_CACHE_KEY_SALT y las ocho claves y sales de autenticación, pero solo aquellas que wp-config.php no haya definido ya. Consulte Registro de errores y Aislamiento.