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

Issue 826492 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Feature

Blocking:
issue 826487
issue 826496
issue 832309



Sign in to add a comment

Add an option to '--skylab' to 'atest server' suite of commands

Project Member Reported by pprabhu@chromium.org, Mar 27 2018

Issue description

This is the master bug for adding support to the 'atest server' suite of commands: https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/cli/server.py

The rest of the CLI will remain unchanged. New flags will be added 
  --skylab: Run against skylab inventory.
      + Create a temporary shallow checkout of the skylab_inventory project.
      + Use this checkout (and the python-proto bindings available there) to query / modify the inventory.

  The output format in this mode should be identical to those without skylab (i.e. not prototxt dump, but whatever is the currently supported format).

  --submit: For commands that modify inventory, submit the CL after uploading it.
 
Blocking: 826487
Labels: -Type-Bug Type-Feature
Blocking: 826496
Cc: nxia@chromium.org
 Issue 830970  has been merged into this issue.
Owner: nxia@chromium.org
Project Member

Comment 6 by bugdroid1@chromium.org, Apr 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/df7643930817fceba9fa03a60567851b329b7fcb

commit df7643930817fceba9fa03a60567851b329b7fcb
Author: Prathmesh Prabhu <pprabhu@chromium.org>
Date: Fri Apr 13 06:10:57 2018

[autoest] Make skylab_inventory scripts importable from cli

lab-tools will be updated to use the venv entry point of atest so that
skylab_inventory setup works correctly. This will not affect behaviour
of atest on moblab, where the venv entry point is not used.

BUG= chromium:826492 
TEST=bin/atest

Change-Id: I54ef73a93967537495b91637c7def4efac084a30
Reviewed-on: https://chromium-review.googlesource.com/1003592
Commit-Ready: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Prathmesh Prabhu <pprabhu@chromium.org>
Reviewed-by: Ningning Xia <nxia@chromium.org>

[add] https://crrev.com/df7643930817fceba9fa03a60567851b329b7fcb/bin/atest
[add] https://crrev.com/df7643930817fceba9fa03a60567851b329b7fcb/cli/atest_venv_entry.py

Project Member

Comment 7 by bugdroid1@chromium.org, Apr 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/manifest/+/e1d4bd10c8a9694c2b739b4d18d203df62bc4df6

commit e1d4bd10c8a9694c2b739b4d18d203df62bc4df6
Author: Ningning Xia <nxia@google.com>
Date: Fri Apr 13 17:28:34 2018

Add skylab_inventory project to labtools group

BUG= chromium:826492 
TEST=None
CQ-DEPEND=CL:*606227

Change-Id: Ibf00126c2e8fff0551cdfcbb814fdfa1ff37ecfa
Reviewed-on: https://chromium-review.googlesource.com/1005968
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>

[modify] https://crrev.com/e1d4bd10c8a9694c2b739b4d18d203df62bc4df6/full.xml

Project Member

Comment 8 by bugdroid1@chromium.org, Apr 13 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/chromeos/manifest-internal/+/ae9bbfb398020d1928fe2a5db36d87891e064cff

commit ae9bbfb398020d1928fe2a5db36d87891e064cff
Author: Ningning Xia <nxia@google.com>
Date: Fri Apr 13 17:28:50 2018

Project Member

Comment 9 by bugdroid1@chromium.org, Apr 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/infra/skylab_inventory/+/ea67589cba431ce735fd44bfc9ce60854e0e77fd

commit ea67589cba431ce735fd44bfc9ce60854e0e77fd
Author: Ningning Xia <nxia@google.com>
Date: Fri Apr 13 17:36:09 2018

Unify Environment and move Timestamp into common.

1) Unify Enum Environment to common
2) Add skylab to Environment
3) Move Timestamp to common

BUG= chromium:826492 
TEST=None

Change-Id: I6267bfcb4a2e2e6dbb7185a091feab89bf136691
Reviewed-on: https://chromium-review.googlesource.com/1011347
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>

[modify] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/venv/skylab_inventory/protos/server_pb2.py
[rename] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/protos/common.proto
[modify] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/venv/skylab_inventory/scripts/upsync.py
[modify] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/protos/server.proto
[modify] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/venv/skylab_inventory/scripts/print_dut_dimensions.py
[add] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/venv/skylab_inventory/protos/common_pb2.py
[modify] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/venv/skylab_inventory/protos/device_pb2.py
[modify] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/protos/device.proto
[modify] https://crrev.com/ea67589cba431ce735fd44bfc9ce60854e0e77fd/README.md

Project Member

Comment 11 by bugdroid1@chromium.org, Apr 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/infra/dummies/general-sandbox/+/ab009ffebb68a58f37779bddfba5f1a08ef174ae

