New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 780704 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

chromeos-firmware-null build failure: __main__.PackError: Model '': Must assign at least one of BIOS or EC or PD image

Project Member Reported by fukino@chromium.org, Nov 2 2017

Issue description

https://uberchromegw.corp.google.com/i/chromeos/builders/master-paladin/builds/16793

On CommitQueueCompletion, the log says
"beaglebone-paladin: The BuildPackages stage failed: Packages failed in ./build_packages: chromeos-base/chromeos-firmware-null"

The log of ./build_packages in beaglebone-padadin says:

chromeos-firmware-null-0.0.3-r48: >>> Compiling source in /build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3 ...
chromeos-firmware-null-0.0.3-r48:  * Build beaglebone firmware updater: --legacy --tool_base /build/beaglebone/firmware/utils:/build/beaglebone/usr/sbin:/build/beaglebone/usr/bin --script updater4.sh
chromeos-firmware-null-0.0.3-r48: Traceback (most recent call last):
chromeos-firmware-null-0.0.3-r48:   File "./pack_firmware.py", line 1324, in <module>
chromeos-firmware-null-0.0.3-r48:     main(sys.argv)
chromeos-firmware-null-0.0.3-r48:   File "./pack_firmware.py", line 1321, in main
chromeos-firmware-null-0.0.3-r48:     packer.Start(argv[1:])
chromeos-firmware-null-0.0.3-r48:   File "./pack_firmware.py", line 1296, in Start
chromeos-firmware-null-0.0.3-r48:     target_dir=self._basedir)
chromeos-firmware-null-0.0.3-r48:   File "./pack_firmware.py", line 903, in _ProcessModel
chromeos-firmware-null-0.0.3-r48:     'PD image' % model)
chromeos-firmware-null-0.0.3-r48: __main__.PackError: Model '': Must assign at least one of BIOS or EC or PD image

https://uberchromegw.corp.google.com/i/chromeos/builders/beaglebone-paladin/builds/15184

One possible culprit is a recent change on pack_firmware.py?
https://chromium-review.git.corp.google.com/c/chromiumos/platform/firmware/+/749006
 
./build_packages --board=beaglebone on my local machine succeeded...
Cc: perley@chromium.org nxia@chromium.org
beaglebone-paradin got back to green now.
https://uberchromegw.corp.google.com/i/chromeos/builders/beaglebone-paladin
I have no idea what fixed the failure, though...
I would lean towards 743181 if I was a gambling man.
Thank you for taking care of it!
It seems https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/743181 broke the build.
When I apply patch 743181 on my local checkout and run the following command, I got the same error.
 emerge-beaglebone chromeos-base/chromeos-firmware-null


~/trunk/src/scripts $ emerge-beaglebone chromeos-base/chromeos-firmware-null
!!! CONFIG_PROTECT is empty for '/build/beaglebone/'
Calculating dependencies... done!

>>> Emerging (1 of 1) chromeos-base/chromeos-firmware-null-0.0.3-r48::chromiumos for /build/beaglebone/
cat: '': No such file or directory
 * Running stacked hooks for pre_pkg_setup
 *    sysroot_build_bin_dir ...                                                                                                           [ ok ]
 * Running stacked hooks for post_pkg_setup
 *    python_eclass_hack ...                                                                                                              [ ok ]
 * Running stacked hooks for pre_src_unpack
 *    python_multilib_setup ...                                                                                                           [ ok ]
>>> Unpacking source...
Cloning into '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3'...
done.
>>> Source unpacked in /build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work
 * Running stacked hooks for post_src_unpack
 *    asan_init ...                                                                                                                       [ ok ]
>>> Preparing source in /build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3 ...
>>> Source prepared.
>>> Configuring source in /build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3 ...
>>> Source configured.
>>> Compiling source in /build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3 ...
 * Build beaglebone firmware updater: --legacy --tool_base /build/beaglebone/firmware/utils:/build/beaglebone/usr/sbin:/build/beaglebone/usr/bin --script updater4.sh
