argocd
ArgoCD is a declarative continuous delivery tool for Kubernetes. It is implemented as a command-line interface (CLI) tool that allows developers to manage the lifecycle of their applications and configurations in a GitOps manner. It follows the principles of GitOps, where the desired state of the application and its configurations are defined in Git repositories.
With ArgoCD, applications can be deployed, configured, and managed from a central Git repository. It continuously monitors the repository and ensures that the applications running in a Kubernetes cluster are always in sync with the desired state defined in the Git repository.
Some key features of ArgoCD include:
-
Automated Deployments: ArgoCD automatically deploys and updates applications based on the Git repository's desired state, reducing manual intervention and improving deployment reliability.
-
Application Rollbacks: It provides an easy way to roll back applications to previous versions in case of issues or failures.
-
Automated Sync: It continuously monitors the Git repository for changes to applications and configurations and automatically syncs the cluster with the updated changes.
-
Pre- and Post-Sync Hooks: ArgoCD allows you to define pre-sync and post-sync hooks to perform custom actions before and after syncing applications, enabling flexible customization.
-
Multi-Cluster Management: It supports managing applications across multiple Kubernetes clusters, providing a centralized management interface.
-
Continuous Deployment (CD): ArgoCD integrates with other CI/CD tools to enable continuous deployment pipelines, bringing a fully automated end-to-end deployment workflow.
Overall, ArgoCD simplifies the management and deployment of applications in Kubernetes clusters by leveraging GitOps principles. Its CLI tool provides a powerful interface to interact with the system and efficiently manage continuous delivery.
List of commands for argocd:
-
argocd-app:tldr:29d14 argocd-app: Deploy application internally (to the same cluster that Argo CD is running in).$ argocd app create ${app_name} --repo ${git_repo_url} --path ${path-to-repo} --dest-server https://kubernetes.default.svc --dest-namespace ${ns}try on your machineexplain this command
-
argocd-app:tldr:4137f argocd-app: Preview app synchronization without affecting cluster.$ argocd app sync ${app_name} --dry-run --prunetry on your machineexplain this command
-
argocd-app:tldr:46239 argocd-app: Delete an application.$ argocd app delete ${app_name}try on your machineexplain this command
-
argocd-app:tldr:6c1da argocd-app: Get application details.$ argocd app get ${app_name} --output ${select}try on your machineexplain this command
-
argocd-app:tldr:aa50a argocd-app: Enable application auto-sync.$ argocd app set ${app_name} --sync-policy auto --auto-prune --self-healtry on your machineexplain this command
-
argocd-app:tldr:bf80c argocd-app: Show application deployment history.$ argocd app history ${app_name} --output ${select}try on your machineexplain this command
-
argocd-app:tldr:c1b98 argocd-app: Rollback application to a previous deployed version by history ID (deleting unexpected resources).$ argocd app rollback ${app_name} ${history_id} --prunetry on your machineexplain this command
-
argocd-app:tldr:c2b37 argocd-app: List applications.$ argocd app list --output ${select}try on your machineexplain this command
-
argocd:tldr:11583 argocd: List applications.$ argocd app listtry on your machineexplain this command
-
argocd:tldr:7b886 argocd: Login to Argo CD server.$ argocd login --insecure --username ${user} --password ${password} ${argocd_server:port}try on your machineexplain this command