commit ab009ffebb68a58f37779bddfba5f1a08ef174ae
Author: Ningning Xia <nxia@google.com>
Date: Wed Apr 18 21:39:38 2018

Test for atest --skylab.

BUG= chromium:826492 
TEST=None

Change-Id: Icbcf2fbb6af940d4a7a7b938e23620a4dca85251

[add] https://crrev.com/ab009ffebb68a58f37779bddfba5f1a08ef174ae/atest-test.txt

Project Member

Comment 12 by bugdroid1@chromium.org, Apr 20 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/infra/skylab_inventory/+/18a5f173c1fc878f4db2c77b63f39b27f2992048

commit 18a5f173c1fc878f4db2c77b63f39b27f2992048
Author: Ningning Xia <nxia@google.com>
Date: Fri Apr 20 22:00:35 2018

Add validation methods and dump_proto_message methods.

1) add validation methods for role, status, etc.
2) move loaders.py methods to text_manager.py
3) add dump_proto_message methods to text_manager.py

BUG= chromium:826492 
TEST=bin/print_servers

Change-Id: If594d2603a2265a268f581e776229545a5a9fab6
Reviewed-on: https://chromium-review.googlesource.com/1014643
Tested-by: Ningning Xia <nxia@chromium.org>
Trybot-Ready: Ningning Xia <nxia@chromium.org>
Reviewed-by: Ningning Xia <nxia@chromium.org>

[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/scripts/print_dut_state.py
[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/examples/print_servers.py
[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/protos/server.proto
[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/scripts/print_dut_dimensions.py
[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/scripts/list_duts_for_drone.py
[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/translation_utils.py
[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/scripts/print_dut_host_info.py
[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/examples/print_dut_by_id.py
[delete] https://crrev.com/952d459a64d1ced056208f923e846e331126dae1/venv/skylab_inventory/loader.py
[modify] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/scripts/downsync/server_db_sync.py
[add] https://crrev.com/18a5f173c1fc878f4db2c77b63f39b27f2992048/venv/skylab_inventory/text_manager.py

Project Member

Comment 13 by bugdroid1@chromium.org, Apr 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/infra/skylab_inventory/+/303c81426ccfd07d149018cba8bce5b3d3fe5713

commit 303c81426ccfd07d149018cba8bce5b3d3fe5713
Author: Ningning Xia <nxia@google.com>
Date: Tue Apr 24 03:55:58 2018

Create a super Exception class: InvalidDataException

BUG= chromium:826492 
TEST=None

Change-Id: I59dde76ae1f4149fa8944129a4865144c797ea89
Reviewed-on: https://chromium-review.googlesource.com/1023030
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>

[modify] https://crrev.com/303c81426ccfd07d149018cba8bce5b3d3fe5713/venv/skylab_inventory/translation_utils.py

Project Member

Comment 14 by bugdroid1@chromium.org, Apr 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/infra/skylab_inventory/+/6b9a104ffd68910f3f2eb0b010482bc9c47308e6

commit 6b9a104ffd68910f3f2eb0b010482bc9c47308e6
Author: Ningning Xia <nxia@google.com>
Date: Tue Apr 24 22:59:41 2018

Add lib/server.py

BUG= chromium:826492 
TEST=None

Change-Id: I2c3e50a744aa3455d056dfc3165c1350d0b3b719
Reviewed-on: https://chromium-review.googlesource.com/1024280
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Commit-Queue: Ningning Xia <nxia@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>

[add] https://crrev.com/6b9a104ffd68910f3f2eb0b010482bc9c47308e6/venv/skylab_inventory/lib/server.py
[add] https://crrev.com/6b9a104ffd68910f3f2eb0b010482bc9c47308e6/venv/skylab_inventory/lib/__init__.py

Project Member

Comment 15 by bugdroid1@chromium.org, Apr 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/c5cc45dc6d2d85940f5e3cf35afe5a9ad1d612bb

commit c5cc45dc6d2d85940f5e3cf35afe5a9ad1d612bb
Author: Ningning Xia <nxia@google.com>
Date: Wed Apr 25 21:40:57 2018

atest_venv_entry: import packages in right order.

1) change import order.
2) add required skylab_inventory/venv requirements to autotest/venv.

BUG= chromium:826492 
TEST=None

Change-Id: Ie4e25e1f018bed0475bf954f964cd906bcdf12c6
Reviewed-on: https://chromium-review.googlesource.com/1020501
Commit-Ready: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>

[modify] https://crrev.com/c5cc45dc6d2d85940f5e3cf35afe5a9ad1d612bb/cli/atest_venv_entry.py
[modify] https://crrev.com/c5cc45dc6d2d85940f5e3cf35afe5a9ad1d612bb/venv/requirements.txt

Project Member

Comment 16 by bugdroid1@chromium.org, Apr 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/c73bb7d4a9e89724c54941ccd133d5044f81d594

commit c73bb7d4a9e89724c54941ccd133d5044f81d594
Author: Ningning Xia <nxia@google.com>
Date: Sat Apr 28 04:27:34 2018

Add skylab_inventory to site-packages.

BUG= chromium:826492 
TEST=run build_externals.py

Change-Id: Ib159dc9f5fc19ffd1bb6c6ca20ab773d093f4465
Reviewed-on: https://chromium-review.googlesource.com/1031107
Commit-Ready: Ningning Xia <nxia@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Ningning Xia <nxia@chromium.org>

[modify] https://crrev.com/c73bb7d4a9e89724c54941ccd133d5044f81d594/utils/external_packages.py

Project Member

Comment 18 by bugdroid1@chromium.org, Apr 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/a043aad40faac63eeed49f660b2b81ace2e5e4b7

commit a043aad40faac63eeed49f660b2b81ace2e5e4b7
Author: Ningning Xia <nxia@google.com>
Date: Mon Apr 30 11:02:21 2018

Support --submit option for 'atest server cmd --skylab'

When --submit is provided in the command, set review labels and
submit the change CL directly using Gerrit API.

BUG= chromium:826492 
TEST=run cmd with --submit

Change-Id: Ie160eec5919a526de2393e6ee4316510293d721f
Reviewed-on: https://chromium-review.googlesource.com/1020220
Commit-Ready: Ningning Xia <nxia@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Ningning Xia <nxia@chromium.org>

[modify] https://crrev.com/a043aad40faac63eeed49f660b2b81ace2e5e4b7/cli/topic_common.py
[modify] https://crrev.com/a043aad40faac63eeed49f660b2b81ace2e5e4b7/client/common_lib/revision_control.py
[modify] https://crrev.com/a043aad40faac63eeed49f660b2b81ace2e5e4b7/cli/skylab_utils.py
[modify] https://crrev.com/a043aad40faac63eeed49f660b2b81ace2e5e4b7/cli/server.py

Project Member

Comment 19 by bugdroid1@chromium.org, Apr 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/9c188b956512ce2d5a513e3b8757f2f1ce69fd5e

commit 9c188b956512ce2d5a513e3b8757f2f1ce69fd5e
Author: Ningning Xia <nxia@google.com>
Date: Mon Apr 30 11:02:22 2018

Catch and ignore ImportError on skylab_inventory for unittests.

BUG= chromium:826492 
TEST=run unittests without skylab_inventory in site-packages

Change-Id: I4c89052593bc0429dd9bf7a89f70e06e2d64270c
Reviewed-on: https://chromium-review.googlesource.com/1033971
Commit-Ready: Ningning Xia <nxia@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Ningning Xia <nxia@chromium.org>

[modify] https://crrev.com/9c188b956512ce2d5a513e3b8757f2f1ce69fd5e/cli/topic_common.py
[modify] https://crrev.com/9c188b956512ce2d5a513e3b8757f2f1ce69fd5e/cli/skylab_utils.py
[modify] https://crrev.com/9c188b956512ce2d5a513e3b8757f2f1ce69fd5e/cli/server.py

Project Member

Comment 20 by bugdroid1@chromium.org, Apr 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/a7ba0c2f4150d6ce16f7a2e90327d6974f8ba7aa

commit a7ba0c2f4150d6ce16f7a2e90327d6974f8ba7aa
Author: Ningning Xia <nxia@google.com>
Date: Mon Apr 30 19:04:50 2018

Check skylab_inventory_imported.

BUG= chromium:826492 
TEST=unit_tests

Change-Id: I34b0c6a22803548a37236a7657410ed85358f8df
Reviewed-on: https://chromium-review.googlesource.com/1035533
Tested-by: Ningning Xia <nxia@chromium.org>
Trybot-Ready: Ningning Xia <nxia@chromium.org>
Reviewed-by: Xixuan Wu <xixuan@chromium.org>

[modify] https://crrev.com/a7ba0c2f4150d6ce16f7a2e90327d6974f8ba7aa/cli/topic_common.py

Project Member

Comment 22 by bugdroid1@chromium.org, May 1 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/infra/skylab_inventory/+/2fbbf4445eee79af1aad14ca81fb1719ae7da8e5

commit 2fbbf4445eee79af1aad14ca81fb1719ae7da8e5
Author: Ningning Xia <nxia@google.com>
Date: Tue May 01 23:01:42 2018

Add environment field to Connections.

BUG= chromium:826492 
TEST=None

Change-Id: Ib65d4f6d2e9ea2d5c99f0906bcf9ee5cb1614a08
Reviewed-on: https://chromium-review.googlesource.com/1036425
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>

[modify] https://crrev.com/2fbbf4445eee79af1aad14ca81fb1719ae7da8e5/venv/skylab_inventory/protos/connection_pb2.py
[modify] https://crrev.com/2fbbf4445eee79af1aad14ca81fb1719ae7da8e5/protos/connection.proto

Project Member

Comment 24 by bugdroid1@chromium.org, May 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/infra/skylab_inventory/+/85bb3a7ba275eb1ce2bb9b03714433a4a3949f2e

commit 85bb3a7ba275eb1ce2bb9b03714433a4a3949f2e
Author: Ningning Xia <nxia@google.com>
Date: Fri May 04 23:16:15 2018

change lib/server.py to filter servers on environment.

BUG= chromium:826492 
TEST=None

Change-Id: I44d8929d75f80dbb3173b1739900461e98d0856f
Reviewed-on: https://chromium-review.googlesource.com/1036734
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>

[modify] https://crrev.com/85bb3a7ba275eb1ce2bb9b03714433a4a3949f2e/venv/skylab_inventory/lib/server.py
[modify] https://crrev.com/85bb3a7ba275eb1ce2bb9b03714433a4a3949f2e/venv/skylab_inventory/examples/print_servers.py

Project Member

Comment 25 by bugdroid1@chromium.org, May 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/e87140573fe111cd94f535776c98ba638db44922

commit e87140573fe111cd94f535776c98ba638db44922
Author: Ningning Xia <nxia@google.com>
Date: Mon May 07 03:39:26 2018

Change data_dir and pass environment to skylab/lib/server.py

BUG= chromium:826492 
TEST=manually run atest server with --skylab

Change-Id: I27695207697e3a23cefe8db35832aecf3f9e7d23
Reviewed-on: https://chromium-review.googlesource.com/1036796
Commit-Ready: Ningning Xia <nxia@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Xixuan Wu <xixuan@chromium.org>
Reviewed-by: Ningning Xia <nxia@chromium.org>

[modify] https://crrev.com/e87140573fe111cd94f535776c98ba638db44922/cli/topic_common.py
[modify] https://crrev.com/e87140573fe111cd94f535776c98ba638db44922/cli/skylab_utils.py
[modify] https://crrev.com/e87140573fe111cd94f535776c98ba638db44922/cli/server.py

Status: Fixed (was: Assigned)

Comment 27 by nxia@chromium.org, May 19 2018

Blocking: 832309

Comment 28 by nxia@chromium.org, May 21 2018

Status: Assigned (was: Fixed)
Project Member

Comment 29 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/infra/skylab_inventory/+/65770dc30a0f66de4dea5775db1ead1ec7d1a2ed

commit 65770dc30a0f66de4dea5775db1ead1ec7d1a2ed
Author: Ningning Xia <nxia@google.com>
Date: Wed May 23 18:40:50 2018

verify_device: take optional environment.

1) make _verify_device public.
2) make environment optional.

BUG= chromium:826492 
TEST='atest create'

Change-Id: I557289d4d63459274c0f9d88ad7d51562bc2e364
Reviewed-on: https://chromium-review.googlesource.com/1068664
Commit-Ready: Ningning Xia <nxia@chromium.org>
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>

[modify] https://crrev.com/65770dc30a0f66de4dea5775db1ead1ec7d1a2ed/venv/skylab_inventory/lib/device.py

Comment 30 by nxia@chromium.org, May 23 2018

Status: Fixed (was: Assigned)
Project Member

Comment 31 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/3748b5f4d07852d1c85ac0c9f73aad3490ac16e6

commit 3748b5f4d07852d1c85ac0c9f73aad3490ac16e6
Author: Ningning Xia <nxia@google.com>
Date: Thu May 24 22:44:31 2018

cli/server: fix option messages.

1) reuse skylab_utils.MSG_INVALID_IN_SKYLAB.
2) add skylab_utils.MSG_ONLY_VALID_IN_SKYLAB.
3) fix option messages to allow "-N" for "atest server list".

BUG= chromium:826492 
TEST=run "atest server list --skylab"

Change-Id: I6d46eb72d3b20f547ad4b13158d234c355067b3d
Reviewed-on: https://chromium-review.googlesource.com/1068123
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Ningning Xia <nxia@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>

[modify] https://crrev.com/3748b5f4d07852d1c85ac0c9f73aad3490ac16e6/cli/topic_common.py
[modify] https://crrev.com/3748b5f4d07852d1c85ac0c9f73aad3490ac16e6/cli/skylab_utils.py
[modify] https://crrev.com/3748b5f4d07852d1c85ac0c9f73aad3490ac16e6/cli/server.py

Sign in to add a comment