Argo CD Argo CD

Gestiona aplicaciones con la CLI de Argo CD

Inicia sesión, crea, inspecciona, compara, sincroniza y revierte aplicaciones desde la terminal.

10 min Principiante

Todo lo que puedes hacer en la interfaz web también está disponible a través de la CLI argocd, que es la que usarás en scripts y cuando quieras previsualizar un cambio antes de aplicarlo. Esta guía asume que Argo CD está instalado y que el port-forward de la guía de instalación sigue en ejecución.

Instala la CLI e inicia sesión

Instala la CLI (brew install argocd en macOS, o descarga un binario desde la página de releases) y comprueba que funciona:

argocd version --client

Inicia sesión en el servidor de la API a través del port-forward. --insecure omite la verificación del certificado autofirmado, lo cual es aceptable en local pero no en una instalación real:

argocd login localhost:8080 --username admin --password '<initial-password>' --insecure

Ejecuta argocd --help para listar los comandos. La mayor parte de tu trabajo diario estará bajo argocd app.

Crea e inspecciona aplicaciones

Crea una aplicación a partir de flags en lugar de un manifiesto:

argocd app create webapp-prod \
  --repo https://github.com/your-org/webapp-config.git \
  --path prod \
  --dest-server https://kubernetes.default.svc \
  --dest-namespace webapp-prod \
  --sync-option CreateNamespace=true

Si no defines una política de sincronización, la aplicación es manual. Luego mira qué existe:

argocd app list
argocd app get webapp-prod

list muestra cada aplicación con su clúster, namespace, proyecto, estado de sincronización, salud y política de sincronización. get muestra los detalles de una aplicación y sus recursos.

Previsualiza y sincroniza

Una aplicación manual recién creada aparece como OutOfSync y Missing, porque todavía no se ha aplicado nada. Antes de sincronizar, puedes ver exactamente qué cambiaría:

argocd app diff webapp-prod
argocd app sync webapp-prod
argocd app wait webapp-prod --health

Si una sincronización falla, el error se imprime por ti. Uno habitual es un namespace de destino que aún no existe. Para eso sirve la opción CreateNamespace=true de arriba. Después de hacer un cambio en Git, argocd app diff es una forma rápida de revisarlo antes de sincronizar, y muestra la misma información que la vista App Diff de la interfaz.

Revisa el historial, revierte y lee los logs

argocd app history webapp-prod
argocd app rollback webapp-prod <ID>
argocd app logs webapp-prod

history lista las revisiones desplegadas con sus ID. rollback vuelve a una de ellas y, como se explicó en la guía de políticas de sincronización, solo funciona mientras la sincronización automatizada esté desactivada. logs transmite los logs de los Pods de la aplicación, útil para echar un primer vistazo a un despliegue.

Cambia la configuración y limpia

Actualiza la configuración de una aplicación sin editar YAML:

argocd app set webapp-prod --sync-policy automated --auto-prune --self-heal

Ejecuta argocd app set --help para ver todo lo que puedes cambiar. Cuando termines con una aplicación, elimínala:

argocd app delete webapp-prod

De forma predeterminada, esto también elimina los recursos que creó la aplicación, así que puede tardar un minuto en terminar. Ejecuta argocd app list después para confirmar que ya no está.

Guías populares