| OLD | NEW |
| 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 | 5 |
| 6 """Utility class to build the Skia master BuildFactory's. | 6 """Utility class to build the Skia master BuildFactory's. |
| 7 | 7 |
| 8 Based on gclient_factory.py and adds Skia-specific steps.""" | 8 Based on gclient_factory.py and adds Skia-specific steps.""" |
| 9 | 9 |
| 10 | 10 |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 94 self.TargetPathJoin = ntpath.join | 94 self.TargetPathJoin = ntpath.join |
| 95 else: | 95 else: |
| 96 self.TargetPathJoin = posixpath.join | 96 self.TargetPathJoin = posixpath.join |
| 97 | 97 |
| 98 # Create gclient solutions corresponding to the main build_subdir | 98 # Create gclient solutions corresponding to the main build_subdir |
| 99 # and other directories we also wish to check out. | 99 # and other directories we also wish to check out. |
| 100 self._gclient_solutions = [gclient_factory.GClientSolution( | 100 self._gclient_solutions = [gclient_factory.GClientSolution( |
| 101 svn_url=SKIA_SVN_BASEURL + '/' + build_subdir, name=build_subdir | 101 svn_url=SKIA_SVN_BASEURL + '/' + build_subdir, name=build_subdir |
| 102 ).GetSpec()] | 102 ).GetSpec()] |
| 103 | 103 |
| 104 # Add the directory for expectations files. |
| 105 expectations_gclient = gclient_factory.GClientSolution( |
| 106 svn_url='https://skia.googlesource.com/expectations.git', |
| 107 name='expectations', managed=True).GetSpec() |
| 108 print 'expectations: \n' + expectations_gclient |
| 109 self._gclient_solutions.append(expectations_gclient) |
| 110 |
| 104 if not other_subdirs: | 111 if not other_subdirs: |
| 105 other_subdirs = [] | 112 other_subdirs = [] |
| 106 subdirs_to_checkout = set(other_subdirs) | 113 subdirs_to_checkout = set(other_subdirs) |
| 107 | 114 |
| 108 # Trybots need to check out all of these directories. | 115 # Trybots need to check out all of these directories. |
| 109 if do_patch_step: | 116 if do_patch_step: |
| 110 subdirs_to_checkout.add('gm-expected') | 117 subdirs_to_checkout.add('gm-expected') |
| 111 for other_subdir in subdirs_to_checkout: | 118 for other_subdir in subdirs_to_checkout: |
| 112 self._gclient_solutions.append(gclient_factory.GClientSolution( | 119 self._gclient_solutions.append(gclient_factory.GClientSolution( |
| 113 svn_url=SKIA_SVN_BASEURL + '/' + other_subdir, | 120 svn_url=SKIA_SVN_BASEURL + '/' + other_subdir, |
| (...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 436 def Install(self): | 443 def Install(self): |
| 437 """ Install the compiled executables. """ | 444 """ Install the compiled executables. """ |
| 438 self.AddFlavoredSlaveScript(script='install.py', description='Install', | 445 self.AddFlavoredSlaveScript(script='install.py', description='Install', |
| 439 halt_on_failure=True) | 446 halt_on_failure=True) |
| 440 | 447 |
| 441 def DownloadSKPs(self): | 448 def DownloadSKPs(self): |
| 442 """ Download the SKPs. """ | 449 """ Download the SKPs. """ |
| 443 self.AddSlaveScript(script='download_skps.py', description='DownloadSKPs', | 450 self.AddSlaveScript(script='download_skps.py', description='DownloadSKPs', |
| 444 halt_on_failure=True) | 451 halt_on_failure=True) |
| 445 | 452 |
| 453 def DownloadSKImageFiles(self): |
| 454 """ Download image files for running skimage. """ |
| 455 self.AddSlaveScript(script='download_skimage_files.py', |
| 456 description='DownloadSKImageFiles', |
| 457 halt_on_failure=True) |
| 458 |
| 446 def DownloadBaselines(self): | 459 def DownloadBaselines(self): |
| 447 """ Download the GM baselines. """ | 460 """ Download the GM baselines. """ |
| 448 self.AddSlaveScript(script='download_baselines.py', | 461 self.AddSlaveScript(script='download_baselines.py', |
| 449 description='DownloadBaselines', halt_on_failure=True) | 462 description='DownloadBaselines', halt_on_failure=True) |
| 450 | 463 |
| 451 def RunTests(self): | 464 def RunTests(self): |
| 452 """ Run the unit tests. """ | 465 """ Run the unit tests. """ |
| 453 self.AddFlavoredSlaveScript(script='run_tests.py', description='RunTests') | 466 self.AddFlavoredSlaveScript(script='run_tests.py', description='RunTests') |
| 454 | 467 |
| 468 def RunDecodingTests(self): |
| 469 """ Run tests of image decoders. """ |
| 470 self.AddFlavoredSlaveScript(script='run_decoding_tests.py', |
| 471 description='RunDecodingTests') |
| 472 |
| 455 def RunGM(self): | 473 def RunGM(self): |
| 456 """ Run the "GM" tool, saving the images to disk. """ | 474 """ Run the "GM" tool, saving the images to disk. """ |
| 457 self.AddFlavoredSlaveScript(script='run_gm.py', description='GenerateGMs', | 475 self.AddFlavoredSlaveScript(script='run_gm.py', description='GenerateGMs', |
| 458 is_rebaseline_step=True) | 476 is_rebaseline_step=True) |
| 459 | 477 |
| 460 def PreRender(self): | 478 def PreRender(self): |
| 461 """ Step to run before the render steps. """ | 479 """ Step to run before the render steps. """ |
| 462 self.AddFlavoredSlaveScript(script='prerender.py', description='PreRender') | 480 self.AddFlavoredSlaveScript(script='prerender.py', description='PreRender') |
| 463 | 481 |
| 464 def RenderPictures(self): | 482 def RenderPictures(self): |
| (...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 612 | 630 |
| 613 | 631 |
| 614 def UploadGMResults(self): | 632 def UploadGMResults(self): |
| 615 """ Upload the images generated by GM """ | 633 """ Upload the images generated by GM """ |
| 616 args = ['--autogen_svn_username_file', self._autogen_svn_username_file, | 634 args = ['--autogen_svn_username_file', self._autogen_svn_username_file, |
| 617 '--autogen_svn_password_file', self._autogen_svn_password_file] | 635 '--autogen_svn_password_file', self._autogen_svn_password_file] |
| 618 self.AddSlaveScript(script='upload_gm_results.py', args=args, | 636 self.AddSlaveScript(script='upload_gm_results.py', args=args, |
| 619 description='UploadGMResults', timeout=5400, | 637 description='UploadGMResults', timeout=5400, |
| 620 is_rebaseline_step=True) | 638 is_rebaseline_step=True) |
| 621 | 639 |
| 640 def UploadSKImageResults(self): |
| 641 self.AddSlaveScript(script='upload_skimage_results.py', |
| 642 description="UploadSKImageResults") |
| 643 |
| 622 def CommonSteps(self, clobber=None): | 644 def CommonSteps(self, clobber=None): |
| 623 """ Steps which are run at the beginning of all builds. """ | 645 """ Steps which are run at the beginning of all builds. """ |
| 624 self.UpdateSteps() | 646 self.UpdateSteps() |
| 625 self.DownloadSKPs() | 647 self.DownloadSKPs() |
| 626 self.Compile(clobber) | 648 self.Compile(clobber) |
| 627 self.Install() | 649 self.Install() |
| 628 | 650 |
| 629 def NonPerfSteps(self): | 651 def NonPerfSteps(self): |
| 630 """ Add correctness testing BuildSteps. """ | 652 """ Add correctness testing BuildSteps. """ |
| 631 self.DownloadBaselines() | 653 self.DownloadBaselines() |
| 654 self.DownloadSKImageFiles() |
| 632 self.PreRender() | 655 self.PreRender() |
| 633 self.RunTests() | 656 self.RunTests() |
| 634 self.RunGM() | 657 self.RunGM() |
| 635 self.RenderPictures() | 658 self.RenderPictures() |
| 636 self.RenderPdfs() | 659 self.RenderPdfs() |
| 660 self.RunDecodingTests() |
| 637 self.PostRender() | 661 self.PostRender() |
| 638 if self._do_upload_results: | 662 if self._do_upload_results: |
| 639 self.UploadGMResults() | 663 self.UploadGMResults() |
| 640 self.CompareAndUploadWebpageGMs() | 664 self.CompareAndUploadWebpageGMs() |
| 665 self.UploadSKImageResults() |
| 641 self.CompareGMs() | 666 self.CompareGMs() |
| 642 | 667 |
| 643 def PerfSteps(self): | 668 def PerfSteps(self): |
| 644 """ Add performance testing BuildSteps. """ | 669 """ Add performance testing BuildSteps. """ |
| 645 self.PreBench() | 670 self.PreBench() |
| 646 self.RunBench() | 671 self.RunBench() |
| 647 self.BenchPictures() | 672 self.BenchPictures() |
| 648 self.PostBench() | 673 self.PostBench() |
| 649 self.CheckForRegressions() | 674 self.CheckForRegressions() |
| 650 self.BenchGraphs() | 675 self.BenchGraphs() |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 689 # Perf-only builder. | 714 # Perf-only builder. |
| 690 if not self._perf_output_basedir: | 715 if not self._perf_output_basedir: |
| 691 raise ValueError( | 716 raise ValueError( |
| 692 'BuildPerfOnly requires perf_output_basedir to be defined.') | 717 'BuildPerfOnly requires perf_output_basedir to be defined.') |
| 693 if self._configuration != CONFIG_RELEASE: | 718 if self._configuration != CONFIG_RELEASE: |
| 694 raise ValueError('BuildPerfOnly should run in %s configuration.' % | 719 raise ValueError('BuildPerfOnly should run in %s configuration.' % |
| 695 CONFIG_RELEASE) | 720 CONFIG_RELEASE) |
| 696 self.PerfSteps() | 721 self.PerfSteps() |
| 697 self.Validate() | 722 self.Validate() |
| 698 return self | 723 return self |
| OLD | NEW |