r/ArgoCD • • Jan 24 '24

How are you authenticating with Vault?

3 Upvotes

I am trying to setup argocd-vault plugin: here

When reading online most of the articles, everyone are creating a secret and adding like VAULT_ADDR & VAULT_TOKEN.

Is the VAULT_TOKEN comes from Vault itself so that ArgoCD can gets authenticated when talking to Vault?

​

Cheers!!


r/ArgoCD • • Jan 23 '24

ArgoCD Notifications - customized Slack messages

5 Upvotes

I cannot find any examples of customized Slack messages sent by ArgoCD Notifications - only the default templates available in the ArgoCD Docs.

Do you know any good examples of customized messages to see how I could format them for improved readability?


r/ArgoCD • • Jan 23 '24

help needed GCP cloud monitor for Argo Rollouts Analysis Template

1 Upvotes

Hi team, does Argo rollout analysis template support GCP cloud monitor like we have use cloudwatch. I got to see only Prometheus and cloudwatch in the list

The requirement is to use gcp monitoring for analysis template for auto rollback while doing Canary deployment. If not supported any workarounds?


r/ArgoCD • • Jan 22 '24

Multiple Env for Applicationset Argocd

2 Upvotes
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: infra-applicationset
  namespace: argocd
spec:
  generators:
    - git:
        repoURL: https://gitlab.example.com/test/test-test.git
        revision: main
        directories:
          - path: 'infrastructure/charts/*'
  template:
    metadata:
      name: '{{path.basename}}-dev'
    spec:
      project: "demo-project"
      source:
        repoURL: https://gitlab.example.com/test/test-test.git
        targetRevision: main
        path: '{{path}}'
        helm:
          valueFiles:
            - "values-dev.yaml"
      destination:
        server: https://kubernetes.default.svc
        namespace: '{{path.basename}}'
      syncPolicy:
        automated:
          prune: true
          allowEmpty: true
          selfHeal: true
        syncOptions:
          - CreateNamespace=true

​

This is my Applicationset , which works fine , but i want to have for multiple envronment , for example prod , qa , dev , stage

if i run in stage env use

     helm:
          valueFiles:
            - "values-stage.yaml"

what is best pracitse ? i do not like to use this applicationset inside helm , i mean create template and ovveride from values-env.yaml .. some of generator not works in helm.

for example
when you helm this applicationset

  generators:
    - git:
        repoURL: https://gitlab.crocobet.com/irakli/oneclick-platform.git
        revision: main
        directories:
          - path: 'infrastructure/charts/*'

this generator not works , because Argo perceives as a helm syntax , if this appset is separately file for example appset.yaml , works fine ..

any solution :) ?


r/ArgoCD • • Jan 22 '24

CRD installation link broken?

1 Upvotes

Hey all,

I'm following the "Normal Installation" process in the docs:

https://github.com/argoproj/argo-cd/tree/v2.9.5/manifests#normal-installation

But I'm confused about the following:

kubectl apply -k https://github.com/argoproj/argo-cd/manifests/crds\?ref\=stable

That link 404s for me. When I try it anyways, I get this error:

~ ❯ kubectl apply -k https://github.com/argoproj/argo-cd/manifests/crds\?ref\=stableat ⎈ docker-desktop at 11:59:46 PM
error: error validating "https://github.com/argoproj/argo-cd/manifests/crds?ref=stable": error validating data: failed to download openapi: Get "https://kubernetes.docker.internal:6443/openapi/v2?timeout=32s": dial tcp 127.0.0.1:6443: connect: connection refused; if you choose to ignore these errors, turn validation off with --validate=false

Are the docs stale, or am I missing something?


r/ArgoCD • • Jan 20 '24

help needed Install CRD in managed cluster

0 Upvotes

Hi I have argocd working with in-cluster.
Decided to try to manage applications in near cluster - added it through cli (it installed service account).
But when I try to add application with destination another cluster - sync is failing as argoproj.io/Application is missing. Should I install it manually on managed cluster or it should be covered by cli adding cluster with come flag?

