This commit is contained in:
69
Makefile
69
Makefile
@@ -175,6 +175,75 @@ format: ## Форматирование кода
|
||||
@docker-compose exec frontend npm run format || true
|
||||
@echo "✅ Код отформатирован"
|
||||
|
||||
# === CI/CD Operations ===
|
||||
|
||||
ci-lint: ## Локальный запуск CI линтинга
|
||||
@echo "🔍 Запуск CI линтинга локально..."
|
||||
@bash ./scripts/ci/lint.sh
|
||||
@echo "✅ CI линтинг завершен"
|
||||
|
||||
ci-test: ## Локальный запуск CI тестов
|
||||
@echo "🧪 Запуск CI тестов локально..."
|
||||
@bash ./scripts/ci/test.sh
|
||||
@echo "✅ CI тесты завершены"
|
||||
|
||||
ci-security: ## Локальный запуск проверки безопасности
|
||||
@echo "🔒 Запуск проверки безопасности..."
|
||||
@bash ./scripts/ci/security-scan.sh
|
||||
@echo "✅ Проверка безопасности завершена"
|
||||
|
||||
ci-build: ## Локальная сборка как в CI
|
||||
@echo "🏗️ Запуск CI сборки локально..."
|
||||
@bash ./scripts/ci/build.sh
|
||||
@echo "✅ CI сборка завершена"
|
||||
|
||||
ci-build-prod: ## Локальная сборка продакшен образов
|
||||
@echo "🏗️ Сборка продакшен образов..."
|
||||
@bash ./scripts/ci/build-production.sh
|
||||
@echo "✅ Продакшен образы собраны"
|
||||
|
||||
ci-publish: ## Публикация образов в registry
|
||||
@echo "📤 Публикация образов..."
|
||||
@bash ./scripts/ci/publish.sh
|
||||
@echo "✅ Образы опубликованы"
|
||||
|
||||
ci-deploy-staging: ## Деплой на staging
|
||||
@echo "🚀 Деплой на staging..."
|
||||
@bash ./scripts/ci/deploy-staging.sh
|
||||
@echo "✅ Staging деплой завершен"
|
||||
|
||||
ci-deploy-production: ## Деплой на production
|
||||
@echo "🚀 Деплой на production..."
|
||||
@bash ./scripts/ci/deploy-production.sh
|
||||
@echo "✅ Production деплой завершен"
|
||||
|
||||
ci-pipeline: ## Полный CI/CD пайплайн локально
|
||||
@echo "🚀 Запуск полного CI/CD пайплайна..."
|
||||
@$(MAKE) ci-lint
|
||||
@$(MAKE) ci-test
|
||||
@$(MAKE) ci-security
|
||||
@$(MAKE) ci-build
|
||||
@echo "✅ Полный пайплайн завершен"
|
||||
|
||||
drone-validate: ## Валидация .drone.yml
|
||||
@echo "✅ Валидация Drone конфигурации..."
|
||||
@if command -v drone >/dev/null 2>&1; then \
|
||||
drone lint .drone.yml; \
|
||||
else \
|
||||
echo "⚠️ Drone CLI не установлен, используем docker..."; \
|
||||
docker run --rm -v "$(PWD):/repo" -w /repo drone/cli:alpine lint .drone.yml; \
|
||||
fi
|
||||
@echo "✅ Валидация завершена"
|
||||
|
||||
drone-sign: ## Подпись .drone.yml (требует настройки)
|
||||
@echo "🔐 Подпись Drone конфигурации..."
|
||||
@if [ -z "$(DRONE_SECRET)" ]; then \
|
||||
echo "❌ DRONE_SECRET не установлен"; \
|
||||
exit 1; \
|
||||
fi
|
||||
@drone sign smartsoltech/links --save
|
||||
@echo "✅ Конфигурация подписана"
|
||||
|
||||
# === Helper scripts and automation ===
|
||||
generate-env: ## Сгенерировать .env (интерактивно)
|
||||
@echo "🧭 Генерация .env файла (использует scripts/generate_env.sh)"
|
||||
|
||||
Reference in New Issue
Block a user