From af7610d94be610d44e837c095e6fd335b03792d6 Mon Sep 17 00:00:00 2001 From: James Mellors Date: Thu, 3 Apr 2025 17:51:19 +0100 Subject: [PATCH] inital setup --- argo-apps/cert-manager.yaml | 54 +++++++++++++++++++++++++++++++++++++ argo-apps/values.yaml | 51 +++++++++++++++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 argo-apps/cert-manager.yaml create mode 100644 argo-apps/values.yaml diff --git a/argo-apps/cert-manager.yaml b/argo-apps/cert-manager.yaml new file mode 100644 index 0000000..094eb45 --- /dev/null +++ b/argo-apps/cert-manager.yaml @@ -0,0 +1,54 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + # Name of the Argo CD Application resource itself + name: cert-manager + # Namespace where Argo CD is running + namespace: argocd + # Optional: Add finalizer to ensure related resources are deleted before the app + # finalizers: + # - resources-finalizer.argocd.argoproj.io +spec: + # Reference to the Argo CD Project (use 'default' if you haven't set up custom projects) + project: default + + # Source of the manifests (Helm chart) + source: + # URL of the Helm repository + repoURL: https://charts.jetstack.io + # Name of the chart in the repository + chart: cert-manager + # Specify a specific, stable version of the chart! (e.g., v1.14.4) + targetRevision: v1.14.4 # <-- UPDATE TO YOUR DESIRED STABLE VERSION + + # Helm-specific configuration + helm: + # Reference your custom values file(s) + # Paths are relative to the root of the Git repository defined in the Application source + # (or the repo where this Application manifest itself lives if managed via GitOps) + valueFiles: + - values.yaml # <-- PATH TO YOUR VALUES FILE IN GIT + + # Destination cluster and namespace + destination: + # URL of the target cluster (use this for the cluster where Argo CD runs) + server: https://kubernetes.default.svc + # Namespace where cert-manager components should be installed *on the target cluster* + namespace: cert-manager + + # Sync policy + syncPolicy: + # Enable automated synchronization + automated: + # Delete resources that are no longer defined in the source (Helm chart + values) + prune: true + # Automatically sync when the application is found to be OutOfSync + selfHeal: true + + # Sync options + syncOptions: + # Instruct Argo CD to create the destination namespace ('cert-manager') if it doesn't exist. + - CreateNamespace=true + # Optional: Sometimes helps prevent race conditions with CRDs + # - RespectIgnoreDifferences=true + # - ApplyOutOfSyncOnly=true \ No newline at end of file diff --git a/argo-apps/values.yaml b/argo-apps/values.yaml new file mode 100644 index 0000000..136b43c --- /dev/null +++ b/argo-apps/values.yaml @@ -0,0 +1,51 @@ +# This is your custom values.yaml file for cert-manager +# It will override the defaults in the official Helm chart. + +# Explicitly disable Helm hook-based CRD installation (Recommended for Argo CD) +installCRDs: true +crds: + enabled: true +# --- Add any other custom Helm values below --- + +# Example: If you run Prometheus Operator and want ServiceMonitors: +prometheus: + enabled: true + servicemonitor: + enabled: true + # namespace: monitoring # Optional: specify namespace if different + +# Example: Adjust resources if needed +# replicaCount: 1 +# global: +# logLevel: 2 # Increase log verbosity (1=info, 2=debug) +# webhook: +# resources: +# requests: +# cpu: 15m +# memory: 40Mi +# cainjector: +# resources: +# requests: +# cpu: 15m +# memory: 40Mi + +# Example: Use a different image registry if needed +# image: +# repository: quay.io/jetstack/cert-manager-controller +# tag: "" # Let the chart decide the tag based on targetRevision +# pullPolicy: IfNotPresent +# webhook: +# image: +# repository: quay.io/jetstack/cert-manager-webhook +# tag: "" +# pullPolicy: IfNotPresent +# cainjector: +# image: +# repository: quay.io/jetstack/cert-manager-cainjector +# tag: "" +# pullPolicy: IfNotPresent +# startupapicheck: +# image: +# repository: quay.io/jetstack/cert-manager-ctl +# tag: "" +# pullPolicy: IfNotPresent \ No newline at end of file