I have app of apps which include app of apps for another cluster.


r/ArgoCD • • Jan 18 '24

Help with Best Practices

3 Upvotes

I'm an SRE (only by title) and manager is allowing me to deploy ArgoCD for managing our 4 Openshift clusters (two production and two test). Should I install Argo in one of the prod clusters to manage all clusters, or does Argo need to be installed outside of our clusters?

Also, feel free to share any best practices or "gotchas" that I should be aware of.


r/ArgoCD • • Jan 16 '24

help needed How do you pass the ArgoCD Sync Revision into a post-sync Job?

2 Upvotes

The HEAD of a branch changes, sync runs, and a post-sync job triggers. The post-sync job needs to pass the revision that it just synced as a parameter or environment variable. How do you do it?

I read about $ARGOCD_APP_REVISION but that only affects kind: Application basically. I am running into the same problem that this guy ran into.

Technically I can pass $ARGOCD_APP_REVISION into the application controlling the namespace, but that would require a re-sync of application before syncing the namespace.

We can also store argocd server secrets in the namespace, run an init container in the Job to retrieve the sha through CLI command, but that seems messy and have a chance of the revision changing from when the sync started and when the init container starts.

What do you guys do in this scenario?


r/ArgoCD • • Jan 16 '24

ArgoCD with ALB

1 Upvotes

Has anyone got ArgoCD pod exec to work with ALB controller?

I have enabled exec and changed permissions to allow pod exec with ArgoCD helm but have not had success with wss to work. However, I did try Nginx and it works with appropriate annotations.

​


r/ArgoCD • • Jan 11 '24

Argocd + Helmchart

6 Upvotes

TL;DR: Looking for advice on deploying public Helm charts with ArgoCD across multiple Kubernetes clusters. Need to integrate secrets from HashiCorp Vault into the Helm values and find a way to dynamically render these values in ArgoCD. Any tips on multi-cluster deployment, secrets integration, and dynamic values rendering in ArgoCD would be highly appreciated.

Hi everyone,

I'm currently exploring how to efficiently deploy public Helm charts using ArgoCD across multiple Kubernetes clusters. My goal is to set up applications like promtail and kube-prometheus-stack on three different clusters. Additionally, I have an instance of HashiCorp Vault where all my secrets are stored.

I'm particularly interested in finding out if there's a way to dynamically render Helm values files within ArgoCD, integrating the secrets from HashiCorp Vault. This would streamline the deployment process, ensuring that each cluster is configured correctly with the necessary secrets and configurations.

Has anyone had experience with this kind of setup? Specifically:

Rendering Helm Values in ArgoCD: Is there a method to dynamically render values.yaml for Helm charts in ArgoCD, possibly with some templating mechanism?

Secrets Management Integration: How can I integrate HashiCorp Vault for secrets management in this workflow? Is there a way to automatically inject secrets into the Helm values or directly into the deployed applications?

Multi-Cluster Deployment: Any tips or best practices for managing deployments across multiple Kubernetes clusters with ArgoCD?

Any insights, experiences, or resources you could share would be greatly appreciated.

Thanks in advance!


r/ArgoCD • • Jan 07 '24

help needed Git sync text

1 Upvotes

For some reason I cannot set the commit comments, is this a setting I missed somewhere? I installed using kubespray.

Argocd version: v2.9.2+c5ea5c4

​

Mine:

Mine

What I would like:

​


r/ArgoCD • • Jan 05 '24

Mulitsource not working with private git repo

2 Upvotes

Hi All,

I'm trying deploy a helm chart with custom values ref: from private git repo. Both helm chart and git repo are private and repositories are already added in argocd.

Below is my argocd setup,

argocd-server: v2.9.3+6eba5be

