From 9ad1e74a88ad5f9e74d97d16e2ef20cd99c422e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Caletka?= Date: Mon, 27 Aug 2018 21:59:54 +0200 Subject: [PATCH] Fix no reconfig command issued on zone file rename. --- dzonegit.py | 2 +- test_dzonegit.py | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/dzonegit.py b/dzonegit.py index 58b1944..88669d2 100644 --- a/dzonegit.py +++ b/dzonegit.py @@ -146,7 +146,7 @@ def get_altered_files(against, diff_filter=None, revision=None): If revision is None, list changes between staging area and revision. Otherwise differences between two revisions are computed. """ - cmd = ["git", "diff", "--name-only", "-z"] + cmd = ["git", "diff", "--name-only", "-z", "--no-renames"] if diff_filter: cmd.append("--diff-filter={}".format(diff_filter)) if revision: diff --git a/test_dzonegit.py b/test_dzonegit.py index 548d413..e200c54 100644 --- a/test_dzonegit.py +++ b/test_dzonegit.py @@ -340,9 +340,19 @@ def test_post_receive(git_dir): "echo TEST >{}/test".format(codir), ]) dzonegit.post_receive(stdin) - dzonegit.post_receive(stdin) # Check coping with existing codir assert codir.join("dummy.zone").check() assert codir.join("test").read() == "TEST\n" + # Test reconfig after renaming the file + codir.join("test").write("") + subprocess.call(["git", "mv", "dummy.zone", "dummy.zone.old"]) + subprocess.call(["git", "commit", "-m", "rename dummy zone"]) + revisions = "{} {} refs/heads/master\n".format( + head, + dzonegit.get_head(), + ) + stdin = StringIO(revisions) + dzonegit.post_receive(stdin) + assert codir.join("test").read() == "TEST\n" def test_template_config(git_dir):