#!/usr/bin/env python3 """ 安装自动部署功能所需的依赖 运行方式: python scripts/install_deploy_deps.py """ import subprocess import sys def install_package(package_name: str) -> bool: """安装 Python 包""" try: print(f"正在安装 {package_name}...") subprocess.check_call( [sys.executable, "-m", "pip", "install", package_name], stdout=subprocess.PIPE, stderr=subprocess.PIPE, ) print(f"✅ {package_name} 安装成功") return True except subprocess.CalledProcessError as e: print(f"❌ {package_name} 安装失败: {e}") return False def check_package(package_name: str) -> bool: """检查包是否已安装""" try: __import__(package_name) print(f"✅ {package_name} 已安装") return True except ImportError: print(f"⚠️ {package_name} 未安装") return False def main(): """主函数""" print("=" * 60) print("🔧 自动部署功能依赖安装工具") print("=" * 60) print() # 检查并安装 paramiko print("检查 paramiko 库...") if not check_package("paramiko"): if install_package("paramiko"): print("✅ paramiko 安装完成") else: print("❌ paramiko 安装失败,请手动安装: pip install paramiko") sys.exit(1) print() print("=" * 60) print("✅ 所有依赖已安装完成!") print("=" * 60) print() print("现在可以使用自动部署功能了:") print(" python scripts/auto_execute_tasks.py --test-connection") print() if __name__ == "__main__": main()