refs #437 Changes endpoints to add uuid to url
parent
1a79772d1d
commit
6a389014cc
|
@ -9,8 +9,8 @@ El componente `ogboot` se encarga de la gestión y configuración de archivos de
|
||||||
|
|
||||||
#### Endpoints del Recurso `oglive`
|
#### Endpoints del Recurso `oglive`
|
||||||
|
|
||||||
1. **Ver todos los ogLives instalados (OGCORE)**
|
1. **Ver todos los ogLives instalados**
|
||||||
- **URL**: `/ogboot/v1/oglives/all`
|
- **URL**: `/ogboot/v1/oglives`
|
||||||
- **Método HTTP**: GET
|
- **Método HTTP**: GET
|
||||||
- **Descripción**: Obtiene información sobre todos los ogLives instalados.
|
- **Descripción**: Obtiene información sobre todos los ogLives instalados.
|
||||||
- **Respuesta**:
|
- **Respuesta**:
|
||||||
|
@ -23,15 +23,16 @@ El componente `ogboot` se encarga de la gestión y configuración de archivos de
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
2. **Obtener Información de un ogLive (OGCORE)**
|
2. **Obtener Información de un ogLive**
|
||||||
- **URL**: `/ogboot/v1/oglives/{name}`
|
- **URL**: `/ogboot/v1/oglives/{uuid}`
|
||||||
- **Método HTTP**: GET
|
- **Método HTTP**: GET
|
||||||
- **Descripción**: Obtiene información sobre un cliente ogLive instalado utilizando su nombre.
|
- **Descripción**: Obtiene información sobre un cliente ogLive instalado utilizando su nombre.
|
||||||
- **Parámetros**:
|
- **Parámetros**:
|
||||||
- `name` (string): Nombre del ogLive.
|
- `uuid` (string): uuid del ogLive.
|
||||||
- **Respuesta**:
|
- **Respuesta**:
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
|
"distribution": "uuid",
|
||||||
"distribution": "focal",
|
"distribution": "focal",
|
||||||
"kernel": "5.13.0-27",
|
"kernel": "5.13.0-27",
|
||||||
"architecture": "amd64",
|
"architecture": "amd64",
|
||||||
|
@ -44,7 +45,7 @@ El componente `ogboot` se encarga de la gestión y configuración de archivos de
|
||||||
- **200 OK**: Información del ogLive obtenida exitosamente.
|
- **200 OK**: Información del ogLive obtenida exitosamente.
|
||||||
- **404 Not Found**: ogLive no encontrado.
|
- **404 Not Found**: ogLive no encontrado.
|
||||||
|
|
||||||
3. **Obtener Información del ogLive Predeterminado (OGCORE)**
|
3. **Obtener Información del ogLive Predeterminado**
|
||||||
- **URL**: `/ogboot/v1/oglives/default`
|
- **URL**: `/ogboot/v1/oglives/default`
|
||||||
- **Método HTTP**: GET
|
- **Método HTTP**: GET
|
||||||
- **Descripción**: Obtiene información sobre el cliente ogLive predeterminado.
|
- **Descripción**: Obtiene información sobre el cliente ogLive predeterminado.
|
||||||
|
@ -70,11 +71,11 @@ El componente `ogboot` se encarga de la gestión y configuración de archivos de
|
||||||
|
|
||||||
|
|
||||||
4. **Establecer ogLive Predeterminado**
|
4. **Establecer ogLive Predeterminado**
|
||||||
- **URL**: `/ogboot/v1/oglives/default/{name}`
|
- **URL**: `/ogboot/v1/oglives/default/{uuid}`
|
||||||
- **Método HTTP**: POST
|
- **Método HTTP**: POST
|
||||||
- **Descripción**: Establece un cliente ogLive como predeterminado utilizando su nombre.
|
- **Descripción**: Establece un cliente ogLive como predeterminado utilizando su nombre.
|
||||||
- **Parámetros**:
|
- **Parámetros**:
|
||||||
- `name` (string): Nombre del ogLive a establecer como predeterminado.
|
- `uuid` (string): uuid del ogLive a establecer como predeterminado.
|
||||||
- **Respuestas**:
|
- **Respuestas**:
|
||||||
- **200 OK**: ogLive establecido como predeterminado exitosamente.
|
- **200 OK**: ogLive establecido como predeterminado exitosamente.
|
||||||
- **404 Not Found**: ogLive no encontrado.
|
- **404 Not Found**: ogLive no encontrado.
|
||||||
|
@ -139,7 +140,7 @@ El componente `ogboot` se encarga de la gestión y configuración de archivos de
|
||||||
- **500 Internal Server Error**: Error al crear el ogLive.
|
- **500 Internal Server Error**: Error al crear el ogLive.
|
||||||
|
|
||||||
7. **Eliminar un ogLive**
|
7. **Eliminar un ogLive**
|
||||||
- **URL**: `/ogboot/v1/oglives/{name}`
|
- **URL**: `/ogboot/v1/oglives/{uuid}`
|
||||||
- **Método HTTP**: DELETE
|
- **Método HTTP**: DELETE
|
||||||
- **Descripción**: Elimina un ogLive específico utilizando su nombre.
|
- **Descripción**: Elimina un ogLive específico utilizando su nombre.
|
||||||
- **Parámetros**:
|
- **Parámetros**:
|
||||||
|
@ -283,7 +284,7 @@ Para los nuevos flujos de trabajo, asumimos que habrá al menos una nueva tabla
|
||||||
|
|
||||||
| Atributo | Tipo de Dato | Descripción |
|
| Atributo | Tipo de Dato | Descripción |
|
||||||
|----------------|----------------|-----------------------------------------------------------------|
|
|----------------|----------------|-----------------------------------------------------------------|
|
||||||
| `id` | `SERIAL` | Identificador único del registro, clave primaria. |
|
| `id` | `SERIAL` | Identificador del ogLive que corresponde a su suma de comprobación |
|
||||||
| `distribution` | `VARCHAR(50)` | Nombre de la distribución del ogLive (por ejemplo, "focal"). |
|
| `distribution` | `VARCHAR(50)` | Nombre de la distribución del ogLive (por ejemplo, "focal"). |
|
||||||
| `kernel` | `VARCHAR(100)` | Versión del kernel del ogLive. |
|
| `kernel` | `VARCHAR(100)` | Versión del kernel del ogLive. |
|
||||||
| `architecture` | `VARCHAR(10)` | Arquitectura del ogLive (por ejemplo, "amd64"). |
|
| `architecture` | `VARCHAR(10)` | Arquitectura del ogLive (por ejemplo, "amd64"). |
|
||||||
|
@ -451,22 +452,52 @@ SELECT * FROM oglives WHERE directory = 'ogLive-5.13.0-r20210706';
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### Flujo de trabajo para desinstalar un `ogLive`
|
||||||
|
|
||||||
|
#### 1. Consultar los `ogLives` Instalados
|
||||||
|
|
||||||
#### 7. Desinstalar un `ogLive`
|
- **Descripción**: Obtener la lista de `ogLives` que están actualmente instalados en el sistema.
|
||||||
|
- **Interacción en la Web**:
|
||||||
|
- El usuario navega a la sección de `ogLives` en el panel de administración.
|
||||||
|
- Hace clic en "Ver `ogLives` instalados".
|
||||||
|
- El sistema realiza una llamada a la API para obtener la lista de `ogLives` instalados.
|
||||||
|
|
||||||
- **Descripción**: Eliminar un `ogLive` instalado del sistema.
|
**Realización**: Puede realizarse directamente desde **`ogCore`** mediante una consulta a la base de datos `oglives`.
|
||||||
- **Realización**: Requiere comunicación con **`ogBoot`**
|
|
||||||
|
**Consulta SQL**:
|
||||||
|
```sql
|
||||||
|
SELECT * FROM oglives;
|
||||||
|
```
|
||||||
|
|
||||||
**Endpoint**:
|
**Endpoint**:
|
||||||
- **`ogBoot`**: `/ogboot/v1/oglives/uninstall/550e8400-e29b-41d4-a716-446655440000`
|
- **`ogBoot`**: `/ogboot/v1/oglives`
|
||||||
|
- **Método**: `GET`
|
||||||
|
|
||||||
|
|
||||||
|
#### 2. Desinstalar `ogLive`
|
||||||
|
|
||||||
|
- **Descripción**: Iniciar el proceso de desinstalación del `ogLive` seleccionado en `ogBoot`.
|
||||||
|
- **Interacción en la Web**:
|
||||||
|
- En la lista de `ogLives` instalados, el usuario elige el `ogLive` a desinstalar.
|
||||||
|
- Hace clic en el botón "Desinstalar" junto al `ogLive` seleccionado.
|
||||||
|
- El sistema muestra un cuadro de confirmación preguntando si el usuario está seguro de desinstalar el `ogLive`.
|
||||||
|
- El usuario hace clic en "Confirmar" para proceder.
|
||||||
|
- El sistema envía una solicitud a `ogBoot` para desinstalar el `ogLive`.
|
||||||
|
|
||||||
|
**Realización**:
|
||||||
|
- **Endpoint**: `/ogboot/v1/oglives/550e8400-e29b-41d4-a716-446655440000`
|
||||||
- **Método**: `DELETE`
|
- **Método**: `DELETE`
|
||||||
- **Cuerpo de la Solicitud**:
|
- **Validación de Instalación**: `ogBoot` intenta desinstalar el `ogLive` y devuelve un estado de éxito o fallo.
|
||||||
```json
|
- **Actualización de Base de Datos**:
|
||||||
{
|
- **Desinstalación Exitosa**: Si `ogBoot` confirma el éxito, `ogCore` elimina el `ogLive` en la base de datos:
|
||||||
"name": "ogLive-5.13.0-r20210706"
|
```sql
|
||||||
}
|
DELETE FROM oglives WHERE uuid = '550e8400-e29b-41d4-a716-446655440000';
|
||||||
```
|
```
|
||||||
|
- **Instalación Fallida**: Si `ogBoot` reporta un fallo, no se realiza ningún borrado y se maneja el error adecuadamente en la interfaz de usuario.
|
||||||
|
|
||||||
|
|
||||||
|
### Flujo de trabajo para corregir las incongruencias entre `ogCore` y `ogBoot`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#### 8. Revisar estado de ogboot
|
#### 8. Revisar estado de ogboot
|
||||||
|
|
Loading…
Reference in New Issue