Para el desarrollo de la interfaz de programación del proyecto deben seguirse estas reglas de estilo:
Constantes | Valor por defecto | Descripción |
---|---|---|
OPENGNSYS |
/opt/opengnsys |
Directorio principal de complementos del OpenGnSys |
OGBIN |
/opt/opengnsys/bin |
Directorio de ficheros ejecutables |
OGETC |
/opt/opengnsys/etc |
Directorio de ficheros de configuración |
OGLIB |
/opt/opengnsys/lib |
Directorio de librerías de programas |
OGAPI |
/opt/opengnsys/lib/engine/bin |
Directorio de librerías del motor de clonación |
OGIMG |
/opt/opengnsys/images |
Directorio del repositorio remoto de imágenes |
OGCAC |
/opt/opengnsys/cache |
Directorio de la caché local del cliente |
OGLOG |
/opt/opengnsys/log |
Directorio del registro de incidencias |
Los parámetros de las funciones deben estar unificados, ésto es, deben ser comprensibles según su tipo y su contexto.
Tipos de parámetros:
localhost
Identificador | Mnemónico | Tipo de partición |
---|---|---|
00 | EMPTY | Partición vacía no definida |
01 | FAT12 | FAT12 |
05 | EXTENDED | Partición extendida que puede contener varias particiones lógicas |
06, 0e | FAT16 | FAT16 |
07 | NTFS, EXFAT | NTFS o FAT64 (exFAT) |
0b, 0c | FAT32 | FAT32 |
11 | HFAT12 | FAT12 oculta |
16, 1e | HFAT16 | FAT16 oculta |
17 | HNTFS | NTFS oculta |
1b, 1c | HFAT32 | FAT32 oculta |
82 | LINUX-SWAP | Paginación para Linux (swap) |
83 | EXT2, EXT3, EXT4, REISERFS, REISER4, JFS, XFS | Sistemas operativos disponibles para una partición Linux |
8e | LINUX-LVM | Partición de volumen lógico para Linux |
bf | SOLARIS | Sistemas operativos UFS, ZFS para Solaris |
ca | CACHE | Caché local de OpenGNSys Client (se formateará como Ext3) |
fd | LINUX-RAID | Partición RAID para Linux |
* | UNKNOWN | Tipo de partición desconocido. |
Mnemónico | Tipo de hardware |
---|---|
mod | Marca y modelo del equipo |
boa | Placa base |
bio | Modelo y versión de la BIOS |
cpu | Modelo y velocidad del procesador |
mem | Tamaño de la memoria |
vga | Tarjeta gráfica |
net | Tarjeta de red |
mul | Tarjeta de sonido o muldimedia |
ide | Controladora de discos IDE ATA/SATA |
dis | Modelo y capacidad del disco duro |
cdr | Modelo de lectora o grabadora de CD/DVD |
usb | Dispositivo USB |
fir | Dispositivo !FireWire |
bus | Bus interno de gestión |
Las funciones deben realizar una comprobación y un tratamiento adecuados de posibles errores y fallos, evitando realizar operaciones innecesarias o incorrectas. Se generarán mensajes de error comprensibles y adecuados que ofrezcan información para detectar y corregir el problema, además de devolver un código de error que pueda ser tratado por otras funciones de la API.
Asimismo, se deben presentar mensajes informativos normalizados sobre el estado y la evolución de las operaciones realizadas.
La implementación de las funciones de la API tendrá en cuenta técnicas de internacionalización, para poder presentar los mensajes y los errores en el idioma del usuario.
Código | Mnemónico | Descripción |
---|---|---|
1 | OG_ERR_FORMAT |
Formato de ejecución incorrecto |
2 | OG_ERR_NOTFOUND |
Fichero o dispositivo no encontrado |
3 | OG_ERR_PARTITION |
Partición no reconocida o no se puede montar |
4 | OG_ERR_LOCKED |
Partición o fichero bloqueado |
5 | OG_ERR_IMAGE |
Error al crear o restaurar una imagen |
6 | OG_ERR_NOTOS |
Sin sistema operativo |
7 | OG_ERR_NOTEXEC |
Programa o función no ejecutable |
Las funciones de la API se agrupan lógicamente en librerías o clases (según el lenguaje de programación utilizado), con unas características comunes.
Lista de librerías o clases (en orden alfabético):
(lista de funciones para clonar "a mano" o desde scripts)
(lista de funciones ejecutadas por el gestor web)