release.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:python_iotile_cloud 作者: iotile 项目源码 文件源码
def get_release_notes(component, version):
    _, relative_compath = comp_names[component]
    notes_path = os.path.join(relative_compath, 'RELEASE.md')

    try:
        with open(notes_path, "r") as f:
            lines = f.readlines()
    except IOError:
        print("ERROR: Could not find release notes file RELEASE.md")
        sys.exit(1)

    release_lines = {y[2:].strip(): x for x, y in enumerate(lines) if y.startswith('##')}

    if version not in release_lines:
        print("ERROR: Could not find release notes for current release version")
        sys.exit(1)

    start_line = release_lines[version]
    past_releases = [x for x in release_lines.itervalues() if x > start_line]

    if len(past_releases) == 0:
        release_string = "".join(lines[start_line+1:])
    else:
        release_string = "".join(lines[start_line:min(past_releases)])

    if len(release_string) == 0:
        print("ERROR: Empty release notes for current release version")
        sys.exit(1)

    return release_string
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号