ansible: install a custom Mercurial 4.2 with interrupt backports (bug 1387324); r?glob draft
authorGregory Szorc <gps@mozilla.com>
Tue, 15 Aug 2017 17:09:07 -0700
changeset 11524 6bfcc1c1b573268d7e7b3cd11ba2256fc6dc296f
parent 11515 4a68c88638b003644c6ce6b085b44beb9fe76b07
push id1758
push usergszorc@mozilla.com
push dateWed, 16 Aug 2017 00:25:53 +0000
reviewersglob
bugs1387324, 103052, 103053
ansible: install a custom Mercurial 4.2 with interrupt backports (bug 1387324); r?glob Mercurial 4.2 introduced a regression where IOError when writing to stderr would result in an uncaught exception being thrown during critical transaction code. We update our Mercurial package used in server processes to a custom build that restores the old behavior. The new Mercurial package has the following patches applied on top of 506d7e48fbe6: * https://www.mercurial-scm.org/pipermail/mercurial-devel/2017-August/103052.html * https://www.mercurial-scm.org/pipermail/mercurial-devel/2017-August/103053.html We only update the packages used to process `hg push` because no other processes should encounter stderr going away. MozReview-Commit-ID: yoGgou0533
ansible/roles/hg-reviewboard/files/requirements-hgweb.txt
ansible/roles/hg-ssh-server/files/requirements-pash.txt
--- a/ansible/roles/hg-reviewboard/files/requirements-hgweb.txt
+++ b/ansible/roles/hg-reviewboard/files/requirements-hgweb.txt
@@ -1,16 +1,16 @@
 # We need RBTools in the hgweb venv because we support pushing via HTTP.
 # This is different from hg.mozilla.org's configuration.
 
 --find-links https://s3-us-west-2.amazonaws.com/moz-packages/pypi/index.html
 --find-links https://downloads.reviewboard.org/releases/RBTools/0.7/
 
-Mercurial==4.2.3 \
-    --hash=sha256:04908fc7d89e5810edf3d2762f5aecce5b5c0cb8534f3dbff7d0d848d11ff7ac
+Mercurial==4.2.3-388d39276ecf \
+    --hash=sha256:e6adcc3a2222a978aaafb991f6feefe7ca4ff1cdacb81b4ccaac397dd681f588
 
 mod-wsgi==4.5.14 \
     --hash=sha256:8e6d0ccdea6872b71da2ba0fe5d46ca38a6219becc521dcdc4516992c9fe3247
 
 Pygments==2.1.1 \
     --hash=sha256:05aee25c433d6155defbfbcb6c2e2b0ebf29d28138604867b62a304bd6bbb41d
 
 python-ldap==2.4.20 \
--- a/ansible/roles/hg-ssh-server/files/requirements-pash.txt
+++ b/ansible/roles/hg-ssh-server/files/requirements-pash.txt
@@ -2,18 +2,18 @@
 --find-links https://downloads.reviewboard.org/releases/RBTools/0.7/
 
 # Kafka is in this virtualenv to support replication on the hg leader server.
 # It isn't needed on a standalone hg server. But installing it doesn't really
 # hurt.
 kafka-python==0.9.4 \
     --hash=sha256:6cd463b688d98fec1c1f602e316eb7745aef0e55dc57fe9ff2f203cf0865c8c7
 
-Mercurial==4.2.3 \
-    --hash=sha256:04908fc7d89e5810edf3d2762f5aecce5b5c0cb8534f3dbff7d0d848d11ff7ac
+Mercurial==4.2.3-388d39276ecf \
+    --hash=sha256:e6adcc3a2222a978aaafb991f6feefe7ca4ff1cdacb81b4ccaac397dd681f588
 
 python-ldap==2.4.20 \
     --hash=sha256:4b8891539a3171d993cf7896b632ff088a4c707ae85ac3c77db1454f7949f3e2
 
 # RBTools is needed to support the MozReview server. It isn't needed by the
 # hg leader server. But installing it doesn't really hurt.
 RBTools==0.7.5 \
     --hash=sha256:28809def27e530ba5c13d37be8eb9ca31a24786cc0d0bd6d682f0009d94891a4