too much for one commit

This commit is contained in:
Nils Blomgren
2026-05-13 14:01:32 +02:00
parent a96dd33039
commit 328d494530
394 changed files with 98104 additions and 78 deletions

92
Tiltfile Normal file
View File

@@ -0,0 +1,92 @@
# -*- mode: Python -*-
# EntKube Tiltfile — Helm-based local Kubernetes development
#
# Prerequisites:
# - Docker Desktop or Rancher Desktop
# - k3d (recommended): k3d cluster create entkube --registry-create entkube-registry:0.0.0.0:5050 -p "8080:80@loadbalancer"
# - Tilt: https://docs.tilt.dev/install.html
# - Helm 3
#
# Usage:
# tilt up
#
# This watches source code, rebuilds Docker images, and redeploys via Helm.
# Allow the k3d local registry
allow_k8s_contexts(['k3d-entkube'])
# Use the local registry created by k3d
default_registry('localhost:5050')
# Docker builds for each service — context is the repo root so COPY paths work
docker_build(
'entkube/web',
'.',
dockerfile='src/EntKube.Web/Dockerfile',
live_update=[
sync('src/EntKube.Web/', '/src/src/EntKube.Web/'),
sync('src/EntKube.Web.Client/', '/src/src/EntKube.Web.Client/'),
sync('src/EntKube.SharedKernel/', '/src/src/EntKube.SharedKernel/'),
run('cd /src/src/EntKube.Web && dotnet build -c Release -o /app', trigger=['src/EntKube.Web/', 'src/EntKube.Web.Client/', 'src/EntKube.SharedKernel/']),
]
)
docker_build(
'entkube/clusters',
'.',
dockerfile='src/EntKube.Clusters/Dockerfile',
live_update=[
sync('src/EntKube.Clusters/', '/src/src/EntKube.Clusters/'),
sync('src/EntKube.SharedKernel/', '/src/src/EntKube.SharedKernel/'),
run('cd /src/src/EntKube.Clusters && dotnet build -c Release -o /app', trigger=['src/EntKube.Clusters/', 'src/EntKube.SharedKernel/']),
]
)
docker_build(
'entkube/identity',
'.',
dockerfile='src/EntKube.Identity/Dockerfile',
live_update=[
sync('src/EntKube.Identity/', '/src/src/EntKube.Identity/'),
sync('src/EntKube.SharedKernel/', '/src/src/EntKube.SharedKernel/'),
run('cd /src/src/EntKube.Identity && dotnet build -c Release -o /app', trigger=['src/EntKube.Identity/', 'src/EntKube.SharedKernel/']),
]
)
docker_build(
'entkube/provisioning',
'.',
dockerfile='src/EntKube.Provisioning/Dockerfile',
live_update=[
sync('src/EntKube.Provisioning/', '/src/src/EntKube.Provisioning/'),
sync('src/EntKube.SharedKernel/', '/src/src/EntKube.SharedKernel/'),
run('cd /src/src/EntKube.Provisioning && dotnet build -c Release -o /app', trigger=['src/EntKube.Provisioning/', 'src/EntKube.SharedKernel/']),
]
)
docker_build(
'entkube/secrets',
'.',
dockerfile='src/EntKube.Secrets/Dockerfile',
live_update=[
sync('src/EntKube.Secrets/', '/src/src/EntKube.Secrets/'),
sync('src/EntKube.SharedKernel/', '/src/src/EntKube.SharedKernel/'),
run('cd /src/src/EntKube.Secrets && dotnet build -c Release -o /app', trigger=['src/EntKube.Secrets/', 'src/EntKube.SharedKernel/']),
]
)
# Deploy via Helm chart with dev values
k8s_yaml(helm(
'Charts/entkube',
name='entkube',
namespace='default',
values=['Charts/entkube/values-dev.yaml'],
))
# Resource grouping for the Tilt UI
k8s_resource('entkube-web', port_forwards='5000:5000', labels=['entkube'])
k8s_resource('entkube-clusters', port_forwards='5010:5010', labels=['entkube'])
k8s_resource('entkube-provisioning', port_forwards='5020:5020', labels=['entkube'])
k8s_resource('entkube-identity', port_forwards='5030:5030', labels=['entkube'])
k8s_resource('entkube-secrets', port_forwards='5040:5040', labels=['entkube'])