Add logics in autotest/devserver for CrOS auto-update |
|||||||||
Issue descriptionIn order to make autotest call devserver to auto-update a DUT, some logics should added in devserver.py in autotest directory. These logics include: 1. make a call to devserver's API to start auto-update. 2. make a call to devserver's API to check the status of auto-update. 3. handling overall retry when error happens. 4. handling error reporting and logging. ... more will be updated.
,
Jun 21 2016
,
Jul 27 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/autotest/+/5dc64eab19add3bca232fc9139845a4e839a1d3a commit 5dc64eab19add3bca232fc9139845a4e839a1d3a Author: xixuan <xixuan@google.com> Date: Sat May 21 00:27:51 2016 Autotest: Add logic for devserver to trigger auto-update. This CL let devserver.py trigger CrOS auto-update for a CrOS host. The code path now is: afe --> cros_host.machine_install_by_devserver() --> devserver.auto_update() --> cros_au in Devserver API. Involving host class is because that there're many host-specific feature needs to be read. The whole functions are combined with CL:346199, CL:348381. BUG= chromium:613769 TEST=locally ran 'ds.auto_update([dut], [image_path])'; Ran 'repair' and 'provision test' for DUT from local autotest instance; Ran unittest. Changes to be committed: modified: client/common_lib/cros/dev_server.py modified: client/common_lib/cros/dev_server_unittest.py modified: global_config.ini modified: server/afe_utils.py modified: server/hosts/cros_host.py Change-Id: I91ce8d283d97f4bb110d7478714302c4584b171e Reviewed-on: https://chromium-review.googlesource.com/346484 Commit-Ready: Xixuan Wu <xixuan@chromium.org> Tested-by: Xixuan Wu <xixuan@chromium.org> Reviewed-by: Chris Sosa <sosa@chromium.org> [modify] https://crrev.com/5dc64eab19add3bca232fc9139845a4e839a1d3a/server/hosts/cros_host.py [modify] https://crrev.com/5dc64eab19add3bca232fc9139845a4e839a1d3a/client/common_lib/cros/dev_server.py [modify] https://crrev.com/5dc64eab19add3bca232fc9139845a4e839a1d3a/server/afe_utils.py [modify] https://crrev.com/5dc64eab19add3bca232fc9139845a4e839a1d3a/client/common_lib/cros/dev_server_unittest.py [modify] https://crrev.com/5dc64eab19add3bca232fc9139845a4e839a1d3a/global_config.ini
,
Aug 3 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/autotest/+/aaaf6e100dbf4105293de9c92403bf4ea5afc846 commit aaaf6e100dbf4105293de9c92403bf4ea5afc846 Author: xixuan <xixuan@google.com> Date: Fri Jul 29 19:08:45 2016 Autotest: modify auto-update logic to make sure errors won't be eaten. Since func _start_auto_update will return process id finally, any errors in triggerring auto-update won't be raised and logged. This CL propose to: 1. Raise any errors happens in _start_auto_update() 2. Call handler_cleanup() and collect_au_log() no matter auto-update process succeeds or not. 3. Call kill_au_proc() if error happens in auto-update. It can be executed even if the current auto-update process has finished, since that pid is not required for it. 4. Every rpc functions should be retried independently. For example, retry handler_cleanup won't cause the whole auto-update process (_start_auto_update()) to be retried. BUG= chromium:613769 TEST=locally ran 'ds.auto_update([dut], [image_path])'; Ran 'repair' and 'provision test' for DUT from local autotest instance; Ran unittest. Changes to be committed: modified: client/common_lib/cros/dev_server.py modified: client/common_lib/cros/dev_server_unittest.py Change-Id: Ia827d584d6010930f3f35fafe451d64c0195be21 Reviewed-on: https://chromium-review.googlesource.com/364583 Commit-Ready: Xixuan Wu <xixuan@chromium.org> Tested-by: Xixuan Wu <xixuan@chromium.org> Reviewed-by: Chris Sosa <sosa@chromium.org> [modify] https://crrev.com/aaaf6e100dbf4105293de9c92403bf4ea5afc846/client/common_lib/cros/dev_server.py [modify] https://crrev.com/aaaf6e100dbf4105293de9c92403bf4ea5afc846/client/common_lib/cros/dev_server_unittest.py
,
Oct 6 2016
,
Jan 21 2017
,
Mar 4 2017
,
Apr 17 2017
,
May 30 2017
,
Aug 1 2017
,
Aug 3 2017
Closing. Please reopen it if its not fixed. Thanks! |
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by benhenry@chromium.org
, Jun 21 2016