releasetools: Use "ota-downgrade=yes" for --override_timestamp.
We used to write a fake post-timestamp into package metadata for "--override_timestamp", which allows a package to be pushed based on the fake timestamp. This CL stops doing that by using the designated "ota-downgrade=yes" instead, but keeping the "--override_timestamp" flag for backward compatibility. Now both "--override_timestamp" and "--downgrade" allow pushing packages with downgrade timestamps. The only differenece is that "--downgrade" enforces a data wiping, because it's intended a real downgrade (based on Android version or security patch level). "--override_timestamp" serves the path of a legit "upgrade", but unfortunately with build timestamps in reverse order (e.g. the two builds are cut from different branches). With this CL, we write "post-timestamp" to all packages. Bug: 77811049 Test: Generate an incremental pakcage with "--override_timestamp". Test: Generate an incremental pakcage with "--downgrade". Test: python -m unittest test_ota_from_target_files Change-Id: I4ae4ce77cb600a06ffd9b15b6d4c730314aa0b79
This commit is contained in:
@@ -532,31 +532,7 @@ class OtaFromTargetFilesTest(unittest.TestCase):
|
||||
'post-build-incremental' : 'build-version-incremental-target',
|
||||
'post-sdk-level' : '27',
|
||||
'post-security-patch-level' : '2017-12-01',
|
||||
'pre-device' : 'product-device',
|
||||
'pre-build' : 'build-fingerprint-source',
|
||||
'pre-build-incremental' : 'build-version-incremental-source',
|
||||
},
|
||||
metadata)
|
||||
|
||||
def test_GetPackageMetadata_overrideTimestamp(self):
|
||||
target_info_dict = copy.deepcopy(self.TEST_TARGET_INFO_DICT)
|
||||
source_info_dict = copy.deepcopy(self.TEST_SOURCE_INFO_DICT)
|
||||
self._test_GetPackageMetadata_swapBuildTimestamps(
|
||||
target_info_dict, source_info_dict)
|
||||
|
||||
target_info = BuildInfo(target_info_dict, None)
|
||||
source_info = BuildInfo(source_info_dict, None)
|
||||
common.OPTIONS.incremental_source = ''
|
||||
common.OPTIONS.timestamp = True
|
||||
metadata = GetPackageMetadata(target_info, source_info)
|
||||
self.assertDictEqual(
|
||||
{
|
||||
'ota-type' : 'BLOCK',
|
||||
'post-build' : 'build-fingerprint-target',
|
||||
'post-build-incremental' : 'build-version-incremental-target',
|
||||
'post-sdk-level' : '27',
|
||||
'post-security-patch-level' : '2017-12-01',
|
||||
'post-timestamp' : '1500000001',
|
||||
'post-timestamp' : '1400000000',
|
||||
'pre-device' : 'product-device',
|
||||
'pre-build' : 'build-fingerprint-source',
|
||||
'pre-build-incremental' : 'build-version-incremental-source',
|
||||
|
Reference in New Issue
Block a user