On 6/16/2015 11:19 AM, ISHIKAWA, Chiaki wrote:
A BUG on tryserver (?)

Careful analysis of the failure in the C-C TB tryserver log reveals that
tryserver does not seem to follow the desired order of patches
for M-C portion of the tree.

The tool works by listing the mozilla-* files, sorting them, and then applying them in order. There is a bug in that, under certain circumstances, it could try to apply patches due to working directory reuse on build slaves.

I resolved most try issues by writing a bash script that handles the push for me. Here is what it looks like:
#!/bin/bash

changed=$(hg stat -m -a -r -d)
if [ -n "$changed" ]; then
  echo "ERROR: You have pending changes. Not doing anything."
  exit 1
fi
if [[ "$1" == "--patch" ]]; then
  echo "Adding mozilla patches"
  mozrepo=$(hg root)/mozilla
  ccrepo=$(hg root)
  i=0
  for patch in $(hg -R $mozrepo qapplied); do
    outpatch=$(printf "$ccrepo/mozilla-%04d-%s.patch" $i $patch)
    hg diff -R $mozrepo -c $patch > $outpatch
    hg add $outpatch
    i=$(($i + 1))
  done

sed -i -e 's/--hgtool=[^ ]*/--apply-patches &/' $ccrepo/build/client.py-args #sed -i -e '/ALWAYS_RUN_CLIENT_PY/d' $ccrepo/mail/config/mozconfigs/win32/*
  shift
fi
if [ -z "$@" ]; then
  syntax="try: -b -do -p all -u all -t none"
else
  syntax="$@"
fi
hg qnew '~~~try~~~' -m "$syntax"
hg push -f ssh://hg.mozilla.org/try-comm-central
#hg phase -f -d qbase:qtip
hg qpop
hg qrm '~~~try~~~'


[Yes, some lines are commented out--I've copied this script and tweaked it as I found or unfound issues over the years.]

--
Joshua Cranmer
Thunderbird and DXR developer
Source code archæologist

_______________________________________________
dev-builds mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-builds

Reply via email to