Passthrough options¶
It is recommended to self-contain as many configuration options, if not all, inside a releng-tool project configuration. This can help promote a more consistent build for a project across various developer and CI environments. However, there may be a desire for certain per-execution hints to set when looking to help identify a given build or perform variant/debug-tailored builds.
Build identifier¶
Added in version 4.2.
Changed in version 4.3: Allow accepting a pre-set RELENG_BUILD_ID environment variable.
Changed in version 4.3: Support implicit build identifier detection.
A releng-tool run can accept a build identifier (a.k.a. job identifier) to help identify a specific build execution. Typically used in a CI context where an identifier is provided to releng-tool, which in-turn is used in a project's post-build phase to help package with a unique name.
A build identifier can be provided for a run using either the
--build-id <id> argument or pre-set using the
RELENG_BUILD_ID environment variable. For example:
releng-tool --build-id=123
With the above example, RELENG_BUILD_ID will be set
in both the script environment and executed calls with a value of 123.
When operating in a common CI context (e.g. Jenkins), the RELENG_BUILD_ID
value will be pre-populated with a respective build identifier (if not
explicitly set). The following table outlines supported tool checks. A
environment variable is used to detect if running in a CI context. If a CI
context is detected, a respective environment variable will be parsed for
a build identifier.
Type |
Detection |
Key |
|---|---|---|
AWS CodeBuild |
|
|
Azure Pipelines |
|
|
Bitbucket Pipelines |
|
|
CircleCI |
|
|
Forgejo |
|
|
GitHub |
|
|
GitLab |
|
|
Jenkins |
|
|
Travis CI |
|
|
Woodpecker |
|
|
Developers can opt-out of an implicit build identifier by setting the
RELENG_BUILD_ID_NO_IMPLICIT environment variable:
RELENG_BUILD_ID_NO_IMPLICIT=1
Build variant¶
Added in version 4.3.
A build variant (string) can be provided into a releng-tool run. This is typically used to help identify special variable builds such as enabling a custom feature or enabling certain debugging capabilities in a build.
A build variant can be provided for a run using either the
--build-variant <variant> argument or pre-set using the
RELENG_BUILD_VARIANT environment variable.
For example:
releng-tool --build-variant=.debug
With the above example, RELENG_BUILD_VARIANT
will be set in both the script environment and executed calls with a value
of .debug.
Build profiles¶
Added in version 2.5.
Build profile tags can be provided for a run to tailor for one or more features (which can be used in combination with a build variant hint).
For more information on profile tags, see build profile.
Other¶
See also: