1
0
forked from suse-edge/Factory

22 Commits
3.2 ... 3.2

Author SHA256 Message Date
4a44701fdc Merge pull request 'update for 1.1.2' (#300) from dbekhit/Factory:3.2 into 3.2
Reviewed-on: suse-edge/Factory#300
Reviewed-by: Nicolas Belouin <nbelouin@noreply.src.opensuse.org>
Reviewed-by: Denislav Prodanov <dprodanov@noreply.src.opensuse.org>
2025-11-10 12:41:49 +01:00
359d1cf628 update changes for v1.1.2 2025-11-05 09:08:17 -05:00
64d22bf2bd add to artifacts.yaml 2025-11-03 19:58:37 -05:00
fcda1d4bba from rc2 to rc3 2025-11-03 11:19:07 -05:00
7c3ac796bc Merge pull request '[3.2.2] - bump elemental version' (#298) from dprodanov/Factory:3.2.2 into 3.2
Reviewed-on: suse-edge/Factory#298
Reviewed-by: Nicolas Belouin <nbelouin@noreply.src.opensuse.org>
2025-10-30 10:52:21 +01:00
d003bc004c update for 1.1.2-rc2 2025-10-29 09:26:10 -04:00
084192f807 [3.2.2] - bump elemental version 2025-10-29 11:58:53 +02:00
929ccf85de Merge pull request '[3.2.2] - update release manifest vars' (#297) from dprodanov/Factory:3.2.2 into 3.2
Reviewed-on: suse-edge/Factory#297
Reviewed-by: Nicolas Belouin <nbelouin@noreply.src.opensuse.org>
2025-10-28 08:34:27 +01:00
cf6830f815 [3.2.2] - update release manifest vars 2025-10-27 12:00:47 +02:00
3270c12d00 Merge pull request 'changed the entry point for pre-commit to call the script from the venv' (#250) from backport-pre-commit-fix-2 into 3.2
Reviewed-on: suse-edge/Factory#250
Reviewed-by: Nicolas Belouin <nbelouin@noreply.src.opensuse.org>
2025-08-29 11:38:27 +02:00
1627ee0d0d changed the entry point for pre-commit to call the script from the venv 2025-08-29 10:55:18 +02:00
e5d02732a8 Merge pull request '[3.2] Add pre-commit to update release manifest' (#220) from nbelouin/Factory:backport-precommit-3.2 into 3.2
Reviewed-on: suse-edge/Factory#220
Reviewed-by: Denislav Prodanov <dprodanov@noreply.src.opensuse.org>
2025-08-25 14:26:57 +02:00
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
9e14ce3cc2 Add pre-commit to update release manifest
Signed-off-by: Nicolas Belouin <nicolas.belouin@suse.com>
(cherry picked from commit c3f1be5640)
Signed-off-by: Nicolas Belouin <nicolas.belouin@suse.com>
2025-07-30 09:33:48 +02:00
dcb31ca578 add a tool to check local charts version in release manifest
Signed-off-by: Nicolas Belouin <nicolas.belouin@suse.com>
(cherry picked from commit cc8d3fe431)
Signed-off-by: Nicolas Belouin <nicolas.belouin@suse.com>
2025-07-30 09:29:28 +02: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
11 changed files with 201 additions and 65 deletions

View File

@@ -0,0 +1,23 @@
name: Check Release Manifest Local Charts Versions
on:
pull_request:
branches-ignore:
- "devel"
jobs:
sync-pr-project:
name: "Check Release Manifest Local Charts Versions"
runs-on: tumbleweed
steps:
# Waiting on PR to get merged for support in upstream action/checkout action
- uses: 'https://github.com/yangskyboxlabs/action-checkout@sha256'
name: Checkout repository
with:
object-format: 'sha256'
- name: Setup dependencies
run: |
zypper in -y python3-ruamel.yaml
- name: Check release manifest
run: |
python3 .obs/manifest-check.py --check

84
.obs/manifest-check.py Executable file
View File

@@ -0,0 +1,84 @@
#!/usr/bin/python3
import ruamel.yaml
import pathlib
import argparse
import sys
yaml = ruamel.yaml.YAML()
def get_chart_version(chart_name: str) -> str:
with open(f"./{chart_name}/Chart.yaml") as f:
chart = yaml.load(f)
return chart["version"]
def get_charts(chart):
if not chart["chart"].startswith("%%CHART_REPO%%"):
# Not a locally managed chart
return {}
chart_name = chart["chart"][len("%%CHART_REPO%%/%%IMG_PREFIX%%"):]
charts = { chart_name: chart["version"] }
for child_chart in chart.get("dependencyCharts", []) + chart.get("addonCharts", []):
charts.update(get_charts(child_chart))
return charts
def get_charts_list():
with open("./release-manifest-image/release_manifest.yaml") as f:
manifest = yaml.load(f)
charts = {}
for chart in manifest["spec"]["components"]["workloads"]["helm"]:
charts.update(get_charts(chart))
return charts
def check_charts(fix: bool) -> bool:
success = True
charts = get_charts_list()
to_fix = {}
for chart in charts:
expected_version = get_chart_version(chart)
if expected_version != charts[chart]:
success = False
to_fix[f'%%CHART_REPO%%/%%IMG_PREFIX%%{chart}'] = expected_version
print(f"{chart}: Expected: {expected_version}, Got: {charts[chart]}")
if fix and not success:
fix_charts(to_fix)
return True
return success
def fix_charts(to_fix):
manifest_path = pathlib.Path("./release-manifest-image/release_manifest.yaml")
manifest = yaml.load(manifest_path)
yaml.indent(mapping=2, sequence=4, offset=2)
yaml.width = 4096
for chart_index, chart in enumerate(manifest["spec"]["components"]["workloads"]["helm"]):
changed = False
if chart["chart"] in to_fix.keys():
changed = True
chart["version"] = to_fix[chart["chart"]]
for subchart_index, subchart in enumerate(chart.get("addonCharts", [])):
if subchart["chart"] in to_fix.keys():
changed = True
subchart["version"] = to_fix[subchart["chart"]]
chart["addonCharts"][subchart_index] = subchart
for subchart_index, subchart in enumerate(chart.get("dependencyCharts", [])):
if subchart["chart"] in to_fix.keys():
changed = True
subchart["version"] = to_fix[subchart["chart"]]
chart["dependencyCharts"][subchart_index] = subchart
if changed:
manifest["spec"]["components"]["workloads"]["helm"][chart_index] = chart
yaml.dump(manifest, manifest_path)
def main():
print("Checking charts versions in release manifest")
parser = argparse.ArgumentParser()
parser.add_argument('-c', '--check', action='store_true')
args = parser.parse_args()
if not check_charts(not args.check):
sys.exit(1)
else:
print("All local charts in release manifest are using the right version")
if __name__ == "__main__":
main()

10
.pre-commit-config.yaml Normal file
View File

@@ -0,0 +1,10 @@
repos:
- repo: local
hooks:
- id: check-manifest
name: "Check release-manifest"
entry: python3 .obs/manifest-check.py
language: python
additional_dependencies: ['ruamel.yaml']
pass_filenames: false
always_run: true

16
_config
View File

@@ -58,7 +58,6 @@ BuildFlags: onlybuild:release-manifest-image
BuildFlags: excludebuild:endpoint-copier-operator-image
BuildFlags: excludebuild:ironic-image
BuildFlags: excludebuild:ironic-ipa-downloader-image
BuildFlags: excludebuild:kiwi-builder-image
BuildFlags: excludebuild:kube-rbac-proxy-image
BuildFlags: excludebuild:metallb-controller-image
BuildFlags: excludebuild:metallb-speaker-image
@@ -115,6 +114,21 @@ BuildFlags: onlybuild:release-manifest-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

2
_meta
View File

@@ -41,8 +41,8 @@
<path project="SUSE:CA" repository="16.0"/>
<path project="SUSE:ALP:Products:Marble:6.0" repository="standard"/>
{%- else %}
<path project="{{ project }}" repository="standard"/>
<path project="SUSE:CA" repository="SLE_15_SP6"/>
<path project="{{ project }}" repository="standard"/>
{%- endif %}
<arch>x86_64</arch>
<arch>aarch64</arch>

View File

@@ -1,5 +1,5 @@
#!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.1.0.1
#!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.1.0.1-%RELEASE%
#!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.1.2
#!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.1.2-%RELEASE%
#!BuildVersion: 15.6
ARG 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.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.version="1.1.0.1"
LABEL org.opencontainers.image.version="1.1.2"
LABEL org.opencontainers.image.url="https://www.suse.com/products/server/"
LABEL org.opencontainers.image.created="%BUILDTIME%"
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-%RELEASE%"
LABEL org.openbuildservice.disturl="%DISTURL%"
LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%"
LABEL com.suse.eula="SUSE Combined EULA February 2024"

View File

@@ -10,6 +10,8 @@ kubernetes:
k3s:
selinuxPackage: k3s-selinux-1.6-1.slemicro.noarch
selinuxRepository: https://rpm.rancher.io/k3s/stable/common/slemicro/noarch
releaseURL: https://github.com/k3s-io/k3s/releases/download/
rke2:
selinuxPackage: rke2-selinux
selinuxRepository: https://rpm.rancher.io/rke2/stable/common/slemicro/noarch
releaseURL: https://github.com/rancher/rke2/releases/download/

View File

@@ -1,10 +1,13 @@
<services>
<service name="obs_scm">
<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="exclude">.git</param>
<param name="revision">v1.1.0</param>
<param name="revision">v1.1.2</param>
<!-- Uncomment and set this For Pre-Release Version -->
<!-- <param name="version">1.1.2</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-replacement">\1.\2.\3</param>
<param name="changesgenerate">enable</param>

View File

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

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
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.title="SUSE Edge Release Manifest"
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.created="%BUILDTIME%"
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 com.suse.supportlevel="%%SUPPORT_LEVEL%%"
LABEL com.suse.eula="SUSE Combined EULA February 2024"

View File

@@ -1,13 +1,13 @@
apiVersion: lifecycle.suse.com/v1alpha1
kind: ReleaseManifest
metadata:
name: release-manifest-3-2-1
name: release-manifest-3-2-2
spec:
releaseVersion: 3.2.1
releaseVersion: 3.2.2
components:
kubernetes:
k3s:
version: v1.31.7+k3s1
version: v1.31.13+k3s1
coreComponents:
- name: traefik-crd
version: 27.0.201+up27.0.2
@@ -23,72 +23,72 @@ spec:
- name: coredns
containers:
- name: coredns
image: rancher/mirrored-coredns-coredns:1.12.0
image: rancher/mirrored-coredns-coredns:1.12.3
type: Deployment
- name: metrics-server
containers:
- name: metrics-server
image: rancher/mirrored-metrics-server:v0.7.2
image: rancher/mirrored-metrics-server:v0.8.0
type: Deployment
rke2:
version: v1.31.7+rke2r1
version: v1.31.13+rke2r1
coreComponents:
- name: rke2-cilium
version: 1.17.100
version: 1.18.103
type: HelmChart
- name: rke2-canal
version: v3.29.2-build2025030601
version: v3.30.3-build2025090900
type: HelmChart
- name: rke2-calico-crd
version: v3.29.101
version: v3.30.300
type: HelmChart
- name: rke2-calico
version: v3.29.200
version: v3.30.300
type: HelmChart
- name: rke2-coredns
version: 1.39.100
version: 1.43.302
type: HelmChart
- name: rke2-ingress-nginx
version: 4.12.100
version: 4.12.600
type: HelmChart
- name: rke2-metrics-server
version: 3.12.200
version: 3.13.001
type: HelmChart
- name: rancher-vsphere-csi
version: 3.3.1-rancher900
version: 3.5.0-rancher100
type: HelmChart
- name: rancher-vsphere-cpi
version: 1.9.100
version: 1.12.100
type: HelmChart
- name: harvester-cloud-provider
version: 0.2.900
version: 0.2.1000
type: HelmChart
- name: harvester-csi-driver
version: 0.1.2300
version: 0.1.2400
type: HelmChart
- name: rke2-snapshot-controller-crd
version: 4.0.002
version: 4.0.003
type: HelmChart
- name: rke2-snapshot-controller
version: 4.0.002
version: 4.0.003
type: HelmChart
- name: rke2-snapshot-validation-webhook
version: 0.0.0
type: HelmChart
operatingSystem:
version: "6.0"
zypperID: "SL-Micro"
cpeScheme: "cpe:/o:suse:sl-micro:6.0"
prettyName: "SUSE Linux Micro 6.0"
version: '6.0'
zypperID: SL-Micro
cpeScheme: cpe:/o:suse:sl-micro:6.0
prettyName: SUSE Linux Micro 6.0
supportedArchs:
- "x86_64"
- "aarch64"
- x86_64
- aarch64
workloads:
helm:
- prettyName: Rancher
releaseName: rancher
chart: rancher
version: 2.10.3
version: 2.10.10
repository: https://charts.rancher.com/server-charts/prime
values:
postDelete:
@@ -105,47 +105,47 @@ spec:
repository: https://charts.rancher.io
- prettyName: MetalLB
releaseName: metallb
chart: %%CHART_REPO%%/%%IMG_PREFIX%%metallb-chart
version: %%CHART_MAJOR%%.0.1+up0.14.9
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%metallb-chart'
version: '%%CHART_MAJOR%%.0.1+up0.14.9'
- prettyName: CDI
releaseName: cdi
chart: %%CHART_REPO%%/%%IMG_PREFIX%%cdi-chart
version: %%CHART_MAJOR%%.0.0+up0.4.0
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%cdi-chart'
version: '%%CHART_MAJOR%%.0.0+up0.4.0'
- prettyName: KubeVirt
releaseName: kubevirt
chart: %%CHART_REPO%%/%%IMG_PREFIX%%kubevirt-chart
version: %%CHART_MAJOR%%.0.0+up0.4.0
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%kubevirt-chart'
version: '%%CHART_MAJOR%%.0.0+up0.4.0'
addonCharts:
- releaseName: kubevirt-dashboard-extension
chart: %%CHART_REPO%%/%%IMG_PREFIX%%kubevirt-dashboard-extension-chart
version: %%CHART_MAJOR%%.0.0+up1.2.1
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%kubevirt-dashboard-extension-chart'
version: '%%CHART_MAJOR%%.0.0+up1.2.1'
- prettyName: NeuVector
releaseName: neuvector
chart: neuvector
version: 105.0.1+up2.8.4
version: 105.0.5+up2.8.8
repository: https://charts.rancher.io
dependencyCharts:
- releaseName: neuvector-crd
chart: neuvector-crd
version: 105.0.1+up2.8.4
version: 105.0.5+up2.8.8
repository: https://charts.rancher.io
addonCharts:
- releaseName: neuvector-ui-ext
chart: neuvector-ui-ext
repository: https://github.com/rancher/ui-plugin-charts/raw/main
version: 2.0.1
version: 2.1.3
- prettyName: EndpointCopierOperator
releaseName: endpoint-copier-operator
chart: %%CHART_REPO%%/%%IMG_PREFIX%%endpoint-copier-operator-chart
version: %%CHART_MAJOR%%.0.0+up0.2.1
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%endpoint-copier-operator-chart'
version: '%%CHART_MAJOR%%.0.0+up0.2.1'
- prettyName: Elemental
releaseName: elemental-operator
chart: oci://registry.suse.com/rancher/elemental-operator-chart
version: 1.6.5
version: 1.7.3
dependencyCharts:
- releaseName: elemental-operator-crds
chart: oci://registry.suse.com/rancher/elemental-operator-crds-chart
version: 1.6.5
version: 1.7.3
addonCharts:
- releaseName: elemental
chart: elemental
@@ -153,25 +153,25 @@ spec:
version: 3.0.0
- prettyName: SRIOV
releaseName: sriov-network-operator
chart: %%CHART_REPO%%/%%IMG_PREFIX%%sriov-network-operator-chart
version: %%CHART_MAJOR%%.0.0+up1.4.0
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%sriov-network-operator-chart'
version: '%%CHART_MAJOR%%.0.0+up1.4.0'
dependencyCharts:
- releaseName: sriov-crd
chart: %%CHART_REPO%%/%%IMG_PREFIX%%sriov-crd-chart
version: %%CHART_MAJOR%%.0.0+up1.4.0
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%sriov-crd-chart'
version: '%%CHART_MAJOR%%.0.0+up1.4.0'
- prettyName: Akri
releaseName: akri
chart: %%CHART_REPO%%/%%IMG_PREFIX%%akri-chart
version: %%CHART_MAJOR%%.0.0+up0.12.20
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%akri-chart'
version: '%%CHART_MAJOR%%.0.0+up0.12.20'
addonCharts:
- releaseName: akri-dashboard-extension
chart: %%CHART_REPO%%/%%IMG_PREFIX%%akri-dashboard-extension-chart
version: %%CHART_MAJOR%%.0.0+up1.2.1
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%akri-dashboard-extension-chart'
version: '%%CHART_MAJOR%%.0.0+up1.2.1'
- prettyName: Metal3
releaseName: metal3
chart: %%CHART_REPO%%/%%IMG_PREFIX%%metal3-chart
version: %%CHART_MAJOR%%.0.1+up0.9.4
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%metal3-chart'
version: '%%CHART_MAJOR%%.0.1+up0.9.4'
- prettyName: RancherTurtles
releaseName: rancher-turtles
chart: %%CHART_REPO%%/%%IMG_PREFIX%%rancher-turtles-chart
version: %%CHART_MAJOR%%.0.0+up0.14.1
chart: '%%CHART_REPO%%/%%IMG_PREFIX%%rancher-turtles-chart'
version: '%%CHART_MAJOR%%.0.0+up0.14.1'