Isolate HWID packages for AppEngine |
||
Issue descriptionCurrently, HWID package is depending on many modules/symbols that is not supported on the App Engine. As we are trying to deploy the HWID Service on App Engine, we should clean the dependence from such modules/symbols. AppEngine doesn't support the following modules/symbols: fcntl.ioctl multiprocessing netifaces numpy pexpect.pexpect pexpect.pexpect.EOF subprocess.Popen subprocess.PIPE This bug is used to track the related changes about isolating HWID packages.
,
Dec 27 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/factory/+/a75914857de885be28e4ba9bb70d76adc28d5d7f commit a75914857de885be28e4ba9bb70d76adc28d5d7f Author: Yilun Lin <yllin@google.com> Date: Wed Dec 27 14:59:06 2017 hwid/builder: Use checksum_updater by importing cros.chromeoshwid. To prevent from HWID package using fork-like functions, we have to import the cros.chromeoshwid.update_checksum to call the functions in the update_checksum module directly. TEST=make test BUG= chromium:797645 Change-Id: Ie22da5978612d627d77495563911a08922429011 [modify] https://crrev.com/a75914857de885be28e4ba9bb70d76adc28d5d7f/py/hwid/v3/builder_unittest.py [add] https://crrev.com/a75914857de885be28e4ba9bb70d76adc28d5d7f/py/hwid/v3/testdata/CHECKSUM_TEST [modify] https://crrev.com/a75914857de885be28e4ba9bb70d76adc28d5d7f/py/hwid/service/rpc_server.py [add] https://crrev.com/a75914857de885be28e4ba9bb70d76adc28d5d7f/py/hwid/v3/testdata/CHECKSUM_TEST.golden [add] https://crrev.com/a75914857de885be28e4ba9bb70d76adc28d5d7f/py_pkg/cros/chromeoshwid [modify] https://crrev.com/a75914857de885be28e4ba9bb70d76adc28d5d7f/py/hwid/v3/builder.py
,
Feb 6 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/factory/+/f6f959e306cf438d5f86f9bfd25a048359922166 commit f6f959e306cf438d5f86f9bfd25a048359922166 Author: Yong Hong <yhong@chromium.org> Date: Tue Feb 06 20:20:58 2018 hwid: Moves exported interfaces into `hwid_utils` module. This CL moves exported interfaces and constants from `cros.factory.hwid.v3.common` to `cros.factory.hwid.v3.hwid_utils`. The module `cros.factory.hwid.v3.common` should contain only HWID framework internal used classes, and all the exported interfaces should be located in `cros.factory.hwid.v3.hwid_utils`. TEST=make test BUG= chromium:797645 Change-Id: I4ff8376aa4f6b079431d8d173f847e22fffe085e Reviewed-on: https://chromium-review.googlesource.com/844296 Commit-Ready: Yong Hong <yhong@google.com> Tested-by: Yong Hong <yhong@google.com> Reviewed-by: Yong Hong <yhong@google.com> [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/goofy/goofy_remote.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/tools/regcode.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/hwid/v3/common_unittest.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/hwid/v3/valid_hwid_db_unittest.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/gooftool/core.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/device/info.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/hwid/v3/database.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/gooftool/commands.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/hwid/v3/hwid_utils.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/hwid/v3/hwid_cmdline.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/test/pytests/hwid.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/hwid/v3/common.py [modify] https://crrev.com/f6f959e306cf438d5f86f9bfd25a048359922166/py/hwid/v3/hwid_utils_unittest.py
,
Apr 16 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/factory/+/1f60b7de99d8a6a099e1fb300b9a414973007205 commit 1f60b7de99d8a6a099e1fb300b9a414973007205 Author: Yilun Lin <yllin@google.com> Date: Mon Apr 16 19:21:20 2018 process_utils: Workaround for AppEngine environment. HWID module references many packages outside `cros.factory.hwid.*`. These packages are using process_utils either directly import process_utils or import it in the import chain. AppEngine doesn't support some attributes, for example, `subprocess.Popen` and `subprocess.PIPE`. Using these attributes in the code raises exceptions. TEST=manual on AppEngine BUG= chromium:797645 , chromium:818125 Change-Id: Ic769a7a65147d782dbd2fd04d96d94c2013af1f0 Reviewed-on: https://chromium-review.googlesource.com/963880 Commit-Ready: Yilun Lin <yllin@chromium.org> Tested-by: Yilun Lin <yllin@chromium.org> Reviewed-by: Yong Hong <yhong@google.com> [modify] https://crrev.com/1f60b7de99d8a6a099e1fb300b9a414973007205/py/utils/process_utils.py
,
Aug 15
are we all done?
,
Aug 20
Done. |
||
►
Sign in to add a comment |
||
Comment 1 by bugdroid1@chromium.org
, Dec 26 2017