| --- |
| # Copyright 2014 The Chromium OS Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| # |
| # YAML configuration file for factory software dependency checking rules. |
| # Read http://crbug.com/403712 for more information. |
| |
| # 'groups' is a dictionary of "name => packages list" mapping that can be used |
| # later in 'rules'. |
| # 'rules' is a dicionary of "module => imports" mapping that "module" can only |
| # import from the packages listed in "imports". Note '*' in "imports" |
| # means no limitation, and a module (or imports) quoted by '<>' refers |
| # to a name defined in "groups". |
| |
| groups: |
| top: |
| - cros.factory # Top level of factory name space (only factory_common). |
| - cros.factory.utils # Common shared utilities. |
| - =cros.factory.device.device_utils |
| - factory_common |
| - httplib2 |
| - jsonrpclib # Special case - currently installed inside factory repo. |
| - yaml |
| - jsonschema |
| protobuf: |
| - cros.factory.proto |
| external: |
| - cros.factory.external.* # Wrapper to external libraries. |
| test_base: |
| # Constants and primitive definitions for factory tests. |
| - cros.factory.test.env # Constants defined for factory tests. |
| - cros.factory.test.i18n # Internationalization helpers. |
| - =cros.factory.test.i18n # Internationalization helpers. |
| - cros.factory.test.l10n # Localization data. |
| - cros.factory.test.rules # Rules related to test (and gooftool, hwid). |
| - =cros.factory.test.factory |
| - =cros.factory.test.session |
| test_log: |
| - cros.factory.testlog.* |
| - =cros.factory.test.event_log |
| test_utils: |
| - =cros.factory.test.device_data |
| - =cros.factory.test.event # Used by device_data. |
| - cros.factory.test.utils # Allow 3rd party / external dependency. |
| - =cros.factory.test.state |
| test_cros: |
| # ChromeOS specific utilities (may run in command line with minimal |
| # dependency. |
| - cros.factory.hwid # ChromeOS hardware idendifier (HWID). |
| - cros.factory.hwid.v2 # ChromeOS hardware idendifier (HWID) version 2. |
| - cros.factory.hwid.v3 # ChromeOS hardware idendifier (HWID) version 3. |
| - cros.factory.gooftool.* # Google Factory core utility for finalization. |
| - cros.factory.probe.* |
| framework: |
| - cros.factory.goofy.* # Factory test scheduler and controller. |
| - cros.factory.device.* # Device-Aware API. |
| - cros.factory.test # Base class for tests controlled by goofy. |
| - cros.factory.test.diagnosis # Diagnosis tools, used by Goofy. |
| - cros.factory.test.test_lists |
| - =cros.factory.test.utils.update_utils |
| - cros.factory.testlog.utils # Symlink of utils in testlog. |
| - cros.factory.umpire |
| - cros.factory.umpire.client |
| - cros.factory.tools.* |
| - cros.factory.hwid.service |
| tests: |
| - cros.factory.test.pytests.* # No limitation. |
| - cros.factory.test.fixture.* # Should be simpler depenency than pytests. |
| - cros.factory.test.rf.* # Radio frequency related tests. |
| unittests: |
| - cros.factory.unittest_utils # Utility for unittest only. |
| release: |
| - cros.factory.doc # Documents (generation). |
| - cros.factory.toolkit # Factory toolkit creation. |
| projects: |
| - cros.factory.dkps.* |
| - cros.factory.dome.* |
| - cros.factory.experimental |
| - cros.factory.hwid.service.appengine.* |
| - cros.factory.hwid.service.appengine2.* |
| - cros.factory.instalog.* |
| - cros.factory.shopfloor |
| - cros.factory.testlog |
| - cros.factory.umpire.server.* |
| known_deps: |
| - PIL |
| - cairo |
| - pango |
| - pangocairo |
| - setproctitle |
| - ws4py.* |
| |
| rules: |
| <top>: [<top>] |
| <external>: [] |
| <protobuf> : [google.protobuf] |
| <test_base>: [<top>, <protobuf>, <test_base>] |
| <test_log> : [<top>, <test_base>, <test_log>] |
| <test_utils>: [<top>, <external>, <test_base>, <test_utils>, |
| =cros.factory.test.pytests] |
| <test_cros>: [<top>, <external>, <protobuf>, <test_base>, <test_log>, |
| <test_utils>, <test_cros>] |
| # TODO(pihsun): Remove this exception. |
| =cros.factory.device: [<top>, cros.factory.device.*] |
| <framework>: [<top>, <external>, <protobuf>, <test_base>, <test_log>, |
| <test_cros>, <test_utils>, <framework>, <known_deps>] |
| <tests>: ['*'] |
| <projects>: ['*'] |
| <release>: ['*'] |
| <unittests>: ['*'] |