mirror of
https://github.com/nofusscomputing/kubernetes.git
synced 2025-08-02 04:22:42 +00:00
Merge pull request #14 from nofusscomputing/feat-cert-manager
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,2 +1,6 @@
|
||||
# Build Directories
|
||||
manifests/*/base/charts/
|
||||
manifests/*/overlays/*/charts/
|
||||
|
||||
# Temp Files
|
||||
*.tmp.*
|
||||
|
17
manifests/cert-manager/base/kustomization.yaml
Normal file
17
manifests/cert-manager/base/kustomization.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
|
||||
namespace: certs
|
||||
|
||||
|
||||
helmCharts:
|
||||
- name: cert-manager
|
||||
repo: https://charts.jetstack.io
|
||||
releaseName: cert-manager
|
||||
namespace: certs
|
||||
version: 'v1.16.2'
|
||||
additionalValuesFiles:
|
||||
- values-custom.yaml
|
||||
valuesFile: values-default.yaml
|
15
manifests/cert-manager/base/values-custom.yaml
Normal file
15
manifests/cert-manager/base/values-custom.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
|
||||
crds:
|
||||
enabled: true
|
||||
affinity:
|
||||
nodeAffinity: {}
|
||||
podAntiAffinity:
|
||||
preferredDuringSchedulingIgnoredDuringExecution:
|
||||
- weight: 100
|
||||
podAffinityTerm:
|
||||
labelSelector:
|
||||
matchExpressions:
|
||||
- key: kubernetes.io/hostname
|
||||
operator: Exists
|
||||
topologyKey: kubernetes.io/hostname
|
1460
manifests/cert-manager/base/values-default.yaml
Normal file
1460
manifests/cert-manager/base/values-default.yaml
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,16 @@
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: cluster-ca
|
||||
spec:
|
||||
isCA: true
|
||||
commonName: cluster.local
|
||||
secretName: cluster-ca-cert
|
||||
privateKey:
|
||||
algorithm: ECDSA
|
||||
size: 256
|
||||
issuerRef:
|
||||
name: selfsigned
|
||||
kind: Issuer
|
||||
group: cert-manager.io
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: ClusterIssuer
|
||||
metadata:
|
||||
name: cluster
|
||||
spec:
|
||||
ca:
|
||||
secretName: cluster-ca-cert
|
@ -0,0 +1,7 @@
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Issuer
|
||||
metadata:
|
||||
name: selfsigned
|
||||
spec:
|
||||
selfSigned: {}
|
@ -0,0 +1,25 @@
|
||||
---
|
||||
|
||||
apiVersion: kustomize.config.k8s.io/v1alpha1
|
||||
kind: Component
|
||||
|
||||
|
||||
resources:
|
||||
- Certificate-cluster-ca.yaml
|
||||
- ClusterIssuer-cluster.yaml
|
||||
- ClusterIssuer-selfsigned.yaml
|
||||
|
||||
|
||||
# patches:
|
||||
# #
|
||||
# # Set in Overlay kustomization.yaml
|
||||
# #
|
||||
# - target:
|
||||
# kind: ClusterIssuer
|
||||
# name: letsencrypt-prod
|
||||
# # yamllint disable rule:indentation
|
||||
# patch: |-
|
||||
# - op: replace
|
||||
# path: /spec/commonName
|
||||
# value: -kubernetes domain name-
|
||||
# # yamllint enable rule:indentation
|
@ -0,0 +1,15 @@
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: ClusterIssuer
|
||||
metadata:
|
||||
name: letsencrypt-prod
|
||||
spec:
|
||||
acme:
|
||||
server: https://acme-v02.api.letsencrypt.org/directory
|
||||
email: -set within kustomize using patch.replace-
|
||||
privateKeySecretRef:
|
||||
name: letsencrypt-prod
|
||||
solvers:
|
||||
- http01:
|
||||
ingress:
|
||||
ingressClassName: nginx
|
@ -0,0 +1,22 @@
|
||||
---
|
||||
|
||||
apiVersion: kustomize.config.k8s.io/v1alpha1
|
||||
kind: Component
|
||||
|
||||
resources:
|
||||
- ClusterIssuer-letsencrypt.yaml
|
||||
|
||||
|
||||
# patches:
|
||||
# #
|
||||
# # Set in Overlay kustomization.yaml
|
||||
# #
|
||||
# - target:
|
||||
# kind: ClusterIssuer
|
||||
# name: letsencrypt-prod
|
||||
# # yamllint disable rule:indentation
|
||||
# patch: |-
|
||||
# - op: replace
|
||||
# path: /spec/acme/email
|
||||
# value: -My email-
|
||||
# # yamllint enable rule:indentation
|
@ -0,0 +1,15 @@
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: ClusterIssuer
|
||||
metadata:
|
||||
name: letsencrypt-staging
|
||||
spec:
|
||||
acme:
|
||||
server: https://acme-staging-v02.api.letsencrypt.org/directory
|
||||
email: -set within kustomize using patch.replace-
|
||||
privateKeySecretRef:
|
||||
name: letsencrypt-staging
|
||||
solvers:
|
||||
- http01:
|
||||
ingress:
|
||||
ingressClassName: nginx
|
@ -0,0 +1,22 @@
|
||||
---
|
||||
|
||||
apiVersion: kustomize.config.k8s.io/v1alpha1
|
||||
kind: Component
|
||||
|
||||
resources:
|
||||
- ClusterIssuer-letsencrypt.yaml
|
||||
|
||||
|
||||
# patches:
|
||||
# #
|
||||
# # Set in Overlay kustomization.yaml
|
||||
# #
|
||||
# - target:
|
||||
# kind: ClusterIssuer
|
||||
# name: letsencrypt-prod
|
||||
# # yamllint disable rule:indentation
|
||||
# patch: |-
|
||||
# - op: replace
|
||||
# path: /spec/acme/email
|
||||
# value: -My email-
|
||||
# # yamllint enable rule:indentation
|
@ -0,0 +1,66 @@
|
||||
---
|
||||
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
|
||||
namespace: certs
|
||||
|
||||
|
||||
patches:
|
||||
- target:
|
||||
kind: ClusterIssuer
|
||||
name: letsencrypt-prod
|
||||
# yamllint disable rule:indentation
|
||||
patch: |-
|
||||
- op: replace
|
||||
path: /spec/commonName
|
||||
value: -kubernetes domain name-
|
||||
# yamllint enable rule:indentation
|
||||
|
||||
- target:
|
||||
kind: ClusterIssuer
|
||||
name: letsencrypt-prod
|
||||
# yamllint disable rule:indentation
|
||||
patch: |-
|
||||
- op: replace
|
||||
path: /spec/acme/email
|
||||
value: -My email-
|
||||
# yamllint enable rule:indentation
|
||||
|
||||
- target:
|
||||
kind: ClusterIssuer
|
||||
name: letsencrypt-prod
|
||||
# yamllint disable rule:indentation
|
||||
patch: |-
|
||||
- op: replace
|
||||
path: /spec/acme/email
|
||||
value: -My email-
|
||||
# yamllint enable rule:indentation
|
||||
|
||||
- target:
|
||||
kind: CustomResourceDefinition
|
||||
# yamllint disable rule:indentation
|
||||
patch: |-
|
||||
- op: replace
|
||||
path: /metadata/annotations/argocd.argoproj.io~1sync-options
|
||||
value: ServerSideApply=true
|
||||
# yamllint enable rule:indentation
|
||||
|
||||
|
||||
helmCharts:
|
||||
- name: cert-manager
|
||||
repo: https://charts.jetstack.io
|
||||
releaseName: cert-manager
|
||||
namespace: certs
|
||||
version: 'v1.16.2'
|
||||
additionalValuesFiles:
|
||||
- ../../base/values-custom.yaml
|
||||
- values-production.yaml
|
||||
valuesFile: ../../base/values-default.yaml
|
||||
|
||||
|
||||
components:
|
||||
- ../../components/clusterissuer-cluster
|
||||
- ../../components/clusterissuer-letsencrypt-prod
|
||||
- ../../components/clusterissuer-letsencrypt-staging
|
@ -0,0 +1,11 @@
|
||||
---
|
||||
|
||||
global:
|
||||
leaderElection:
|
||||
namespace: certs
|
||||
prometheus:
|
||||
enabled: true
|
||||
servicemonitor:
|
||||
enabled: true
|
||||
webhook:
|
||||
replicaCount: 1
|
Reference in New Issue
Block a user