1
0
forked from suse-edge/Factory
Factory/kiwi-builder-image
Steven Hardy 744d04b40a
kiwi-builder-image: Align with OBS latest version
Aligns with the latest fixes in isv:SUSE:Edge:KiwiBuilder/kiwi-builder-10

(cherry picked from commit 8a93aae7c5)
2024-12-04 12:25:44 +00:00
..
_service Add kiwi-builder-image 2024-11-15 13:48:36 +00:00
build-image.sh kiwi-builder-image: Align with OBS latest version 2024-12-04 12:25:44 +00:00
config.sh Add kiwi-builder-image 2024-11-15 13:48:36 +00:00
Dockerfile kiwi-builder-image: Align with OBS latest version 2024-12-04 12:25:44 +00:00
README kiwi-builder-image: Align with OBS latest version 2024-12-04 12:25:44 +00:00
SL-Micro.kiwi Add kiwi-builder-image 2024-11-15 13:48:36 +00:00
SL-Micro.kiwi.4096 Add kiwi-builder-image 2024-11-15 13:48:36 +00:00

###########################
Kiwi SDK Image Instructions
###########################

Please ensure that you're running this on a registered SLE Micro 6.0 system, and make sure that SELinux is disabled:

# setenforce 0

Next, download the podman image:

# podman pull %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0

Make a local output directory (where the images will reside):

# mkdir output

Then, to build a standard "Base" image, run the following in podman:

# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image

To build a "Base" SelfInstall ISO, you can add additional flags, for example:

# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Base-SelfInstall

Then, to build a standard "Default" image, run the following in podman:

# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Default

To build a "Default" SelfInstall ISO, you can add additional flags, for example:

# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Default-SelfInstall

To build an image with a RealTime kernel, e.g. a RAW disk image ("Default"), use the following:

# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Base-RT

To build an image that supports a large block/sectorsize (4096), use the "-b" flag, for example:

# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image -p Default-SelfInstall -b

# mkdir mydefs/
# cp /path/to/SL-Micro.kiwi mydefs/
# cp /path/to/config.sh mydefs/
# podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -v ./mydefs/:/micro-sdk/defs/ -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.1.16.0 build-image

All output will be in the local $(pwd)/output directory, for example:

# ls -1 output/
SLE-Micro.x86_64-6.0.changes
SLE-Micro.x86_64-6.0.packages
SLE-Micro.x86_64-6.0.raw
SLE-Micro.x86_64-6.0.verified
build
kiwi.result
kiwi.result.json

Note, if you want to rebuild the image, you'll need to empty the output directory, or Kiwi will error due to existing output files:

# rm -rf output/*