Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F5971992
start-rt-test.sh
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
start-rt-test.sh
View Options
#!/bin/bash
set
-eu
-o
pipefail
if
[
$#
-lt
2
]
then
echo
"USAGE: start-rt-test.sh <uid> <rt-test-id>"
echo
" - <uid> is your bastion uid you use to log in to parsoidtest1001/testreduce1002"
echo
" - <rt-test-id> is the test id to show up in the testreduce web UI (usually a 8-char prefix of a git hash)"
exit
1
fi
uid
=
$1
testid
=
$2
# By convention we truncate testids to 8 characters, but some users
# copy-and-paste full git hashes on the command line. Normalize.
testid
=
$(
echo
-n
"
$testid
"
|
head
-c
8
)
# Update code on parsoidtest1001 since RT testing scripts will hit the Parsoid REST API on parsoidtest1001
echo
"---- Updating code on parsoidtest1001 ----"
ssh
"
$uid
"
@parsoidtest1001.eqiad.wmnet
<<EOF
# No unset vars + early exit on error
set -eu -o pipefail
umask 0002 # Make sure everyone in wikidev group can write
cd /srv/parsoid-testing
git fetch
git checkout $testid
git log --oneline -n 1
sudo systemctl restart php7.4-fpm.service
EOF
echo
"---- Starting test run
$testid
on testreduce1002 ----"
ssh
"
$uid
"
@testreduce1002.eqiad.wmnet
<<EOF
# No unset vars + early exit on error
set -eu -o pipefail
# Check if we need to free disk space
df /srv/data --output=pcent | tail -n 1 | awk '0+\$1 > 80 {print; print "Free disk space to continue!\nSee https://wikitech.wikimedia.org/wiki/Parsoid/Common_Tasks#Freeing_disk_space"; exit 1}'
echo 'Stopping parsoid-rt clients ...'
sudo service parsoid-rt-client stop
echo 'Updating deploy repo checkout ...'
cd /srv/parsoid-testing
# Strictly speaking, it is not necessary to update code on testreduce1002
# It is only needed if rt-testing related code is updated.
# But, it is simpler to just update it every single time.
umask 0002 # Make sure everyone in wikidev group can write
git fetch
git checkout $testid
git log --oneline -n 1
echo 'Adding new test id ...'
echo $testid > /srv/parsoid-testing/tests/testreduce/parsoid.rt-test.ids
echo 'Starting parsoid-rt clients ...'
sudo service parsoid-rt-client restart
echo "---- Tailing logs from parsoid-rt (^C when you are satisfied) ----"
sudo journalctl -f -u parsoid-rt
EOF
File Metadata
Details
Attached
Mime Type
text/x-shellscript
Expires
Sat, Oct 3, 15:31 (8 h, 1 m ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
8d/c7/d8c7dd3e252af0d6fc655747cfa9
Default Alt Text
start-rt-test.sh (2 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment