Commit Graph

3907 Commits

Author SHA1 Message Date
Sen Jiang 64e3da49be Merge "Specify --max_timestamp when calling brillo_update_payload." into nyc-dr1-dev
am: 21a26c9843

Change-Id: I656c817338e6b1921213478cdb4f98923561487e
2018-01-12 22:14:30 +00:00
Tao Bao d21de1b1c3 Specify --max_timestamp when calling brillo_update_payload.
Bug: 36232423
Test: Create OTA packages (full, incremental and downgrade) with
      ota_from_target_files.py; check the parameters passed down to
      brillo_update_payload.
Change-Id: I3af397f05fe16f4a9f0eb73e8272bac6afdc002a
Merged-In: I3af397f05fe16f4a9f0eb73e8272bac6afdc002a
(cherry picked from commit ed08bc4a22)
2017-10-18 20:09:01 +00:00
Tao Bao d5de271e01 releasetools: Add support for --override_timestamp. am: 9f884e6c55
am: 9ee7071553

Change-Id: I58f6108d8d620d39d673e2be9489cb13b50fbbb0
2017-03-16 23:24:13 +00:00
Tao Bao 9ee7071553 releasetools: Add support for --override_timestamp.
am: 9f884e6c55

Change-Id: Ie17ff6bffa91d16bbb4a3de123fc8aa97a35d266
2017-03-16 23:21:13 +00:00
Tao Bao 9f884e6c55 releasetools: Add support for --override_timestamp.
We use the timestamps in builds to determine a downgrade, which might
not be always the truth. For examples, two builds cut from different
branches may carry timestamps in a reverse order. An incremental package
won't be able to be pushed nor applied, based on the timestamp
comparison.

We used to handle such a case with manual work, by setting the
post-timestamp to (pre-timestamp + 1) in the package metadata. This CL
automates the process by adding a new flag --override_timestamp.

Note that it doesn't change anything in the installed image, but only
affects the assertions for pushing / installing the package.

With the change in this CL:
 - If it's a downgrade without any extra flag, fail the package
   generation (we only print warnings prior to this CL);
 - If it's a downgrade with --downgrade flag, generate a downgrade
   package with forced data wipe (same as before);
 - If it's a downgrade with --override_timestamp, generate a normal
   incremental with hacked timestamp (pre-timestamp + 1) (new in this CL
   to avoid the manual change);
 - If it's not a downgrade but with any of the above two flags specified,
   fail the package generation.

Bug: 33744169
Test: Generate an incremental from builds with reversed timestamps.
Change-Id: I8b187d32708b4a7c3e20f8c6adb8f9527b73b965
Merged-In: I8b187d32708b4a7c3e20f8c6adb8f9527b73b965
(cherry picked from commit 3e6161a3b3)
2017-03-16 11:26:06 -07:00
Tao Bao a7dcbfb2d8 Merge "releasetools: Support generating downgrade A/B OTAs." into nyc-dev am: 5a4508bcef
am: e7847765a6

Change-Id: Icb06ee24b3c29ff095b127a4148b945e886859ac
2017-03-16 18:25:54 +00:00
Tao Bao e7847765a6 Merge "releasetools: Support generating downgrade A/B OTAs." into nyc-dev
am: 5a4508bcef

Change-Id: If09ef383865b95b7dd65522d7c369b98144c5520
2017-03-16 18:22:54 +00:00
Tao Bao 99c17252ac releasetools: Support generating downgrade A/B OTAs.
We already support generating downgrade OTAs for non-A/B devices (with
mandatory data wipe), but we have missed the --downgrade flag in A/B OTA
path.

This CL factors out the function that writes the downgrade metadata, and
fixes the path for generating A/B OTAs.

Bug: 35094540
Bug: 36183651
Test: Generate incrementals with --downgrade for A/B and non-A/B OTAs.
Change-Id: I30b9bf83e69e8aba3be666507681b555db6ab743
Merged-In: I30b9bf83e69e8aba3be666507681b555db6ab743
(cherry picked from commit b31892e5de)
2017-03-16 16:47:10 +00:00
Tao Bao 8fa3351890 Revert "Revert "releasetools: Allow using futility-host to sign old TF.zip."" am: 77620b5a45
am: 9eea2cde67

Change-Id: Ib5c77170d06bfe4f2289d2565e9e56b8b3c0b080
2017-02-27 00:48:09 +00:00
Tao Bao 9eea2cde67 Revert "Revert "releasetools: Allow using futility-host to sign old TF.zip.""
am: 77620b5a45

Change-Id: Id9071f867b430c74231003be3b40b43aa4f72141
2017-02-27 00:44:38 +00:00
Tao Bao 77620b5a45 Revert "Revert "releasetools: Allow using futility-host to sign old TF.zip.""
This reverts commit d6145b6a16.