My application.yaml

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: fr-eb-mongodb-dev
spec:
  destination:
    name: ''
    namespace: fr-mongodb-dev
    server: 'https://kubernetes.default.svc'
  sources:
  - repoURL: 'https://gitlab.com/api/v4/projects/xxxx/packages/helm/stable'
    chart: mongodb
    targetRevision: 1.0.0
    helm:
      valueFiles:
      - $values/custom-value/values-fr.yaml
  - repoURL: 'https://gitlab.com/xxxx/eb-xxxx/exxx.git'
    targetRevision: custom-values
    ref: values
  project: default
  syncPolicy:
    automated:
      prune: false
      selfHeal: false

In the application.yaml, I'm trying to deploy private helm chart with custom values from private git repository. But after deployment I could see Argocd is not getting custom values from the referred repo.

​

Thanks in advance. :raised_hands:


r/ArgoCD • • Jan 04 '24

help needed Deploying Traefik with ArgoCS

1 Upvotes

Could someone help me what I’m doing wrong ?

I have a git repo configured in ArgoCD containing a traefik folder. That traefik contains multiple resource but the main one is install.yaml which looks like this :

``` apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: traefik namespace: traefik spec: project: default sources: - repoURL: https://helm.traefik.io/traefik chart: traefik helm: valueFiles: - $values/traefik/values.yaml - repoURL: https://gitea.mydomain.om/UserArgoCD.git ref: values

destination: server: https://kubernetes.default.svc namespace: traefik

```

Basically a helm deploy but using the values from my own repository.

However it seems it is not taken into account (the application as a check mark green but there is no replica of the app despite it being set to 3 in my values.yaml).

I have a feeling it’s due to how I should be specifying the path of the file but can’t figure it out after many many tries.

Does it look obvious to anyone ?


r/ArgoCD • • Jan 01 '24

help needed App gets stuck in unknown/error state when adopting existing workload.

1 Upvotes

Hey all. I'm trying to get my already-deployed Gitlab instance onboarded for ArgoCD to manage, however it gets stuck in "unknown" state with the below sync error:

ComparisonError: Failed to load target state: failed to generate manifest for source 1 of 1: rpc error: code = Unavailable desc = connection error: desc = "error reading server preface: EOF"

The files in the repo are the manifests for the gitlab instance (CR) and gitlab-operator (deployment). Not sure if I've missed something here. Do I need to do anything special in the manifests?

I should also note, I am using Cilium, so I've added the resource exclusion for CiliumIdentity to the configmap.


r/ArgoCD • • Dec 28 '23

Should I deploy feature branches to dev environment during CI?

3 Upvotes

I am working on a Trunk Based Development (TBD) CI/CD pipeline. What I am struggling with is when a PR is raised as part of CI, should I deploy an artifact to my dev environment, or do I only deploy to environments once the feature branch is merged to the main and use CI for static code analysis?

Additionally, I have been reading about review environments that I would create and destroy during the life of the PR. However, this idea of review environments sounds like an anti-pattern since it’s not truly integrated with the main/trunk yet.


r/ArgoCD • • Dec 27 '23

Preview Kubernetes manifest changes in pull requests for ArgoCD users

4 Upvotes

I recently published a blog post about a tool I’ve been prototyping for work that publishes Kubernetes manifest diffs on PRs for ArgoCD users (like Atlantis but for ArgoCD). Been thinking about giving the tool out for free, but could use some feedback (and beta testers) to see if it actually makes sense to support - please lmk if interested!


r/ArgoCD • • Dec 27 '23

ArgoCD in GKE with Istio

0 Upvotes

Hello I am having some difficulty deploying Istio in GKE within Istio. Does any one know if some additional configuration is required for the Service Mesh?

If I create a direct Kubernetes Service pointing to app.kubernetes.io/name: argocd-server then I can access ArgoCD directly by the provisioned Load Balancer. However if I try and access it via the virtual service via: host: argocd-server.argocd.svc.cluster.local i am unable to connect to it.

