Re: [PATCH STABLE] automation: push changes affecting .hgtags

2019-08-04 Thread Yuya Nishihara
On Sat, 03 Aug 2019 12:14:20 -0700, Gregory Szorc wrote:
> # HG changeset patch
> # User Gregory Szorc 
> # Date 1564859631 25200
> #  Sat Aug 03 12:13:51 2019 -0700
> # Branch stable
> # Node ID fcf8e489d6a667bfd2fcf066b545e52519309ee1
> # Parent  e0cf09bc35ef6d7e8554e5be98441e995c856759
> automation: push changes affecting .hgtags

Queued for stable, thanks.
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


[PATCH STABLE] automation: push changes affecting .hgtags

2019-08-03 Thread Gregory Szorc
# HG changeset patch
# User Gregory Szorc 
# Date 1564859631 25200
#  Sat Aug 03 12:13:51 2019 -0700
# Branch stable
# Node ID fcf8e489d6a667bfd2fcf066b545e52519309ee1
# Parent  e0cf09bc35ef6d7e8554e5be98441e995c856759
automation: push changes affecting .hgtags

When I went to build the 5.1 tag using the in-repo automation, the
automatic version calculation failed to deduce the clean 5.1 version
string because we had only pushed the changeset corresponding to the 5.1
tag and not the changeset containing the 5.1 tag. So from the
perspective of the remote repo, the 5.1 tag didn't exist yet and
automatic version deduction failed.

This commit changes the `hg push` to also push all changesets affecting
the .hgtags file, ensuring the remote has up-to-date tags information.

I tested this by creating a local draft changeset with a dummy tag
value on a different DAG head and instructed the automation to build
a revision that didn't have this change to .hgtags. The tag was
successfully pushed and the built package had a version number
incorporating that tag.

Sending this to stable so the 5.1.1 automation hopefully "just works."

diff --git a/contrib/automation/hgautomation/linux.py 
b/contrib/automation/hgautomation/linux.py
--- a/contrib/automation/hgautomation/linux.py
+++ b/contrib/automation/hgautomation/linux.py
@@ -485,7 +485,9 @@ def synchronize_hg(source_path: pathlib.
 'python2.7', str(hg_bin),
 '--config', 'ui.ssh=ssh -F %s' % ssh_config,
 '--config', 'ui.remotecmd=/hgdev/venv-bootstrap/bin/hg',
-'push', '-f', '-r', full_revision,
+# Also ensure .hgtags changes are present so auto version
+# calculation works.
+'push', '-f', '-r', full_revision, '-r', 'file(.hgtags)',
 'ssh://%s//hgwork/src' % public_ip,
 ]
 
diff --git a/contrib/automation/hgautomation/windows.py 
b/contrib/automation/hgautomation/windows.py
--- a/contrib/automation/hgautomation/windows.py
+++ b/contrib/automation/hgautomation/windows.py
@@ -176,7 +176,9 @@ def synchronize_hg(hg_repo: pathlib.Path
 'python2.7', hg_bin,
 '--config', 'ui.ssh=ssh -F %s' % ssh_config,
 '--config', 'ui.remotecmd=c:/hgdev/venv-bootstrap/Scripts/hg.exe',
-'push', '-f', '-r', full_revision,
+# Also ensure .hgtags changes are present so auto version
+# calculation works.
+'push', '-f', '-r', full_revision, '-r', 'file(.hgtags)',
 'ssh://%s/c:/hgdev/src' % public_ip,
 ]
 
___
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel