dd24c971a36d73d1e4224aa3bb8b08b956eecd5f |
|
18-May-2018 |
Tao Bao <tbao@google.com> |
releasetools: Skip checking files with non-monotonic ranges. Bug: 79951743 Test: Run validate_target_files.py on target_files.zip that has non-monotonic ranges listed in IMAGES/system.map. Change-Id: I28d3ca6972d361362589cd51e60731af9994a551 Merged-In: I28d3ca6972d361362589cd51e60731af9994a551 (cherry picked from commit d32936d6572a525e09c3e02682deff4f7342e586)
/build/make/tools/releasetools/validate_target_files.py
|
242a9e5fb56566db7236088e1b2bcce0ab87688c |
|
12-May-2018 |
Tao Bao <tbao@google.com> |
releasetools: Skip validating non-sparse images. Targets can define 'TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true' to generate non-sparse system images, but validate_target_files.py doesn't work with such images. This CL adds a workaround to temporarily skip the file consistency check for such images. Bug: 79616357 Test: Run validate_target_files.py on a target_files.zip that's not using sparse image. Test: Run validate_target_files.py on marlin target_files.zip (which uses sparse image). Change-Id: I1f4066c5b3fec595b10cab10283d62c1c5a6c624 Merged-In: I1f4066c5b3fec595b10cab10283d62c1c5a6c624 (cherry picked from commit 63e2f49fddd1101dcaf342b30e09608319f40b18)
/build/make/tools/releasetools/validate_target_files.py
|
f6f13acf73c816dd5f415badb7e8505531ba2015 |
|
08-Mar-2018 |
Tao Bao <tbao@google.com> |
releasetools: Fix the broken validate_target_files.py. The file was broken due to earlier touches: - Missing 'import zipfile'; - Mismatching arguments when calling GetSparseImage(). Bug: 73996151 Test: Run validate_target_files.py with a walleye-target_files.zip. Test: pylint --rcfile=pylintrc validate_target_files.py Change-Id: I3692bd51fb27a3da698e06b75155e84502549f66 (cherry picked from commit c63626b4a31d202f304e56f22f6d66b00f61f60c)
/build/make/tools/releasetools/validate_target_files.py
|
dba59eeabd21c91d67d6a6ce365141deb56ed0f7 |
|
09-Jan-2018 |
Tao Bao <tbao@google.com> |
releasetools: Don't return ZipFile from common.UnzipTemp(). In addition to the unzipping work, common.UnzipTemp() kindly bundles an open ZipFile object as part of the return value. It doesn't look very helpful to the callers though. It also looks less obvious that the caller needs to properly close the handle (missing the close here is benign though). This CL just removes the ZipFile object out of the return value, and leaves the work to callers. Test: `m dist` on both of A/B and non-A/B target. Test: python -m unittest test_add_img_to_target_files Test: python -m unittest test_common Test: python -m unittest test_ota_from_target_files Test: Check the callers to common.UnzipTemp() in code search. Change-Id: Id47da3fd42a0e76d6ae8851f05780db319ee48cf
/build/make/tools/releasetools/validate_target_files.py
|
c765cca38bd357097dd2b7d3713a49bcd62a6858 |
|
01-Feb-2018 |
Tao Bao <tbao@google.com> |
releasetools: Detect incomplete block ranges. This CL detects incomplete block ranges (e.g. due to the holes in mke2fs created images). Such block ranges will be tagged, so we won't attempt to imgdiff those files. Note that the change to blockimgdiff.py, which uses the tag info, will come in a separate CL. An 'extra' attribute is added to RangeSet class, which defaults to an empty dict. An 'incomplete' tag will be added into the dict by the caller of the class. Not adding this tag as an immediate attribute, because it is not a property regarding the ranges being represented, but rather some storage space for the caller. This CL also refactors GetSparseImage and RoundUpTo4K into common.py, so the same code can be called from both of ota_from_target_files.py and validate_target_files.py. Not able to add unittests for GetSparseImage(), as SparseImage requires data in specific format. Bug: 68016761 Test: Run validate_target_files.py on target-files.zip. It skips validating files with missing holes as before. Test: Run ota_from_target_files.py on angler target-files.zip. It gives identical packages w/ and w/o the CL. Test: pylint on changed files. There're warnings with common.py, but unrelated to this change. Change-Id: I126ccfea13c0d5ebcc8c1b4ff1a4f9200e97423a
/build/make/tools/releasetools/validate_target_files.py
|
bb20e8c5f2c97cfbed30e8cab53161a539398c8e |
|
01-Feb-2018 |
Tao Bao <tbao@google.com> |
releasetools: Make validate_target_files.py pylint clean. C: 73, 0: Wrong hanging indentation (add 4 spaces). file_name, actual_sha1, expected_sha1) ^ | (bad-continuation) C:171, 0: Wrong continued indentation (add 20 spaces). 'SYSTEM/etc/recovery.img', expected_recovery_sha1) ^ | (bad-continuation) C:185, 0: Wrong continued indentation (add 20 spaces). file_path='IMAGES/boot.img', expected_sha1=boot_info[3]) ^ | (bad-continuation) C:191, 0: Wrong continued indentation (add 20 spaces). file_path='IMAGES/recovery.img', ^ | (bad-continuation) C:192, 0: Wrong continued indentation (add 20 spaces). expected_sha1=expected_recovery_sha1) ^ | (bad-continuation) W: 67,15: Use % formatting in logging functions and pass the % parameters as arguments (logging-format-interpolation) W:150,17: Use % formatting in logging functions and pass the % parameters as arguments (logging-format-interpolation) W:153,15: Use % formatting in logging functions and pass the % parameters as arguments (logging-format-interpolation) W:194,15: Use % formatting in logging functions and pass the % parameters as arguments (logging-format-interpolation) C: 27, 0: standard import "import logging" comes before "import common" (wrong-import-order) C: 28, 0: standard import "import os.path" comes before "import common" (wrong-import-order) C: 29, 0: standard import "import re" comes before "import common" (wrong-import-order) C: 31, 0: standard import "import sys" comes before "import common" (wrong-import-order) Test: pylint --rcfile=pylintrc validate_target_files.py Test: Run validate_target_files.py with a target-files.zip. Change-Id: Ie64acdb4cee4326938c4ad5a34b575d7b82478c0
/build/make/tools/releasetools/validate_target_files.py
|
b418c30e3a2a1cfc07bc17577fad29bdbc3301a5 |
|
31-Aug-2017 |
Tao Bao <tbao@google.com> |
Skip checking files that have less blocks in block map. When creating ext4 images with mke2fs, it may skip allocating some blocks if they contain all zeros. As a result, there could be less blocks listed in the block map than the actual file length. For example, for a file with a length of 112200-byte (27+ blocks), the listed blocks in block.map could be '43665-43688' (24 blocks). Because some all-zero blocks are not taking actual space. The generated ext4 images are perfectly valid - kernel will figure out that data block is not allocated and writes all zeros into user buffer. However, we can't fully reconstruct a file from its block list in our Python script. Ideally this can be avoided by mounting or parsing an ext4 image directly, which is yet to be supported in our script. This CL skips checking for such files to avoid failing validate_target_files.py. Bug: 65213616 Test: validate_target_files.py passes on targets with mke2fs generated images (e.g. marlin). Change-Id: Id9cc59e345b9283844044ef94ceb5702f0ca0526
/build/make/tools/releasetools/validate_target_files.py
|
9c384d2ca5b0b54f8b3132b70353d4a4eaa9f222 |
|
21-Jun-2017 |
Tianjie Xu <xunchang@google.com> |
Verify the contents in install-recovery.sh Check the SHA1 of recovery.img and boot.img embedded in the install-recovery.sh. Bug: 35411009 Test: validation script detects mismatch for both full recovery and recovery-from-boot. Change-Id: I5f07a869d9fa17fad26a22ef9ca3ecb06b1b28e3
/build/make/tools/releasetools/validate_target_files.py
|
afaa0a638b901ff2b474214caa65f136421abbae |
|
28-Feb-2017 |
Tao Bao <tbao@google.com> |
releasetools: Add validate_target_files.py. Bug: 35408446 Test: validate_target_files.py on existing target_files zips. Change-Id: I140ef86533eee5adb93c2546510fdd7e9ce4e81a
/build/make/tools/releasetools/validate_target_files.py
|