Commit Graph

771 Commits

Author SHA1 Message Date
Tao Bao df4cb0b2c1 releasetools: Add --oem_no_mount option.
We may have devices with OEM-specific properties but without an OEM
partition (e.g. the properties might be set by init based on hardware
SKUs). For such devices, we supply --oem_no_mount to skip mounting the
OEM partition in the updater-script. The option is only meaningful when
-o (--oem_settings) is specified.

Bug: 27359929
Change-Id: Ic08396e478a82be4188e980e704b33b4f704a8d7
(cherry picked from commit 8608cde944)
2016-02-26 16:10:34 -08:00
Tao Bao 8608cde944 releasetools: Add --oem_no_mount option.
We may have devices with OEM-specific properties but without an OEM
partition (e.g. the properties might be set by init based on hardware
SKUs). For such devices, we supply --oem_no_mount to skip mounting the
OEM partition in the updater-script. The option is only meaningful when
-o (--oem_settings) is specified.

Bug: 27359929
Change-Id: Ic08396e478a82be4188e980e704b33b4f704a8d7
2016-02-26 16:07:16 -08:00
Tao Bao 313f63c99e Merge "releasetools: Support generating downgrade incremental OTAs." am: 1284954db0
am: 5a697261fd

* commit '5a697261fd97c05ca8cc29c5696b29819fc6aad9':
  releasetools: Support generating downgrade incremental OTAs.
2016-02-26 00:43:39 +00:00
Tao Bao 4da324e1a4 releasetools: Support generating downgrade incremental OTAs.
Add --downgrade flag to ota_from_target_files.py script. It allows
generating an incremental OTA that updates from a newer build to an
older one (based on timestamp comparison). "post-timestamp" line in the
metadata file will be replaced by "ota-downgrade=yes". A data wipe will
always be enforced, so "ota-wipe=yes" will also be included in the
metadata file.

Bug: 26883782
Change-Id: Iaa05f662d948b7ab632a9fbb7051cc3f8bf68c21
(cherry picked from commit 5d1825664a)
2016-02-25 16:39:42 -08:00
Tao Bao 5d1825664a releasetools: Support generating downgrade incremental OTAs.
Add --downgrade flag to ota_from_target_files.py script. It allows
generating an incremental OTA that updates from a newer build to an
older one (based on timestamp comparison). "post-timestamp" line in the
metadata file will be replaced by "ota-downgrade=yes". A data wipe will
always be enforced, so "ota-wipe=yes" will also be included in the
metadata file.

Bug: 26883782
Change-Id: Iaa05f662d948b7ab632a9fbb7051cc3f8bf68c21
2016-02-24 11:31:17 -08:00
Alex Klyubin b05b62df2e Sign APKs using SHA-256 instead of SHA-1 when possible.
This changes the build system to provide the signapk tool with the
minSdkVersion of the APK being signed. signapk in turn will then use
SHA-256 instead of SHA-1 if minSdkVersion is 18 (JB MR2) or higher
(see c2c49ed0c1).

To avoid increasing incremental OTA update package sizes for already
released platforms, release build scripts disable the above logic when
signing target files ZIPs for pre-N platforms.

Bug: 25643280

(cherry picked from commit 2cfd1d108c)

Change-Id: I38450d07ddc05c705de40313f843beada8db7d98
2016-02-10 17:19:08 -08:00
Alex Klyubin fec3a14892 Merge "Sign APKs using SHA-256 instead of SHA-1 when possible."
am: 07d3dbd2ed

* commit '07d3dbd2eda1aa5b3283191e681d48b341c635bf':
  Sign APKs using SHA-256 instead of SHA-1 when possible.
2016-02-10 21:46:53 +00:00
Alex Klyubin 07d3dbd2ed Merge "Sign APKs using SHA-256 instead of SHA-1 when possible." 2016-02-10 21:35:06 +00:00
Sami Tolvanen 0975d70e33 Fix metadata location when file system doesn\'t span the partition
am: 405e71dcd3

* commit '405e71dcd3e96457766c3ac3f2aa3d4bd9f95e32':
  Fix metadata location when file system doesn't span the partition
2016-02-10 19:33:05 +00:00
Sami Tolvanen 405e71dcd3 Fix metadata location when file system doesn't span the partition
Pad the sparse image with a zero fill chunk to correctly position
verity and FEC metadata at the end of the partition.

Bug: 27073791
Change-Id: I9f70d579a42e5007d50e9c02a98a608d2815f0ed
(cherry picked from commit 6a8781a251)
2016-02-10 10:53:47 -08:00
Sami Tolvanen 7855c9aadf Merge "Fix metadata location when file system doesn't span the partition" 2016-02-10 18:50:17 +00:00
Alex Klyubin 2cfd1d108c Sign APKs using SHA-256 instead of SHA-1 when possible.
This changes the build system to provide the signapk tool with the
minSdkVersion of the APK being signed. signapk in turn will then use
SHA-256 instead of SHA-1 if minSdkVersion is 18 (JB MR2) or higher
(see c2c49ed0c1).

To avoid increasing incremental OTA update package sizes for already
released platforms, release build scripts disable the above logic when
signing target files ZIPs for pre-N platforms.

Bug: 25643280

Change-Id: I3f2faaf49c6fa392ffbf1ee9f30de476f9f73231
2016-02-10 09:40:31 -08:00
Sami Tolvanen 6a8781a251 Fix metadata location when file system doesn't span the partition
Pad the sparse image with a zero fill chunk to correctly position
verity and FEC metadata at the end of the partition.

Bug: 27073791
Change-Id: I9f70d579a42e5007d50e9c02a98a608d2815f0ed
2016-02-10 09:37:59 -08:00
Tao Bao b4cfca530c releasetools: Add two new entries to metadata.
Add "ota-required-cache" into the metadata file in an OTA package,
which shows the minimum free space on /cache to apply the update.

Add "ota-type" into the metadata file, which shows the OTA type for
this package (i.e. one of FILE, BLOCK and AB).

Also add the cache free space check into updater-script when generating
block-based incremental OTAs (we only had such lines for file-based
incrementals before).

Bug: 26731903
Change-Id: Id6ff0fc4cdfb1443636b0b3800b0f8bddb5bb1d0
(cherry picked from commit d8d14bec0d)
2016-02-10 09:37:40 -08:00
Tao Bao ebadc3bd8e Merge "improve performance of blockimgdiff" into nyc-dev 2016-02-10 17:36:59 +00:00
Doug Zongker 6ab2a5017e improve performance of blockimgdiff
Substantially improves the performance of some BlockImageDiff steps on
large images.  GenerateDigraph and AssertSequenceGood are now linear in
the number of blocks in the target image rather than quadratic in the
size of the partition.  FindVertexSequence tracks the score of each
vertex, the set of sources and sinks, and maintains a heap for finding
the best vertex to use for the greedy step, instead of repeatedly
re-scanning the set of remaining vertexes.

Change-Id: Ifeea5053d80ef4f06a5aa239c9a1797dd5e47841
(cherry picked from commit 2d2dd1526d)
2016-02-10 09:36:22 -08:00
Tao Bao 214773499c Merge "releasetools: Add two new entries to metadata."
am: 8290ba9e0d

* commit '8290ba9e0df3e6f4ef8c21e3964862f90944ead2':
  releasetools: Add two new entries to metadata.
2016-02-10 17:10:51 +00:00
Tao Bao 8290ba9e0d Merge "releasetools: Add two new entries to metadata." 2016-02-10 17:05:47 +00:00
Doug Zongker 52970f60e0 Merge "improve performance of blockimgdiff"
am: ae91d54e89

* commit 'ae91d54e899768d0a185b2fead0e42627b30376d':
  improve performance of blockimgdiff
2016-02-10 16:57:12 +00:00
Doug Zongker 2d2dd1526d improve performance of blockimgdiff
Substantially improves the performance of some BlockImageDiff steps on
large images.  GenerateDigraph and AssertSequenceGood are now linear in
the number of blocks in the target image rather than quadratic in the
size of the partition.  FindVertexSequence tracks the score of each
vertex, the set of sources and sinks, and maintains a heap for finding
the best vertex to use for the greedy step, instead of repeatedly
re-scanning the set of remaining vertexes.

Change-Id: Ifeea5053d80ef4f06a5aa239c9a1797dd5e47841
2016-02-10 07:44:21 -08:00
Patrick Tjin 2ef3ca59be Add compressor options for squashfs vendor images
am: e11aa50bb2

* commit 'e11aa50bb21e7b7afa17f19085cc20b23683cc18':
  Add compressor options for squashfs vendor images
2016-02-10 00:17:13 +00:00
Patrick Tjin e11aa50bb2 Add compressor options for squashfs vendor images
Change-Id: I4f9f5d62e24654cb37d436cb73dd5893aed30fa8
2016-02-09 15:41:07 -08:00
Dan Willemsen a465cf681b Merge "Revert "Do not diff .odex files"" 2016-02-08 22:40:33 +00:00
Dan Willemsen 86c8ebb6ef Revert "Do not diff .odex files"
The bug has been fixed, .odex files are deterministic.

This reverts commit c4438d3d29.

Bug: 26956807
Change-Id: Iaa42dfba5cf79ee64ac20cf4f1f3a4598f4275f4
2016-02-08 20:48:48 +00:00
Tao Bao d8d14bec0d releasetools: Add two new entries to metadata.
Add "ota-required-cache" into the metadata file in an OTA package,
which shows the minimum free space on /cache to apply the update.

Add "ota-type" into the metadata file, which shows the OTA type for
this package (i.e. one of FILE, BLOCK and AB).

Also add the cache free space check into updater-script when generating
block-based incremental OTAs (we only had such lines for file-based
incrementals before).

Bug: 26731903
Change-Id: Id6ff0fc4cdfb1443636b0b3800b0f8bddb5bb1d0
2016-02-08 11:00:27 -08:00
Alex Deymo db82f72752 Merge "ota_from_target_files: Include the payload properties." 2016-02-05 23:11:18 +00:00
Alex Deymo 19241c11bd ota_from_target_files: Include the payload properties.
When building an A/B OTA package, include the payload.bin properties as
a key-value pairs text file, so it can easily be passed to
update_engine during payload application.

Bug: 26991255
TEST=`ota_from_target_files out/dist/${BOARD}-target_files.zip full-ota.zip` includes the properties.

Change-Id: I445c8a8e412a8e16b48b6ee626db8e27d48a38a9
2016-02-04 23:29:50 -08:00
Dan Willemsen c4438d3d29 Do not diff .odex files
They still are not deterministic -- only the boot images were made
deterministic (.oat/.art).

Bug: 26956807
Change-Id: I2e00bb6662b4c8d184c48ef9aa34b39142c94893
2016-02-03 10:46:39 -08:00
Dan Willemsen 8c915ee2ef Diff libpac.so now that it is deterministic
Bug: 25348136
Change-Id: I008902299281b5ddd55a9b8c405d53eea2d56c8b
2016-02-03 10:45:25 -08:00
Dan Willemsen 734d78cdf6 Diff .art/.oat/.odex files now that they are deterministic
This also whitelists the ro.build.user property, which may change based
on host username.

Bug: 26687569
Change-Id: I8f3244c2325dd80a7961c474655f0c50670d1b46
2016-02-01 13:41:30 -08:00
Alex Klyubin 061289c432 Revert "Sign APKs using SHA-256 instead of SHA-1 when possible." This is breaking CTS.
This reverts commit c2a36afd67.

Change-Id: I4389bf99aeb213198c1c501ba9462bd4a4540d0a
2016-01-29 23:56:44 +00:00
Alex Klyubin c2a36afd67 Sign APKs using SHA-256 instead of SHA-1 when possible.
This changes the build system to provide the signapk tool with the
minSdkVersion of the APK being signed. signapk in turn will then use
SHA-256 instead of SHA-1 if minSdkVersion is 18 (JB MR2) or higher
(see c2c49ed0c1).

To avoid increasing incremental OTA update package sizes for already
released platforms, release build scripts disable the above logic when
signing target files ZIPs for pre-N platforms.

Bug: 25643280

(cherry picked from commit de5bc04717)

Change-Id: I4b100750e47788ab6ed897a0a5abfd33542e8676
2016-01-29 10:17:02 -08:00
Alex Klyubin a80a8085e0 Revert "Sign APKs using SHA-256 instead of SHA-1 when possible."
This reverts commit 74df828cb5. This commit is breaking a build, again...

Change-Id: I2df561d68302ba4c83e90a64a7bf203645033a3b
2016-01-27 17:45:42 +00:00
Alex Klyubin 74df828cb5 Sign APKs using SHA-256 instead of SHA-1 when possible.
This changes the build system to provide the signapk tool with the
minSdkVersion of the APK being signed. signapk in turn will then use
SHA-256 instead of SHA-1 if minSdkVersion is 18 (JB MR2) or higher
(see c2c49ed0c1).

To avoid increasing incremental OTA update package sizes for already
released platforms, release build scripts disable the above logic when
signing target files ZIPs for pre-N platforms.

Bug: 25643280
Change-Id: I058393e0971d0d6559dbd69ea902754c6c7cab14
(cherry picked from commit de5bc04717)
2016-01-26 18:41:57 +00:00
Alex Klyubin 7382bdf8c1 Merge "Revert "Sign APKs using SHA-256 instead of SHA-1 when possible."" 2016-01-25 17:19:02 +00:00
Alex Klyubin 1429d5e14c Revert "Sign APKs using SHA-256 instead of SHA-1 when possible."
This reverts commit de5bc04717 because it's breaking some builds. Turns out some APKs have multiple sdkVersion attributes returned by aapt.

Change-Id: I013d6ef5eac473dd3900e0b9edf4c32cdc838bab
2016-01-25 17:17:09 +00:00
Alex Klyubin b763b29267 Merge "Sign APKs using SHA-256 instead of SHA-1 when possible." 2016-01-25 16:42:27 +00:00
Alex Klyubin de5bc04717 Sign APKs using SHA-256 instead of SHA-1 when possible.
This changes the build system to provide the signapk tool with the
minSdkVersion of the APK being signed. signapk in turn will then use
SHA-256 instead of SHA-1 if minSdkVersion is 18 (JB MR2) or higher
(see c2c49ed0c1).

To avoid increasing incremental OTA update package sizes for already
released platforms, release build scripts disable the above logic when
signing target files ZIPs for pre-N platforms.

Bug: 25643280
Change-Id: I048393e0971d0d6559dbd69ea902754c6c7cab14
2016-01-21 10:25:12 -08:00
Tao Bao c098e9efd9 Generate OTA packages for A/B update.
It calls brillo_update_payload to generate the payload for A/B update.
And packages the payload according to Android OTA package format.

Note that it only supports generating full/incremental OTAs with this
CL. Signing for release may not work properly at the moment.

Bug: 25715402
Change-Id: I4ac8505bacad28a572a9320dc8b52dd0f1ce47f5
2016-01-19 15:46:34 -08:00
Tianjie Xu ebe39a096a Fix print error of numbers of blocks
The total number of blocks to pack as new data was printed incorrectly.
Fix printing.

Change-Id: I6a6bb8dd6682d9c57943ceb1a728995f9529e2fd
2016-01-14 19:13:21 -08:00
Tianjie Xu 9b2fe7e0b8 Merge "Adjust the size limit for splitting large files" 2016-01-14 19:17:00 +00:00
Tianjie Xu bb86e1d9c2 Adjust the size limit for splitting large files
Modify the number of max blocks per transfer to reduce splitting of
large files during patch generation. This will reduce the size of
final incremental OTA updater package. In specific, the size limit
for each file to transfer is set to 1/8 cachesize instead of a fix
number.

Bug: 26472126

Change-Id: Iffb135e378c4c7a91640f2fc4c40e9e93d1fe4bb
2016-01-13 18:21:26 -08:00
Tianjie Xu 0b109751b8 Merge "Check block0 for remounting partition R/W" 2016-01-08 00:49:49 +00:00
Daniel Rosenberg 40ef35b9e9 Allow building recovery as boot.
With BOARD_USES_RECOVERY_AS_BOOT = true, we skip building the
non-ramdisk boot.img but building the recovery image as boot.img. It
contains recovery's ramdisk (e.g. with /sbin/recovery). It depends on
the bootloader parameter (skip_initramfs) to determine the actual mode
to boot into.

Change-Id: Id6e2d0a2b94383944ca8f35bba688c6401745622
(cherry picked from commit d80bef2b9e)
2015-12-21 11:17:08 -08:00
Tianjie Xu fc3422ad36 Check block0 for remounting partition R/W
Add a function check_first_block to read block0 and output a message
on screen if the device has been remounted. The function is called
for version >= 4 only; it executes after a failing block verification
and before recovery attempts.

Bug: 21124327
Change-Id: I49dc0b861c702698896a2495ca094215705d4650
(cherry picked from commit 9dac797013)
2015-12-18 11:05:34 -08:00
Sami Tolvanen 4a0600406e build_image: don't call append2simg for FEC
append2simg can be slow, so generate error correction data before verity
data is appended, and append all metadata to the image at the same time.

Needs matching changes from
  I09349368925e5e2f2a7961a712a1e933eb0b9ec8

Bug: 26251929
Change-Id: Iea8cee0aee353b4d029d9581e8fbd68ec7b7dd4b
2015-12-18 15:50:25 +00:00
Sami Tolvanen ff914f5dd0 build_image: remove an unnecessary call to append2simg
append2simg on a large image is fairly slow, so append verity metadata to
the hash tree to avoid two calls.

Bug: 26251929
Change-Id: I5ec84dcd6e8500e990af13b1f9cef5e809b41605
2015-12-18 13:28:25 +00:00
Todd Poynor b2a555e6fc Make squashfs sparse image generation optional
Allow non-sparse squashfs image generation, a la ext filesystems.