The cause of the earlier breakage has been identified and fixed by
commit 4b577413ff.

Bug: 35467608
Test: lunch ryu-userdebug; m dist otatools-package
(cherry picked from commit 4f30f7cfa1)
2017-02-25 08:38:51 -08:00
Tao Bao bd6d03ab18 Merge "Revert "releasetools: Allow using futility-host to sign old TF.zip."" into nyc-dev am: b0df1ef7ac
am: 983c979c25

Change-Id: I938ee86611ea8c452c07324e2f3c6a9b0180cb7e
2017-02-21 20:33:25 +00:00
Tao Bao 983c979c25 Merge "Revert "releasetools: Allow using futility-host to sign old TF.zip."" into nyc-dev
am: b0df1ef7ac

Change-Id: I3924b44e75aa0f8f18129212dd80fd843f6a6a47
2017-02-21 20:31:25 +00:00
Tao Bao d6145b6a16 Revert "releasetools: Allow using futility-host to sign old TF.zip."
Broke ryu targets.

This reverts commit 31a0de00a4.

Change-Id: I3ffcdc604a1cb92c86c574b5cd358d0148430d55
2017-02-21 20:27:27 +00:00
Tao Bao ae2f5abf06 releasetools: Allow using futility-host to sign old TF.zip. am: 31a0de00a4
am: a9bdf8716f

Change-Id: I411b26baf0cd7d74ec6c8c80a12f0499d017a360
2017-02-21 17:46:45 +00:00
Tao Bao a9bdf8716f releasetools: Allow using futility-host to sign old TF.zip.
am: 31a0de00a4

Change-Id: I46041e6e5e37c451f8f23dca773850c025aa18b2
2017-02-21 17:45:15 +00:00
Tao Bao 31a0de00a4 releasetools: Allow using futility-host to sign old TF.zip.
Commit e98fb7a8d3 switched to using
futility-host instead of the prebuilt futility. This CL adds support to
handle signing old TF.zip that still says "futility=prebuilt/..." in
META/misc_info.txt.

Bug: 35467608
Test: Generate otatools.zip and sign an old ryu TF.zip.
Change-Id: I48a9cc918c7afce361e1ec9bc4f85f74fa92566e
(cherry picked from commit 4f104d1b94)
2017-02-17 23:36:00 -08:00
Tao Bao 47ec5ab561 Build recovery-two-step.img for two-step OTAs.
In two-step OTAs, we write recovery image to /boot as the first step so
that we can reboot from there and install a new recovery image to
/recovery. However, bootloader will show "Your device is corrupt"
message when booting /boot with the recovery image. Because the recovery
image encodes the path of "/recovery" as part of the signature metadata,
which fails the verified boot.

This CL generates a special "recovery-two-step.img" in addition to the
regular recovery.img. This image encodes "/boot" when being signed,
which will be flashed to /boot at stage 1/3 in a two-step OTA.

Here are the desired changes:

- 'IMAGES/recovery-two-step.img' exists in target_files.zip for non-A/B
targets (e.g. bullhead). The image should not exist for targets that
don't have a recovery partition (e.g. A/B devices like sailfish).

- <device>-img.zip should not contain 'recovery-two-step.img'.

- Nothing should change when building non-two-step OTAs. For two-step
OTAs, 'recovery-two-step.img' should be included in the OTA package;
'updater-script' should flash this image to /boot at stage 1/3.

- When building a two-step OTA with an input TF.zip that doesn't have
  IMAGES/recovery-two-step.img, it should use the existing
  IMAGES/recovery.img instead.

Bug: 32986477
Test: Tested the steps above on bullhead and sailfish.
Change-Id: I34e6c599bcf2011d4cd5c926999418b3975d6d0f
(cherry picked from commit d42e97ebb4)
2016-12-01 17:55:44 -08:00
Tao Bao 4722fc1734 releasetools: Use java_path in sign_target_files_apks.py. am: cd4f7c96c0
am: 6414a94c50

Change-Id: I6cf1cd53ca96b30df9a2621c12cbcbe05f99297c
2016-11-16 20:07:20 +00:00
Tao Bao 6414a94c50 releasetools: Use java_path in sign_target_files_apks.py.
am: cd4f7c96c0

Change-Id: I21cf5519a51e9a9ebb86c98ef9a50e2d7e86b9e5
2016-11-16 19:59:19 +00:00
Tao Bao cd4f7c96c0 releasetools: Use java_path in sign_target_files_apks.py.
Prior to this CL, it was calling the hard-coded "java" although it was
accepting a "--java_path" option.

Also switch OPTIONS.java_args from string to list. Otherwise it won't
work when providing multiple args.

Bug: 32737832
Test: Specify "--java_path=" and "--java_args" when invoking
      sign_target_files_apks.py with "-v". Check the commands being
      called.
