diff --git a/openstack_releases/cmds/list_changes.py b/openstack_releases/cmds/list_changes.py index 792d2cc17e..8e4d0b09af 100644 --- a/openstack_releases/cmds/list_changes.py +++ b/openstack_releases/cmds/list_changes.py @@ -393,7 +393,8 @@ def main(): previous_tag = gitutils.get_latest_tag( workdir, project.repo.name, - '{}^'.format(project.hash) + '{}^'.format(project.hash), + always=False, ) try: previous_release = deliv.get_release(previous_tag) @@ -582,7 +583,7 @@ def main(): notes = release_notes.generate_release_notes( repo=project.repo.name, repo_path=os.path.join(workdir, project.repo.name), - start_revision=new_release.diff_start or start_range, + start_revision=new_release.diff_start or start_range or '', end_revision=new_release.version, show_dates=True, skip_requirement_merges=True, diff --git a/openstack_releases/gitutils.py b/openstack_releases/gitutils.py index 60fba27f77..65b243272c 100644 --- a/openstack_releases/gitutils.py +++ b/openstack_releases/gitutils.py @@ -262,10 +262,13 @@ def check_ancestry(workdir, repo, old_version, sha): return False -def get_latest_tag(workdir, repo, sha=None): - cmd = ['git', 'describe', '--abbrev=0', '--always'] +def get_latest_tag(workdir, repo, sha=None, always=True): + cmd = ['git', 'describe', '--abbrev=0'] + if always: + cmd.append('--always') if sha is not None: cmd.append(sha) + LOG.debug(' '.join(cmd)) try: return processutils.check_output( cmd,