argoproj / argo-cd

Declarative Continuous Deployment for Kubernetes
https://argo-cd.readthedocs.io
Apache License 2.0
18.01k stars 5.49k forks source link

The default install does not contain the default triggers and templates for notifications #9612

Open tete17 opened 2 years ago

tete17 commented 2 years ago

Summary

I am using kustomize as my deploy tool. I was trying to install the default set of triggers and templates argocd-notifications provides. The config looks something like this:

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

namespace: argocd

resources:
  - https://raw.githubusercontent.com/argoproj/argo-cd/v2.3.4/manifests/install.yaml
  - https://raw.githubusercontent.com/argoproj/argo-cd/v2.3.4/notifications_catalog/install.yaml
  - namespace.yaml

When I do this I get an error because the default k8s manifests defines the empty configmap argocd-notifications-cm, and the catalog defines it again.

Motivation

This is forcing me to add patch to remove the configmap

patchesStrategicMerge:
  - |-
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: argocd-notifications-cm
    $patch: delete

And add a almost empty new kustomize bas that all it does it pull the old one and add the notifications catalog. It is a workaround but a complicated an unnecessary one

Proposal

I know the merge of both repos is still fresh but why don't we move the default catalog into the base installation for argocd. I think the install package should come with "batteries included" if you know what I meant :wink:

james-callahan commented 1 year ago

I ran into this same issue today. Would be great to see the notifications catalogue even just as an optional kustomize component in the repo.