Factory Definition¶
Each Factory can be customized to control how CI handles it. This is managed in the “Factory Definition” which is located in a factory’s ci-scripts.git repository in the factory-config.yml file.
notify¶
- notify:
- email:
- users:
<email_1>,<email_2>,<...>
- Required: Comma separated list of addresses to email after each CI build.
- failures_only:
<true|false>
Optional: If set to
true
users will only be notified of CI failures.Default:
false
- users:
lmp¶
- lmp:
- container_preload:
<true|false>
Optional: Whether to preload docker images into the system-image as part of a platform build via the archive built by
containers.preload
.Default:
false
Inherits:
containers.preload
- params:
- EXAMPLE_VARIABLE_1:
<value>
Optional: Define an arbitrary environment variable to be passed into the LmP build. You can define as many as you want.
Default: This variable is user defined and does not exist unless instantiated.
- EXAMPLE_VARIABLE_1:
- machines:
- <machine_1>
- <machine_2>
Required: Specify the list of Supported LmP Machines to build for by their
MACHINE
name. A Factory’s subscription is generally only good for a single machine.Default: Set by user during Sign Up
- image_type:
<lmp_image_type>
Optional: Set the LmP image type to produce by recipe name. For example,
lmp-mini-image
,lmp-base-console-image
from meta-lmp.Default:
lmp-factory-image
(from recipes-samples/images/lmp-factory-image.bb in your meta-subscriber-overrides.git repo)- ref_options:
- refs/heads/
<branch>
: Optional: Override options when specific git references are updated
Example:
# In the below example, when the branch named "devel" is built by our # CI system, it will have its option values for "machine" and # "params" overriden by what is specified after "refs/heads/devel:". # In the "devel" build, IMAGE will now equal "lmp-mini" rather than # "lmp-factory-image" as initially defined. lmp: params: IMAGE: lmp-factory-image machines: - imx8mmevk ref_options: refs/heads/devel: machines: - raspberrypi3-64 params: IMAGE: lmp-mini
- refs/heads/
- tagging:
- refs/heads/
<branch>
:
-tag: <tag>
- Optional: Control how OTA_LITE tags are handled. See Advanced Tagging for more details.
- refs/heads/
- mfg_tools:
- machine: <machine>
Optional: Do an OE build to produce manufacturing tooling for a given
MACHINE
. This is used to facilitate the manufacturing process and to ensure secure boot on devices. Currently only NXP tools are supported.**Default: None
- image_type:
<mfg_image_type>
Optional: Sets the name of the recipe to use to build mfg_tools.
Default:
mfgtool-files
(from meta-lmp-base/recipes-support/mfgtool-files/mfgtool-files_0.1.bb)
- image_type:
- container_preload:
containers¶
- containers:
- preload:
<true|false>
Optional: Whether to produce an archive containing docker images as part of a container build trigger. This archive can then be used to preload docker containers into your system-image by setting
lmp.preload
totrue
.Default:
false
Inherits:
lmp.preload
- assemble_system_image:
<true|false>
Optional: Whether to produce a system-image as part of container build triggers. The system-image will be available as an artifact in the
assemble-system-image
run step of builds produced with this option set totrue
.Default:
false
- platforms:
- arm
- arm64
- amd64
Optional: Specify a list of architectures to build containers for. Containers are only built for the specified list.
Default:
amd64
- tagging:
- refs/heads/
<branch>
:
-tag: <tag>
Optional: Control how OTA_LITE tags are handled. See Advanced Tagging for more details.
Default: This variable does not exist unless instantiated.
- refs/heads/
- preload: