SHA256
1
0
forked from suse-edge/Factory

16 Commits

Author SHA256 Message Date
df13448a90 Merge pull request 'create 3.2.2 release manifest' (#240) from dprodanov/Factory:3.2.2-rm into 3.2
Reviewed-on: suse-edge/Factory#240
2025-08-19 19:01:25 +02:00
6fd885aa56 create 3.2.2 release manifest 2025-08-19 16:50:57 +03:00
873b7ca8d6 Merge pull request 'Changes for EIB v1.1.2' (#224) from dbekhit/Factory:3.2 into 3.2
Reviewed-on: suse-edge/Factory#224
2025-08-05 09:06:15 +02:00
9e18ce3842 changes for EIB v1.1.2 2025-08-04 11:43:57 -04:00
9549266bdc Changes for EIB v1.1.1 (#127)
Co-authored-by: Nicolas Belouin <nbelouin@noreply.src.opensuse.org>
Reviewed-on: suse-edge/Factory#127
Reviewed-by: Steven Hardy <steven.hardy@noreply.src.opensuse.org>
Reviewed-by: Denislav Prodanov <dprodanov@noreply.src.opensuse.org>
Co-authored-by: dbw7 <danial.bekhit@suse.com>
Co-committed-by: dbw7 <danial.bekhit@suse.com>
2025-05-02 10:43:15 +02:00
c839af5ce7 Merge pull request '[3.2] Fix some issue with dependency projects ordering, make _config only build wanted packages' (#138) from nbelouin/Factory:fix-meta-config-3.2 into 3.2
Reviewed-on: suse-edge/Factory#138
2025-04-30 15:31:30 +02:00
15a0932fc3 Fix some issue with dependency projects ordering, make _config only build wanted packages
Signed-off-by: Nicolas Belouin <nicolas.belouin@suse.com>
(cherry picked from commit 6c1db68da8)
2025-04-30 15:28:11 +02:00
0e99df3355 Merge pull request '[3.2] update kiwi-builder to use kiwi version as build macro (#129)' (#134) from dirkmueller/Factory:3.2 into 3.2
Reviewed-on: suse-edge/Factory#134
Reviewed-by: Nicolas Belouin <nbelouin@noreply.src.opensuse.org>
Reviewed-by: Steven Hardy <steven.hardy@noreply.src.opensuse.org>
2025-04-28 17:03:04 +02:00
Dirk Müller
e4faea0759 Remove MAINTAINER statement
this is deprecated and already in oci.authors
2025-04-28 11:55:30 +02:00
Dirk Müller
76b5fe17d0 build the kiwi-image in an images_6.0 repository 2025-04-28 11:53:51 +02:00
Dirk Müller
9eba6bc6b4 make version mismatches fatal 2025-04-28 11:46:57 +02:00
Dirk Müller
baf71f063c update README as well
Although this file seems to be unused?
2025-04-28 11:46:43 +02:00
Dirk Müller
c913d6e401 Ensure kiwi versions and build tags actually align 2025-04-28 11:44:39 +02:00
Dirk Müller
2ba58603bb Remove no longer necessary workaround 2025-04-28 11:43:30 +02:00
210428c35d Merge pull request '[3.2] Enable aarch64 build for kiwi-builder-image' (#125) from nbelouin/Factory:backport-kiwi-aarch64 into 3.2
Reviewed-on: suse-edge/Factory#125
2025-04-22 13:37:09 +02:00
1ddffe1b99 Enable aarch64 build for kiwi-builder-image
Signed-off-by: Nicolas Belouin <nicolas.belouin@suse.com>
(cherry picked from commit e3f36b74d9)
2025-04-17 16:48:05 +02:00
10 changed files with 86 additions and 36 deletions

30
_config
View File

@@ -103,6 +103,36 @@ BuildFlags: onlybuild:release-manifest-image
PublishFlags: archsync PublishFlags: archsync
%endif %endif
%if "%_repository" == "images_6.0"
Prefer: container:sles15-image
Type: docker
BuildEngine: podman
Repotype: none
Patterntype: none
BuildFlags: dockerarg:SLE_VERSION=16.0
BuildFlags: onlybuild:kiwi-builder-image
# Publish multi-arch container images only once all archs have been built
PublishFlags: archsync
# Exclude the images selected by the aarch64 section
%ifarch aarch64
BuildFlags: excludebuild:baremetal-operator-image
BuildFlags: excludebuild:edge-image-builder-image
BuildFlags: excludebuild:endpoint-copier-operator-image
BuildFlags: excludebuild:ironic-image
BuildFlags: excludebuild:ironic-ipa-downloader-image
BuildFlags: excludebuild:kube-rbac-proxy-image
BuildFlags: excludebuild:metallb-controller-image
BuildFlags: excludebuild:metallb-speaker-image
%endif
%else
BuildFlags: excludebuild:kiwi-builder-image
%endif
%if "%_repository" == "charts" || "%_repository" == "phantomcharts" || "%_repository" == "releasecharts" %if "%_repository" == "charts" || "%_repository" == "phantomcharts" || "%_repository" == "releasecharts"
Type: helm Type: helm
Repotype: helm Repotype: helm

13
_meta
View File

@@ -31,14 +31,19 @@
<arch>x86_64</arch> <arch>x86_64</arch>
</repository> </repository>
{%- endif %} {%- endif %}
{%- for repository in ["images", "test_manifest_images"] %} {%- for repository in ["images", "images_6.0", "test_manifest_images"] %}
<repository name="{{ repository }}"> <repository name="{{ repository }}">
{%- if release_project is defined and repository == "images" %} {%- if release_project is defined and repository != "test_manifest_images" %}
<releasetarget project="{{ release_project }}" repository="images" trigger="manual"/> <releasetarget project="{{ release_project }}" repository="images" trigger="manual"/>
{%- endif %} {%- endif %}
<path project="SUSE:Registry" repository="standard"/> <path project="SUSE:Registry" repository="standard"/>
<path project="SUSE:CA" repository="SLE_15_SP6"/> {%- if repository == "images_6.0" %}
<path project="{{ project }}" repository="standard"/> <path project="SUSE:CA" repository="16.0"/>
<path project="SUSE:ALP:Products:Marble:6.0" repository="standard"/>
{%- else %}
<path project="SUSE:CA" repository="SLE_15_SP6"/>
<path project="{{ project }}" repository="standard"/>
{%- endif %}
<arch>x86_64</arch> <arch>x86_64</arch>
<arch>aarch64</arch> <arch>aarch64</arch>
</repository> </repository>

View File

@@ -1,5 +1,5 @@
#!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.1.0.1 #!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.1.2-rc1
#!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.1.0.1-%RELEASE% #!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.1.2-rc1-%RELEASE%
#!BuildVersion: 15.6 #!BuildVersion: 15.6
ARG SLE_VERSION ARG SLE_VERSION
FROM registry.suse.com/bci/bci-base:$SLE_VERSION FROM registry.suse.com/bci/bci-base:$SLE_VERSION
@@ -15,11 +15,11 @@ RUN zypper --non-interactive install --no-recommends edge-image-builder qemu-x86
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)" LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
LABEL org.opencontainers.image.title="SLE edge-image-builder Container Image" LABEL org.opencontainers.image.title="SLE edge-image-builder Container Image"
LABEL org.opencontainers.image.description="edge-image-builder based on the SLE Base Container Image." LABEL org.opencontainers.image.description="edge-image-builder based on the SLE Base Container Image."
LABEL org.opencontainers.image.version="1.1.0.1" LABEL org.opencontainers.image.version="1.1.2-rc1"
LABEL org.opencontainers.image.url="https://www.suse.com/products/server/" LABEL org.opencontainers.image.url="https://www.suse.com/products/server/"
LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.created="%BUILDTIME%"
LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opencontainers.image.vendor="SUSE LLC"
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%edge-image-builder:1.1.0.1-%RELEASE%" LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%edge-image-builder:1.1.2-rc1-%RELEASE%"
LABEL org.openbuildservice.disturl="%DISTURL%" LABEL org.openbuildservice.disturl="%DISTURL%"
LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%" LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%"
LABEL com.suse.eula="SUSE Combined EULA February 2024" LABEL com.suse.eula="SUSE Combined EULA February 2024"

View File

@@ -1,10 +1,13 @@
<services> <services>
<service name="obs_scm"> <service name="obs_scm">
<param name="url">https://github.com/suse-edge/edge-image-builder.git</param> <param name="url">https://github.com/suse-edge/edge-image-builder.git</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="scm">git</param> <param name="scm">git</param>
<param name="exclude">.git</param> <param name="exclude">.git</param>
<param name="revision">v1.1.0</param> <param name="revision">v1.1.2-rc1</param>
<!-- Uncomment and set this For Pre-Release Version -->
<param name="version">1.1.2~rc0</param>
<!-- Uncomment and this for regular version -->
<!-- <param name="versionformat">@PARENT_TAG@</param> -->
<param name="versionrewrite-pattern">v(\d+).(\d+).(\d+)</param> <param name="versionrewrite-pattern">v(\d+).(\d+).(\d+)</param>
<param name="versionrewrite-replacement">\1.\2.\3</param> <param name="versionrewrite-replacement">\1.\2.\3</param>
<param name="changesgenerate">enable</param> <param name="changesgenerate">enable</param>

View File

@@ -17,7 +17,7 @@
Name: edge-image-builder Name: edge-image-builder
Version: 1.1.0 Version: 1.1.2~rc1
Release: 0 Release: 0
Summary: Edge Image Builder Summary: Edge Image Builder
License: Apache-2.0 License: Apache-2.0

View File

@@ -1,18 +1,20 @@
#!BuildTag: %%IMG_PREFIX%%kiwi-builder:10.2.12.0 #!BuildTag: %%IMG_PREFIX%%kiwi-builder:%%kiwi_version%%.1-%RELEASE%
#!BuildTag: %%IMG_PREFIX%%kiwi-builder:10.2.12.0-%RELEASE% #!BuildTag: %%IMG_PREFIX%%kiwi-builder:%%kiwi_version%%.1
FROM registry.suse.com/bci/kiwi:10.2.12
MAINTAINER SUSE LLC (https://www.suse.com/) ARG KIWIVERSION="10.2.12"
FROM registry.suse.com/bci/kiwi:${KIWIVERSION}
ARG KIWIVERSION
# Define labels according to https://en.opensuse.org/Building_derived_containers # Define labels according to https://en.opensuse.org/Building_derived_containers
# labelprefix=com.suse.application.akri # labelprefix=com.suse.application.akri
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)" LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
LABEL org.opencontainers.image.title="SLE Kiwi Builder Container Image" LABEL org.opencontainers.image.title="SLE Kiwi Builder Container Image"
LABEL org.opencontainers.image.description="kiwi-builder based on the SLE Base Container Image." LABEL org.opencontainers.image.description="kiwi-builder based on the SLE Base Container Image."
LABEL org.opencontainers.image.version="%PACKAGE_VERSION%" LABEL org.opencontainers.image.version="%%kiwi_version%%"
LABEL org.opencontainers.image.url="https://www.suse.com/solutions/edge-computing/" LABEL org.opencontainers.image.url="https://www.suse.com/solutions/edge-computing/"
LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.created="%BUILDTIME%"
LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opencontainers.image.vendor="SUSE LLC"
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%kiwi-builder:10.2.12.0" LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%kiwi-builder:%%kiwi_version%%.1-%RELEASE%"
LABEL org.openbuildservice.disturl="%DISTURL%" LABEL org.openbuildservice.disturl="%DISTURL%"
LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%" LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%"
LABEL com.suse.eula="SUSE Combined EULA February 2024" LABEL com.suse.eula="SUSE Combined EULA February 2024"
@@ -21,8 +23,8 @@ LABEL com.suse.image-type="application"
LABEL com.suse.release-stage="released" LABEL com.suse.release-stage="released"
# endlabelprefix # endlabelprefix
# Configure Kiwi to use kpartx # help the build service understand the need for python3-kiwi
RUN echo -e "mapper:\n - part_mapper: kpartx" > /etc/kiwi.yml RUN zypper -n install -d -D python3-kiwi; [ "%%kiwi_version%%" = "${KIWIVERSION}" ] || { echo "expected kiwi version ${KIWIVERSION}: version mismatch"; exit 1; }
# Copy build script into image and make it executable # Copy build script into image and make it executable
ADD build-image.sh /usr/bin/build-image ADD build-image.sh /usr/bin/build-image

View File

@@ -8,7 +8,7 @@ Please ensure that you're running this on a registered SLE Micro 6.0 system, and
Next, download the podman image: Next, download the podman image:
# podman pull %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:10.2.12.0 # podman pull %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:%%kiwi_version%%.1
Make a local output directory (where the images will reside): Make a local output directory (where the images will reside):
@@ -16,40 +16,40 @@ Make a local output directory (where the images will reside):
Then, to build a standard "Base" image, run the following in podman: 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.2.12.0 build-image # podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:%%kiwi_version%%.1 build-image
To build a "Base" SelfInstall ISO, you can add additional flags, for example: 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.2.12.0 build-image -p Base-SelfInstall # podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:%%kiwi_version%%.1 build-image -p Base-SelfInstall
Then, to build a standard "Default" image, run the following in podman: 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.2.12.0 build-image -p Default # podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:%%kiwi_version%%.1 build-image -p Default
To build a "Default" SelfInstall ISO, you can add additional flags, for example: 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.2.12.0 build-image -p Default-SelfInstall # podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:%%kiwi_version%%.1 build-image -p Default-SelfInstall
To build an image with a RealTime kernel, e.g. a RAW disk image ("Default"), use the following: 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.2.12.0 build-image -p Base-RT # podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:%%kiwi_version%%.1 build-image -p Base-RT
To build an image that supports a large block/sectorsize (4096), use the "-b" flag, for example: 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.2.12.0 build-image -p Default-SelfInstall -b # podman run --privileged -v /etc/zypp/repos.d:/micro-sdk/repos/ -v ./output:/tmp/output -it %%IMG_REPO%%/%%IMG_PREFIXkiwi-builder:%%kiwi_version%%.1 build-image -p Default-SelfInstall -b
# mkdir mydefs/ # mkdir mydefs/
# cp /path/to/SL-Micro.kiwi mydefs/ # cp /path/to/SL-Micro.kiwi mydefs/
# cp /path/to/config.sh 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.2.12.0 build-image # 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:%%kiwi_version%%.1 build-image
All output will be in the local $(pwd)/output directory, for example: All output will be in the local $(pwd)/output directory, for example:
# ls -1 output/ # ls -1 output/
SLE-Micro.x86_64-6.0.changes SL-Micro.x86_64-6.0.changes
SLE-Micro.x86_64-6.0.packages SL-Micro.x86_64-6.0.packages
SLE-Micro.x86_64-6.0.raw SL-Micro.x86_64-6.0.raw
SLE-Micro.x86_64-6.0.verified SL-Micro.x86_64-6.0.verified
build build
kiwi.result kiwi.result
kiwi.result.json kiwi.result.json

View File

@@ -16,4 +16,14 @@
<param name="eval">SUPPORT_LEVEL=$(rpm --macros=/root/.rpmmacros -E %support_level)</param> <param name="eval">SUPPORT_LEVEL=$(rpm --macros=/root/.rpmmacros -E %support_level)</param>
<param name="var">SUPPORT_LEVEL</param> <param name="var">SUPPORT_LEVEL</param>
</service> </service>
<service mode="buildtime" name="replace_using_package_version">
<param name="file">Dockerfile</param>
<param name="regex">%%kiwi_version%%</param>
<param name="package">python3-kiwi</param>
</service>
<service mode="buildtime" name="replace_using_package_version">
<param name="file">README</param>
<param name="regex">%%kiwi_version%%</param>
<param name="package">python3-kiwi</param>
</service>
</services> </services>

View File

@@ -1,4 +1,4 @@
#!BuildTag: %%IMG_PREFIX%%release-manifest:3.2.1 #!BuildTag: %%IMG_PREFIX%%release-manifest:3.2.2
ARG SLE_VERSION ARG SLE_VERSION
FROM registry.suse.com/bci/bci-micro:$SLE_VERSION FROM registry.suse.com/bci/bci-micro:$SLE_VERSION
@@ -7,11 +7,11 @@ FROM registry.suse.com/bci/bci-micro:$SLE_VERSION
LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)" LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)"
LABEL org.opencontainers.image.title="SUSE Edge Release Manifest" LABEL org.opencontainers.image.title="SUSE Edge Release Manifest"
LABEL org.opencontainers.image.description="Release Manifest containing information about a specific SUSE Edge release" LABEL org.opencontainers.image.description="Release Manifest containing information about a specific SUSE Edge release"
LABEL org.opencontainers.image.version="3.2.1" LABEL org.opencontainers.image.version="3.2.2"
LABEL org.opencontainers.image.url="https://www.suse.com/solutions/edge-computing/" LABEL org.opencontainers.image.url="https://www.suse.com/solutions/edge-computing/"
LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.created="%BUILDTIME%"
LABEL org.opencontainers.image.vendor="SUSE LLC" LABEL org.opencontainers.image.vendor="SUSE LLC"
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%release-manifest:3.2.1" LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%release-manifest:3.2.2"
LABEL org.openbuildservice.disturl="%DISTURL%" LABEL org.openbuildservice.disturl="%DISTURL%"
LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%" LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%"
LABEL com.suse.eula="SUSE Combined EULA February 2024" LABEL com.suse.eula="SUSE Combined EULA February 2024"

View File

@@ -1,9 +1,9 @@
apiVersion: lifecycle.suse.com/v1alpha1 apiVersion: lifecycle.suse.com/v1alpha1
kind: ReleaseManifest kind: ReleaseManifest
metadata: metadata:
name: release-manifest-3-2-1 name: release-manifest-3-2-2
spec: spec:
releaseVersion: 3.2.1 releaseVersion: 3.2.2
components: components:
kubernetes: kubernetes:
k3s: k3s: