Skip to content

Commit 6ceb7da

Browse files
committed
init
1 parent 9d833bc commit 6ceb7da

11 files changed

Lines changed: 184 additions & 0 deletions

File tree

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/refs/heads/main/helmrelease-helm-v2.json
3+
apiVersion: helm.toolkit.fluxcd.io/v2
4+
kind: HelmRelease
5+
metadata:
6+
name: haos-external
7+
spec:
8+
chartRef:
9+
kind: OCIRepository
10+
name: haos-external
11+
interval: 1h
12+
timeout: 20m
13+
maxHistory: 3
14+
install:
15+
createNamespace: true
16+
remediation:
17+
retries: 3
18+
upgrade:
19+
cleanupOnFail: true
20+
remediation:
21+
retries: 3
22+
uninstall:
23+
keepHistory: false
24+
values:
25+
service:
26+
main:
27+
type: ExternalIP
28+
externalIP: "${HAOSIP}"
29+
useSlice: false
30+
ports:
31+
main:
32+
protocol: http
33+
port: 8123
34+
# Target port is the port of the "external service"
35+
# Defaults to "port" if not set
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
# yaml-language-server: $schema=https://datreeio.github.io/CRDs-catalog/gateway.networking.k8s.io/httproute_v1.json
3+
apiVersion: gateway.networking.k8s.io/v1
4+
kind: HTTPRoute
5+
metadata:
6+
name: haos-external
7+
spec:
8+
parentRefs:
9+
- name: envoy-internal
10+
namespace: network
11+
sectionName: https
12+
hostnames: ["ha.${SECRET_DOMAIN}"]
13+
rules:
14+
- backendRefs:
15+
- name: haos-external
16+
port: 80
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1beta1
3+
kind: Kustomization
4+
resources:
5+
- ./httproute.yaml
6+
- ./helmrelease.yaml
7+
- ./ocirepository.yaml
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/source.toolkit.fluxcd.io/ocirepository_v1.json
3+
apiVersion: source.toolkit.fluxcd.io/v1
4+
kind: OCIRepository
5+
metadata:
6+
name: haos-external
7+
spec:
8+
interval: 15m
9+
layerSelector:
10+
mediaType: application/vnd.cncf.helm.chart.content.v1.tar+gzip
11+
operation: copy
12+
ref:
13+
tag: 16.13.1
14+
url: oci://oci.trueforge.org/truecharts/external-service
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
apiVersion: kustomize.toolkit.fluxcd.io/v1
3+
kind: Kustomization
4+
metadata:
5+
name: haos-external-service
6+
spec:
7+
interval: 1h
8+
path: ./kubernetes/apps/network/haos-external/app
9+
postBuild:
10+
substituteFrom:
11+
- name: cluster-secrets
12+
kind: Secret
13+
prune: true
14+
sourceRef:
15+
kind: GitRepository
16+
name: flux-system
17+
namespace: flux-system
18+
targetNamespace: network
19+
wait: true

kubernetes/apps/network/kustomization.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,7 @@ resources:
1111
- ./cloudflare-dns/ks.yaml
1212
- ./cloudflare-tunnel/ks.yaml
1313
- ./envoy-gateway/ks.yaml
14+
- ./haos-external/ks.yaml
1415
- ./k8s-gateway/ks.yaml
16+
- ./truenas-external/ks.yaml
1517
- ./unifi-dns/ks.yaml
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/refs/heads/main/helmrelease-helm-v2.json
3+
apiVersion: helm.toolkit.fluxcd.io/v2
4+
kind: HelmRelease
5+
metadata:
6+
name: truenas-external
7+
spec:
8+
chartRef:
9+
kind: OCIRepository
10+
name: truenas-external
11+
interval: 1h
12+
timeout: 20m
13+
maxHistory: 3
14+
install:
15+
createNamespace: true
16+
remediation:
17+
retries: 3
18+
upgrade:
19+
cleanupOnFail: true
20+
remediation:
21+
retries: 3
22+
uninstall:
23+
keepHistory: false
24+
values:
25+
service:
26+
main:
27+
type: ExternalIP
28+
externalIP: "${truenasip}"
29+
useSlice: false
30+
ports:
31+
main:
32+
protocol: http
33+
port: 81
34+
# Target port is the port of the "external service"
35+
# Defaults to "port" if not set
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
# yaml-language-server: $schema=https://datreeio.github.io/CRDs-catalog/gateway.networking.k8s.io/httproute_v1.json
3+
apiVersion: gateway.networking.k8s.io/v1
4+
kind: HTTPRoute
5+
metadata:
6+
name: truenas-external
7+
spec:
8+
parentRefs:
9+
- name: envoy-internal
10+
namespace: network
11+
sectionName: https
12+
hostnames: ["storage.${SECRET_DOMAIN}"]
13+
rules:
14+
- backendRefs:
15+
- name: truenas-external
16+
port: 80
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
apiVersion: kustomize.config.k8s.io/v1beta1
3+
kind: Kustomization
4+
resources:
5+
- ./httproute.yaml
6+
- ./helmrelease.yaml
7+
- ./ocirepository.yaml
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/source.toolkit.fluxcd.io/ocirepository_v1.json
3+
apiVersion: source.toolkit.fluxcd.io/v1
4+
kind: OCIRepository
5+
metadata:
6+
name: truenas-external
7+
spec:
8+
interval: 15m
9+
layerSelector:
10+
mediaType: application/vnd.cncf.helm.chart.content.v1.tar+gzip
11+
operation: copy
12+
ref:
13+
tag: 16.13.1
14+
url: oci://oci.trueforge.org/truecharts/external-service

0 commit comments

Comments
 (0)