
Entorno de ejecución en arenero
:Fuente: https://github.com/F-Secure/see :Documentación: https://see.readthedocs.io :Descarga: https://pypi.python.org/pypi/python-see
|travis badge| |docs badge|
.. |travis badge| image:: https://travis-ci.org/F-Secure/see.svg?branch=master :target: https://travis-ci.org/F-Secure/see :alt: Estado de la compilación .. |docs badge| image:: https://readthedocs.org/projects/see/badge/?version=latest :target: http://see.readthedocs.io/en/latest/?badge=latest :alt: Estado de la documentación
El Entorno de Ejecución en Aislamiento (SEE) es un marco de trabajo para construir automatización de pruebas en entornos seguros.
Los entornos aislados, proporcionados a través de libvirt, son personalizables, lo que permite un alto grado de flexibilidad. Se pueden emplear diferentes tipos de hipervisores (Qemu, VirtualBox, LXC) para ejecutar los entornos de prueba.
Se pueden añadir complementos a un Entorno de Prueba que proporcionan un mecanismo de sincronización de Eventos para su interacción. Los usuarios pueden habilitar y configurar los complementos a través de un archivo de configuración JSON.
SEE está diseñado para automatizar pruebas contra software desconocido, peligroso o inestable, rastreando su actividad durante la ejecución.
SEE es adecuado para construir plataformas de prueba modulares o gestionar código ejecutable con un buen grado de aislamiento.
SEE permite escribir pruebas en entornos aislados tanto para prototipado rápido como para ejecución en entornos de producción.
SEE está disponible como paquete de Python en el Python Package Index (PyPI).
Es responsabilidad del usuario instalar y configurar los hipervisores que se pretenden controlar con SEE, así como las posibles dependencias y subsistemas utilizados por los proveedores de imágenes seleccionados.
Consulte la documentación para ver cómo configurar cada hipervisor.
SEE está construido sobre las APIs de libvirt, por lo tanto, todos los hipervisores soportados por libvirt se pueden controlar a través de SEE.
SEE incluye soporte básico para QEMU, VirtualBox y LXC. Para agregar más hipervisores o personalizar los básicos, consulte el código contenido en see/context.
SEE utiliza un sistema de proveedores conectables para recuperar imágenes de disco de fuentes arbitrarias y ponerlas a disposición de SEE.
SEE incluye proveedores para Grupos de almacenamiento de LibVirt <https://libvirt.org/storage.html>_ y OpenStack Glance <https://docs.openstack.org/developer/glance/>_, así como una implementación de proveedor ficticia. Para agregar más proveedores, consulte el código contenido en see/image_providers.
SEE es un proveedor de entornos aislados basado en eventos y complementos para el control de flujo de pruebas síncrono y asíncrono.
::
+----------+
| |
+-------| SEE Hook |
| | |
| +----------+
+---------+-------+ +---------+ | +----------+
| | | | | | |
User -------> | SEE Environment |-------| Sandbox |-------+-------| SEE Hook |
| | | | | | |
+-----------------+ +---------+ | +----------+
| +----------+
| | |
+-------| SEE Hook |
| |
+----------+
Un Entorno SEE encapsula todos los recursos necesarios actuando como un manejador para el Usuario. El Entorno Aislado es controlado por los Hooks que actúan como complementos. Los Hooks se comunican y coordinan entre sí a través de Eventos.
Cada Hook tiene acceso directo al Entorno Aislado, que expone una API simple para su control y las APIs de libvirt para un control más detallado.
Página del proyecto Libvirt.
Presentación en PyCon Finlandia 2015.