summaryrefslogtreecommitdiff
path: root/ybd/release_note.py
diff options
context:
space:
mode:
authorBen Brown <ben.brown@codethink.co.uk>2017-05-22 16:45:31 +0100
committerBen Brown <ben.brown@codethink.co.uk>2017-05-22 16:45:31 +0100
commitec4e3e613366a89b1fcaa50f707a9e54c4550a24 (patch)
treebd04c10ba622286a795c80ccf8195dd3ab23ab25 /ybd/release_note.py
parent851a16777605ae94fcfdaefed2ac8245f11e87a7 (diff)
downloadybd-ec4e3e613366a89b1fcaa50f707a9e54c4550a24.tar.gz
Fix refs used for release command
Diffstat (limited to 'ybd/release_note.py')
-rw-r--r--ybd/release_note.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/ybd/release_note.py b/ybd/release_note.py
index 1b94932..3646278 100644
--- a/ybd/release_note.py
+++ b/ybd/release_note.py
@@ -90,14 +90,15 @@ def log_changes(dn, tmpdir, old_defs, ref):
try:
gitdir = os.path.join(config['gits'],
get_repo_name(dn['repo']))
+ cur_ref = dn.get('sha', dn['ref'])
+ old_ref = old_def.get('sha', old_def['ref'])
if not os.path.exists(gitdir):
mirror(dn['name'], dn['repo'])
- elif not mirror_has_ref(gitdir, ref):
+ elif not mirror_has_ref(gitdir, cur_ref) or \
+ not mirror_has_ref(gitdir, old_ref):
update_mirror(dn['name'], dn['repo'], gitdir)
with chdir(gitdir):
- text = dn['ref'] + '..'
- if old_def and old_def.get('ref'):
- text += old_def['ref']
+ text = cur_ref + '..' + old_ref
f.write(check_output(config['release-cmd'] + [text]))
except:
log(dn, 'WARNING: Failed to log git changes')