The nightly build artifacts are here. On the steeplechase machine, we need to download both firefox-33.0a1.en-US.linux-x86_64.tar.bz2 and firefox-33.0a1.en-US.linux-x86_64.tests.zip. We will then unpack them appropriately:
mkdir firefox-releases cd firefox-releases mv ~/Downloads/firefox* . tar xvfz firefox*.tab.bz2 mkdir tests cd tests unzip ../firefox*.zip
We have to have node running on this machine:
mozilla@jenkins-steeplechase:~$ cd simplesignalling/ mozilla@jenkins-steeplechase:~/simplesignalling$ ls package.json README.md server.js mozilla@jenkins-steeplechase:~/simplesignalling$ nodejs server.js
We need to start the agent on the two Negatus machines:
mozilla@ubuntu:~/src$ cd Negatus/ mozilla@ubuntu:~/src/Negatus$ git pull Already up-to-date. mozilla@ubuntu:~/src/Negatus$ ./agent Command handler listening on 0.0.0.0:20701 Heartbeat handler listening on 0.0.0.0:20700 Query url: IPADDR=0.0.0.0%3A20701&NAME=SUTAgent No SUTAgent.ini data. No reboot callback data.
Mmm. It looks like I forgot a step. Running server.js should have output something. Looking back on our internal notes, I needed to run this:
npm install socket.io@0.9.6
If you do that from the simplesignalling directory, it will fail kind of like:
npm ERR! Error: Invalid version: "0.1" npm ERR! at Object.module.exports.fixVersionField (/usr/lib/nodejs/normalize-package-data/lib/fixer.js:178:13) npm ERR! at /usr/lib/nodejs/normalize-package-data/lib/normalize.js:29:38 npm ERR! at Array.forEach (native) npm ERR! at normalize (/usr/lib/nodejs/normalize-package-data/lib/normalize.js:28:15)
Once you install this correctly, then server.js will output something correctly:
mozilla@jenkins-steeplechase:~/simplesignalling$ nodejs server.js info - socket.io started
Now, we are ready to try to run steeplechase.
mozilla@jenkins-steeplechase:~/steeplechase$ python `pwd`/steeplechase/runsteeplechase.py --binary /home/mozilla/firefox-releases/firefox/firefox --specialpowers-path /home/mozilla/firefox-releases/tests/steeplechase/specialpowers --prefs-file /home/mozilla/firefox-releases/tests/steeplechase/prefs_general.js --signalling-server 'http://172.16.141.51:8080/' --html-manifest /home/mozilla/firefox-releases/tests/steeplechase/tests/steeplechase.ini --host1 172.16.141.52:20701 --host2 172.16.141.53:20701 steeplechase INFO | Pushing app to Client 1... steeplechase INFO | Pushing app to Client 2... Writing profile for Client 1... Pushing profile to Client 1... cmd: ['/tmp/tests/steeplechase/app/firefox', '-no-remote', '-profile', '/tmp/tests/steeplechase/profile', 'http://172.16.141.51:59367/index.html'] Writing profile for Client 2... Pushing profile to Client 2... cmd: ['/tmp/tests/steeplechase/app/firefox', '-no-remote', '-profile', '/tmp/tests/steeplechase/profile', 'http://172.16.141.51:59367/index.html'] steeplechase INFO | Waiting for results... steeplechase INFO | All clients finished steeplechase INFO | Result summary: steeplechase INFO | Passed: 112 steeplechase INFO | Failed: 0 mozilla@jenkins-steeplechase:~/steeplechase$
It worked! We have a running lab on Linux now.
Next step: Get Jenkins to invoke this.
No comments:
Post a Comment