Closed
Bug 720901
Opened 12 years ago
Closed 11 years ago
Set up continuous integration (buildbot) for Jetperf
Categories
(Add-on SDK Graveyard :: General, defect, P2)
Add-on SDK Graveyard
General
Tracking
(Not tracked)
RESOLVED
INCOMPLETE
People
(Reporter: k0scist, Unassigned)
References
Details
(Whiteboard: [jetpack+talos])
When the general form of the JetPerf software (currently at http://k0s.org/mozilla/hg/jetperf ) is approved, we should add this to buildbot. Currently, jetpack code for buildbot lives in: - http://hg.mozilla.org/build/tools/file/tip/buildfarm/utils/run_jetpack.py - http://hg.mozilla.org/build/buildbotcustom/file/tip/misc.py#l3325
Reporter | ||
Comment 1•12 years ago
|
||
Note: this is (and should be) run on changes to http://hg.mozilla.org/projects/addon-sdk
Comment 2•12 years ago
|
||
it sounds like we just need to add a talos test suite to buildbot-configs and have it run only on the addon-sdk branch. Is there something I am missing here?
Reporter | ||
Comment 3•12 years ago
|
||
I think so? AFAIK, there isn't a addon-sdk branch of m-c; we want to run on changes to the addon-sdk repo (with a firefox binary). See links in comment 1. The addon-sdk (again, AFAIK) isn't in m-c.
Priority: -- → P2
Reporter | ||
Comment 4•12 years ago
|
||
Current CI source is here: https://tbpl.mozilla.org/?usetinderbox=1&tree=Jetpack
Reporter | ||
Comment 5•12 years ago
|
||
So I am trying to reproduce the existing TBPL results locally using hg.m.o/build/tools run_jetpack.py. However, I get timeout errors: time python run_jetpack.py -p fedora -t http://hg.mozilla.org/projects/addon-sdk/archive/tip.tar.bz2 -b mozilla-central -f 'ftp://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/%(branch)s-%(platform)s' -e linux-i686.tar.bz2 <snip/> info: executing: fallback info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: tooltip fallbacks to label info: pass: widget in last test property cleaned itself up info: executing: tooltip info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: tooltip gets updated info: pass: widget in last test property cleaned itself up info: executing: allow info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: scripts are evaluated by default info: pass: widget in last test property cleaned itself up info: executing: allow info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: scripts are evaluated when we want to info: pass: widget in last test property cleaned itself up info: executing: allow info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: scripts aren't evaluated when explicitly blocked it info: pass: widget in last test property cleaned itself up info: executing: first info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: 2nd window has correct number of child elements after first widget info: executing: second info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: 2nd window has correct number of child elements after second widget info: pass: 2nd window has correct number of child elements after first destroy info: pass: 2nd window has correct number of child elements after second destroy *** e = [Exception... "Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]" nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)" location: "JS frame :: chrome://browser/content/utilityOverlay.js :: getShellService :: line 364" data: no] info: pass: widget in last test property cleaned itself up console: [JavaScript Warning: "reference to undefined property this._value" {file: "chrome://browser/content/urlbarBindings.xml" line: 669}] console: [JavaScript Warning: "setting a property that has only a getter" {file: "chrome://browser/content/browser.js" line: 3252}] info: executing: first info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: Got first widget view info: pass: Got second widget view info: pass: emit on a destroyed view should throw info: pass: widget in last test property cleaned itself up info: executing: first info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: 2nd window has correct number of child elements after widget creation info: pass: 2nd window has correct number of child elements after widget destroy info: pass: 1st window has an hidden addon-bar info: pass: 2nd window has an hidden addon-bar *** e = [Exception... "Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]" nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)" location: "JS frame :: chrome://browser/content/utilityOverlay.js :: getShellService :: line 364" data: no] info: pass: widget in last test property cleaned itself up console: [JavaScript Warning: "setting a property that has only a getter" {file: "chrome://browser/content/browser.js" line: 3252}] info: executing: text info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: a == b == 200 info: pass: a == b == 200 info: pass: a == b == 200 info: pass: a == b == 300 info: pass: a == b == 300 info: pass: widget in last test property cleaned itself up info: executing: click-content info: pass: widget node at index info: pass: widget element is correct info: pass: widget width is correct info: pass: container has correct number of child elements info: pass: found content info: pass: content is iframe or image info: pass: right click wasn't sent to click handler info: pass: widget in last test property cleaned itself up info: executing 'test-widget.testPanelWidget1' info: pass: Menu separator should be present info: pass: Menu separator should be a <menuseparator> info: pass: Overflow submenu should be absent error: TEST FAILED: test-widget.testPanelWidget1 (failure) error: fail: Item should be present in top-level menu info: Traceback (most recent call last): File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/timer.js", line 38, in notify this.callback.apply(null, this.arguments); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1876, in null callback.call(self, evt); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 2016, in null onshownCallback.call(this, popup); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 573, in null test.checkMenu([item], [], []); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1743, in null this.checkPresentItems(presentItems); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1806, in null recurse.call(this, this.contextMenuPopup, presentItems, true); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1803, in recurse }, this); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1792, in null "Item should be present in top-level menu"); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 129, in assert this.fail(message); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 67, in fail this.console.trace(); info: pass: Item DOM element should be a xul:menuitem info: pass: Item should have correct title info: pass: Item should not have image info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label info: pass: Item label should be < next item's label error: fail: Item label should be < next item's label info: Traceback (most recent call last): File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/timer.js", line 38, in notify this.callback.apply(null, this.arguments); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1876, in null callback.call(self, evt); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 2016, in null onshownCallback.call(this, popup); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 573, in null test.checkMenu([item], [], []); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1746, in null this.checkSort(presentItems); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1855, in null "Item label should be < next item's label"); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 129, in assert this.fail(message); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 67, in fail this.console.trace(); error: fail: Item label should be < next item's label info: Traceback (most recent call last): File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/timer.js", line 38, in notify this.callback.apply(null, this.arguments); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1876, in null callback.call(self, evt); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 2016, in null onshownCallback.call(this, popup); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 573, in null test.checkMenu([item], [], []); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1746, in null this.checkSort(presentItems); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1855, in null "Item label should be < next item's label"); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 129, in assert this.fail(message); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 67, in fail this.console.trace(); error: fail: The first item in sorted order should have the first element in sorted order (15 != 1) info: Traceback (most recent call last): File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/timer.js", line 38, in notify this.callback.apply(null, this.arguments); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1876, in null callback.call(self, evt); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 2016, in null onshownCallback.call(this, popup); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 573, in null test.checkMenu([item], [], []); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1746, in null this.checkSort(presentItems); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1860, in null "The first item in sorted order should have the " + File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 160, in assertEqual this.fail(message); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 67, in fail this.console.trace(); info: pass: about:buildconfig page-mod to be executed info: executing 'test-widget.testPanelWidget2' info: pass: widget.panel must be a Panel object info: executing 'test-widget.testPanelWidget3' info: pass: onClick called on click for widget with both panel and onClick error: TEST FAILED: test-widget.testPanelWidget3 (failure) error: fail: Menu separator should be absent info: Traceback (most recent call last): File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/timer.js", line 38, in notify this.callback.apply(null, this.arguments); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1876, in null callback.call(self, evt); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 2016, in null onshownCallback.call(this, popup); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 581, in null test.checkMenu([], [], [item]); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1741, in null this.checkSeparator(presentItems); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1835, in null this.test.assert(!sep || sep.hidden, "Menu separator should be absent"); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 129, in assert this.fail(message); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 67, in fail this.console.trace(); info: pass: Overflow submenu should be absent error: fail: Item should be removed from top-level menu info: Traceback (most recent call last): File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/timer.js", line 38, in notify this.callback.apply(null, this.arguments); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1876, in null callback.call(self, evt); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 2016, in null onshownCallback.call(this, popup); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 581, in null test.checkMenu([], [], [item]); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1745, in null this.checkRemovedItems(removedItems); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1815, in null this.test.assert(!elt, "Item should be removed from top-level menu"); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 129, in assert this.fail(message); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 67, in fail this.console.trace(); error: fail: Item should be removed from overflow submenu info: Traceback (most recent call last): File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/timer.js", line 38, in notify this.callback.apply(null, this.arguments); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1876, in null callback.call(self, evt); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 2016, in null onshownCallback.call(this, popup); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 581, in null test.checkMenu([], [], [item]); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1745, in null this.checkRemovedItems(removedItems); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/addon-kit/tests/test-context-menu.js", line 1820, in null this.test.assert(!elt, "Item should be removed from overflow submenu"); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 129, in assert this.fail(message); File "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/unit-test.js", line 67, in fail this.console.trace(); error: An exception occurred. Traceback (most recent call last): File "chrome://browser/content/tabbrowser.xml", line 1493, in removeTab if (!this._beginRemoveTab(aTab, false, null, true)) File "chrome://browser/content/tabbrowser.xml", line 1548, in _beginRemoveTab let ds = browser.docShell; TypeError: browser is null info: executing 'test-widget.testWidgetMessaging' info: pass: a == b == "foo" info: executing 'test-widget.testWidgetMove' info: pass: Got first ready event info: pass: Got second ready event info: pass: Got message after node move info: executing 'test-widget.testWidgetViews' info: pass: WidgetView created info: pass: Got message in WidgetView info: pass: WidgetView destroyed info: executing 'test-widget.testWidgetViewsCustomEvents' info: pass: event argument is valid on WidgetView info: pass: event argument is valid on Widget info: executing 'test-widget.testWidgetViewsTooltip' info: pass: view tooltip defaults to base widget label info: pass: tooltip defaults to base widget label info: executing 'test-widget.testWidgetViewsUIEvents' info: pass: Got attach event info: pass: event first argument is equal to the WidgetView info: pass: widget.getView return the same WidgetView info: executing 'test-widget.testWidgetWithPound' console: [JavaScript Warning: "reference to undefined property obj.tagName" {file: "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/cuddlefish.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/sandbox.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/data/content-proxy.js" line: 531}] console: [JavaScript Warning: "reference to undefined property obj.tagName" {file: "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/cuddlefish.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/sandbox.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/data/content-proxy.js" line: 531}] info: pass: found widget node in the front-end info: pass: content updated to pound? info: executing 'test-clipboard.testNotInFlavor' info: pass: assertion successful info: pass: a == b == null info: executing 'test-clipboard.testWithFlavor' info: pass: assertion successful info: pass: a == b == "text" info: pass: a == b == "html" info: pass: a == b == "hello there" info: pass: a == b == "<b>hello there</b>" info: pass: a == b == "<b>hello there</b>" info: pass: a == b == "hello there" info: pass: a == b == "hello there" info: executing 'test-clipboard.testWithNoFlavor' info: pass: assertion successful info: pass: a == b == "text" info: pass: a == b == "hello there" info: pass: a == b == "hello there" info: pass: a == b == "hello there" info: executing 'test-clipboard.testWithRedundantFlavor' info: pass: assertion successful info: pass: a == b == "text" info: pass: a == b == "<b>hello there</b>" info: pass: a == b == "<b>hello there</b>" info: pass: a == b == "<b>hello there</b>" info: executing 'test-passwords.test addon associated credentials' info: pass: `addon:` uri is used for add-on credentials info: pass: username matches info: pass: password matches info: pass: realm matches info: pass: `formSubmitURL` is `null` for add-on credentials info: pass: usernameField is empty info: pass: passwordField is empty info: pass: credential is removed info: executing 'test-passwords.test can't store same login twice' info: pass: credential saved console: [JavaScript Error: "uncaught exception: This login already exists." {file: "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/cuddlefish.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/passwords/utils.js" line: 90}] info: pass: re-saving credential failed info: pass: credential was removed info: executing 'test-passwords.test exceptions in onComplete are reported' info: pass: Error thrown is reported info: executing 'test-passwords.test onComplete is optional' info: pass: exception is not thrown if `onComplete is missing info: executing 'test-passwords.test remove fails if no login found' console: [JavaScript Error: "uncaught exception: No matching logins" {file: "resource:///components/nsLoginManager.js" line: 438}] console: [JavaScript Error: "uncaught exception: [Exception... "'No matching logins' when calling method: [nsILoginManagerStorage::removeLogin]" nsresult: "0x8057001e (NS_ERROR_XPC_JS_THREW_STRING)" location: "JS frame :: resource:///components/nsLoginManager.js :: <TOP_LEVEL> :: line 438" data: no]" {file: "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/cuddlefish.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/passwords/utils.js" line: 100}] info: pass: can't remove unstored credentials info: executing 'test-passwords.test site authentication credentials' info: pass: url matches info: pass: username matches info: pass: password matches info: pass: realm matches info: pass: formSubmitURL is null info: pass: usernameField is empty info: pass: passwordField is empty info: pass: credential is removed info: executing 'test-passwords.test store requires `password` field' console: [JavaScript Error: "uncaught exception: Can't add a login with a null or empty password." {file: "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/cuddlefish.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/passwords/utils.js" line: 90}] info: pass: '`password` is required info: executing 'test-passwords.test store requires `realm` field' console: [JavaScript Error: "uncaught exception: Can't add a login without a httpRealm or formSubmitURL." {file: "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/cuddlefish.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/passwords/utils.js" line: 90}] info: pass: '`realm` is required info: executing 'test-passwords.test store requires `username` field' console: [JavaScript Error: "uncaught exception: Can't add a login with a null username." {file: "resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/cuddlefish.js -> resource://46cc97a8-509d-4ae1-97d1-cba928ab62a6-at-jetpack/api-utils/lib/passwords/utils.js" line: 90}] info: pass: '`username` is required info: executing 'test-passwords.test web page associated credentials' info: pass: url matches info: pass: username matches info: pass: password matches info: pass: realm is null info: pass: formSubmitURL matches info: pass: usernameField is matches info: pass: passwordField matches info: pass: credential is removed info: executing 'test-timers.testTimeout' info: pass: timers.setTimeout works info: executing 'test-addon-page.test that add-on page has no chrome' info: pass: chrome is visible for non addon page info: pass: chrome is not visible for addon page info: pass: chrome is visible again info: executing 'test-addon-page.test that add-on pages is closed on unload' info: pass: add-on page tabs are closed on unload info: executing 'test-simple-storage.testEmpty' info: pass: Store file should not exist info: executing 'test-simple-storage.testMalformed' info: pass: Malformed storage should cause root to be empty info: executing 'test-simple-storage.testQuotaExceededHandle' info: pass: OverQuota was emitted as expected info: pass: `this` should be simple storage info: pass: 2 info: pass: x value should be correct info: pass: y value should be correct info: executing 'test-simple-storage.testQuotaExceededNoHandle' info: pass: Value should have persisted: foo info: pass: OverQuota emitted as expected info: pass: Over-quota value should not have been written, old value should have persisted: foo info: executing 'test-simple-storage.testQuotaUsage' info: pass: quotaUsage should be correct info: pass: quotaUsage should be correct info: pass: quotaUsage should be correct info: executing 'test-simple-storage.testSetGet' info: pass: Value read should be value set info: pass: Store file should exist info: pass: Value should persist info: executing 'test-simple-storage.testSetGetRootArray' info: pass: Value read should be value set info: pass: Store file should exist info: pass: Value should persist info: executing 'test-simple-storage.testSetGetRootBool' info: pass: Value read should be value set info: pass: Store file should exist info: pass: Value should persist info: executing 'test-simple-storage.testSetGetRootFunction' info: pass: Setting storage to a function should fail info: executing 'test-simple-storage.testSetGetRootNull' info: pass: Value read should be value set info: pass: Store file should exist info: pass: Value should persist info: executing 'test-simple-storage.testSetGetRootNumber' info: pass: Value read should be value set info: pass: Store file should exist info: pass: Value should persist info: executing 'test-simple-storage.testSetGetRootObject' info: pass: Value read should be value set info: pass: Store file should exist info: pass: Value should persist info: executing 'test-simple-storage.testSetGetRootString' info: pass: Value read should be value set info: pass: Store file should exist info: pass: Value should persist info: executing 'test-simple-storage.testSetGetRootUndefined' info: pass: Setting storage to undefined should fail info: executing 'test-simple-storage.testSetNoSetRead' info: pass: Value read should be value set info: pass: Store file should exist info: pass: Value should persist info: executing 'test-simple-storage.testUninstall' info: pass: Store file should exist info: pass: Store file should be removed info: executing 'test-page-worker.testAllowScript' info: pass: Script runs when allowed to do so. info: executing 'test-page-worker.testAllowScriptDefault' info: pass: Script is allowed to run by default. info: executing 'test-page-worker.testAutoDestructor' info: pass: Page correctly unloaded. info: executing 'test-page-worker.testConstructorAndDestructor' info: pass: Page 1 and page 2 should be different objects. info: pass: page1 correctly unloaded. info: pass: page2 correctly unloaded. info: executing 'test-page-worker.testContentAndAllowGettersAndSetters' info: pass: Correct value expected for allowScript - 3 info: pass: Correct content expected info: pass: Correct value expected for allowScript - 3 info: pass: Correct content expected info: pass: Correct value expected for allowScript - g info: pass: Correct content expected info: pass: Correct value expected for allowScript - g info: pass: Correct content expected info: pass: Correct value expected for allowScript - 4 info: pass: Correct content expected info: executing 'test-page-worker.testLoadContentPage' info: pass: Correct page title accessed directly info: pass: <p> can be accessed directly info: pass: Correct text node expected info: pass: <div> can be accessed directly info: pass: Correct text node expected info: executing 'test-page-worker.testMultipleDestroys' info: pass: Multiple destroys should not cause an error info: executing 'test-page-worker.testMultipleOnMessageCallbacks' info: pass: All callbacks were called, in order. info: executing 'test-page-worker.testOnMessageCallback' info: pass: onMessage callback called info: executing 'test-page-worker.testPageProperties' info: pass: contentURL property is defined on page. info: pass: allow property is defined on page. info: pass: contentScriptFile property is defined on page. info: pass: contentScript property is defined on page. info: pass: contentScriptWhen property is defined on page. info: pass: on property is defined on page. info: pass: postMessage property is defined on page. info: pass: removeListener property is defined on page. info: pass: postMessage doesn't throw exception on page. info: executing 'test-page-worker.testPingPong' info: pass: pong info: executing 'test-page-worker.testSimplePageCreation' info: pass: Page Worker should start with a blank page by default info: pass: The 'this' object is the page itself. info: executing 'test-page-worker.testValidateOptions' info: pass: Validation correctly denied a non-URL contentURL info: pass: Validation correctly denied a non-function onMessage. info: pass: Options validation is working. info: executing 'test-page-worker.testWrappedDOM' info: pass: getElementById from content script is the native one info: pass: scrollTo from content script is the native one info: executing 'test-tabs.test ready event on new window tab' *** e = [Exception... "Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]" nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)" location: "JS frame :: chrome://browser/content/utilityOverlay.js :: getShellService :: line 364" data: no] info: pass: ready event was emitted console: [JavaScript Warning: "setting a property that has only a getter" {file: "chrome://browser/content/browser.js" line: 3252}] info: executing 'test-tabs.test window focus changes active tab' console: [JavaScript Error: "no element found" {file: "data:text/xml,%3Cbindings%20xmlns%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%3E%3Cbinding%20id%3D%22id%22%20extends%3D%22chrome%3A%2F%2Fglobal%2Fcontent%2Fbindings%2Fpopup.xml%23arrowpanel%22%3E%3Cresources%3E%3Cstylesheet%20src%3D%22data%3Atext%2Fcss%2C.panel-inner-arrowcontent%252C%2520.panel-arrowcontent%2520%257Bpadding%253A%25200%253B%257D%22%2F%3E%3C%2Fresources%3E%3C%2Fbinding%3E%3C%2Fbindings%3E" line: 1}] console: [JavaScript Warning: "An XBL file is malformed. Did you forget the XBL namespace on the bindings tag?" {file: "data:text/xml,%3Cbindings%20xmlns%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%3E%3Cbinding%20id%3D%22id%22%20extends%3D%22chrome%3A%2F%2Fglobal%2Fcontent%2Fbindings%2Fpopup.xml%23arrowpanel%22%3E%3Cresources%3E%3Cstylesheet%20src%3D%22data%3Atext%2Fcss%2C.panel-inner-arrowcontent%252C%2520.panel-arrowcontent%2520%257Bpadding%253A%25200%253B%257D%22%2F%3E%3C%2Fresources%3E%3C%2Fbinding%3E%3C%2Fbindings%3E" line: 0}] *** e = [Exception... "Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]" nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)" location: "JS frame :: chrome://browser/content/utilityOverlay.js :: getShellService :: line 364" data: no] *** e = [Exception... "Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]" nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)" location: "JS frame :: chrome://browser/content/utilityOverlay.js :: getShellService :: line 364" data: no] info: pass: activate was called on windows focus change. Traceback (most recent call last): File "bin/cfx", line 33, in <module> cuddlefish.run() File "/home/jhammel/mozilla/src/jetperf/src/tools/buildfarm/utils/addonsdk-poller/addon-sdk-6dd268ad1991/python-lib/cuddlefish/__init__.py", line 517, in run test_all(env_root, defaults=options.__dict__) File "/home/jhammel/mozilla/src/jetperf/src/tools/buildfarm/utils/addonsdk-poller/addon-sdk-6dd268ad1991/python-lib/cuddlefish/__init__.py", line 345, in test_all test_all_packages(env_root, defaults) File "/home/jhammel/mozilla/src/jetperf/src/tools/buildfarm/utils/addonsdk-poller/addon-sdk-6dd268ad1991/python-lib/cuddlefish/__init__.py", line 408, in test_all_packages env_root=env_root) File "/home/jhammel/mozilla/src/jetperf/src/tools/buildfarm/utils/addonsdk-poller/addon-sdk-6dd268ad1991/python-lib/cuddlefish/__init__.py", line 783, in run mobile_app_name=options.mobile_app_name) File "/home/jhammel/mozilla/src/jetperf/src/tools/buildfarm/utils/addonsdk-poller/addon-sdk-6dd268ad1991/python-lib/cuddlefish/runner.py", line 663, in run_app OUTPUT_TIMEOUT) Exception: Test output exceeded timeout (60s). TinderboxPrint:Jetpack<br />7/0 real 24m57.626s user 0m18.285s sys 0m3.736s Is it possible I made a mistake running? I will endeavor to run overnight.
Reporter | ||
Comment 6•12 years ago
|
||
There are a few things to decide here: * Do we want the new tests to run out of run_jetpack.py ? (Talking to :lukas, I think yes) * do we want to run jetperf for m-c changes or just http://hg.mozilla.org/projects/addon-sdk changes? (see http://hg.mozilla.org/build/tools/file/ba0475a066d8/buildfarm/utils/run_jetpack.py#l93 and be careful; IMHO we want to only run on jetpack changes, especially since m-c jetpack is permared; no point wasting even more build time) * are we content conflating the jetperf results with the m-c m-a m-b on https://tbpl.mozilla.org/?usetinderbox=1&tree=Jetpack ? If not this will involve more clever planning
Reporter | ||
Comment 7•12 years ago
|
||
It is also worth noting that m-c on https://tbpl.mozilla.org/?usetinderbox=1&tree=Jetpack is perma-orange. We should probably green this up before landing new tests or people won't pay attention to them
(In reply to Jeff Hammel [:jhammel] from comment #7) > It is also worth noting that m-c on > https://tbpl.mozilla.org/?usetinderbox=1&tree=Jetpack is perma-orange. We > should probably green this up before landing new tests or people won't pay > attention to them From what I read in bug 725954 and the pull request and IRC, the tests should be greening up as soon as that commit gets mirrored to the mercurial mirror. Sadly, bug 727626 is not letting that happen.
Comment 9•12 years ago
|
||
(In reply to Jeff Hammel [:jhammel] from comment #6) > There are a few things to decide here: > > * Do we want the new tests to run out of run_jetpack.py ? (Talking to > :lukas, I think yes) > yes, we can run them out of there but i think jetpack_perf.py should be its own script that is called in run_jetpack.py via a flag passed in when this builder calls the script that way we can turn perf on/off per branch if needed and it will make it easier to separate out later when we move to config-driven builds in the brilliant log-uploading future
Reporter | ||
Comment 10•12 years ago
|
||
(In reply to Lukas Blakk [:lsblakk] from comment #9) > (In reply to Jeff Hammel [:jhammel] from comment #6) > > There are a few things to decide here: > > > > * Do we want the new tests to run out of run_jetpack.py ? (Talking to > > :lukas, I think yes) > > > yes, we can run them out of there but i think jetpack_perf.py should be its > own script that is called in run_jetpack.py via a flag passed in when this > builder calls the script that way we can turn perf on/off per branch if > needed and it will make it easier to separate out later when we move to > config-driven builds in the brilliant log-uploading future The jetperf script lives here: http://k0s.org/mozilla/hg/jetperf/file/tip/jetperf/jetperf.py I am not sure how CI-ready it is; it relies on mozharness and could be mirrored to hg.m.o/build/mozharness scripts directory. It also relies on Talos.
Reporter | ||
Comment 11•12 years ago
|
||
wrt comment 5, I was able to get an overnight run to complete: 2 of 2 tests passed. Total time: 4.793178 seconds Program terminated successfully. Some package tests were unsuccessful. Some tests were unsuccessful. TinderboxPrint:Jetpack<br />5850/713 real 31m47.493s user 3m17.760s sys 0m10.521s I'm not sure why this takes so long
Reporter | ||
Comment 12•12 years ago
|
||
Currently JetPerf is its own package that depends (in the install_requires sense) on mozharness and talos: http://k0s.org/mozilla/hg/jetperf/file/0361eea4b40c The active script is http://k0s.org/mozilla/hg/jetperf/file/0361eea4b40c/jetperf/jetperf.py I'm not sure what the actionable way of getting this on to the appropriate slaves. The way that it is currently packaged assumes that either setup.py will be run or that mozharness and talos is installed. I am not sure if mozharness is on these machines or is actionably runnable from http://hg.mozilla.org/build/tools/file/ba0475a066d8/buildfarm/utils/run_jetpack.py . That will have to be the case. If it is not presently true a bug should be filed about that. I am also not sure if we want to assume that talos is installed on the slaves. If we don't want to do this we should come up with a strategy to do so. I'm not in charge of the build slaves so this is really up to releng. :lukas, :aki, can you comment here?
Comment 13•12 years ago
|
||
(In reply to Jeff Hammel [:jhammel] from comment #12) > Currently JetPerf is its own package that depends (in the install_requires > sense) on mozharness and talos: > http://k0s.org/mozilla/hg/jetperf/file/0361eea4b40c > > The active script is > http://k0s.org/mozilla/hg/jetperf/file/0361eea4b40c/jetperf/jetperf.py > > I'm not sure what the actionable way of getting this on to the appropriate > slaves. The way that it is currently packaged assumes that either setup.py > will be run or that mozharness and talos is installed. Mozharness is cloned, then scripts are run from scripts/. So, step 1: modify the script to be reviewable and landable as a mozharness script that requires no virtualenv to run. The idea is that the mozharness script is the original step; it will install talos and jetperf and whatever else needs to be run as an action.
Reporter | ||
Comment 14•12 years ago
|
||
Thanks for the quick response, Aki. I've noted the work as bug 729205
Reporter | ||
Comment 15•12 years ago
|
||
I'm currently getting the below from the talos jetperf run: 13:20:21 INFO - NOISE: [JavaScript Warning: "WARN addons.xpi: Exception running bootstrap method startup on widget-addon@jetpack: [Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]" nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)" location: "JS frame :: resource://widget-addon-at-jetpack/api-utils/lib/loader.js -> resource://widget-addon-at-jetpack/api-utils/lib/system.js :: openFile :: line 28" data: no]" {file: "resource://widget-addon-at-jetpack/api-utils/lib/loader.js -> resource://widget-addon-at-jetpack/api-utils/lib/system.js" line: 28}] 13:20:21 INFO - NOISE: [JavaScript Warning: "WARN addons.xpi: Exception running bootstrap method startup on empty-addon@jetpack: [Exception... "Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.initWithPath]" nsresult: "0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH)" location: "JS frame :: resource://empty-addon-at-jetpack/api-utils/lib/loader.js -> resource://empty-addon-at-jetpack/api-utils/lib/system.js :: openFile :: line 28" data: no]" {file: "resource://empty-addon-at-jetpack/api-utils/lib/loader.js -> resource://empty-addon-at-jetpack/api-utils/lib/system.js" line: 28}] Not sure if this is a problem or expected or what, but needs to be figured out
Reporter | ||
Comment 16•12 years ago
|
||
So I'm unsure what the status is here. It appears that all of the issues have been worked out at this point in time. What needs to be done? Do I need to do it?
Reporter | ||
Comment 17•12 years ago
|
||
I'm also unsure of the staging process. Should I endeavor to setup buildbotcustom to ensure that things work locally?
Comment 18•12 years ago
|
||
The closer this is to running, the easier it will be to find someone with time to push it over the finish line. Have you verified that this runs on all platforms with the checked in config files? Is all that needs doing scheduling jetperf runs in buildbot, or do we have to debug runtime issues as well?
Reporter | ||
Comment 19•12 years ago
|
||
I'm mostly asking "how to test on all platforms" in a production-oriented way at this point (where all platforms == mac, linux, win [whatever versions] at this point; I don't have much interest in android until the rest has proven stable). The checked in production config, http://hg.mozilla.org/build/mozharness/file/326fdd7c546f/configs/jetperf/prod_config.py, is tailored for build machines so i'm not entirely sure how to check it. The jetperf.py script does work on linux without issues. I usually run via python scripts/jetperf.py --config-file configs/jetperf/test_config --binary-path `which firefox`
Comment 20•12 years ago
|
||
Does ateam still have a staging environment? If not, buildduty can give you access to the missing platforms.
Reporter | ||
Comment 21•12 years ago
|
||
ABICT, our staging environment is currently down (if it still works at all) and it is very out of date. Whether we want to resurrect it or not is an open discussion.
Comment 22•12 years ago
|
||
(In reply to Aki Sasaki [:aki] from comment #20) > Does ateam still have a staging environment? > If not, buildduty can give you access to the missing platforms. The Ateam environment was never put into puppet (we tried, years ago, and failed, the sordid history is only worth repeating over copious amounts of beer), so even if it is running, it is so far out of date that testing on it is worthless. Let's test this in releng staging, please.
Comment 23•12 years ago
|
||
Ok. If Jeff's willing, buildduty can give him access to test machines. Still, any testing on windows and mac, even on non-puppeted machines, will give us a better idea of how things will work than none.
Comment 24•11 years ago
|
||
Per :jgriffin, this is no longer in our plans. If that's not accurate, please let me know.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → INCOMPLETE
You need to log in
before you can comment on or make changes to this bug.
Description
•