##// END OF EJS Templates
tests: migrate the pytype test to a shell script for easier CI processing...
tests: migrate the pytype test to a shell script for easier CI processing There have been recent hangs and timeout, but it's hard to debug because the *.t test redirects output to a file and only prints it if `pytype` actually exits. This shell script can be run directly by CI, and will allow more flexibility to try to cache and restore type stubs for further speed increases.

File last commit:

r49546:fba2d7fa default
r50396:08c3ecd8 stable
Show More
phab-refresh-stack.sh
47 lines | 1.3 KiB | application/x-sh | BashLexer
/ contrib / phab-refresh-stack.sh
contrib: add a small script to refresh all diff in the current stack...
r46605 #!/bin/bash
set -eu
phabricator-refresh: add a magic value to skip it in the CI...
r49546 if [[ "$PHABRICATOR_TOKEN" == "NO-PHAB" ]]; then
echo 'Skipping Phabricator Step' >&2
exit 0
fi
phab-refresh: do not pick draft changeset from the bare "default" branch...
r46658 revision_in_stack=`hg log \
--rev '.#stack and ::. and topic()' \
-T '\nONE-REV\n' \
| grep 'ONE-REV' | wc -l`
revision_on_phab=`hg log \
--rev '.#stack and ::. and topic() and desc("re:\nDifferential Revision: [^\n]+D\d+$")'\
-T '\nONE-REV\n' \
| grep 'ONE-REV' | wc -l`
contrib: add a small script to refresh all diff in the current stack...
r46605
if [[ $revision_in_stack -eq 0 ]]; then
echo "stack is empty" >&2
phab-refresh: do not error out when the stack is empty...
r46637 exit 0
contrib: add a small script to refresh all diff in the current stack...
r46605 fi
if [[ $revision_on_phab -eq 0 ]]; then
echo "no tracked diff in this stack" >&2
exit 0
fi
if [[ $revision_on_phab -lt $revision_in_stack ]]; then
echo "not all stack changesets (${revision_in_stack}) have matching Phabricator Diff (${revision_on_phab})" >&2
exit 2
fi
if [[ "$PHABRICATOR_TOKEN" == "" ]]; then
echo 'missing $PHABRICATOR_TOKEN variable' >&2
phabricator-refresh: add a magic value to skip it in the CI...
r49546 echo '(use PHABRICATOR_TOKEN="NO-PHAB" to disable this step)' >&2
contrib: add a small script to refresh all diff in the current stack...
r46605 exit 2
fi
hg \
--config extensions.phabricator= \
--config phabricator.url=https://phab.mercurial-scm.org/ \
--config phabricator.callsign=HG \
--config auth.phabricator.schemes=https \
--config auth.phabricator.prefix=phab.mercurial-scm.org \
--config auth.phabricator.phabtoken=$PHABRICATOR_TOKEN \
phab-refresh: do not pick draft changeset from the bare "default" branch...
r46658 phabsend --rev '.#stack and ::. and topic()' \
phab-refresh: allow passing additional argument to the phabsend...
r46659 "$@"