Change-Id: Id7ef98e778646d532027434de7fba9b7a104dbd0

(cherry picked from commit e95540e060)
2016-11-09 17:05:28 -08:00
Tao Bao b31f486d75 releasetools: Support verity signer args. am: c7814837a0
am: 8a6d94c9aa

Change-Id: I3383bfa1920dad8976963813dd73435f19cb6593
2016-10-26 22:18:28 +00:00
Tao Bao 8a6d94c9aa releasetools: Support verity signer args.
am: c7814837a0

Change-Id: Ie5ba1d9b706eacae6d6d2f52624526521301c724
2016-10-26 22:13:27 +00:00
Tao Bao c7814837a0 releasetools: Support verity signer args.
system/extras/verity/build_verity_metadata.py now accepts
"--signer_args" to specify verity signer args.

Also remove the duplicate "--verity_signer_args" in
add_img_to_target_files.py, as we already have that in common.py.

Bug: 31500665
Test: Building and signing work w/ and w/o --signer_args.

Change-Id: I02f59c50a1ebf15c5505e9fffd5b9bbbbaa785be
(cherry picked from commit 458104266f)
2016-10-25 21:17:02 -07:00
Dirk Dougherty 20e91f4e7a Fix samples metadata concat. am: 8d565ed204
am: bafc0b1baf

Change-Id: I21dadb32eeb771aae9c188372d0da1cf4ea16126
2016-10-08 02:31:32 +00:00
Dirk Dougherty bafc0b1baf Fix samples metadata concat.
am: 8d565ed204

Change-Id: I02cf4c7c04ac691b71ef48a6e584c8f2b224a6ff
2016-10-08 02:27:01 +00:00
Dirk Dougherty 8d565ed204 Fix samples metadata concat.
Change-Id: Ie9b616818995b3066d0e65ea1aa30077ed9d82ce
2016-10-07 12:12:50 -07:00
Amanda Kassay cb5021e842 Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template am: b5c04107af
am: 858aa63148

Change-Id: I6f7afd6d2c9a8b5deea04948468ddf1ccf8a6db2
2016-10-06 16:55:32 +00:00
Amanda Kassay 858aa63148 Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template
am: b5c04107af

Change-Id: I11d773f8ca2ca9b4b20a659432d39f8c4adbef2d
2016-10-06 16:52:32 +00:00
Amanda Kassay b5c04107af Adding excludeFromSuggestions, wear preview project path, and android wear/tv/auto/versions projectsw to template
b/31771704 b/31903798 b/31773716

Staged:
https://android-dot-devsite.googleplex.com/about/versions/nougat/index.html
https://android-dot-devsite.googleplex.com/index.html
https://android-dot-devsite.googleplex.com/wear/preview/index.html

Change-Id: Idf9893f9d108c26038ead06c84de771e21b89f37
2016-10-05 22:31:22 +00:00
Dirk Dougherty 3d58e7f387 For ds builds only, emit a separate metadata file for samples only. am: a9fcf48078
am: fd40bbc586

Change-Id: I97c8ecb583d951752218b94dcc88c3f81cf548cd
2016-10-01 01:11:12 +00:00
Dirk Dougherty fd40bbc586 For ds builds only, emit a separate metadata file for samples only.
am: a9fcf48078

Change-Id: I1795160d80b1038ffe30758ce6fc4cd48d3bda2a
2016-10-01 01:07:41 +00:00
Dirk Dougherty a9fcf48078 For ds builds only, emit a separate metadata file for samples only.
Change-Id: I95c03a10cca586c6675f98664479ba8bf2e43576
2016-09-30 17:33:50 -07:00
Tao Bao d0814585b8 Analyze unchanged blocks in odex files.
In BBOTA, we generate patches based on _all_ the blocks of a pair of
input files (src and tgt). For security incremental OTAs, one common
pattern is that only a few blocks are changed in odex files (e.g.
headers). We don't really need to stash/patch the unchanged blocks.

This CL analyzes the unchanged blocks in odex files and computes the
diff for the changed blocks only. It reduces the OTA install time by
about 25% to 40% in our experiments, by paying an increase of 5% to 30%
OTA generation time cost.

Bug: 31570716
Test: Generate an incremental and apply on device.

Change-Id: If842c1afeff6894a3d27eb60b7e8f65a179b7977
(cherry picked from commit 08c8583aea)
2016-09-28 10:13:33 -07:00
Przemyslaw Szczepaniak ea14cfba0f Fix for non-empty a[name] tags in openJdk based javadocs.
am: a7edd92c45

Change-Id: I5759d442e038f31105c249250ce3474564d7954c
2016-09-27 09:11:55 +00:00
Przemyslaw Szczepaniak a7edd92c45 Fix for non-empty a[name] tags in openJdk based javadocs.
openJdk based android javadoc contains <a name=... tags
that are non-empty. Currently they are being hidden,
causing badly formatted pages for some java.* classes
(missing text and random whitespace blocks).

