diff --git a/headlamp/argocd.yaml b/headlamp/argocd.yaml new file mode 100644 index 0000000..6abac24 --- /dev/null +++ b/headlamp/argocd.yaml @@ -0,0 +1,44 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: headlamp + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + sources: + - repoURL: https://headlamp-k8s.github.io/headlamp + chart: headlamp + targetRevision: 0.25.1 + helm: + valueFiles: + - $values/headlamp/helm-values.yaml + - repoURL: https://github.com/Mayne0213/applications.git + targetRevision: main + ref: values + - repoURL: https://github.com/Mayne0213/applications.git + targetRevision: main + path: headlamp + destination: + server: https://kubernetes.default.svc + namespace: headlamp + syncPolicy: + automated: + prune: true + selfHeal: true + allowEmpty: false + syncOptions: + - CreateNamespace=true + - PrunePropagationPolicy=foreground + - PruneLast=true + retry: + limit: 5 + backoff: + duration: 5s + factor: 2 + maxDuration: 3m + managedNamespaceMetadata: + labels: + goldilocks.fairwinds.com/enabled: 'true' + revisionHistoryLimit: 10 diff --git a/headlamp/helm-values.yaml b/headlamp/helm-values.yaml new file mode 100644 index 0000000..74525d1 --- /dev/null +++ b/headlamp/helm-values.yaml @@ -0,0 +1,40 @@ +# Headlamp Helm Values + +replicaCount: 1 + +image: + registry: ghcr.io + repository: headlamp-k8s/headlamp + tag: "" + pullPolicy: IfNotPresent + +serviceAccount: + create: true + name: headlamp + +clusterRoleBinding: + create: true + +service: + type: ClusterIP + port: 80 + +resources: + requests: + cpu: 10m + memory: 64Mi + limits: + memory: 128Mi + +# Ingress disabled - managed separately +ingress: + enabled: false + +# Config +config: + baseURL: "" + oidc: + clientID: "" + clientSecret: "" + issuerURL: "" + scopes: "" diff --git a/headlamp/ingress.yaml b/headlamp/ingress.yaml new file mode 100644 index 0000000..e052d71 --- /dev/null +++ b/headlamp/ingress.yaml @@ -0,0 +1,24 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: headlamp-ingress + namespace: headlamp + annotations: + cert-manager.io/cluster-issuer: "letsencrypt-prod" +spec: + ingressClassName: traefik + tls: + - hosts: + - kubernetes0213.kro.kr + secretName: headlamp-tls + rules: + - host: kubernetes0213.kro.kr + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: headlamp + port: + number: 80 diff --git a/headlamp/kustomization.yaml b/headlamp/kustomization.yaml new file mode 100644 index 0000000..bd43e8a --- /dev/null +++ b/headlamp/kustomization.yaml @@ -0,0 +1,4 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: +- ingress.yaml