代码拉取完成,页面将自动刷新
同步操作将从 anolis/keentune_brain 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import re
import os
import sys
from datetime import datetime
""" warpping the KeenTune module keentune-brain
This script will
1. Check the version number in *.spec and setup.py
2. Check the date of changelog in *.spec
3. Pick necessary file to a folder named as keentune-brain-{version}
4. Pack the folder to .tar.gz
5. Get a copy of *.spec.
You can run this script in any position as
python3 /path/in/your/environment/packup.py
"""
source_dir = os.path.split(os.path.realpath(__file__))[0]
def dateCheck(spec):
date_items = re.findall(r"\* (\w+) (\w+) (\d+) (\d+) .*",spec)
for date in date_items:
_date = datetime.strptime("{} {} {}".format(date[3], date[1], date[2]),"%Y %b %d")
if not _date.strftime("%a") == date[0]:
raise Exception("week error:'{}', should be '{}'".format(date, _date.strftime("%a")))
def warppingCheck():
with open(os.path.join(source_dir,"keentune-brain.spec"),'r') as f:
spec = f.read()
version_in_spec = re.search("Version: ([\d.]+)\n",spec).group(1)
release_in_spec = re.search("define anolis_release (\d)\n",spec).group(1)
print("Get version: {}-{}".format(version_in_spec, release_in_spec))
dateCheck(spec)
if re.search(" - {}-{}".format(version_in_spec, release_in_spec), spec):
print("[OK] check the version of changelog at keentune-brain.spec.")
else:
print("[Failed] wrong version number in changelog at keentune-brain.spec.")
return
with open(os.path.join(source_dir,"setup.py"), 'r') as f:
script = f.read()
if re.search('version = "{}",'.format(version_in_spec),script):
print("[OK] check the version of setup.py.")
else:
print("[Failed] wrong version number in setup.py.")
return
print("Start wrap up of keentune-brain-{}-{}".format(version_in_spec, release_in_spec))
return version_in_spec, release_in_spec
if __name__ == "__main__":
version_in_spec, _ = warppingCheck()
if os.path.exists("keentune-brain-{}".format(version_in_spec)):
os.system("rm -rf keentune-brain-{}".format(version_in_spec))
os.system("mkdir keentune-brain-{}".format(version_in_spec))
os.system("cp -r {} keentune-brain-{}".format(os.path.join(source_dir,"brain"), version_in_spec))
os.system("cp -r {} keentune-brain-{}".format(os.path.join(source_dir,"man"), version_in_spec))
os.system("cp -r {} keentune-brain-{}".format(os.path.join(source_dir,"keentune-brain.service"), version_in_spec))
os.system("cp -r {} keentune-brain-{}".format(os.path.join(source_dir,"LICENSE"), version_in_spec))
os.system("cp -r {} keentune-brain-{}".format(os.path.join(source_dir,"README.md"), version_in_spec))
os.system("cp -r {} keentune-brain-{}".format(os.path.join(source_dir,"requirements.txt"), version_in_spec))
os.system("cp -r {} keentune-brain-{}".format(os.path.join(source_dir,"setup.py"), version_in_spec))
os.system("tar -cvzf keentune-brain-{}.tar.gz --exclude=**/__pycache__ keentune-brain-{}".format(
version_in_spec, version_in_spec))
if os.path.exists("keentune-brain-{}".format(version_in_spec)):
os.system("rm -rf keentune-brain-{}".format(version_in_spec))
if sys.argv.__len__() > 1 and sys.argv[1] == "a23":
os.system("cp {} ./".format(os.path.join(source_dir, "keentune-brain.a23.spec")))
os.system("mv keentune-brain.a23.spec keentune-brain.spec".format())
else:
os.system("cp {} ./".format(os.path.join(source_dir, "keentune-brain.spec")))
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。