Commit graph

252 commits

Author SHA1 Message Date
Ying Wang
c73e461537 Fix variable name.
Change-Id: Ie7439f71cf7fd2eeacd45a5d6625e610dad8bfbe
(cherry picked from commit 1a1dfcb5fcb6eda11d8dbf5df02f0083853dd5c1)
2014-04-15 22:31:54 +00:00
Ying Wang
114b46f15d Accomodate to the import syntax in build.prop.
Bug: 14024566
Change-Id: I71692244fabcd4d12f65849ffa027295b3a2a79a
(cherry picked from commit 092fea0d3e644573d7f0dbfe6692f42431f83c5c)
2014-04-15 20:28:53 +00:00
Doug Zongker
2a99239920 Merge "test block system image patch at build time" 2014-03-06 16:39:20 +00:00
Doug Zongker
922206ec2a move data wipe to end of OTA package
Now that OTA packages can be downloaded to /data, if they include a
data wipe we should do that last.

Change-Id: I75102fb2ff85d0f0110d55dfca06ec5f38104850
2014-03-04 13:16:24 -08:00
Doug Zongker
32b527d6cb test block system image patch at build time
After building a patch for the system image (for incremental block
OTAs), apply it to a local copy of the file and test that it succeeds.
This is an imperfect test as it's using the local client's
syspatch_host, which may differ from the syspatch library actually
used in the target build, but it's somewhat better than nothing.

Change-Id: Ic0001b0145881e2ebd4b5b36ce9b5bcebd76deb4
2014-03-04 10:03:02 -08:00
Doug Zongker
5fad2039bb handle don't care regions in the system image
The system partitions has regions that we shouldn't write and can't
depend on the contents of.  Adds a new script to generate a map of
these regions (using the sparse image as input), and include the map
in the package zip so it can be used when writing or patching the
system partition.

Also fixes a bug where the wrong SELinux file contexts are used when
generating incrementals.

Change-Id: Iaca5b967a3b7d1df843c7c21becc19b3f1633dad
2014-03-03 10:57:23 -08:00
Doug Zongker
25568486e5 add option to specify updater binary, for development
Change-Id: I5f239afff70c87fb16ddc4b8abefa7bbcda6040d
2014-03-03 10:21:27 -08:00
Doug Zongker
26e6619c37 add --block flag to ota_from_target_files
Add the --block flag to this script to control whether block-based OTA
packages are generated (defaults to off).  Make the full OTA package
produced by "make otapackage" continue to produce a block-based OTA.

Also fix a problem where block incremental OTAs didn't ever succeed,
and the --no_signing option never worked.

Change-Id: I610d0b4abed4b8b65fbe8ce0abaeec6cf52e14a1
2014-02-20 13:30:44 -08:00
Geremy Condra
d75d7128ce Merge "Add support for block incremental OTAs" 2014-02-20 21:10:39 +00:00
Geremy Condra
36bd365625 Add support for block incremental OTAs
Change-Id: Ie72015e34ed8d7595a5c74c8df41cba73275afab
2014-02-20 12:54:17 -08:00
Doug Zongker
4abfeaa358 Merge "rebuild recovery patch in sign_target_files_apks" 2014-02-20 16:33:36 +00:00
Doug Zongker
cf6d5a9074 bump releasetools python requirement to 2.7
These scripts already use some post-2.4 features, so let's make it
official: Python 2.7 is needed to run them.

Change-Id: I256e9ed99b0b62abe4e22a7b1f811acb7419e88e
2014-02-18 10:57:07 -08:00
Doug Zongker
412c02fffb rebuild recovery patch in sign_target_files_apks
The target_files zip should now contain the recovery-from-boot patch
and the script to install it.  This means that sign_target_files_apks,
which generates a signed target_files from an unsigned target_files,
now needs to recompute the patch and script (taking into account the
key replacement, property changes, etc., that it does) so its output
contains the correct patch.

