• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1"""Functions related to config bundles.
2
3See proto definitions for descriptions of arguments.
4"""
5
6# Needed to load from @proto. Add @unused to silence lint.
7load("//config/util/bindings/proto.star", "protos")
8load(
9    "@proto//chromiumos/config/payload/config_bundle.proto",
10    config_bundle_pb = "chromiumos.config.payload",
11)
12load("//config/util/generate.star", "generate")
13
14def _create(
15        components = None,
16        designs = None,
17        device_brands = None,
18        partners = None,
19        programs = None,
20        software_configs = None,
21        brand_configs = None):
22    """Builds a ConfigBundle proto."""
23    return config_bundle_pb.ConfigBundle(
24        components = components,
25        design_list = designs,
26        device_brand_list = device_brands,
27        partner_list = partners,
28        program_list = programs,
29        software_configs = software_configs,
30        brand_configs = brand_configs,
31    )
32
33config_bundle = struct(
34    create = _create,
35    generate = generate.generate,
36)
37