Add improvements 2
This commit is contained in:
38
Tiltfile
38
Tiltfile
@@ -7,6 +7,13 @@
|
||||
# - PostgreSQL pgcrypto extension and audit logging
|
||||
# - Organized resource dependencies and live-reload capabilities
|
||||
# - Local registry for faster image builds and deployments
|
||||
#
|
||||
# Build Optimization:
|
||||
# - Services only rebuild when their specific code changes (not all services)
|
||||
# - Shared folder changes trigger rebuild of ALL services (as they all depend on it)
|
||||
# - Uses 'only' parameter to watch only relevant files per service
|
||||
# - Frontend only rebuilds when frontend/ code changes
|
||||
# - Gateway only rebuilds when gateway/ or shared/ code changes
|
||||
# =============================================================================
|
||||
|
||||
# =============================================================================
|
||||
@@ -197,16 +204,25 @@ k8s_yaml(kustomize('infrastructure/kubernetes/overlays/dev'))
|
||||
# =============================================================================
|
||||
|
||||
# Helper function for Python services with live updates
|
||||
# This function ensures services only rebuild when their specific code changes,
|
||||
# but all services rebuild when shared/ folder changes
|
||||
def build_python_service(service_name, service_path):
|
||||
docker_build(
|
||||
'bakery/' + service_name,
|
||||
context='.',
|
||||
dockerfile='./services/' + service_path + '/Dockerfile',
|
||||
# Only watch files relevant to this specific service + shared code
|
||||
only=[
|
||||
'./services/' + service_path,
|
||||
'./shared',
|
||||
'./scripts',
|
||||
],
|
||||
live_update=[
|
||||
# Fall back to full image build if Dockerfile or requirements change
|
||||
fall_back_on([
|
||||
'./services/' + service_path + '/Dockerfile',
|
||||
'./services/' + service_path + '/requirements.txt'
|
||||
'./services/' + service_path + '/requirements.txt',
|
||||
'./shared/requirements-tracing.txt',
|
||||
]),
|
||||
|
||||
# Sync service code
|
||||
@@ -290,10 +306,21 @@ docker_build(
|
||||
'bakery/gateway',
|
||||
context='.',
|
||||
dockerfile='./gateway/Dockerfile',
|
||||
# Only watch gateway-specific files and shared code
|
||||
only=[
|
||||
'./gateway',
|
||||
'./shared',
|
||||
'./scripts',
|
||||
],
|
||||
live_update=[
|
||||
fall_back_on(['./gateway/Dockerfile', './gateway/requirements.txt']),
|
||||
fall_back_on([
|
||||
'./gateway/Dockerfile',
|
||||
'./gateway/requirements.txt',
|
||||
'./shared/requirements-tracing.txt',
|
||||
]),
|
||||
sync('./gateway', '/app'),
|
||||
sync('./shared', '/app/shared'),
|
||||
sync('./scripts', '/app/scripts'),
|
||||
run('kill -HUP 1', trigger=['./gateway/**/*.py', './shared/**/*.py']),
|
||||
],
|
||||
ignore=[
|
||||
@@ -680,6 +707,13 @@ Documentation:
|
||||
docs/SECURITY_IMPLEMENTATION_COMPLETE.md
|
||||
docs/DATABASE_SECURITY_ANALYSIS_REPORT.md
|
||||
|
||||
Build Optimization Active:
|
||||
✅ Services only rebuild when their code changes
|
||||
✅ Shared folder changes trigger ALL services (as expected)
|
||||
✅ Reduces unnecessary rebuilds and disk usage
|
||||
💡 Edit service code: only that service rebuilds
|
||||
💡 Edit shared/ code: all services rebuild (required)
|
||||
|
||||
Useful Commands:
|
||||
# Work on specific services only
|
||||
tilt up <service-name> <service-name>
|
||||
|
||||
Reference in New Issue
Block a user