Change-Id: I18afd73864ba5c480b7ec11de19d1f5e7763a8c0
2014-02-13 10:58:24 -08:00
Ying Wang
64a55babf2 Fix typo.
Change-Id: I01a1762fe449e02ff80a5ea7a3ee1c529e5da902
2014-02-05 12:15:06 -08:00
Ying Wang
d89ffa8623 Fix emulator builds
which don't have boot.img.

Change-Id: Id97a53c5356d435d9c70107ef047bed003769e22
2014-02-05 11:29:34 -08:00
Doug Zongker
01ce19c95f make full OTAs block based
Instead of writing individual files and fixing up their metadata, make
full OTAs contain a system image and simply write it to the block
device.

This is only done for target-files that already contain the recovery
flashing information, older target-files still get a file-based full
OTA.

Bug: 12893978
Change-Id: If7586083c8f275e24fec49d260af5b5aff4a0a88
2014-02-04 14:04:42 -08:00
Doug Zongker
c9253822ea add recovery update code to system images
Currently, the "img" zip files generated by the build system lack the
script and data needed to rewrite the recovery partition, while the
"ota" zip files do (when installed).

In order to move towards block-based OTAs, we want the result of
flashing an image and the result of installing the corresponding OTA
package to be identical.

Generate the recovery-from-boot patch and install script as part of
the process of building the target-files.  This requires breaking the
code to generate that out of ota_from_target_files into its own tool
that we can run from the Makefile.  (ota_from_target_files can still
do this, so it continues to work with older target-files.)

Bug: 12893978
Change-Id: I80e62268840780b81216e548be89b47baf81b4ac
2014-02-04 13:50:35 -08:00
Ying Wang
eb18125f2f am 0064dceb: am a8d15474: am 04cff708: resolved conflicts for merge of 7382ec7d to klp-dev-plus-aosp
* commit '0064dceb198788e237bbc10931c54b9a35275976':
  ota_from_target_files: Add an option to not sign OTA packages
2014-01-28 00:13:04 +00:00
Ying Wang
04cff70804 resolved conflicts for merge of 7382ec7d to klp-dev-plus-aosp
Change-Id: Ic414d3ec8b52b1045125e1b76deae8a4a59a5e52
2014-01-27 15:56:45 -08:00
Doug Zongker
eb0a78afc0 prefer releasetools.py from target_files zip
If the target_files zip for the target build contains a
META/releasetools.py (which it has since Nov 2013), prefer that over
using a releasetools.py from the local client.

Explicitly specifying the device-specific extensions path via
command-line options takes priority over both of the above mechanisms.

Change-Id: Ia068b0e2e06ede7da89ebe4315cdec592eb8995e
2014-01-27 10:03:23 -08:00
Takeshi Kanemoto
e153b34643 ota_from_target_files: Add an option to not sign OTA packages
Sometimes it is useful to be able to tell ota_from_target_files
to not sign the output zip file. For instance, the private
release key may not be available when ota_from_target_files
is executed; similarly the release tools may not be available
or executable where the private key is stored.

This change adds an option, '--no_signing', to simply output the
unsigned OTA zip file, instead of spuriously signing it with the
test key even though the zip file would need to be re-signed later
with a different key.

Change-Id: I1f3c4dc8ffa35ce85478f848b147aff3d40fe283
2014-01-27 15:01:04 +09:00
Michael Runge
52ad1d7043 am 1a4520a5: am d961b7d0: am 5636d07a: am a80542db: am 4038aa8f: Enabled incrementals to patch + rename moved files
* commit '1a4520a5680a05a360986b260d15e170ed899da5':
  Enabled incrementals to patch + rename moved files
2013-12-26 23:50:25 +00:00
Michael Runge
5636d07a29 am a80542db: am 4038aa8f: Enabled incrementals to patch + rename moved files
* commit 'a80542dbf4f193c59525b8749871bcdf4ae4283a':
  Enabled incrementals to patch + rename moved files
