Romulus Build error in phosphor-webui

Ed Tanous edtanous at google.com
Tue Nov 30 04:34:13 AEDT 2021


On Sun, Nov 28, 2021 at 8:56 PM Muggeridge, Matt
<matt.muggeridge2 at hpe.com> wrote:
>
> I have not been able to resolve this build error. I’ll be grateful for any suggestions.
>
>
>
> As an aside: how do I create an openbmc shell environment that is identical to what the build uses? If I could do that, then I may be able to triage further.

bitbake -c devshell phosphor-webui

>
>
>
> Here are the details of the build failure…

Unfortunately, the webui was one things that made it possible to break
the reproducibility of the yocto environment (ie, they rely on your
host systems npm storage) and that seems to be the failure you're
getting here.  Ideally, there would be some yocto machinery to help
with this and make this more reliable, but it didn't really exist when
we first ported the UI to the bmc years ago.  Supposedly there have
been significant improvements to the npm.bbclass in upstream yocto, so
it's possible that it's capable of doing what we need these days, but
I don't think anyone has looked into it.

>
>
>
> $ lsb_release -a
>
> No LSB modules are available.
>
> Distributor ID: Ubuntu
>
> Description:    Ubuntu 20.04.2 LTS
>
> Release:        20.04
>
> Codename:       focal
>
>
>
> Building from a fresh clone:
>
>
>
> git clone https://github.com/openbmc/openbmc.git
>
> cd openbmc
>
> . setup romulus
>
> bitbake obmc-phosphor-image
>
> :
>
> Eventually an ERROR occurs
>
> :
>
> ERROR: phosphor-webui-1.0+gitAUTOINC+f59274e8ec-r1 do_compile: ExecutionError('/sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/temp/run.do_compile.255021', 1, None, None)
>
> ERROR: Logfile of failure stored in: /sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/temp/log.do_compile.255021
>
>
>
> An error log is created under my ~/.npm directory (which seems like an odd location for it):
>
>
>
> 12516 error Error while executing:
>
> 12516 error /sbox/user/openbmc/build/romulus/tmp/hosttools/git ls-remote -h -t https://github.com/novnc/noVNC.git
>
> 12516 error fatal: unable to access 'https://github.com/novnc/noVNC.git/': gnutls_handshake() failed: Access was denied
>
>
>
> Though, I can successfully run that command from the shell.
>
>
>
> Some google research suggests it could be related to the version of TLS that Git is using (https://stackoverflow.com/a/60292604/7010982) and that it needs TLS v1.2. However, it seems I’m using supported versions
> (https://stackoverflow.com/a/53604947/7010982):
>
>
>
> $ ldd $(which "$(git --exec-path)"/git-http-push) | grep gnutls
>
>         libcurl-gnutls.so.4 => /lib/x86_64-linux-gnu/libcurl-gnutls.so.4 (0x00007fdf47f21000)
>
>         libgnutls.so.30 => /lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007fdf47933000)
>
>
> $ curl --version
>
> curl 7.68.0 (x86_64-pc-linux-gnu) libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3
>
> Release-Date: 2020-01-08
>
> Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp
>
> Features: AsynchDNS brotli GSS-API HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM NTLM_WB PSL SPNEGO SSL TLS-SRP UnixSockets
>
>
>
>
>
> Here’s more of the log…
>
> 12510 verbose stack Error: exited with error code: 128
>
> 12510 verbose stack     at ChildProcess.<anonymous> (/sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/recipe-sysroot-native/usr/lib/node_modules/npm/node_modules/pacote/lib/util/finished.js:12:19)
>
> 12510 verbose stack     at ChildProcess.emit (events.js:375:28)
>
> 12510 verbose stack     at maybeClose (internal/child_process.js:1055:16)
>
> 12510 verbose stack     at Socket.<anonymous> (internal/child_process.js:441:11)
>
> 12510 verbose stack     at Socket.emit (events.js:375:28)
>
> 12510 verbose stack     at Pipe.<anonymous> (net.js:675:12)
>
> 12511 verbose cwd /sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/git
>
> 12512 verbose Linux 5.4.0-84-generic
>
> 12513 verbose argv "/sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/recipe-sysroot-native/usr/bin/node" "/sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/recipe-sysroot-native/usr/bin/npm" "--loglevel" "info" "--proxy=http://proxy:8080" "--https-proxy=http://proxy:8080" "install"
>
> 12514 verbose node v14.17.1
>
> 12515 verbose npm  v6.14.13
>
> 12516 error Error while executing:
>
> 12516 error /sbox/user/openbmc/build/romulus/tmp/hosttools/git ls-remote -h -t https://github.com/novnc/noVNC.git
>
> 12516 error
>
> 12516 error fatal: unable to access 'https://github.com/novnc/noVNC.git/': gnutls_handshake() failed: Access was denied
>
> 12516 error
>
> 12516 error exited with error code: 128
>
> 12517 verbose exit [ 1, true ]
>
>
>
>
>
>
>
>
>
> Contents of: log.do_compile.255021
>
>
>
>
>
> DEBUG: Executing shell function do_compile
>
> npm info it worked if it ends with ok
>
> npm info using npm at 6.14.13
>
> npm info using node at v14.17.1
>
> npm info lifecycle phosphor-webui at 2.8.0-dev~preinstall: phosphor-webui at 2.8.0-dev
>
> npm timing stage:loadCurrentTree Completed in 41ms
>
> npm timing stage:loadIdealTree:cloneCurrentTree Completed in 1ms
>
> npm timing stage:loadIdealTree:loadShrinkwrap Completed in 1275ms
>
> npm timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 3285ms
>
> npm timing stage:loadIdealTree Completed in 5545ms
>
> npm timing stage:generateActionsToTake Completed in 1045ms
>
> npm timing audit submit Completed in 1366ms
>
> npm http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/audits/quick 1766ms
>
> npm timing audit body Completed in 411ms
>
> npm timing action:extract Completed in 2048ms
>
> npm WARN tar ENOENT: no such file or directory, open '/sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/git/node_modules/.staging/pump-64d8e380/package.json'
>
> npm WARN tar ENOENT: no such file or directory, open '/sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/git/node_modules/.staging/os-locale-6fd88320/package.json
>
> :
>
> Lots of lines similar to the previous
>
> :
>
> npm timing stage:rollbackFailedOptional Completed in 1ms
>
> npm timing stage:runTopLevelLifecycles Completed in 13501ms
>
> npm ERR! Error while executing:
>
> npm ERR! /sbox/user/openbmc/build/romulus/tmp/hosttools/git ls-remote -h -t https://github.com/novnc/noVNC.git
>
> npm ERR!
>
> npm ERR! fatal: unable to access 'https://github.com/novnc/noVNC.git/': gnutls_handshake() failed: Access was denied
>
> npm ERR!
>
> npm ERR! exited with error code: 128
>
> npm timing npm Completed in 15630ms
>
>
>
> npm ERR! A complete log of this run can be found in:
>
> npm ERR!     /home/user/.npm/_logs/2021-11-25T03_04_36_251Z-debug.log
>
> WARNING: /sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/temp/run.do_compile.3665580:143 exit 1 from 'npm --loglevel info --proxy=http://proxy:8080 --https-proxy=http://proxy:8080 install'
>
> WARNING: Backtrace (BB generated script):
>
>                 #1: do_compile, /sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/temp/run.do_compile.3665580, line 143
>
>                 #2: main, /sbox/user/openbmc/build/romulus/tmp/work/all-openbmc-linux/phosphor-webui/1.0+gitAUTOINC+f59274e8ec-r1/temp/run.do_compile.3665580, line 148


More information about the openbmc mailing list