mirror of
https://github.com/gwg313/homelab-gitops.git
synced 2026-06-06 00:41:01 +00:00
squash all
Mostly copied over from my old repo and modified for app of apps. Cleaning up the mess from migration Signed-off-by: gwg313 <gwg313@pm.me>
This commit is contained in:
parent
471f30f0b1
commit
52933116f0
104 changed files with 2532 additions and 44 deletions
|
|
@ -1,20 +1,17 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: istio
|
||||
name: audiobookshelf
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: main
|
||||
path: istio
|
||||
helm:
|
||||
valueFiles:
|
||||
- base-values.yaml
|
||||
path: audiobookshelf
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: istio-system
|
||||
namespace: audiobookshelf
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
20
apps/bytestash.yaml
Normal file
20
apps/bytestash.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: bytestash
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: main
|
||||
path: bytestash
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: bytestash
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
18
apps/cert-issuer.yaml
Normal file
18
apps/cert-issuer.yaml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: cert-issuer
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: main
|
||||
path: cluster-issuer
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: cert-manager
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
24
apps/cert-manager.yaml
Normal file
24
apps/cert-manager.yaml
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: cert-manager
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://charts.jetstack.io
|
||||
chart: cert-manager
|
||||
targetRevision: v1.15.0
|
||||
helm:
|
||||
releaseName: cert-manager
|
||||
values: |
|
||||
installCRDs: true
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: cert-manager
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
20
apps/forgejo.yaml
Normal file
20
apps/forgejo.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: forgejo
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: main
|
||||
path: forgejo
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: forgejo
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
20
apps/harbor-config.yaml
Normal file
20
apps/harbor-config.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: harbor-config
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: main
|
||||
path: harbor-config
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: harbor
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
51
apps/harbor.yaml
Normal file
51
apps/harbor.yaml
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: harbor
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: harbor
|
||||
source:
|
||||
repoURL: https://helm.goharbor.io
|
||||
chart: harbor
|
||||
targetRevision: 1.14.2
|
||||
helm:
|
||||
releaseName: harbor
|
||||
values: |
|
||||
externalURL: https://registry.gwg313.xyz
|
||||
expose:
|
||||
type: clusterIP
|
||||
tls:
|
||||
enabled: false
|
||||
certSource: secret
|
||||
secret:
|
||||
secretName: harbor-cert-nginx
|
||||
nginx:
|
||||
replicas: 0
|
||||
|
||||
persistence:
|
||||
persistentVolumeClaim:
|
||||
registry:
|
||||
existingClaim: harbor-registry
|
||||
jobservice:
|
||||
existingClaim: harbor-jobservice
|
||||
trivy:
|
||||
existingClaim: harbor-trivy
|
||||
database:
|
||||
existingClaim: harbor-database
|
||||
redis:
|
||||
existingClaim: harbor-redis
|
||||
core:
|
||||
existingClaim: harbor-core
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
22
apps/istio/istio-base.yaml
Normal file
22
apps/istio/istio-base.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: istio-base
|
||||
namespace: argocd
|
||||
annotations:
|
||||
argocd.argoproj.io/sync-wave: "0"
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://istio-release.storage.googleapis.com/charts
|
||||
chart: base
|
||||
targetRevision: 1.26.0
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: istio-system
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
26
apps/istio/istio-cni.yaml
Normal file
26
apps/istio/istio-cni.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: istio-cni
|
||||
namespace: argocd
|
||||
annotations:
|
||||
argocd.argoproj.io/sync-wave: "1"
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://istio-release.storage.googleapis.com/charts
|
||||
chart: cni
|
||||
targetRevision: 1.26.0
|
||||
helm:
|
||||
values: |
|
||||
cni:
|
||||
enabled: true
|
||||
chained: false
|
||||
logLevel: info
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: istio-system
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
50
apps/istio/istio-gateway.yaml
Normal file
50
apps/istio/istio-gateway.yaml
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: istio-gateway
|
||||
namespace: argocd
|
||||
annotations:
|
||||
argocd.argoproj.io/sync-wave: "2"
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://istio-release.storage.googleapis.com/charts
|
||||
chart: gateway
|
||||
targetRevision: 1.26.0
|
||||
helm:
|
||||
values: |
|
||||
replicaCount: 2
|
||||
|
||||
autoscaling:
|
||||
enabled: false
|
||||
|
||||
resources:
|
||||
requests:
|
||||
cpu: "500m"
|
||||
memory: "512Mi"
|
||||
limits:
|
||||
cpu: "1000m"
|
||||
memory: "1Gi"
|
||||
|
||||
podDisruptionBudget:
|
||||
enabled: true
|
||||
minAvailable: 1
|
||||
|
||||
proxy:
|
||||
logLevel: warning
|
||||
componentLogLevel: "misc:error,config:debug"
|
||||
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /healthz/ready
|
||||
port: 15021
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 5
|
||||
failureThreshold: 3
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: istio-system
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
43
apps/istio/istio-istiod.yaml
Normal file
43
apps/istio/istio-istiod.yaml
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: istio-istiod
|
||||
namespace: argocd
|
||||
annotations:
|
||||
argocd.argoproj.io/sync-wave: "1"
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://istio-release.storage.googleapis.com/charts
|
||||
chart: istiod
|
||||
targetRevision: 1.26.0
|
||||
helm:
|
||||
values: |
|
||||
global:
|
||||
istioCNI:
|
||||
enabled: true
|
||||
|
||||
sidecarInjectorWebhook:
|
||||
disableInitContainers: true
|
||||
|
||||
pilot:
|
||||
autoscaleEnabled: false
|
||||
replicaCount: 2
|
||||
resources:
|
||||
requests:
|
||||
cpu: "500m"
|
||||
memory: "512Mi"
|
||||
limits:
|
||||
cpu: "1000m"
|
||||
memory: "1Gi"
|
||||
|
||||
podDisruptionBudget:
|
||||
enabled: true
|
||||
minAvailable: 1
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: istio-system
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
9
apps/istio/istio-peer-auth.yaml
Normal file
9
apps/istio/istio-peer-auth.yaml
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
apiVersion: security.istio.io/v1beta1
|
||||
kind: PeerAuthentication
|
||||
metadata:
|
||||
annotations:
|
||||
name: default
|
||||
namespace: istio-system
|
||||
spec:
|
||||
mtls:
|
||||
mode: PERMISSIVE
|
||||
18
apps/metallb-config.yaml
Normal file
18
apps/metallb-config.yaml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: metallb-config
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
path: metallb/config
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: HEAD
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: metallb-system
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
22
apps/metallb.yaml
Normal file
22
apps/metallb.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: metallb
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://metallb.github.io/metallb
|
||||
chart: metallb
|
||||
targetRevision: 0.14.5
|
||||
helm:
|
||||
releaseName: metallb
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: metallb-system
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
20
apps/minio-config.yaml
Normal file
20
apps/minio-config.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: minio-config
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: main
|
||||
path: minio
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: minio
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
37
apps/minio.yaml
Normal file
37
apps/minio.yaml
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: minio
|
||||
namespace: argocd
|
||||
spec:
|
||||
destination:
|
||||
namespace: minio
|
||||
server: https://kubernetes.default.svc
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://charts.bitnami.com/bitnami
|
||||
chart: minio
|
||||
targetRevision: 17.0.9
|
||||
helm:
|
||||
releaseName: minio
|
||||
values: |
|
||||
auth:
|
||||
existingSecret: minio-auth
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
api: 9000
|
||||
console: 9001
|
||||
|
||||
persistence:
|
||||
existingClaim: minio-data
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
20
apps/navidrome.yaml
Normal file
20
apps/navidrome.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: navidrome
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: main
|
||||
path: navidrome
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: navidrome
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
33
apps/nfs-subdir.yaml
Normal file
33
apps/nfs-subdir.yaml
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: nfs-subdir-external-provisioner
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner
|
||||
chart: nfs-subdir-external-provisioner
|
||||
targetRevision: 4.0.18
|
||||
helm:
|
||||
releaseName: nfs-subdir-external-provisioner
|
||||
values: |
|
||||
nfs:
|
||||
server: truenas.local.gwg313.xyz
|
||||
path: /mnt/tank/k8s/nfs-subdir
|
||||
|
||||
storageClass:
|
||||
name: nfs-client
|
||||
defaultClass: true
|
||||
accessModes: ["ReadWriteMany"]
|
||||
reclaimPolicy: Delete
|
||||
archiveOnDelete: false
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: nfs-subdir-external-provisioner
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
24
apps/sealed-secrets.yaml
Normal file
24
apps/sealed-secrets.yaml
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: sealed-secrets
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://bitnami-labs.github.io/sealed-secrets
|
||||
chart: sealed-secrets
|
||||
targetRevision: 2.15.3
|
||||
helm:
|
||||
releaseName: sealed-secrets
|
||||
values: |
|
||||
fullnameOverride: sealed-secrets-controller
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: sealed-secrets
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
20
apps/woodpecker-manifests.yaml
Normal file
20
apps/woodpecker-manifests.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: woodpecker-manifests
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: HEAD
|
||||
path: woodpecker
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: woodpecker
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
23
apps/woodpecker.yaml
Normal file
23
apps/woodpecker.yaml
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: woodpecker
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://woodpecker-ci.org/
|
||||
chart: woodpecker
|
||||
targetRevision: 3.2.0
|
||||
helm:
|
||||
releaseName: woodpecker
|
||||
values: "server:\n env:\n WOODPECKER_HOST: \"https://ci.gwg313.xyz\"\n extraSecretNamesForEnvFrom:\n - woodpecker-server-secrets\n persistentVolume:\n enabled: true\n existingClaim: woodpecker-server-pvc5\n\nagent:\n enabled: true\n replicaCount: 1\n extraSecretNamesForEnvFrom:\n - woodpecker-agent-secrets\n env:\n WOODPECKER_SERVER: \"woodpecker-server:9000\"\n WOODPECKER_MAX_WORKFLOWS: \"5\"\n persistence:\n enabled: true\n existingClaim: woodpecker-agent-pvc5\n securityContext:\n privileged: true \n"
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: woodpecker
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
20
apps/yopass.yaml
Normal file
20
apps/yopass.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: yopass
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://github.com/gwg313/homelab-gitops
|
||||
targetRevision: main
|
||||
path: yopass
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: yopass
|
||||
syncPolicy:
|
||||
automated:
|
||||
selfHeal: true
|
||||
prune: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
Loading…
Add table
Add a link
Reference in a new issue