2013-12-26 15:33:27 -08:00
Michael Runge
4038aa8fff Enabled incrementals to patch + rename moved files
Change-Id: I551fc5291847e3ace15361c203d86f566c26da97
2013-12-16 11:29:51 -08:00
Ying Wang
c4b1577d6e resolved conflicts for merge of 1b53b6a7 to master
Change-Id: Id08fb8de4f136596fd39b651446ec96fc952427a
2013-12-11 15:27:46 -08:00
Ying Wang
d532077a8f am d270230f: Merge "sign_target_files_apks: rewrite build.prop correctly in eng builds"
* commit 'd270230fa49311901d8797a9e77865c37857d028':
  sign_target_files_apks: rewrite build.prop correctly in eng builds
2013-12-11 15:15:10 -08:00
Andrew Boie
73d5abbd3f sign_target_files_apks: rewrite build.prop correctly in eng builds
In eng builds, ro.display.id has many space separated items and was
resulting in an error when trying to rewrite it as 'value' gets
turned into a list and never converted back to a string.

Change-Id: I6c8633ed2eb52c56a4097992a32d53d80df4f844
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2013-12-11 13:23:15 -08:00
Doug Zongker
1ad7adeaa7 some builds don't have a build.prop?
Change-Id: I31ab106a1934ff4bb7076c184f4d7581336e16da
2013-12-06 11:53:27 -08:00
Doug Zongker
df12406ad8 Merge "fix timestamps in images to the build date" 2013-12-06 19:27:58 +00:00
Geremy Condra
6e8f53c276 Fix unsparse image reuse bug.
This would cause an existing sparse image to be reused by a
subsequent build, leading to verity failures.

Change-Id: I2082df3dfba014515c9267e02189fe9987a56830
2013-12-05 17:09:18 -08:00
Doug Zongker
850b80780d fix timestamps in images to the build date
Pass the -T option to mkuserimg.sh to set all timestamps in the system
image (and any other ext4 image we build) to the value of
ro.build.date.utc for the build.  This makes images produced from a
given target_files bit-identical.

Change-Id: Ibba5fa7a610f476209ef61708729cfd79dece0b6
2013-12-05 15:54:55 -08:00
Doug Zongker
b00398a07e am a6fadb61: am 57c9ffef: am 9b23f2cd: add option to generate two-step recovery files
* commit 'a6fadb61cae38089bc534f3cb995b98689f796cb':
  add option to generate two-step recovery files
2013-12-03 17:06:04 +00:00
Doug Zongker
a6fadb61ca am 57c9ffef: am 9b23f2cd: add option to generate two-step recovery files
* commit '57c9ffef30a6f34e126d8e89a08d208b05cc4901':
  add option to generate two-step recovery files
2013-12-03 08:58:11 -08:00
Doug Zongker
9b23f2cd78 add option to generate two-step recovery files
When run with the -2 option, ota_from_target_files will generate a
package (full or incremental) that does some extra reboots in order to
install the new recovery first, so that the rest of the installation
is done with the new recovery.  This can be useful if (say) the
package installation needs some features from the newer kernel.

For incremental packages, the verification phase is still done with
the old recovery.

This is only supported on devices where the misc partition is EMMC
(not MTD).

Two-step packages are slower to install and possibly confusing to
users (they will see their device reboot four times instead of twice),
so only use this option if necessary.

Change-Id: I3267d905e5e8eb1a1eb61bf48255b8b24ffc4ad1
2013-11-27 11:27:55 -08:00
Dave Langemak
cb067ad2f6 am c3644114: am 8ea83e90: am 96f56b6f: Merge "Revert "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add."" into klp-dev
* commit 'c3644114805150eef2f5035085878e5f860c7436':
  Revert "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add."
2013-11-21 22:59:47 -08:00
Dave Langemak
c364411480 am 8ea83e90: am 96f56b6f: Merge "Revert "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add."" into klp-dev
* commit '8ea83e902d931591af37e747763e768e7a6990be':
  Revert "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add."
