Argo CD

How can you use Kubiya to trigger Argo CD jobs, deploy images to environments and notify on specific deployment jobs
What is Argo CD
Argo CD is an open-source GitOps continuous delivery tool. It monitors your cluster and your declaratively-defined infrastructure stored in a Git repository and resolves differences between the two — effectively automating an application deployment.
Argo makes application deployment and lifecycle management easier, particularly as the line between developers and operators disappears, because it automates deployment, makes rollbacks easier and is auditable for easier troubleshooting.
Things you can do using Kubiya
  • Deploy images including specifying image tags ,environment(prod), deploy style(e.g B/G or Canary)
  • Restart applications
  • Check on the status of a specific deployment job
  • Update on the status of a given deployment
  • Define rollout configurations
How to Integrate Argo CD into Kubiya
  1. 1.
    Deploy the Argo CD action store and define the environment variables for the Argo CD username and instance URL: ARGO_USER and ARGO_SERVER.
  2. 2.
    Create a secret named "ARGO_PASS" with the password for your Argo CD account.
  3. 3.
    Test the integration by using Kubiya's commands or conversational prompts to deploy images, restart applications, check deployment status, and define rollout configurations.
By following these steps, you can seamlessly integrate Argo CD with Kubiya and manage deployments and the application lifecycle conveniently.
Action store reference
Reach out to your Kubiya engineer for a complete list of actions.
Sample actions
restart_service(params: dict)
This function is used to restart a service/application in Argo CD. It makes an API call to the Argo CD endpoint for synchronizing the application. The function takes parameters for the application name, prune option, dry run option, and resources to be synced. It returns a success message if the request is successful, otherwise an error message.
Parameters:
params (dict): A dictionary containing the following keys:
'application_name' (required): The name of the application to be restarted.
'prune' (optional): Boolean indicating whether to remove resources not defined in the application manifests. Default is False.
'dry_run' (optional): Boolean indicating whether to perform a dry run of the synchronization. Default is False.
'resources' (optional): A list of specific resources to sync. Default is an empty list.
delete_app(params: dict)
This function is used to delete an application in Argo CD. It makes an API call to the Argo CD endpoint for deleting the specified application. The function takes the application name as a parameter and returns the response text.
Parameters:
params (dict): A dictionary containing the following key:
'app_name' (required): The name of the application to be deleted.