Bug: 26218766
Change-Id: Ifd596af16411e0cf69a2e7e05d725fd9442dc79c
2015-12-15 20:11:12 -08:00
Alex Klyubin 9667b18f23 Make signapk use Conscrypt.
This makes the signapk tool use Conscrypt (where possible) instead of
the platform-default JCA providers and the Bouncy Castle JCA provider.
This speeds up (by 10-30%) APK and OTA update signing because
Conscrypt's crypto primitives are backed by BoringSSL.

Previously, the signapk tool consisted only of the signapk.jar.
Because Conscrypt is backed by native code, signapk now consists of
signapk.jar and crypto_openjdk_jni shared library. This requires that
users of the tool be updated to provide a suitable -Djava.library.path
argument to the Java runtime. This change updates all known users of
the tool inside the Android source tree to do so.

Bug: 26097626
Change-Id: I8411b37d7f771ed99269751a3007dff103083552
2015-12-11 08:36:42 -08:00
Alex Klyubin eb756d7b7b Do not run zipalign when re-signing APKs.
Running zipalign is no longer needed because signapk takes care of
alignment.

Bug: 25794543
Change-Id: I1080240a67ea6f1b41585fff83d18d57fdcf44e2
2015-12-08 11:05:13 -08:00
Tao Bao 269d785ce0 releasetools: Always use recovery mount options.
Change-Id: I6e96c417ffb5ad36405f4a6f5342f80f358f375f
2015-12-02 15:51:47 -08:00
Tao Bao c386890d0e releasetools: Abort the update on apply_patch failures.
We used to silently ignore the return value from apply_patch() even if
it had failed. It gives us more trouble to investigate the failure when
the affected file/partition gets touched in subsequent OTAs. This CL
adds the checking of the return value and aborts the update accordingly.

Bug: 25893277
Change-Id: Ie5e1c563576e503343e6a5b28ed4d7039f6f919c
2015-12-02 12:26:57 -08:00
Tao Bao d62c603573 releasetools: Allow logging the diff for incrementals.
Add an option "--log_diff <filename>" to ota_from_target_files.py
script. When enabled, it logs the differences between the source
and target builds into <filename> when generating incremental OTAs.

Also move target_files_diff.py into releasetools/ so that it can be
packed into otatools.zip.

Bug: 25372309
Change-Id: Ifd4ed0f2f12ef040ee377621ec8c35a873cec34f
2015-11-30 11:26:40 -08:00
Tao Bao 48550cceb0 releasetools: Fix the bug with TARGET_NO_RECOVERY.
The packaging script is broken when we set TARGET_NO_RECOVERY and
SYSTEM_ROOT_IMAGE both. With TARGET_NO_RECOVERY set, we don't have
RECOVERY/RAMDISK/etc/recovery.fstab. It thus fails the assertion in
common.LoadRecoveryFSTab() that "/" must exist in fstab when enabling
SYSTEM_ROOT_IMAGE.

Change-Id: Id509d724f18be7cf7389dd786924ead894ac0cc1
2015-11-19 17:14:21 -08:00
Tao Bao a0421cd1bd releasetools: Pack updatable images into IMAGES/ for A/B update.
Vendor-specific images (radio, bootloader and etc) used to stay in
RADIO/ in target_files zip. A/B updater expects them to be available
under IMAGES/. Make a copy for such images when calling
add_img_to_target_files.py.

We cannot move them directly from RADIO/ to IMAGES/, because we will
delete everything under IMAGES/ when signing for release.

Bug: 25674625
Change-Id: I977c879d0ff7e45c83b3f5c63844a5b135caa383
2015-11-16 16:42:43 -08:00
Tao Bao 9bc6bb23b5 releasetools: Support generating verify packages.
We can generate a special OTA package that verifies all the partitions
(boot, recovery, system, vendor and etc) on a device. It also calls
device-specific script to verify bootloader and radio images. This
ensures a flashed device contains all the desired images faithfully.

Usage:
ota_from_target_files.py --gen_verify target_files.zip output.zip

Bug: 24679956
Change-Id: Ib3091d98c4b17a6fad305b3edf16d09efbda5c38
2015-11-10 12:49:33 -08:00
Tao Bao 767e3ac246 releasetools: Refactor ota_from_target_files.py.
Factor out some common lines between generating incremental and full
OTAs. Remove the outer while loop for cleaner logic.

Change-Id: I0a4d44a4a59b488748222c2031bd63f67d45e0b5
2015-11-10 12:23:10 -08:00
Tao Bao e5eb4567d4 Merge "Honor TARGET_NO_RECOVERY flag."
am: c448e91c3d

* commit 'c448e91c3d3d095f8f200c9925f7db2ad525132f':
  Honor TARGET_NO_RECOVERY flag.
