Also removed the old Linux Chrome and Chrome Bloat bots from utils.py.
Some of these changes may seem a bit confusing and messy but they must be considered a step on the way to moving away from our inheritance based Factories into the style Chrome users, where most configuration is in the .cfg files, factory setup is in the factories and step details are put into the commands-files.
BUG=None
TEST=Tested with local master and production slaves.
Review URL: https://webrtc-codereview.appspot.com/581006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2238 4adac7df-926f-26a2-2b94-8c16560cd09d
The change in r2143 changed so we're reusing Chromium scripts for setting up the web status. However Chrome doesn't use the tgrid page it seems (they put the Console page on that URL instead) but we need it for our LKGR parsing.
BUG=None
TEST=Tested on local master.
Review URL: https://webrtc-codereview.appspot.com/541004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2146 4adac7df-926f-26a2-2b94-8c16560cd09d
The fastbuild flag means debug symbols are not generated. This has no
impact on our tests as long as we don't need to debug with the built
binaries, i.e. is perfect for the buildbots. Compilation is 30% faster
or more.
BUG=None
TEST=Tested on local master and linux, mac and win slaves.
Review URL: https://webrtc-codereview.appspot.com/499001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2062 4adac7df-926f-26a2-2b94-8c16560cd09d
Added back the gviz_api to the tools deps - will remove it from the main project DEPS in a different patch. Rewired those symlinks too.
Made the build status loader algorithm more scalable. It read in the whole database on each load which is probably unsustainable in the long run. Also, it will now forget bots that have offline for more than ~5 revisions.
Fixed a bug in the coverage tracker.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/486002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2039 4adac7df-926f-26a2-2b94-8c16560cd09d
Hijacking the gyp inside_chromium_build finally came back to bite us.
Chrome started using it to control the path to the gold linker, which
broke our build. This change removes use of inside_chromium_build from
WebRTC.
If peerconnection rolls past this point, libjingle.gyp will need to be updated.
BUG=
TEST=build on Linux, Mac, Win
Review URL: https://webrtc-codereview.appspot.com/493007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@2038 4adac7df-926f-26a2-2b94-8c16560cd09d
Enabling webrtc_utility_unittests on Windows (was never
added).
Enabling audio_device_test_api on Mac and Windows, since updated in r1861.
BUG=None
TEST=webrtc_utility_unittests in Debug+Release on Windows. audio_device_test_api in Debug+Release on Linux, Mac and Windows.
Review URL: https://webrtc-codereview.appspot.com/448001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1862 4adac7df-926f-26a2-2b94-8c16560cd09d
I also took the chance to refactor the code from a long main method into a couple of functions instead.
Download progress also improved a bit.
Added a new flag (--base_url) to make it possible to use another Base URL instead of the default one.
BUG=None
TEST=Tested on local machine with various
Review URL: https://webrtc-codereview.appspot.com/431003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1826 4adac7df-926f-26a2-2b94-8c16560cd09d
Will now recognize warnings as a status. Returns proper HTTP status codes for the most common errors now. Will be more strict when checking build status data (no newlines in bot names).
Prepared cron scripts.
Prepared dashboard for production use.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/404003
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1772 4adac7df-926f-26a2-2b94-8c16560cd09d
Requires Coverity Static Analysis to be installed on the machine running the script.
The password is kept in a local file that is read by the script.
Not tested on Windows but Chromium seem to run their script on Windows. We'll use Linux for the periodic execution.
It has been running without issues for a month now.
BUG=
TEST=Tested successfully on my local Linux workstation with tools/coverity/coverity.py --source-dir=$HOME/code/webrtc/trunk --coverity-bin-dir=$HOME/coverity-integrity-center/static-analysis/bin --coverity-intermediate-dir=$HOME/cov-temp --coverity-db-host=webrtc-coverity.eem.corp.google.com --coverity-target=Linux --coverity-password-file=$HOME/coverity-password-file
Review URL: https://webrtc-codereview.appspot.com/345001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1760 4adac7df-926f-26a2-2b94-8c16560cd09d
So now it will do like this, depending on build type:
* xcode: build all with xcode projects and run the xcode built tests.
* make: build all with makefile projects and run the makefile built tests
* both: build all with xcode projects, then build all with makefile projects, then run the xcode built tests only (not the makefile built ones)
BUG=None
TEST=Run on local master.
Review URL: https://webrtc-codereview.appspot.com/409001
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1758 4adac7df-926f-26a2-2b94-8c16560cd09d
- Sync Chrome's DEPS to chromium_deps/, and use the From() keyword
to pull the correct revisions from it, rather than having to manually
enter them.
- This idea is borrowed from the WebKit DEPS:
http://trac.webkit.org/browser/trunk/Source/WebKit/chromium/DEPS
- Fix update.py's DEPS parsing to handle From().
- Roll Chrome 120526:122775.
- Organize the deps alphabetically.
- Sync the in-tree gold linker, which is now required due to a change
in the linker flags.
- Add the new deps to .gitignore.
BUG=
TEST=build on all platforms
Review URL: https://webrtc-codereview.appspot.com/401004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1755 4adac7df-926f-26a2-2b94-8c16560cd09d
This is done by adding a whitespace before the last underscore on
strings above length 25, which should only affect the _unittest and
_integrationtest suffixes for our tests, that are the widest unwrappable
strings in our waterfall display.
I also removed all reduntant use of ShellCommand in favour for the
AddCommonStep function (that wraps the description text).
Also fixed so Mac tests are not halting the build.
Cleaned up some code style formatting.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/400005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1735 4adac7df-926f-26a2-2b94-8c16560cd09d
* audio_coding_module_test: enabling on Windows.
* audio_conference_mixer_unittests: enabling on Windows.
* audio_device_test_api: disabling on Mac, since this test is failing but not reporting failure. See issue 257 for more details.
* media_file_unittests: enabling on Windows.
* rtp_rtcp_unittests: enabling on Windows.
* test_bwe: enabling on Windows.
* test_fec: enabling on all platforms. See CL 369008 and 379010.
* test_support_unittests: enabling on all platforms.
* udp_transport_unittests: enabling on Windows.
* video_codecs_test_framework_unittests: adding disabled test on all platforms.
* video_codecs_test_framework_integrationtests: enabling on all platforms.
* video_processing_unittests: enabling on Windows, since issue 247 is fixed.
BUG=
TEST=Tried out on the master during after-office hours.
Review URL: http://webrtc-codereview.appspot.com/379011
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1621 4adac7df-926f-26a2-2b94-8c16560cd09d
Focused responsibility of supported tests in master.cfg instead of being in utils.py (hard to overview and maintain).
Enabled the following empty tests on all platforms:
- audio_conference_mixer_unittests
- cng_unittests
- g711_unittests
- g722_unittests
- pcm16b_unittests
- media_file_unittests
- udp_transport_unittests
- webrtc_utility_unittests
Removed "headless tests" concept since everything is now compiled in the make all step (no need for compile only, no execution tests).
Removed audio_device_test_func test since not a proper test (dev tool) that was configured as headless.
BUG=
TEST=Ran local master and successfully built and executed all tests with Mac build slave.
Review URL: http://webrtc-codereview.appspot.com/384002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1603 4adac7df-926f-26a2-2b94-8c16560cd09d
Note that all files were moved to a new directory. The diffs won't be 100% friendly because of this.
Extracted common handling for OAuth on both sides of the connection in order to add a new build status
data handler. This data handler will be used to report build status data. Don't look too closely at the
details of what data is transferred as this will change in the next patch. We will also extract data from
a different page in a slightly different way, but there won't be huge differences.
In particular, we won't look at the /one_box_per_builder page on the master but rather at the transposed
grid (/tgrid) on the build master since we also need the revision number. The regular expressions to
extract the data will be slightly more complex.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/367023
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1586 4adac7df-926f-26a2-2b94-8c16560cd09d
The access token is now transferred between the request and track scripts.
Almost completed the implementation, using oauth2.
Initial, incomplete implementation of the permission-request script.
The coverage tracking is broken temporarily, but it can now make OAuth requests.
BUG=
TEST=
Review URL: https://webrtc-codereview.appspot.com/366002
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1530 4adac7df-926f-26a2-2b94-8c16560cd09d
Changed so that a new resources bundle will always downloaded if the currently downloaded version differs from the one in DEPS.
BUG=
TEST=gclient sync with different revisions in the /resources/webrtc-resouces-revision file.
Review URL: http://webrtc-codereview.appspot.com/330033
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1343 4adac7df-926f-26a2-2b94-8c16560cd09d
To be able to re-use as much as possible from Chromium's scripts, I've created two customized scripts for running tests:
- webrtc_tests.py: a customized version of chrome_tests.py with WebRTC tests instead.
- webrtc_tests.sh: a customized version of the chrome_tests.sh wrapper script, to launch the above script.
The webrtc_tests.sh script is setting up PYTHONPATH so that tools/valgrind is available for the webrtc_tests.py script.
The webrtc_tests.py script inherits the chrome_tests.py script as much as possible, to minimize maintenance and maximize readability.
Having this mirrored setup of directories, allows us to use the same directory hierarchy for suppression files too. This CL only adds suppression files for memcheck, but we can add files for tsan later easily.
The suppression file is currently empty for Linux. For Mac I copied all the Chromium third-party suppressions. We will need a lot more added for Mac before Valgrind runs becomes usable for that platform.
The platform specific naming of the suppression files are handled automatically when webrtc_tests.sh is used to launch the tests.
Example:
Plain memcheck (default tool): tools/valgrind-webrtc/webrtc_tests.sh -t system_wrappers
Run ThreadSanitizer: tools/valgrind-webrtc/webrtc_tests.sh --tool=tsan -t system_wrappers
Previously mentioned AddressSanitizer requires additional scripts to be added and it not covered in this CL.
BUG=
TEST=
Review URL: http://webrtc-codereview.appspot.com/322010
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1240 4adac7df-926f-26a2-2b94-8c16560cd09d
A table on the top of the page displays the test configurations of the input files present.
The displayed string in the legend of each graph is now fetched from test configuration name instead of using the filename.
Review URL: http://webrtc-codereview.appspot.com/279006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1104 4adac7df-926f-26a2-2b94-8c16560cd09d