# Rancher - ArgoCD [_ArgoCD_](https://argo-cd.readthedocs.io/en/stable/) es una herramienta de automatización de CD y GitOps que te ayudará a desplegar y mantener distribuciones de kubernetes. ## Requisitos Antes de continuar con la configuración, se da por hecho que ya has instalado _ArgoCD_ en el _Cluster_. Asimismo, se da por hecho que ya cuentas con la contraseña de acceso a _ArgoCD_. Para ingresar deberás colocar `admin` como usuario y la contraseña que hayas obtenido desde la consola. ![Login](https://i.imgur.com/EO8BQpD.png) ## Agregar un repositorio Una vez que hayas ingresado a la plataforma de _ArgoCD_, lo primero que debes realizar es agregar un repositorio de _Git_ de donde obtendremos las configuraciones. Para ello, da clic en la opción _Manage your repositories_ que es la segunda opción en el menú de la izquierda. ![Manage your repos](https://i.imgur.com/IHjr0z5.png) Una vez que estes dentro de la configuración de _Manage your repositories_, ubica la opción de _Repositories_ y da clic en esa opción. ![Repositories](https://i.imgur.com/EyJoILM.png) Dentro de _Repositories_, verás varias opciones para conectar nuestro repositorio, en caso de que tengas habilitado la opción de SSH en tu configuración con _Git_ selecciona esa opción, en caso contrario, selecciona la opción de HTTPS. ![HTTP](https://i.imgur.com/QwgK6wH.png) Dentro de la configuración usando HTTPS, se requiere de la dirección HTTPS del repositorio, así como un acceso mediante usuario y contraseña. ![Repository HTTP](https://i.imgur.com/vnv1D54.png) Para obtener ese usuario y contraseña deberás ir a tu repositorio y obtenerlo mediante un _token_, en caso de que estes usando _Gitlab_ lo puedes hacer mediante la siguiente configuración: ![Gitlab](https://i.imgur.com/S6aVpUm.png) Una vez que hayas conectado el repositorio a _ArgoCD_, deberás ir al portal principal y seleccionar la _New App_ ## Agregar nueva aplicación ![New App](https://i.imgur.com/IaiBDbd.png) Una vez que des clic en este botón, se abrirá una ventana para configurar el repositorio, deberás ingresar el nombre de la aplicación, seleccionar _Default_ en la parte de _Project_ y en _Sync Policy_ seleccionar _Automatic_. ![General](https://i.imgur.com/Y2m7V8u.png) En la siguiente sección de _Source_ deberás seleccionar el repositorio del cual obtendrás la configuración, así como el path de la _Chart_. ![Chart](https://i.imgur.com/5ne8X8r.png) En la siguiente configuración _Destination_ selecciona la opción por defecto en el campo _Cluster URL_ y coloca el nombre del namespace que deseas crear: ![Destination](https://i.imgur.com/POmhy1B.png) Finalmente, revisa los valores de Helm y en caso de que todo este correcto da clic en el botón _Create_. ![Helm](https://i.imgur.com/dSTWa9G.png) Con esta configuración, la aplicación se creará y podrás verla en el panel principal. Para ver la configuración detallada da clic sobre la configuración. ![Apps](https://i.imgur.com/6rTrqHA.png) Al dar clic sobre la configuración, te mostrará una vista detallada de los recursos que se estan creando y conectando en el _Namespace_, deberás poner atención en las secciones: - App Health - Current Sync Status - Last Sync Result ![App Details](https://i.imgur.com/mdtjoVV.png) ## Actualizar Aplicación En caso de que actualices tu repositorio y quieras reflejar esos cambios en tu aplicación, deberás dar clic en el botón _Sync_. ![Sync](https://i.imgur.com/4cOUeM3.png) Posteriormente, se abrirá una ventana en dónde tendrás que seleccionar la opción _Force_ y dar clic en _Synchronize_. ![Synchronize](https://i.imgur.com/EWSP4uZ.png) ## Logs & Troubleshooting En caso de que algún componente de la aplicación tenga algún error o contenga un estatus diferente a _Health_, puedes ver información adicional de cada elemento, dando clic sobre el elemento deseado. ![Element](https://i.imgur.com/rD9bvoQ.png) Al dar clic, sobre el elemento se abrirá una ventana con información, para ver la información acerca de los eventos, da clic en la opción _Events_. ![Events](https://i.imgur.com/XLgQfGT.png) También puedes ver los _Logs_ de los elementos si das clic en esa opción.