Skip to content

Commit 6511597

Browse files
author
SUSE Update Bot
committed
πŸ€–: Update build recipes from templates
1 parent 734e1ca commit 6511597

6 files changed

Lines changed: 163 additions & 0 deletions

File tree

β€Ž.obs/workflows.ymlβ€Ž

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,10 @@ staging_build:
3737
source_project: home:defolos:BCI:CR:16.0
3838
source_package: sle16-kernel-module-devel-image
3939
target_project: home:defolos:BCI:CR:16.0:Staging
40+
- branch_package:
41+
source_project: home:defolos:BCI:CR:16.0
42+
source_package: slm60-kernel-module-devel-image
43+
target_project: home:defolos:BCI:CR:16.0:Staging
4044
filters:
4145
event: pull_request
4246

@@ -81,6 +85,9 @@ refresh_devel_BCI:
8185
- trigger_services:
8286
project: devel:BCI:16.0
8387
package: sle16-kernel-module-devel-image
88+
- trigger_services:
89+
project: devel:BCI:16.0
90+
package: slm60-kernel-module-devel-image
8491
filters:
8592
event: push
8693
branches:
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# SPDX-License-Identifier: MIT
2+
3+
# Copyright (c) 2025 SUSE LLC
4+
5+
# All modifications and additions to the file contributed by third parties
6+
# remain the property of their copyright owners, unless otherwise agreed
7+
# upon.
8+
9+
# The content of THIS FILE IS AUTOGENERATED and should not be manually modified.
10+
# It is maintained by the BCI team and generated by
11+
# https://github.com/SUSE/BCI-dockerfile-generator
12+
13+
# Please submit bugfixes or comments via https://bugs.opensuse.org/
14+
# You can contact the BCI team via https://github.com/SUSE/bci/discussions
15+
16+
#!UseOBSRepositories
17+
#!ExclusiveArch: x86_64 s390x aarch64
18+
#!BuildTag: bci/bci-slm60-kernel-module-devel:%OS_VERSION_ID_SP%-%RELEASE%
19+
#!BuildTag: bci/bci-slm60-kernel-module-devel:%OS_VERSION_ID_SP%
20+
#!BuildTag: bci/bci-slm60-kernel-module-devel:latest
21+
#!BuildName: bci-bci-slm60-kernel-module-devel-%OS_VERSION_ID_SP%
22+
#!BuildVersion: 16.0
23+
FROM bci/bci-base:16.0
24+
25+
RUN set -euo pipefail; \
26+
zypper -n install --no-recommends gcc-build kmod make patch gawk pesign-obs-integration dwarves libelf-devel SLES-release; \
27+
zypper -n clean; \
28+
rm -rf {/target,}/var/log/{alternatives.log,lastlog,tallylog,zypper.log,zypp/history,YaST2}
29+
30+
# Define labels according to https://en.opensuse.org/Building_derived_containers
31+
# labelprefix=com.suse.bci.slm60-kernel-module-devel
32+
LABEL org.opencontainers.image.authors="https://github.com/SUSE/bci/discussions"
33+
LABEL org.opencontainers.image.title="SLE BCI SUSE Linux Micro 6.0 Kernel module development"
34+
LABEL org.opencontainers.image.description="SUSE Linux Micro 6.0 Kernel module development container based on the SLE Base Container Image."
35+
LABEL org.opencontainers.image.version="%OS_VERSION_ID_SP%-%RELEASE%"
36+
LABEL org.opencontainers.image.url="https://www.suse.com/products/base-container-images/"
37+
LABEL org.opencontainers.image.created="%BUILDTIME%"
38+
LABEL org.opencontainers.image.vendor="SUSE LLC"
39+
LABEL org.opencontainers.image.source="%SOURCEURL%"
40+
LABEL org.opencontainers.image.ref.name="%OS_VERSION_ID_SP%-%RELEASE%"
41+
LABEL org.opensuse.reference="registry.suse.com/bci/bci-slm60-kernel-module-devel:%OS_VERSION_ID_SP%-%RELEASE%"
42+
LABEL org.openbuildservice.disturl="%DISTURL%"
43+
LABEL com.suse.supportlevel="techpreview"
44+
LABEL com.suse.supportlevel.until="2031-07-31"
45+
LABEL com.suse.eula="sle-bci"
46+
LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle"
47+
LABEL com.suse.release-stage="beta"
48+
# endlabelprefix
49+
LABEL io.artifacthub.package.readme-url="%SOURCEURL%/README.md"
50+
LABEL io.artifacthub.package.logo-url="https://opensource.suse.com/bci/SLE_BCI_logomark_green.svg"
51+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/x86_64/patchinfo.ga/kernel-devel-6.4.0-17.1.noarch.rpm
52+
COPY kernel-devel-6.4.0-17.1.noarch.rpm .
53+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/x86_64/patchinfo.ga/kernel-macros-6.4.0-17.1.noarch.rpm
54+
COPY kernel-macros-6.4.0-17.1.noarch.rpm .
55+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/x86_64/patchinfo.ga/kernel-syms-6.4.0-17.1.x86_64.rpm
56+
COPY kernel-syms-6.4.0-17.1.x86_64.rpm .
57+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/x86_64/patchinfo.ga/kernel-default-devel-6.4.0-17.1.x86_64.rpm
58+
COPY kernel-default-devel-6.4.0-17.1.x86_64.rpm .
59+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/aarch64/patchinfo.ga/kernel-syms-6.4.0-17.1.aarch64.rpm
60+
COPY kernel-syms-6.4.0-17.1.aarch64.rpm .
61+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/aarch64/patchinfo.ga/kernel-default-devel-6.4.0-17.1.aarch64.rpm
62+
COPY kernel-default-devel-6.4.0-17.1.aarch64.rpm .
63+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/aarch64/patchinfo.ga/kernel-64kb-devel-6.4.0-17.1.aarch64.rpm
64+
COPY kernel-64kb-devel-6.4.0-17.1.aarch64.rpm .
65+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/s390x/patchinfo.ga/kernel-syms-6.4.0-17.1.s390x.rpm
66+
COPY kernel-syms-6.4.0-17.1.s390x.rpm .
67+
#!RemoteAssetUrl: https://api.opensuse.org/public/build/SUSE:ALP:Source:Standard:Core:1.0:Build/standard/s390x/patchinfo.ga/kernel-default-devel-6.4.0-17.1.s390x.rpm
68+
COPY kernel-default-devel-6.4.0-17.1.s390x.rpm .
69+
RUN set -euo pipefail; \
70+
[ $(LC_ALL=C rpm --checksig -v *rpm | \
71+
grep -c -E "^ *V3.*key ID 09d9ea69:") = 9 ] \
72+
&& rpm -Uvh --oldpackage --force *.$(uname -m).rpm *.noarch.rpm \
73+
&& rm -vf *.rpm \
74+
&& rpmqpack | grep -E '^kernel-' | xargs zypper -n addlock
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# SUSE Linux Micro 6.0 GA Kernel Module Development Container
2+
![Redistributable](https://img.shields.io/badge/Redistributable-Yes-green)![Support Level](https://img.shields.io/badge/Support_Level-techpreview-blue)
3+
[![SLSA](https://img.shields.io/badge/SLSA_(v0.1)-Level_4-Green)](https://documentation.suse.com/sbp/server-linux/html/SBP-SLSA4/)
4+
[![Provenance: Available](https://img.shields.io/badge/Provenance-Available-Green)](https://documentation.suse.com/container/all/html/Container-guide/index.html#container-verify)
5+
6+
## Description
7+
8+
Th Kernel Module Development Container Image includes all necessary tools to build kernel
9+
modules for SUSE Linux Micro 6.0. It is intended to be used for building out-of-tree kernel
10+
modules in restricted environments.
11+
12+
13+
## Usage
14+
15+
The image can be used to launch a container and build a kernel
16+
module. The following example below shows how to do this for the DRBD kernel module:
17+
```ShellSession
18+
$ podman run --rm -it --name drbd-build registry.suse.com/bci/bci-slm60-kernel-module-devel:16.0
19+
# zypper -n in coccinelle tar
20+
# curl -Lsf -o - https://pkg.linbit.com/downloads/drbd/9/drbd-9.2.11.tar.gz | tar xzf -
21+
# cd drbd-9.2.11/
22+
# make -C drbd all KDIR=/usr/src/linux-obj/$(uname -m)/default
23+
```
24+
25+
The built kernel module is then available in
26+
`/drbd-9.2.11/drbd/build-current/drbd.ko`. It can be copied to the host system
27+
as follows:
28+
```ShellSession
29+
$ podman cp drbd-build:/drbd-9.2.11/drbd/build-current/drbd.ko .
30+
$ sudo modprobe drbd.ko
31+
```
32+
33+
Alternatively, the kernel module can be built as part of a container build using
34+
a `Dockerfile`:
35+
36+
```Dockerfile
37+
FROM registry.suse.com/bci/bci-slm60-kernel-module-devel:16.0
38+
ENV DRBD_VERSION=9.2.11
39+
WORKDIR /src/
40+
RUN zypper -n in coccinelle tar
41+
42+
RUN set -euxo pipefail; \
43+
curl -Lsf -o - https://pkg.linbit.com/downloads/drbd/9/drbd-${DRBD_VERSION}.tar.gz | tar xzf - ; \
44+
cd drbd-${DRBD_VERSION}; \
45+
make -C drbd all KDIR=/usr/src/linux-obj/$(uname -m)/default
46+
```
47+
48+
Build the container image, launch the container, and copy the kernel module to
49+
the local machine:
50+
```ShellSession
51+
$ buildah bud --layers -t drbd-ko .
52+
$ podman run --name drbd drbd-ko
53+
$ podman cp drbd:/src/drbd-9.2.11/drbd/build-current/drbd.ko .
54+
$ podman rm drbd
55+
```
56+
57+
## Licensing
58+
59+
`SPDX-License-Identifier: MIT`
60+
61+
This documentation and the build recipe are licensed as MIT.
62+
The container itself contains various software components under various open source licenses listed in the associated
63+
Software Bill of Materials (SBOM).
64+
65+
This image is a tech preview. Do not use it for production.
66+
Your feedback is welcome.
67+
Please report any issues to the [SUSE Bugzilla](https://bugzilla.suse.com/enter_bug.cgi?product=SUSE%20Linux%20Enterprise%20Base%20Container%20Images).
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<constraints>
2+
<hardware>
3+
<disk>
4+
<size unit="G">8</size>
5+
</disk>
6+
</hardware>
7+
</constraints>
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<services>
2+
<service mode="buildtime" name="docker_label_helper"/>
3+
<service mode="buildtime" name="kiwi_metainfo_helper"/>
4+
</services>
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
-------------------------------------------------------------------
2+
Mon Mar 31 08:47:07 UTC 2025 - SUSE Update Bot <bci-internal@suse.de>
3+
4+
- First version of the SUSE Linux Micro 6.0 Kernel module development BCI

0 commit comments

Comments
Β (0)