jojochuang commented on pull request #3037:
URL: https://github.com/apache/hadoop/pull/3037#issuecomment-846339358


   Installs python2.7, and replaced the custom PhantomJS binary (which was 
built for Xenial and does not run on Bionic) with the official phantomjs 
package for Bionic.
   
   Note: Yes I am aware we migrated to Python3. However, the installation of 
nodejs implicitly installs python-minimal, which is python2 without lots of 
packages. So python2 is installed by the ARM Docker image anyway (possibly the 
x86 docker image has it too). 
   
   The official Ubuntu phantomjs has a caveat: it requires X Window. 
(https://github.com/ariya/phantomjs/issues/14376#issuecomment-239687524). Add 
environment var QT_QPA_PLATFORM=offscreen to make it really 'headless". If it's 
not headless, the installer fails to execute phantomjs and abort.
   
   In comparision, the x86 Dockerfile doesn't install the official Ubuntu 
phantomjs package. Instead, it installs the version managed by the npm/yarn 
package manager.
   
   We need python2.7 package, because 
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-ui installs node-gyp 3.8, which has 
dependency on python2 to build. Not clear to me why the x86 Dockerfile doesn't 
require it. My guess is that the node-gyp has official x86 binary so it doesn't 
need to be built from source.
   
   That's a lot of digest in this comment since it involves Docker, Ubuntu, 
Maven, yarn, Python. Lots of different package managers. But at the end of it I 
was able to build for ARM.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-issues-h...@hadoop.apache.org

Reply via email to