summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2025-01-07 12:07:43 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-03-26 18:45:13 +0000
commit8050390f99cf4e87608b0a4ba6e190f2516a1017 (patch)
treed041fc1340e9bece6136c6d6d46c1bbd41cde258
parent5d81f07c16c7e3be8310158796f6c23eb15de74d (diff)
downloadpoky-8050390f99cf4e87608b0a4ba6e190f2516a1017.tar.gz
meta/conf: Start to populate autobuilder config fragments
This populates the fragments directory with: a) the default set of variables used in all autobuilder builds b) the default resource related variables used in all autobuilder builds c) three different multilib test configurations used by the autobuilder The aim here is to start to make some of the autobuilder configuration more visable and patchable by users, and to allow some test confiturations to be user selectable if appropriate and needed for debugging. The main aautobuilder fragment is probably not directly reusable by most users, it contains the resource limits as used on the autobuilder itself. I can see arguments both way for whether this should be included in OE-Core or not but having an example of how we configure this is probably useful. Not all configuration in the autobuilder is being moved, this set of variables is just a basic starting point. Some variables may ultimately make more sense being migrated elsewhere, perhaps updating the main defaults for poky or nodistro. (From OE-Core rev: 746dc664da9c289a3063350590d3b5aada13d8d6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/conf/fragments/yocto-autobuilder/autobuilder-resource-constraints.conf26
-rw-r--r--meta/conf/fragments/yocto-autobuilder/autobuilder.conf13
-rw-r--r--meta/conf/fragments/yocto-autobuilder/multilib-mips64-n32.conf8
-rw-r--r--meta/conf/fragments/yocto-autobuilder/multilib-x86-lib32.conf6
-rw-r--r--meta/conf/fragments/yocto-autobuilder/multilib-x86-lib64.conf6
5 files changed, 59 insertions, 0 deletions
diff --git a/meta/conf/fragments/yocto-autobuilder/autobuilder-resource-constraints.conf b/meta/conf/fragments/yocto-autobuilder/autobuilder-resource-constraints.conf
new file mode 100644
index 0000000000..58cadd92b6
--- /dev/null
+++ b/meta/conf/fragments/yocto-autobuilder/autobuilder-resource-constraints.conf
@@ -0,0 +1,26 @@
1BB_CONF_FRAGMENT_SUMMARY = "Resource constraint variables used on the Yocto Projects autobuilder"
2BB_CONF_FRAGMENT_DESCRIPTION = "Resource constraint variables used on the Yocto Projects autobuilder"
3
4BB_NUMBER_THREADS = '16'
5BB_NUMBER_PARSE_THREADS = '16'
6BB_SERVER_TIMEOUT = '60'
7PARALLEL_MAKE = '-j 16 -l 75'
8BB_PRESSURE_MAX_CPU = '20000'
9BB_PRESSURE_MAX_IO = '20000'
10BB_LOADFACTOR_MAX = '1.5'
11XZ_MEMLIMIT = '5%'
12XZ_THREADS = '8'
13ZSTD_THREADS = '8'
14BB_TASK_NICE_LEVEL = '5'
15BB_TASK_NICE_LEVEL:task-testimage = '0'
16BB_TASK_IONICE_LEVEL = '2.7'
17BB_TASK_IONICE_LEVEL:task-testimage = '2.1'
18TEST_QEMUBOOT_TIMEOUT = '1500'
19BB_DISKMON_DIRS ?= 'STOPTASKS,${TMPDIR},1G,100K STOPTASKS,${DL_DIR},1G STOPTASKS,${SSTATE_DIR},1G STOPTASKS,/tmp,100M,30K HALT,${TMPDIR},100M,1K HALT,${DL_DIR},100M HALT,${SSTATE_DIR},100M HALT,/tmp,10M,1K'
20RUNQEMU_TMPFS_DIR = '/home/pokybuild/tmp'
21BB_HEARTBEAT_EVENT ?= '60'
22BB_LOG_HOST_STAT_ON_INTERVAL = '1'
23BB_LOG_HOST_STAT_CMDS_INTERVAL = 'oe-time-dd-test.sh -c 100 -t 3'
24BB_LOG_HOST_STAT_ON_FAILURE = '1'
25BB_LOG_HOST_STAT_CMDS_FAILURE = 'oe-time-dd-test.sh -l'
26
diff --git a/meta/conf/fragments/yocto-autobuilder/autobuilder.conf b/meta/conf/fragments/yocto-autobuilder/autobuilder.conf
new file mode 100644
index 0000000000..e3bac34339
--- /dev/null
+++ b/meta/conf/fragments/yocto-autobuilder/autobuilder.conf
@@ -0,0 +1,13 @@
1BB_CONF_FRAGMENT_SUMMARY = "Default variables used on the Yocto Projects autobuilder builds"
2BB_CONF_FRAGMENT_DESCRIPTION = "Default variables used on the Yocto Projects autobuilder builds"
3
4QEMU_USE_KVM ?= 'True'
5INHERIT += 'report-error'
6PREMIRRORS = ''
7BB_GENERATE_MIRROR_TARBALLS = '1'
8IMAGE_CLASSES += 'testimage'
9SDK_EXT_TYPE = 'minimal'
10SDK_INCLUDE_TOOLCHAIN = '1'
11ESDK_LOCALCONF_REMOVE:append = 'BB_HASHSERVE'
12SDK_TOOLCHAIN_LANGS += 'rust'
13
diff --git a/meta/conf/fragments/yocto-autobuilder/multilib-mips64-n32.conf b/meta/conf/fragments/yocto-autobuilder/multilib-mips64-n32.conf
new file mode 100644
index 0000000000..ec076b59f9
--- /dev/null
+++ b/meta/conf/fragments/yocto-autobuilder/multilib-mips64-n32.conf
@@ -0,0 +1,8 @@
1BB_CONF_FRAGMENT_SUMMARY = "Enable a MIPS64 triarch multilib"
2BB_CONF_FRAGMENT_DESCRIPTION = "Enable a MIPS64 triarch multilib"
3
4require conf/multilib.conf
5MULTILIBS = 'multilib:lib64 multilib:lib32'
6DEFAULTTUNE = 'mips64-n32'
7DEFAULTTUNE:virtclass-multilib-lib64 = 'mips64'
8DEFAULTTUNE:virtclass-multilib-lib32 = 'mips32r2'
diff --git a/meta/conf/fragments/yocto-autobuilder/multilib-x86-lib32.conf b/meta/conf/fragments/yocto-autobuilder/multilib-x86-lib32.conf
new file mode 100644
index 0000000000..9b0e2578ac
--- /dev/null
+++ b/meta/conf/fragments/yocto-autobuilder/multilib-x86-lib32.conf
@@ -0,0 +1,6 @@
1BB_CONF_FRAGMENT_SUMMARY = "Enable an x86 lib32 multilib"
2BB_CONF_FRAGMENT_DESCRIPTION = "Enable an x86 lib32 multilib"
3
4require conf/multilib.conf
5MULTILIBS = 'multilib:lib32'
6DEFAULTTUNE:virtclass-multilib-lib32 = 'x86'
diff --git a/meta/conf/fragments/yocto-autobuilder/multilib-x86-lib64.conf b/meta/conf/fragments/yocto-autobuilder/multilib-x86-lib64.conf
new file mode 100644
index 0000000000..1986b994e4
--- /dev/null
+++ b/meta/conf/fragments/yocto-autobuilder/multilib-x86-lib64.conf
@@ -0,0 +1,6 @@
1BB_CONF_FRAGMENT_SUMMARY = "Enable an x86 lib64 multilib"
2BB_CONF_FRAGMENT_DESCRIPTION = "Enable an x86 lib64 multilib"
3
4require conf/multilib.conf
5MULTILIBS = 'multilib:lib64'
6DEFAULTTUNE:virtclass-multilib-lib64 = 'x86-64'