I am trying to recreate the official build after following this thread (pointer to the OP’s closing message):
@Manoj said I should ask questions at the forum, so here I go:
the build (inside the provided docker container) is invoked like this:
docker run \
-v "./src:/srv/src" \
-v "./zips:/srv/zips" \
-v "./logs:/srv/logs" \
-v "./ccache:/srv/ccache" \
-e "BRANCH_NAME=v2.1-t" \
-e "DEVICE_LIST=tissot" \
-e "REPO=https://gitlab.e.foundation/e/os/releases.git" \
registry.gitlab.e.foundation:5000/e/os/docker-lineage-cicd:community
It cannot proceed unless the manifest is corrected - one of the commit hashes is not found in the respective repository, specifically for android_vendor_lineage
:
https://gitlab.e.foundation/e/os/releases/-/blame/v2.1-t/default.xml?ref_type=tags#L342
Commit 6417edcc961ce81cd7a71825082c789cb354812e
could not be found.
When corrected (I used bdc7bd4e262a7d426cd845c12a220feb71a71d2a
- the current (at time of writing) HEAD
of v2.1-t
branch (see: https://gitlab.e.foundation/e/os/android_vendor_lineage/-/tree/v2.1-t?ref_type=heads) the build did progress until the very end. However, at image creation, it FAILED with the following:
2024-06-17 02:30:40 - common.py - WARNING : Failed to read build.prop for partition system_dlkm
2024-06-17 02:30:40 - common.py - WARNING : Failed to read IMAGES/init_boot.img
2024-06-17 02:30:41 - ota_from_target_files.py - WARNING : Source build doesn't support lz4diff, or source/target don't have compatible lz4diff versions. Disabling lz4diff.
Traceback (most recent call last):
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/internal/stdlib/runpy.py", line 196, in _run_module_as_main
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/internal/stdlib/runpy.py", line 86, in _run_code
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/__main__.py", line 12, in <module>
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/internal/stdlib/runpy.py", line 196, in _run_module_as_main
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/internal/stdlib/runpy.py", line 86, in _run_code
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/ota_from_target_files.py", line 1656, in <module>
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/ota_from_target_files.py", line 1627, in main
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/ota_from_target_files.py", line 1257, in GenerateAbOtaPackage
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/ota_from_target_files.py", line 458, in Generate
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/ota_from_target_files.py", line 432, in _Run
File "/srv/src/T/out/host/linux-x86/bin/ota_from_target_files/common.py", line 313, in RunAndCheckOutput
common.ExternalError: Failed to run command '['brillo_update_payload', 'generate', '--payload', '/tmp/payload-enewsgor.bin', '--target_image', '/srv/src/T/out/target/product/tissot/lineage_-target_files-20240617.zip', '--enable_zucchini', 'false', '--enable_lz4diff', 'false', '--max_timestamp', '1718586493', '--partition_timestamps', 'boot:1718586493,system:1718586493']' (exit code 1):
Extracting images for full update.
/srv/src/T/out/host/linux-x86/bin/brillo_update_payload: line 402: xxd: command not found
ERROR: Media size (2562809711) is not a multiple of sector size(512)
brillo_update_payload: error: Couldn't detect the image format of /srv/src/T/out/target/product/tissot/lineage_-target_files-20240617.zip
>> [Mon Jun 17 02:30:42 UTC 2024] Moving build artifacts for tissot to '/srv/zips/tissot'
sha256sum: 'e-*.zip': No such file or directory
>> [Mon Jun 17 02:30:42 UTC 2024] Finishing build for tissot
>> [Mon Jun 17 02:30:42 UTC 2024] Cleaning source dir for device tissot
>> [Mon Jun 17 02:31:19 UTC 2024] Switch back to Python3
real 97m42.150s
user 0m8.211s
sys 0m10.033s
The questions are:
-
Why did the build fail with the above message? Wasn’t it supposed to be self-contained build environment to compile
/e/OS
all the way to get the final ZIP (with flashfiles, I presume)?
To be clear: after correcting the commit hash in the manifest I cleared the work area (except.repo/
directory, naturally). -
Why does the manifest contain some hash that the build tools cannot find?