2015-10-29 16:45:31 +00:00
Sami Tolvanen a25cced65f Merge "Error correction: Use block_image_recover in block OTAs"
am: fe4e86c7fd

* commit 'fe4e86c7fd1b9c8903fda194b8515451c477ced9':
  Error correction: Use block_image_recover in block OTAs
2015-10-29 16:45:14 +00:00
Tao Bao c448e91c3d Merge "Honor TARGET_NO_RECOVERY flag." 2015-10-29 16:13:52 +00:00
Sami Tolvanen f0a7c76b45 Error correction: Use block_image_recover in block OTAs
If block_image_verify fails, attempt to recover using FEC before giving up.

Bug: 21893453
Change-Id: Ibc1fe5d28b2a8099d2b5094277b572ec08229c3a
2015-10-29 11:39:31 +00:00
Tao Bao db45efa647 Honor TARGET_NO_RECOVERY flag.
Don't generate recovery.img when calling 'make dist' if
TARGET_NO_RECOVERY is set. The build system passes the flag to the
packaging script which then generates recovery.img conditionally.

Bug: 25329471
Change-Id: Ifbc999300d5c31e897878f81e231ae7dd2aca660
2015-10-27 20:00:10 -07:00
Tao Bao ada3927e53 Merge "Bump up the BBOTA version to 4."
am: ac4ec1a4ea

* commit 'ac4ec1a4ea83a150e08ccd43f30fe34de52cdebf':
  Bump up the BBOTA version to 4.
2015-10-23 18:45:35 +00:00
Tao Bao eba409c4da Bump up the BBOTA version to 4.
To accommodate new changes (such as error correction in [1]) to BBOTA
in N release. We bump up the version to keep the OTA script backward
compatible.

Needs the matching CL in commit
1fdec8685af858c5ff4f45d2e3059186ab5ed2ab.

[1]: commit 0a7b47397db3648afe6f3aeb2abb175934c2cbca

Change-Id: Ib9158b455cd5905fe2d4742ce81feb1b7583054f
2015-10-23 10:45:36 -07:00
Tao Bao 8287572f7f Merge "Fix calculation of stashed blocks."
am: db08d835d0

* commit 'db08d835d0d071b27fc6fcf14e0cf261a5f18f68':
  Fix calculation of stashed blocks.
2015-10-22 19:11:12 +00:00
Tao Bao db08d835d0 Merge "Fix calculation of stashed blocks." 2015-10-22 18:57:42 +00:00
Tao Bao 954024649e Merge "blockimgdiff.py: Fix the script error for BBOTA v1."
am: bcb9240a2b

* commit 'bcb9240a2b168c711e4a9543e9d34f9c58a6f0c2':
  blockimgdiff.py: Fix the script error for BBOTA v1.
2015-10-22 18:12:56 +00:00
caozhiyuan 21b37d83eb Fix calculation of stashed blocks.
Change-Id: Ic3d607cb6691fc58e189a54a7244942cf3f3c387
Signed-off-by: caozhiyuan <cao.zhiyuan@zte.com.cn>
2015-10-22 09:57:10 +08:00
Tao Bao 4fcb77e4e3 blockimgdiff.py: Fix the script error for BBOTA v1.
CL in [1] added an assertion to make sure an empty RangeSet cannot call
RangeSet.to_raw_string(). However, we may unintentionally hit that when
generating BBOTA v1 script (e.g. for "new" commands that always have
empty src_ranges).

[1] commit e8f756137c

Change-Id: I1723606967f354ace9286d2b888fdbc80ba10e39
2015-10-21 17:03:18 -07:00
Sami Tolvanen 58a748d37e am 87f58261: Merge "Error correction: Append codes to verified partitions"
* commit '87f582611a5a5c23abf3237abe0e467e46111567':
  Error correction: Append codes to verified partitions
2015-10-19 02:55:51 -07:00
Sami Tolvanen 87f582611a Merge "Error correction: Append codes to verified partitions" 2015-10-19 09:49:18 +00:00
Tao Bao 5631d5c6e1 am 46ae586a: am e09359ab: DO NOT MERGE Pass source\'s info_dict to vendor\'s releasetools.py.
* commit '46ae586ab26f5bf63baaac6c68942f1bfba4addc':
  DO NOT MERGE Pass source's info_dict to vendor's releasetools.py.
2015-10-17 00:13:36 +00:00
Tao Bao 46ae586ab2 am e09359ab: DO NOT MERGE Pass source\'s info_dict to vendor\'s releasetools.py.
* commit 'e09359abc0f8c29fbb16d35ab7375d80fde6f931':
  DO NOT MERGE Pass source's info_dict to vendor's releasetools.py.
