| DEPS = [ |
| 'infra/bqupload', |
| 'infra/experimental', |
| 'infra/git', |
| 'infra/gn', |
| 'infra/goma', |
| 'infra/gsutil', |
| 'infra/macos_sdk', |
| 'infra/minfs', |
| 'infra/ninja', |
| # TODO(IN-825): Delete this dependency once host-side tests are run only |
| # in shards. |
| 'infra/tar', |
| 'infra/testsharder', |
| 'infra/upload', |
| 'infra/upload_debug_symbols', |
| 'infra/zbi', |
| 'recipe_engine/cipd', |
| 'recipe_engine/buildbucket', |
| 'recipe_engine/context', |
| 'recipe_engine/isolated', |
| 'recipe_engine/json', |
| 'recipe_engine/file', |
| 'recipe_engine/path', |
| 'recipe_engine/platform', |
| 'recipe_engine/properties', |
| 'recipe_engine/python', |
| 'recipe_engine/raw_io', |
| 'recipe_engine/step', |
| ] |
| |
| from recipe_engine.recipe_api import Property |
| from recipe_engine.config import ConfigGroup, Single, Enum, List, Set |
| |
| # List of available targets. |
| TARGETS = ['x64', 'arm64'] |
| |
| # List of available build types. |
| BUILD_TYPES = ['debug', 'release', 'thinlto', 'lto'] |
| |
| PROPERTIES = { |
| 'build.clang_toolchain': |
| Property( |
| help='clang toolchain used to build fuchsia', |
| param_name='clang_toolchain', |
| kind=ConfigGroup( |
| type=Enum('cipd', 'isolated'), instance=Single(str)), |
| default={}, |
| ), |
| 'build.target': |
| Property( |
| param_name="target", |
| kind=Enum(*TARGETS), |
| help='Target to build', |
| default='x64'), |
| 'build.build_type': |
| Property( |
| param_name="build_type", |
| kind=Enum(*BUILD_TYPES), |
| help='The build type', |
| default='debug'), |
| 'build.packages': |
| Property( |
| param_name="packages", |
| kind=List(basestring), |
| help='Packages to build', |
| default=[]), |
| 'build.universe_packages': |
| Property( |
| param_name="universe_packages", |
| kind=List(basestring), |
| help='Packages to build and add to the universe set', |
| default=[]), |
| 'build.variants': |
| Property( |
| param_name="variants", |
| kind=List(basestring), |
| help='--variant arguments to GN in `select_variant`', |
| default=[]), |
| 'build.gn_args': |
| Property( |
| param_name="gn_args", |
| kind=List(basestring), |
| help='Extra args to pass to GN', |
| default=[]), |
| 'build.ninja_targets': |
| Property( |
| param_name="ninja_targets", |
| kind=Set(basestring), |
| help='A set of extra target args to pass to ninja', |
| default=[]), |
| 'build.board': |
| Property( |
| param_name="board", kind=str, help='Board to build', default=None), |
| 'build.product': |
| Property( |
| param_name="product", |
| kind=str, |
| help='Product to build', |
| default=None), |
| 'build.exclude_images': |
| Property( |
| param_name='exclude_images', |
| kind=bool, |
| help='Whether to exclude the building of images', |
| default=False), |
| 'build.include_breakpad_symbols': |
| Property( |
| param_name="include_breakpad_symbols", |
| kind=bool, |
| help='Whether to build and upload breakpad_symbols', |
| default=False), |
| 'build.include_symbol_archive': |
| Property( |
| param_name="include_symbol_archive", |
| kind=bool, |
| help='Whether to build and upload a tar archive of all symbolized binaries', |
| default=False), |
| 'build.run_tests': |
| Property( |
| param_name='run_tests', |
| kind=bool, |
| help='Whether to run target tests', |
| default=False), |
| 'build.debug_symbol_bucket': |
| Property( |
| param_name='debug_symbol_bucket', |
| kind=str, |
| help='GCS bucket for uploading debug symbols', |
| default='fuchsia-infra-debug-symbols'), |
| 'build.environment_tags': |
| Property( |
| param_name='environment_tags', |
| kind=List(str), |
| help='Tags of environments on which the testsharder will key', |
| default=[]), |
| } |