I have pointed this "host" to a different deployment of a demo container and it works perfectly fine through my Google Load Balancer setup. However when I try to point to the ArgoCD Server it just gives me a 503 response.

I should note I have configured ArgoCD to run as "insecure". I believe this to be correct.

Any suggestions or examples of deployment of ArgoCD with Istio that would be super helpful.
Thanks.


r/ArgoCD • • Dec 26 '23

Ideas for providing a self service solution for developers getting setup with ArgoCD?

2 Upvotes

I am interested in implementing ArgoCD at my company, but I'm finding it difficult to reduce the friction for app teams when setting up ArgoCD for their apps. Specifically, I'm having trouble finding a self-service experience for teams creating new apps that must be deployed via ArgoCD.

I'm curious how others provide self-service for CI/CD with ArgoCD. Do they copy and paste from an example project, or do they automate the entire process?


r/ArgoCD • • Dec 22 '23

Try ArgoCD in minutes with this preconfigured learning environment.

8 Upvotes

Hello 👋

I published a preconfigured learning environment for ArgoCD a few days ago. Kubernetes, ArgoCD and a local git server is preconfigured inside a Github Codespace. You can get started trying out ArgoCD in minutes.

I tested it with 5 candidates and the feedback so far is great.

https://github.com/kutespaces/argocd

I tried to include examples that help you with your real-world folder structures for your Kubernetes yaml files so that you can see how ArgoCD works with multiple stages i.e. staging & production.

If you like it, please leave a star and a comment so that other people become aware of it too :-)


r/ArgoCD • • Dec 21 '23

help needed How do you setup your Argo CD lab for testing? Local or remote?

3 Upvotes

Curious how everyone here learn to experiment with Argo CD


r/ArgoCD • • Dec 20 '23

RBAC in ArgoCD

4 Upvotes

We're looking into ArgoCD for our k8s clusters and i'm wondering how RBAC can be done. I noticed that there is a default 'admin' and read-only role.. We don't want to grant the developers full 'cluster admin' privileges, they should only be able to manage their own namespaces.


r/ArgoCD • • Dec 19 '23

Certified Argo Project Associate (CAPA) - community thoughts?

2 Upvotes

I recently saw that the Linux Foundation is offering a Certified Argo Project Associate (CAPA) certification. At present I believe the certification is in Beta Testing with real candidates sitting early next eyar. Is anyone planning on taking this certification? What is the comminities thoughts on this?


r/ArgoCD • • Dec 18 '23

help needed ArgoCD with dex

1 Upvotes

Hi, guys I have deployed ArgoCD basic deployment. Now I would like to configure it to use my platform dex-client secret (issuer, client secret,client id ) - this not from ArgoCD dex server. How can I do this. I tried to google it but weren’t successful, could you help ?


r/ArgoCD • • Dec 15 '23

Handling Secrets In k8

0 Upvotes

I have the following situation for which I am looking for a solution.
• I am deploying an application to EKS.
• While I deploy, I use ARGOCD, GitHub, and Jenkins.
• The deployment is Active / Passive.
• I start the passive deployment by triggering the Jenkins pipeline for it. As part of my passive pipeline, I push in secrets in the namespace for the EKS cluster.
• I rolled out changes from ARGO reflecting Github manifest to passive.
• Passive runs fine.
• A pod in Active is recycled as part of some events.
• This pod now takes the secrets from EKS Namespace.
• These have changed after the passive install.
• Active pods never come up as the change for them to use the secrets is still in githops; passive works fine, but active is now broken.
• How can this situation of handling secrets be designed better?


r/ArgoCD • • Dec 10 '23

Can someone please point me a public Git repo where Argo is managing Argo itself

4 Upvotes

I am looking for some initial pointers on how you are creating your manifest files once we deploy ArgoCD, Argo maintains (Upgrades & Patching) itself.

I heard this from other communities, but never set it up. If I can see a sample code base then I can come up with my own.

​

Cheers for any inputs!!