Compare commits
2
Commits
39f8a78306
...
17c84d2ba8
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
17c84d2ba8 | ||
|
|
7403edf7d5 |
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: authentik
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: azure-ddns
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: bentopdf
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: excalidraw
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: gotify
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: immich
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: it-tools
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: jellyfin
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: minio-aistor
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: netbootxyz
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: outline
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: passbolt
|
||||
@@ -39,7 +39,7 @@ spec:
|
||||
- name: Permissions-Policy
|
||||
value: "camera=(), microphone=(), geolocation=(), payment=()"
|
||||
- name: Content-Security-Policy
|
||||
value: "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://cdnjs.cloudflare.com; style-src 'self' 'unsafe-inline' https://cdnjs.cloudflare.com; img-src 'self' data: blob: https://gravatar.com https://www.gravatar.com; font-src 'self' data: https://cdnjs.cloudflare.com; connect-src 'self' https://wings.jsme.be wss://wings.jsme.be ws: wss:; worker-src blob:; frame-ancestors 'self'"
|
||||
value: "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://cdnjs.cloudflare.com; style-src 'self' 'unsafe-inline' https://cdnjs.cloudflare.com; img-src 'self' data: blob: https://gravatar.com https://www.gravatar.com; font-src 'self' data: https://cdnjs.cloudflare.com; connect-src 'self' https://wings-mc.jsme.be wss://wings-mc.jsme.be https://wings-ark.jsme.be wss://wings-ark.jsme.be ws: wss:; worker-src blob:; frame-ancestors 'self'"
|
||||
backendRefs:
|
||||
- name: pelican
|
||||
port: 80
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: pelican
|
||||
@@ -0,0 +1,20 @@
|
||||
apiVersion: discovery.k8s.io/v1
|
||||
kind: EndpointSlice
|
||||
metadata:
|
||||
name: wings-ark
|
||||
namespace: pelican
|
||||
labels:
|
||||
kubernetes.io/service-name: wings-ark
|
||||
addressType: IPv4
|
||||
ports:
|
||||
- port: 8080
|
||||
protocol: TCP
|
||||
endpoints:
|
||||
# PLACEHOLDER: replace with the ARK wings VM IP once it exists,
|
||||
# then flip ready/serving to true
|
||||
- addresses:
|
||||
- "10.8.11.51"
|
||||
conditions:
|
||||
ready: false
|
||||
serving: false
|
||||
terminating: false
|
||||
@@ -0,0 +1,25 @@
|
||||
apiVersion: gateway.networking.k8s.io/v1
|
||||
kind: HTTPRoute
|
||||
metadata:
|
||||
name: wings-ark-route
|
||||
namespace: pelican
|
||||
spec:
|
||||
parentRefs:
|
||||
- group: gateway.networking.k8s.io
|
||||
kind: Gateway
|
||||
name: gateway-internal
|
||||
namespace: envoy-gateway
|
||||
sectionName: wings-ark
|
||||
hostnames:
|
||||
- "wings-ark.jsme.be"
|
||||
rules:
|
||||
- matches:
|
||||
- path:
|
||||
type: PathPrefix
|
||||
value: /
|
||||
backendRefs:
|
||||
- name: wings-ark
|
||||
port: 8080
|
||||
kind: Service
|
||||
group: ""
|
||||
weight: 1
|
||||
@@ -0,0 +1,11 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: wings-ark
|
||||
namespace: pelican
|
||||
spec:
|
||||
ports:
|
||||
- protocol: TCP
|
||||
port: 8080
|
||||
targetPort: 8080
|
||||
type: ClusterIP
|
||||
+2
-2
@@ -1,10 +1,10 @@
|
||||
apiVersion: discovery.k8s.io/v1
|
||||
kind: EndpointSlice
|
||||
metadata:
|
||||
name: wings
|
||||
name: wings-mc
|
||||
namespace: pelican
|
||||
labels:
|
||||
kubernetes.io/service-name: wings
|
||||
kubernetes.io/service-name: wings-mc
|
||||
addressType: IPv4
|
||||
ports:
|
||||
- port: 8080
|
||||
+4
-4
@@ -1,7 +1,7 @@
|
||||
apiVersion: gateway.networking.k8s.io/v1
|
||||
kind: HTTPRoute
|
||||
metadata:
|
||||
name: wings-route
|
||||
name: wings-mc-route
|
||||
namespace: pelican
|
||||
spec:
|
||||
parentRefs:
|
||||
@@ -9,16 +9,16 @@ spec:
|
||||
kind: Gateway
|
||||
name: gateway-internal
|
||||
namespace: envoy-gateway
|
||||
sectionName: wings
|
||||
sectionName: wings-mc
|
||||
hostnames:
|
||||
- "wings.jsme.be"
|
||||
- "wings-mc.jsme.be"
|
||||
rules:
|
||||
- matches:
|
||||
- path:
|
||||
type: PathPrefix
|
||||
value: /
|
||||
backendRefs:
|
||||
- name: wings
|
||||
- name: wings-mc
|
||||
port: 8080
|
||||
kind: Service
|
||||
group: ""
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: wings
|
||||
name: wings-mc
|
||||
namespace: pelican
|
||||
spec:
|
||||
ports:
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: proxmox
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: resume
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: searxng
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: technitium
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: truenas
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: unifi
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: uptime-kuma
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: victoria-metrics
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: zipline
|
||||
@@ -19,5 +19,4 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- ServerSideApply=true
|
||||
|
||||
@@ -18,4 +18,3 @@ spec:
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- PruneLast=true
|
||||
- CreateNamespace=true
|
||||
|
||||
@@ -16,5 +16,3 @@ spec:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
|
||||
@@ -22,6 +22,5 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
- ServerSideApply=true
|
||||
|
||||
@@ -19,5 +19,4 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
|
||||
@@ -20,7 +20,6 @@ spec:
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- Replace=true
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
ignoreDifferences:
|
||||
- group: ""
|
||||
|
||||
@@ -19,7 +19,6 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
ignoreDifferences:
|
||||
- group: ""
|
||||
|
||||
@@ -19,6 +19,5 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- ServerSideApply=true
|
||||
- PrunePropagationPolicy=foreground
|
||||
|
||||
@@ -22,6 +22,5 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- ApplyOutOfSyncOnly=true
|
||||
- ServerSideApply=true
|
||||
|
||||
@@ -18,5 +18,3 @@ spec:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
|
||||
@@ -20,5 +20,4 @@ spec:
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- Replace=true
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
|
||||
@@ -16,5 +16,3 @@ spec:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
|
||||
@@ -16,5 +16,3 @@ spec:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
|
||||
@@ -17,5 +17,4 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- ServerSideApply=true
|
||||
|
||||
@@ -19,6 +19,5 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- ServerSideApply=true
|
||||
- PrunePropagationPolicy=foreground
|
||||
|
||||
@@ -18,5 +18,3 @@ spec:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: pelican
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://gitea.jsme.be/Jeffrey/Kubernetes-Manifests.git
|
||||
path: applications/pelican
|
||||
targetRevision: main
|
||||
directory:
|
||||
recurse: true
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: pelican
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- PruneLast=true
|
||||
ignoreDifferences:
|
||||
- group: ""
|
||||
kind: PersistentVolumeClaim
|
||||
jsonPointers:
|
||||
- /spec/volumeName
|
||||
@@ -17,5 +17,4 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- ServerSideApply=true
|
||||
|
||||
@@ -19,5 +19,4 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- ServerSideApply=true
|
||||
|
||||
@@ -19,7 +19,6 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
ignoreDifferences:
|
||||
- group: ""
|
||||
|
||||
@@ -20,5 +20,4 @@ spec:
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- Replace=true
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
|
||||
@@ -20,5 +20,4 @@ spec:
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- Replace=true
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
|
||||
@@ -20,4 +20,3 @@ spec:
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- ServerSideApply=true
|
||||
- CreateNamespace=true
|
||||
|
||||
@@ -19,5 +19,4 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- PruneLast=true
|
||||
|
||||
@@ -30,5 +30,4 @@ spec:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
- ServerSideApply=true
|
||||
|
||||
@@ -18,5 +18,3 @@ spec:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: envoy-gateway
|
||||
labels:
|
||||
name: envoy-gateway
|
||||
@@ -2,9 +2,15 @@ apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
resources:
|
||||
- envoy-gateway-namespace.yaml
|
||||
- gateway.yaml
|
||||
- gateway-public.yaml
|
||||
|
||||
# CrowdSec (public gateway hardening) — HELD pending enforcement-scope decision
|
||||
# (EG v1.3.2 SecurityPolicy does not support sectionName; see it-tools-securitypolicy.yaml)
|
||||
# - crowdsec/envoyproxy-public.yaml
|
||||
# - crowdsec/it-tools-securitypolicy.yaml
|
||||
|
||||
# Policies
|
||||
- pelican/pelican-wings-clienttrafficpolicy.yaml
|
||||
- minio-aistor/minio-aistor-clienttrafficpolicy.yaml
|
||||
@@ -46,7 +52,8 @@ resources:
|
||||
- searxng/searxng-certificate.yaml
|
||||
- affine/affine-certificate.yaml
|
||||
- pelican/pelican-certificate.yaml
|
||||
- pelican/pelican-wings-certificate.yaml
|
||||
- pelican/pelican-wings-mc-certificate.yaml
|
||||
- pelican/pelican-wings-ark-certificate.yaml
|
||||
- outline/outline-certificate.yaml
|
||||
|
||||
patches:
|
||||
@@ -266,7 +273,13 @@ patches:
|
||||
version: v1
|
||||
kind: Gateway
|
||||
name: gateway-internal
|
||||
path: pelican/pelican-wings-gateway-patch.yaml
|
||||
path: pelican/pelican-wings-mc-gateway-patch.yaml
|
||||
- target:
|
||||
group: gateway.networking.k8s.io
|
||||
version: v1
|
||||
kind: Gateway
|
||||
name: gateway-internal
|
||||
path: pelican/pelican-wings-ark-gateway-patch.yaml
|
||||
- target:
|
||||
group: gateway.networking.k8s.io
|
||||
version: v1
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: wings-ark-tls
|
||||
namespace: envoy-gateway
|
||||
spec:
|
||||
secretName: wings-ark-tls
|
||||
privateKey:
|
||||
rotationPolicy: Always
|
||||
issuerRef:
|
||||
name: azure-dns
|
||||
kind: ClusterIssuer
|
||||
dnsNames:
|
||||
- wings-ark.jsme.be
|
||||
@@ -0,0 +1,19 @@
|
||||
- op: add
|
||||
path: /spec/listeners/-
|
||||
value:
|
||||
name: wings-ark
|
||||
protocol: HTTPS
|
||||
port: 443
|
||||
hostname: "wings-ark.jsme.be"
|
||||
allowedRoutes:
|
||||
namespaces:
|
||||
from: Selector
|
||||
selector:
|
||||
matchLabels:
|
||||
kubernetes.io/metadata.name: pelican
|
||||
tls:
|
||||
mode: Terminate
|
||||
certificateRefs:
|
||||
- kind: Secret
|
||||
name: wings-ark-tls
|
||||
namespace: envoy-gateway
|
||||
@@ -8,7 +8,11 @@ spec:
|
||||
- group: gateway.networking.k8s.io
|
||||
kind: Gateway
|
||||
name: gateway-internal
|
||||
sectionName: wings
|
||||
sectionName: wings-mc
|
||||
- group: gateway.networking.k8s.io
|
||||
kind: Gateway
|
||||
name: gateway-internal
|
||||
sectionName: wings-ark
|
||||
tls:
|
||||
# Wings only speaks HTTP/1.1; disabling h2 ALPN prevents Guzzle connection-reuse broken pipe
|
||||
alpnProtocols:
|
||||
|
||||
+3
-3
@@ -1,14 +1,14 @@
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: wings-tls
|
||||
name: wings-mc-tls
|
||||
namespace: envoy-gateway
|
||||
spec:
|
||||
secretName: wings-tls
|
||||
secretName: wings-mc-tls
|
||||
privateKey:
|
||||
rotationPolicy: Always
|
||||
issuerRef:
|
||||
name: azure-dns
|
||||
kind: ClusterIssuer
|
||||
dnsNames:
|
||||
- wings.jsme.be
|
||||
- wings-mc.jsme.be
|
||||
+3
-3
@@ -1,10 +1,10 @@
|
||||
- op: add
|
||||
path: /spec/listeners/-
|
||||
value:
|
||||
name: wings
|
||||
name: wings-mc
|
||||
protocol: HTTPS
|
||||
port: 443
|
||||
hostname: "wings.jsme.be"
|
||||
hostname: "wings-mc.jsme.be"
|
||||
allowedRoutes:
|
||||
namespaces:
|
||||
from: Selector
|
||||
@@ -15,5 +15,5 @@
|
||||
mode: Terminate
|
||||
certificateRefs:
|
||||
- kind: Secret
|
||||
name: wings-tls
|
||||
name: wings-mc-tls
|
||||
namespace: envoy-gateway
|
||||
Reference in New Issue
Block a user