diff --git a/apps/test/kustomization.yaml b/apps/test/kustomization.yaml index 7d5929f..bf7dfe2 100644 --- a/apps/test/kustomization.yaml +++ b/apps/test/kustomization.yaml @@ -1,6 +1,6 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: argocd + commonLabels: dev.stonegarden: app-management app.kubernetes.io/managed-by: argocd diff --git a/apps/utility/application-set.yaml b/apps/utility/application-set.yaml new file mode 100644 index 0000000..0301fde --- /dev/null +++ b/apps/utility/application-set.yaml @@ -0,0 +1,36 @@ +apiVersion: argoproj.io/v1alpha1 +kind: ApplicationSet +metadata: + name: utility + namespace: argocd + labels: + dev.stonegarden: utility +spec: + generators: + - git: + repoURL: https://github.com/vehagn/homelab + revision: HEAD + directories: + - path: apps/utility/* + template: + metadata: + name: '{{ path.basename }}' + labels: + dev.stonegarden: utility + finalizers: + - resources-finalizer.argocd.argoproj.io + spec: + project: utility + source: + plugin: + name: kustomize-build-with-helm + repoURL: https://github.com/vehagn/homelab + targetRevision: HEAD + path: '{{ path }}' + destination: + name: in-cluster + namespace: '{{ path.basename }}' + syncPolicy: + automated: + selfHeal: true + prune: true diff --git a/apps/utility/haos/endpoint-slice.yaml b/apps/utility/haos/endpoint-slice.yaml new file mode 100644 index 0000000..a06fa12 --- /dev/null +++ b/apps/utility/haos/endpoint-slice.yaml @@ -0,0 +1,18 @@ +apiVersion: discovery.k8s.io/v1 +kind: EndpointSlice +metadata: + name: home-assistant-1 + namespace: haos + labels: + kubernetes.io/service-name: home-assistant + endpointslice.kubernetes.io/managed-by: cluster-admins +addressType: IPv4 +ports: + - name: http + protocol: TCP + port: 8123 +endpoints: + - addresses: + - 192.168.1.27 + conditions: # https://github.com/argoproj/argo-cd/issues/15554 + ready: true \ No newline at end of file diff --git a/apps/utility/haos/http-route.yaml b/apps/utility/haos/http-route.yaml new file mode 100644 index 0000000..8465594 --- /dev/null +++ b/apps/utility/haos/http-route.yaml @@ -0,0 +1,19 @@ +apiVersion: gateway.networking.k8s.io/v1 +kind: HTTPRoute +metadata: + name: home-assistant + namespace: haos +spec: + parentRefs: + - name: cilium-gateway + namespace: gateway + hostnames: + - "haos.stonegarden.dev" + rules: + - matches: + - path: + type: PathPrefix + value: / + backendRefs: + - name: home-assistant + port: 80 \ No newline at end of file diff --git a/apps/utility/haos/kustomization.yaml b/apps/utility/haos/kustomization.yaml new file mode 100644 index 0000000..ea2cdd2 --- /dev/null +++ b/apps/utility/haos/kustomization.yaml @@ -0,0 +1,8 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + - ns.yaml + - svc.yaml + - endpoint-slice.yaml + - http-route.yaml \ No newline at end of file diff --git a/apps/utility/haos/ns.yaml b/apps/utility/haos/ns.yaml new file mode 100644 index 0000000..5e74a7e --- /dev/null +++ b/apps/utility/haos/ns.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: haos \ No newline at end of file diff --git a/apps/utility/haos/svc.yaml b/apps/utility/haos/svc.yaml new file mode 100644 index 0000000..a230ce7 --- /dev/null +++ b/apps/utility/haos/svc.yaml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: home-assistant + namespace: haos +spec: + ports: + - name: http + protocol: TCP + port: 80 + targetPort: 8123 \ No newline at end of file diff --git a/apps/utility/kustomization.yaml b/apps/utility/kustomization.yaml index a501af0..ecd32ce 100644 --- a/apps/utility/kustomization.yaml +++ b/apps/utility/kustomization.yaml @@ -1,10 +1,11 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -namespace: argocd + commonLabels: dev.stonegarden: app-management app.kubernetes.io/managed-by: argocd resources: - project.yaml - - home-assistant.yaml + - application-set.yaml +# - home-assistant.yaml diff --git a/apps/utility/project.yaml b/apps/utility/project.yaml index 6aa8e5d..db900f4 100644 --- a/apps/utility/project.yaml +++ b/apps/utility/project.yaml @@ -11,7 +11,7 @@ spec: destinations: - namespace: 'argocd' server: '*' - - namespace: 'home-assistant' + - namespace: 'haos' server: '*' clusterResourceWhitelist: - group: '*' diff --git a/infra/gateway/gateway.yaml b/infra/gateway/gateway.yaml index eb538b9..5c91ab0 100644 --- a/infra/gateway/gateway.yaml +++ b/infra/gateway/gateway.yaml @@ -32,10 +32,4 @@ spec: name: cloudflare-cert allowedRoutes: namespaces: - from: All -# allowedRoutes: -# namespaces: -# from: Selector -# selector: -# matchLabels: -# dev.stonegarden.app: homepage \ No newline at end of file + from: All \ No newline at end of file diff --git a/infra/net-aux/config/cloudflared/config.yaml b/infra/net-aux/config/cloudflared/config.yaml index 656895a..13f7f56 100644 --- a/infra/net-aux/config/cloudflared/config.yaml +++ b/infra/net-aux/config/cloudflared/config.yaml @@ -11,6 +11,10 @@ ingress: service: hello_world - hostname: ssh.stonegarden.dev service: ssh://192.168.1.12:22 + - hostname: haos.stonegarden.dev + service: https://cilium-gateway-cilium-gateway.gateway.svc.cluster.local:443 + originRequest: + originServerName: "*.stonegarden.dev" - hostname: blog.stonegarden.dev service: https://cilium-gateway-cilium-gateway.gateway.svc.cluster.local:443 originRequest: