diff --git a/.rules b/.rules index 67e24c4..67a0147 100644 --- a/.rules +++ b/.rules @@ -4,6 +4,7 @@ PRODUCTION: false COMPATIBILITY: none PRINCIPLE: keep_small_simple +RULE: default_shell_fish RULE: fix_lint_errors RULE: keep_code_lean RULE: keep_tests_consistent diff --git a/Makefile b/Makefile index a1442f8..631ae72 100644 --- a/Makefile +++ b/Makefile @@ -227,21 +227,23 @@ docker-build: ## Build Docker images docker-tag: ## Tag Docker images with registry URL $(call info,Tagging Docker images for registry...) @if [ -f ".env" ]; then \ - . ./.env && \ - docker tag unitforge:latest $${CONTAINER_REGISTRY_URL}:$${CONTAINER_TAG} && \ - docker tag unitforge:latest $${CONTAINER_REGISTRY_URL}:latest; \ + REGISTRY_URL=$$(grep '^CONTAINER_REGISTRY_URL=' .env | cut -d'=' -f2 | sed 's|^https\?://||') && \ + CONTAINER_TAG=$$(grep '^CONTAINER_TAG=' .env | cut -d'=' -f2) && \ + docker tag unitforge-unitforge-prod:latest $${REGISTRY_URL}:$${CONTAINER_TAG} && \ + docker tag unitforge-unitforge-prod:latest $${REGISTRY_URL}:latest; \ else \ echo -e "$(YELLOW)$(WARNING_SYMBOL)$(NC) .env file not found. Using default values."; \ - docker tag unitforge:latest http://gitea-http.taildb3494.ts.net/will/unitforge:latest; \ + docker tag unitforge-unitforge-prod:latest http://gitea-http.taildb3494.ts.net/will/unitforge:latest; \ fi $(call success,Docker images tagged for registry) docker-push: docker-tag ## Push Docker images to registry $(call info,Pushing Docker images to registry...) @if [ -f ".env" ]; then \ - . ./.env && \ - docker push $${CONTAINER_REGISTRY_URL}:$${CONTAINER_TAG} && \ - docker push $${CONTAINER_REGISTRY_URL}:latest; \ + REGISTRY_URL=$$(grep '^CONTAINER_REGISTRY_URL=' .env | cut -d'=' -f2 | sed 's|^https\?://||') && \ + CONTAINER_TAG=$$(grep '^CONTAINER_TAG=' .env | cut -d'=' -f2) && \ + docker push $${REGISTRY_URL}:$${CONTAINER_TAG} && \ + docker push $${REGISTRY_URL}:latest; \ else \ echo -e "$(YELLOW)$(WARNING_SYMBOL)$(NC) .env file not found. Using default values."; \ docker push http://gitea-http.taildb3494.ts.net/will/unitforge:latest; \ @@ -251,8 +253,9 @@ docker-push: docker-tag ## Push Docker images to registry docker-pull: ## Pull Docker images from registry $(call info,Pulling Docker images from registry...) @if [ -f ".env" ]; then \ - . ./.env && \ - docker pull $${CONTAINER_REGISTRY_URL}:$${CONTAINER_TAG}; \ + REGISTRY_URL=$$(grep '^CONTAINER_REGISTRY_URL=' .env | cut -d'=' -f2 | sed 's|^https\?://||') && \ + CONTAINER_TAG=$$(grep '^CONTAINER_TAG=' .env | cut -d'=' -f2) && \ + docker pull $${REGISTRY_URL}:$${CONTAINER_TAG}; \ else \ echo -e "$(YELLOW)$(WARNING_SYMBOL)$(NC) .env file not found. Using default values."; \ docker pull http://gitea-http.taildb3494.ts.net/will/unitforge:latest; \ @@ -268,9 +271,9 @@ registry-push: registry-build docker-push ## Build, tag, and push images to regi docker-login: ## Login to container registry (interactive) $(call info,Logging into container registry...) @if [ -f ".env" ]; then \ - . ./.env && \ - echo "Logging into registry at: $${CONTAINER_REGISTRY_URL}"; \ - docker login $${CONTAINER_REGISTRY_URL}; \ + REGISTRY_URL=$$(grep '^CONTAINER_REGISTRY_URL=' .env | cut -d'=' -f2 | sed 's|^https\?://||') && \ + echo "Logging into registry at: $${REGISTRY_URL}"; \ + docker login $${REGISTRY_URL}; \ else \ echo -e "$(YELLOW)$(WARNING_SYMBOL)$(NC) .env file not found. Using default values."; \ docker login http://gitea-http.taildb3494.ts.net; \ @@ -314,9 +317,10 @@ docker-clean: ## Clean up Docker containers and volumes docker-clean-registry: ## Remove locally cached registry images $(call info,Cleaning registry images from local cache...) @if [ -f ".env" ]; then \ - . ./.env && \ - docker rmi $${CONTAINER_REGISTRY_URL}:$${CONTAINER_TAG} 2>/dev/null || true && \ - docker rmi $${CONTAINER_REGISTRY_URL}:latest 2>/dev/null || true; \ + REGISTRY_URL=$$(grep '^CONTAINER_REGISTRY_URL=' .env | cut -d'=' -f2 | sed 's|^https\?://||') && \ + CONTAINER_TAG=$$(grep '^CONTAINER_TAG=' .env | cut -d'=' -f2) && \ + docker rmi $${REGISTRY_URL}:$${CONTAINER_TAG} 2>/dev/null || true && \ + docker rmi $${REGISTRY_URL}:latest 2>/dev/null || true; \ else \ docker rmi http://gitea-http.taildb3494.ts.net/will/unitforge:latest 2>/dev/null || true; \ fi @@ -419,8 +423,9 @@ status: ## Show project status @echo "" @echo -e "$(YELLOW)Container Registry:$(NC)" @if [ -f ".env" ]; then \ - . ./.env && \ - echo " ✓ Registry URL: $${CONTAINER_REGISTRY_URL}"; \ + REGISTRY_URL=$$(grep '^CONTAINER_REGISTRY_URL=' .env | cut -d'=' -f2) && \ + CONTAINER_TAG=$$(grep '^CONTAINER_TAG=' .env | cut -d'=' -f2) && \ + echo " ✓ Registry URL: $${REGISTRY_URL}"; \ echo " ✓ Container Tag: $${CONTAINER_TAG}"; \ else \ echo " ⚠ .env file not found - using defaults"; \