1KIWI::SYSTEM::BOXBUILD(8) KIWI - Boxed Build Plugin KIWI::SYSTEM::BOXBUILD(8)
2
3
4
6 kiwi::system::boxbuild - Self Contained Image Build
7
9 kiwi-ng [global options] service <command> [<args>]
10
11 kiwi-ng system boxbuild -h | --help
12 kiwi-ng system boxbuild --box=<name>
13 [--box-memory=<vmgb>]
14 [--box-debug]
15 [--no-update-check]
16 [--x86_64]
17 <kiwi_build_command_args>...
18 kiwi-ng system boxbuild --list-boxes
19 kiwi-ng system boxbuild help
20
22 build an image in a self contained environment. The boxbuild command
23 uses KVM to start a virtual machine and run the kiwi build command
24 inside of that virtual machine. The provided --description and --tar‐
25 get-dir options are setup as shared folders between the host and the
26 guest. No other data will be shared with the host which also allows for
27 cross distribution builds. The boxbuild command provides the following
28 additional features over the standard build command:
29
30 · Build images independent of the host.
31
32 · Build images as normal user not as root.
33
34 · Build cross distribution images on one host.
35
36 · Build in predefined build VMs called boxes which includes all compo‐
37 nents needed to build appliances.
38
39 For running the build process in a virtual machine it's required to
40 provide VM images that are suitable to perform this job. We call the VM
41 images boxes and they contain kiwi itself as well as all other compo‐
42 nents needed to build appliances. Those boxes are hosted in the Open
43 Build Service and are publicly available on the Subprojects tab at:
44 https://build.opensuse.org/project/show/Virtualization:Appliances:SelfContained
45
46 As a user you don't need to work with the boxes because this is all
47 done by the plugin. The boxbuild command knows where to fetch the box
48 and also cares for an update of the box when it has changed.
49
51 --box=<name>
52 Name of the virtual machine that should be used for the build
53 process.
54
55 --list-boxes
56 show available build boxes.
57
58 --box-memory=<vmgb>
59 Number of GBs to reserve as main memory for the virtual machine.
60 By default 8GB will be used.
61
62 --no-update-check
63 Skip check for available box update. The option has no effect if
64 the selected box does not yet exist on the host.
65
66 --x86_64
67 Select box for the x86_64 architecture. If no architecture is
68 selected the host architecture is used for selecting the box.
69 The selected box architecture also specifies the target archi‐
70 tecture for the image build with that box.
71
72 --box-debug
73 In debug mode the started virtual machine will be kept open
74
75 <kiwi_build_command_args>...
76 List of command parameters as supported by the kiwi-ng build com‐
77 mand. The information given here is passed along to the kiwi-ng sys‐
78 tem build command running in the virtual machine. See the Example
79 below how to provide options to the build command correctly.
80
82 $ git clone https://github.com/OSInside/kiwi-descriptions
83
84 $ kiwi --type vmx system boxbuild --box suse -- \
85 --description kiwi-descriptions/suse/x86_64/suse-tumbleweed-JeOS \
86 --target-dir /tmp/myimage
87
89 Marcus Schäfer
90
92 2020, Marcus Schäfer
93
94
95
96
970.2.6 Mar 08, 2021 KIWI::SYSTEM::BOXBUILD(8)