添加GitHub仓库配置工具
This commit is contained in:
+127
@@ -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()
|
||||
Reference in New Issue
Block a user