2015-10-17 00:09:35 +00:00
Tao Bao e09359abc0 DO NOT MERGE Pass source's info_dict to vendor's releasetools.py.
When building incremental packages, the info_dict from the source build
should be the one in use. We have done that for most of the partitions
(system and etc.), and should pass that to vendor's script as well.

Also includes the CL in commit aac4ad56b6
that fixes a bug in commit 6f0b219ac5.

Bug: 24898607
Change-Id: I4ea6037dad7061e1683661fc4c394fa3a7a7c5cd
(cherry picked from commit 6f0b219ac5)
2015-10-16 15:47:51 -07:00
Tao Bao 6ce8ae761b am ac39bef4: Merge "common.py: Fix the build."
* commit 'ac39bef43fb032bff75b8558f54107e733355265':
  common.py: Fix the build.
2015-10-16 15:46:31 -07:00
Tao Bao aac4ad56b6 common.py: Fix the build.
Should only use source_info_dict when creating incremental OTAs.

Change-Id: I6a4e5f8fa3613a1b36563ec915e433247965a2b8
2015-10-16 15:28:00 -07:00
Tao Bao 63e63c2a07 am 543b28d4: Merge "Pass source\'s info_dict to vendor\'s releasetools.py."
* commit '543b28d42f8fdebe011a906826251ab8df70a226':
  Pass source's info_dict to vendor's releasetools.py.
2015-10-16 14:49:40 -07:00
Sami Tolvanen f99b53143d Error correction: Append codes to verified partitions
Append error-correcting codes to verified partitions provided that
PRODUCT_SUPPORTS_VERITY_FEC is true.

This moves verity metadata to be after the hash tree, and requires
matching changes from
  Ide48f581bbba77aed6132f77b309db71630d81ed

Bug: 21893453
Change-Id: I6945cbab99e214566a1f9d3702333f2dbbc35816
2015-10-14 18:06:20 +01:00
Tao Bao 6f0b219ac5 Pass source's info_dict to vendor's releasetools.py.
When building incremental packages, the info_dict from the source build
should be the one in use. We have done that for most of the partitions
(system and etc.), and should pass that to vendor's script as well.

Bug: 24898607
Change-Id: Ie2973d41b905637862616286663baf80df83bd88
2015-10-13 16:38:36 -07:00
Tao Bao ed48af8d5b am b03d55aa: Merge "DO NOT MERGE: Only use a fixed timestamp when packaging." into mnc-dr-dev
* commit 'b03d55aaeb5962690631ed1a25d8e628667d8ad2':
  DO NOT MERGE: Only use a fixed timestamp when packaging.
2015-10-12 18:42:21 +00:00
Tao Bao 338da607e8 DO NOT MERGE: Only use a fixed timestamp when packaging.
This CL changes to use a fixed timestamp only when packaging
into the target_files zip.

Bug: 24377993
Change-Id: I01d136f4b99e1eff80c559192d93db83a3c5c0a4
(cherry picked from commit 822f5840c0)
2015-10-12 09:55:26 -07:00
Tao Bao 128f01cf58 am ce9635ec: am 2124d7e1: Merge "Only use a fixed timestamp when packaging."
* commit 'ce9635ec7ad6bcc6b9bc74136edb91847fe9e4ff':
  Only use a fixed timestamp when packaging.
2015-10-01 00:00:06 +00:00
Tao Bao ce9635ec7a am 2124d7e1: Merge "Only use a fixed timestamp when packaging."
* commit '2124d7e1e2dec91ce4ab15c6a215d61f7693a8d6':
  Only use a fixed timestamp when packaging.
2015-09-30 23:50:49 +00:00
Tao Bao 822f5840c0 Only use a fixed timestamp when packaging.
[1] changed to use a fixed timestamp for all the generated images
(either the one under $ANDROID_PRODUCT_OUT/ or the one added into the
target_files zip). It makes 'adb sync' after 'fastboot flashall' to
resync all the files. This CL changes to use a fixed timestamp only when
packaging into the target_files zip.

[1]: commit 052ae3542b

Bug: 24377993
Bug: 24536411
Change-Id: I209318966109fd4902468dfe96caf777464f9fe1
2015-09-30 16:01:14 -07:00
Tao Bao 5b8bd02ed4 am 9a5afa52: am 5e23069b: Merge "build_image.py: Use a fixed timestamp in the generated image."
* commit '9a5afa5242a4d179fc45f59944c0fba5ccaa4c15':
  build_image.py: Use a fixed timestamp in the generated image.