Traceback (most recent call last):
  File "./pack_firmware.py", line 1324, in <module>
    main(sys.argv)
  File "./pack_firmware.py", line 1321, in main
    packer.Start(argv[1:])
  File "./pack_firmware.py", line 1296, in Start
    target_dir=self._basedir)
  File "./pack_firmware.py", line 903, in _ProcessModel
    'PD image' % model)
__main__.PackError: Model '': Must assign at least one of BIOS or EC or PD image
 * ERROR: chromeos-base/chromeos-firmware-null-0.0.3-r48::chromiumos failed (compile phase):
 *   Cannot pack firmware.
 * 
 * Call stack:
 *     ebuild.sh, line   93:  Called src_compile
 *   environment, line 3714:  Called cros-firmware_src_compile
 *   environment, line  904:  Called die
 * The specific snippet of code:
 *               ./pack_firmware.py "${image_cmd[@]}" "${ext_cmd[@]}" -o "${UPDATE_SCRIPT}" || die "Cannot pack firmware.";
 * 
 * If you need support, post the output of `emerge --info '=chromeos-base/chromeos-firmware-null-0.0.3-r48::chromiumos'`,
 * the complete build log and the output of `emerge -pqv '=chromeos-base/chromeos-firmware-null-0.0.3-r48::chromiumos'`.
 * The complete build log is located at '/build/beaglebone/tmp/portage/logs/chromeos-base:chromeos-firmware-null-0.0.3-r48:20171102-093934.log'.
 * For convenience, a symlink to the build log is located at '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/temp/build.log'.
 * The ebuild environment file is located at '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/temp/environment'.
 * Working directory: '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3'
 * S: '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3'

>>> Failed to emerge chromeos-base/chromeos-firmware-null-0.0.3-r48 for /build/beaglebone/, Log file:

>>>  '/build/beaglebone/tmp/portage/logs/chromeos-base:chromeos-firmware-null-0.0.3-r48:20171102-093934.log'

 * Messages for package chromeos-base/chromeos-firmware-null-0.0.3-r48 merged to /build/beaglebone/:

 * ERROR: chromeos-base/chromeos-firmware-null-0.0.3-r48::chromiumos failed (compile phase):
 *   Cannot pack firmware.
 * 
 * Call stack:
 *     ebuild.sh, line   93:  Called src_compile
 *   environment, line 3714:  Called cros-firmware_src_compile
 *   environment, line  904:  Called die
 * The specific snippet of code:
 *               ./pack_firmware.py "${image_cmd[@]}" "${ext_cmd[@]}" -o "${UPDATE_SCRIPT}" || die "Cannot pack firmware.";
 * 
 * If you need support, post the output of `emerge --info '=chromeos-base/chromeos-firmware-null-0.0.3-r48::chromiumos'`,
 * the complete build log and the output of `emerge -pqv '=chromeos-base/chromeos-firmware-null-0.0.3-r48::chromiumos'`.
 * The complete build log is located at '/build/beaglebone/tmp/portage/logs/chromeos-base:chromeos-firmware-null-0.0.3-r48:20171102-093934.log'.
 * For convenience, a symlink to the build log is located at '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/temp/build.log'.
 * The ebuild environment file is located at '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/temp/environment'.
 * Working directory: '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3'
 * S: '/build/beaglebone/tmp/portage/chromeos-base/chromeos-firmware-null-0.0.3-r48/work/chromeos-firmware-null-0.0.3'
Cc: sjg@chromium.org

Comment 8 by sjg@google.com, Nov 2 2017

Owner: sjg@chromium.org
Yes sorry there is something wrong with this with beaglebone. I'm not sure what is special about it, but I'll take a look today.

Summary: chromeos-firmware-null build failure: __main__.PackError: Model '': Must assign at least one of BIOS or EC or PD image (was: mastar-paradin keeps failing on slaves' buildpackages.)

Comment 10 by sjg@google.com, Nov 2 2017

Status: Started (was: Assigned)
I've updated that CL and tested a beaglebone build.

Comment 11 by sjg@chromium.org, Nov 4 2017

Labels: Unibuild

Comment 12 by sjg@chromium.org, Nov 6 2017

Status: Fixed (was: Started)

Comment 13 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Comment 14 by dchan@chromium.org, Jan 23 2018

Status: Fixed (was: Archived)

Sign in to add a comment