2013-11-21 17:16:26 -08:00
Dave Langemak
96f56b6fcb Merge "Revert "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add."" into klp-dev 2013-11-22 01:08:53 +00:00
Michael Runge
90c60d3b92 Revert "Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add."
This reverts commit 37335b4238.

Change-Id: I61cc125d3b08eaa300a7774b6607dbb43f0e7148
2013-11-22 00:52:51 +00:00
Geremy Condra
1f50400241 Fix a misnamed variable to fix the build.
Change-Id: Ia69d48ace0a6c10c5e6ea06714e52b8c937e213f
2013-11-17 18:10:55 -08:00
Geremy Condra
fd6f7513f8 Add support for verity builds to the build system.
Change-Id: I3ef908d8d52ec88de453b161bbc3f198517a72f1
2013-11-17 16:09:34 -08:00
Baligh Uddin
40d2cfc01e am 38f1aed0: am dcc645eb: am dd00a967: Merge "Revert the revert. (its time to sign MR1)" into klp-dev
* commit '38f1aed01d7bfeba6368d321f1233fa2b7903cb5':
  Revert the revert. (its time to sign MR1)
2013-11-12 19:28:54 -08:00
Baligh Uddin
38f1aed01d am dcc645eb: am dd00a967: Merge "Revert the revert. (its time to sign MR1)" into klp-dev
* commit 'dcc645ebb1a87982d2a067b8584ff167ae2c5287':
  Revert the revert. (its time to sign MR1)
2013-11-12 16:46:48 -08:00
Baligh Uddin
dd00a9677b Merge "Revert the revert. (its time to sign MR1)" into klp-dev 2013-11-13 00:38:47 +00:00
Baligh Uddin
beb6afdee2 Revert the revert. (its time to sign MR1)
Revert "Waiting till post MR0 - this impacts signing tools for MR0."

This reverts commit a7b5c4a7dc.

Bug: 11334314
Change-Id: I89f8996161e4258b80bf2d0bc7817f0e8e32df13
2013-11-13 00:23:10 +00:00
Michael Runge
c5d3cb362c am 3b44339d: am 37335b42: Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add.
* commit '3b44339d6a443fde57db4ae84a7e46823da6d162':
  Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add.
2013-11-07 16:13:15 -08:00
Michael Runge
3b44339d6a am 37335b42: Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add.
* commit '37335b42385970d957d48056145a3d4c4dbc6087':
  Enable incremental builder to find files that moved, and try to process them via patch + rename, instead of delete + add.
2013-11-07 15:00:42 -08:00
Michael Runge
37335b4238 Enable incremental builder to find files that moved, and
try to process them via patch + rename, instead of
delete + add.

b/11437930

Change-Id: Ie70632a2fa0a13d4bb259f61c620bb01812494e5
2013-11-07 11:36:03 -08:00
Baligh Uddin
aa4a34ec1f am 31469e36: am a7b5c4a7: Waiting till post MR0 - this impacts signing tools for MR0.
* commit '31469e36e078e044e883aeb103888af3411e9691':
  Waiting till post MR0 - this impacts signing tools for MR0.
2013-10-23 18:32:47 -07:00
Baligh Uddin
31469e36e0 am a7b5c4a7: Waiting till post MR0 - this impacts signing tools for MR0.
* commit 'a7b5c4a7dc77a0896d6314828b9ce85f82d103e8':
  Waiting till post MR0 - this impacts signing tools for MR0.
2013-10-23 18:30:01 -07:00
Baligh Uddin
a7b5c4a7dc Waiting till post MR0 - this impacts signing tools for MR0.
Revert "Modify release tools to replace certs in MMAC files."

This reverts commit a6e0466ab5.

Change-Id: Ib7819185bad119013f307ce4301d5f02190e14ed
2013-10-23 16:53:43 +00:00