添加GitHub仓库配置工具

This commit is contained in:
xie236393
2025-02-26 21:44:57 +08:00
parent 3d2b47209b
commit 135e093311
2 changed files with 132 additions and 0 deletions
+127
View File
@@ -0,0 +1,127 @@
import os
import json
import time
import requests
from getpass import getpass
import webbrowser
from pathlib import Path
def setup_github():
"""一键设置GitHub仓库"""
print("""
=== WanAPI GitHub仓库设置向导 ===
这个向导将帮助您:
1. 创建GitHub个人访问令牌(Token)
2. 创建专用的图片仓库
3. 自动配置WanAPI
""")
# 获取用户输入
email = input("\n请输入GitHub邮箱: ").strip()
# 指导用户创建token
print("""
\n=== 创建访问令牌(Token) ===
1. 正在为您打开GitHub Token创建页面...
2. 请登录GitHub(如果需要)
3. 在打开的页面中:
- 设置Token名称为:WanAPI
- 设置有效期为:No expiration
- 勾选 repo 权限
- 点击最下方的 [Generate token] 按钮
4. 复制生成的token
""")
# 打开token创建页面
webbrowser.open('https://github.com/settings/tokens/new')
token = getpass("\n请粘贴生成的Token: ").strip()
if not token:
print("❌ Token不能为空")
return
# 验证token
headers = {
"Authorization": f"token {token}",
"Accept": "application/vnd.github.v3+json"
}
try:
# 验证token
user_response = requests.get(
"https://api.github.com/user",
headers=headers
)
if user_response.status_code != 200:
print("❌ Token无效,请检查是否正确复制")
return
username = user_response.json()['login']
print(f"\n✅ Token验证成功!欢迎 {username}")
# 创建仓库
repo_name = "wanapi-images"
repo_data = {
"name": repo_name,
"description": "WanAPI图片存储仓库",
"private": False,
"auto_init": True
}
print(f"\n正在创建仓库 {repo_name}...")
repo_response = requests.post(
"https://api.github.com/user/repos",
headers=headers,
json=repo_data
)
if repo_response.status_code == 201:
print("✅ 仓库创建成功!")
elif repo_response.status_code == 422:
print("ℹ️ 仓库已存在,继续使用")
else:
print(f"❌ 仓库创建失败:{repo_response.json().get('message')}")
return
# 更新配置文件
config_path = Path(__file__).parent / 'config.json'
try:
if config_path.exists():
with open(config_path, 'r', encoding='utf-8') as f:
config = json.load(f)
else:
config = {}
config.update({
"GITHUB_TOKEN": token,
"GITHUB_REPO": f"{username}/{repo_name}",
"GITHUB_BRANCH": "main"
})
with open(config_path, 'w', encoding='utf-8') as f:
json.dump(config, f, indent=4, ensure_ascii=False)
print(f"""
=== 设置完成 ===
✅ 配置已更新:
- 仓库:{username}/{repo_name}
- Token:{token[:4]}...{token[-4:]}
- 分支:main
🎉 现在您可以:
1. 重启ComfyUI
2. 使用WanAPI节点上传图片和生成视频了!
""")
except Exception as e:
print(f"❌ 配置文件更新失败:{str(e)}")
return
except Exception as e:
print(f"❌ 设置失败:{str(e)}")
return
if __name__ == "__main__":
setup_github()