aboutsummaryrefslogtreecommitdiff
path: root/llvm_tools
AgeCommit message (Collapse)Author
2019-09-30llvm_tools: Fix error in getting a fixed SVN version.Manoj Gupta
llvm_hash was not initialized when using a fixed SVN version. Fixes the error: UnboundLocalError: local variable 'llvm_hash' referenced before assignment BUG=None TEST=Unit tests pass Change-Id: I83d68908801325c7827b090e6bb472bc54bb3d75 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1831791 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Manoj Gupta <manojgupta@chromium.org>
2019-09-27llvm_tools: add a script to `cp` files to chromiumos-overlayGeorge Burgess IV
This is a manual and seemingly error-prone process. Why not automate it? BUG=chromium:994322 TEST=./copy_helpers_to_chromiumos_overlay.py Change-Id: I6d008810619c0595fbbd4155526b6ad10a5d466c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1811966 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2019-09-13LLVM tools: Updated README.md to include auto LLVM bisectionSalud Lemus
Also includes a section for the script that updates all tryjobs whose status is 'pending' to the result of `cros buildresult`. Also included examples for each script. BUG=None TEST=None Change-Id: I1b6a5096eb0c3fe48d3b4962ce464afee785b4ef Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1798816 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-13LLVM tools: Added unittest for llvm_bisection.pySalud Lemus
BUG=None TEST='./llvm_bisection_unittest.py' passes Change-Id: I2689deff7ede41bcfcf5707d4419bd3c816bba39 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1798739 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-13LLVM tools: Updated unittests for patch_manager.pySalud Lemus
BUG=None TEST='./patch_manager_unittest.py' passes Change-Id: Ib33236b725cf9ffad6cae622aac1ff154db09e0f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1796386 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-12LLVM tools: Updated unittests for update_chromeos_llvm_next_hash.pySalud Lemus
BUG=None TEST='./update_chromeos_llvm_next_hash_unittest.py' passes Change-Id: I9793dde698fe21dc4d9462c552bc1c321ad06ff4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1796383 Tested-by: Salud Lemus <saludlemus@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2019-09-12LLVM tools: Updated unittest for llvm_patch_management.pySalud Lemus
BUG=None TEST='./llvm_patch_management_unittest.py' passes Change-Id: I92c198ffefc51d0afa780de9e930a3db4260efbf Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1795932 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-12LLVM tools: Unittests for modify_a_tryjob.pySalud Lemus
BUG=None TEST='./modify_a_tryjob_unittest.py' passes Change-Id: I6363bde914e710c2efbe8bce08c27351e4f3b7f0 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1793683 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-12LLVM tools: Unittests for update_tryjob_status.pySalud Lemus
BUG=None TEST='./update_tryjob_status_unittest.py' passes Change-Id: Ia70a31c7e6f69c818c719986d831d3dbb300a1cd Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1793909 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-12LLVM tools: Unittests for auto_llvm_bisection.pySalud Lemus
BUG=None TEST='./auto_llvm_bisection_unittest.py' passes Change-Id: Id5a2138d1f7247591b66e3a25d8313c59566c209 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1794042 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-12LLVM tools: Unittests for update_packages_and_run_tryjobs_unittest.pySalud Lemus
BUG=None TEST='./update_packages_and_run_tryjobs_unittest.py' passes Change-Id: I46768d5e0b85135ecf26eb2a7dad6ce7521051ba Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1793261 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-10llvm_tools: appease pylintGeorge Burgess IV
Pylint apparently dislikes a lot about these files. Make it happy. BUG=None TEST=`cros lint` Change-Id: I2752ca5872eb0c9b2daa2c0409ddc6347171418f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1793908 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2019-09-10llvm_tools: teach patch updating logic about google3-unstableGeorge Burgess IV
This CL lets us use the new google3-unstable option from update_chromeos_llvm_next_hash.py. It also includes some formatting changes forced by `yapf`. BUG=chromium:914081 TEST=Unittests have no new failures; ran the script with google3-unstable, and it appeared to parse. Change-Id: Ib70e238b383e91dfa7c7df04d716e7127402f68a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1793907 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2019-09-10llvm_tools: support grabbing google3's unstable LLVMGeorge Burgess IV
Google3 integrates LLVM pretty often -- using that as a foundation for testing might be a good idea. This CL enables us to pull the revision of their unstable LLVM. As an added bonus, this will also have us print a message to stderr when we're syncing LLVM for the first time. Otherwise, it may seem to a user that our script got hung up on something while that first clone happens. :) BUG=chromium:914081 TEST=Unittests. Ran the new get_llvm_hash functionality. Change-Id: I3a7088c25dbd7169ca31373daf0c46fb28f46a68 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1793906 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2019-09-09LLVM tools: Migrated all scripts to python3Salud Lemus
This CL includes changes such as replacements of `\'` with `"` and adding extra debugging output to some scripts. Currently, the scripts are in python2, so migrating them to python3 so they are more maintainable. BUG=None TEST=Ran each script by itself with various input (e.g. different google3, tot, etc.). Change-Id: Ib72b7744c6f7c13711c2db427f6524ff3cbc6205 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1787738 Tested-by: Salud Lemus <saludlemus@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2019-09-06llvm_tools: fix get_llvm_hash_unittestGeorge Burgess IV
It was broken when I tried to run it. This fixes it, and removes tests that no longer test anything meaningful (e.g. migration to `subprocess` made a lot of our "if ${command} failed, ...") logic go away. BUG=None TEST=./get_llvm_hash_unittest.py Change-Id: Id631e54f1d5af7c08e86f4fec9f97de79de4081d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1788665 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: George Burgess <gbiv@chromium.org>
2019-09-04LLVM tools: Added a simple custom script exampleSalud Lemus
This custom script determines what to set the tryjob's 'status' to based off of the script's exit code. BUG=None TEST=Ran the 'update_tryjob_status.py' script with `--custom_script` and `--set_status custom_script` option. Used the absolute path to this script for `--custom_script`. The tryjob's 'status' was updated correctly based off of the exit code by the custom script. Change-Id: Ib4fe58406ba6f9c9cb0cdc9dcc3e7d5e9bb18fb7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1783838 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-03LLVM tools: Added auto bisection of LLVMSalud Lemus
Similar to 'llvm_bisection.py' script but uses `cros buildresult` to update each tryjob's 'status' field. The script sleeps for X minutes and continues where bisection left off (similar behavior if script terminates). The script is an infinite loop but terminates when there are no more revisions between the new 'start' and new 'end' or if an exception happens. This script is using the scripts such as bisection script and updating a tryjob's status script in a loop. BUG=None TEST=Ran 'auto_llvm_bisection.py' script with a file that was not created and start revision of 369410 and end revision of 369420. Successfully created tryjobs between the start and end and the script went to sleep for X minutes and woke up to resume where bisection left off. Change-Id: I711988b164c41f56ecc2c9478527bdcfe8f5bb88 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1776330 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-09-03LLVM tools: Updated README.md to include new scriptsSalud Lemus
Also added more examples for each script. BUG=None TEST=None Change-Id: Ic41217574a4a430d6869679ddc8e8c920795269b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1783103 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-28LLVM tools: Add extra return value for no tryjobsSalud Lemus
BUG=None TEST=Function returned correctly Change-Id: I568be1b17cc2fda982d4a4fa0d0c15d08475ea45 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1775399 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-28LLVM tools: Fixed unreferenced errorSalud Lemus
BUG=None TEST=Ran 'update_packages_and_run_tryjobs.py' with google3 option. Change-Id: I200b53239c9a557f59e94be7b2b4d0ee8e6cffb3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1775022 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Manoj Gupta <manojgupta@chromium.org>
2019-08-28LLVM tools: Added support for 'skip' and executing a custom scriptSalud Lemus
If a tryjob's status is set to 'skip', then that tryjob will not be considered when bisecting LLVM. And for executing a custom script, the exit code will be used by a mapping that sets the 'status' to the equivalent value of the exit code. BUG=None TEST=Ran the 'update_tryjob_status.py' with the 'skip' option and successfully set the tryjob's status to 'skip'. Also, created a testing script to serve as the custom script. Successfully set the 'status' value based off of the custom script's exit code. Change-Id: I0ae3a9b53467b13ff5ce26aeff46b31563cfc7e0 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1772472 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-26LLVM tools: Maintain up-to-date LLVM repo in 'llvm_tools'Salud Lemus
Keeps an up-to-date LLVM source tree in 'llvm_tools' directory. Previously, the LLVM repo would be cloned once and then be forgotten. BUG=None TEST=Ran the 'llvm_bisection.py' script on a previously created JSON file (the script created it before). Successfully created tryjobs that were not in the 'jobs' list. Also, successfully kept the LLVM repo up-to-date in 'llvm_tools'. Change-Id: If9038da788eb0fe0fe258274c1942f1d687868b4 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1769483 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-23LLVM tools: Change list now contains all tryjobs launchedSalud Lemus
After creating the CL, tryjobs are launched/submitted, so for each tryjob, its url is added to the CL as a comment (single comment). BUG=None TEST=Ran the 'update_packages_and_run_tryjobs.py' with 2 builders and successfully listed each tryjob's url as a single comment in the CL. Change-Id: I81cb23d35c00ba048f971c5263e5c8a76342c0cb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1769477 Tested-by: Salud Lemus <saludlemus@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2019-08-23LLVM tools: Added bisection of LLVMSalud Lemus
Bisects LLVM based using a JSON file and the last good version and the last bad version. The number of tryjobs that are launched in the between the two (good, bad) depends on the 'parallel' command line argument. Added support for modifying a tryjob's status. Added support for removing, relaunching, or adding a tryjob. BUG=None TEST=Ran the script with 'start_rev' as 367590 and 'end_rev' as 367622 and a JSON file that did not exist. Successfully created tryjobs. Ran, the script again after a few hours and also successfully created another set of tryjobs that were not in the 'jobs' list. Change-Id: I71a6d74f62c6f6fc212209c1faa73e729912b086 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1761469 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-22LLVM tools: Display to stdout when the log level is 'verbose'Salud Lemus
BUG=None TEST=Ran the 'update_chromeos_llvm_next_hash.py' with log level set to 'none' and then with 'verbose'. It correctly displayed to stdout for 'verbose'. Change-Id: Ib6b3bba44ccdb78a0d000f51287ffc7b0b5670d5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1766581 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-22LLVM tools: Fixed remove patches mode when dealing with future patchesSalud Lemus
The issue was that if a patch is from the future (e.g. its start version > SVN version) then that patch would be removed in 'remove_patches' mode. BUG=None TEST=Ran the script on revision 365631 and the expected patches to be removed were removed from the JSON file. Change-Id: I42e63f972103b4f48b6e9ffeaa75a0263f31ec79 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1765950 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-16LLVM tools: Moved function that retrieves latest g3 LLVM versionSalud Lemus
BUG=None TEST=Ran the script that creates tryjobs for both 'tot' and 'google3' Change-Id: I1be3971ab8858cb21d9d95b63b1bf60a98d3c7b9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1758728 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-16LLVM tools: Added support for bisection of patchesSalud Lemus
Changed 'get_google3_llvm_version.py' and 'get_llvm_hash.py' to use the subprocess module instead of the command executer because the patch manager script uses some methods for bisection (retrieving the good and bad hash). They were also changed because the ebuilds will not have access to the command executer when invoking the patch manager script. BUG=None TEST=Ran the script on SVN version of 367622 without continuing bisection and successfully bisected the failed patch and terminated the script. Then moved HEAD of source tree to the bisected SVN version and applied the patch manually to test correctness and also moved HEAD to the SVN version one above it and one below it and also manually applied the patch. Change-Id: I2367b76e9bb4d0c95d651ec7b3f66e582155d2c7 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1752526 Tested-by: Salud Lemus <saludlemus@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2019-08-12LLVM tools: Assert that the scripts are not run inside the chrootSalud Lemus
BUG=None TEST=Scripts terminated when ran inside the chroot Change-Id: Id7060ca6554a05f158160e73759763663dec1ce9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1742544 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-10llvm-tools: Use the chromium mirror for gettting tot hash.Manoj Gupta
We were querying github to get the tot git hash. However, the ebuilds use the chromium mirror for llvm sources. As the mirror can be behind github, it caused a version skew where the sources could not be checked out to the desired tot hash. BUG=None TEST=update_packages script. Change-Id: I6510213f8de2ea29b26f46741a5da7b4c81f59e0 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1747167 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Manoj Gupta <manojgupta@chromium.org>
2019-08-07LLVM tools: Added README.md for clarification on the scriptsSalud Lemus
BUG=None TEST=None Change-Id: Ie112596f6297d5b60346e85bda45aa41284ecbf5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1740547 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-07LLVM tools: Updated unittests for ToT optionSalud Lemus
BUG=None TEST='./update_chromeos_llvm_next_hash_unittest.py' and './llvm_patch_management_unittest.py' pass Change-Id: I59bb1f8a1be5610c3a2c64b365392c07e95f97fb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1739606 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-06llvm-tools: Remove assert when stderr is non-empty.Manoj Gupta
stderr often can have a non-empty value. e.g. On my machine, I got: WARNING cros_sdk:enter_chroot: Gclient cache dir "/tmp/git-cache" is not a directory. Therefore remove the assert for empty stderr. BUG=None TEST=No asserts Change-Id: I9f175aca9bbcee2acbb77bacfd8806de985d3447 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1738324 Tested-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org>
2019-08-06LLVM tools: Added script that runs tryjobs after updating the packagesSalud Lemus
BUG=None TEST=Ran the script and a CL was generated for ToT correctly and two trybots were created, one for kevin and one for nocturne Change-Id: I856c23d4368f5e45d9837e6f4341ae1f97f8f136 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1733650 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Manoj Gupta <manojgupta@chromium.org>
2019-08-02LLVM tools: Moved parsing 'llvm-svn' of a commit message to another functionSalud Lemus
BUG=None TEST='./get_llvm_hash_unittest.py' passes Change-Id: I7cbb34a9e7924104aaa5934ca2156f547f421450 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1731735 Tested-by: Salud Lemus <saludlemus@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2019-08-02LLVM tools: Added default value when updating packagesSalud Lemus
BUG=None TEST='./update_chromeos_llvm_next_unittest.py' passes Change-Id: I6701bfe2472e2bbec2d791f6f044d14bfe483195 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1732430 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-01LLVM tools: Removed calls to g4 when retrieving latest g3 LLVM versionSalud Lemus
BUG=None TEST=Ran the script and the correct g3 LLVM version was returned Change-Id: I37847c56b1f72f3ceadc9e5fb7171faae273203c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1729508 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-01LLVM tools: Gets the latest git hash from ToT of LLVMSalud Lemus
BUG=None TEST='./get_llvm_hash_unittest.py' passes Change-Id: I6c5a58b82811f2d3abe8d377651f0036fa1bc491 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1724419 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-01LLVM tools: Unittests for update_chromeos_llvm_next_hash.pySalud Lemus
Updated and added unittests for the script now that the script calls a script that setups up the arguments for the patch manager. BUG=None TEST='./update_chromeos_llvm_next_hash_unittest.py' passes Change-Id: If16797725818d9f3c08c9e030e870e6bdbc3c83b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1719774 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-01LLVM tools: Unittests for llvm_patch_management.pySalud Lemus
BUG=None TEST='./llvm_patch_management_unittest.py' passes Change-Id: I03cb727669039c9f89431ceec34c32d5d940777b Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1717250 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-08-01LLVM tools: Unittests for patch_manager.pySalud Lemus
BUG=None TEST='./patch_manager_unittest.py' passes Change-Id: I66235de2153bb32160d7ce301a86a246cef967a3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1719213 Tested-by: Salud Lemus <saludlemus@google.com> Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
2019-08-01LLVM tools: patch management for LLVM and patch managerSalud Lemus
The script 'llvm_patch_management.py' constructs the arguments for the patch manager to handle patches of a package. The script 'patch_manager.py' is the patch manager. The patch manager has different modes to handle all applicable patches that fail to apply. The mode 'bisect_patches' is a WIP. BUG=None TEST=Created a json file that has the patches of the LLVM ebuild and used the default failure mode of the patch manager. All patches applied successfully for r365631. Change-Id: I42f339ac0bb7c35d70a96cc0c2daeb470336b13c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1708223 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-07-23LLVM tools: Changed comment after 'LLVM_NEXT_HASH'Salud Lemus
Some unittests were changed as well to affect this change. BUG=None TEST='./update_chromeos_llvm_next_unittest.py' passes Change-Id: I179ae679eaac7f34c72c688e6ed15af79d8d6749 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1714124 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-07-22toolchain-utils/llvm_tools: fix a bug overwriting chroot pathZhizhou Yang
In the original code, the chroot_path will be overwriten by stdout, and if there are multiple entries in package_list, the second run will fail because chromeos_root is not correct. TEST=Tested with ./$SCRIPT --update_packages sys-devel/llvm sys-libs/compiler-rt BUG=None Change-Id: I2a9b924ed44f648bc5a27e8633fcf1e9c43819d9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1711160 Tested-by: Zhizhou Yang <zhizhouy@google.com> Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Auto-Submit: Zhizhou Yang <zhizhouy@google.com> Commit-Queue: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
2019-07-12LLVM tools: Unittests for update_chromeos_llvm_next_hash.pySalud Lemus
BUG=None TEST='./update_chromeos_llvm_next_hash_unittest.py' passes Change-Id: I1716861a81ef74cfa94d5894050fb1ecf7b0a727 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1697026 Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-07-12LLVM tools: updates the LLVM next hash of a package or packagesSalud Lemus
BUG=None TEST=Ran the script and a CL was uploaded for review for 'sys-devel/llvm' Change-Id: I827843f4841f18b586ae2dce39197291014cb559 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1691520 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-07-08LLVM tools: Unittests for get_llvm_hash.pySalud Lemus
BUG=None TEST='./get_llvm_hash_unittest.py' passes Change-Id: I421e58dda744c6df6ae37a2fbc6559b98bcab2a8 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1687777 Reviewed-by: George Burgess <gbiv@chromium.org> Reviewed-by: Manoj Gupta <manojgupta@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>
2019-07-02LLVM tools: get hashes from google3Salud Lemus
BUG=None TEST=Ran the script and returned expected results Change-Id: I360884c2dc4088a7875e88f2115460c5aa75ab27 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1676593 Reviewed-by: George Burgess <gbiv@chromium.org> Tested-by: Salud Lemus <saludlemus@google.com>