Restructure solution layout by module
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				Docs CI / lint-and-preview (push) Has been cancelled
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	Docs CI / lint-and-preview (push) Has been cancelled
				
			This commit is contained in:
		| @@ -1,61 +1,61 @@ | ||||
| #!/usr/bin/env bash | ||||
| set -euo pipefail | ||||
|  | ||||
| ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" | ||||
| COMPOSE_DIR="$ROOT_DIR/compose" | ||||
| HELM_DIR="$ROOT_DIR/helm/stellaops" | ||||
|  | ||||
| compose_profiles=( | ||||
|   "docker-compose.dev.yaml:env/dev.env.example" | ||||
|   "docker-compose.stage.yaml:env/stage.env.example" | ||||
|   "docker-compose.prod.yaml:env/prod.env.example" | ||||
|   "docker-compose.airgap.yaml:env/airgap.env.example" | ||||
|   "docker-compose.mirror.yaml:env/mirror.env.example" | ||||
|   "docker-compose.telemetry.yaml:" | ||||
|   "docker-compose.telemetry-storage.yaml:" | ||||
| ) | ||||
|  | ||||
| docker_ready=false | ||||
| if command -v docker >/dev/null 2>&1; then | ||||
|   if docker compose version >/dev/null 2>&1; then | ||||
|     docker_ready=true | ||||
|   else | ||||
|     echo "⚠️  docker CLI present but Compose plugin unavailable; skipping compose validation" >&2 | ||||
|   fi | ||||
| else | ||||
|   echo "⚠️  docker CLI not found; skipping compose validation" >&2 | ||||
| fi | ||||
|  | ||||
| if [[ "$docker_ready" == "true" ]]; then | ||||
|   for entry in "${compose_profiles[@]}"; do | ||||
|     IFS=":" read -r compose_file env_file <<<"$entry" | ||||
|     printf '→ validating %s with %s\n' "$compose_file" "$env_file" | ||||
|     if [[ -n "$env_file" ]]; then | ||||
|       docker compose \ | ||||
|         --env-file "$COMPOSE_DIR/$env_file" \ | ||||
|         -f "$COMPOSE_DIR/$compose_file" config >/dev/null | ||||
|     else | ||||
|       docker compose -f "$COMPOSE_DIR/$compose_file" config >/dev/null | ||||
|     fi | ||||
|   done | ||||
| fi | ||||
|  | ||||
| helm_values=( | ||||
|   "$HELM_DIR/values-dev.yaml" | ||||
|   "$HELM_DIR/values-stage.yaml" | ||||
|   "$HELM_DIR/values-prod.yaml" | ||||
|   "$HELM_DIR/values-airgap.yaml" | ||||
|   "$HELM_DIR/values-mirror.yaml" | ||||
| ) | ||||
|  | ||||
| if command -v helm >/dev/null 2>&1; then | ||||
|   for values in "${helm_values[@]}"; do | ||||
|     printf '→ linting Helm chart with %s\n' "$(basename "$values")" | ||||
|     helm lint "$HELM_DIR" -f "$values" | ||||
|     helm template test-release "$HELM_DIR" -f "$values" >/dev/null | ||||
|   done | ||||
| else | ||||
|   echo "⚠️  helm CLI not found; skipping Helm lint/template" >&2 | ||||
| fi | ||||
|  | ||||
| printf 'Profiles validated (where tooling was available).\n' | ||||
| #!/usr/bin/env bash | ||||
| set -euo pipefail | ||||
|  | ||||
| ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" | ||||
| COMPOSE_DIR="$ROOT_DIR/compose" | ||||
| HELM_DIR="$ROOT_DIR/helm/stellaops" | ||||
|  | ||||
| compose_profiles=( | ||||
|   "docker-compose.dev.yaml:env/dev.env.example" | ||||
|   "docker-compose.stage.yaml:env/stage.env.example" | ||||
|   "docker-compose.prod.yaml:env/prod.env.example" | ||||
|   "docker-compose.airgap.yaml:env/airgap.env.example" | ||||
|   "docker-compose.mirror.yaml:env/mirror.env.example" | ||||
|   "docker-compose.telemetry.yaml:" | ||||
|   "docker-compose.telemetry-storage.yaml:" | ||||
| ) | ||||
|  | ||||
| docker_ready=false | ||||
| if command -v docker >/dev/null 2>&1; then | ||||
|   if docker compose version >/dev/null 2>&1; then | ||||
|     docker_ready=true | ||||
|   else | ||||
|     echo "⚠️  docker CLI present but Compose plugin unavailable; skipping compose validation" >&2 | ||||
|   fi | ||||
| else | ||||
|   echo "⚠️  docker CLI not found; skipping compose validation" >&2 | ||||
| fi | ||||
|  | ||||
| if [[ "$docker_ready" == "true" ]]; then | ||||
|   for entry in "${compose_profiles[@]}"; do | ||||
|     IFS=":" read -r compose_file env_file <<<"$entry" | ||||
|     printf '→ validating %s with %s\n' "$compose_file" "$env_file" | ||||
|     if [[ -n "$env_file" ]]; then | ||||
|       docker compose \ | ||||
|         --env-file "$COMPOSE_DIR/$env_file" \ | ||||
|         -f "$COMPOSE_DIR/$compose_file" config >/dev/null | ||||
|     else | ||||
|       docker compose -f "$COMPOSE_DIR/$compose_file" config >/dev/null | ||||
|     fi | ||||
|   done | ||||
| fi | ||||
|  | ||||
| helm_values=( | ||||
|   "$HELM_DIR/values-dev.yaml" | ||||
|   "$HELM_DIR/values-stage.yaml" | ||||
|   "$HELM_DIR/values-prod.yaml" | ||||
|   "$HELM_DIR/values-airgap.yaml" | ||||
|   "$HELM_DIR/values-mirror.yaml" | ||||
| ) | ||||
|  | ||||
| if command -v helm >/dev/null 2>&1; then | ||||
|   for values in "${helm_values[@]}"; do | ||||
|     printf '→ linting Helm chart with %s\n' "$(basename "$values")" | ||||
|     helm lint "$HELM_DIR" -f "$values" | ||||
|     helm template test-release "$HELM_DIR" -f "$values" >/dev/null | ||||
|   done | ||||
| else | ||||
|   echo "⚠️  helm CLI not found; skipping Helm lint/template" >&2 | ||||
| fi | ||||
|  | ||||
| printf 'Profiles validated (where tooling was available).\n' | ||||
|   | ||||
		Reference in New Issue
	
	Block a user