MATIH Platform is in active MVP development. Documentation reflects current implementation status.
18. CI/CD & Build System
Tooling
Tooling Overview

Tooling Overview

The MATIH scripts/tools directory provides standalone operational scripts for building, deploying, diagnosing, and validating platform services. These tools are the primary interface for developers and operators working with the platform.


Available Tools

ToolScriptDescription
Service Build and Deployservice-build-deploy.shBuild and deploy a single service
Platform Statusplatform-status.shDiagnose cluster health
Database Toolssetup-databases.sh, flyway-repair.shDatabase setup and migration
Port Validationvalidate-ports.shDetect port drift across layers
Ingress Toolsvalidate-tenant-ingress.sh, tenant-ingress-deploy.shIngress and DNS management

Additional Tools

ScriptPurpose
full-service-rebuild.shComplete rebuild of a service including base images
build-base-images.shRebuild base Docker images
local-service-validate.shValidate services locally before deployment
validate-all-services.shRun validation across all services
aks-health-check.shAKS cluster health diagnostics
dgraph-status.shCheck Dgraph graph database status
generate-helm-charts.shGenerate Helm charts from templates
update-dockerfiles.shUpdate Dockerfiles with base image changes
openapi-spec-audit.shAudit OpenAPI specifications for consistency

Tool Design Principles

  1. Self-contained. Each tool sources its required libraries and can run independently.
  2. Idempotent. Tools can be run multiple times without side effects.
  3. Informative output. Color-coded logging with clear success/failure indicators.
  4. Dry-run support. Many tools support --dry-run to preview changes.
  5. Argument parsing. All tools accept --help for usage documentation.