> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Ciclo de vida

> Contrato de ejecución para el recurso personalizado de Vantage: fases de reconciliación, condiciones de estado y cómo forzar un reintento.

Esta página describe el contrato de ejecución entre usted y el operador de Vantage: las fases por las que pasa el operador en cada reconciliación, las condiciones que publica en el recurso `Vantage` y cómo forzar un reintento. Para el esquema a nivel de campo, consulte [referencia de la API](/es/vantage/self-hosted/v3.0/api-reference). Para obtener una descripción general conceptual, consulte [Arquitectura](/es/vantage/self-hosted/v3.0/architecture).

<div id="reconcile-phases">
  ## Fases de reconciliación
</div>

La reconciliación del operador se estructura en cinco fases secuenciales. Cada fase contiene validadores o pasos que deben completarse correctamente antes de que el operador avance a la siguiente fase. Un fallo en cualquier paso es fatal para la reconciliación y se refleja en `status.degradationReasons[]`.

| # | Fase              | Qué ocurre                                                                                                                                                                                                                                                                                                                                                            |
| - | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 1 | **Preflight**     | Valida la configuración. Durante las comprobaciones de preflight, se valida la configuración de secretos.                                                                                                                                                                                                                                                             |
| 2 | **Secrets**       | Garantiza que existan los resources relacionados con secrets para el provider de secrets configurado. Para el provider Azure Key Vault, el operador aprovisiona resources `SecretProviderClass` para cada chart; el controlador Secrets Store CSI suministra los valores a los pods al iniciarse. El operador no materializa por sí mismo los valores de los secrets. |
| 3 | **OCI Migration** | Ejecuta el trabajo de una sola vez que copia los artefactos de Vantage desde el registry de origen distribuido por ABBYY al registry de destino declarado en `spec.ociMigration.destination`. Se omite cuando `spec.ociMigration.enabled: false`.                                                                                                                     |
| 4 | **Installation**  | Genera manifiestos de ArgoCD `Application` para cada componente de Vantage a partir del ConfigMap de cargas de trabajo y los aplica.                                                                                                                                                                                                                                  |
| 5 | **Sync**          | Supervisa el estado de las aplicaciones de ArgoCD, muestra los errores por componente mediante `status.degradationReasons[]` y actualiza las condiciones `Progressing`, `Ready` y `Degraded` en consecuencia.                                                                                                                                                         |

<div id="status-conditions">
  ## Condiciones de estado
</div>

El operador publica el estado de la instalación mediante tipos de condición en `status.conditions[]`:

* **`Progressing`**: `status` es `True` mientras el proceso sigue en curso.
* **`Ready`**: `status` es `True` cuando finaliza correctamente.
* **`Degraded`**: `status` es `True` si se produce un error en cualquier momento. En este caso, `status.degradationReasons[]` contiene los detalles del error o de los errores.

Los procedimientos de instalación de Azure y autogestionada esperan a `condition=Ready` (`kubectl wait --for=condition=Ready vantages.vantage.abbyy.com/$release_name`). `Ready` no abarca la instalación de skill, que se ejecuta como un trabajo independiente (consulte más abajo), y también debe verificar las aplicaciones de ArgoCD generadas. Consulte la [referencia de `Vantage.status`](/es/vantage/self-hosted/v3.0/api-reference#vantagestatus) para ver el esquema de estado completo.

<div id="skill-installation-runs-separately">
  ### La instalación de skill se realiza por separado
</div>

Las Habilidades se instalan mediante un trabajo de Kubernetes independiente en el namespace de instalación, no mediante una aplicación de ArgoCD. El trabajo no aparece en ArgoCD ni se refleja en las condiciones anteriores, por lo que `Ready` no indica que la instalación de skill haya finalizado. Puede usar Vantage mientras el trabajo está en ejecución.

Supervise el trabajo directamente:

```bash theme={null}
kubectl -n $install_namespace wait --for=create job/$install_namespace-skill-installer-job
kubectl -n $install_namespace wait --for=condition=Complete job/$install_namespace-skill-installer-job
```

<div id="forcing-a-retry">
  ## Forzar un reintento
</div>

Para reintentar la instalación (por ejemplo, después de corregir un permiso de Key Vault), agregue una anotación al recurso `Vantage` con `vantage.abbyy.com/reprocess` (cualquier valor):

```bash theme={null}
kubectl -n $install_namespace annotate vantages.vantage.abbyy.com/$release_name \
  vantage.abbyy.com/reprocess="$(date +%s)" --overwrite
```

El recurso personalizado `Vantage` es mutable, pero para reintentar la instalación de Vantage, el CR de `Vantage` correspondiente debe llevar la anotación `vantage.abbyy.com/reprocess` (cualquier valor). Editar solo `spec.*` no vuelve a intentar una instalación fallida; después de corregir `spec`, aplique la anotación para desencadenar el reintento.

<div id="whats-next">
  ## Qué sigue
</div>

<CardGroup cols={2}>
  <Card title="Referencia de la API" icon="code" href="/es/vantage/self-hosted/v3.0/api-reference">
    Referencia campo por campo de todas las propiedades de especificación y estado.
  </Card>

  <Card title="Solución de problemas" icon="stethoscope" href="/es/vantage/self-hosted/v3.0/troubleshooting">
    Síntoma → diagnóstico → solución para fallos comunes al reconciliar.
  </Card>
</CardGroup>