2015-09-28 21:24:38 +00:00
Tao Bao 9a5afa5242 am 5e23069b: Merge "build_image.py: Use a fixed timestamp in the generated image."
* commit '5e23069bceebfbf17f67c709bad495d707b194dc':
  build_image.py: Use a fixed timestamp in the generated image.
2015-09-28 21:16:34 +00:00
Tao Bao 052ae3542b build_image.py: Use a fixed timestamp in the generated image.
Bug: 24377993
Change-Id: I9b1433c8c877dc2a391615bb016b8970426e9f70
2015-09-28 13:44:13 -07:00
Tao Bao c41dc0ad1a am 251d56b8: Merge "releasetools: Update the fingerprint when signing."
* commit '251d56b851af2159df8139639b4a1a1602d60163':
  releasetools: Update the fingerprint when signing.
2015-09-25 21:14:17 +00:00
Tao Bao cb7ff77da5 releasetools: Update the fingerprint when signing.
ro.bootimage.build.fingerprint should be updated when signing.

Bug: 22720426
Bug: 24009888
Change-Id: Ib246a257581fd31f90ad6b3d21f39d1a2de24ba8
(cherry picked from commit 265d9aeb62)
2015-09-25 12:41:34 -07:00
Baligh Uddin 12ab99be09 am aa3d37a1: am 5790d54a: am 59f4ff10: Add verity_signer and verity_key flags to add_img_to_target_files.
* commit 'aa3d37a1d704ab9204de7d76dca784c9b17bd2ee':
  Add verity_signer and verity_key flags to add_img_to_target_files.
2015-09-17 05:01:26 +00:00
Baligh Uddin 5790d54ab8 am 59f4ff10: Add verity_signer and verity_key flags to add_img_to_target_files.
* commit '59f4ff109d7da6d608cb6b1248a4403b13d8b2bc':
  Add verity_signer and verity_key flags to add_img_to_target_files.
2015-09-17 04:46:21 +00:00
Baligh Uddin 59f4ff109d Add verity_signer and verity_key flags to add_img_to_target_files.
The signing process requires the boot and recovery images be signed
by CROS-Signer, which is done after a signed_target_files.zip is
available.  Once the boot/recovery images are signed, we need
to insert it back into signed_target_files.zip and regenerate the
system.map and verity tree.  The script (add_img_to_target_files) does
this operation and needs to be aware of verity specific flags.

Bug: 23831896
Change-Id: Id24e878161052c768b74da1231b97eb0574b4c8b
2015-09-16 21:20:30 -07:00
Ian Pedowitz 2029791350 resolved conflicts for f4fc29b0 to mnc-dr-dev-plus-aosp
Change-Id: Ieee6621881ace1631ae53d2a5879c271ba45382f
2015-09-15 19:18:15 -07:00
Ian Pedowitz b00f80cc65 am a0abf49d: resolved conflicts for a1fcaf86 to mnc-dr-dev
* commit 'a0abf49d2bdc42c81e5f636e54da9038de9dfc21':
  Add an option to include a full bootloader in incremental OTA.
2015-09-16 01:48:58 +00:00
Ian Pedowitz a0abf49d2b resolved conflicts for a1fcaf86 to mnc-dr-dev
Change-Id: Ie53652faa530a3c9c83f30c8f2b636d90f0f1b7a
2015-09-15 18:39:19 -07:00
leozwang a1fcaf86c4 Add an option to include a full bootloader in incremental OTA.
Bug: 23999213
Change-Id: I6c715eb01048e187622ba1e90c89a3306a294b8a
2015-09-15 08:44:12 -07:00
leozwang 5f37367d7d am 34863c69: am d0c8ef98: am 1e7f6f74: Fix build.
* commit '34863c6989c0df7ba6c31d0f70804728c4ad69af':
  Fix build.
2015-09-15 09:53:14 +00:00
leozwang d0c8ef989e am 1e7f6f74: Fix build.
* commit '1e7f6f7442ca2addc8e4447d3070c625dbba8d3f':
  Fix build.
2015-09-15 07:57:43 +00:00
leozwang 91c8c66eb0 am 17aa06f6: Fix build.
* commit '17aa06f6fe0c10cb3bb84a11dfc78a88a4155adc':
  Fix build.
2015-09-15 07:52:08 +00:00
leozwang 1e7f6f7442 Fix build.
Convert ota_from_target_files back to symbolic link.

Change-Id: I932ba8c0b15fa71a27083adc92e9f9a90dc82f8c
(cherry picked from commit 17aa06f6fe)
2015-09-15 07:50:10 +00:00