代码拉取完成,页面将自动刷新
同步操作将从 openEuler/infrastructure 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import oyaml as yaml
import os
import sys
def transferyaml(oldyamlname, newyamlname):
file_path = os.path.split(os.path.realpath(__file__))[0]
newyaml_patch = os.path.join(file_path, newyamlname)
newyaml = open(newyaml_patch, 'w', encoding="utf-8")
version = {"format_version": 2.0}
yaml.dump(version, newyaml)
oldyamlpath = os.path.join(file_path, oldyamlname)
with open(oldyamlpath, 'r', encoding="utf-8") as yaml_file:
content = yaml.load(yaml_file.read())
oldcomm = content["community"]
community = {"community": oldcomm}
yaml.dump(community, newyaml)
repolist = content["repositories"]
repodata = {}
repos = []
for repo in repolist:
newrepo = {}
for key in repo.keys():
if key == 'protected_branches':
allbr = []
for protectedbr in repo[key]:
br = {}
br['name'] = protectedbr
br['type'] = 'protected'
if protectedbr != 'master':
br['create_from'] = 'master'
allbr.append(br)
newrepo['branches'] = allbr
else:
newrepo[key] = repo[key]
repos.append(newrepo)
repodata['repositories'] = repos
yaml.dump(repodata, newyaml)
return
if __name__ == '__main__':
if len(sys.argv) != 3:
print("Param error, you should like this: \n python transferrepoyaml.py oldfile.yaml newfile.yaml")
sys.exit()
oldyamlname = sys.argv[1]
newyamlname = sys.argv[2]
transferyaml(oldyamlname, newyamlname)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。