This change makes the existing a[name] hiding rule
apply only to empty tags.

Test: make docs
Bug: 31700998
Change-Id: Ifa75bbabe308d7aed0cce6165c1113e5a382a121
2016-09-26 16:36:03 +00:00
Dirk Dougherty 1e3157760a Support "ID" lang code in place of "IN".
am: fc61720cd5

Change-Id: If9670423332a3c785cc7b7ddc5e53b524f9e4e7d
2016-09-22 21:54:37 +00:00
Dirk Dougherty fc61720cd5 Support "ID" lang code in place of "IN".
Change-Id: I56632e638fdda81e494cbb7080502b35393a291f
2016-09-21 18:29:18 -07:00
smain@google.com 210083ab97 add support for constraint layout's DATA list
am: 7055897faa

Change-Id: I9781454790423d51385094aaa530d994cccb1016
2016-09-10 01:32:24 +00:00
Scott Main 64bd41ff7d Merge "add support for constraint layout's DATA list" into nyc-dev 2016-09-10 01:28:09 +00:00
smain@google.com 7055897faa add support for constraint layout's DATA list
Change-Id: Ia301ad235dcfd5a5c2bb13bfa6daa753f9206800
2016-09-09 15:47:58 -07:00
smain@google.com 21c9005ff1 delete 'templates-sdk-dev', all these files were merged back into 'templates-sdk' with this CL: https://googleplex-android-review.git.corp.google.com/#/c/1394582/ and this depends on the following CL to update all the doc build targets: https://googleplex-android-review.git.corp.google.com/#/c/1406302/
am: 6c8efecbda

Change-Id: I4692f455ed30f7cbbb10c40b35718c8a8952b27e
2016-09-02 21:36:14 +00:00
smain@google.com 6c8efecbda delete 'templates-sdk-dev', all these files were merged
back into 'templates-sdk' with this CL:
https://googleplex-android-review.git.corp.google.com/#/c/1394582/
and this depends on the following CL to update all the doc build targets:
https://googleplex-android-review.git.corp.google.com/#/c/1406302/

Change-Id: Id38134e1d35c5235bb66241c50945b55ac9de1dd
2016-09-02 11:02:41 -07:00
smain@google.com 5c7588bd37 Merge all of templates-sdk-dev into templates-sdk. I actually just deleted templates-sdk/ then made a copy of templates-sdk-dev/ and then renamed it to templates-sdk/. So this is a clean copy. Once this goes through cleanly, I'll delete templates-sdk-dev/ and update all doc targets to use templates-sdk/.
am: 4f3a05a2c6

Change-Id: I11564954529ed7a1cd1098c66b052190f3d3d6f6
2016-08-31 22:13:34 +00:00
smain@google.com 4f3a05a2c6 Merge all of templates-sdk-dev into templates-sdk.
I actually just deleted templates-sdk/ then made a copy of templates-sdk-dev/
and then renamed it to templates-sdk/. So this is a clean copy.
Once this goes through cleanly, I'll delete templates-sdk-dev/ and update
all doc targets to use templates-sdk/.

Change-Id: I276695969e02fcf718370564e84b077a9d43725e
2016-08-31 11:30:02 -07:00
smain@google.com e4b21d82eb delete templates-ds (the original attempt to template docs for devsite) delete templates-sdk-refonly (the "dev branch" for the reference only flag)
am: 6d00e69c3f

Change-Id: Id709e0c519d6a79e45f6865f7fac200762501091
2016-08-31 15:05:54 +00:00
smain@google.com 6d00e69c3f delete templates-ds (the original attempt to template docs for devsite)
delete templates-sdk-refonly (the "dev branch" for the reference only flag)

Change-Id: I73e2760fcca76b7242be9aefa92006df3a555a03
2016-08-30 13:55:16 -07:00
smain@google.com 618756ab95 delete no-longer-used custom sdkpage template. depends on https://googleplex-android-review.git.corp.google.com/#/c/1389393/
am: 42859fae46

Change-Id: I0a5a870f5cbc5c0ba2e620a8cf2cb8b497bbec1d
2016-08-30 20:47:12 +00:00
smain@google.com 7501218e40 update templates-sdk-dev to support the referenceonly build. includes an updated snapshot of the css and js files from devsite
am: eeeb9b832a

Change-Id: Ieed1beceb693ecae6be25c878b40bd6dd697aad2
2016-08-30 20:47:10 +00:00
Scott Main 1b1c5c5ebc Merge "delete no-longer-used custom sdkpage template. depends on https://googleplex-android-review.git.corp.google.com/#/c/1389393/" into nyc-dev 2016-08-30 20:39:44 +00:00