| # Copyright 2016 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| DEPS = [ |
| 'chromium', |
| 'depot_tools/bot_update', |
| 'depot_tools/gclient', |
| 'depot_tools/gsutil', |
| 'recipe_engine/context', |
| 'recipe_engine/file', |
| 'recipe_engine/path', |
| 'recipe_engine/platform', |
| 'recipe_engine/properties', |
| 'recipe_engine/python', |
| 'recipe_engine/raw_io', |
| 'recipe_engine/step', |
| ] |
| |
| |
| def linux_builder_steps(api): |
| build_properties = api.properties.legacy() |
| # checkout DrMemory step |
| src_cfg = api.gclient.make_config() |
| soln = src_cfg.solutions.add() |
| soln.name = "drmemory" |
| soln.url = "https://github.com/DynamoRIO/drmemory.git" |
| soln.custom_deps = {"drmemory/dynamorio": |
| "https://github.com/DynamoRIO/dynamorio.git", |
| "drmemory/third_party/googletest": |
| "https://github.com/DynamoRIO/googletest.git", |
| "tools/buildbot": |
| "https://github.com/DynamoRIO/buildbot.git"} |
| api.gclient.c = src_cfg |
| result = api.bot_update.ensure_checkout() |
| build_properties.update(result.json.output.get("properties", {})) |
| # get buildnumber step; no longer needed |
| # Package DrMemory step |
| api.step("Package Dr. Memory", |
| ["ctest", "-VV", "-S", |
| str(api.path["checkout"].join("package.cmake")) + ",build=0x" + |
| build_properties["got_revision"][:7] + ";drmem_only"]) |
| # find package file step; no longer necessary |
| # upload drmemory build step |
| api.gsutil.upload("DrMemory-Linux-*" + build_properties["got_revision"][ |
| :7] + ".tar.gz", "chromium-drmemory-builds", "builds/") |
| |
| |
| def linux_lucid_x64_drm_steps(api): |
| build_properties = api.properties.legacy() |
| # checkout DrMemory step |
| src_cfg = api.gclient.make_config() |
| soln = src_cfg.solutions.add() |
| soln.name = "drmemory" |
| soln.url = "https://github.com/DynamoRIO/drmemory.git" |
| soln.custom_deps = {"drmemory/dynamorio": |
| "https://github.com/DynamoRIO/dynamorio.git", |
| "drmemory/third_party/googletest": |
| "https://github.com/DynamoRIO/googletest.git", |
| "tools/buildbot": |
| "https://github.com/DynamoRIO/buildbot.git"} |
| api.gclient.c = src_cfg |
| result = api.bot_update.ensure_checkout() |
| build_properties.update(result.json.output.get("properties", {})) |
| # Dr. Memory ctest step |
| api.step( |
| "Dr. Memory ctest", |
| ["ctest", "--timeout", "60", "-VV", "-S", |
| str(api.path["checkout"].join("tests", "runsuite.cmake")) + |
| ",drmemory_only;long;build=0x" + build_properties["got_revision"][:7] |
| ]) |
| # Prepare to pack test results step; null converted |
| # Pack test results step |
| api.step("Pack test results", |
| ['7z', 'a', '-xr!*.pdb', |
| "testlogs_r" + build_properties["got_revision"] + "_b" + |
| str(build_properties["buildnumber"]) + ".7z", |
| 'build_drmemory-dbg-32/logs', |
| 'build_drmemory-dbg-32/Testing/Temporary', |
| 'build_drmemory-rel-32/logs', |
| 'build_drmemory-rel-32/Testing/Temporary', |
| 'build_drmemory-dbg-64/logs', |
| 'build_drmemory-dbg-64/Testing/Temporary', |
| 'build_drmemory-rel-64/logs', |
| 'build_drmemory-rel-64/Testing/Temporary', 'xml:results']) |
| # upload drmemory test logs step |
| api.gsutil.upload("testlogs_r" + build_properties["got_revision"] + "_b" + |
| str(api.properties[ |
| "buildnumber"]) + ".7z", "chromium-drmemory-builds", |
| "testlogs/from_%s" % api.properties["buildername"]) |
| |
| |
| def win_8_x64_drm_steps(api): |
| build_properties = api.properties.legacy() |
| # checkout DrMemory step |
| src_cfg = api.gclient.make_config() |
| soln = src_cfg.solutions.add() |
| soln.name = "drmemory" |
| soln.url = "https://github.com/DynamoRIO/drmemory.git" |
| soln.custom_deps = {"drmemory/dynamorio": |
| "https://github.com/DynamoRIO/dynamorio.git", |
| "drmemory/third_party/googletest": |
| "https://github.com/DynamoRIO/googletest.git", |
| "tools/buildbot": |
| "https://github.com/DynamoRIO/buildbot.git"} |
| api.gclient.c = src_cfg |
| result = api.bot_update.ensure_checkout() |
| build_properties.update(result.json.output.get("properties", {})) |
| # clear tools directory step; null converted |
| # update tools step; null converted |
| # unpack tools step; generic ShellCommand converted |
| with api.context(cwd=api.path['start_dir'].join('tools', 'buildbot', 'bot_tools')): |
| api.step("unpack tools", |
| [api.path["start_dir"].join('tools', 'buildbot', 'bot_tools', |
| 'unpack.bat')]) |
| # windows Dr. Memory ctest step |
| api.step("Dr. Memory ctest", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), 'ctest', '--timeout', |
| '60', '-VV', '-S', |
| str(api.path["checkout"].join("tests", "runsuite.cmake")) + |
| ",drmemory_only;long;build=" + |
| str(build_properties["buildnumber"])]) |
| # Checkout TSan tests step |
| api.step("Checkout TSan tests", |
| ['svn', 'checkout', '--force', |
| 'http://data-race-test.googlecode.com/svn/trunk/', |
| api.path["start_dir"].join("tsan")]) |
| # Build TSan tests step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools"), |
| "CYGWIN": "nodosfilewarning"}): |
| api.step("Build TSan Tests", |
| ['E:\\b\\build\\scripts\\slave\\drmemory\\build_env.bat', 'make', |
| '-C', api.path["start_dir"].join("tsan", "unittest")]) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "dbg full TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-dbg-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "dbg light TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-dbg-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "-light", "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "rel full TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-rel-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "rel light TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-rel-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "-light", "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "dbg full nosyms TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-dbg-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Prepare to pack test results step; null converted |
| # Pack test results step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step("Pack test results", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), '7z', 'a', '-xr!*.pdb', |
| "testlogs_r" + build_properties["got_revision"] + "_b" + |
| str(build_properties["buildnumber"]) + ".7z", |
| 'build_drmemory-dbg-32/logs', |
| 'build_drmemory-dbg-32/Testing/Temporary', |
| 'build_drmemory-rel-32/logs', |
| 'build_drmemory-rel-32/Testing/Temporary', |
| 'build_drmemory-dbg-64/logs', |
| 'build_drmemory-dbg-64/Testing/Temporary', |
| 'build_drmemory-rel-64/logs', |
| 'build_drmemory-rel-64/Testing/Temporary', 'xmlresults']) |
| # upload drmemory test logs step |
| api.gsutil.upload("testlogs_r" + build_properties["got_revision"] + "_b" + |
| str(api.properties[ |
| "buildnumber"]) + ".7z", "chromium-drmemory-builds", |
| "testlogs/from_%s" % api.properties["buildername"]) |
| |
| |
| def win_7_x64_drm_steps(api): |
| build_properties = api.properties.legacy() |
| # checkout DrMemory step |
| src_cfg = api.gclient.make_config() |
| soln = src_cfg.solutions.add() |
| soln.name = "drmemory" |
| soln.url = "https://github.com/DynamoRIO/drmemory.git" |
| soln.custom_deps = {"drmemory/dynamorio": |
| "https://github.com/DynamoRIO/dynamorio.git", |
| "drmemory/third_party/googletest": |
| "https://github.com/DynamoRIO/googletest.git", |
| "tools/buildbot": |
| "https://github.com/DynamoRIO/buildbot.git"} |
| api.gclient.c = src_cfg |
| result = api.bot_update.ensure_checkout() |
| build_properties.update(result.json.output.get("properties", {})) |
| # clear tools directory step; null converted |
| # update tools step; null converted |
| # unpack tools step; generic ShellCommand converted |
| with api.context(cwd=api.path['start_dir'].join('tools', 'buildbot', 'bot_tools')): |
| api.step("unpack tools", |
| [api.path["start_dir"].join('tools', 'buildbot', 'bot_tools', |
| 'unpack.bat')]) |
| # windows Dr. Memory ctest step |
| api.step("Dr. Memory ctest", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), 'ctest', '--timeout', |
| '60', '-VV', '-S', |
| str(api.path["checkout"].join("tests", "runsuite.cmake")) + |
| ",drmemory_only;long;build=" + |
| str(build_properties["buildnumber"])]) |
| # Checkout TSan tests step |
| api.step("Checkout TSan tests", |
| ['svn', 'checkout', '--force', |
| 'http://data-race-test.googlecode.com/svn/trunk/', |
| api.path["start_dir"].join("tsan")]) |
| # Build TSan tests step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools"), |
| "CYGWIN": "nodosfilewarning"}): |
| api.step("Build TSan Tests", |
| ['E:\\b\\build\\scripts\\slave\\drmemory\\build_env.bat', 'make', |
| '-C', api.path["start_dir"].join("tsan", "unittest")]) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "dbg full TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-dbg-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "dbg light TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-dbg-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "-light", "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "rel full TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-rel-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "rel light TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-rel-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "-light", "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Dr. Memory TSan test step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step( |
| "dbg full nosyms TSan tests", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), |
| 'build_drmemory-dbg-32\\bin\\drmemory', '-dr_ops', |
| '-msgbox_mask 0 -stderr_mask 15', '-results_to_stderr', '-batch', |
| '-suppress', api.path["checkout"].join( |
| "tests", "app_suite", "default-suppressions.txt"), "--", |
| api.path["start_dir"].join("tsan", 'unittest', 'bin', |
| 'racecheck_unittest-windows-x86-O0.exe'), |
| '--gtest_filter=' |
| '-PositiveTests.FreeVsRead:NegativeTests.WaitForMultiple*', |
| '-147']) |
| # Prepare to pack test results step; null converted |
| # Pack test results step |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| api.step("Pack test results", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), '7z', 'a', '-xr!*.pdb', |
| "testlogs_r" + build_properties["got_revision"] + "_b" + |
| str(build_properties["buildnumber"]) + ".7z", |
| 'build_drmemory-dbg-32/logs', |
| 'build_drmemory-dbg-32/Testing/Temporary', |
| 'build_drmemory-rel-32/logs', |
| 'build_drmemory-rel-32/Testing/Temporary', |
| 'build_drmemory-dbg-64/logs', |
| 'build_drmemory-dbg-64/Testing/Temporary', |
| 'build_drmemory-rel-64/logs', |
| 'build_drmemory-rel-64/Testing/Temporary', 'xmlresults']) |
| # upload drmemory test logs step |
| api.gsutil.upload("testlogs_r" + build_properties["got_revision"] + "_b" + |
| str(api.properties[ |
| "buildnumber"]) + ".7z", "chromium-drmemory-builds", |
| "testlogs/from_%s" % api.properties["buildername"]) |
| |
| |
| def win_builder_steps(api): |
| build_properties = api.properties.legacy() |
| # checkout DrMemory step |
| src_cfg = api.gclient.make_config() |
| soln = src_cfg.solutions.add() |
| soln.name = "drmemory" |
| soln.url = "https://github.com/DynamoRIO/drmemory.git" |
| soln.custom_deps = {"drmemory/dynamorio": |
| "https://github.com/DynamoRIO/dynamorio.git", |
| "drmemory/third_party/googletest": |
| "https://github.com/DynamoRIO/googletest.git", |
| "tools/buildbot": |
| "https://github.com/DynamoRIO/buildbot.git"} |
| api.gclient.c = src_cfg |
| result = api.bot_update.ensure_checkout() |
| build_properties.update(result.json.output.get("properties", {})) |
| # clear tools directory step; null converted |
| # update tools step; null converted |
| # unpack tools step; generic ShellCommand converted |
| with api.context(cwd=api.path['start_dir'].join('tools', 'buildbot', 'bot_tools')): |
| api.step("unpack tools", |
| [api.path["start_dir"].join('tools', 'buildbot', 'bot_tools', |
| 'unpack.bat')]) |
| # get buildnumber step; no longer needed |
| with api.context(cwd=api.path['start_dir']): |
| with api.context(env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools")}): |
| # Package dynamorio step |
| api.step("Package Dr. Memory", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), 'ctest', '-VV', '-S', |
| str(api.path["checkout"].join("package.cmake")) + ",build=0x" + |
| build_properties["got_revision"][:7] + ";drmem_only"]) |
| # Find package basename step |
| step_result = api.step("Find package basename", |
| ["cmd.exe", "/C", "dir", "/O-D", "/B", |
| "DrMemory-Windows-*0x" + build_properties[ |
| "got_revision"][:7] + ".zip"], |
| stdout=api.raw_io.output_text()) |
| # There can be multiple if we've done test builds so grab the first |
| # line (we sorted by date with /O-D): |
| basename = step_result.stdout.split()[0][:-4] |
| # Delete prior sfx archive step |
| try: |
| api.file.remove("Delete prior sfx archive", |
| api.path["start_dir"].join(basename + "-sfx.exe")) |
| except api.file.Error: # pragma: no cover |
| pass |
| # Create sfx archive step |
| lastdir = api.path.basename(api.path["start_dir"]) |
| with api.context( |
| cwd=api.path['start_dir'], |
| env={ |
| "BOTTOOLS": api.path["start_dir"].join( |
| "tools", "buildbot", "bot_tools") |
| }): |
| api.step("create sfx archive", |
| [api.package_repo_resource("scripts", "slave", "drmemory", |
| "build_env.bat"), "7z", "a", "-sfx", |
| basename + "-sfx.exe", |
| # To get the archive to contain paths relative to the |
| # ...\\ZIP\\basename\\ dir we pass ..\\lastdir: |
| api.path.join( |
| '..', lastdir, 'build_drmemory-debug-32', '_CPack_Packages', |
| 'Windows', 'ZIP', basename, '*')]) |
| # upload latest build step |
| api.file.copy("copy locally", |
| api.path["start_dir"].join(basename + "-sfx.exe"), |
| api.path["start_dir"].join("drmemory-windows-latest-sfx.exe")) |
| with api.context(cwd=api.path['start_dir']): |
| api.gsutil.upload("drmemory-windows-latest-sfx.exe", |
| "chromium-drmemory-builds", |
| "") |
| # upload drmemory build step |
| api.gsutil.upload("DrMemory-Windows-*" + build_properties["got_revision"][ |
| :7] + ".zip", "chromium-drmemory-builds", "builds/") |
| |
| |
| dispatch_directory = { |
| 'linux-builder': linux_builder_steps, |
| 'linux-lucid_x64-drm': linux_lucid_x64_drm_steps, |
| 'win-8_x64-drm': win_8_x64_drm_steps, |
| 'win-7_x64-drm': win_7_x64_drm_steps, |
| 'win-builder': win_builder_steps, |
| } |
| |
| |
| def RunSteps(api): |
| if api.properties["buildername"] not in dispatch_directory: |
| raise api.step.StepFailure("Builder unsupported by recipe.") |
| else: |
| dispatch_directory[api.properties["buildername"]](api) |
| |
| |
| def GenTests(api): |
| yield (api.test('linux_builder') |
| + api.properties( |
| mastername='client.drmemory', |
| buildername='linux-builder', |
| revision='123456789abcdef', |
| got_revision='123456789abcdef', |
| buildnumber=42, |
| bot_id='TestSlave', |
| ) |
| ) |
| |
| yield (api.test('linux_lucid_x64_drm') |
| + api.properties( |
| mastername='client.drmemory', |
| buildername='linux-lucid_x64-drm', |
| revision='123456789abcdef', |
| got_revision='123456789abcdef', |
| buildnumber=42, |
| bot_id='TestSlave', |
| ) |
| + api.platform('linux', 64) |
| ) |
| |
| yield (api.test('win_8_x64_drm') |
| + api.properties( |
| mastername='client.drmemory', |
| buildername='win-8_x64-drm', |
| revision='123456789abcdef', |
| got_revision='123456789abcdef', |
| buildnumber=42, |
| bot_id='TestSlave', |
| ) |
| + api.platform('win', 64) |
| ) |
| |
| yield (api.test('win_7_x64_drm') |
| + api.properties( |
| mastername='client.drmemory', |
| buildername='win-7_x64-drm', |
| revision='123456789abcdef', |
| got_revision='123456789abcdef', |
| buildnumber=42, |
| bot_id='TestSlave', |
| ) |
| + api.platform('win', 64) |
| ) |
| |
| yield (api.test('win_builder') |
| + api.properties( |
| mastername='client.drmemory', |
| buildername='win-builder', |
| revision='123456789abcdef', |
| got_revision='123456789abcdef', |
| buildnumber=42, |
| bot_id='TestSlave', |
| ) |
| + api.platform('win', 32) |
| + api.step_data("Find package basename", |
| stdout=api.raw_io.output_text("DrMemory-Windows-1.2.3-0x1234567.zip")) |
| ) |
| |
| yield (api.test('builder_not_in_dispatch_directory') |
| + api.properties( |
| mastername='client.drmemory', |
| buildername='nonexistent_builder', |
| bot_id='TestSlave', |
| ) |
| ) |