Saltar al contenido

Instantáneas

Las instantáneas guardan un punto de recuperación de un entorno aislado.

Shell
wp rudel snapshot alpha-3be7 --name=before-test

Restaurar una instantánea:

Shell
wp rudel restore alpha-3be7 --snapshot=before-test

restore solicita confirmación; --force omite la solicitud. Los nombres de instantánea pueden tener hasta 64 letras, dígitos, puntos, guiones o guiones bajos, y deben empezar por una letra o un dígito.

Las instantáneas sirven para recuperar entornos aislados, no para definir su identidad en tiempo de ejecución. El registro del entorno sigue siendo la fuente de verdad del entorno aislado.

Qué incluyen las instantáneas

  • todas las tablas con el prefijo del entorno aislado, incluidas las de usuarios, copiadas en la misma base de datos bajo {sandbox_prefix}snap_{hash}_, por ejemplo wp_b65338d_snap_3ba676_options
  • el directorio del tema del entorno aislado, copiado en snapshots/{name}/themes dentro del directorio del entorno aislado
  • metadatos en snapshots/{name}/snapshot.json y snapshots/{name}/db_snapshot.json

Por tanto, una instantánea requiere una copia completa de las tablas del entorno aislado en la base de datos del host y otra de los archivos del tema.

Qué no incluyen las instantáneas

  • el núcleo del host WordPress
  • los archivos compartidos de complementos
  • las cargas compartidas

Restore

Al restaurar, se descartan las tablas del entorno aislado (se conservan las tablas de la instantánea), se vuelven a copiar las tablas de la instantánea y se reemplaza el directorio del tema del entorno aislado por la copia guardada.

De forma predeterminada, Rudel guarda primero el estado actual como una instantánea llamada pre-restore-{timestamp}-{hash}, para que se pueda deshacer la restauración. Establezca auto_snapshot_before_restore en 0 en rudel_config para desactivar esta opción.

Listar y eliminar

No hay ningún comando CLI para listar o eliminar instantáneas. Desde PHP, Rudel::snapshots( $id ) las muestra, empezando por la más reciente. Las tablas de instantáneas se eliminan al destruir el entorno aislado; hasta entonces se conservan, incluidas las instantáneas automáticas pre-restore-* (incidencia #5).