forked from suse-edge/Factory
		
	Compare commits
	
		
			2 Commits
		
	
	
		
			main
			...
			kube-rbac-
		
	
	| Author | SHA256 | Date | |
|---|---|---|---|
| 86065a61ae | |||
| e5da642203 | 
							
								
								
									
										24
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										24
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							| @@ -13,27 +13,3 @@ | |||||||
| [submodule "autoconf"] | [submodule "autoconf"] | ||||||
| 	path = autoconf | 	path = autoconf | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/autoconf.git | 	url = https://src.opensuse.org/SLFO-pool/autoconf.git | ||||||
| [submodule "python-pydantic"] |  | ||||||
| 	path = python-pydantic |  | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/python-pydantic |  | ||||||
| [submodule "python-pydantic-core"] |  | ||||||
| 	path = python-pydantic-core |  | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/python-pydantic-core |  | ||||||
| [submodule "python-inline-snapshot"] |  | ||||||
| 	path = python-inline-snapshot |  | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/python-inline-snapshot |  | ||||||
| [submodule "python-executing"] |  | ||||||
| 	path = python-executing |  | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/python-executing |  | ||||||
| [submodule "python-typing-inspection"] |  | ||||||
| 	path = python-typing-inspection |  | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/python-typing-inspection |  | ||||||
| [submodule "python-annotated-types"] |  | ||||||
| 	path = python-annotated-types |  | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/python-annotated-types |  | ||||||
| [submodule "python-typing_extensions"] |  | ||||||
| 	path = python-typing_extensions |  | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/python-typing_extensions |  | ||||||
| [submodule "python-flit-core"] |  | ||||||
| 	path = python-flit-core |  | ||||||
| 	url = https://src.opensuse.org/SLFO-pool/python-flit-core |  | ||||||
|   | |||||||
| @@ -3,7 +3,7 @@ repos: | |||||||
|     hooks: |     hooks: | ||||||
|       - id: check-manifest |       - id: check-manifest | ||||||
|         name: "Check release-manifest" |         name: "Check release-manifest" | ||||||
|         entry: python3 .obs/manifest-check.py |         entry: .obs/manifest-check.py | ||||||
|         language: python |         language: python | ||||||
|         additional_dependencies: ['ruamel.yaml'] |         additional_dependencies: ['ruamel.yaml'] | ||||||
|         pass_filenames: false |         pass_filenames: false | ||||||
|   | |||||||
							
								
								
									
										29
									
								
								_config
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								_config
									
									
									
									
									
								
							| @@ -1,5 +1,5 @@ | |||||||
| Prefer: -libqpid-proton10 -python311-urllib3_1 | Prefer: -libqpid-proton10 -python311-urllib3_1 | ||||||
| Prefer: -cargo1.58 -cargo1.57 cargo1.89 | Prefer: -cargo1.58 -cargo1.57 cargo1.88 | ||||||
|  |  | ||||||
| Macros: | Macros: | ||||||
| %__python3 /usr/bin/python3.11 | %__python3 /usr/bin/python3.11 | ||||||
| @@ -50,15 +50,6 @@ Macros: | |||||||
| BuildFlags: excludebuild:autoconf:el | BuildFlags: excludebuild:autoconf:el | ||||||
| BuildFlags: excludebuild:autoconf:testsuite | BuildFlags: excludebuild:autoconf:testsuite | ||||||
|  |  | ||||||
| # Missing deps for python packages related to suse-edge-components-versions |  | ||||||
| BuildFlags: excludebuild:python-pydantic:test |  | ||||||
| BuildFlags: excludebuild:python-pydantic-core:test |  | ||||||
| BuildFlags: excludebuild:python-inline-snapshot:test |  | ||||||
| BuildFlags: excludebuild:python-executing:test |  | ||||||
| BuildFlags: excludebuild:python-annotated-types:test |  | ||||||
| BuildFlags: excludebuild:python-typing-inspection:test |  | ||||||
| BuildFlags: excludebuild:python-typing_extensions:test |  | ||||||
|  |  | ||||||
| # Only build manifest embedding images here | # Only build manifest embedding images here | ||||||
| %if "%_repository" == "test_manifest_images" | %if "%_repository" == "test_manifest_images" | ||||||
| BuildFlags: onlybuild:edge-image-builder-image | BuildFlags: onlybuild:edge-image-builder-image | ||||||
| @@ -75,8 +66,6 @@ BuildFlags: onlybuild:release-manifest-image | |||||||
|     BuildFlags: excludebuild:kube-rbac-proxy-image |     BuildFlags: excludebuild:kube-rbac-proxy-image | ||||||
|     BuildFlags: excludebuild:metallb-controller-image |     BuildFlags: excludebuild:metallb-controller-image | ||||||
|     BuildFlags: excludebuild:metallb-speaker-image |     BuildFlags: excludebuild:metallb-speaker-image | ||||||
|     BuildFlags: excludebuild:nessie-image |  | ||||||
|     BuildFlags: excludebuild:suse-edge-components-versions-image |  | ||||||
|   %endif |   %endif | ||||||
| %else | %else | ||||||
| # Only a subset of stack is arm64 ready | # Only a subset of stack is arm64 ready | ||||||
| @@ -105,22 +94,8 @@ BuildFlags: onlybuild:release-manifest-image | |||||||
|     BuildFlags: onlybuild:metallb |     BuildFlags: onlybuild:metallb | ||||||
|     BuildFlags: onlybuild:metallb-controller-image |     BuildFlags: onlybuild:metallb-controller-image | ||||||
|     BuildFlags: onlybuild:metallb-speaker-image |     BuildFlags: onlybuild:metallb-speaker-image | ||||||
|     BuildFlags: onlybuild:nessie |  | ||||||
|     BuildFlags: onlybuild:nessie-image |  | ||||||
|     BuildFlags: onlybuild:nm-configurator |     BuildFlags: onlybuild:nm-configurator | ||||||
|     BuildFlags: onlybuild:python-annotated-types |  | ||||||
|     BuildFlags: onlybuild:python-executing |  | ||||||
|     BuildFlags: onlybuild:python-flit-core |  | ||||||
|     BuildFlags: onlybuild:python-inline-snapshot |  | ||||||
|     BuildFlags: onlybuild:python-pydantic |  | ||||||
|     BuildFlags: onlybuild:python-pydantic-core |  | ||||||
|     BuildFlags: onlybuild:python-pyhelm3 |  | ||||||
|     BuildFlags: onlybuild:python-rich |  | ||||||
|     BuildFlags: onlybuild:python-suse-edge-components-versions |  | ||||||
|     BuildFlags: onlybuild:python-typing-inspection |  | ||||||
|     BuildFlags: onlybuild:python-typing_extensions |  | ||||||
|     BuildFlags: onlybuild:shim-noarch |     BuildFlags: onlybuild:shim-noarch | ||||||
|     BuildFlags: onlybuild:suse-edge-components-versions-image |  | ||||||
|   %endif |   %endif | ||||||
| %endif | %endif | ||||||
|  |  | ||||||
| @@ -171,8 +146,6 @@ BuildFlags: onlybuild:release-manifest-image | |||||||
|       BuildFlags: excludebuild:kube-rbac-proxy-image |       BuildFlags: excludebuild:kube-rbac-proxy-image | ||||||
|       BuildFlags: excludebuild:metallb-controller-image |       BuildFlags: excludebuild:metallb-controller-image | ||||||
|       BuildFlags: excludebuild:metallb-speaker-image |       BuildFlags: excludebuild:metallb-speaker-image | ||||||
|       BuildFlags: excludebuild:nessie-image |  | ||||||
|       BuildFlags: excludebuild:suse-edge-components-versions-image |  | ||||||
|     %endif |     %endif | ||||||
|  |  | ||||||
| %else | %else | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| #!BuildTag: %%CHART_PREFIX%%akri-dashboard-extension:%%CHART_MAJOR%%.0.3_up1.3.1 | #!BuildTag: %%CHART_PREFIX%%akri-dashboard-extension:%%CHART_MAJOR%%.0.2_up1.3.1 | ||||||
| #!BuildTag: %%CHART_PREFIX%%akri-dashboard-extension:%%CHART_MAJOR%%.0.3_up1.3.1-%RELEASE% | #!BuildTag: %%CHART_PREFIX%%akri-dashboard-extension:%%CHART_MAJOR%%.0.2_up1.3.1-%RELEASE% | ||||||
| annotations: | annotations: | ||||||
|   catalog.cattle.io/certified: rancher |   catalog.cattle.io/certified: rancher | ||||||
|   catalog.cattle.io/namespace: cattle-ui-plugin-system |   catalog.cattle.io/namespace: cattle-ui-plugin-system | ||||||
| @@ -12,10 +12,10 @@ annotations: | |||||||
|   catalog.cattle.io/ui-extensions-version: '>= 3.0.2 < 4.0.0' |   catalog.cattle.io/ui-extensions-version: '>= 3.0.2 < 4.0.0' | ||||||
|   catalog.cattle.io/kube-version: '>= v1.26.0-0' |   catalog.cattle.io/kube-version: '>= v1.26.0-0' | ||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: 304.0.3+up1.3.1 | appVersion: 303.0.2+up1.3.1 | ||||||
| description: 'SUSE Edge: Akri extension for Rancher Dashboard' | description: 'SUSE Edge: Akri extension for Rancher Dashboard' | ||||||
| name: akri-dashboard-extension | name: akri-dashboard-extension | ||||||
| type: application | type: application | ||||||
| version: "%%CHART_MAJOR%%.0.3+up1.3.1" | version: "%%CHART_MAJOR%%.0.2+up1.3.1" | ||||||
| icon: >- | icon: >- | ||||||
|   https://raw.githubusercontent.com/cncf/artwork/main/projects/akri/icon/color/akri-icon-color.svg |   https://raw.githubusercontent.com/cncf/artwork/main/projects/akri/icon/color/akri-icon-color.svg | ||||||
|   | |||||||
| @@ -8,7 +8,7 @@ spec: | |||||||
|   plugin: |   plugin: | ||||||
|     name: {{ include "extension-server.fullname" . }} |     name: {{ include "extension-server.fullname" . }} | ||||||
|     version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }} |     version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }} | ||||||
|     endpoint: https://raw.githubusercontent.com/suse-edge/dashboard-extensions/gh-pages/extensions/akri-dashboard-extension/304.0.3+up1.3.1 |     endpoint: https://raw.githubusercontent.com/suse-edge/dashboard-extensions/gh-pages/extensions/akri-dashboard-extension/303.0.2+up1.3.1 | ||||||
|     noCache: {{ .Values.plugin.noCache }} |     noCache: {{ .Values.plugin.noCache }} | ||||||
|     noAuth: {{ .Values.plugin.noAuth }} |     noAuth: {{ .Values.plugin.noAuth }} | ||||||
|     metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }} |     metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }} | ||||||
|   | |||||||
| @@ -1,163 +0,0 @@ | |||||||
| From f8c1ba1696fd8555e8e94246ec5afa38536fa8bd Mon Sep 17 00:00:00 2001 |  | ||||||
| From: erjavaskivuori <erja.vaskivuori@est.tech> |  | ||||||
| Date: Thu, 5 Jun 2025 09:49:47 +0000 |  | ||||||
| Subject: [PATCH 1/5] Enable exhaustive linter |  | ||||||
|  |  | ||||||
| Enable exhaustive linter to check exhaustiveness of switch statements of enum-like |  | ||||||
| constants. |  | ||||||
|  |  | ||||||
| Signed-off-by: erjavaskivuori <erja.vaskivuori@est.tech> |  | ||||||
| (cherry picked from commit a5a81b8717c9e6642ae626ea97933e3615fe11c0) |  | ||||||
| --- |  | ||||||
|  .golangci.yaml                                |  4 ++- |  | ||||||
|  .../metal3.io/v1alpha1/baremetalhost_types.go |  1 + |  | ||||||
|  .../metal3.io/baremetalhost_controller.go     |  2 ++ |  | ||||||
|  .../metal3.io/host_state_machine.go           |  4 +++ |  | ||||||
|  pkg/provisioner/ironic/ironic.go              | 26 +++++++++---------- |  | ||||||
|  5 files changed, 22 insertions(+), 15 deletions(-) |  | ||||||
|  |  | ||||||
| diff --git a/.golangci.yaml b/.golangci.yaml |  | ||||||
| index 58e54b31..c758b93c 100644 |  | ||||||
| --- a/.golangci.yaml |  | ||||||
| +++ b/.golangci.yaml |  | ||||||
| @@ -21,7 +21,7 @@ linters: |  | ||||||
|    - errchkjson |  | ||||||
|    #- errname |  | ||||||
|    #- errorlint |  | ||||||
| -  #- exhaustive |  | ||||||
| +  - exhaustive |  | ||||||
|    - exptostd |  | ||||||
|    - fatcontext |  | ||||||
|    #- forbidigo |  | ||||||
| @@ -78,6 +78,8 @@ linters: |  | ||||||
|    # Run with --fast=false for more extensive checks |  | ||||||
|    fast: true |  | ||||||
|  linters-settings: |  | ||||||
| +  exhaustive: |  | ||||||
| +    default-signifies-exhaustive: true |  | ||||||
|    gosec: |  | ||||||
|      severity: medium |  | ||||||
|      confidence: medium |  | ||||||
| diff --git a/apis/metal3.io/v1alpha1/baremetalhost_types.go b/apis/metal3.io/v1alpha1/baremetalhost_types.go |  | ||||||
| index ba1b4333..426a7a89 100644 |  | ||||||
| --- a/apis/metal3.io/v1alpha1/baremetalhost_types.go |  | ||||||
| +++ b/apis/metal3.io/v1alpha1/baremetalhost_types.go |  | ||||||
| @@ -1113,6 +1113,7 @@ func (host *BareMetalHost) OperationMetricForState(operation ProvisioningState) |  | ||||||
|  		metric = &history.Provision |  | ||||||
|  	case StateDeprovisioning: |  | ||||||
|  		metric = &history.Deprovision |  | ||||||
| +	default: |  | ||||||
|  	} |  | ||||||
|  	return |  | ||||||
|  } |  | ||||||
| diff --git a/internal/controller/metal3.io/baremetalhost_controller.go b/internal/controller/metal3.io/baremetalhost_controller.go |  | ||||||
| index 33310bf7..1998627e 100644 |  | ||||||
| --- a/internal/controller/metal3.io/baremetalhost_controller.go |  | ||||||
| +++ b/internal/controller/metal3.io/baremetalhost_controller.go |  | ||||||
| @@ -586,6 +586,7 @@ func getCurrentImage(host *metal3api.BareMetalHost) *metal3api.Image { |  | ||||||
|  		if host.Spec.Image != nil && host.Spec.Image.URL != "" { |  | ||||||
|  			return host.Spec.Image.DeepCopy() |  | ||||||
|  		} |  | ||||||
| +	default: |  | ||||||
|  	} |  | ||||||
|  	return nil |  | ||||||
|  } |  | ||||||
| @@ -816,6 +817,7 @@ func (r *BareMetalHostReconciler) registerHost(prov provisioner.Provisioner, inf |  | ||||||
|  		if info.host.Spec.AutomatedCleaningMode == metal3api.CleaningModeDisabled { |  | ||||||
|  			preprovImgFormats = nil |  | ||||||
|  		} |  | ||||||
| +	default: |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
|  	preprovImg, err := r.getPreprovImage(info, preprovImgFormats) |  | ||||||
| diff --git a/internal/controller/metal3.io/host_state_machine.go b/internal/controller/metal3.io/host_state_machine.go |  | ||||||
| index 8b382553..6d88591b 100644 |  | ||||||
| --- a/internal/controller/metal3.io/host_state_machine.go |  | ||||||
| +++ b/internal/controller/metal3.io/host_state_machine.go |  | ||||||
| @@ -107,6 +107,7 @@ func (hsm *hostStateMachine) updateHostStateFrom(initialState metal3api.Provisio |  | ||||||
|  			if actionRes := hsm.ensureCapacity(info, hsm.NextState); actionRes != nil { |  | ||||||
|  				return actionRes |  | ||||||
|  			} |  | ||||||
| +		default: |  | ||||||
|  		} |  | ||||||
|   |  | ||||||
|  		info.log.Info("changing provisioning state", |  | ||||||
| @@ -137,6 +138,7 @@ func (hsm *hostStateMachine) updateHostStateFrom(initialState metal3api.Provisio |  | ||||||
|  				info.log.Info("saving boot mode", |  | ||||||
|  					"new mode", hsm.Host.Status.Provisioning.BootMode) |  | ||||||
|  			} |  | ||||||
| +		default: |  | ||||||
|  		} |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
| @@ -163,6 +165,7 @@ func (hsm *hostStateMachine) checkDelayedHost(info *reconcileInfo) actionResult |  | ||||||
|  		if actionRes := hsm.ensureCapacity(info, info.host.Status.Provisioning.State); actionRes != nil { |  | ||||||
|  			return actionRes |  | ||||||
|  		} |  | ||||||
| +	default: |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
|  	return nil |  | ||||||
| @@ -299,6 +302,7 @@ func (hsm *hostStateMachine) checkDetachedHost(info *reconcileInfo) (result acti |  | ||||||
|  		switch info.host.Status.Provisioning.State { |  | ||||||
|  		case metal3api.StateProvisioned, metal3api.StateExternallyProvisioned, metal3api.StateReady, metal3api.StateAvailable: |  | ||||||
|  			return hsm.Reconciler.detachHost(hsm.Provisioner, info) |  | ||||||
| +		default: |  | ||||||
|  		} |  | ||||||
|  	} |  | ||||||
|  	if info.host.Status.ErrorType == metal3api.DetachError { |  | ||||||
| diff --git a/pkg/provisioner/ironic/ironic.go b/pkg/provisioner/ironic/ironic.go |  | ||||||
| index 9a4b4589..4c4923ad 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/ironic.go |  | ||||||
| +++ b/pkg/provisioner/ironic/ironic.go |  | ||||||
| @@ -335,21 +335,17 @@ func (p *ironicProvisioner) configureImages(data provisioner.ManagementAccessDat |  | ||||||
|  		return result, err |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
| +	if data.State == metal3api.StateProvisioning && data.CurrentImage.IsLiveISO() { |  | ||||||
| +		// Live ISO doesn't need pre-provisioning image |  | ||||||
| +		return result, nil |  | ||||||
| +	} |  | ||||||
| + |  | ||||||
| +	if data.State == metal3api.StateDeprovisioning && data.AutomatedCleaningMode == metal3api.CleaningModeDisabled { |  | ||||||
| +		// No need for pre-provisioning image if cleaning disabled |  | ||||||
| +		return result, nil |  | ||||||
| +	} |  | ||||||
| + |  | ||||||
|  	switch data.State { |  | ||||||
| -	case metal3api.StateProvisioning, |  | ||||||
| -		metal3api.StateDeprovisioning: |  | ||||||
| -		if data.State == metal3api.StateProvisioning { |  | ||||||
| -			if data.CurrentImage.IsLiveISO() { |  | ||||||
| -				// Live ISO doesn't need pre-provisioning image |  | ||||||
| -				return result, nil |  | ||||||
| -			} |  | ||||||
| -		} else { |  | ||||||
| -			if data.AutomatedCleaningMode == metal3api.CleaningModeDisabled { |  | ||||||
| -				// No need for pre-provisioning image if cleaning disabled |  | ||||||
| -				return result, nil |  | ||||||
| -			} |  | ||||||
| -		} |  | ||||||
| -		fallthrough |  | ||||||
|  	case metal3api.StateInspecting, |  | ||||||
|  		metal3api.StatePreparing: |  | ||||||
|  		if deployImageInfo == nil { |  | ||||||
| @@ -360,6 +356,7 @@ func (p *ironicProvisioner) configureImages(data provisioner.ManagementAccessDat |  | ||||||
|  			} |  | ||||||
|  			return result, err |  | ||||||
|  		} |  | ||||||
| +	default: |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
|  	return result, nil |  | ||||||
| @@ -1724,6 +1721,7 @@ func (p *ironicProvisioner) loadBusyHosts() (hosts map[string]struct{}, err erro |  | ||||||
|  			if !strings.Contains(node.BootInterface, "virtual-media") { |  | ||||||
|  				hosts[node.Name] = struct{}{} |  | ||||||
|  			} |  | ||||||
| +		default: |  | ||||||
|  		} |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
| --  |  | ||||||
| 2.50.1 |  | ||||||
|  |  | ||||||
| @@ -1,91 +0,0 @@ | |||||||
| From 509ba92a8ed7303a418c5277f7544db2765c3802 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Dmitry Tantsur <dtantsur@protonmail.com> |  | ||||||
| Date: Wed, 2 Jul 2025 17:33:46 +0200 |  | ||||||
| Subject: [PATCH 2/5] Stop requiring DEPLOY_KERNEL/RAMDISK |  | ||||||
|  |  | ||||||
| Ironic has global configuration that allows specifying them, even |  | ||||||
| depending on the architecture. Our ironic-image supports that when |  | ||||||
| IPA downloader is used (and should start supporting explicit variables |  | ||||||
| too). |  | ||||||
|  |  | ||||||
| Signed-off-by: Dmitry Tantsur <dtantsur@protonmail.com> |  | ||||||
| (cherry picked from commit 0f1ef6cbeb8815f19d853ba5eab1e70c7d85e2ec) |  | ||||||
| --- |  | ||||||
|  pkg/provisioner/ironic/factory.go      |  6 ++---- |  | ||||||
|  pkg/provisioner/ironic/factory_test.go |  9 ++------- |  | ||||||
|  pkg/provisioner/ironic/ironic.go       | 10 +++------- |  | ||||||
|  3 files changed, 7 insertions(+), 18 deletions(-) |  | ||||||
|  |  | ||||||
| diff --git a/pkg/provisioner/ironic/factory.go b/pkg/provisioner/ironic/factory.go |  | ||||||
| index 19571eb0..15f636b3 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/factory.go |  | ||||||
| +++ b/pkg/provisioner/ironic/factory.go |  | ||||||
| @@ -114,10 +114,8 @@ func loadConfigFromEnv(havePreprovImgBuilder bool) (ironicConfig, error) { |  | ||||||
|  	c.deployRamdiskURL = os.Getenv("DEPLOY_RAMDISK_URL") |  | ||||||
|  	c.deployISOURL = os.Getenv("DEPLOY_ISO_URL") |  | ||||||
|  	if !havePreprovImgBuilder { |  | ||||||
| -		if c.deployISOURL == "" && |  | ||||||
| -			(c.deployKernelURL == "" || c.deployRamdiskURL == "") { |  | ||||||
| -			return c, errors.New("either DEPLOY_KERNEL_URL and DEPLOY_RAMDISK_URL or DEPLOY_ISO_URL must be set") |  | ||||||
| -		} |  | ||||||
| +		// NOTE(dtantsur): with a PreprovisioningImage controller, it makes sense to set only the kernel. |  | ||||||
| +		// Without it, either both or neither must be set. |  | ||||||
|  		if (c.deployKernelURL == "" && c.deployRamdiskURL != "") || |  | ||||||
|  			(c.deployKernelURL != "" && c.deployRamdiskURL == "") { |  | ||||||
|  			return c, errors.New("DEPLOY_KERNEL_URL and DEPLOY_RAMDISK_URL can only be set together") |  | ||||||
| diff --git a/pkg/provisioner/ironic/factory_test.go b/pkg/provisioner/ironic/factory_test.go |  | ||||||
| index db47d8b2..0d32eccb 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/factory_test.go |  | ||||||
| +++ b/pkg/provisioner/ironic/factory_test.go |  | ||||||
| @@ -98,24 +98,19 @@ func TestLoadConfigFromEnv(t *testing.T) { |  | ||||||
|  				ramdiskURL: "http://ramdisk", |  | ||||||
|  			}, |  | ||||||
|  		}, |  | ||||||
| -		{ |  | ||||||
| -			name:          "no deploy info", |  | ||||||
| -			env:           EnvFixture{}, |  | ||||||
| -			expectedError: "either DEPLOY_KERNEL_URL and DEPLOY_RAMDISK_URL or DEPLOY_ISO_URL must be set", |  | ||||||
| -		}, |  | ||||||
|  		{ |  | ||||||
|  			name: "only kernel", |  | ||||||
|  			env: EnvFixture{ |  | ||||||
|  				kernelURL: "http://kernel", |  | ||||||
|  			}, |  | ||||||
| -			expectedError: "either DEPLOY_KERNEL_URL and DEPLOY_RAMDISK_URL or DEPLOY_ISO_URL must be set", |  | ||||||
| +			expectedError: "DEPLOY_KERNEL_URL and DEPLOY_RAMDISK_URL can only be set together", |  | ||||||
|  		}, |  | ||||||
|  		{ |  | ||||||
|  			name: "only ramdisk", |  | ||||||
|  			env: EnvFixture{ |  | ||||||
|  				ramdiskURL: "http://ramdisk", |  | ||||||
|  			}, |  | ||||||
| -			expectedError:         "either DEPLOY_KERNEL_URL and DEPLOY_RAMDISK_URL or DEPLOY_ISO_URL must be set", |  | ||||||
| +			expectedError:         "DEPLOY_KERNEL_URL and DEPLOY_RAMDISK_URL can only be set together", |  | ||||||
|  			expectedImgBuildError: "DEPLOY_RAMDISK_URL requires DEPLOY_KERNEL_URL to be set also", |  | ||||||
|  		}, |  | ||||||
|  		{ |  | ||||||
| diff --git a/pkg/provisioner/ironic/ironic.go b/pkg/provisioner/ironic/ironic.go |  | ||||||
| index 4c4923ad..48db865a 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/ironic.go |  | ||||||
| +++ b/pkg/provisioner/ironic/ironic.go |  | ||||||
| @@ -348,14 +348,10 @@ func (p *ironicProvisioner) configureImages(data provisioner.ManagementAccessDat |  | ||||||
|  	switch data.State { |  | ||||||
|  	case metal3api.StateInspecting, |  | ||||||
|  		metal3api.StatePreparing: |  | ||||||
| -		if deployImageInfo == nil { |  | ||||||
| -			if p.config.havePreprovImgBuilder { |  | ||||||
| -				result, err = transientError(provisioner.ErrNeedsPreprovisioningImage) |  | ||||||
| -			} else { |  | ||||||
| -				result, err = operationFailed("no preprovisioning image available") |  | ||||||
| -			} |  | ||||||
| -			return result, err |  | ||||||
| +		if deployImageInfo == nil && p.config.havePreprovImgBuilder { |  | ||||||
| +			result, err = transientError(provisioner.ErrNeedsPreprovisioningImage) |  | ||||||
|  		} |  | ||||||
| +		return result, err |  | ||||||
|  	default: |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
| --  |  | ||||||
| 2.50.1 |  | ||||||
|  |  | ||||||
| @@ -1,49 +0,0 @@ | |||||||
| From ea10df866f0fc491cac15ba5005f3b820e1ccecb Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Dmitry Tantsur <dtantsur@protonmail.com> |  | ||||||
| Date: Wed, 2 Jul 2025 17:55:48 +0200 |  | ||||||
| Subject: [PATCH 3/5] Remove DEPLOY_KERNEL_URL from deployment scripts for main |  | ||||||
|  |  | ||||||
| Signed-off-by: Dmitry Tantsur <dtantsur@protonmail.com> |  | ||||||
| (cherry picked from commit ddcf3d915819b6344f79fbcec3e28250b217a597) |  | ||||||
| --- |  | ||||||
|  config/default/ironic.env      | 2 -- |  | ||||||
|  config/overlays/e2e/ironic.env | 2 -- |  | ||||||
|  config/render/capm3.yaml       | 2 -- |  | ||||||
|  3 files changed, 6 deletions(-) |  | ||||||
|  |  | ||||||
| diff --git a/config/default/ironic.env b/config/default/ironic.env |  | ||||||
| index e72cb3c3..3fe36d25 100644 |  | ||||||
| --- a/config/default/ironic.env |  | ||||||
| +++ b/config/default/ironic.env |  | ||||||
| @@ -1,7 +1,5 @@ |  | ||||||
|  HTTP_PORT=6180 |  | ||||||
|  PROVISIONING_INTERFACE=eth2 |  | ||||||
|  DHCP_RANGE=172.22.0.10,172.22.0.100 |  | ||||||
| -DEPLOY_KERNEL_URL=http://172.22.0.2:6180/images/ironic-python-agent.kernel |  | ||||||
| -DEPLOY_RAMDISK_URL=http://172.22.0.2:6180/images/ironic-python-agent.initramfs |  | ||||||
|  IRONIC_ENDPOINT=http://172.22.0.2:6385/v1/ |  | ||||||
|  CACHEURL=http://172.22.0.1/images |  | ||||||
| diff --git a/config/overlays/e2e/ironic.env b/config/overlays/e2e/ironic.env |  | ||||||
| index 44147ae0..6f200720 100644 |  | ||||||
| --- a/config/overlays/e2e/ironic.env |  | ||||||
| +++ b/config/overlays/e2e/ironic.env |  | ||||||
| @@ -1,3 +1 @@ |  | ||||||
| -DEPLOY_KERNEL_URL=http://192.168.222.1:6180/images/ironic-python-agent.kernel |  | ||||||
| -DEPLOY_RAMDISK_URL=http://192.168.222.1:6180/images/ironic-python-agent.initramfs |  | ||||||
|  IRONIC_ENDPOINT=https://192.168.222.1:6385/v1/ |  | ||||||
| diff --git a/config/render/capm3.yaml b/config/render/capm3.yaml |  | ||||||
| index 42283193..7568288f 100644 |  | ||||||
| --- a/config/render/capm3.yaml |  | ||||||
| +++ b/config/render/capm3.yaml |  | ||||||
| @@ -2510,8 +2510,6 @@ subjects: |  | ||||||
|  apiVersion: v1 |  | ||||||
|  data: |  | ||||||
|    CACHEURL: http://172.22.0.1/images |  | ||||||
| -  DEPLOY_KERNEL_URL: http://172.22.0.2:6180/images/ironic-python-agent.kernel |  | ||||||
| -  DEPLOY_RAMDISK_URL: http://172.22.0.2:6180/images/ironic-python-agent.initramfs |  | ||||||
|    DHCP_RANGE: 172.22.0.10,172.22.0.100 |  | ||||||
|    HTTP_PORT: "6180" |  | ||||||
|    IRONIC_ENDPOINT: http://172.22.0.2:6385/v1/ |  | ||||||
| --  |  | ||||||
| 2.50.1 |  | ||||||
|  |  | ||||||
| @@ -1,422 +0,0 @@ | |||||||
| From b2e8a1a42c95a3338c9c83a4781ba4744da5ff6a Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Dmitry Tantsur <dtantsur@protonmail.com> |  | ||||||
| Date: Tue, 24 Jun 2025 18:53:42 +0200 |  | ||||||
| Subject: [PATCH 4/5] Refactor setting various Ironic properties |  | ||||||
|  |  | ||||||
| Currently, Ironic instance_info and properties fields are populated at |  | ||||||
| random either in most states or before deployment. While potentially |  | ||||||
| convenient, it makes it very hard to reason about the code. |  | ||||||
|  |  | ||||||
| Now, the logic is split into two parts: |  | ||||||
| 1. configureNode (renamed from configureImages) writes fields that are |  | ||||||
|    considered properties of the node itself: CPU architecture, deploy |  | ||||||
|    images, capabilities, etc. |  | ||||||
| 2. getInstanceUpdateOpts (merge of getImageUpdateOptsForNode and |  | ||||||
|    getUpdateOptsForNode) writes fields that are required for deployment |  | ||||||
|    and thus are properties of instance. This includes images, checksums, |  | ||||||
|    runtime capabilities. As an exception, root device hints fall under |  | ||||||
|    this category and thus are now set in instance_info, not properties. |  | ||||||
|  |  | ||||||
| Signed-off-by: Dmitry Tantsur <dtantsur@protonmail.com> |  | ||||||
| (cherry picked from commit 0c70cba38c926c474f4fa129a7e99ef9827d6ce9) |  | ||||||
| --- |  | ||||||
|  .../metal3.io/baremetalhost_controller.go     |  2 +- |  | ||||||
|  pkg/provisioner/ironic/ironic.go              | 49 +++++------- |  | ||||||
|  pkg/provisioner/ironic/provision_test.go      | 27 +++---- |  | ||||||
|  pkg/provisioner/ironic/register.go            |  3 +- |  | ||||||
|  pkg/provisioner/ironic/register_test.go       | 78 +------------------ |  | ||||||
|  pkg/provisioner/provisioner.go                |  2 +- |  | ||||||
|  6 files changed, 40 insertions(+), 121 deletions(-) |  | ||||||
|  |  | ||||||
| diff --git a/internal/controller/metal3.io/baremetalhost_controller.go b/internal/controller/metal3.io/baremetalhost_controller.go |  | ||||||
| index 1998627e..0d0c9562 100644 |  | ||||||
| --- a/internal/controller/metal3.io/baremetalhost_controller.go |  | ||||||
| +++ b/internal/controller/metal3.io/baremetalhost_controller.go |  | ||||||
| @@ -848,6 +848,7 @@ func (r *BareMetalHostReconciler) registerHost(prov provisioner.Provisioner, inf |  | ||||||
|  			PreprovisioningNetworkData: preprovisioningNetworkData, |  | ||||||
|  			HasCustomDeploy:            hasCustomDeploy(info.host), |  | ||||||
|  			DisablePowerOff:            info.host.Spec.DisablePowerOff, |  | ||||||
| +			CPUArchitecture:            getHostArchitecture(info.host), |  | ||||||
|  		}, |  | ||||||
|  		credsChanged, |  | ||||||
|  		info.host.Status.ErrorType == metal3api.RegistrationError) |  | ||||||
| @@ -1271,7 +1272,6 @@ func (r *BareMetalHostReconciler) actionProvisioning(prov provisioner.Provisione |  | ||||||
|  		BootMode:        info.host.Status.Provisioning.BootMode, |  | ||||||
|  		HardwareProfile: hwProf, |  | ||||||
|  		RootDeviceHints: info.host.Status.Provisioning.RootDeviceHints.DeepCopy(), |  | ||||||
| -		CPUArchitecture: getHostArchitecture(info.host), |  | ||||||
|  	}, forceReboot) |  | ||||||
|  	if err != nil { |  | ||||||
|  		return actionError{errors.Wrap(err, "failed to provision")} |  | ||||||
| diff --git a/pkg/provisioner/ironic/ironic.go b/pkg/provisioner/ironic/ironic.go |  | ||||||
| index 48db865a..b8e6d72b 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/ironic.go |  | ||||||
| +++ b/pkg/provisioner/ironic/ironic.go |  | ||||||
| @@ -311,20 +311,24 @@ func (p *ironicProvisioner) createPXEEnabledNodePort(uuid, macAddress string) er |  | ||||||
|  	return nil |  | ||||||
|  } |  | ||||||
|   |  | ||||||
| -func (p *ironicProvisioner) configureImages(data provisioner.ManagementAccessData, ironicNode *nodes.Node, bmcAccess bmc.AccessDetails) (result provisioner.Result, err error) { |  | ||||||
| +func (p *ironicProvisioner) configureNode(data provisioner.ManagementAccessData, ironicNode *nodes.Node, bmcAccess bmc.AccessDetails) (result provisioner.Result, err error) { |  | ||||||
|  	updater := clients.UpdateOptsBuilder(p.log) |  | ||||||
|   |  | ||||||
|  	deployImageInfo := setDeployImage(p.config, bmcAccess, data.PreprovisioningImage) |  | ||||||
|  	updater.SetDriverInfoOpts(deployImageInfo, ironicNode) |  | ||||||
|   |  | ||||||
| -	// NOTE(dtantsur): It is risky to update image information for active nodes since it may affect the ability to clean up. |  | ||||||
| -	if (data.CurrentImage != nil || data.HasCustomDeploy) && ironicNode.ProvisionState != string(nodes.Active) { |  | ||||||
| -		p.getImageUpdateOptsForNode(ironicNode, data.CurrentImage, data.BootMode, data.HasCustomDeploy, updater) |  | ||||||
| -	} |  | ||||||
|  	updater.SetTopLevelOpt("automated_clean", |  | ||||||
|  		data.AutomatedCleaningMode != metal3api.CleaningModeDisabled, |  | ||||||
|  		ironicNode.AutomatedClean) |  | ||||||
|   |  | ||||||
| +	opts := clients.UpdateOptsData{ |  | ||||||
| +		"capabilities": buildCapabilitiesValue(ironicNode, data.BootMode), |  | ||||||
| +	} |  | ||||||
| +	if data.CPUArchitecture != "" { |  | ||||||
| +		opts["cpu_arch"] = data.CPUArchitecture |  | ||||||
| +	} |  | ||||||
| +	updater.SetPropertiesOpts(opts, ironicNode) |  | ||||||
| + |  | ||||||
|  	_, success, result, err := p.tryUpdateNode(ironicNode, updater) |  | ||||||
|  	if !success { |  | ||||||
|  		return result, err |  | ||||||
| @@ -656,40 +660,29 @@ func (p *ironicProvisioner) setCustomDeployUpdateOptsForNode(ironicNode *nodes.N |  | ||||||
|  		SetTopLevelOpt("deploy_interface", "custom-agent", ironicNode.DeployInterface) |  | ||||||
|  } |  | ||||||
|   |  | ||||||
| -func (p *ironicProvisioner) getImageUpdateOptsForNode(ironicNode *nodes.Node, imageData *metal3api.Image, bootMode metal3api.BootMode, hasCustomDeploy bool, updater *clients.NodeUpdater) { |  | ||||||
| +func (p *ironicProvisioner) getInstanceUpdateOpts(ironicNode *nodes.Node, data provisioner.ProvisionData) *clients.NodeUpdater { |  | ||||||
| +	updater := clients.UpdateOptsBuilder(p.log) |  | ||||||
| + |  | ||||||
| +	hasCustomDeploy := data.CustomDeploy != nil && data.CustomDeploy.Method != "" |  | ||||||
| + |  | ||||||
|  	// instance_uuid |  | ||||||
|  	updater.SetTopLevelOpt("instance_uuid", string(p.objectMeta.UID), ironicNode.InstanceUUID) |  | ||||||
|   |  | ||||||
|  	updater.SetInstanceInfoOpts(clients.UpdateOptsData{ |  | ||||||
| -		"capabilities": buildInstanceInfoCapabilities(bootMode), |  | ||||||
| +		"capabilities": buildInstanceInfoCapabilities(data.BootMode), |  | ||||||
| +		"root_device":  devicehints.MakeHintMap(data.RootDeviceHints), |  | ||||||
|  	}, ironicNode) |  | ||||||
|   |  | ||||||
|  	if hasCustomDeploy { |  | ||||||
|  		// Custom deploy process |  | ||||||
| -		p.setCustomDeployUpdateOptsForNode(ironicNode, imageData, updater) |  | ||||||
| -	} else if imageData.IsLiveISO() { |  | ||||||
| +		p.setCustomDeployUpdateOptsForNode(ironicNode, &data.Image, updater) |  | ||||||
| +	} else if data.Image.IsLiveISO() { |  | ||||||
|  		// Set live-iso format options |  | ||||||
| -		p.setLiveIsoUpdateOptsForNode(ironicNode, imageData, updater) |  | ||||||
| +		p.setLiveIsoUpdateOptsForNode(ironicNode, &data.Image, updater) |  | ||||||
|  	} else { |  | ||||||
|  		// Set deploy_interface direct options when not booting a live-iso |  | ||||||
| -		p.setDirectDeployUpdateOptsForNode(ironicNode, imageData, updater) |  | ||||||
| +		p.setDirectDeployUpdateOptsForNode(ironicNode, &data.Image, updater) |  | ||||||
|  	} |  | ||||||
| -} |  | ||||||
| - |  | ||||||
| -func (p *ironicProvisioner) getUpdateOptsForNode(ironicNode *nodes.Node, data provisioner.ProvisionData) *clients.NodeUpdater { |  | ||||||
| -	updater := clients.UpdateOptsBuilder(p.log) |  | ||||||
| - |  | ||||||
| -	hasCustomDeploy := data.CustomDeploy != nil && data.CustomDeploy.Method != "" |  | ||||||
| -	p.getImageUpdateOptsForNode(ironicNode, &data.Image, data.BootMode, hasCustomDeploy, updater) |  | ||||||
| - |  | ||||||
| -	opts := clients.UpdateOptsData{ |  | ||||||
| -		"root_device":  devicehints.MakeHintMap(data.RootDeviceHints), |  | ||||||
| -		"capabilities": buildCapabilitiesValue(ironicNode, data.BootMode), |  | ||||||
| -	} |  | ||||||
| -	if data.CPUArchitecture != "" { |  | ||||||
| -		opts["cpu_arch"] = data.CPUArchitecture |  | ||||||
| -	} |  | ||||||
| -	updater.SetPropertiesOpts(opts, ironicNode) |  | ||||||
|   |  | ||||||
|  	return updater |  | ||||||
|  } |  | ||||||
| @@ -792,7 +785,7 @@ func (p *ironicProvisioner) setUpForProvisioning(ironicNode *nodes.Node, data pr |  | ||||||
|  	p.log.Info("starting provisioning", "node properties", ironicNode.Properties) |  | ||||||
|   |  | ||||||
|  	ironicNode, success, result, err := p.tryUpdateNode(ironicNode, |  | ||||||
| -		p.getUpdateOptsForNode(ironicNode, data)) |  | ||||||
| +		p.getInstanceUpdateOpts(ironicNode, data)) |  | ||||||
|  	if !success { |  | ||||||
|  		return result, err |  | ||||||
|  	} |  | ||||||
| diff --git a/pkg/provisioner/ironic/provision_test.go b/pkg/provisioner/ironic/provision_test.go |  | ||||||
| index 72ee57b7..40c714e9 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/provision_test.go |  | ||||||
| +++ b/pkg/provisioner/ironic/provision_test.go |  | ||||||
| @@ -713,7 +713,7 @@ func TestGetUpdateOptsForNodeWithRootHints(t *testing.T) { |  | ||||||
|  		BootMode:        metal3api.DefaultBootMode, |  | ||||||
|  		RootDeviceHints: host.Status.Provisioning.RootDeviceHints, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -723,7 +723,7 @@ func TestGetUpdateOptsForNodeWithRootHints(t *testing.T) { |  | ||||||
|  		Value interface{}       // the value being passed to ironic (or value associated with the key) |  | ||||||
|  	}{ |  | ||||||
|  		{ |  | ||||||
| -			Path:  "/properties/root_device", |  | ||||||
| +			Path:  "/instance_info/root_device", |  | ||||||
|  			Value: "userdefined_devicename", |  | ||||||
|  			Map: map[string]string{ |  | ||||||
|  				"name":                 "s== userd_devicename", |  | ||||||
| @@ -807,7 +807,7 @@ func TestGetUpdateOptsForNodeVirtual(t *testing.T) { |  | ||||||
|  		BootMode:        metal3api.DefaultBootMode, |  | ||||||
|  		HardwareProfile: hwProf, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -903,9 +903,8 @@ func TestGetUpdateOptsForNodeDell(t *testing.T) { |  | ||||||
|  		Image:           *host.Spec.Image, |  | ||||||
|  		BootMode:        metal3api.DefaultBootMode, |  | ||||||
|  		HardwareProfile: hwProf, |  | ||||||
| -		CPUArchitecture: "x86_64", |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -930,10 +929,6 @@ func TestGetUpdateOptsForNodeDell(t *testing.T) { |  | ||||||
|  			Path:  "/instance_uuid", |  | ||||||
|  			Value: "27720611-e5d1-45d3-ba3a-222dcfaa4ca2", |  | ||||||
|  		}, |  | ||||||
| -		{ |  | ||||||
| -			Path:  "/properties/cpu_arch", |  | ||||||
| -			Value: "x86_64", |  | ||||||
| -		}, |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
|  	for _, e := range expected { |  | ||||||
| @@ -971,7 +966,7 @@ func TestGetUpdateOptsForNodeLiveIso(t *testing.T) { |  | ||||||
|  		Image:    *host.Spec.Image, |  | ||||||
|  		BootMode: metal3api.DefaultBootMode, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -1038,7 +1033,7 @@ func TestGetUpdateOptsForNodeImageToLiveIso(t *testing.T) { |  | ||||||
|  		Image:    *host.Spec.Image, |  | ||||||
|  		BootMode: metal3api.DefaultBootMode, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -1116,7 +1111,7 @@ func TestGetUpdateOptsForNodeLiveIsoToImage(t *testing.T) { |  | ||||||
|  		Image:    *host.Spec.Image, |  | ||||||
|  		BootMode: metal3api.DefaultBootMode, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -1188,7 +1183,7 @@ func TestGetUpdateOptsForNodeCustomDeploy(t *testing.T) { |  | ||||||
|  		BootMode:     metal3api.DefaultBootMode, |  | ||||||
|  		CustomDeploy: host.Spec.CustomDeploy, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -1245,7 +1240,7 @@ func TestGetUpdateOptsForNodeCustomDeployWithImage(t *testing.T) { |  | ||||||
|  		BootMode:     metal3api.DefaultBootMode, |  | ||||||
|  		CustomDeploy: host.Spec.CustomDeploy, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -1312,7 +1307,7 @@ func TestGetUpdateOptsForNodeImageToCustomDeploy(t *testing.T) { |  | ||||||
|  		BootMode:     metal3api.DefaultBootMode, |  | ||||||
|  		CustomDeploy: host.Spec.CustomDeploy, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| @@ -1405,7 +1400,7 @@ func TestGetUpdateOptsForNodeSecureBoot(t *testing.T) { |  | ||||||
|  		BootMode:        metal3api.UEFISecureBoot, |  | ||||||
|  		HardwareProfile: hwProf, |  | ||||||
|  	} |  | ||||||
| -	patches := prov.getUpdateOptsForNode(ironicNode, provData).Updates |  | ||||||
| +	patches := prov.getInstanceUpdateOpts(ironicNode, provData).Updates |  | ||||||
|   |  | ||||||
|  	t.Logf("patches: %v", patches) |  | ||||||
|   |  | ||||||
| diff --git a/pkg/provisioner/ironic/register.go b/pkg/provisioner/ironic/register.go |  | ||||||
| index 390e463f..9a600189 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/register.go |  | ||||||
| +++ b/pkg/provisioner/ironic/register.go |  | ||||||
| @@ -220,7 +220,7 @@ func (p *ironicProvisioner) Register(data provisioner.ManagementAccessData, cred |  | ||||||
|  		fallthrough |  | ||||||
|   |  | ||||||
|  	default: |  | ||||||
| -		result, err = p.configureImages(data, ironicNode, bmcAccess) |  | ||||||
| +		result, err = p.configureNode(data, ironicNode, bmcAccess) |  | ||||||
|  		return result, provID, err |  | ||||||
|  	} |  | ||||||
|  } |  | ||||||
| @@ -246,6 +246,7 @@ func (p *ironicProvisioner) enrollNode(data provisioner.ManagementAccessData, bm |  | ||||||
|  		DisablePowerOff:     &data.DisablePowerOff, |  | ||||||
|  		Properties: map[string]interface{}{ |  | ||||||
|  			"capabilities": buildCapabilitiesValue(nil, data.BootMode), |  | ||||||
| +			"cpu_arch":     data.CPUArchitecture, |  | ||||||
|  		}, |  | ||||||
|  	} |  | ||||||
|   |  | ||||||
| diff --git a/pkg/provisioner/ironic/register_test.go b/pkg/provisioner/ironic/register_test.go |  | ||||||
| index e6c302b5..8e524dad 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/register_test.go |  | ||||||
| +++ b/pkg/provisioner/ironic/register_test.go |  | ||||||
| @@ -72,7 +72,7 @@ func TestRegisterMACOptional(t *testing.T) { |  | ||||||
|  	assert.Equal(t, "", result.ErrorMessage) |  | ||||||
|  } |  | ||||||
|   |  | ||||||
| -func TestRegisterCreateNodeNoImage(t *testing.T) { |  | ||||||
| +func TestRegisterCreateNode(t *testing.T) { |  | ||||||
|  	// Create a host without a bootMACAddress and with a BMC that |  | ||||||
|  	// does not require one. |  | ||||||
|  	host := makeHost() |  | ||||||
| @@ -146,79 +146,6 @@ func TestRegisterCreateNodeOldInspection(t *testing.T) { |  | ||||||
|  	assert.Equal(t, "inspector", createdNode.InspectInterface) |  | ||||||
|  } |  | ||||||
|   |  | ||||||
| -func TestRegisterCreateWithImage(t *testing.T) { |  | ||||||
| -	// Create a host with Image specified in the Spec |  | ||||||
| -	host := makeHost() |  | ||||||
| -	host.Status.Provisioning.ID = "" // so we don't lookup by uuid |  | ||||||
| -	host.Spec.Image.URL = "theimagefoo" |  | ||||||
| -	host.Spec.Image.Checksum = "thechecksumxyz" |  | ||||||
| -	host.Spec.Image.ChecksumType = "auto" |  | ||||||
| - |  | ||||||
| -	var createdNode *nodes.Node |  | ||||||
| - |  | ||||||
| -	createCallback := func(node nodes.Node) { |  | ||||||
| -		createdNode = &node |  | ||||||
| -	} |  | ||||||
| - |  | ||||||
| -	ironic := testserver.NewIronic(t).WithDrivers().CreateNodes(createCallback).NoNode(host.Namespace + nameSeparator + host.Name).NoNode(host.Name) |  | ||||||
| -	ironic.AddDefaultResponse("/v1/nodes/node-0", "PATCH", http.StatusOK, "{}") |  | ||||||
| -	ironic.Start() |  | ||||||
| -	defer ironic.Stop() |  | ||||||
| - |  | ||||||
| -	auth := clients.AuthConfig{Type: clients.NoAuth} |  | ||||||
| -	prov, err := newProvisionerWithSettings(host, bmc.Credentials{}, nullEventPublisher, ironic.Endpoint(), auth) |  | ||||||
| -	if err != nil { |  | ||||||
| -		t.Fatalf("could not create provisioner: %s", err) |  | ||||||
| -	} |  | ||||||
| - |  | ||||||
| -	result, provID, err := prov.Register(provisioner.ManagementAccessData{CurrentImage: host.Spec.Image.DeepCopy()}, false, false) |  | ||||||
| -	if err != nil { |  | ||||||
| -		t.Fatalf("error from Register: %s", err) |  | ||||||
| -	} |  | ||||||
| -	assert.Equal(t, "", result.ErrorMessage) |  | ||||||
| -	assert.Equal(t, createdNode.UUID, provID) |  | ||||||
| -	assert.Equal(t, "", createdNode.DeployInterface) |  | ||||||
| -	updates, _ := ironic.GetLastRequestFor("/v1/nodes/node-0", http.MethodPatch) |  | ||||||
| -	assert.Contains(t, updates, "/instance_info/image_source") |  | ||||||
| -	assert.Contains(t, updates, host.Spec.Image.URL) |  | ||||||
| -	assert.Contains(t, updates, "/instance_info/image_checksum") |  | ||||||
| -	assert.Contains(t, updates, host.Spec.Image.Checksum) |  | ||||||
| -} |  | ||||||
| - |  | ||||||
| -func TestRegisterCreateWithLiveIso(t *testing.T) { |  | ||||||
| -	// Create a host with Image specified in the Spec |  | ||||||
| -	host := makeHostLiveIso() |  | ||||||
| -	host.Status.Provisioning.ID = "" // so we don't lookup by uuid |  | ||||||
| - |  | ||||||
| -	var createdNode *nodes.Node |  | ||||||
| - |  | ||||||
| -	createCallback := func(node nodes.Node) { |  | ||||||
| -		createdNode = &node |  | ||||||
| -	} |  | ||||||
| - |  | ||||||
| -	ironic := testserver.NewIronic(t).WithDrivers().CreateNodes(createCallback).NoNode(host.Namespace + nameSeparator + host.Name).NoNode(host.Name) |  | ||||||
| -	ironic.AddDefaultResponse("/v1/nodes/node-0", "PATCH", http.StatusOK, "{}") |  | ||||||
| -	ironic.Start() |  | ||||||
| -	defer ironic.Stop() |  | ||||||
| - |  | ||||||
| -	auth := clients.AuthConfig{Type: clients.NoAuth} |  | ||||||
| -	prov, err := newProvisionerWithSettings(host, bmc.Credentials{}, nullEventPublisher, ironic.Endpoint(), auth) |  | ||||||
| -	if err != nil { |  | ||||||
| -		t.Fatalf("could not create provisioner: %s", err) |  | ||||||
| -	} |  | ||||||
| - |  | ||||||
| -	result, provID, err := prov.Register(provisioner.ManagementAccessData{CurrentImage: host.Spec.Image.DeepCopy()}, false, false) |  | ||||||
| -	if err != nil { |  | ||||||
| -		t.Fatalf("error from Register: %s", err) |  | ||||||
| -	} |  | ||||||
| -	assert.Equal(t, "", result.ErrorMessage) |  | ||||||
| -	assert.Equal(t, createdNode.UUID, provID) |  | ||||||
| -	assert.Equal(t, "ramdisk", createdNode.DeployInterface) |  | ||||||
| -	updates, _ := ironic.GetLastRequestFor("/v1/nodes/node-0", http.MethodPatch) |  | ||||||
| -	assert.Contains(t, updates, "/instance_info/boot_iso") |  | ||||||
| -	assert.Contains(t, updates, host.Spec.Image.URL) |  | ||||||
| -} |  | ||||||
| - |  | ||||||
|  func TestRegisterExistingNode(t *testing.T) { |  | ||||||
|  	// Create a host without a bootMACAddress and with a BMC that |  | ||||||
|  	// does not require one. |  | ||||||
| @@ -342,6 +269,7 @@ func TestRegisterExistingNodeContinue(t *testing.T) { |  | ||||||
|  					"test_password":  "******", // ironic returns a placeholder |  | ||||||
|  					"test_port":      "42", |  | ||||||
|  				}, |  | ||||||
| +				Properties: map[string]interface{}{"capabilities": ""}, |  | ||||||
|  			}).NodeUpdate(nodes.Node{ |  | ||||||
|  				UUID: "uuid", |  | ||||||
|  			}) |  | ||||||
| @@ -521,6 +449,7 @@ func TestRegisterExistingSteadyStateNoUpdate(t *testing.T) { |  | ||||||
|  				DeployInterface: imageType.DeployInterface, |  | ||||||
|  				InstanceInfo:    imageType.InstanceInfo, |  | ||||||
|  				DriverInfo:      imageType.DriverInfo, |  | ||||||
| +				Properties:      map[string]interface{}{"capabilities": ""}, |  | ||||||
|  			}).NodeUpdate(nodes.Node{ |  | ||||||
|  				UUID: "uuid", |  | ||||||
|  			}) |  | ||||||
| @@ -577,6 +506,7 @@ func TestRegisterExistingNodeWaiting(t *testing.T) { |  | ||||||
|  					"test_password":  "******", // ironic returns a placeholder |  | ||||||
|  					"test_port":      "42", |  | ||||||
|  				}, |  | ||||||
| +				Properties: map[string]interface{}{"capabilities": ""}, |  | ||||||
|  			} |  | ||||||
|  			ironic := testserver.NewIronic(t).CreateNodes(createCallback).Node(node).NodeUpdate(nodes.Node{ |  | ||||||
|  				UUID: "uuid", |  | ||||||
| diff --git a/pkg/provisioner/provisioner.go b/pkg/provisioner/provisioner.go |  | ||||||
| index faddd0fd..e2018e63 100644 |  | ||||||
| --- a/pkg/provisioner/provisioner.go |  | ||||||
| +++ b/pkg/provisioner/provisioner.go |  | ||||||
| @@ -82,6 +82,7 @@ type ManagementAccessData struct { |  | ||||||
|  	PreprovisioningNetworkData string |  | ||||||
|  	HasCustomDeploy            bool |  | ||||||
|  	DisablePowerOff            bool |  | ||||||
| +	CPUArchitecture            string |  | ||||||
|  } |  | ||||||
|   |  | ||||||
|  type AdoptData struct { |  | ||||||
| @@ -122,7 +123,6 @@ type ProvisionData struct { |  | ||||||
|  	HardwareProfile profile.Profile |  | ||||||
|  	RootDeviceHints *metal3api.RootDeviceHints |  | ||||||
|  	CustomDeploy    *metal3api.CustomDeploy |  | ||||||
| -	CPUArchitecture string |  | ||||||
|  } |  | ||||||
|   |  | ||||||
|  type HTTPHeaders []map[string]string |  | ||||||
| --  |  | ||||||
| 2.50.1 |  | ||||||
|  |  | ||||||
| @@ -1,46 +0,0 @@ | |||||||
| From 5419f8d95306efed8667936156d8081c21e068ed Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Dmitry Tantsur <dtantsur@protonmail.com> |  | ||||||
| Date: Wed, 9 Jul 2025 14:02:23 +0200 |  | ||||||
| Subject: [PATCH 5/5] Provide inline docs for node configuration calls |  | ||||||
|  |  | ||||||
| Signed-off-by: Dmitry Tantsur <dtantsur@protonmail.com> |  | ||||||
| (cherry picked from commit 778d9342747aefc8079f1ccaa6a14f83b26f28ff) |  | ||||||
| --- |  | ||||||
|  pkg/provisioner/ironic/ironic.go | 7 +++++++ |  | ||||||
|  1 file changed, 7 insertions(+) |  | ||||||
|  |  | ||||||
| diff --git a/pkg/provisioner/ironic/ironic.go b/pkg/provisioner/ironic/ironic.go |  | ||||||
| index b8e6d72b..166d929c 100644 |  | ||||||
| --- a/pkg/provisioner/ironic/ironic.go |  | ||||||
| +++ b/pkg/provisioner/ironic/ironic.go |  | ||||||
| @@ -311,6 +311,10 @@ func (p *ironicProvisioner) createPXEEnabledNodePort(uuid, macAddress string) er |  | ||||||
|  	return nil |  | ||||||
|  } |  | ||||||
|   |  | ||||||
| +// configureNode configures Node properties that are not related to any specific provisioning phase. |  | ||||||
| +// It populates the AutomatedClean field, as well as capabilities and architecture in Properties. |  | ||||||
| +// It also calls setDeployImage to populate IPA parameters in DriverInfo and |  | ||||||
| +// checks if the required PreprovisioningImage is provided and ready. |  | ||||||
|  func (p *ironicProvisioner) configureNode(data provisioner.ManagementAccessData, ironicNode *nodes.Node, bmcAccess bmc.AccessDetails) (result provisioner.Result, err error) { |  | ||||||
|  	updater := clients.UpdateOptsBuilder(p.log) |  | ||||||
|   |  | ||||||
| @@ -426,6 +430,8 @@ func setExternalURL(p *ironicProvisioner, driverInfo map[string]interface{}) map |  | ||||||
|  	return driverInfo |  | ||||||
|  } |  | ||||||
|   |  | ||||||
| +// setDeployImage configures the IPA ramdisk parameters in the Node's DriverInfo. |  | ||||||
| +// It can use either the provided PreprovisioningImage or the global configuration from ironicConfig. |  | ||||||
|  func setDeployImage(config ironicConfig, accessDetails bmc.AccessDetails, hostImage *provisioner.PreprovisioningImage) clients.UpdateOptsData { |  | ||||||
|  	deployImageInfo := clients.UpdateOptsData{ |  | ||||||
|  		deployKernelKey:  nil, |  | ||||||
| @@ -660,6 +666,7 @@ func (p *ironicProvisioner) setCustomDeployUpdateOptsForNode(ironicNode *nodes.N |  | ||||||
|  		SetTopLevelOpt("deploy_interface", "custom-agent", ironicNode.DeployInterface) |  | ||||||
|  } |  | ||||||
|   |  | ||||||
| +// getInstanceUpdateOpts constructs InstanceInfo options required to provision a Node in Ironic. |  | ||||||
|  func (p *ironicProvisioner) getInstanceUpdateOpts(ironicNode *nodes.Node, data provisioner.ProvisionData) *clients.NodeUpdater { |  | ||||||
|  	updater := clients.UpdateOptsBuilder(p.log) |  | ||||||
|   |  | ||||||
| --  |  | ||||||
| 2.50.1 |  | ||||||
|  |  | ||||||
| @@ -2,7 +2,7 @@ | |||||||
|  <service name="obs_scm"> |  <service name="obs_scm"> | ||||||
|     <param name="url">https://github.com/metal3-io/baremetal-operator</param> |     <param name="url">https://github.com/metal3-io/baremetal-operator</param> | ||||||
|     <param name="scm">git</param> |     <param name="scm">git</param> | ||||||
|     <param name="revision">v0.10.2</param> |     <param name="revision">v0.9.1</param> | ||||||
|     <param name="version">_auto_</param> |     <param name="version">_auto_</param> | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |     <param name="versionformat">@PARENT_TAG@</param> | ||||||
|     <param name="changesgenerate">enable</param> |     <param name="changesgenerate">enable</param> | ||||||
|   | |||||||
| @@ -17,21 +17,14 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| Name:           baremetal-operator | Name:           baremetal-operator | ||||||
| Version:        0.10.2 | Version:        0.9.1 | ||||||
| Release:        0 | Release:        0 | ||||||
| Summary:        Implements a Kubernetes API for managing bare metal hosts | Summary:        Implements a Kubernetes API for managing bare metal hosts | ||||||
| License:        Apache-2.0 | License:        Apache-2.0 | ||||||
| URL:            https://github.com/metal3-io/baremetal-operator | URL:            https://github.com/metal3-io/baremetal-operator | ||||||
| Source:         baremetal-operator-%{version}.tar | Source:         baremetal-operator-%{version}.tar | ||||||
| Source1:        vendor.tar.gz | Source1:        vendor.tar.gz | ||||||
| # Patches related to multi-architecture support, upstream PRs #2506 #2559 #2537 | BuildRequires:  golang(API) = 1.23 | ||||||
| Patch0:		0001-Enable-exhaustive-linter.patch |  | ||||||
| Patch1:		0002-Stop-requiring-DEPLOY_KERNEL-RAMDISK.patch |  | ||||||
| Patch2:		0003-Remove-DEPLOY_KERNEL_URL-from-deployment-scripts-for.patch |  | ||||||
| Patch3:		0004-Refactor-setting-various-Ironic-properties.patch |  | ||||||
| Patch4:		0005-Provide-inline-docs-for-node-configuration-calls.patch |  | ||||||
|  |  | ||||||
| BuildRequires:  golang(API) = 1.24 |  | ||||||
| ExcludeArch:    s390 | ExcludeArch:    s390 | ||||||
| ExcludeArch:    %{ix86} | ExcludeArch:    %{ix86} | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,9 +1,9 @@ | |||||||
| #!BuildTag: %%CHART_PREFIX%%cdi:%%CHART_MAJOR%%.0.1_up0.6.0 | #!BuildTag: %%CHART_PREFIX%%cdi:%%CHART_MAJOR%%.0.0_up0.5.0 | ||||||
| #!BuildTag: %%CHART_PREFIX%%cdi:%%CHART_MAJOR%%.0.1_up0.6.0-%RELEASE% | #!BuildTag: %%CHART_PREFIX%%cdi:%%CHART_MAJOR%%.0.0_up0.5.0-%RELEASE% | ||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: 1.62.0 | appVersion: 1.61.0 | ||||||
| description: A Helm chart for Containerized Data Importer (CDI) | description: A Helm chart for Containerized Data Importer (CDI) | ||||||
| icon: https://raw.githubusercontent.com/cncf/artwork/main/projects/kubevirt/icon/color/kubevirt-icon-color.svg | icon: https://raw.githubusercontent.com/cncf/artwork/main/projects/kubevirt/icon/color/kubevirt-icon-color.svg | ||||||
| name: cdi | name: cdi | ||||||
| type: application | type: application | ||||||
| version: "%%CHART_MAJOR%%.0.1+up0.6.0" | version: "%%CHART_MAJOR%%.0.0+up0.5.0" | ||||||
|   | |||||||
| @@ -109,9 +109,9 @@ spec: | |||||||
|                   description: CDIConfig at CDI level |                   description: CDIConfig at CDI level | ||||||
|                   properties: |                   properties: | ||||||
|                     dataVolumeTTLSeconds: |                     dataVolumeTTLSeconds: | ||||||
|                       description: |- |                       description: DataVolumeTTLSeconds is the time in seconds after | ||||||
|                         DataVolumeTTLSeconds is the time in seconds after DataVolume completion it can be garbage collected. Disabled by default. |                         DataVolume completion it can be garbage collected. Disabled | ||||||
|                         Deprecated: Removed in v1.62. |                         by default. | ||||||
|                       format: int32 |                       format: int32 | ||||||
|                       type: integer |                       type: integer | ||||||
|                     featureGates: |                     featureGates: | ||||||
| @@ -2641,9 +2641,9 @@ spec: | |||||||
|                   description: CDIConfig at CDI level |                   description: CDIConfig at CDI level | ||||||
|                   properties: |                   properties: | ||||||
|                     dataVolumeTTLSeconds: |                     dataVolumeTTLSeconds: | ||||||
|                       description: |- |                       description: DataVolumeTTLSeconds is the time in seconds after | ||||||
|                         DataVolumeTTLSeconds is the time in seconds after DataVolume completion it can be garbage collected. Disabled by default. |                         DataVolume completion it can be garbage collected. Disabled | ||||||
|                         Deprecated: Removed in v1.62. |                         by default. | ||||||
|                       format: int32 |                       format: int32 | ||||||
|                       type: integer |                       type: integer | ||||||
|                     featureGates: |                     featureGates: | ||||||
|   | |||||||
| @@ -599,8 +599,6 @@ spec: | |||||||
|   strategy: {} |   strategy: {} | ||||||
|   template: |   template: | ||||||
|     metadata: |     metadata: | ||||||
|       annotations: |  | ||||||
|         openshift.io/required-scc: restricted-v2 |  | ||||||
|       labels: |       labels: | ||||||
|         cdi.kubevirt.io: cdi-operator |         cdi.kubevirt.io: cdi-operator | ||||||
|         name: cdi-operator |         name: cdi-operator | ||||||
|   | |||||||
| @@ -18,8 +18,4 @@ spec: | |||||||
|   {{- with .Values.cdi.workload }} |   {{- with .Values.cdi.workload }} | ||||||
|   workload: |   workload: | ||||||
|   {{- toYaml . | nindent 4 }} |   {{- toYaml . | nindent 4 }} | ||||||
|   {{- end }} |   {{- end }} | ||||||
|   {{- with .Values.cdi.customizeComponents }} |  | ||||||
|   customizeComponents: |  | ||||||
|   {{- toYaml . | nindent 4 }} |  | ||||||
|   {{- end }} |  | ||||||
| @@ -1,12 +1,12 @@ | |||||||
| deployment: | deployment: | ||||||
|   version: 1.62.0-150700.9.3.1 |   version: 1.61.0-150600.3.12.1 | ||||||
|   operatorImage: registry.suse.com/suse/sles/15.7/cdi-operator |   operatorImage: registry.suse.com/suse/sles/15.6/cdi-operator | ||||||
|   controllerImage: registry.suse.com/suse/sles/15.7/cdi-controller |   controllerImage: registry.suse.com/suse/sles/15.6/cdi-controller | ||||||
|   importerImage: registry.suse.com/suse/sles/15.7/cdi-importer |   importerImage: registry.suse.com/suse/sles/15.6/cdi-importer | ||||||
|   clonerImage: registry.suse.com/suse/sles/15.7/cdi-cloner |   clonerImage: registry.suse.com/suse/sles/15.6/cdi-cloner | ||||||
|   apiserverImage: registry.suse.com/suse/sles/15.7/cdi-apiserver |   apiserverImage: registry.suse.com/suse/sles/15.6/cdi-apiserver | ||||||
|   uploadserverImage: registry.suse.com/suse/sles/15.7/cdi-uploadserver |   uploadserverImage: registry.suse.com/suse/sles/15.6/cdi-uploadserver | ||||||
|   uploadproxyImage: registry.suse.com/suse/sles/15.7/cdi-uploadproxy |   uploadproxyImage: registry.suse.com/suse/sles/15.6/cdi-uploadproxy | ||||||
|   pullPolicy: IfNotPresent |   pullPolicy: IfNotPresent | ||||||
|   affinity: |   affinity: | ||||||
|     podAffinity: |     podAffinity: | ||||||
| @@ -30,7 +30,6 @@ cdi: | |||||||
|     featureGates: |     featureGates: | ||||||
|       - HonorWaitForFirstConsumer |       - HonorWaitForFirstConsumer | ||||||
|   imagePullPolicy: "IfNotPresent" |   imagePullPolicy: "IfNotPresent" | ||||||
|   customizeComponents: {} |  | ||||||
|   infra: |   infra: | ||||||
|     nodeSelector: |     nodeSelector: | ||||||
|       kubernetes.io/os: linux |       kubernetes.io/os: linux | ||||||
| @@ -42,7 +41,7 @@ cdi: | |||||||
|     nodeSelector: |     nodeSelector: | ||||||
|       kubernetes.io/os: linux |       kubernetes.io/os: linux | ||||||
|  |  | ||||||
| hookImage: registry.rancher.com/rancher/kubectl:v1.33.1 | hookImage: registry.rancher.com/rancher/kubectl:v1.30.10 | ||||||
| hookRestartPolicy: OnFailure | hookRestartPolicy: OnFailure | ||||||
| hookSecurityContext: | hookSecurityContext: | ||||||
|   seccompProfile: |   seccompProfile: | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| #!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.3.0 | #!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.2.1 | ||||||
| #!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.3.0-%RELEASE% | #!BuildTag: %%IMG_PREFIX%%edge-image-builder:1.2.1-%RELEASE% | ||||||
| ARG SLE_VERSION | ARG SLE_VERSION | ||||||
| FROM registry.suse.com/bci/bci-base:$SLE_VERSION | FROM registry.suse.com/bci/bci-base:$SLE_VERSION | ||||||
| MAINTAINER SUSE LLC (https://www.suse.com/) | MAINTAINER SUSE LLC (https://www.suse.com/) | ||||||
| @@ -14,11 +14,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.3.0" | LABEL org.opencontainers.image.version="1.2.1" | ||||||
| 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.3.0-%RELEASE%" | LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%edge-image-builder:1.2.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" | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| metallb: | metallb: | ||||||
|   chart: metallb |   chart: metallb | ||||||
|   repository: "%%CHART_REPO%%/%%CHART_PREFIX%%" |   repository: "%%CHART_REPO%%/%%CHART_PREFIX%%" | ||||||
|   version: "%%CHART_MAJOR%%.0.1+up0.15.2" |   version: "%%CHART_MAJOR%%.0.0+up0.14.9" | ||||||
| endpoint-copier-operator: | endpoint-copier-operator: | ||||||
|   chart: endpoint-copier-operator |   chart: endpoint-copier-operator | ||||||
|   repository: "%%CHART_REPO%%/%%CHART_PREFIX%%" |   repository: "%%CHART_REPO%%/%%CHART_PREFIX%%" | ||||||
| @@ -10,10 +10,6 @@ kubernetes: | |||||||
|   k3s: |   k3s: | ||||||
|     selinuxPackage: k3s-selinux-1.6-1.slemicro.noarch |     selinuxPackage: k3s-selinux-1.6-1.slemicro.noarch | ||||||
|     selinuxRepository: https://rpm.rancher.io/k3s/stable/common/slemicro/noarch |     selinuxRepository: https://rpm.rancher.io/k3s/stable/common/slemicro/noarch | ||||||
|     selinuxRepositoryPriority: 1 |  | ||||||
|     releaseURL: https://github.com/k3s-io/k3s/releases/download/ |  | ||||||
|   rke2: |   rke2: | ||||||
|     selinuxPackage: rke2-selinux |     selinuxPackage: rke2-selinux | ||||||
|     selinuxRepository: https://rpm.rancher.io/rke2/stable/common/slemicro/noarch |     selinuxRepository: https://rpm.rancher.io/rke2/stable/common/slemicro/noarch | ||||||
|     selinuxRepositoryPriority: 1 |  | ||||||
|     releaseURL: https://github.com/rancher/rke2/releases/download/ |  | ||||||
|   | |||||||
| @@ -3,9 +3,9 @@ | |||||||
|     <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="scm">git</param> |     <param name="scm">git</param> | ||||||
|     <param name="exclude">.git</param> |     <param name="exclude">.git</param> | ||||||
|     <param name="revision">v1.3.0</param> |     <param name="revision">v1.2.1</param> | ||||||
|     <!-- Uncomment and set this For Pre-Release Version --> |     <!-- Uncomment and set this For Pre-Release Version --> | ||||||
|     <!-- <param name="version">1.3.0</param> --> |     <!-- <param name="version">1.2.0~rc1</param> --> | ||||||
|     <!-- Uncomment and this for regular version --> |     <!-- Uncomment and this for regular version --> | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |     <param name="versionformat">@PARENT_TAG@</param> | ||||||
|     <param name="versionrewrite-pattern">v(\d+).(\d+).(\d+)</param> |     <param name="versionrewrite-pattern">v(\d+).(\d+).(\d+)</param> | ||||||
|   | |||||||
| @@ -17,7 +17,7 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| Name:           edge-image-builder | Name:           edge-image-builder | ||||||
| Version:        1.3.0 | Version:        1.2.1 | ||||||
| Release:        0 | Release:        0 | ||||||
| Summary:        Edge Image Builder | Summary:        Edge Image Builder | ||||||
| License:        Apache-2.0 | License:        Apache-2.0 | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # SPDX-License-Identifier: MIT | # SPDX-License-Identifier: MIT | ||||||
| #!BuildTag: %%IMG_PREFIX%%frr:10.2.1 | #!BuildTag: %%IMG_PREFIX%%frr:8.5.6 | ||||||
| #!BuildTag: %%IMG_PREFIX%%frr:10.2.1-%RELEASE% | #!BuildTag: %%IMG_PREFIX%%frr:8.5.6-%RELEASE% | ||||||
| ARG SLE_VERSION | ARG SLE_VERSION | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | ||||||
|  |  | ||||||
| @@ -14,11 +14,11 @@ FROM micro AS final | |||||||
| 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="FRR Container Image" | LABEL org.opencontainers.image.title="FRR Container Image" | ||||||
| LABEL org.opencontainers.image.description="frr based on the SLE Base Container Image." | LABEL org.opencontainers.image.description="frr based on the SLE Base Container Image." | ||||||
| LABEL org.opencontainers.image.version="10.2.1" | LABEL org.opencontainers.image.version="8.5.6" | ||||||
| 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%%frr:10.2.1-%RELEASE%" | LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%frr:8.5.6-%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" | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
|  <service name="obs_scm"> |  <service name="obs_scm"> | ||||||
|     <param name="url">https://github.com/metallb/frr-k8s</param> |     <param name="url">https://github.com/metallb/frr-k8s</param> | ||||||
|     <param name="scm">git</param> |     <param name="scm">git</param> | ||||||
|     <param name="revision">v0.0.20</param> |     <param name="revision">v0.0.16</param> | ||||||
|     <param name="version">_auto_</param> |     <param name="version">_auto_</param> | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |     <param name="versionformat">@PARENT_TAG@</param> | ||||||
|     <param name="changesgenerate">enable</param> |     <param name="changesgenerate">enable</param> | ||||||
| @@ -18,4 +18,4 @@ | |||||||
|   <service name="go_modules"> |   <service name="go_modules"> | ||||||
|   </service> |   </service> | ||||||
|   <service mode="buildtime" name="set_version" /> |   <service mode="buildtime" name="set_version" /> | ||||||
| </services> | </services> | ||||||
| @@ -17,14 +17,14 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| Name:           frr-k8s | Name:           frr-k8s | ||||||
| Version:        0.0.20 | Version:        0.0.16 | ||||||
| Release:        0.0.20 | Release:        0.0.16 | ||||||
| Summary:        A kubernetes based daemonset that exposes a subset of the FRR API in a kubernetes compliant manner. | Summary:        A kubernetes based daemonset that exposes a subset of the FRR API in a kubernetes compliant manner. | ||||||
| License:        Apache-2.0 | License:        Apache-2.0 | ||||||
| URL:            https://github.com/metallb/frr-k8s | URL:            https://github.com/metallb/frr-k8s | ||||||
| Source:         frr-k8s-%{version}.tar | Source:         frr-k8s-%{version}.tar | ||||||
| Source1:        vendor.tar.gz | Source1:        vendor.tar.gz | ||||||
| BuildRequires:  golang(API) = 1.24 | BuildRequires:  golang(API) = 1.22 | ||||||
| ExcludeArch:    s390 | ExcludeArch:    s390 | ||||||
| ExcludeArch:    %{ix86} | ExcludeArch:    %{ix86} | ||||||
|  |  | ||||||
| @@ -63,4 +63,4 @@ install -D -m0755 frr-k8s %{buildroot}/frr-k8s | |||||||
| /frr-metrics | /frr-metrics | ||||||
| /frr-k8s | /frr-k8s | ||||||
|  |  | ||||||
| %changelog | %changelog | ||||||
| @@ -4,7 +4,7 @@ | |||||||
|     <param name="versionformat">@PARENT_TAG@</param> |     <param name="versionformat">@PARENT_TAG@</param> | ||||||
|     <param name="scm">git</param> |     <param name="scm">git</param> | ||||||
|     <param name="exclude">.get</param> |     <param name="exclude">.get</param> | ||||||
|     <param name="revision">v1.2.5</param> |     <param name="revision">v1.2.1</param> | ||||||
|     <param name="versionrewrite-pattern">v(.*)</param> |     <param name="versionrewrite-pattern">v(.*)</param> | ||||||
|     <param name="changesgenerate">enable</param> |     <param name="changesgenerate">enable</param> | ||||||
|   </service> |   </service> | ||||||
|   | |||||||
| @@ -18,7 +18,7 @@ | |||||||
| %define project github.com/hauler-dev/hauler | %define project github.com/hauler-dev/hauler | ||||||
|  |  | ||||||
| Name:           hauler | Name:           hauler | ||||||
| Version:        1.2.5 | Version:        1.2.1 | ||||||
| Release:        0 | Release:        0 | ||||||
| Summary:        Airgap Swiss Army Knife | Summary:        Airgap Swiss Army Knife | ||||||
| License:        Apache-2.0 | License:        Apache-2.0 | ||||||
|   | |||||||
| @@ -1,33 +0,0 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 |  | ||||||
| #!BuildTag: %%IMG_PREFIX%%ib-sriov-cni:v%%ib-sriov-cni_version%% |  | ||||||
| #!BuildTag: %%IMG_PREFIX%%ib-sriov-cni:v%%ib-sriov-cni_version%%-%RELEASE% |  | ||||||
| ARG SLE_VERSION |  | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro |  | ||||||
|  |  | ||||||
| FROM registry.suse.com/bci/bci-base:$SLE_VERSION AS base |  | ||||||
| COPY --from=micro / /installroot/ |  | ||||||
| RUN zypper --installroot /installroot --non-interactive install --no-recommends ib-sriov-cni gawk which; \ |  | ||||||
|     zypper -n clean; \ |  | ||||||
|     rm -rf /var/log/* |  | ||||||
|  |  | ||||||
| FROM micro AS final |  | ||||||
| # Define labels according to https://en.opensuse.org/Building_derived_containers |  | ||||||
| # labelprefix=com.suse.application.ib-sriov-cni |  | ||||||
| LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)" |  | ||||||
| LABEL org.opencontainers.image.title="SLE ib-sriov-cni Container Image" |  | ||||||
| LABEL org.opencontainers.image.description="ib-sriov-cni based on the SLE Base Container Image." |  | ||||||
| LABEL org.opencontainers.image.version="%%ib-sriov-cni_version%%" |  | ||||||
| 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%%ib-sriov-cni:%%ib-sriov-cni_version%%-%RELEASE%" |  | ||||||
| LABEL org.openbuildservice.disturl="%DISTURL%" |  | ||||||
| LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%" |  | ||||||
| LABEL com.suse.eula="SUSE Combined EULA February 2024" |  | ||||||
| LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle" |  | ||||||
| LABEL com.suse.image-type="application" |  | ||||||
| LABEL com.suse.release-stage="released" |  | ||||||
| # endlabelprefix |  | ||||||
|  |  | ||||||
| COPY --from=base /installroot / |  | ||||||
| ENTRYPOINT ["/entrypoint.sh"] |  | ||||||
| @@ -1,19 +0,0 @@ | |||||||
| <services> |  | ||||||
|   <service name="kiwi_metainfo_helper" mode="buildtime"/> |  | ||||||
|   <service name="docker_label_helper" mode="buildtime"/> |  | ||||||
|   <service name="replace_using_package_version" mode="buildtime"> |  | ||||||
|     <param name="file">Dockerfile</param> |  | ||||||
|     <param name="regex">%%ib-sriov-cni_version%%</param> |  | ||||||
|     <param name="package">ib-sriov-cni</param> |  | ||||||
|     <param name="parse-version">patch</param> |  | ||||||
|   </service> |  | ||||||
|   <service name="replace_using_env" mode="buildtime"> |  | ||||||
|     <param name="file">Dockerfile</param> |  | ||||||
|     <param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param> |  | ||||||
|     <param name="var">IMG_PREFIX</param> |  | ||||||
|     <param name="eval">IMG_REPO=$(rpm --macros=/root/.rpmmacros -E %img_repo)</param> |  | ||||||
|     <param name="var">IMG_REPO</param> |  | ||||||
|     <param name="eval">SUPPORT_LEVEL=$(rpm --macros=/root/.rpmmacros -E %support_level)</param> |  | ||||||
|     <param name="var">SUPPORT_LEVEL</param> |  | ||||||
|   </service> |  | ||||||
| </services> |  | ||||||
| @@ -1,25 +0,0 @@ | |||||||
| <services> |  | ||||||
|  <service name="obs_scm"> |  | ||||||
|     <param name="url">https://github.com/k8snetworkplumbingwg/ib-sriov-cni</param> |  | ||||||
|     <param name="scm">git</param> |  | ||||||
|     <param name="revision">v1.2.1</param> |  | ||||||
|     <param name="version">_auto_</param> |  | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |  | ||||||
|     <param name="changesgenerate">enable</param> |  | ||||||
|     <param name="changesauthor">antonio.alarcon@suse.com</param> |  | ||||||
|     <param name="match-tag">v*</param> |  | ||||||
|     <param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param> |  | ||||||
|     <param name="without-version">yes</param> |  | ||||||
|     <param name="versionrewrite-replacement">\1</param> |  | ||||||
|   </service> |  | ||||||
|   <service mode="buildtime" name="tar"> |  | ||||||
|     <param name="obsinfo">ib-sriov-cni.obsinfo</param> |  | ||||||
|   </service> |  | ||||||
|   <service name="go_modules" /> |  | ||||||
|   <service mode="buildtime" name="set_version" /> |  | ||||||
|   <service name="replace_using_env" mode="buildtime"> |  | ||||||
|     <param name="file">ib-sriov-cni.spec</param> |  | ||||||
|     <param name="var">SOURCE_COMMIT</param> |  | ||||||
|     <param name="eval">SOURCE_COMMIT=$(grep commit ib-sriov-cni.obsinfo | cut -d" " -f2)</param> |  | ||||||
|   </service> |  | ||||||
| </services> |  | ||||||
| @@ -1,64 +0,0 @@ | |||||||
| # |  | ||||||
| # spec file for package ib-sriov-cni |  | ||||||
| # |  | ||||||
| # Copyright (c) 2025 SUSE LLC |  | ||||||
| # |  | ||||||
| # All modifications and additions to the file contributed by third parties |  | ||||||
| # remain the property of their copyright owners, unless otherwise agreed |  | ||||||
| # upon. The license for this file, and modifications and additions to the |  | ||||||
| # file, is the same license as for the pristine package itself (unless the |  | ||||||
| # license for the pristine package is not an Open Source License, in which |  | ||||||
| # case the license is the MIT License). An "Open Source License" is a |  | ||||||
| # license that conforms to the Open Source Definition (Version 1.9) |  | ||||||
| # published by the Open Source Initiative. |  | ||||||
|  |  | ||||||
| # Please submit bugfixes or comments via https://bugs.opensuse.org/ |  | ||||||
| # |  | ||||||
|  |  | ||||||
|  |  | ||||||
| Name:           ib-sriov-cni |  | ||||||
| Version:        0 |  | ||||||
| Release:        0 |  | ||||||
| Summary:        Implements a Kubernetes CNI plugin operator for Infiniband SRIOV VFs |  | ||||||
| License:        Apache-2.0 |  | ||||||
| URL:            https://github.com/k8snetworkplumbingwg/ib-sriov-cni |  | ||||||
| Source:         %{name}-%{version}.tar |  | ||||||
| Source1:        vendor.tar.gz |  | ||||||
| BuildRequires:  golang(API) = 1.23 |  | ||||||
| ExcludeArch:    s390 |  | ||||||
| ExcludeArch:    %{ix86} |  | ||||||
|  |  | ||||||
| %description |  | ||||||
| Network Interface Cards (NICs) with SR-IOV capabilities are managed through physical functions (PFs) and virtual functions (VFs). |  | ||||||
| A PF is used by the host and usually represents a single NIC port. VF configurations are applied through the PF. |  | ||||||
| The SR-IOV CNI allows each VF to be treated as a separate network interface, assigned to a container, and configured with its own |  | ||||||
| MAC, VLAN, IP and more. |  | ||||||
|  |  | ||||||
| Infiniband SR-IOV CNI plugin works with Infiniband SR-IOV device plugin for VF allocation in Kubernetes. A CNI metaplugin such as Multus |  | ||||||
| gets the allocated VF's deviceID(PCI address) and is responsible for invoking the Infiniband SR-IOV CNI plugin with that deviceID. |  | ||||||
|  |  | ||||||
| %prep |  | ||||||
| %autosetup -a1 -n %{name}-%{version} -p1 |  | ||||||
|  |  | ||||||
| %build |  | ||||||
| # CGO is disabled by default in upstream Makefile: |  | ||||||
| %define cgoenabled "0" |  | ||||||
| # go build constrain (aka tag) "no_openssl" is set by default in upstream Makefile |  | ||||||
| %define gotags "no_openssl" |  | ||||||
| %define buildtime %(date +%%Y-%%m-%%dT%%H:%%M:%%S%%z) |  | ||||||
| %define buildcommit %%SOURCE_COMMIT%% |  | ||||||
| %define buildldflags "-X main.version=%{version} -X main.commit=%{buildcommit}% -X main.date=%{buildtime}%" |  | ||||||
| CGO_ENABLED=%{cgoenabled} go build -mod=vendor -buildmode=pie -tags %{gotags} -ldflags %{buildldflags} -o ib-sriov cmd/ib-sriov-cni/main.go |  | ||||||
|  |  | ||||||
| %install |  | ||||||
| install -D -m0755 ib-sriov %{buildroot}%{_bindir}/ib-sriov |  | ||||||
| install -D -m0755 images/entrypoint.sh %{buildroot}/entrypoint.sh |  | ||||||
|  |  | ||||||
|  |  | ||||||
| %files |  | ||||||
| %license LICENSE |  | ||||||
| %doc README.md |  | ||||||
| %{_bindir}/ib-sriov |  | ||||||
| /entrypoint.sh |  | ||||||
|  |  | ||||||
| %changelog |  | ||||||
| @@ -1,6 +1,6 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 | # SPDX-License-Identifier: Apache-2.0 | ||||||
| #!BuildTag: %%IMG_PREFIX%%ironic:29.0.4.4 | #!BuildTag: %%IMG_PREFIX%%ironic:29.0.4.1 | ||||||
| #!BuildTag: %%IMG_PREFIX%%ironic:29.0.4.4-%RELEASE% | #!BuildTag: %%IMG_PREFIX%%ironic:29.0.4.1-%RELEASE% | ||||||
|  |  | ||||||
| ARG SLE_VERSION | ARG SLE_VERSION | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | ||||||
| @@ -41,8 +41,8 @@ LABEL org.opencontainers.image.description="Openstack Ironic based on the SLE Ba | |||||||
| 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.opencontainers.image.version="29.0.4.4" | LABEL org.opencontainers.image.version="29.0.4.1" | ||||||
| LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%ironic:29.0.4.4-%RELEASE%" | LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%ironic:29.0.4.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" | ||||||
| @@ -88,7 +88,8 @@ RUN if [ "$(uname -m)" = "aarch64" ]; then\ | |||||||
|       cp /usr/share/ipxe/snp-arm64.efi /tftpboot/ipxe.efi; cp /usr/share/ipxe/snp-arm64.efi /tftpboot/snp-arm64.efi; cp /usr/share/ipxe/snp-arm64.efi /tftpboot/snp.efi ;\ |       cp /usr/share/ipxe/snp-arm64.efi /tftpboot/ipxe.efi; cp /usr/share/ipxe/snp-arm64.efi /tftpboot/snp-arm64.efi; cp /usr/share/ipxe/snp-arm64.efi /tftpboot/snp.efi ;\ | ||||||
|     fi |     fi | ||||||
|      |      | ||||||
| COPY --from=base /tmp/uefi_esp_*.img /templates/ | COPY --from=base /tmp/esp-x86_64.img /tmp/uefi_esp-x86_64.img | ||||||
|  | COPY --from=base /tmp/esp-aarch64.img /tmp/uefi_esp-arm64.img | ||||||
|  |  | ||||||
| COPY ironic-config/ironic.conf.j2 ironic-config/network-data-schema-empty.json /etc/ironic/ | COPY ironic-config/ironic.conf.j2 ironic-config/network-data-schema-empty.json /etc/ironic/ | ||||||
|  |  | ||||||
|   | |||||||
| @@ -11,19 +11,6 @@ Listen [::]:{{ env.VMEDIA_TLS_PORT }} | |||||||
|     SSLCertificateFile {{ env.IRONIC_VMEDIA_CERT_FILE }} |     SSLCertificateFile {{ env.IRONIC_VMEDIA_CERT_FILE }} | ||||||
|     SSLCertificateKeyFile {{ env.IRONIC_VMEDIA_KEY_FILE }} |     SSLCertificateKeyFile {{ env.IRONIC_VMEDIA_KEY_FILE }} | ||||||
|  |  | ||||||
|     {% if "IRONIC_VMEDIA_TLS_12_CIPHERS" in env and env.IRONIC_VMEDIA_TLS_12_CIPHERS %} |  | ||||||
|     SSLCipherSuite {{ env.IRONIC_VMEDIA_TLS_12_CIPHERS }} |  | ||||||
|     {% endif %} |  | ||||||
|     {% if "IRONIC_VMEDIA_TLS_13_CIPHERS" in env and env.IRONIC_VMEDIA_TLS_13_CIPHERS %} |  | ||||||
|     SSLCipherSuite TLSv1.3 {{ env.IRONIC_VMEDIA_TLS_13_CIPHERS }} |  | ||||||
|     {% endif %} |  | ||||||
|     {% if "IRONIC_VMEDIA_CURVES" in env and env.IRONIC_VMEDIA_CURVES %} |  | ||||||
|     SSLOpenSSLConfCmd Curves {{ env.IRONIC_VMEDIA_CURVES }} |  | ||||||
|     {% endif %} |  | ||||||
|     {% if env.IRONIC_VMEDIA_TLS_ENFORCE_SERVER_CIPHER_ORDER | lower == "true" %} |  | ||||||
|     SSLHonorCipherOrder on |  | ||||||
|     {% endif %} |  | ||||||
|  |  | ||||||
|     <Directory "/shared/html/"> |     <Directory "/shared/html/"> | ||||||
|         Options Indexes FollowSymLinks |         Options Indexes FollowSymLinks | ||||||
|         AllowOverride None |         AllowOverride None | ||||||
|   | |||||||
| @@ -91,23 +91,21 @@ send_sensor_data = {{ env.SEND_SENSOR_DATA }} | |||||||
| # Power state is checked every 60 seconds and BMC activity should | # Power state is checked every 60 seconds and BMC activity should | ||||||
| # be avoided more often than once every sixty seconds. | # be avoided more often than once every sixty seconds. | ||||||
| send_sensor_data_interval = 160 | send_sensor_data_interval = 160 | ||||||
| bootloader_by_arch = {{ env.BOOTLOADER_BY_ARCH }} | {% if env.VMEDIA_TLS_PORT %} | ||||||
|  | bootloader = {{ env.IRONIC_HTTPS_VMEDIA_URL }}/uefi_esp-{{ env.DEPLOY_ARCHITECTURE }}.img | ||||||
|  | {% else %} | ||||||
|  | bootloader = {{ env.IRONIC_HTTP_URL }}/uefi_esp-{{ env.DEPLOY_ARCHITECTURE }}.img | ||||||
|  | {% endif %} | ||||||
| verify_step_priority_override = management.clear_job_queue:90 | verify_step_priority_override = management.clear_job_queue:90 | ||||||
| # We don't use this feature, and it creates an additional load on the database | # We don't use this feature, and it creates an additional load on the database | ||||||
| node_history = False | node_history = False | ||||||
| # Provide for a timeout longer than 60 seconds for certain vendor's hardware | # Provide for a timeout longer than 60 seconds for certain vendor's hardware | ||||||
| power_state_change_timeout = 120 | power_state_change_timeout = 120 | ||||||
| {% if env.DEPLOY_KERNEL_URL is defined %} | {% if env.IRONIC_DEFAULT_KERNEL is defined %} | ||||||
| deploy_kernel = {{ env.DEPLOY_KERNEL_URL }} | deploy_kernel = file://{{ env.IRONIC_DEFAULT_KERNEL }} | ||||||
| {% endif %} | {% endif %} | ||||||
| {% if env.DEPLOY_KERNEL_BY_ARCH is defined %} | {% if env.IRONIC_DEFAULT_RAMDISK is defined %} | ||||||
| deploy_kernel_by_arch = {{ env.DEPLOY_KERNEL_BY_ARCH }} | deploy_ramdisk = file://{{ env.IRONIC_DEFAULT_RAMDISK }} | ||||||
| {% endif %} |  | ||||||
| {% if env.DEPLOY_RAMDISK_URL is defined %} |  | ||||||
| deploy_ramdisk = {{ env.DEPLOY_RAMDISK_URL }} |  | ||||||
| {% endif %} |  | ||||||
| {% if env.DEPLOY_RAMDISK_BY_ARCH is defined %} |  | ||||||
| deploy_ramdisk_by_arch = {{ env.DEPLOY_RAMDISK_BY_ARCH }} |  | ||||||
| {% endif %} | {% endif %} | ||||||
| {% if env.DISABLE_DEEP_IMAGE_INSPECTION | lower == "true" %} | {% if env.DISABLE_DEEP_IMAGE_INSPECTION | lower == "true" %} | ||||||
| disable_deep_image_inspection = True | disable_deep_image_inspection = True | ||||||
| @@ -213,7 +211,7 @@ images_path = /shared/html/tmp | |||||||
| instance_master_path = /shared/html/master_images | instance_master_path = /shared/html/master_images | ||||||
| tftp_master_path = /shared/tftpboot/master_images | tftp_master_path = /shared/tftpboot/master_images | ||||||
| tftp_root = /shared/tftpboot | tftp_root = /shared/tftpboot | ||||||
| kernel_append_params = nofb nomodeset vga=normal ipa-insecure={{ env.IPA_INSECURE }} {% if env.ENABLE_FIPS_IPA %}fips={{ env.ENABLE_FIPS_IPA|trim }}{% endif %} {% if env.IRONIC_RAMDISK_SSH_KEY %}sshkey="{{ env.IRONIC_RAMDISK_SSH_KEY|trim }}"{% endif %} {{ env.IRONIC_KERNEL_PARAMS|trim }} systemd.journald.forward_to_console=yes net.ifnames={{ '0' if env.PREDICTABLE_NIC_NAMES == 'false' else '1' }} | kernel_append_params = nofb nomodeset vga=normal ipa-insecure={{ env.IPA_INSECURE }} {% if env.ENABLE_FIPS_IPA %}fips={{ env.ENABLE_FIPS_IPA|trim }}{% endif %} {% if env.IRONIC_RAMDISK_SSH_KEY %}sshkey="{{ env.IRONIC_RAMDISK_SSH_KEY|trim }}"{% endif %} {{ env.IRONIC_KERNEL_PARAMS|trim }} systemd.journald.forward_to_console=yes | ||||||
| # This makes networking boot templates generated even for nodes using local | # This makes networking boot templates generated even for nodes using local | ||||||
| # boot (the default), ensuring that they boot correctly even if they start | # boot (the default), ensuring that they boot correctly even if they start | ||||||
| # netbooting for some reason (e.g. with the noop management interface). | # netbooting for some reason (e.g. with the noop management interface). | ||||||
| @@ -226,14 +224,14 @@ ipxe_config_template = /tmp/ipxe_config.template | |||||||
|  |  | ||||||
| [redfish] | [redfish] | ||||||
| use_swift = false | use_swift = false | ||||||
| kernel_append_params = nofb nomodeset vga=normal ipa-insecure={{ env.IPA_INSECURE }} {% if env.ENABLE_FIPS_IPA %}fips={{ env.ENABLE_FIPS_IPA|trim }}{% endif %} {% if env.IRONIC_RAMDISK_SSH_KEY %}sshkey="{{ env.IRONIC_RAMDISK_SSH_KEY|trim }}"{% endif %} {{ env.IRONIC_KERNEL_PARAMS|trim }} systemd.journald.forward_to_console=yes net.ifnames={{ '0' if env.PREDICTABLE_NIC_NAMES == 'false' else '1' }} | kernel_append_params = nofb nomodeset vga=normal ipa-insecure={{ env.IPA_INSECURE }} {% if env.ENABLE_FIPS_IPA %}fips={{ env.ENABLE_FIPS_IPA|trim }}{% endif %} {% if env.IRONIC_RAMDISK_SSH_KEY %}sshkey="{{ env.IRONIC_RAMDISK_SSH_KEY|trim }}"{% endif %} {{ env.IRONIC_KERNEL_PARAMS|trim }} systemd.journald.forward_to_console=yes | ||||||
|  |  | ||||||
| [ilo] | [ilo] | ||||||
| kernel_append_params = nofb nomodeset vga=normal ipa-insecure={{ env.IPA_INSECURE }} {% if env.ENABLE_FIPS_IPA %}fips={{ env.ENABLE_FIPS_IPA|trim }}{% endif %} {% if env.IRONIC_RAMDISK_SSH_KEY %}sshkey="{{ env.IRONIC_RAMDISK_SSH_KEY|trim }}"{% endif %} {{ env.IRONIC_KERNEL_PARAMS|trim }} systemd.journald.forward_to_console=yes net.ifnames={{ '0' if env.PREDICTABLE_NIC_NAMES == 'false' else '1' }} | kernel_append_params = nofb nomodeset vga=normal ipa-insecure={{ env.IPA_INSECURE }} {% if env.ENABLE_FIPS_IPA %}fips={{ env.ENABLE_FIPS_IPA|trim }}{% endif %} {% if env.IRONIC_RAMDISK_SSH_KEY %}sshkey="{{ env.IRONIC_RAMDISK_SSH_KEY|trim }}"{% endif %} {{ env.IRONIC_KERNEL_PARAMS|trim }} systemd.journald.forward_to_console=yes | ||||||
| use_web_server_for_images = true | use_web_server_for_images = true | ||||||
|  |  | ||||||
| [irmc] | [irmc] | ||||||
| kernel_append_params = nofb nomodeset vga=normal ipa-insecure={{ env.IPA_INSECURE }} {% if env.ENABLE_FIPS_IPA %}fips={{ env.ENABLE_FIPS_IPA|trim }}{% endif %} {% if env.IRONIC_RAMDISK_SSH_KEY %}sshkey="{{ env.IRONIC_RAMDISK_SSH_KEY|trim }}"{% endif %} {{ env.IRONIC_KERNEL_PARAMS|trim }} systemd.journald.forward_to_console=yes net.ifnames={{ '0' if env.PREDICTABLE_NIC_NAMES == 'false' else '1' }} | kernel_append_params = nofb nomodeset vga=normal ipa-insecure={{ env.IPA_INSECURE }} {% if env.ENABLE_FIPS_IPA %}fips={{ env.ENABLE_FIPS_IPA|trim }}{% endif %} {% if env.IRONIC_RAMDISK_SSH_KEY %}sshkey="{{ env.IRONIC_RAMDISK_SSH_KEY|trim }}"{% endif %} {{ env.IRONIC_KERNEL_PARAMS|trim }} systemd.journald.forward_to_console=yes | ||||||
|  |  | ||||||
| [service_catalog] | [service_catalog] | ||||||
| endpoint_override = {{ env.IRONIC_BASE_URL }} | endpoint_override = {{ env.IRONIC_BASE_URL }} | ||||||
|   | |||||||
| @@ -9,7 +9,7 @@ declare -A efi_arch=( | |||||||
|  |  | ||||||
| for arch in "${!efi_arch[@]}"; do | for arch in "${!efi_arch[@]}"; do | ||||||
|    |    | ||||||
|   DEST=/tmp/uefi_esp_${arch}.img |   DEST=/tmp/esp-${arch}.img | ||||||
|  |  | ||||||
|   dd bs=1024 count=6400 if=/dev/zero of=$DEST |   dd bs=1024 count=6400 if=/dev/zero of=$DEST | ||||||
|   mkfs.msdos -F 12 -n 'ESP_IMAGE' $DEST |   mkfs.msdos -F 12 -n 'ESP_IMAGE' $DEST | ||||||
|   | |||||||
| @@ -76,41 +76,10 @@ if [[ -n "$IRONIC_EXTERNAL_IP" ]]; then | |||||||
|     fi |     fi | ||||||
| fi | fi | ||||||
|  |  | ||||||
| IMAGE_CACHE_PREFIX="/shared/html/images/ironic-python-agent" | IMAGE_CACHE_PREFIX="/shared/html/images/ironic-python-agent-${DEPLOY_ARCHITECTURE}" | ||||||
| if [[ -z "${DEPLOY_KERNEL_URL:-}" ]] && [[ -z "${DEPLOY_RAMDISK_URL:-}" ]] && \ | if [[ -f "${IMAGE_CACHE_PREFIX}.kernel" ]] && [[ -f "${IMAGE_CACHE_PREFIX}.initramfs" ]]; then | ||||||
|        [[ -f "${IMAGE_CACHE_PREFIX}.kernel" ]] && [[ -f "${IMAGE_CACHE_PREFIX}.initramfs" ]]; then |     export IRONIC_DEFAULT_KERNEL="${IMAGE_CACHE_PREFIX}.kernel" | ||||||
|     export DEPLOY_KERNEL_URL="file://${IMAGE_CACHE_PREFIX}.kernel" |     export IRONIC_DEFAULT_RAMDISK="${IMAGE_CACHE_PREFIX}.initramfs" | ||||||
|     export DEPLOY_RAMDISK_URL="file://${IMAGE_CACHE_PREFIX}.initramfs" |  | ||||||
| fi |  | ||||||
|  |  | ||||||
| declare -A detected_arch |  | ||||||
| for var_arch in "${!DEPLOY_KERNEL_URL_@}"; do |  | ||||||
|     IPA_ARCH="${var_arch#DEPLOY_KERNEL_URL}" |  | ||||||
|     detected_arch["${IPA_ARCH,,}"]=1 |  | ||||||
| done |  | ||||||
| for file_arch in "${IMAGE_CACHE_PREFIX}"_*.kernel; do |  | ||||||
|     if [[ -f "${file_arch}" ]]; then |  | ||||||
|         IPA_ARCH="$(basename "${file_arch#"${IMAGE_CACHE_PREFIX}"_}" .kernel)" |  | ||||||
|         detected_arch["${IPA_ARCH}"]=1 |  | ||||||
|     fi |  | ||||||
| done |  | ||||||
|  |  | ||||||
| DEPLOY_KERNEL_BY_ARCH="" |  | ||||||
| DEPLOY_RAMDISK_BY_ARCH="" |  | ||||||
| for IPA_ARCH in "${!detected_arch[@]}"; do |  | ||||||
|     kernel_var="DEPLOY_KERNEL_URL_${IPA_ARCH^^}" |  | ||||||
|     ramdisk_var="DEPLOY_RAMDISK_URL_${IPA_ARCH^^}" |  | ||||||
|     if [[ -z "${!kernel_var:-}" ]] && [[ -z "${!ramdisk_var:-}" ]] && \ |  | ||||||
|         [[ -f "${IMAGE_CACHE_PREFIX}_${IPA_ARCH}.kernel" ]] && [[ -f "${IMAGE_CACHE_PREFIX}_${IPA_ARCH}.initramfs" ]]; then |  | ||||||
|       export "${kernel_var}"="file://${IMAGE_CACHE_PREFIX}_${IPA_ARCH}.kernel" |  | ||||||
|       export "${ramdisk_var}"="file://${IMAGE_CACHE_PREFIX}_${IPA_ARCH}.initramfs" |  | ||||||
|     fi |  | ||||||
|     DEPLOY_KERNEL_BY_ARCH+="${!kernel_var:+${IPA_ARCH}:${!kernel_var},}" |  | ||||||
|     DEPLOY_RAMDISK_BY_ARCH+="${!ramdisk_var:+${IPA_ARCH}:${!ramdisk_var},}" |  | ||||||
| done |  | ||||||
| if [[ -n "${DEPLOY_KERNEL_BY_ARCH}" ]] && [[ -n "${DEPLOY_RAMDISK_BY_ARCH}" ]]; then |  | ||||||
|     export DEPLOY_KERNEL_BY_ARCH="${DEPLOY_KERNEL_BY_ARCH%?}" |  | ||||||
|     export DEPLOY_RAMDISK_BY_ARCH="${DEPLOY_RAMDISK_BY_ARCH%?}" |  | ||||||
| fi | fi | ||||||
|  |  | ||||||
| if [[ -f "${IRONIC_CONF_DIR}/ironic.conf" ]]; then | if [[ -f "${IRONIC_CONF_DIR}/ironic.conf" ]]; then | ||||||
| @@ -118,13 +87,6 @@ if [[ -f "${IRONIC_CONF_DIR}/ironic.conf" ]]; then | |||||||
|     cp "${IRONIC_CONF_DIR}/ironic.conf" "${IRONIC_CONF_DIR}/ironic.conf.orig" |     cp "${IRONIC_CONF_DIR}/ironic.conf" "${IRONIC_CONF_DIR}/ironic.conf.orig" | ||||||
| fi | fi | ||||||
|  |  | ||||||
| BOOTLOADER_BY_ARCH="" |  | ||||||
| for bootloader in /templates/uefi_esp_*.img; do |  | ||||||
|     BOOTLOADER_ARCH="$(basename "${bootloader#/templates/uefi_esp_}" .img)" |  | ||||||
|     BOOTLOADER_BY_ARCH+="${BOOTLOADER_ARCH}:file://${bootloader}," |  | ||||||
| done |  | ||||||
| export BOOTLOADER_BY_ARCH="${BOOTLOADER_BY_ARCH%?}" |  | ||||||
|  |  | ||||||
| # oslo.config also supports Config Opts From Environment, log them to stdout | # oslo.config also supports Config Opts From Environment, log them to stdout | ||||||
| echo 'Options set from Environment variables' | echo 'Options set from Environment variables' | ||||||
| env | grep "^OS_" || true | env | grep "^OS_" || true | ||||||
|   | |||||||
| @@ -37,6 +37,7 @@ export INSPECTOR_EXTRA_ARGS | |||||||
|  |  | ||||||
| # Copy files to shared mount | # Copy files to shared mount | ||||||
| render_j2_config /tmp/inspector.ipxe.j2 /shared/html/inspector.ipxe | render_j2_config /tmp/inspector.ipxe.j2 /shared/html/inspector.ipxe | ||||||
|  | cp /tmp/uefi_esp*.img /shared/html/ | ||||||
| # cp -r /etc/httpd/* "${HTTPD_DIR}" | # cp -r /etc/httpd/* "${HTTPD_DIR}" | ||||||
| if [[ -f "${HTTPD_CONF_DIR}/httpd.conf" ]]; then | if [[ -f "${HTTPD_CONF_DIR}/httpd.conf" ]]; then | ||||||
|     mv "${HTTPD_CONF_DIR}/httpd.conf" "${HTTPD_CONF_DIR}/httpd.conf.example" |     mv "${HTTPD_CONF_DIR}/httpd.conf" "${HTTPD_CONF_DIR}/httpd.conf.example" | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 | # SPDX-License-Identifier: Apache-2.0 | ||||||
| #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader:3.0.10 | #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader:3.0.8 | ||||||
| #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader:3.0.10-%RELEASE% | #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader:3.0.8-%RELEASE% | ||||||
| ARG SLE_VERSION | ARG SLE_VERSION | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | ||||||
|  |  | ||||||
| @@ -18,11 +18,11 @@ FROM micro AS final | |||||||
| 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 Based Ironic IPA Downloader Container Image" | LABEL org.opencontainers.image.title="SLE Based Ironic IPA Downloader Container Image" | ||||||
| LABEL org.opencontainers.image.description="ironic-ipa-downloader based on the SLE Base Container Image." | LABEL org.opencontainers.image.description="ironic-ipa-downloader based on the SLE Base Container Image." | ||||||
| LABEL org.opencontainers.image.version="3.0.10" | LABEL org.opencontainers.image.version="3.0.8" | ||||||
| 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%%ironic-ipa-downloader:3.0.10-%RELEASE%" | LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%ironic-ipa-downloader:3.0.8-%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" | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 | # SPDX-License-Identifier: Apache-2.0 | ||||||
| #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader-aarch64:3.0.10 | #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader-aarch64:3.0.8 | ||||||
| #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader-aarch64:3.0.10-%RELEASE% | #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader-aarch64:3.0.8-%RELEASE% | ||||||
| ARG SLE_VERSION | ARG SLE_VERSION | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | ||||||
|  |  | ||||||
| @@ -18,11 +18,11 @@ FROM micro AS final | |||||||
| 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 Based Ironic IPA Downloader Container Image" | LABEL org.opencontainers.image.title="SLE Based Ironic IPA Downloader Container Image" | ||||||
| LABEL org.opencontainers.image.description="ironic-ipa-downloader based on the SLE Base Container Image." | LABEL org.opencontainers.image.description="ironic-ipa-downloader based on the SLE Base Container Image." | ||||||
| LABEL org.opencontainers.image.version="3.0.10" | LABEL org.opencontainers.image.version="3.0.8" | ||||||
| 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%%ironic-ipa-downloader:3.0.10-%RELEASE%" | LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%ironic-ipa-downloader:3.0.8-%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" | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 | # SPDX-License-Identifier: Apache-2.0 | ||||||
| #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader-x86_64:3.0.10 | #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader-x86_64:3.0.8 | ||||||
| #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader-x86_64:3.0.10-%RELEASE% | #!BuildTag: %%IMG_PREFIX%%ironic-ipa-downloader-x86_64:3.0.8-%RELEASE% | ||||||
| ARG SLE_VERSION | ARG SLE_VERSION | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | ||||||
|  |  | ||||||
| @@ -18,11 +18,11 @@ FROM micro AS final | |||||||
| 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 Based Ironic IPA Downloader Container Image" | LABEL org.opencontainers.image.title="SLE Based Ironic IPA Downloader Container Image" | ||||||
| LABEL org.opencontainers.image.description="ironic-ipa-downloader based on the SLE Base Container Image." | LABEL org.opencontainers.image.description="ironic-ipa-downloader based on the SLE Base Container Image." | ||||||
| LABEL org.opencontainers.image.version="3.0.10" | LABEL org.opencontainers.image.version="3.0.8" | ||||||
| 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%%ironic-ipa-downloader:3.0.10-%RELEASE%" | LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%ironic-ipa-downloader:3.0.8-%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" | ||||||
|   | |||||||
| @@ -29,12 +29,13 @@ if [ -z "${IPA_BASEURI}" ]; then | |||||||
|   # SLES BASED IPA - ironic-ipa-ramdisk-x86_64 and ironic-ipa-ramdisk-aarch64 packages |   # SLES BASED IPA - ironic-ipa-ramdisk-x86_64 and ironic-ipa-ramdisk-aarch64 packages | ||||||
|   mkdir -p /shared/html/images |   mkdir -p /shared/html/images | ||||||
|   if [ -f ${IMAGES_BASE_PATH}/initrd-x86_64.zst ]; then |   if [ -f ${IMAGES_BASE_PATH}/initrd-x86_64.zst ]; then | ||||||
|     cp ${IMAGES_BASE_PATH}/initrd-x86_64.zst /shared/html/images/ironic-python-agent_x86_64.initramfs |     cp ${IMAGES_BASE_PATH}/initrd-x86_64.zst /shared/html/images/ironic-python-agent-x86_64.initramfs | ||||||
|     cp ${IMAGES_BASE_PATH}/openstack-ironic-image.x86_64*.kernel /shared/html/images/ironic-python-agent_x86_64.kernel |     cp ${IMAGES_BASE_PATH}/openstack-ironic-image.x86_64*.kernel /shared/html/images/ironic-python-agent-x86_64.kernel | ||||||
|   fi |   fi | ||||||
|  |   # Use arm64 as destination for iPXE compatibility | ||||||
|   if [ -f ${IMAGES_BASE_PATH}/initrd-aarch64.zst ]; then |   if [ -f ${IMAGES_BASE_PATH}/initrd-aarch64.zst ]; then | ||||||
|     cp ${IMAGES_BASE_PATH}/initrd-aarch64.zst /shared/html/images/ironic-python-agent_aarch64.initramfs |     cp ${IMAGES_BASE_PATH}/initrd-aarch64.zst /shared/html/images/ironic-python-agent-arm64.initramfs | ||||||
|     cp ${IMAGES_BASE_PATH}/openstack-ironic-image.aarch64*.kernel /shared/html/images/ironic-python-agent_aarch64.kernel |     cp ${IMAGES_BASE_PATH}/openstack-ironic-image.aarch64*.kernel /shared/html/images/ironic-python-agent-arm64.kernel | ||||||
|   fi |   fi | ||||||
|  |  | ||||||
|   cp /tmp/images.sha256 /shared/images.sha256 |   cp /tmp/images.sha256 /shared/images.sha256 | ||||||
| @@ -86,8 +87,8 @@ else | |||||||
|       chmod 755 "$TMPDIR" |       chmod 755 "$TMPDIR" | ||||||
|       mv "$TMPDIR" "$FILENAME-$ETAG" |       mv "$TMPDIR" "$FILENAME-$ETAG" | ||||||
|       ln -sf "$FILENAME-$ETAG/$FFILENAME.headers" "$FFILENAME.headers" |       ln -sf "$FILENAME-$ETAG/$FFILENAME.headers" "$FFILENAME.headers" | ||||||
|       ln -sf "$FILENAME-$ETAG/$FILENAME.initramfs" "${FILENAME}_${ARCH,,}.initramfs" |       ln -sf "$FILENAME-$ETAG/$FILENAME.initramfs" "$FILENAME-${ARCH,,}.initramfs" | ||||||
|       ln -sf "$FILENAME-$ETAG/$FILENAME.kernel" "${FILENAME}_${ARCH,,}.kernel" |       ln -sf "$FILENAME-$ETAG/$FILENAME.kernel" "$FILENAME-${ARCH,,}.kernel" | ||||||
|        |        | ||||||
|       IMAGE_CHANGED=1 |       IMAGE_CHANGED=1 | ||||||
|   else |   else | ||||||
| @@ -99,7 +100,7 @@ if [ "${CERTS_CHANGED:-0}" = "1" ] || [ "${IMAGE_CHANGED:-0}" = "1" ]; then | |||||||
|   mkdir -p /tmp/ca/tmp-initrd && cd /tmp/ca/tmp-initrd |   mkdir -p /tmp/ca/tmp-initrd && cd /tmp/ca/tmp-initrd | ||||||
|   mkdir -p etc/ironic-python-agent.d/ca-certs |   mkdir -p etc/ironic-python-agent.d/ca-certs | ||||||
|   cp /tmp/ironic-certificates/* etc/ironic-python-agent.d/ca-certs/ |   cp /tmp/ironic-certificates/* etc/ironic-python-agent.d/ca-certs/ | ||||||
|   for initramfs in /shared/html/images/ironic-python-agent_*.initramfs; do |   for initramfs in /shared/html/images/ironic-python-agent-*.initramfs; do | ||||||
|     find . | cpio -o -H newc --reproducible | zstd -c >> "${initramfs}" |     find . | cpio -o -H newc --reproducible | zstd -c >> "${initramfs}" | ||||||
|   done |   done | ||||||
|   cp /tmp/certificates.sha256 /shared/certificates.sha256 |   cp /tmp/certificates.sha256 /shared/certificates.sha256 | ||||||
|   | |||||||
| @@ -16,7 +16,7 @@ baseSetupBuildDay | |||||||
| #========================================== | #========================================== | ||||||
| # remove unneded kernel files | # remove unneded kernel files | ||||||
| #------------------------------------------ | #------------------------------------------ | ||||||
| #suseStripKernel | suseStripKernel | ||||||
| baseStripLocales en_US.utf-8 C.utf8 | baseStripLocales en_US.utf-8 C.utf8 | ||||||
|  |  | ||||||
| #====================================== | #====================================== | ||||||
|   | |||||||
| @@ -28,6 +28,68 @@ | |||||||
|       <source path="dir:///.build.binaries"/> |       <source path="dir:///.build.binaries"/> | ||||||
|     </repository> |     </repository> | ||||||
|  |  | ||||||
|  |     <drivers> | ||||||
|  |         <file name="crypto/*"/> | ||||||
|  |         <file name="drivers/acpi/*"/> | ||||||
|  |         <file name="drivers/acpi/dock.ko"/> | ||||||
|  |         <file name="drivers/ata/*"/> | ||||||
|  |         <file name="drivers/block/brd.ko"/> | ||||||
|  |         <file name="drivers/block/cciss.ko"/> | ||||||
|  |         <file name="drivers/block/loop.ko"/> | ||||||
|  |         <file name="drivers/block/virtio_blk.ko"/> | ||||||
|  |         <file name="drivers/cdrom/*"/> | ||||||
|  |         <file name="drivers/char/hw_random/virtio-rng.ko"/> | ||||||
|  |         <file name="drivers/char/lp.ko"/> | ||||||
|  |         <file name="drivers/char/ipmi/*"/> | ||||||
|  |         <file name="drivers/firmware/iscsi_ibft.ko"/> | ||||||
|  |         <file name="drivers/firmware/edd.ko"/> | ||||||
|  |         <file name="drivers/gpu/drm/*"/> | ||||||
|  |         <file name="drivers/hid/*"/> | ||||||
|  |         <file name="drivers/hv/*"/> | ||||||
|  |         <file name="drivers/hwmon/*"/> | ||||||
|  |         <file name="drivers/ide/*"/> | ||||||
|  |         <file name="drivers/input/keyboard/*"/> | ||||||
|  |         <file name="drivers/input/mouse/*"/> | ||||||
|  |         <file name="drivers/md/*"/> | ||||||
|  |         <file name="drivers/message/fusion/*"/> | ||||||
|  |         <file name="drivers/misc/hpilo.ko"/> | ||||||
|  |         <file name="drivers/net/*"/> | ||||||
|  |         <file name="drivers/parport/*"/> | ||||||
|  |         <file name="drivers/scsi/*"/> | ||||||
|  |         <file name="drivers/staging/hv/*"/> | ||||||
|  |         <file name="drivers/target/*"/> | ||||||
|  |         <file name="drivers/thermal/*"/> | ||||||
|  |         <file name="drivers/usb/*"/> | ||||||
|  |         <file name="drivers/virtio/*"/> | ||||||
|  |         <file name="fs/binfmt_aout.ko"/> | ||||||
|  |         <file name="fs/binfmt_misc.ko"/> | ||||||
|  |         <file name="fs/overlayfs/*"/> | ||||||
|  |         <file name="fs/btrfs/*"/> | ||||||
|  |         <file name="fs/exportfs/*"/> | ||||||
|  |         <file name="fs/ext4/*"/> | ||||||
|  |         <file name="fs/fat/*"/> | ||||||
|  |         <file name="fs/fuse/*"/> | ||||||
|  |         <file name="fs/hfs/*"/> | ||||||
|  |         <file name="fs/jbd2/*"/> | ||||||
|  |         <file name="fs/nfs/*"/> | ||||||
|  |         <file name="fs/mbcache.ko"/> | ||||||
|  |         <file name="fs/nls/nls_cp437.ko"/> | ||||||
|  |         <file name="fs/nls/nls_iso8859-1.ko"/> | ||||||
|  |         <file name="fs/nls/nls_utf8.ko"/> | ||||||
|  |         <file name="fs/quota_v1.ko"/> | ||||||
|  |         <file name="fs/quota_v2.ko"/> | ||||||
|  |         <file name="fs/squashfs/*"/> | ||||||
|  |         <file name="fs/udf/*"/> | ||||||
|  |         <file name="fs/vfat/*"/> | ||||||
|  |         <file name="fs/xfs/*"/> | ||||||
|  |         <file name="fs/isofs/*"/> | ||||||
|  |         <file name="lib/crc-t10dif.ko"/> | ||||||
|  |         <file name="lib/crc16.ko"/> | ||||||
|  |         <file name="lib/libcrc32c.ko"/> | ||||||
|  |         <file name="lib/zlib_deflate/zlib_deflate.ko"/> | ||||||
|  |         <file name="net/packet/*"/> | ||||||
|  |     </drivers> | ||||||
|  |  | ||||||
|     <packages type="delete"> |     <packages type="delete"> | ||||||
|         <package name="gpg2"/> |         <package name="gpg2"/> | ||||||
|         <package name="libcairo2"/> |         <package name="libcairo2"/> | ||||||
|   | |||||||
| @@ -19,7 +19,7 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| Name:           ironic-ipa-ramdisk | Name:           ironic-ipa-ramdisk | ||||||
| Version:        3.0.8 | Version:        3.0.7 | ||||||
| Release:        0 | Release:        0 | ||||||
| Summary:        Kernel and ramdisk image for OpenStack Ironic | Summary:        Kernel and ramdisk image for OpenStack Ironic | ||||||
| License:        SUSE-EULA | License:        SUSE-EULA | ||||||
|   | |||||||
| @@ -1,8 +1,8 @@ | |||||||
| #!BuildTag: %%IMG_PREFIX%%kiwi-builder:10.2.29.0-%RELEASE% | #!BuildTag: %%IMG_PREFIX%%kiwi-builder:10.2.12.0-%RELEASE% | ||||||
| #!BuildTag: %%IMG_PREFIX%%kiwi-builder:10.2.29.0 | #!BuildTag: %%IMG_PREFIX%%kiwi-builder:10.2.12.0 | ||||||
|  |  | ||||||
| # Base image version, should match the tag above | # Base image version, should match the tag above | ||||||
| ARG KIWIVERSION="10.2.29" | ARG KIWIVERSION="10.2.12" | ||||||
| FROM registry.suse.com/bci/kiwi:${KIWIVERSION} | FROM registry.suse.com/bci/kiwi:${KIWIVERSION} | ||||||
| ARG KIWIVERSION | ARG KIWIVERSION | ||||||
|  |  | ||||||
|   | |||||||
| @@ -30,13 +30,16 @@ | |||||||
|         <profile name="x86-self_install" description="Raw disk for x86_64 - uEFI" arch="x86_64"> |         <profile name="x86-self_install" description="Raw disk for x86_64 - uEFI" arch="x86_64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile name="aarch64" description="Raw disk for aarch64 - uEFI" arch="aarch64"> | ||||||
|  |             <requires profile="bootloader"/> | ||||||
|  |         </profile> | ||||||
|         <profile name="aarch64-self_install" description="Raw disk for aarch64" arch="aarch64"> |         <profile name="aarch64-self_install" description="Raw disk for aarch64" arch="aarch64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="aarch64-rt" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> |         <profile name="aarch64-rt" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="aarch64-rt-encrypted" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> |         <profile name="aarch64-rt-rpi" description="Raw disk for aarch64 with RT kernel on Raspberry Pi" arch="aarch64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="aarch64-rt-self_install" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> |         <profile name="aarch64-rt-self_install" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> | ||||||
| @@ -57,15 +60,6 @@ | |||||||
|         <profile name="rpi" description="Raw disk for Raspberry Pi" arch="aarch64"> |         <profile name="rpi" description="Raw disk for Raspberry Pi" arch="aarch64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="rpi-self_install" description="Raw disk for Raspberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="aarch64" description="Raw disk for Raspberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="aarch64-encrypted" description="Raw disk for Raspberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="x86-qcow" description="qcow2 for x86_64 - uEFI" arch="x86_64"> |         <profile name="x86-qcow" description="qcow2 for x86_64 - uEFI" arch="x86_64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
| @@ -96,15 +90,6 @@ | |||||||
|         <profile name="ppc64le-4096ss-self_install" description="Raw disk for PPc64 - 4096 sector size" arch="ppc64le"> |         <profile name="ppc64le-4096ss-self_install" description="Raw disk for PPc64 - 4096 sector size" arch="ppc64le"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="aarch64-64kb" description="Build 64K page size aarch64 images" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="aarch64-64kb-encrypted" description="Build 64K page size aarch64 images" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="aarch64-64kb-self_install" description="Build 64K page size aarch64 images" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <!-- Images (flavor + platform) --> |         <!-- Images (flavor + platform) --> | ||||||
|         <profile name="Default" description="SL Micro with Podman and KVM as raw image with uEFI boot" arch="x86_64"> |         <profile name="Default" description="SL Micro with Podman and KVM as raw image with uEFI boot" arch="x86_64"> | ||||||
|             <requires profile="full"/> |             <requires profile="full"/> | ||||||
| @@ -169,10 +154,18 @@ | |||||||
|             <requires profile="full"/> |             <requires profile="full"/> | ||||||
|             <requires profile="aarch64"/> |             <requires profile="aarch64"/> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile name="Default-RPi" description="SL Micro with Podman and KVM as raw image with uEFI boot" arch="aarch64"> | ||||||
|  |             <requires profile="full"/> | ||||||
|  |             <requires profile="rpi"/> | ||||||
|  |         </profile> | ||||||
|         <profile name="Base" description="SL Micro with Podman as raw image with uEFI boot" arch="aarch64"> |         <profile name="Base" description="SL Micro with Podman as raw image with uEFI boot" arch="aarch64"> | ||||||
|             <requires profile="container-host"/> |             <requires profile="container-host"/> | ||||||
|             <requires profile="aarch64"/> |             <requires profile="aarch64"/> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile name="Base-RPi" description="SL Micro with Podman as raw image with uEFI boot" arch="aarch64"> | ||||||
|  |             <requires profile="container-host"/> | ||||||
|  |             <requires profile="rpi"/> | ||||||
|  |         </profile> | ||||||
|         <profile name="Base-RT" description="SL Micro with Podman as raw image with uEFI boot" arch="x86_64"> |         <profile name="Base-RT" description="SL Micro with Podman as raw image with uEFI boot" arch="x86_64"> | ||||||
|             <requires profile="container-host"/> |             <requires profile="container-host"/> | ||||||
|             <requires profile="x86-rt"/> |             <requires profile="x86-rt"/> | ||||||
| @@ -186,6 +179,10 @@ | |||||||
|             <requires profile="container-host"/> |             <requires profile="container-host"/> | ||||||
|             <requires profile="aarch64-rt"/> |             <requires profile="aarch64-rt"/> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile name="Base-RT-RPi" description="SL Micro with Podman as raw image with uEFI boot" arch="aarch64"> | ||||||
|  |             <requires profile="container-host"/> | ||||||
|  |             <requires profile="aarch64-rt-rpi"/> | ||||||
|  |         </profile> | ||||||
|         <profile name="Base-RT-SelfInstall" description="SL Micro with Podman as raw image with uEFI boot - SelfInstall" arch="aarch64"> |         <profile name="Base-RT-SelfInstall" description="SL Micro with Podman as raw image with uEFI boot - SelfInstall" arch="aarch64"> | ||||||
|             <requires profile="container-host"/> |             <requires profile="container-host"/> | ||||||
|             <requires profile="aarch64-rt-self_install"/> |             <requires profile="aarch64-rt-self_install"/> | ||||||
| @@ -280,42 +277,10 @@ | |||||||
|             <requires profile="ppc64le-4096ss-self_install"/> |             <requires profile="ppc64le-4096ss-self_install"/> | ||||||
|             <requires profile="self_install"/> |             <requires profile="self_install"/> | ||||||
|         </profile> |         </profile> | ||||||
| 	<profile name="Default-64kb-SelfInstall" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="aarch64-64kb-self_install"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Base-64kb-SelfInstall" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="container-host"/> |  | ||||||
|             <requires profile="aarch64-64kb-self_install"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Default-64kb" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="aarch64-64kb"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Base-64kb" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="container-host"/> |  | ||||||
|             <requires profile="aarch64-64kb"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Default-64kb-encrypted" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="aarch64-64kb-encrypted"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Base-64kb-encrypted" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="container-host"/> |  | ||||||
|             <requires profile="aarch64-64kb-encrypted"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="RaspberryPi-SelfInstall" description="SL Micro for Rapsberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="rpi-self_install"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="RaspberryPi" description="SL Micro for Raspberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="rpi"/> |  | ||||||
|         </profile> |  | ||||||
|     </profiles> |     </profiles> | ||||||
|  |  | ||||||
|     <preferences profiles="x86-encrypted,x86-rt-encrypted"> |     <preferences profiles="x86-encrypted,x86-rt-encrypted"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -326,8 +291,7 @@ | |||||||
|             initrd_system="dracut" |             initrd_system="dracut" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 rd.kiwi.oem.luks.reencrypt rd.kiwi.oem.luks.reencrypt_randompass quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -359,7 +323,7 @@ | |||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="x86,x86-rt"> |     <preferences profiles="x86,x86-rt"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -370,8 +334,7 @@ | |||||||
|             initrd_system="dracut" |             initrd_system="dracut" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -396,7 +359,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="x86-self_install,x86-rt-self_install"> |     <preferences profiles="x86-self_install,x86-rt-self_install"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -411,8 +374,7 @@ | |||||||
|             installboot="install" |             installboot="install" | ||||||
|             install_continue_on_timeout="false" |             install_continue_on_timeout="false" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -435,8 +397,9 @@ | |||||||
|             </systemdisk> |             </systemdisk> | ||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="aarch64,aarch64-rt,aarch64-64kb"> |  | ||||||
|         <version>6.2</version> |     <preferences profiles="rpi,aarch64-rt-rpi"> | ||||||
|  |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -451,96 +414,11 @@ | |||||||
|             install_continue_on_timeout="false" |             install_continue_on_timeout="false" | ||||||
|             fsmountoptions="noatime" |             fsmountoptions="noatime" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |  | ||||||
|             devicepersistency="by-uuid" |  | ||||||
|             btrfs_root_is_snapshot="true" |  | ||||||
|             btrfs_root_is_readonly_snapshot="true" |  | ||||||
|             btrfs_quota_groups="false" |  | ||||||
|             disk_start_sector="8192" |  | ||||||
|         > |  | ||||||
|             <bootloader name="grub2" console="gfxterm" timeout="3" /> |  | ||||||
|             <systemdisk> |  | ||||||
|                 <volume name="home"/> |  | ||||||
|                 <volume name="root"/> |  | ||||||
|                 <!-- on tmpfs jsc#SMO-2                <volume name="tmp"/> --> |  | ||||||
|                 <volume name="opt"/> |  | ||||||
|                 <volume name="srv"/> |  | ||||||
|                 <volume name="boot/grub2/arm64-efi" mountpoint="boot/grub2/arm64-efi"/> |  | ||||||
|                 <volume name="boot/writable"/> |  | ||||||
|                 <volume name="usr/local"/> |  | ||||||
|                 <volume name="var" copy_on_write="false"/> |  | ||||||
|             </systemdisk> |  | ||||||
|         </type> |  | ||||||
|     </preferences> |  | ||||||
|     <preferences profiles="aarch64-encrypted,aarch64-rt-encrypted,aarch64-64kb-encrypted"> |  | ||||||
|         <version>6.2</version> |  | ||||||
|         <packagemanager>zypper</packagemanager> |  | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |  | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |  | ||||||
|         <rpm-excludedocs>true</rpm-excludedocs> |  | ||||||
|         <locale>en_US</locale> |  | ||||||
|         <type |  | ||||||
|             image="oem" |  | ||||||
|             initrd_system="dracut" |  | ||||||
|             installiso="true" |  | ||||||
|             filesystem="btrfs" |  | ||||||
|             installboot="install" |  | ||||||
|             install_continue_on_timeout="false" |  | ||||||
|             fsmountoptions="noatime" |  | ||||||
|             firmware="uefi" |  | ||||||
|             efipartsize="512" |  | ||||||
|             kernelcmdline="security=selinux selinux=1 rd.kiwi.oem.luks.reencrypt rd.kiwi.oem.luks.reencrypt_randompass quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |  | ||||||
|             devicepersistency="by-uuid" |  | ||||||
|             btrfs_root_is_snapshot="true" |  | ||||||
|             btrfs_root_is_readonly_snapshot="true" |  | ||||||
|             btrfs_quota_groups="false" |  | ||||||
|             disk_start_sector="8192" |  | ||||||
|             luks_version="luks2" |  | ||||||
|             luks="1234" |  | ||||||
| 	    luks_randomize="false" |  | ||||||
| 	    luks_pbkdf="pbkdf2" |  | ||||||
|         > |  | ||||||
|             <luksformat> |  | ||||||
|                 <option name="--cipher" value="aes-xts-plain64"/> |  | ||||||
|             </luksformat> |  | ||||||
|             <bootloader name="grub2" console="gfxterm" use_disk_password="true" timeout="3" /> |  | ||||||
|             <systemdisk> |  | ||||||
|                 <volume name="home"/> |  | ||||||
|                 <volume name="root"/> |  | ||||||
|                 <!-- on tmpfs jsc#SMO-2                <volume name="tmp"/> --> |  | ||||||
|                 <volume name="opt"/> |  | ||||||
|                 <volume name="srv"/> |  | ||||||
|                 <volume name="boot/grub2/arm64-efi" mountpoint="boot/grub2/arm64-efi"/> |  | ||||||
|                 <volume name="boot/writable"/> |  | ||||||
|                 <volume name="usr/local"/> |  | ||||||
|                 <volume name="var" copy_on_write="false"/> |  | ||||||
|             </systemdisk> |  | ||||||
|         </type> |  | ||||||
|     </preferences> |  | ||||||
|     <preferences profiles="rpi"> |  | ||||||
|         <version>6.2</version> |  | ||||||
|         <packagemanager>zypper</packagemanager> |  | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |  | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |  | ||||||
|         <rpm-excludedocs>true</rpm-excludedocs> |  | ||||||
|         <locale>en_US</locale> |  | ||||||
|         <type |  | ||||||
|             image="oem" |  | ||||||
|             initrd_system="dracut" |  | ||||||
|             installiso="true" |  | ||||||
|             filesystem="btrfs" |  | ||||||
|             installboot="install" |  | ||||||
|             install_continue_on_timeout="false" |  | ||||||
|             fsmountoptions="noatime" |  | ||||||
|             firmware="uefi" |  | ||||||
|             efipartsize="512" |  | ||||||
|             kernelcmdline="console=ttyS0,115200n8 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
|             btrfs_root_is_snapshot="true" |             btrfs_root_is_snapshot="true" | ||||||
|  |             efipartsize="128" | ||||||
|             editbootinstall="editbootinstall_rpi.sh" |             editbootinstall="editbootinstall_rpi.sh" | ||||||
|             btrfs_root_is_readonly_snapshot="true" |             btrfs_root_is_readonly_snapshot="true" | ||||||
|             btrfs_quota_groups="false" |             btrfs_quota_groups="false" | ||||||
| @@ -560,8 +438,9 @@ | |||||||
|             </systemdisk> |             </systemdisk> | ||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="aarch64-self_install,aarch64-rt-self_install,aarch64-64kb-self_install"> |  | ||||||
|         <version>6.2</version> |     <preferences profiles="aarch64,aarch64-rt"> | ||||||
|  |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -571,20 +450,19 @@ | |||||||
|             image="oem" |             image="oem" | ||||||
|             initrd_system="dracut" |             initrd_system="dracut" | ||||||
|             installiso="true" |             installiso="true" | ||||||
|             installpxe="true" |  | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             installboot="install" |             installboot="install" | ||||||
|             install_continue_on_timeout="false" |             install_continue_on_timeout="false" | ||||||
|  |             fsmountoptions="noatime" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |  | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
|             btrfs_root_is_snapshot="true" |             btrfs_root_is_snapshot="true" | ||||||
|  |             efipartsize="128" | ||||||
|             btrfs_root_is_readonly_snapshot="true" |             btrfs_root_is_readonly_snapshot="true" | ||||||
|             btrfs_quota_groups="true" |             btrfs_quota_groups="false" | ||||||
|             disk_start_sector="8192" |             disk_start_sector="4096" | ||||||
|         > |         > | ||||||
|             <bootloader name="grub2" console="gfxterm" timeout="3" /> |             <bootloader name="grub2" console="gfxterm" timeout="3" /> | ||||||
|             <systemdisk> |             <systemdisk> | ||||||
| @@ -600,8 +478,8 @@ | |||||||
|             </systemdisk> |             </systemdisk> | ||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="rpi-self_install"> |     <preferences profiles="aarch64-self_install,aarch64-rt-self_install"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -616,14 +494,13 @@ | |||||||
|             installboot="install" |             installboot="install" | ||||||
|             install_continue_on_timeout="false" |             install_continue_on_timeout="false" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             efipartsize="128" | ||||||
|             kernelcmdline="console=ttyS0,115200n8 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1" |             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
|             btrfs_root_is_snapshot="true" |             btrfs_root_is_snapshot="true" | ||||||
|             btrfs_root_is_readonly_snapshot="true" |             btrfs_root_is_readonly_snapshot="true" | ||||||
|             editbootinstall="editbootinstall_rpi.sh" |  | ||||||
|             btrfs_quota_groups="true" |             btrfs_quota_groups="true" | ||||||
|             disk_start_sector="4096" |             disk_start_sector="4096" | ||||||
|         > |         > | ||||||
| @@ -643,7 +520,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="s390-kvm"> |     <preferences profiles="s390-kvm"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -681,7 +558,7 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
|     <preferences profiles="s390-dasd"> |     <preferences profiles="s390-dasd"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -719,7 +596,7 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
|     <preferences profiles="s390-fba"> |     <preferences profiles="s390-fba"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -754,7 +631,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="s390-fcp"> |     <preferences profiles="s390-fcp"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -793,7 +670,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="x86-vmware"> |     <preferences profiles="x86-vmware"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -804,7 +681,6 @@ | |||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             format="vmdk" |             format="vmdk" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -825,11 +701,11 @@ | |||||||
|                 <volume name="var" copy_on_write="false"/> |                 <volume name="var" copy_on_write="false"/> | ||||||
|             </systemdisk> |             </systemdisk> | ||||||
|             <size unit="G">24</size> |             <size unit="G">24</size> | ||||||
|             <machine memory="1024" HWversion="17" guestOS="suse-64"/> |             <machine memory="1024" HWversion="10" guestOS="suse-64"/> | ||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="x86-qcow"> |     <preferences profiles="x86-qcow"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -840,8 +716,7 @@ | |||||||
|             format="qcow2" |             format="qcow2" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=qemu" | ||||||
|             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=qemu" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -867,7 +742,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="aarch64-qcow"> |     <preferences profiles="aarch64-qcow"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -878,8 +753,8 @@ | |||||||
|             format="qcow2" |             format="qcow2" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             efipartsize="128" | ||||||
|             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=qemu" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=qemu" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -902,7 +777,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="ppc64le-512ss"> |     <preferences profiles="ppc64le-512ss"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -913,7 +788,7 @@ | |||||||
|             image="oem" |             image="oem" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="ofw" |             firmware="ofw" | ||||||
|             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=metal" |             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=metal" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -935,7 +810,7 @@ | |||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="ppc64le-4096ss"> |     <preferences profiles="ppc64le-4096ss"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -949,7 +824,7 @@ | |||||||
|             target_blocksize="4096" |             target_blocksize="4096" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="ofw" |             firmware="ofw" | ||||||
|             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=metal" |             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=metal" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -972,7 +847,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="ppc64le-512ss-self_install"> |     <preferences profiles="ppc64le-512ss-self_install"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -985,7 +860,7 @@ | |||||||
|             installpxe="true" |             installpxe="true" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="ofw" |             firmware="ofw" | ||||||
|             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet ignition.platform.id=metal" |             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet net.ifnames=0 ignition.platform.id=metal" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -1012,7 +887,7 @@ | |||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="ppc64le-4096ss-self_install"> |     <preferences profiles="ppc64le-4096ss-self_install"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -1028,7 +903,7 @@ | |||||||
|             target_blocksize="4096" |             target_blocksize="4096" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="ofw" |             firmware="ofw" | ||||||
|             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=metal" |             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=metal" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -1061,17 +936,20 @@ | |||||||
|     </repository> |     </repository> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="full"> |     <packages type="image" profiles="full"> | ||||||
|         <namedCollection name="transactional_base"/> |         <namedCollection name="base_transactional"/> | ||||||
|         <package name="patterns-base-transactional_base"/> |         <package name="patterns-base-transactional"/> | ||||||
|  |         <namedCollection name="salt_minion"/> | ||||||
|  | 	<package name="patterns-base-salt_minion"/> | ||||||
|         <namedCollection name="kvm_host"/> |         <namedCollection name="kvm_host"/> | ||||||
| 	<package name="patterns-micro-kvm_host"/> | 	<package name="patterns-base-kvm_host"/> | ||||||
| 	<package name="lzop"/> | 	<package name="lzop"/> | ||||||
|         <namedCollection name="container_runtime_podman"/> |         <namedCollection name="container_runtime_podman"/> | ||||||
|         <package name="patterns-container-runtime_podman"/> |         <package name="patterns-container-runtime_podman"/> | ||||||
|         <namedCollection name="cockpit"/> |         <namedCollection name="cockpit"/> | ||||||
|         <package name="patterns-cockpit"/> |         <package name="patterns-base-cockpit"/> | ||||||
|         <namedCollection name="selinux"/> |         <namedCollection name="selinux"/> | ||||||
|         <package name="patterns-base-selinux"/> |         <package name="patterns-base-selinux"/> | ||||||
|  |         <package name="policycoreutils-python-utils"/> | ||||||
|         <package name="suseconnect-ng"/> |         <package name="suseconnect-ng"/> | ||||||
|         <package name="SL-Micro-release"/> |         <package name="SL-Micro-release"/> | ||||||
|         <package name="grub2-branding-SLE" arch="x86_64,aarch64"/> |         <package name="grub2-branding-SLE" arch="x86_64,aarch64"/> | ||||||
| @@ -1081,7 +959,7 @@ | |||||||
| 	<package name="libpwquality-tools"/> | 	<package name="libpwquality-tools"/> | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="x86-encrypted,x86-rt-encrypted,aarch64-encrypted,aarch64-rt-encrypted,aarch64-64kb-encrypted"> |     <packages type="image" profiles="x86-encrypted,x86-rt-encrypted"> | ||||||
|         <!-- full disk encryption stuff --> |         <!-- full disk encryption stuff --> | ||||||
|         <package name="device-mapper"/> |         <package name="device-mapper"/> | ||||||
|         <package name="cryptsetup"/> |         <package name="cryptsetup"/> | ||||||
| @@ -1094,12 +972,13 @@ | |||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="container-host"> |     <packages type="image" profiles="container-host"> | ||||||
|         <namedCollection name="transactional_base"/> |         <namedCollection name="base_transactional"/> | ||||||
|         <package name="patterns-base-transactional_base"/> |         <package name="patterns-base-transactional"/> | ||||||
|         <namedCollection name="container_runtime_podman"/> |         <namedCollection name="container_runtime_podman"/> | ||||||
|         <package name="patterns-container-runtime_podman"/> |         <package name="patterns-container-runtime_podman"/> | ||||||
|         <namedCollection name="selinux"/> |         <namedCollection name="selinux"/> | ||||||
|         <package name="patterns-base-selinux"/> |         <package name="patterns-base-selinux"/> | ||||||
|  |         <package name="policycoreutils-python-utils"/> | ||||||
|         <package name="suseconnect-ng"/> |         <package name="suseconnect-ng"/> | ||||||
|         <package name="SL-Micro-release"/> |         <package name="SL-Micro-release"/> | ||||||
|         <package name="grub2-branding-SLE" arch="x86_64,aarch64"/> |         <package name="grub2-branding-SLE" arch="x86_64,aarch64"/> | ||||||
| @@ -1123,16 +1002,16 @@ | |||||||
| 	<package name="jeos-firstboot"/> | 	<package name="jeos-firstboot"/> | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="x86-qcow,x86-vmware,aarch64-qcow,ppc64le-512ss,ppc64le-4096ss,s390-dasd,s390-fcp"> |     <packages type="image" profiles="x86-qcow,x86-vmware,aarch64-qcow"> | ||||||
|         <package name="cloud-init"/> |         <package name="cloud-init"/> | ||||||
|         <package name="cloud-init-config-suse"/> |         <package name="cloud-init-config-suse"/> | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image"> |     <packages type="image"> | ||||||
|         <namedCollection name="transactional_base"/> |         <namedCollection name="base_transactional"/> | ||||||
|         <package name="patterns-base-transactional_base"/> |         <package name="patterns-base-transactional"/> | ||||||
|         <namedCollection name="hardware"/> |         <namedCollection name="hardware"/> | ||||||
|         <package name="patterns-micro-hardware"/> |         <package name="patterns-base-hardware"/> | ||||||
|         <package name="grub2"/> |         <package name="grub2"/> | ||||||
|         <package name="glibc-locale-base"/> |         <package name="glibc-locale-base"/> | ||||||
|         <package name="ca-certificates"/> |         <package name="ca-certificates"/> | ||||||
| @@ -1154,7 +1033,6 @@ | |||||||
| 	<!-- FIXME does not build without control file which is obsolete | 	<!-- FIXME does not build without control file which is obsolete | ||||||
| 	<package name="live-add-yast-repos"/> --> | 	<package name="live-add-yast-repos"/> --> | ||||||
| 	<package name="parted"/> <!-- seems missing to deploy the image --> | 	<package name="parted"/> <!-- seems missing to deploy the image --> | ||||||
| 	<package name="iptables"/> <!-- needed by RKE2 --> |  | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="bootloader"> |     <packages type="image" profiles="bootloader"> | ||||||
| @@ -1171,15 +1049,11 @@ | |||||||
| 	    <package name="kpartx" arch="s390x"/>--> <!-- previous releases picked it always, now kiwi picks partx instead --> | 	    <package name="kpartx" arch="s390x"/>--> <!-- previous releases picked it always, now kiwi picks partx instead --> | ||||||
|     </packages> |     </packages> | ||||||
|     <!-- rpi kernel-default-base does not provide all necessary drivers --> |     <!-- rpi kernel-default-base does not provide all necessary drivers --> | ||||||
|     <packages type="image" profiles="aarch64,rpi,rpi-self_install,aarch64-self_install,x86,x86-encrypted,aarch64-encrypted,x86-legacy,x86-self_install,x86-vmware,x86-qcow,aarch64-qcow,s390-kvm,s390-dasd,s390-fba,s390-fcp,ppc64le-512ss,ppc64le-4096ss,ppc64le-512ss-self_install,ppc64le-4096ss-self_install"> |     <packages type="image" profiles="rpi,aarch64-self_install,x86,x86-encrypted,x86-legacy,x86-self_install,x86-vmware,x86-qcow,aarch64,aarch64-qcow,s390-kvm,s390-dasd,s390-fba,s390-fcp,ppc64le-512ss,ppc64le-4096ss,ppc64le-512ss-self_install,ppc64le-4096ss-self_install"> | ||||||
|         <package name="kernel-default"/> |         <package name="kernel-default"/> | ||||||
|         <package name="kernel-firmware-all"/> |         <package name="kernel-firmware-all"/> | ||||||
|     </packages> |     </packages> | ||||||
|     <packages type="image" profiles="aarch64-64kb,aarch64-64kb-encrypted,aarch64-64kb-self_install"> |     <packages type="image" profiles="x86-rt,x86-rt-self_install,x86-rt-encrypted,aarch64-rt,aarch64-rt-rpi,aarch64-rt-self_install"> | ||||||
|         <package name="kernel-64kb"/> |  | ||||||
|         <package name="kernel-firmware-all"/> |  | ||||||
|     </packages> |  | ||||||
|     <packages type="image" profiles="x86-rt,x86-rt-self_install,x86-rt-encrypted,aarch64-rt,aarch64-rt-encrypted,aarch64-rt-self_install"> |  | ||||||
|         <package name="kernel-rt"/> |         <package name="kernel-rt"/> | ||||||
|         <package name="kernel-firmware-all"/> |         <package name="kernel-firmware-all"/> | ||||||
| 	<!-- FIXME intentionally removed from ALP code stream | 	<!-- FIXME intentionally removed from ALP code stream | ||||||
| @@ -1194,18 +1068,17 @@ | |||||||
|     <packages type="image" profiles="s390-fcp"> |     <packages type="image" profiles="s390-fcp"> | ||||||
|         <package name="multipath-tools"/> |         <package name="multipath-tools"/> | ||||||
|     </packages> |     </packages> | ||||||
|     <!-- "oem" images uses kiwi for partition/fs resize (-repart) and SelfInstall images in addition for deployment (-dump). --> |     <packages type="image" profiles="x86,x86-encrypted,x86-rt-encrypted,x86-self_install,x86-legacy,x86-vmware,x86-rt,x86-rt-self_install,x86-qcow,aarch64,aarch64-qcow,rpi,aarch64-self_install,aarch64-rt,aarch64-rt-rpi,aarch64-rt-self_install,ppc64le-512ss,ppc64le-4096ss,ppc64le-512ss-self_install,ppc64le-4096ss-self_install"> | ||||||
|     <packages type="image" profiles="x86,x86-encrypted,x86-rt-encrypted,x86-self_install,x86-legacy,x86-vmware,x86-rt,x86-rt-self_install,x86-qcow,aarch64-qcow,aarch64,aarch64-encrypted,aarch64-64kb-encrypted,rpi,rpi-self_install,aarch64-self_install,aarch64-64kb,aarch64-64kb-self_install,aarch64-rt,aarch64-rt-self_install,ppc64le-512ss,ppc64le-4096ss,ppc64le-512ss-self_install,ppc64le-4096ss-self_install"> |  | ||||||
|         <package name="dracut-kiwi-oem-repart"/> |         <package name="dracut-kiwi-oem-repart"/> | ||||||
|         <package name="dracut-kiwi-oem-dump"/> |         <package name="dracut-kiwi-oem-dump"/> | ||||||
|     </packages> |     </packages> | ||||||
|     <packages type="image" profiles="rpi,rpi-self_install"> |     <packages type="image" profiles="rpi,aarch64-self_install,aarch64-rt,aarch64-rt-rpi,aarch64-rt-self_install"> | ||||||
|         <package name="raspberrypi-firmware" arch="aarch64"/> |         <package name="raspberrypi-firmware" arch="aarch64"/> | ||||||
|         <package name="raspberrypi-firmware-config" arch="aarch64"/> |         <package name="raspberrypi-firmware-config" arch="aarch64"/> | ||||||
|         <package name="raspberrypi-firmware-dt" arch="aarch64"/> |         <package name="raspberrypi-firmware-dt" arch="aarch64"/> | ||||||
|         <package name="u-boot-rpiarm64" arch="aarch64"/> |         <package name="u-boot-rpiarm64" arch="aarch64"/> | ||||||
|     </packages> |     </packages> | ||||||
|     <packages type="image" profiles="aarch64,rpi,rpi-self_install,aarch64-self_install,aarch64-rt,aarch64-64kb,aarch64-rt-self_install,aarch64-encrypted,aarch64-rt-encrypted,aarchte-64kb-encrypted"> |     <packages type="image" profiles="rpi,aarch64-self_install,aarch64-rt,aarch64-rt-self_install"> | ||||||
|         <package name="dracut-kiwi-oem-repart"/> |         <package name="dracut-kiwi-oem-repart"/> | ||||||
|         <package name="bcm43xx-firmware"/> |         <package name="bcm43xx-firmware"/> | ||||||
|         <package name="wireless-regdb"/> |         <package name="wireless-regdb"/> | ||||||
| @@ -1231,12 +1104,12 @@ | |||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <!-- jsc#PED-8599 --> |     <!-- jsc#PED-8599 --> | ||||||
|     <packages type="image" profiles="Base,Base-encrypted,Base-RT,Base-RT-encrypted,Base-fba,Base-dasd,Base-fcp,Base-512,Base-4096,Default,Default-encrypted,Default-fba,Default-dasd,Default-fcp,Default-512,Default-4096,Base-64kb-encrypted,Default-64kb-encrypted"> |     <packages type="image" profiles="Base,Base-encrypted,Base-RT,Base-RT-encrypted,Base-fba,Base-dasd,Base-fcp,Base-512,Base-4096,Default,Default-encrypted,Default-fba,Default-dasd,Default-fcp,Default-512,Default-4096"> | ||||||
|         <package name="usbguard"/> |         <package name="usbguard"/> | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <!-- jsc#PED-8788 --> |     <!-- jsc#PED-8788 --> | ||||||
|     <packages type="image" profiles="Base-RT,Base-RT-encrypted,x86-rt-encrypted,x86-rt,x86-rt-self_install,aarch64-rt,aarch64-rt-encrypted,aarch64-rt-self_install"> |     <packages type="image" profiles="Base-RT,Base-RT-encrypted,x86-rt-encrypted,x86-rt,x86-rt-self_install,aarch64-rt,aarch64-rt-self_install"> | ||||||
|         <package name="stalld"/> |         <package name="stalld"/> | ||||||
|     </packages> |     </packages> | ||||||
| </image> | </image> | ||||||
|   | |||||||
| @@ -30,13 +30,16 @@ | |||||||
|         <profile name="x86-self_install" description="Raw disk for x86_64 - uEFI" arch="x86_64"> |         <profile name="x86-self_install" description="Raw disk for x86_64 - uEFI" arch="x86_64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile name="aarch64" description="Raw disk for aarch64 - uEFI" arch="aarch64"> | ||||||
|  |             <requires profile="bootloader"/> | ||||||
|  |         </profile> | ||||||
|         <profile name="aarch64-self_install" description="Raw disk for aarch64" arch="aarch64"> |         <profile name="aarch64-self_install" description="Raw disk for aarch64" arch="aarch64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="aarch64-rt" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> |         <profile name="aarch64-rt" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="aarch64-rt-encrypted" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> |         <profile name="aarch64-rt-rpi" description="Raw disk for aarch64 with RT kernel on Raspberry Pi" arch="aarch64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="aarch64-rt-self_install" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> |         <profile name="aarch64-rt-self_install" description="Raw disk for aarch64 with RT kernel" arch="aarch64"> | ||||||
| @@ -57,15 +60,6 @@ | |||||||
|         <profile name="rpi" description="Raw disk for Raspberry Pi" arch="aarch64"> |         <profile name="rpi" description="Raw disk for Raspberry Pi" arch="aarch64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="rpi-self_install" description="Raw disk for Raspberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="aarch64" description="Raw disk for Raspberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="aarch64-encrypted" description="Raw disk for Raspberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="x86-qcow" description="qcow2 for x86_64 - uEFI" arch="x86_64"> |         <profile name="x86-qcow" description="qcow2 for x86_64 - uEFI" arch="x86_64"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
| @@ -96,15 +90,6 @@ | |||||||
|         <profile name="ppc64le-4096ss-self_install" description="Raw disk for PPc64 - 4096 sector size" arch="ppc64le"> |         <profile name="ppc64le-4096ss-self_install" description="Raw disk for PPc64 - 4096 sector size" arch="ppc64le"> | ||||||
|             <requires profile="bootloader"/> |             <requires profile="bootloader"/> | ||||||
|         </profile> |         </profile> | ||||||
|         <profile name="aarch64-64kb" description="Build 64K page size aarch64 images" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="aarch64-64kb-encrypted" description="Build 64K page size aarch64 images" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <profile name="aarch64-64kb-self_install" description="Build 64K page size aarch64 images" arch="aarch64"> |  | ||||||
|             <requires profile="bootloader"/> |  | ||||||
|         </profile> |  | ||||||
|         <!-- Images (flavor + platform) --> |         <!-- Images (flavor + platform) --> | ||||||
|         <profile name="Default" description="SL Micro with Podman and KVM as raw image with uEFI boot" arch="x86_64"> |         <profile name="Default" description="SL Micro with Podman and KVM as raw image with uEFI boot" arch="x86_64"> | ||||||
|             <requires profile="full"/> |             <requires profile="full"/> | ||||||
| @@ -169,10 +154,18 @@ | |||||||
|             <requires profile="full"/> |             <requires profile="full"/> | ||||||
|             <requires profile="aarch64"/> |             <requires profile="aarch64"/> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile name="Default-RPi" description="SL Micro with Podman and KVM as raw image with uEFI boot" arch="aarch64"> | ||||||
|  |             <requires profile="full"/> | ||||||
|  |             <requires profile="rpi"/> | ||||||
|  |         </profile> | ||||||
|         <profile name="Base" description="SL Micro with Podman as raw image with uEFI boot" arch="aarch64"> |         <profile name="Base" description="SL Micro with Podman as raw image with uEFI boot" arch="aarch64"> | ||||||
|             <requires profile="container-host"/> |             <requires profile="container-host"/> | ||||||
|             <requires profile="aarch64"/> |             <requires profile="aarch64"/> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile name="Base-RPi" description="SL Micro with Podman as raw image with uEFI boot" arch="aarch64"> | ||||||
|  |             <requires profile="container-host"/> | ||||||
|  |             <requires profile="rpi"/> | ||||||
|  |         </profile> | ||||||
|         <profile name="Base-RT" description="SL Micro with Podman as raw image with uEFI boot" arch="x86_64"> |         <profile name="Base-RT" description="SL Micro with Podman as raw image with uEFI boot" arch="x86_64"> | ||||||
|             <requires profile="container-host"/> |             <requires profile="container-host"/> | ||||||
|             <requires profile="x86-rt"/> |             <requires profile="x86-rt"/> | ||||||
| @@ -186,6 +179,10 @@ | |||||||
|             <requires profile="container-host"/> |             <requires profile="container-host"/> | ||||||
|             <requires profile="aarch64-rt"/> |             <requires profile="aarch64-rt"/> | ||||||
|         </profile> |         </profile> | ||||||
|  |         <profile name="Base-RT-RPi" description="SL Micro with Podman as raw image with uEFI boot" arch="aarch64"> | ||||||
|  |             <requires profile="container-host"/> | ||||||
|  |             <requires profile="aarch64-rt-rpi"/> | ||||||
|  |         </profile> | ||||||
|         <profile name="Base-RT-SelfInstall" description="SL Micro with Podman as raw image with uEFI boot - SelfInstall" arch="aarch64"> |         <profile name="Base-RT-SelfInstall" description="SL Micro with Podman as raw image with uEFI boot - SelfInstall" arch="aarch64"> | ||||||
|             <requires profile="container-host"/> |             <requires profile="container-host"/> | ||||||
|             <requires profile="aarch64-rt-self_install"/> |             <requires profile="aarch64-rt-self_install"/> | ||||||
| @@ -280,42 +277,10 @@ | |||||||
|             <requires profile="ppc64le-4096ss-self_install"/> |             <requires profile="ppc64le-4096ss-self_install"/> | ||||||
|             <requires profile="self_install"/> |             <requires profile="self_install"/> | ||||||
|         </profile> |         </profile> | ||||||
| 	<profile name="Default-64kb-SelfInstall" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="aarch64-64kb-self_install"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Base-64kb-SelfInstall" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="container-host"/> |  | ||||||
|             <requires profile="aarch64-64kb-self_install"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Default-64kb" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="aarch64-64kb"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Base-64kb" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="container-host"/> |  | ||||||
|             <requires profile="aarch64-64kb"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Default-64kb-encrypted" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="aarch64-64kb-encrypted"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="Base-64kb-encrypted" description="SL Micro with 64K page size images" arch="aarch64"> |  | ||||||
|             <requires profile="container-host"/> |  | ||||||
|             <requires profile="aarch64-64kb-encrypted"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="RaspberryPi-SelfInstall" description="SL Micro for Rapsberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="rpi-self_install"/> |  | ||||||
|         </profile> |  | ||||||
| 	<profile name="RaspberryPi" description="SL Micro for Raspberry Pi" arch="aarch64"> |  | ||||||
|             <requires profile="full"/> |  | ||||||
|             <requires profile="rpi"/> |  | ||||||
|         </profile> |  | ||||||
|     </profiles> |     </profiles> | ||||||
|  |  | ||||||
|     <preferences profiles="x86-encrypted,x86-rt-encrypted"> |     <preferences profiles="x86-encrypted,x86-rt-encrypted"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -326,8 +291,7 @@ | |||||||
|             initrd_system="dracut" |             initrd_system="dracut" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 rd.kiwi.oem.luks.reencrypt rd.kiwi.oem.luks.reencrypt_randompass quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -361,7 +325,7 @@ | |||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="x86,x86-rt"> |     <preferences profiles="x86,x86-rt"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -372,8 +336,7 @@ | |||||||
|             initrd_system="dracut" |             initrd_system="dracut" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -400,7 +363,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="x86-self_install,x86-rt-self_install"> |     <preferences profiles="x86-self_install,x86-rt-self_install"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -415,8 +378,7 @@ | |||||||
|             installboot="install" |             installboot="install" | ||||||
|             install_continue_on_timeout="false" |             install_continue_on_timeout="false" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -441,8 +403,9 @@ | |||||||
|             </systemdisk> |             </systemdisk> | ||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="aarch64,aarch64-rt,aarch64-64kb"> |  | ||||||
|         <version>6.2</version> |     <preferences profiles="rpi,aarch64-rt-rpi"> | ||||||
|  |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -457,98 +420,11 @@ | |||||||
|             install_continue_on_timeout="false" |             install_continue_on_timeout="false" | ||||||
|             fsmountoptions="noatime" |             fsmountoptions="noatime" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |  | ||||||
|             devicepersistency="by-uuid" |  | ||||||
|             btrfs_root_is_snapshot="true" |  | ||||||
|             btrfs_root_is_readonly_snapshot="true" |  | ||||||
|             btrfs_quota_groups="false" |  | ||||||
|             disk_start_sector="8192" |  | ||||||
|             target_blocksize="4096" |  | ||||||
|         > |  | ||||||
|             <bootloader name="grub2" console="gfxterm" timeout="3" /> |  | ||||||
|             <systemdisk> |  | ||||||
|                 <volume name="home"/> |  | ||||||
|                 <volume name="root"/> |  | ||||||
|                 <!-- on tmpfs jsc#SMO-2                <volume name="tmp"/> --> |  | ||||||
|                 <volume name="opt"/> |  | ||||||
|                 <volume name="srv"/> |  | ||||||
|                 <volume name="boot/grub2/arm64-efi" mountpoint="boot/grub2/arm64-efi"/> |  | ||||||
|                 <volume name="boot/writable"/> |  | ||||||
|                 <volume name="usr/local"/> |  | ||||||
|                 <volume name="var" copy_on_write="false"/> |  | ||||||
|             </systemdisk> |  | ||||||
|         </type> |  | ||||||
|     </preferences> |  | ||||||
|     <preferences profiles="aarch64-encrypted,aarch64-rt-encrypted,aarch64-64kb-encrypted"> |  | ||||||
|         <version>6.2</version> |  | ||||||
|         <packagemanager>zypper</packagemanager> |  | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |  | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |  | ||||||
|         <rpm-excludedocs>true</rpm-excludedocs> |  | ||||||
|         <locale>en_US</locale> |  | ||||||
|         <type |  | ||||||
|             image="oem" |  | ||||||
|             initrd_system="dracut" |  | ||||||
|             installiso="true" |  | ||||||
|             filesystem="btrfs" |  | ||||||
|             installboot="install" |  | ||||||
|             install_continue_on_timeout="false" |  | ||||||
|             fsmountoptions="noatime" |  | ||||||
|             firmware="uefi" |  | ||||||
|             efipartsize="512" |  | ||||||
|             kernelcmdline="security=selinux selinux=1 rd.kiwi.oem.luks.reencrypt rd.kiwi.oem.luks.reencrypt_randompass quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |  | ||||||
|             devicepersistency="by-uuid" |  | ||||||
|             btrfs_root_is_snapshot="true" |  | ||||||
|             btrfs_root_is_readonly_snapshot="true" |  | ||||||
|             btrfs_quota_groups="false" |  | ||||||
|             disk_start_sector="8192" |  | ||||||
|             luks_version="luks2" |  | ||||||
|             luks="1234" |  | ||||||
| 	    luks_randomize="false" |  | ||||||
| 	    luks_pbkdf="pbkdf2" |  | ||||||
|             target_blocksize="4096" |  | ||||||
|         > |  | ||||||
|             <luksformat> |  | ||||||
|                 <option name="--cipher" value="aes-xts-plain64"/> |  | ||||||
|             </luksformat> |  | ||||||
|             <bootloader name="grub2" console="gfxterm" use_disk_password="true" timeout="3" /> |  | ||||||
|             <systemdisk> |  | ||||||
|                 <volume name="home"/> |  | ||||||
|                 <volume name="root"/> |  | ||||||
|                 <!-- on tmpfs jsc#SMO-2                <volume name="tmp"/> --> |  | ||||||
|                 <volume name="opt"/> |  | ||||||
|                 <volume name="srv"/> |  | ||||||
|                 <volume name="boot/grub2/arm64-efi" mountpoint="boot/grub2/arm64-efi"/> |  | ||||||
|                 <volume name="boot/writable"/> |  | ||||||
|                 <volume name="usr/local"/> |  | ||||||
|                 <volume name="var" copy_on_write="false"/> |  | ||||||
|             </systemdisk> |  | ||||||
|         </type> |  | ||||||
|     </preferences> |  | ||||||
|     <preferences profiles="rpi"> |  | ||||||
|         <version>6.2</version> |  | ||||||
|         <packagemanager>zypper</packagemanager> |  | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |  | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |  | ||||||
|         <rpm-excludedocs>true</rpm-excludedocs> |  | ||||||
|         <locale>en_US</locale> |  | ||||||
|         <type |  | ||||||
|             image="oem" |  | ||||||
|             initrd_system="dracut" |  | ||||||
|             installiso="true" |  | ||||||
|             filesystem="btrfs" |  | ||||||
|             installboot="install" |  | ||||||
|             install_continue_on_timeout="false" |  | ||||||
|             fsmountoptions="noatime" |  | ||||||
|             firmware="uefi" |  | ||||||
|             efipartsize="512" |  | ||||||
|             kernelcmdline="console=ttyS0,115200n8 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
|             btrfs_root_is_snapshot="true" |             btrfs_root_is_snapshot="true" | ||||||
|  |             efipartsize="128" | ||||||
|             editbootinstall="editbootinstall_rpi.sh" |             editbootinstall="editbootinstall_rpi.sh" | ||||||
|             btrfs_root_is_readonly_snapshot="true" |             btrfs_root_is_readonly_snapshot="true" | ||||||
|             btrfs_quota_groups="false" |             btrfs_quota_groups="false" | ||||||
| @@ -568,8 +444,9 @@ | |||||||
|             </systemdisk> |             </systemdisk> | ||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="aarch64-self_install,aarch64-rt-self_install,aarch64-64kb-self_install"> |  | ||||||
|         <version>6.2</version> |     <preferences profiles="aarch64,aarch64-rt"> | ||||||
|  |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -579,21 +456,19 @@ | |||||||
|             image="oem" |             image="oem" | ||||||
|             initrd_system="dracut" |             initrd_system="dracut" | ||||||
|             installiso="true" |             installiso="true" | ||||||
|             installpxe="true" |  | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             installboot="install" |             installboot="install" | ||||||
|             install_continue_on_timeout="false" |             install_continue_on_timeout="false" | ||||||
|  |             fsmountoptions="noatime" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |  | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
|             btrfs_root_is_snapshot="true" |             btrfs_root_is_snapshot="true" | ||||||
|  |             efipartsize="128" | ||||||
|             btrfs_root_is_readonly_snapshot="true" |             btrfs_root_is_readonly_snapshot="true" | ||||||
|             btrfs_quota_groups="true" |             btrfs_quota_groups="false" | ||||||
|             disk_start_sector="8192" |             disk_start_sector="4096" | ||||||
|             target_blocksize="4096" |  | ||||||
|         > |         > | ||||||
|             <bootloader name="grub2" console="gfxterm" timeout="3" /> |             <bootloader name="grub2" console="gfxterm" timeout="3" /> | ||||||
|             <systemdisk> |             <systemdisk> | ||||||
| @@ -609,8 +484,8 @@ | |||||||
|             </systemdisk> |             </systemdisk> | ||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="rpi-self_install"> |     <preferences profiles="aarch64-self_install,aarch64-rt-self_install"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -625,14 +500,13 @@ | |||||||
|             installboot="install" |             installboot="install" | ||||||
|             install_continue_on_timeout="false" |             install_continue_on_timeout="false" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             efipartsize="128" | ||||||
|             kernelcmdline="console=ttyS0,115200n8 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1" |             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
|             btrfs_root_is_snapshot="true" |             btrfs_root_is_snapshot="true" | ||||||
|             btrfs_root_is_readonly_snapshot="true" |             btrfs_root_is_readonly_snapshot="true" | ||||||
|             editbootinstall="editbootinstall_rpi.sh" |  | ||||||
|             btrfs_quota_groups="true" |             btrfs_quota_groups="true" | ||||||
|             disk_start_sector="4096" |             disk_start_sector="4096" | ||||||
|         > |         > | ||||||
| @@ -652,7 +526,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="s390-kvm"> |     <preferences profiles="s390-kvm"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -690,7 +564,7 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
|     <preferences profiles="s390-dasd"> |     <preferences profiles="s390-dasd"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -728,7 +602,7 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
|     <preferences profiles="s390-fba"> |     <preferences profiles="s390-fba"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -763,7 +637,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="s390-fcp"> |     <preferences profiles="s390-fcp"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -802,7 +676,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="x86-vmware"> |     <preferences profiles="x86-vmware"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -813,7 +687,6 @@ | |||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             format="vmdk" |             format="vmdk" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -834,11 +707,11 @@ | |||||||
|                 <volume name="var" copy_on_write="false"/> |                 <volume name="var" copy_on_write="false"/> | ||||||
|             </systemdisk> |             </systemdisk> | ||||||
|             <size unit="G">24</size> |             <size unit="G">24</size> | ||||||
|             <machine memory="1024" HWversion="17" guestOS="suse-64"/> |             <machine memory="1024" HWversion="10" guestOS="suse-64"/> | ||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="x86-qcow"> |     <preferences profiles="x86-qcow"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -849,14 +722,15 @@ | |||||||
|             format="qcow2" |             format="qcow2" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=qemu" | ||||||
|             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=qemu" |  | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
|             btrfs_root_is_snapshot="true" |             btrfs_root_is_snapshot="true" | ||||||
|             btrfs_root_is_readonly_snapshot="true" |             btrfs_root_is_readonly_snapshot="true" | ||||||
|             btrfs_quota_groups="true" |             btrfs_quota_groups="true" | ||||||
|  |             target_blocksize="4096" | ||||||
|  |             efipartsize="200" | ||||||
|         > |         > | ||||||
|             <bootloader name="grub2" console="gfxterm" timeout="3" /> |             <bootloader name="grub2" console="gfxterm" timeout="3" /> | ||||||
|             <systemdisk> |             <systemdisk> | ||||||
| @@ -876,7 +750,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="aarch64-qcow"> |     <preferences profiles="aarch64-qcow"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -887,8 +761,8 @@ | |||||||
|             format="qcow2" |             format="qcow2" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="uefi" |             firmware="uefi" | ||||||
|             efipartsize="512" |             efipartsize="128" | ||||||
|             kernelcmdline="security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=qemu" |             kernelcmdline="console=ttyS0,115200 console=tty0 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=qemu" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -911,7 +785,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="ppc64le-512ss"> |     <preferences profiles="ppc64le-512ss"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -922,7 +796,7 @@ | |||||||
|             image="oem" |             image="oem" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="ofw" |             firmware="ofw" | ||||||
|             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=metal" |             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=metal" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -944,7 +818,7 @@ | |||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="ppc64le-4096ss"> |     <preferences profiles="ppc64le-4096ss"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -958,7 +832,7 @@ | |||||||
|             target_blocksize="4096" |             target_blocksize="4096" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="ofw" |             firmware="ofw" | ||||||
|             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=metal" |             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=metal" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -981,7 +855,7 @@ | |||||||
|     </preferences> |     </preferences> | ||||||
|  |  | ||||||
|     <preferences profiles="ppc64le-512ss-self_install"> |     <preferences profiles="ppc64le-512ss-self_install"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -994,7 +868,7 @@ | |||||||
|             installpxe="true" |             installpxe="true" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="ofw" |             firmware="ofw" | ||||||
|             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet ignition.platform.id=metal" |             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet net.ifnames=0 ignition.platform.id=metal" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -1021,7 +895,7 @@ | |||||||
|         </type> |         </type> | ||||||
|     </preferences> |     </preferences> | ||||||
|     <preferences profiles="ppc64le-4096ss-self_install"> |     <preferences profiles="ppc64le-4096ss-self_install"> | ||||||
|         <version>6.2</version> |         <version>6.1</version> | ||||||
|         <packagemanager>zypper</packagemanager> |         <packagemanager>zypper</packagemanager> | ||||||
|         <bootsplash-theme>SLE</bootsplash-theme> |         <bootsplash-theme>SLE</bootsplash-theme> | ||||||
|         <bootloader-theme>SLE</bootloader-theme> |         <bootloader-theme>SLE</bootloader-theme> | ||||||
| @@ -1037,7 +911,7 @@ | |||||||
|             target_blocksize="4096" |             target_blocksize="4096" | ||||||
|             filesystem="btrfs" |             filesystem="btrfs" | ||||||
|             firmware="ofw" |             firmware="ofw" | ||||||
|             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 ignition.platform.id=metal" |             kernelcmdline="console=hvc0,115200 security=selinux selinux=1 quiet systemd.show_status=1 net.ifnames=0 ignition.platform.id=metal" | ||||||
|             bootpartition="false" |             bootpartition="false" | ||||||
|             bootkernel="custom" |             bootkernel="custom" | ||||||
|             devicepersistency="by-uuid" |             devicepersistency="by-uuid" | ||||||
| @@ -1070,17 +944,20 @@ | |||||||
|     </repository> |     </repository> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="full"> |     <packages type="image" profiles="full"> | ||||||
|         <namedCollection name="transactional_base"/> |         <namedCollection name="base_transactional"/> | ||||||
|         <package name="patterns-base-transactional_base"/> |         <package name="patterns-base-transactional"/> | ||||||
|  |         <namedCollection name="salt_minion"/> | ||||||
|  | 	<package name="patterns-base-salt_minion"/> | ||||||
|         <namedCollection name="kvm_host"/> |         <namedCollection name="kvm_host"/> | ||||||
| 	<package name="patterns-micro-kvm_host"/> | 	<package name="patterns-base-kvm_host"/> | ||||||
| 	<package name="lzop"/> | 	<package name="lzop"/> | ||||||
|         <namedCollection name="container_runtime_podman"/> |         <namedCollection name="container_runtime_podman"/> | ||||||
|         <package name="patterns-container-runtime_podman"/> |         <package name="patterns-container-runtime_podman"/> | ||||||
|         <namedCollection name="cockpit"/> |         <namedCollection name="cockpit"/> | ||||||
|         <package name="patterns-cockpit"/> |         <package name="patterns-base-cockpit"/> | ||||||
|         <namedCollection name="selinux"/> |         <namedCollection name="selinux"/> | ||||||
|         <package name="patterns-base-selinux"/> |         <package name="patterns-base-selinux"/> | ||||||
|  |         <package name="policycoreutils-python-utils"/> | ||||||
|         <package name="suseconnect-ng"/> |         <package name="suseconnect-ng"/> | ||||||
|         <package name="SL-Micro-release"/> |         <package name="SL-Micro-release"/> | ||||||
|         <package name="grub2-branding-SLE" arch="x86_64,aarch64"/> |         <package name="grub2-branding-SLE" arch="x86_64,aarch64"/> | ||||||
| @@ -1090,7 +967,7 @@ | |||||||
| 	<package name="libpwquality-tools"/> | 	<package name="libpwquality-tools"/> | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="x86-encrypted,x86-rt-encrypted,aarch64-encrypted,aarch64-rt-encrypted,aarch64-64kb-encrypted"> |     <packages type="image" profiles="x86-encrypted,x86-rt-encrypted"> | ||||||
|         <!-- full disk encryption stuff --> |         <!-- full disk encryption stuff --> | ||||||
|         <package name="device-mapper"/> |         <package name="device-mapper"/> | ||||||
|         <package name="cryptsetup"/> |         <package name="cryptsetup"/> | ||||||
| @@ -1103,12 +980,13 @@ | |||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="container-host"> |     <packages type="image" profiles="container-host"> | ||||||
|         <namedCollection name="transactional_base"/> |         <namedCollection name="base_transactional"/> | ||||||
|         <package name="patterns-base-transactional_base"/> |         <package name="patterns-base-transactional"/> | ||||||
|         <namedCollection name="container_runtime_podman"/> |         <namedCollection name="container_runtime_podman"/> | ||||||
|         <package name="patterns-container-runtime_podman"/> |         <package name="patterns-container-runtime_podman"/> | ||||||
|         <namedCollection name="selinux"/> |         <namedCollection name="selinux"/> | ||||||
|         <package name="patterns-base-selinux"/> |         <package name="patterns-base-selinux"/> | ||||||
|  |         <package name="policycoreutils-python-utils"/> | ||||||
|         <package name="suseconnect-ng"/> |         <package name="suseconnect-ng"/> | ||||||
|         <package name="SL-Micro-release"/> |         <package name="SL-Micro-release"/> | ||||||
|         <package name="grub2-branding-SLE" arch="x86_64,aarch64"/> |         <package name="grub2-branding-SLE" arch="x86_64,aarch64"/> | ||||||
| @@ -1132,16 +1010,16 @@ | |||||||
| 	<package name="jeos-firstboot"/> | 	<package name="jeos-firstboot"/> | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="x86-qcow,x86-vmware,aarch64-qcow,ppc64le-512ss,ppc64le-4096ss,s390-dasd,s390-fcp"> |     <packages type="image" profiles="x86-qcow,x86-vmware,aarch64-qcow"> | ||||||
|         <package name="cloud-init"/> |         <package name="cloud-init"/> | ||||||
|         <package name="cloud-init-config-suse"/> |         <package name="cloud-init-config-suse"/> | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image"> |     <packages type="image"> | ||||||
|         <namedCollection name="transactional_base"/> |         <namedCollection name="base_transactional"/> | ||||||
|         <package name="patterns-base-transactional_base"/> |         <package name="patterns-base-transactional"/> | ||||||
|         <namedCollection name="hardware"/> |         <namedCollection name="hardware"/> | ||||||
|         <package name="patterns-micro-hardware"/> |         <package name="patterns-base-hardware"/> | ||||||
|         <package name="grub2"/> |         <package name="grub2"/> | ||||||
|         <package name="glibc-locale-base"/> |         <package name="glibc-locale-base"/> | ||||||
|         <package name="ca-certificates"/> |         <package name="ca-certificates"/> | ||||||
| @@ -1163,7 +1041,6 @@ | |||||||
| 	<!-- FIXME does not build without control file which is obsolete | 	<!-- FIXME does not build without control file which is obsolete | ||||||
| 	<package name="live-add-yast-repos"/> --> | 	<package name="live-add-yast-repos"/> --> | ||||||
| 	<package name="parted"/> <!-- seems missing to deploy the image --> | 	<package name="parted"/> <!-- seems missing to deploy the image --> | ||||||
| 	<package name="iptables"/> <!-- needed by RKE2 --> |  | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <packages type="image" profiles="bootloader"> |     <packages type="image" profiles="bootloader"> | ||||||
| @@ -1180,15 +1057,11 @@ | |||||||
| 	    <package name="kpartx" arch="s390x"/>--> <!-- previous releases picked it always, now kiwi picks partx instead --> | 	    <package name="kpartx" arch="s390x"/>--> <!-- previous releases picked it always, now kiwi picks partx instead --> | ||||||
|     </packages> |     </packages> | ||||||
|     <!-- rpi kernel-default-base does not provide all necessary drivers --> |     <!-- rpi kernel-default-base does not provide all necessary drivers --> | ||||||
|     <packages type="image" profiles="aarch64,rpi,rpi-self_install,aarch64-self_install,x86,x86-encrypted,aarch64-encrypted,x86-legacy,x86-self_install,x86-vmware,x86-qcow,aarch64-qcow,s390-kvm,s390-dasd,s390-fba,s390-fcp,ppc64le-512ss,ppc64le-4096ss,ppc64le-512ss-self_install,ppc64le-4096ss-self_install"> |     <packages type="image" profiles="rpi,aarch64-self_install,x86,x86-encrypted,x86-legacy,x86-self_install,x86-vmware,x86-qcow,aarch64,aarch64-qcow,s390-kvm,s390-dasd,s390-fba,s390-fcp,ppc64le-512ss,ppc64le-4096ss,ppc64le-512ss-self_install,ppc64le-4096ss-self_install"> | ||||||
|         <package name="kernel-default"/> |         <package name="kernel-default"/> | ||||||
|         <package name="kernel-firmware-all"/> |         <package name="kernel-firmware-all"/> | ||||||
|     </packages> |     </packages> | ||||||
|     <packages type="image" profiles="aarch64-64kb,aarch64-64kb-encrypted,aarch64-64kb-self_install"> |     <packages type="image" profiles="x86-rt,x86-rt-self_install,x86-rt-encrypted,aarch64-rt,aarch64-rt-rpi,aarch64-rt-self_install"> | ||||||
|         <package name="kernel-64kb"/> |  | ||||||
|         <package name="kernel-firmware-all"/> |  | ||||||
|     </packages> |  | ||||||
|     <packages type="image" profiles="x86-rt,x86-rt-self_install,x86-rt-encrypted,aarch64-rt,aarch64-rt-encrypted,aarch64-rt-self_install"> |  | ||||||
|         <package name="kernel-rt"/> |         <package name="kernel-rt"/> | ||||||
|         <package name="kernel-firmware-all"/> |         <package name="kernel-firmware-all"/> | ||||||
| 	<!-- FIXME intentionally removed from ALP code stream | 	<!-- FIXME intentionally removed from ALP code stream | ||||||
| @@ -1203,18 +1076,17 @@ | |||||||
|     <packages type="image" profiles="s390-fcp"> |     <packages type="image" profiles="s390-fcp"> | ||||||
|         <package name="multipath-tools"/> |         <package name="multipath-tools"/> | ||||||
|     </packages> |     </packages> | ||||||
|     <!-- "oem" images uses kiwi for partition/fs resize (-repart) and SelfInstall images in addition for deployment (-dump). --> |     <packages type="image" profiles="x86,x86-encrypted,x86-rt-encrypted,x86-self_install,x86-legacy,x86-vmware,x86-rt,x86-rt-self_install,x86-qcow,aarch64,aarch64-qcow,rpi,aarch64-self_install,aarch64-rt,aarch64-rt-rpi,aarch64-rt-self_install,ppc64le-512ss,ppc64le-4096ss,ppc64le-512ss-self_install,ppc64le-4096ss-self_install"> | ||||||
|     <packages type="image" profiles="x86,x86-encrypted,x86-rt-encrypted,x86-self_install,x86-legacy,x86-vmware,x86-rt,x86-rt-self_install,x86-qcow,aarch64-qcow,aarch64,aarch64-encrypted,aarch64-64kb-encrypted,rpi,rpi-self_install,aarch64-self_install,aarch64-64kb,aarch64-64kb-self_install,aarch64-rt,aarch64-rt-self_install,ppc64le-512ss,ppc64le-4096ss,ppc64le-512ss-self_install,ppc64le-4096ss-self_install"> |  | ||||||
|         <package name="dracut-kiwi-oem-repart"/> |         <package name="dracut-kiwi-oem-repart"/> | ||||||
|         <package name="dracut-kiwi-oem-dump"/> |         <package name="dracut-kiwi-oem-dump"/> | ||||||
|     </packages> |     </packages> | ||||||
|     <packages type="image" profiles="rpi,rpi-self_install"> |     <packages type="image" profiles="rpi,aarch64-self_install,aarch64-rt,aarch64-rt-rpi,aarch64-rt-self_install"> | ||||||
|         <package name="raspberrypi-firmware" arch="aarch64"/> |         <package name="raspberrypi-firmware" arch="aarch64"/> | ||||||
|         <package name="raspberrypi-firmware-config" arch="aarch64"/> |         <package name="raspberrypi-firmware-config" arch="aarch64"/> | ||||||
|         <package name="raspberrypi-firmware-dt" arch="aarch64"/> |         <package name="raspberrypi-firmware-dt" arch="aarch64"/> | ||||||
|         <package name="u-boot-rpiarm64" arch="aarch64"/> |         <package name="u-boot-rpiarm64" arch="aarch64"/> | ||||||
|     </packages> |     </packages> | ||||||
|     <packages type="image" profiles="aarch64,rpi,rpi-self_install,aarch64-self_install,aarch64-rt,aarch64-64kb,aarch64-rt-self_install,aarch64-encrypted,aarch64-rt-encrypted,aarchte-64kb-encrypted"> |     <packages type="image" profiles="rpi,aarch64-self_install,aarch64-rt,aarch64-rt-self_install"> | ||||||
|         <package name="dracut-kiwi-oem-repart"/> |         <package name="dracut-kiwi-oem-repart"/> | ||||||
|         <package name="bcm43xx-firmware"/> |         <package name="bcm43xx-firmware"/> | ||||||
|         <package name="wireless-regdb"/> |         <package name="wireless-regdb"/> | ||||||
| @@ -1240,12 +1112,12 @@ | |||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <!-- jsc#PED-8599 --> |     <!-- jsc#PED-8599 --> | ||||||
|     <packages type="image" profiles="Base,Base-encrypted,Base-RT,Base-RT-encrypted,Base-fba,Base-dasd,Base-fcp,Base-512,Base-4096,Default,Default-encrypted,Default-fba,Default-dasd,Default-fcp,Default-512,Default-4096,Base-64kb-encrypted,Default-64kb-encrypted"> |     <packages type="image" profiles="Base,Base-encrypted,Base-RT,Base-RT-encrypted,Base-fba,Base-dasd,Base-fcp,Base-512,Base-4096,Default,Default-encrypted,Default-fba,Default-dasd,Default-fcp,Default-512,Default-4096"> | ||||||
|         <package name="usbguard"/> |         <package name="usbguard"/> | ||||||
|     </packages> |     </packages> | ||||||
|  |  | ||||||
|     <!-- jsc#PED-8788 --> |     <!-- jsc#PED-8788 --> | ||||||
|     <packages type="image" profiles="Base-RT,Base-RT-encrypted,x86-rt-encrypted,x86-rt,x86-rt-self_install,aarch64-rt,aarch64-rt-encrypted,aarch64-rt-self_install"> |     <packages type="image" profiles="Base-RT,Base-RT-encrypted,x86-rt-encrypted,x86-rt,x86-rt-self_install,aarch64-rt,aarch64-rt-self_install"> | ||||||
|         <package name="stalld"/> |         <package name="stalld"/> | ||||||
|     </packages> |     </packages> | ||||||
| </image> | </image> | ||||||
|   | |||||||
| @@ -28,7 +28,7 @@ LARGEBLOCK=false | |||||||
| usage(){ | usage(){ | ||||||
|   cat <<-EOF |   cat <<-EOF | ||||||
|   ===================================== |   ===================================== | ||||||
|   SUSE Linux Micro 6.2 Kiwi SDK Builder |   SUSE Linux Micro 6.1 Kiwi SDK Builder | ||||||
|   ===================================== |   ===================================== | ||||||
|  |  | ||||||
|   Usage: ${0} [-p <profile>] [-b] |   Usage: ${0} [-p <profile>] [-b] | ||||||
| @@ -36,12 +36,13 @@ usage(){ | |||||||
|   Profile Options (-p): |   Profile Options (-p): | ||||||
|   * Default: RAW Disk Image with default packages (incl. Podman & KVM) |   * Default: RAW Disk Image with default packages (incl. Podman & KVM) | ||||||
|   * Default-SelfInstall: SelfInstall ISO with default packages |   * Default-SelfInstall: SelfInstall ISO with default packages | ||||||
|  |   * Default-RPi: RAW Disk Image for Raspberry Pi (aarch64 only with MBR) | ||||||
|   * Base: RAW Disk Image with reduced package set (no KVM) |   * Base: RAW Disk Image with reduced package set (no KVM) | ||||||
|   * Base-SelfInstall: SelfInstall ISO with reduced packages |   * Base-SelfInstall: SelfInstall ISO with reduced packages | ||||||
|   * Base-RT: RAW Disk Image with reduced packages and kernel-rt |   * Base-RT: RAW Disk Image with reduced packages and kernel-rt | ||||||
|   * Base-RT-SelfInstall: SelfInstall ISO with reduced packages and kernel-rt |   * Base-RT-SelfInstall: SelfInstall ISO with reduced packages and kernel-rt | ||||||
|   * RaspberryPi: RAW Disk Image for Raspberry Pi with default packages (aarch64 only with MBR) |   * Base-RT-RPi: RAW Disk image for Raspberry Pi with kernel-rt (aarch64 only with MBR) | ||||||
|   * RaspberryPi-SelfInstall: SelfInstall ISO for Raspberry Pi with default packages (aarch64 only with MBR) |   * Base-RPi: RAW Disk Image for Raspberry Pi with reduced packages (aarch64 only with MBR) | ||||||
|  |  | ||||||
|   4096 Blocksize (-b): If specified, use a 4096 blocksize (rather than 512) when generating the image. |   4096 Blocksize (-b): If specified, use a 4096 blocksize (rather than 512) when generating the image. | ||||||
|  |  | ||||||
| @@ -82,15 +83,9 @@ if $LARGEBLOCK; then | |||||||
|   mv /micro-sdk/defs/SL-Micro.kiwi.4096 /micro-sdk/defs/SL-Micro.kiwi |   mv /micro-sdk/defs/SL-Micro.kiwi.4096 /micro-sdk/defs/SL-Micro.kiwi | ||||||
| fi | fi | ||||||
|  |  | ||||||
| # Create temporary directory that supports seclabel |  | ||||||
| dir=$(mktemp -d) |  | ||||||
| mkdir -p /tmp/output/tmp-dir |  | ||||||
| mount -t tmpfs $dir /tmp/output/tmp-dir |  | ||||||
|  |  | ||||||
| # Build the image | # Build the image | ||||||
| kiwi-ng --temp-dir /tmp/output/tmp-dir --debug --profile $PROFILE \ | kiwi-ng --debug --profile $PROFILE system build \ | ||||||
|     system build --description /micro-sdk/defs --target-dir /tmp/output \ |     --description /micro-sdk/defs --target-dir /tmp/output --ignore-repos-used-for-build $REPOS | ||||||
|     --ignore-repos-used-for-build $REPOS |  | ||||||
|  |  | ||||||
| # Print output | # Print output | ||||||
| RESULT=$? | RESULT=$? | ||||||
|   | |||||||
| @@ -188,6 +188,7 @@ cat >/etc/fstab.script <<"EOF" | |||||||
| #!/bin/sh | #!/bin/sh | ||||||
| set -eux | set -eux | ||||||
|  |  | ||||||
|  | /usr/sbin/setup-fstab-for-overlayfs | ||||||
| # If /var is on a different partition than /... | # If /var is on a different partition than /... | ||||||
| if [ "$(findmnt -snT / -o SOURCE)" != "$(findmnt -snT /var -o SOURCE)" ]; then | if [ "$(findmnt -snT / -o SOURCE)" != "$(findmnt -snT /var -o SOURCE)" ]; then | ||||||
| 	# ... set options for autoexpanding /var | 	# ... set options for autoexpanding /var | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
|  <service name="obs_scm"> |  <service name="obs_scm"> | ||||||
|     <param name="url">https://github.com/brancz/kube-rbac-proxy</param> |     <param name="url">https://github.com/brancz/kube-rbac-proxy</param> | ||||||
|     <param name="scm">git</param> |     <param name="scm">git</param> | ||||||
|     <param name="revision">v0.19.1</param> |     <param name="revision">v0.18.2</param> | ||||||
|     <param name="version">_auto_</param> |     <param name="version">_auto_</param> | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |     <param name="versionformat">@PARENT_TAG@</param> | ||||||
|     <param name="changesgenerate">enable</param> |     <param name="changesgenerate">enable</param> | ||||||
|   | |||||||
| @@ -17,14 +17,14 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| Name:           kube-rbac-proxy | Name:           kube-rbac-proxy | ||||||
| Version:        0.19.1 | Version:        0.18.2 | ||||||
| Release:        0.19.1 | Release:        0.18.2 | ||||||
| Summary:        The kube-rbac-proxy is a small HTTP proxy for a single upstream | Summary:        The kube-rbac-proxy is a small HTTP proxy for a single upstream | ||||||
| License:        Apache-2.0 | License:        Apache-2.0 | ||||||
| URL:            https://github.com/brancz/kube-rbac-proxy | URL:            https://github.com/brancz/kube-rbac-proxy | ||||||
| Source:         kube-rbac-proxy-%{version}.tar | Source:         kube-rbac-proxy-%{version}.tar | ||||||
| Source1:        vendor.tar.gz | Source1:        vendor.tar.gz | ||||||
| BuildRequires:  golang(API) = 1.24 | BuildRequires:  golang(API) = 1.23 | ||||||
| ExcludeArch:    s390 | ExcludeArch:    s390 | ||||||
| ExcludeArch:    %{ix86} | ExcludeArch:    %{ix86} | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 | # SPDX-License-Identifier: Apache-2.0 | ||||||
| #!BuildTag: %%IMG_PREFIX%%kubectl:1.33.4 | #!BuildTag: %%IMG_PREFIX%%kubectl:1.32.4 | ||||||
| #!BuildTag: %%IMG_PREFIX%%kubectl:1.33.4-%RELEASE% | #!BuildTag: %%IMG_PREFIX%%kubectl:1.32.4-%RELEASE% | ||||||
| ARG SLE_VERSION | ARG SLE_VERSION | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro | ||||||
|  |  | ||||||
| @@ -15,11 +15,11 @@ FROM micro AS final | |||||||
| 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 kubectl image" | LABEL org.opencontainers.image.title="SLE kubectl image" | ||||||
| LABEL org.opencontainers.image.description="kubectl on the SLE Base Container Image." | LABEL org.opencontainers.image.description="kubectl on the SLE Base Container Image." | ||||||
| LABEL org.opencontainers.image.version="1.33.4" | LABEL org.opencontainers.image.version="1.32.4" | ||||||
| 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%%kubectl:1.33.4-%RELEASE%" | LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%kubectl:1.32.4-%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" | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| %global debug_package %{nil} | %global debug_package %{nil} | ||||||
|  |  | ||||||
| Name: kubectl | Name: kubectl | ||||||
| Version: 1.33.4 | Version: 1.32.4 | ||||||
| Release: 0 | Release: 0 | ||||||
| Summary: Command-line utility for interacting with a Kubernetes cluster | Summary: Command-line utility for interacting with a Kubernetes cluster | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										
											BIN
										
									
								
								kubectl/kubectl_1.32.4.orig.tar.gz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								kubectl/kubectl_1.32.4.orig.tar.gz
									 (Stored with Git LFS)
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								kubectl/kubectl_1.33.4.orig.tar.gz
									 (Stored with Git LFS)
									
									
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								kubectl/kubectl_1.33.4.orig.tar.gz
									 (Stored with Git LFS)
									
									
									
									
								
							
										
											Binary file not shown.
										
									
								
							| @@ -1,9 +1,9 @@ | |||||||
| #!BuildTag: %%CHART_PREFIX%%kubevirt:%%CHART_MAJOR%%.0.1_up0.6.0-%RELEASE% | #!BuildTag: %%CHART_PREFIX%%kubevirt:%%CHART_MAJOR%%.0.0_up0.5.0-%RELEASE% | ||||||
| #!BuildTag: %%CHART_PREFIX%%kubevirt:%%CHART_MAJOR%%.0.1_up0.6.0 | #!BuildTag: %%CHART_PREFIX%%kubevirt:%%CHART_MAJOR%%.0.0_up0.5.0 | ||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: 1.5.2 | appVersion: 1.4.0 | ||||||
| description: A Helm chart for KubeVirt | description: A Helm chart for KubeVirt | ||||||
| icon: https://raw.githubusercontent.com/cncf/artwork/main/projects/kubevirt/icon/color/kubevirt-icon-color.svg | icon: https://raw.githubusercontent.com/cncf/artwork/main/projects/kubevirt/icon/color/kubevirt-icon-color.svg | ||||||
| name: kubevirt | name: kubevirt | ||||||
| type: application | type: application | ||||||
| version: "%%CHART_MAJOR%%.0.1+up0.6.0" | version: "%%CHART_MAJOR%%.0.0+up0.5.0" | ||||||
|   | |||||||
| @@ -593,13 +593,6 @@ spec: | |||||||
|                             If set to true, migrations will still start in pre-copy, but switch to post-copy when |                             If set to true, migrations will still start in pre-copy, but switch to post-copy when | ||||||
|                             CompletionTimeoutPerGiB triggers. Defaults to false |                             CompletionTimeoutPerGiB triggers. Defaults to false | ||||||
|                           type: boolean |                           type: boolean | ||||||
|                         allowWorkloadDisruption: |  | ||||||
|                           description: |- |  | ||||||
|                             AllowWorkloadDisruption indicates that the migration shouldn't be |  | ||||||
|                             canceled after acceptableCompletionTime is exceeded. Instead, if |  | ||||||
|                             permitted, migration will be switched to post-copy or the VMI will be |  | ||||||
|                             paused to allow the migration to complete |  | ||||||
|                           type: boolean |  | ||||||
|                         bandwidthPerMigration: |                         bandwidthPerMigration: | ||||||
|                           anyOf: |                           anyOf: | ||||||
|                             - type: integer |                             - type: integer | ||||||
| @@ -612,8 +605,8 @@ spec: | |||||||
|                         completionTimeoutPerGiB: |                         completionTimeoutPerGiB: | ||||||
|                           description: |- |                           description: |- | ||||||
|                             CompletionTimeoutPerGiB is the maximum number of seconds per GiB a migration is allowed to take. |                             CompletionTimeoutPerGiB is the maximum number of seconds per GiB a migration is allowed to take. | ||||||
|                             If the timeout is reached, the migration will be either paused, switched |                             If a live-migration takes longer to migrate than this value multiplied by the size of the VMI, | ||||||
|                             to post-copy or cancelled depending on other settings. Defaults to 150 |                             the migration will be cancelled, unless AllowPostCopy is true. Defaults to 150 | ||||||
|                           format: int64 |                           format: int64 | ||||||
|                           type: integer |                           type: integer | ||||||
|                         disableTLS: |                         disableTLS: | ||||||
| @@ -971,17 +964,17 @@ spec: | |||||||
|                           type: object |                           type: object | ||||||
|                       type: object |                       type: object | ||||||
|                     vmRolloutStrategy: |                     vmRolloutStrategy: | ||||||
|                       description: |- |                       description: VMRolloutStrategy defines how changes to a VM object | ||||||
|                         VMRolloutStrategy defines how live-updatable fields, like CPU sockets, memory, |                         propagate to its VMI | ||||||
|                         tolerations, and affinity, are propagated from a VM to its VMI. |  | ||||||
|                       enum: |                       enum: | ||||||
|                         - Stage |                         - Stage | ||||||
|                         - LiveUpdate |                         - LiveUpdate | ||||||
|                       nullable: true |                       nullable: true | ||||||
|                       type: string |                       type: string | ||||||
|                     vmStateStorageClass: |                     vmStateStorageClass: | ||||||
|                       description: VMStateStorageClass is the name of the storage class |                       description: |- | ||||||
|                         to use for the PVCs created to preserve VM state, like TPM. |                         VMStateStorageClass is the name of the storage class to use for the PVCs created to preserve VM state, like TPM. | ||||||
|  |                         The storage class must support RWX in filesystem mode. | ||||||
|                       type: string |                       type: string | ||||||
|                     webhookConfiguration: |                     webhookConfiguration: | ||||||
|                       description: |- |                       description: |- | ||||||
| @@ -3857,13 +3850,6 @@ spec: | |||||||
|                             If set to true, migrations will still start in pre-copy, but switch to post-copy when |                             If set to true, migrations will still start in pre-copy, but switch to post-copy when | ||||||
|                             CompletionTimeoutPerGiB triggers. Defaults to false |                             CompletionTimeoutPerGiB triggers. Defaults to false | ||||||
|                           type: boolean |                           type: boolean | ||||||
|                         allowWorkloadDisruption: |  | ||||||
|                           description: |- |  | ||||||
|                             AllowWorkloadDisruption indicates that the migration shouldn't be |  | ||||||
|                             canceled after acceptableCompletionTime is exceeded. Instead, if |  | ||||||
|                             permitted, migration will be switched to post-copy or the VMI will be |  | ||||||
|                             paused to allow the migration to complete |  | ||||||
|                           type: boolean |  | ||||||
|                         bandwidthPerMigration: |                         bandwidthPerMigration: | ||||||
|                           anyOf: |                           anyOf: | ||||||
|                             - type: integer |                             - type: integer | ||||||
| @@ -3876,8 +3862,8 @@ spec: | |||||||
|                         completionTimeoutPerGiB: |                         completionTimeoutPerGiB: | ||||||
|                           description: |- |                           description: |- | ||||||
|                             CompletionTimeoutPerGiB is the maximum number of seconds per GiB a migration is allowed to take. |                             CompletionTimeoutPerGiB is the maximum number of seconds per GiB a migration is allowed to take. | ||||||
|                             If the timeout is reached, the migration will be either paused, switched |                             If a live-migration takes longer to migrate than this value multiplied by the size of the VMI, | ||||||
|                             to post-copy or cancelled depending on other settings. Defaults to 150 |                             the migration will be cancelled, unless AllowPostCopy is true. Defaults to 150 | ||||||
|                           format: int64 |                           format: int64 | ||||||
|                           type: integer |                           type: integer | ||||||
|                         disableTLS: |                         disableTLS: | ||||||
| @@ -4235,17 +4221,17 @@ spec: | |||||||
|                           type: object |                           type: object | ||||||
|                       type: object |                       type: object | ||||||
|                     vmRolloutStrategy: |                     vmRolloutStrategy: | ||||||
|                       description: |- |                       description: VMRolloutStrategy defines how changes to a VM object | ||||||
|                         VMRolloutStrategy defines how live-updatable fields, like CPU sockets, memory, |                         propagate to its VMI | ||||||
|                         tolerations, and affinity, are propagated from a VM to its VMI. |  | ||||||
|                       enum: |                       enum: | ||||||
|                         - Stage |                         - Stage | ||||||
|                         - LiveUpdate |                         - LiveUpdate | ||||||
|                       nullable: true |                       nullable: true | ||||||
|                       type: string |                       type: string | ||||||
|                     vmStateStorageClass: |                     vmStateStorageClass: | ||||||
|                       description: VMStateStorageClass is the name of the storage class |                       description: |- | ||||||
|                         to use for the PVCs created to preserve VM state, like TPM. |                         VMStateStorageClass is the name of the storage class to use for the PVCs created to preserve VM state, like TPM. | ||||||
|  |                         The storage class must support RWX in filesystem mode. | ||||||
|                       type: string |                       type: string | ||||||
|                     webhookConfiguration: |                     webhookConfiguration: | ||||||
|                       description: |- |                       description: |- | ||||||
|   | |||||||
| @@ -608,7 +608,6 @@ rules: | |||||||
|     resources: |     resources: | ||||||
|       - virtualmachinesnapshots |       - virtualmachinesnapshots | ||||||
|       - virtualmachinesnapshots/status |       - virtualmachinesnapshots/status | ||||||
|       - virtualmachinesnapshots/finalizers |  | ||||||
|       - virtualmachinesnapshotcontents |       - virtualmachinesnapshotcontents | ||||||
|       - virtualmachinesnapshotcontents/status |       - virtualmachinesnapshotcontents/status | ||||||
|       - virtualmachinesnapshotcontents/finalizers |       - virtualmachinesnapshotcontents/finalizers | ||||||
| @@ -661,18 +660,15 @@ rules: | |||||||
|       - kubevirt.io |       - kubevirt.io | ||||||
|     resources: |     resources: | ||||||
|       - virtualmachines/finalizers |       - virtualmachines/finalizers | ||||||
|       - virtualmachineinstances/finalizers |  | ||||||
|     verbs: |     verbs: | ||||||
|       - update |       - update | ||||||
|   - apiGroups: |   - apiGroups: | ||||||
|       - subresources.kubevirt.io |       - subresources.kubevirt.io | ||||||
|     resources: |     resources: | ||||||
|       - virtualmachines/stop |  | ||||||
|       - virtualmachineinstances/addvolume |       - virtualmachineinstances/addvolume | ||||||
|       - virtualmachineinstances/removevolume |       - virtualmachineinstances/removevolume | ||||||
|       - virtualmachineinstances/freeze |       - virtualmachineinstances/freeze | ||||||
|       - virtualmachineinstances/unfreeze |       - virtualmachineinstances/unfreeze | ||||||
|       - virtualmachineinstances/reset |  | ||||||
|       - virtualmachineinstances/softreboot |       - virtualmachineinstances/softreboot | ||||||
|       - virtualmachineinstances/sev/setupsession |       - virtualmachineinstances/sev/setupsession | ||||||
|       - virtualmachineinstances/sev/injectlaunchsecret |       - virtualmachineinstances/sev/injectlaunchsecret | ||||||
| @@ -776,14 +772,6 @@ rules: | |||||||
|     verbs: |     verbs: | ||||||
|       - list |       - list | ||||||
|       - watch |       - watch | ||||||
|   - apiGroups: |  | ||||||
|       - batch |  | ||||||
|     resources: |  | ||||||
|       - jobs |  | ||||||
|     verbs: |  | ||||||
|       - create |  | ||||||
|       - get |  | ||||||
|       - delete |  | ||||||
|   - apiGroups: |   - apiGroups: | ||||||
|       - kubevirt.io |       - kubevirt.io | ||||||
|     resources: |     resources: | ||||||
| @@ -895,7 +883,6 @@ rules: | |||||||
|       - virtualmachineinstances/freeze |       - virtualmachineinstances/freeze | ||||||
|       - virtualmachineinstances/unfreeze |       - virtualmachineinstances/unfreeze | ||||||
|       - virtualmachineinstances/softreboot |       - virtualmachineinstances/softreboot | ||||||
|       - virtualmachineinstances/reset |  | ||||||
|       - virtualmachineinstances/sev/setupsession |       - virtualmachineinstances/sev/setupsession | ||||||
|       - virtualmachineinstances/sev/injectlaunchsecret |       - virtualmachineinstances/sev/injectlaunchsecret | ||||||
|     verbs: |     verbs: | ||||||
| @@ -915,6 +902,7 @@ rules: | |||||||
|       - virtualmachines/restart |       - virtualmachines/restart | ||||||
|       - virtualmachines/addvolume |       - virtualmachines/addvolume | ||||||
|       - virtualmachines/removevolume |       - virtualmachines/removevolume | ||||||
|  |       - virtualmachines/migrate | ||||||
|       - virtualmachines/memorydump |       - virtualmachines/memorydump | ||||||
|     verbs: |     verbs: | ||||||
|       - update |       - update | ||||||
| @@ -931,6 +919,7 @@ rules: | |||||||
|       - virtualmachineinstances |       - virtualmachineinstances | ||||||
|       - virtualmachineinstancepresets |       - virtualmachineinstancepresets | ||||||
|       - virtualmachineinstancereplicasets |       - virtualmachineinstancereplicasets | ||||||
|  |       - virtualmachineinstancemigrations | ||||||
|     verbs: |     verbs: | ||||||
|       - get |       - get | ||||||
|       - delete |       - delete | ||||||
| @@ -940,14 +929,6 @@ rules: | |||||||
|       - list |       - list | ||||||
|       - watch |       - watch | ||||||
|       - deletecollection |       - deletecollection | ||||||
|   - apiGroups: |  | ||||||
|       - kubevirt.io |  | ||||||
|     resources: |  | ||||||
|       - virtualmachineinstancemigrations |  | ||||||
|     verbs: |  | ||||||
|       - get |  | ||||||
|       - list |  | ||||||
|       - watch |  | ||||||
|   - apiGroups: |   - apiGroups: | ||||||
|       - snapshot.kubevirt.io |       - snapshot.kubevirt.io | ||||||
|     resources: |     resources: | ||||||
| @@ -1051,7 +1032,6 @@ rules: | |||||||
|       - virtualmachineinstances/freeze |       - virtualmachineinstances/freeze | ||||||
|       - virtualmachineinstances/unfreeze |       - virtualmachineinstances/unfreeze | ||||||
|       - virtualmachineinstances/softreboot |       - virtualmachineinstances/softreboot | ||||||
|       - virtualmachineinstances/reset |  | ||||||
|       - virtualmachineinstances/sev/setupsession |       - virtualmachineinstances/sev/setupsession | ||||||
|       - virtualmachineinstances/sev/injectlaunchsecret |       - virtualmachineinstances/sev/injectlaunchsecret | ||||||
|     verbs: |     verbs: | ||||||
| @@ -1071,6 +1051,7 @@ rules: | |||||||
|       - virtualmachines/restart |       - virtualmachines/restart | ||||||
|       - virtualmachines/addvolume |       - virtualmachines/addvolume | ||||||
|       - virtualmachines/removevolume |       - virtualmachines/removevolume | ||||||
|  |       - virtualmachines/migrate | ||||||
|       - virtualmachines/memorydump |       - virtualmachines/memorydump | ||||||
|     verbs: |     verbs: | ||||||
|       - update |       - update | ||||||
| @@ -1087,6 +1068,7 @@ rules: | |||||||
|       - virtualmachineinstances |       - virtualmachineinstances | ||||||
|       - virtualmachineinstancepresets |       - virtualmachineinstancepresets | ||||||
|       - virtualmachineinstancereplicasets |       - virtualmachineinstancereplicasets | ||||||
|  |       - virtualmachineinstancemigrations | ||||||
|     verbs: |     verbs: | ||||||
|       - get |       - get | ||||||
|       - delete |       - delete | ||||||
| @@ -1095,14 +1077,6 @@ rules: | |||||||
|       - patch |       - patch | ||||||
|       - list |       - list | ||||||
|       - watch |       - watch | ||||||
|   - apiGroups: |  | ||||||
|       - kubevirt.io |  | ||||||
|     resources: |  | ||||||
|       - virtualmachineinstancemigrations |  | ||||||
|     verbs: |  | ||||||
|       - get |  | ||||||
|       - list |  | ||||||
|       - watch |  | ||||||
|   - apiGroups: |   - apiGroups: | ||||||
|       - snapshot.kubevirt.io |       - snapshot.kubevirt.io | ||||||
|     resources: |     resources: | ||||||
| @@ -1281,25 +1255,6 @@ rules: | |||||||
|       - get |       - get | ||||||
|       - list |       - list | ||||||
|       - watch |       - watch | ||||||
|   - apiGroups: |  | ||||||
|       - subresources.kubevirt.io |  | ||||||
|     resources: |  | ||||||
|       - virtualmachines/migrate |  | ||||||
|     verbs: |  | ||||||
|       - update |  | ||||||
|   - apiGroups: |  | ||||||
|       - kubevirt.io |  | ||||||
|     resources: |  | ||||||
|       - virtualmachineinstancemigrations |  | ||||||
|     verbs: |  | ||||||
|       - get |  | ||||||
|       - delete |  | ||||||
|       - create |  | ||||||
|       - update |  | ||||||
|       - patch |  | ||||||
|       - list |  | ||||||
|       - watch |  | ||||||
|       - deletecollection |  | ||||||
|   - apiGroups: |   - apiGroups: | ||||||
|       - authentication.k8s.io |       - authentication.k8s.io | ||||||
|     resources: |     resources: | ||||||
| @@ -1345,8 +1300,6 @@ spec: | |||||||
|     type: RollingUpdate |     type: RollingUpdate | ||||||
|   template: |   template: | ||||||
|     metadata: |     metadata: | ||||||
|       annotations: |  | ||||||
|         openshift.io/required-scc: restricted-v2 |  | ||||||
|       labels: |       labels: | ||||||
|         kubevirt.io: virt-operator |         kubevirt.io: virt-operator | ||||||
|         name: virt-operator |         name: virt-operator | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| operator: | operator: | ||||||
|   image: registry.suse.com/suse/sles/15.7/virt-operator |   image: registry.suse.com/suse/sles/15.6/virt-operator | ||||||
|   version: 1.5.2-150700.3.5.2 |   version: 1.4.0-150600.5.15.1 | ||||||
|   replicas: 2 |   replicas: 2 | ||||||
|   pullPolicy: IfNotPresent |   pullPolicy: IfNotPresent | ||||||
|   affinity: |   affinity: | ||||||
| @@ -40,7 +40,7 @@ kubevirt: | |||||||
|   monitorAccount: "" |   monitorAccount: "" | ||||||
|   monitorNamespace: "" |   monitorNamespace: "" | ||||||
|  |  | ||||||
| hookImage: registry.rancher.com/rancher/kubectl:v1.33.1 | hookImage: registry.rancher.com/rancher/kubectl:v1.30.10 | ||||||
| hookRestartPolicy: OnFailure | hookRestartPolicy: OnFailure | ||||||
| hookSecurityContext: | hookSecurityContext: | ||||||
|   seccompProfile: |   seccompProfile: | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| #!BuildTag: %%CHART_PREFIX%%kubevirt-dashboard-extension:%%CHART_MAJOR%%.0.3_up1.3.2 | #!BuildTag: %%CHART_PREFIX%%kubevirt-dashboard-extension:%%CHART_MAJOR%%.0.2_up1.3.2 | ||||||
| #!BuildTag: %%CHART_PREFIX%%kubevirt-dashboard-extension:%%CHART_MAJOR%%.0.3_up1.3.2-%RELEASE% | #!BuildTag: %%CHART_PREFIX%%kubevirt-dashboard-extension:%%CHART_MAJOR%%.0.2_up1.3.2-%RELEASE% | ||||||
| annotations: | annotations: | ||||||
|   catalog.cattle.io/certified: rancher |   catalog.cattle.io/certified: rancher | ||||||
|   catalog.cattle.io/namespace: cattle-ui-plugin-system |   catalog.cattle.io/namespace: cattle-ui-plugin-system | ||||||
| @@ -12,10 +12,10 @@ annotations: | |||||||
|   catalog.cattle.io/ui-extensions-version: '>= 3.0.2 < 4.0.0' |   catalog.cattle.io/ui-extensions-version: '>= 3.0.2 < 4.0.0' | ||||||
|   catalog.cattle.io/kube-version: '>= v1.26.0-0' |   catalog.cattle.io/kube-version: '>= v1.26.0-0' | ||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: 304.0.3+up1.3.2 | appVersion: 303.0.2+up1.3.2 | ||||||
| description: 'SUSE Edge: KubeVirt extension for Rancher Dashboard' | description: 'SUSE Edge: KubeVirt extension for Rancher Dashboard' | ||||||
| name: kubevirt-dashboard-extension | name: kubevirt-dashboard-extension | ||||||
| type: application | type: application | ||||||
| version: "%%CHART_MAJOR%%.0.3+up1.3.2" | version: "%%CHART_MAJOR%%.0.2+up1.3.2" | ||||||
| icon: >- | icon: >- | ||||||
|   https://raw.githubusercontent.com/cncf/artwork/master/projects/kubevirt/icon/color/kubevirt-icon-color.svg |   https://raw.githubusercontent.com/cncf/artwork/master/projects/kubevirt/icon/color/kubevirt-icon-color.svg | ||||||
|   | |||||||
| @@ -8,7 +8,7 @@ spec: | |||||||
|   plugin: |   plugin: | ||||||
|     name: {{ include "extension-server.fullname" . }} |     name: {{ include "extension-server.fullname" . }} | ||||||
|     version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }} |     version: {{ (semver (default .Chart.AppVersion .Values.plugin.versionOverride)).Original }} | ||||||
|     endpoint: https://raw.githubusercontent.com/suse-edge/dashboard-extensions/gh-pages/extensions/kubevirt-dashboard-extension/304.0.3+up1.3.2 |     endpoint: https://raw.githubusercontent.com/suse-edge/dashboard-extensions/gh-pages/extensions/kubevirt-dashboard-extension/303.0.2+up1.3.2 | ||||||
|     noCache: {{ .Values.plugin.noCache }} |     noCache: {{ .Values.plugin.noCache }} | ||||||
|     noAuth: {{ .Values.plugin.noAuth }} |     noAuth: {{ .Values.plugin.noAuth }} | ||||||
|     metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }} |     metadata: {{ include "extension-server.pluginMetadata" . | indent 6 }} | ||||||
|   | |||||||
| @@ -1,16 +1,16 @@ | |||||||
| #!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.19_up0.12.9 | #!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.12_up0.12.2 | ||||||
| #!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.19_up0.12.9-%RELEASE% | #!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.12_up0.12.2-%RELEASE% | ||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: 0.12.9 | appVersion: 0.12.2 | ||||||
| dependencies: | dependencies: | ||||||
| - alias: metal3-baremetal-operator | - alias: metal3-baremetal-operator | ||||||
|   name: baremetal-operator |   name: baremetal-operator | ||||||
|   repository: file://./charts/baremetal-operator |   repository: file://./charts/baremetal-operator | ||||||
|   version: 0.10.4 |   version: 0.9.4 | ||||||
| - alias: metal3-ironic | - alias: metal3-ironic | ||||||
|   name: ironic |   name: ironic | ||||||
|   repository: file://./charts/ironic |   repository: file://./charts/ironic | ||||||
|   version: 0.11.6 |   version: 0.11.2 | ||||||
| - alias: metal3-mariadb | - alias: metal3-mariadb | ||||||
|   condition: global.enable_mariadb |   condition: global.enable_mariadb | ||||||
|   name: mariadb |   name: mariadb | ||||||
| @@ -20,9 +20,9 @@ dependencies: | |||||||
|   condition: global.enable_metal3_media_server |   condition: global.enable_metal3_media_server | ||||||
|   name: media |   name: media | ||||||
|   repository: file://./charts/media |   repository: file://./charts/media | ||||||
|   version: 0.7.1 |   version: 0.6.5 | ||||||
| description: A Helm chart that installs all of the dependencies needed for Metal3 | description: A Helm chart that installs all of the dependencies needed for Metal3 | ||||||
| icon: https://github.com/cncf/artwork/raw/master/projects/metal3/icon/color/metal3-icon-color.svg | icon: https://github.com/cncf/artwork/raw/master/projects/metal3/icon/color/metal3-icon-color.svg | ||||||
| name: metal3 | name: metal3 | ||||||
| type: application | type: application | ||||||
| version: "%%CHART_MAJOR%%.0.19+up0.12.9" | version: "%%CHART_MAJOR%%.0.12+up0.12.2" | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: 0.10.2 | appVersion: 0.9.1 | ||||||
| description: A Helm chart for baremetal-operator, used by Metal3 | description: A Helm chart for baremetal-operator, used by Metal3 | ||||||
| name: baremetal-operator | name: baremetal-operator | ||||||
| type: application | type: application | ||||||
| version: 0.10.4 | version: 0.9.4 | ||||||
|   | |||||||
| @@ -202,11 +202,6 @@ spec: | |||||||
|                 description: Description is a human-entered text used to help identify |                 description: Description is a human-entered text used to help identify | ||||||
|                   the host. |                   the host. | ||||||
|                 type: string |                 type: string | ||||||
|               disablePowerOff: |  | ||||||
|                 description: |- |  | ||||||
|                   When set to true, power off of the node will be disabled, |  | ||||||
|                   instead, a reboot will be used in place of power on/off |  | ||||||
|                 type: boolean |  | ||||||
|               externallyProvisioned: |               externallyProvisioned: | ||||||
|                 description: |- |                 description: |- | ||||||
|                   ExternallyProvisioned means something else has provisioned the |                   ExternallyProvisioned means something else has provisioned the | ||||||
|   | |||||||
| @@ -5,6 +5,7 @@ | |||||||
|   {{- $ironicApiHost := print $ironicHost ":6385" }} |   {{- $ironicApiHost := print $ironicHost ":6385" }} | ||||||
|   {{- $ironicBootHost := print $ironicHost ":6180" }} |   {{- $ironicBootHost := print $ironicHost ":6180" }} | ||||||
|   {{- $ironicCacheHost := print $ironicHost ":6180" }} |   {{- $ironicCacheHost := print $ironicHost ":6180" }} | ||||||
|  |   {{- $deployArch := .Values.global.deployArchitecture }} | ||||||
|  |  | ||||||
| apiVersion: v1 | apiVersion: v1 | ||||||
| data: | data: | ||||||
| @@ -20,10 +21,9 @@ data: | |||||||
|   RESTART_CONTAINER_CERTIFICATE_UPDATED: "false" |   RESTART_CONTAINER_CERTIFICATE_UPDATED: "false" | ||||||
|   {{- end }} |   {{- end }} | ||||||
|   CACHEURL: "{{ $protocol }}://{{ $ironicCacheHost }}/images" |   CACHEURL: "{{ $protocol }}://{{ $ironicCacheHost }}/images" | ||||||
|   {{- if .Values.baremetaloperator.externalHttpIPv6 }} |   DEPLOY_KERNEL_URL: "{{ $protocol }}://{{ $ironicBootHost }}/images/ironic-python-agent-{{ $deployArch }}.kernel" | ||||||
|   {{- $port := ternary .Values.global.vmediaTLSPort .Values.baremetaloperator.httpPort $enableVMediaTLS }} |   DEPLOY_RAMDISK_URL: "{{ $protocol }}://{{ $ironicBootHost }}/images/ironic-python-agent-{{ $deployArch }}.initramfs" | ||||||
|   IRONIC_EXTERNAL_URL_V6: "{{ $protocol }}://[{{ .Values.baremetaloperator.externalHttpIPv6 }}]:{{ $port }}" |   DEPLOY_ARCHITECTURE: "{{ $deployArch }}" | ||||||
|   {{- end }} |  | ||||||
| kind: ConfigMap | kind: ConfigMap | ||||||
| metadata: | metadata: | ||||||
|   name: baremetal-operator-ironic |   name: baremetal-operator-ironic | ||||||
|   | |||||||
| @@ -28,7 +28,7 @@ images: | |||||||
|   baremetalOperator: |   baremetalOperator: | ||||||
|     repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/baremetal-operator |     repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/baremetal-operator | ||||||
|     pullPolicy: IfNotPresent |     pullPolicy: IfNotPresent | ||||||
|     tag: "0.10.2.1" |     tag: "0.9.1.1" | ||||||
|  |  | ||||||
| imagePullSecrets: [] | imagePullSecrets: [] | ||||||
| nameOverride: "manger" | nameOverride: "manger" | ||||||
| @@ -84,8 +84,3 @@ affinity: {} | |||||||
|  |  | ||||||
| baremetaloperator: | baremetaloperator: | ||||||
|   httpPort: "6180" |   httpPort: "6180" | ||||||
|  |  | ||||||
|   # IPv6 used for accessing the Ironic HTTP server for BMCs with an IPv6 only address. |  | ||||||
|   # It should not be used in conjunction with 'provisioningHostname' unless BMCs do not |  | ||||||
|   # support hostnames. |  | ||||||
|   externalHttpIPv6: "" |  | ||||||
|   | |||||||
| @@ -3,4 +3,4 @@ appVersion: 29.0.4 | |||||||
| description: A Helm chart for Ironic, used by Metal3 | description: A Helm chart for Ironic, used by Metal3 | ||||||
| name: ironic | name: ironic | ||||||
| type: application | type: application | ||||||
| version: 0.11.6 | version: 0.11.2 | ||||||
|   | |||||||
| @@ -5,6 +5,8 @@ metadata: | |||||||
|   labels: |   labels: | ||||||
|     {{- include "ironic.labels" . | nindent 4 }} |     {{- include "ironic.labels" . | nindent 4 }} | ||||||
| data: | data: | ||||||
|  |   {{- $deployArch := .Values.global.deployArchitecture }} | ||||||
|  |  | ||||||
|   {{- if  ( .Values.global.enable_dnsmasq ) }} |   {{- if  ( .Values.global.enable_dnsmasq ) }} | ||||||
|   DNSMASQ_DNS_SERVER_ADDRESS: {{ .Values.global.dnsmasqDNSServer }} |   DNSMASQ_DNS_SERVER_ADDRESS: {{ .Values.global.dnsmasqDNSServer }} | ||||||
|   DNSMASQ_DEFAULT_ROUTER: {{ .Values.global.dnsmasqDefaultRouter }} |   DNSMASQ_DEFAULT_ROUTER: {{ .Values.global.dnsmasqDefaultRouter }} | ||||||
| @@ -16,6 +18,7 @@ data: | |||||||
|   HTTP_PORT: "6180" |   HTTP_PORT: "6180" | ||||||
|   PREDICTABLE_NIC_NAMES: "{{ .Values.global.predictableNicNames }}" |   PREDICTABLE_NIC_NAMES: "{{ .Values.global.predictableNicNames }}" | ||||||
|   IRONIC_EXTERNAL_HTTP_URL: {{ include "ironic.externalHttpUrl" . }} |   IRONIC_EXTERNAL_HTTP_URL: {{ include "ironic.externalHttpUrl" . }} | ||||||
|  |   DEPLOY_ARCHITECTURE: {{ $deployArch }} | ||||||
|   ENABLE_PXE_BOOT: "{{ .Values.global.enable_pxe_boot }}" |   ENABLE_PXE_BOOT: "{{ .Values.global.enable_pxe_boot }}" | ||||||
|   {{- if .Values.global.provisioningInterface }} |   {{- if .Values.global.provisioningInterface }} | ||||||
|   PROVISIONING_INTERFACE: {{ .Values.global.provisioningInterface }} |   PROVISIONING_INTERFACE: {{ .Values.global.provisioningInterface }} | ||||||
| @@ -52,6 +55,3 @@ data: | |||||||
|   {{- else }} |   {{- else }} | ||||||
|   IRONIC_USE_MARIADB: "false" |   IRONIC_USE_MARIADB: "false" | ||||||
|   {{- end }} |   {{- end }} | ||||||
|   {{- with .Values.ironicExtraEnv -}} |  | ||||||
|   {{ toYaml . | nindent 2 }}   |  | ||||||
|   {{- end -}} |  | ||||||
| @@ -64,11 +64,11 @@ images: | |||||||
|   ironic: |   ironic: | ||||||
|     repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic |     repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic | ||||||
|     pullPolicy: IfNotPresent |     pullPolicy: IfNotPresent | ||||||
|     tag: 29.0.4.4 |     tag: 29.0.4.1 | ||||||
|   ironicIPADownloader: |   ironicIPADownloader: | ||||||
|     repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic-ipa-downloader |     repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic-ipa-downloader | ||||||
|     pullPolicy: IfNotPresent |     pullPolicy: IfNotPresent | ||||||
|     tag: 3.0.10 |     tag: 3.0.8 | ||||||
|  |  | ||||||
| nameOverride: "" | nameOverride: "" | ||||||
| fullnameOverride: "" | fullnameOverride: "" | ||||||
| @@ -138,8 +138,6 @@ baremetaloperator: | |||||||
| debug: | debug: | ||||||
|   ironicRamdiskSshKey: "" |   ironicRamdiskSshKey: "" | ||||||
|  |  | ||||||
| ironicExtraEnv: {} |  | ||||||
|  |  | ||||||
| tlscerts: | tlscerts: | ||||||
|   cacert: "" |   cacert: "" | ||||||
|   key: "" |   key: "" | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: 1.21.0 | appVersion: 1.16.0 | ||||||
| description: A Helm chart for Media, used by Metal3 | description: A Helm chart for Media, used by Metal3 | ||||||
| name: media | name: media | ||||||
| type: application | type: application | ||||||
| version: 0.7.1 | version: 0.6.5 | ||||||
|   | |||||||
| @@ -34,9 +34,13 @@ spec: | |||||||
|       {{- end }} |       {{- end }} | ||||||
|       containers: |       containers: | ||||||
|         - name: {{ .Chart.Name }} |         - name: {{ .Chart.Name }} | ||||||
|  |           command: | ||||||
|  |           - /usr/sbin/httpd | ||||||
|  |           args: | ||||||
|  |           - -DFOREGROUND | ||||||
|           securityContext: |           securityContext: | ||||||
|             {{- toYaml .Values.securityContext | nindent 12 }} |             {{- toYaml .Values.securityContext | nindent 12 }} | ||||||
|           image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" |           image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" | ||||||
|           imagePullPolicy: {{ .Values.image.pullPolicy }} |           imagePullPolicy: {{ .Values.image.pullPolicy }} | ||||||
|           ports: |           ports: | ||||||
|             - name: http |             - name: http | ||||||
|   | |||||||
| @@ -22,9 +22,9 @@ global: | |||||||
| replicaCount: 1 | replicaCount: 1 | ||||||
|  |  | ||||||
| image: | image: | ||||||
|   repository: registry.suse.com/suse/nginx |   repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic | ||||||
|   pullPolicy: IfNotPresent |   pullPolicy: IfNotPresent | ||||||
|   tag: 1.21 |   tag: 29.0.4.1 | ||||||
|  |  | ||||||
| imagePullSecrets: [] | imagePullSecrets: [] | ||||||
| nameOverride: "" | nameOverride: "" | ||||||
| @@ -42,8 +42,8 @@ serviceAccount: | |||||||
| podAnnotations: {} | podAnnotations: {} | ||||||
|  |  | ||||||
| podSecurityContext: | podSecurityContext: | ||||||
|   runAsUser: 499 |   runAsUser: 10475 | ||||||
|   fsGroup: 486 |   fsGroup: 10475 | ||||||
|  |  | ||||||
| securityContext: | securityContext: | ||||||
|   allowPrivilegeEscalation: false |   allowPrivilegeEscalation: false | ||||||
| @@ -102,16 +102,11 @@ volumes: | |||||||
|   - name: assets |   - name: assets | ||||||
|     persistentVolumeClaim: |     persistentVolumeClaim: | ||||||
|       claimName: media |       claimName: media | ||||||
|   - name: run |  | ||||||
|     emptyDir: |  | ||||||
|       sizeLimit: 10Mi |  | ||||||
|  |  | ||||||
| # volume mounts | # volume mounts | ||||||
| volumeMounts: | volumeMounts: | ||||||
|   - mountPath: /srv/www/htdocs |   - mountPath: /srv/www/htdocs | ||||||
|     name: assets |     name: assets | ||||||
|   - mountPath: /run |  | ||||||
|     name: run |  | ||||||
|  |  | ||||||
| # media volume settings | # media volume settings | ||||||
| mediaVolume: | mediaVolume: | ||||||
|   | |||||||
| @@ -72,6 +72,9 @@ global: | |||||||
|   # Name for the MariaDB service |   # Name for the MariaDB service | ||||||
|   databaseServiceName: metal3-mariadb |   databaseServiceName: metal3-mariadb | ||||||
|  |  | ||||||
|  |   # Architecture for deployed nodes (either x86_64 or arm64) | ||||||
|  |   deployArchitecture: x86_64 | ||||||
|  |  | ||||||
|   # In a multi-node cluster use the node selector to ensure the pods |   # In a multi-node cluster use the node selector to ensure the pods | ||||||
|   # all run on the same host where the dnsmasqDNSServer and provisioningIP |   # all run on the same host where the dnsmasqDNSServer and provisioningIP | ||||||
|   # and /opt/media exist. Uncomment the nodeSelector and update the |   # and /opt/media exist. Uncomment the nodeSelector and update the | ||||||
|   | |||||||
| @@ -1,17 +1,17 @@ | |||||||
| #!BuildTag: %%CHART_PREFIX%%metallb:%%CHART_MAJOR%%.0.1_up0.15.2 | #!BuildTag: %%CHART_PREFIX%%metallb:%%CHART_MAJOR%%.0.0_up0.14.9 | ||||||
| #!BuildTag: %%CHART_PREFIX%%metallb:%%CHART_MAJOR%%.0.1_up0.15.2-%RELEASE% | #!BuildTag: %%CHART_PREFIX%%metallb:%%CHART_MAJOR%%.0.0_up0.14.9-%RELEASE% | ||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: v0.15.2 | appVersion: v0.14.9 | ||||||
| dependencies: | dependencies: | ||||||
| - condition: crds.enabled | - condition: crds.enabled | ||||||
|   name: crds |   name: crds | ||||||
|   repository: file://./charts/crds |   repository: file://./charts/crds | ||||||
|   version: 0.15.2 |   version: 0.14.9 | ||||||
| - alias: metallb-frr-k8s | - alias: metallb-frr-k8s | ||||||
|   condition: frrk8s.enabled |   condition: frrk8s.enabled | ||||||
|   name: frr-k8s |   name: frr-k8s | ||||||
|   repository: file://./charts/frr-k8s |   repository: file://./charts/frr-k8s | ||||||
|   version: 0.0.20 |   version: 0.0.16 | ||||||
| description: A network load-balancer implementation for Kubernetes using standard | description: A network load-balancer implementation for Kubernetes using standard | ||||||
|   routing protocols |   routing protocols | ||||||
| home: https://metallb.universe.tf | home: https://metallb.universe.tf | ||||||
| @@ -21,4 +21,4 @@ name: metallb | |||||||
| sources: | sources: | ||||||
| - https://github.com/metallb/metallb | - https://github.com/metallb/metallb | ||||||
| type: application | type: application | ||||||
| version: "%%CHART_MAJOR%%.0.1+up0.15.2" | version: "%%CHART_MAJOR%%.0.0+up0.14.9" | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # metallb | # metallb | ||||||
|  |  | ||||||
|    |    | ||||||
|  |  | ||||||
| A network load-balancer implementation for Kubernetes using standard routing protocols | A network load-balancer implementation for Kubernetes using standard routing protocols | ||||||
|  |  | ||||||
| @@ -16,8 +16,8 @@ Kubernetes: `>= 1.19.0-0` | |||||||
|  |  | ||||||
| | Repository | Name | Version | | | Repository | Name | Version | | ||||||
| |------------|------|---------| | |------------|------|---------| | ||||||
| |  | crds | 0.15.2 | | |  | crds | 0.14.9 | | ||||||
| | https://metallb.github.io/frr-k8s | frr-k8s | 0.0.20 | | | https://metallb.github.io/frr-k8s | frr-k8s | 0.0.16 | | ||||||
|  |  | ||||||
| ## Values | ## Values | ||||||
|  |  | ||||||
| @@ -99,7 +99,7 @@ Kubernetes: `>= 1.19.0-0` | |||||||
| | prometheus.rbacPrometheus | bool | `true` |  | | | prometheus.rbacPrometheus | bool | `true` |  | | ||||||
| | prometheus.rbacProxy.pullPolicy | string | `nil` |  | | | prometheus.rbacProxy.pullPolicy | string | `nil` |  | | ||||||
| | prometheus.rbacProxy.repository | string | `"registry.opensuse.org/isv/suse/edge/metallb/images/kube-rbac-proxy"` |  | | | prometheus.rbacProxy.repository | string | `"registry.opensuse.org/isv/suse/edge/metallb/images/kube-rbac-proxy"` |  | | ||||||
| | prometheus.rbacProxy.tag | string | `"v0.19.1"` |  | | | prometheus.rbacProxy.tag | string | `"v0.18.0"` |  | | ||||||
| | prometheus.scrapeAnnotations | bool | `false` |  | | | prometheus.scrapeAnnotations | bool | `false` |  | | ||||||
| | prometheus.serviceAccount | string | `""` |  | | | prometheus.serviceAccount | string | `""` |  | | ||||||
| | prometheus.serviceMonitor.controller.additionalLabels | object | `{}` |  | | | prometheus.serviceMonitor.controller.additionalLabels | object | `{}` |  | | ||||||
| @@ -122,7 +122,7 @@ Kubernetes: `>= 1.19.0-0` | |||||||
| | speaker.frr.enabled | bool | `true` |  | | | speaker.frr.enabled | bool | `true` |  | | ||||||
| | speaker.frr.image.pullPolicy | string | `nil` |  | | | speaker.frr.image.pullPolicy | string | `nil` |  | | ||||||
| | speaker.frr.image.repository | string | `"registry.opensuse.org/isv/suse/edge/metallb/images/frr"` |  | | | speaker.frr.image.repository | string | `"registry.opensuse.org/isv/suse/edge/metallb/images/frr"` |  | | ||||||
| | speaker.frr.image.tag | string | `"10.2.1"` |  | | | speaker.frr.image.tag | string | `"8.5.6"` |  | | ||||||
| | speaker.frr.metricsPort | int | `7473` |  | | | speaker.frr.metricsPort | int | `7473` |  | | ||||||
| | speaker.frr.resources | object | `{}` |  | | | speaker.frr.resources | object | `{}` |  | | ||||||
| | speaker.frrMetrics.resources | object | `{}` |  | | | speaker.frrMetrics.resources | object | `{}` |  | | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: v0.15.2 | appVersion: v0.14.9 | ||||||
| description: MetalLB CRDs | description: MetalLB CRDs | ||||||
| home: https://metallb.universe.tf | home: https://metallb.universe.tf | ||||||
| icon: https://metallb.universe.tf/images/logo/metallb-white.png | icon: https://metallb.universe.tf/images/logo/metallb-white.png | ||||||
| @@ -7,4 +7,4 @@ name: crds | |||||||
| sources: | sources: | ||||||
| - https://github.com/metallb/metallb | - https://github.com/metallb/metallb | ||||||
| type: application | type: application | ||||||
| version: 0.15.2 | version: 0.14.9 | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 | |||||||
| kind: CustomResourceDefinition | kind: CustomResourceDefinition | ||||||
| metadata: | metadata: | ||||||
|   annotations: |   annotations: | ||||||
|     controller-gen.kubebuilder.io/version: v0.17.2 |     controller-gen.kubebuilder.io/version: v0.16.3 | ||||||
|   name: bfdprofiles.metallb.io |   name: bfdprofiles.metallb.io | ||||||
| spec: | spec: | ||||||
|   group: metallb.io |   group: metallb.io | ||||||
| @@ -123,7 +123,7 @@ apiVersion: apiextensions.k8s.io/v1 | |||||||
| kind: CustomResourceDefinition | kind: CustomResourceDefinition | ||||||
| metadata: | metadata: | ||||||
|   annotations: |   annotations: | ||||||
|     controller-gen.kubebuilder.io/version: v0.17.2 |     controller-gen.kubebuilder.io/version: v0.16.3 | ||||||
|   name: bgpadvertisements.metallb.io |   name: bgpadvertisements.metallb.io | ||||||
| spec: | spec: | ||||||
|   group: metallb.io |   group: metallb.io | ||||||
| @@ -329,7 +329,7 @@ apiVersion: apiextensions.k8s.io/v1 | |||||||
| kind: CustomResourceDefinition | kind: CustomResourceDefinition | ||||||
| metadata: | metadata: | ||||||
|   annotations: |   annotations: | ||||||
|     controller-gen.kubebuilder.io/version: v0.17.2 |     controller-gen.kubebuilder.io/version: v0.16.3 | ||||||
|   name: bgppeers.metallb.io |   name: bgppeers.metallb.io | ||||||
| spec: | spec: | ||||||
|   conversion: |   conversion: | ||||||
| @@ -526,15 +526,7 @@ spec: | |||||||
|                       rule: duration(self).getMilliseconds() % 1000 == 0 |                       rule: duration(self).getMilliseconds() % 1000 == 0 | ||||||
|                 disableMP: |                 disableMP: | ||||||
|                   default: false |                   default: false | ||||||
|                   description: |- |                   description: To set if we want to disable MP BGP that will separate IPv4 and IPv6 route exchanges into distinct BGP sessions. | ||||||
|                     To set if we want to disable MP BGP that will separate IPv4 and IPv6 route exchanges into distinct BGP sessions. |  | ||||||
|                     Deprecated: DisableMP is deprecated in favor of dualStackAddressFamily. |  | ||||||
|                   type: boolean |  | ||||||
|                 dualStackAddressFamily: |  | ||||||
|                   default: false |  | ||||||
|                   description: |- |  | ||||||
|                     To set if we want to enable the neighbor not only for the ipfamily related to its session, |  | ||||||
|                     but also the other one. This allows to advertise/receive IPv4 prefixes over IPv6 sessions and vice versa. |  | ||||||
|                   type: boolean |                   type: boolean | ||||||
|                 dynamicASN: |                 dynamicASN: | ||||||
|                   description: |- |                   description: |- | ||||||
| @@ -563,14 +555,6 @@ spec: | |||||||
|                 holdTime: |                 holdTime: | ||||||
|                   description: Requested BGP hold time, per RFC4271. |                   description: Requested BGP hold time, per RFC4271. | ||||||
|                   type: string |                   type: string | ||||||
|                 interface: |  | ||||||
|                   description: |- |  | ||||||
|                     Interface is the node interface over which the unnumbered BGP peering will |  | ||||||
|                     be established. No API validation takes place as that string value |  | ||||||
|                     represents an interface name on the host and if user provides an invalid |  | ||||||
|                     value, only the actual BGP session will not be established. |  | ||||||
|                     Address and Interface are mutually exclusive and one of them must be specified. |  | ||||||
|                   type: string |  | ||||||
|                 keepaliveTime: |                 keepaliveTime: | ||||||
|                   description: Requested BGP keepalive time, per RFC4271. |                   description: Requested BGP keepalive time, per RFC4271. | ||||||
|                   type: string |                   type: string | ||||||
| @@ -665,7 +649,7 @@ spec: | |||||||
|                   default: 179 |                   default: 179 | ||||||
|                   description: Port to dial when establishing the session. |                   description: Port to dial when establishing the session. | ||||||
|                   maximum: 16384 |                   maximum: 16384 | ||||||
|                   minimum: 1 |                   minimum: 0 | ||||||
|                   type: integer |                   type: integer | ||||||
|                 routerID: |                 routerID: | ||||||
|                   description: BGP router ID to advertise to the peer |                   description: BGP router ID to advertise to the peer | ||||||
| @@ -680,6 +664,7 @@ spec: | |||||||
|                   type: string |                   type: string | ||||||
|               required: |               required: | ||||||
|                 - myASN |                 - myASN | ||||||
|  |                 - peerAddress | ||||||
|               type: object |               type: object | ||||||
|             status: |             status: | ||||||
|               description: BGPPeerStatus defines the observed state of Peer. |               description: BGPPeerStatus defines the observed state of Peer. | ||||||
| @@ -694,7 +679,7 @@ apiVersion: apiextensions.k8s.io/v1 | |||||||
| kind: CustomResourceDefinition | kind: CustomResourceDefinition | ||||||
| metadata: | metadata: | ||||||
|   annotations: |   annotations: | ||||||
|     controller-gen.kubebuilder.io/version: v0.17.2 |     controller-gen.kubebuilder.io/version: v0.16.3 | ||||||
|   name: communities.metallb.io |   name: communities.metallb.io | ||||||
| spec: | spec: | ||||||
|   group: metallb.io |   group: metallb.io | ||||||
| @@ -759,7 +744,7 @@ apiVersion: apiextensions.k8s.io/v1 | |||||||
| kind: CustomResourceDefinition | kind: CustomResourceDefinition | ||||||
| metadata: | metadata: | ||||||
|   annotations: |   annotations: | ||||||
|     controller-gen.kubebuilder.io/version: v0.17.2 |     controller-gen.kubebuilder.io/version: v0.16.3 | ||||||
|   name: ipaddresspools.metallb.io |   name: ipaddresspools.metallb.io | ||||||
| spec: | spec: | ||||||
|   group: metallb.io |   group: metallb.io | ||||||
| @@ -956,28 +941,6 @@ spec: | |||||||
|               type: object |               type: object | ||||||
|             status: |             status: | ||||||
|               description: IPAddressPoolStatus defines the observed state of IPAddressPool. |               description: IPAddressPoolStatus defines the observed state of IPAddressPool. | ||||||
|               properties: |  | ||||||
|                 assignedIPv4: |  | ||||||
|                   description: AssignedIPv4 is the number of assigned IPv4 addresses. |  | ||||||
|                   format: int64 |  | ||||||
|                   type: integer |  | ||||||
|                 assignedIPv6: |  | ||||||
|                   description: AssignedIPv6 is the number of assigned IPv6 addresses. |  | ||||||
|                   format: int64 |  | ||||||
|                   type: integer |  | ||||||
|                 availableIPv4: |  | ||||||
|                   description: AvailableIPv4 is the number of available IPv4 addresses. |  | ||||||
|                   format: int64 |  | ||||||
|                   type: integer |  | ||||||
|                 availableIPv6: |  | ||||||
|                   description: AvailableIPv6 is the number of available IPv6 addresses. |  | ||||||
|                   format: int64 |  | ||||||
|                   type: integer |  | ||||||
|               required: |  | ||||||
|                 - assignedIPv4 |  | ||||||
|                 - assignedIPv6 |  | ||||||
|                 - availableIPv4 |  | ||||||
|                 - availableIPv6 |  | ||||||
|               type: object |               type: object | ||||||
|           required: |           required: | ||||||
|             - spec |             - spec | ||||||
| @@ -991,7 +954,7 @@ apiVersion: apiextensions.k8s.io/v1 | |||||||
| kind: CustomResourceDefinition | kind: CustomResourceDefinition | ||||||
| metadata: | metadata: | ||||||
|   annotations: |   annotations: | ||||||
|     controller-gen.kubebuilder.io/version: v0.17.2 |     controller-gen.kubebuilder.io/version: v0.16.3 | ||||||
|   name: l2advertisements.metallb.io |   name: l2advertisements.metallb.io | ||||||
| spec: | spec: | ||||||
|   group: metallb.io |   group: metallb.io | ||||||
| @@ -1171,92 +1134,7 @@ apiVersion: apiextensions.k8s.io/v1 | |||||||
| kind: CustomResourceDefinition | kind: CustomResourceDefinition | ||||||
| metadata: | metadata: | ||||||
|   annotations: |   annotations: | ||||||
|     controller-gen.kubebuilder.io/version: v0.17.2 |     controller-gen.kubebuilder.io/version: v0.16.3 | ||||||
|   name: servicebgpstatuses.metallb.io |  | ||||||
| spec: |  | ||||||
|   group: metallb.io |  | ||||||
|   names: |  | ||||||
|     kind: ServiceBGPStatus |  | ||||||
|     listKind: ServiceBGPStatusList |  | ||||||
|     plural: servicebgpstatuses |  | ||||||
|     singular: servicebgpstatus |  | ||||||
|   scope: Namespaced |  | ||||||
|   versions: |  | ||||||
|     - additionalPrinterColumns: |  | ||||||
|         - jsonPath: .status.node |  | ||||||
|           name: Node |  | ||||||
|           type: string |  | ||||||
|         - jsonPath: .status.serviceName |  | ||||||
|           name: Service Name |  | ||||||
|           type: string |  | ||||||
|         - jsonPath: .status.serviceNamespace |  | ||||||
|           name: Service Namespace |  | ||||||
|           type: string |  | ||||||
|       name: v1beta1 |  | ||||||
|       schema: |  | ||||||
|         openAPIV3Schema: |  | ||||||
|           description: ServiceBGPStatus exposes the BGP peers a service is configured to be advertised to, per relevant node. |  | ||||||
|           properties: |  | ||||||
|             apiVersion: |  | ||||||
|               description: |- |  | ||||||
|                 APIVersion defines the versioned schema of this representation of an object. |  | ||||||
|                 Servers should convert recognized schemas to the latest internal value, and |  | ||||||
|                 may reject unrecognized values. |  | ||||||
|                 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |  | ||||||
|               type: string |  | ||||||
|             kind: |  | ||||||
|               description: |- |  | ||||||
|                 Kind is a string value representing the REST resource this object represents. |  | ||||||
|                 Servers may infer this from the endpoint the client submits requests to. |  | ||||||
|                 Cannot be updated. |  | ||||||
|                 In CamelCase. |  | ||||||
|                 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |  | ||||||
|               type: string |  | ||||||
|             metadata: |  | ||||||
|               type: object |  | ||||||
|             spec: |  | ||||||
|               description: ServiceBGPStatusSpec defines the desired state of ServiceBGPStatus. |  | ||||||
|               type: object |  | ||||||
|             status: |  | ||||||
|               description: MetalLBServiceBGPStatus defines the observed state of ServiceBGPStatus. |  | ||||||
|               properties: |  | ||||||
|                 node: |  | ||||||
|                   description: Node indicates the node announcing the service. |  | ||||||
|                   type: string |  | ||||||
|                   x-kubernetes-validations: |  | ||||||
|                     - message: Value is immutable |  | ||||||
|                       rule: self == oldSelf |  | ||||||
|                 peers: |  | ||||||
|                   description: |- |  | ||||||
|                     Peers indicate the BGP peers for which the service is configured to be advertised to. |  | ||||||
|                     The service being actually advertised to a given peer depends on the session state and is not indicated here. |  | ||||||
|                   items: |  | ||||||
|                     type: string |  | ||||||
|                   type: array |  | ||||||
|                 serviceName: |  | ||||||
|                   description: ServiceName indicates the service this status represents. |  | ||||||
|                   type: string |  | ||||||
|                   x-kubernetes-validations: |  | ||||||
|                     - message: Value is immutable |  | ||||||
|                       rule: self == oldSelf |  | ||||||
|                 serviceNamespace: |  | ||||||
|                   description: ServiceNamespace indicates the namespace of the service. |  | ||||||
|                   type: string |  | ||||||
|                   x-kubernetes-validations: |  | ||||||
|                     - message: Value is immutable |  | ||||||
|                       rule: self == oldSelf |  | ||||||
|               type: object |  | ||||||
|           type: object |  | ||||||
|       served: true |  | ||||||
|       storage: true |  | ||||||
|       subresources: |  | ||||||
|         status: {} |  | ||||||
| --- |  | ||||||
| apiVersion: apiextensions.k8s.io/v1 |  | ||||||
| kind: CustomResourceDefinition |  | ||||||
| metadata: |  | ||||||
|   annotations: |  | ||||||
|     controller-gen.kubebuilder.io/version: v0.17.2 |  | ||||||
|   name: servicel2statuses.metallb.io |   name: servicel2statuses.metallb.io | ||||||
| spec: | spec: | ||||||
|   group: metallb.io |   group: metallb.io | ||||||
|   | |||||||
| @@ -1,10 +1,10 @@ | |||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: v0.0.20 | appVersion: v0.0.16 | ||||||
| dependencies: | dependencies: | ||||||
| - condition: crds.enabled | - condition: crds.enabled | ||||||
|   name: crds |   name: crds | ||||||
|   repository: file://./charts/crds |   repository: file://./charts/crds | ||||||
|   version: 0.0.20 |   version: 0.0.16 | ||||||
| description: A cloud native wrapper of FRR | description: A cloud native wrapper of FRR | ||||||
| home: https://metallb.universe.tf | home: https://metallb.universe.tf | ||||||
| icon: https://metallb.universe.tf/images/logo/metallb-white.png | icon: https://metallb.universe.tf/images/logo/metallb-white.png | ||||||
| @@ -13,4 +13,4 @@ name: frr-k8s | |||||||
| sources: | sources: | ||||||
| - https://github.com/metallb/frr-k8s | - https://github.com/metallb/frr-k8s | ||||||
| type: application | type: application | ||||||
| version: 0.0.20 | version: 0.0.16 | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # frr-k8s | # frr-k8s | ||||||
|  |  | ||||||
|    |    | ||||||
|  |  | ||||||
| A cloud native wrapper of FRR | A cloud native wrapper of FRR | ||||||
|  |  | ||||||
| @@ -16,7 +16,7 @@ Kubernetes: `>= 1.19.0-0` | |||||||
|  |  | ||||||
| | Repository | Name | Version | | | Repository | Name | Version | | ||||||
| |------------|------|---------| | |------------|------|---------| | ||||||
| |  | crds | 0.0.20 | | |  | crds | 0.0.16 | | ||||||
|  |  | ||||||
| ## Values | ## Values | ||||||
|  |  | ||||||
| @@ -30,7 +30,7 @@ Kubernetes: `>= 1.19.0-0` | |||||||
| | frrk8s.frr.acceptIncomingBGPConnections | bool | `false` |  | | | frrk8s.frr.acceptIncomingBGPConnections | bool | `false` |  | | ||||||
| | frrk8s.frr.image.pullPolicy | string | `nil` |  | | | frrk8s.frr.image.pullPolicy | string | `nil` |  | | ||||||
| | frrk8s.frr.image.repository | string | `"registry.opensuse.org/isv/suse/edge/metallb/images/frr"` |  | | | frrk8s.frr.image.repository | string | `"registry.opensuse.org/isv/suse/edge/metallb/images/frr"` |  | | ||||||
| | frrk8s.frr.image.tag | string | `"10.2.1"` |  | | | frrk8s.frr.image.tag | string | `"8.5.6"` |  | | ||||||
| | frrk8s.frr.metricsBindAddress | string | `"127.0.0.1"` |  | | | frrk8s.frr.metricsBindAddress | string | `"127.0.0.1"` |  | | ||||||
| | frrk8s.frr.metricsPort | int | `7573` |  | | | frrk8s.frr.metricsPort | int | `7573` |  | | ||||||
| | frrk8s.frr.resources | object | `{}` |  | | | frrk8s.frr.resources | object | `{}` |  | | ||||||
| @@ -78,7 +78,7 @@ Kubernetes: `>= 1.19.0-0` | |||||||
| | prometheus.rbacPrometheus | bool | `false` |  | | | prometheus.rbacPrometheus | bool | `false` |  | | ||||||
| | prometheus.rbacProxy.pullPolicy | string | `nil` |  | | | prometheus.rbacProxy.pullPolicy | string | `nil` |  | | ||||||
| | prometheus.rbacProxy.repository | string | `"registry.opensuse.org/isv/suse/edge/metallb/images/kube-rbac-proxy"` |  | | | prometheus.rbacProxy.repository | string | `"registry.opensuse.org/isv/suse/edge/metallb/images/kube-rbac-proxy"` |  | | ||||||
| | prometheus.rbacProxy.tag | string | `"v0.19.1"` |  | | | prometheus.rbacProxy.tag | string | `"v0.18.0"` |  | | ||||||
| | prometheus.scrapeAnnotations | bool | `false` |  | | | prometheus.scrapeAnnotations | bool | `false` |  | | ||||||
| | prometheus.secureMetricsPort | int | `9140` |  | | | prometheus.secureMetricsPort | int | `9140` |  | | ||||||
| | prometheus.serviceAccount | string | `""` |  | | | prometheus.serviceAccount | string | `""` |  | | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| apiVersion: v2 | apiVersion: v2 | ||||||
| appVersion: v0.0.20 | appVersion: v0.0.16 | ||||||
| description: FRR K8s CRDs | description: FRR K8s CRDs | ||||||
| home: https://metallb.universe.tf | home: https://metallb.universe.tf | ||||||
| icon: https://metallb.universe.tf/images/logo/metallb-white.png | icon: https://metallb.universe.tf/images/logo/metallb-white.png | ||||||
| @@ -7,4 +7,4 @@ name: crds | |||||||
| sources: | sources: | ||||||
| - https://github.com/metallb/frr-k8s | - https://github.com/metallb/frr-k8s | ||||||
| type: application | type: application | ||||||
| version: 0.0.20 | version: 0.0.16 | ||||||
|   | |||||||
| @@ -98,7 +98,7 @@ frrk8s: | |||||||
|   tolerateMaster: true |   tolerateMaster: true | ||||||
|   image: |   image: | ||||||
|     repository: "registry.opensuse.org/isv/suse/edge/metallb/images/frr-k8s" |     repository: "registry.opensuse.org/isv/suse/edge/metallb/images/frr-k8s" | ||||||
|     tag: "v0.0.20" |     tag: "v0.0.16" | ||||||
|     pullPolicy: IfNotPresent |     pullPolicy: IfNotPresent | ||||||
|   ## @param controller.updateStrategy.type FRR-K8s controller daemonset strategy type |   ## @param controller.updateStrategy.type FRR-K8s controller daemonset strategy type | ||||||
|   ## ref: https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/ |   ## ref: https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/ | ||||||
| @@ -161,7 +161,7 @@ frrk8s: | |||||||
|   frr: |   frr: | ||||||
|     image: |     image: | ||||||
|       repository: "registry.opensuse.org/isv/suse/edge/metallb/images/frr" |       repository: "registry.opensuse.org/isv/suse/edge/metallb/images/frr" | ||||||
|       tag: "10.2.1" |       tag: "8.5.6" | ||||||
|       pullPolicy: IfNotPresent |       pullPolicy: IfNotPresent | ||||||
|     metricsBindAddress: 127.0.0.1 |     metricsBindAddress: 127.0.0.1 | ||||||
|     metricsPort: 7573 |     metricsPort: 7573 | ||||||
|   | |||||||
| @@ -110,9 +110,6 @@ rules: | |||||||
| - apiGroups: ["metallb.io"] | - apiGroups: ["metallb.io"] | ||||||
|   resources: ["communities"] |   resources: ["communities"] | ||||||
|   verbs: ["get", "list", "watch"] |   verbs: ["get", "list", "watch"] | ||||||
| - apiGroups: ["metallb.io"] |  | ||||||
|   resources: ["servicebgpstatuses","servicebgpstatuses/status"] |  | ||||||
|   verbs: ["*"] |  | ||||||
| {{- end }} | {{- end }} | ||||||
| --- | --- | ||||||
| apiVersion: rbac.authorization.k8s.io/v1 | apiVersion: rbac.authorization.k8s.io/v1 | ||||||
| @@ -141,9 +138,6 @@ rules: | |||||||
| - apiGroups: ["metallb.io"] | - apiGroups: ["metallb.io"] | ||||||
|   resources: ["ipaddresspools"] |   resources: ["ipaddresspools"] | ||||||
|   verbs: ["get", "list", "watch"] |   verbs: ["get", "list", "watch"] | ||||||
| - apiGroups: ["metallb.io"] |  | ||||||
|   resources: ["ipaddresspools/status"] |  | ||||||
|   verbs: ["update"] |  | ||||||
| - apiGroups: ["metallb.io"] | - apiGroups: ["metallb.io"] | ||||||
|   resources: ["bgppeers"] |   resources: ["bgppeers"] | ||||||
|   verbs: ["get", "list"] |   verbs: ["get", "list"] | ||||||
|   | |||||||
| @@ -59,7 +59,7 @@ prometheus: | |||||||
|   # the image to be used for the kuberbacproxy container |   # the image to be used for the kuberbacproxy container | ||||||
|   rbacProxy: |   rbacProxy: | ||||||
|     repository: "%%IMG_REPO%%/%%IMG_PREFIX%%kube-rbac-proxy" |     repository: "%%IMG_REPO%%/%%IMG_PREFIX%%kube-rbac-proxy" | ||||||
|     tag: "0.19.1" |     tag: "0.18.1" | ||||||
|     pullPolicy: IfNotPresent |     pullPolicy: IfNotPresent | ||||||
|  |  | ||||||
|   # Prometheus Operator PodMonitors |   # Prometheus Operator PodMonitors | ||||||
| @@ -201,7 +201,7 @@ controller: | |||||||
|   # webhookMode: enabled |   # webhookMode: enabled | ||||||
|   image: |   image: | ||||||
|     repository: "%%IMG_REPO%%/%%IMG_PREFIX%%metallb-controller" |     repository: "%%IMG_REPO%%/%%IMG_PREFIX%%metallb-controller" | ||||||
|     tag: "v0.15.2" |     tag: "v0.14.9" | ||||||
|     pullPolicy: IfNotPresent |     pullPolicy: IfNotPresent | ||||||
|   ## @param controller.updateStrategy.type Metallb controller deployment strategy type. |   ## @param controller.updateStrategy.type Metallb controller deployment strategy type. | ||||||
|   ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy |   ## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy | ||||||
| @@ -282,7 +282,7 @@ speaker: | |||||||
|  |  | ||||||
|   image: |   image: | ||||||
|     repository: "%%IMG_REPO%%/%%IMG_PREFIX%%metallb-speaker" |     repository: "%%IMG_REPO%%/%%IMG_PREFIX%%metallb-speaker" | ||||||
|     tag: "v0.15.2" |     tag: "v0.14.9" | ||||||
|     pullPolicy: IfNotPresent |     pullPolicy: IfNotPresent | ||||||
|   ## @param speaker.updateStrategy.type Speaker daemonset strategy type |   ## @param speaker.updateStrategy.type Speaker daemonset strategy type | ||||||
|   ## ref: https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/ |   ## ref: https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/ | ||||||
| @@ -346,7 +346,7 @@ speaker: | |||||||
|     enabled: false |     enabled: false | ||||||
|     image: |     image: | ||||||
|       repository: "%%IMG_REPO%%/%%IMG_PREFIX%%frr" |       repository: "%%IMG_REPO%%/%%IMG_PREFIX%%frr" | ||||||
|       tag: "10.2.1" |       tag: "8.5.6" | ||||||
|       pullPolicy: IfNotPresent |       pullPolicy: IfNotPresent | ||||||
|     metricsPort: 7473 |     metricsPort: 7473 | ||||||
|     resources: {} |     resources: {} | ||||||
|   | |||||||
| @@ -2,7 +2,7 @@ | |||||||
|  <service name="obs_scm"> |  <service name="obs_scm"> | ||||||
|     <param name="url">https://github.com/metallb/metallb</param> |     <param name="url">https://github.com/metallb/metallb</param> | ||||||
|     <param name="scm">git</param> |     <param name="scm">git</param> | ||||||
|     <param name="revision">v0.15.2</param> |     <param name="revision">v0.14.9</param> | ||||||
|     <param name="version">_auto_</param> |     <param name="version">_auto_</param> | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |     <param name="versionformat">@PARENT_TAG@</param> | ||||||
|     <param name="changesgenerate">enable</param> |     <param name="changesgenerate">enable</param> | ||||||
| @@ -18,4 +18,4 @@ | |||||||
|   <service name="go_modules"> |   <service name="go_modules"> | ||||||
|   </service> |   </service> | ||||||
|   <service mode="buildtime" name="set_version" /> |   <service mode="buildtime" name="set_version" /> | ||||||
| </services> | </services> | ||||||
| @@ -17,14 +17,14 @@ | |||||||
|  |  | ||||||
|  |  | ||||||
| Name:           metallb | Name:           metallb | ||||||
| Version:        0.15.2 | Version:        0.14.9 | ||||||
| Release:        0.15.2 | Release:        0.14.9 | ||||||
| Summary:        Load Balancer for bare metal Kubernetes clusters | Summary:        Load Balancer for bare metal Kubernetes clusters | ||||||
| License:        Apache-2.0 | License:        Apache-2.0 | ||||||
| URL:            https://github.com/metallb/metallb | URL:            https://github.com/metallb/metallb | ||||||
| Source:         %{name}-%{version}.tar | Source:         %{name}-%{version}.tar | ||||||
| Source1:        vendor.tar.gz | Source1:        vendor.tar.gz | ||||||
| BuildRequires:  golang(API) = 1.24 | BuildRequires:  golang(API) = 1.22 | ||||||
| ExcludeArch:    s390 | ExcludeArch:    s390 | ||||||
| ExcludeArch:    %{ix86} | ExcludeArch:    %{ix86} | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,31 +0,0 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 |  | ||||||
| #!BuildTag: %%IMG_PREFIX%%nessie:%%nessie_version%% |  | ||||||
| #!BuildTag: %%IMG_PREFIX%%nessie:%%nessie_version%%-%RELEASE% |  | ||||||
|  |  | ||||||
| ARG SLE_VERSION |  | ||||||
| FROM registry.suse.com/bci/bci-base:$SLE_VERSION |  | ||||||
|  |  | ||||||
| # labelprefix=com.suse.application.nessie |  | ||||||
| LABEL org.opencontainers.image.title="nessie" |  | ||||||
| LABEL org.opencontainers.image.description="Nessie diagnostic tool for SUSE Kubernetes environments" |  | ||||||
| LABEL org.opencontainers.image.version="%%nessie_version%%" |  | ||||||
| LABEL org.opencontainers.image.authors="George Agriogiannis <george.agriogiannis2@suse.com>" |  | ||||||
| LABEL org.opencontainers.image.url="https://github.com/suse-edge/support-tools/tree/main/nessie" |  | ||||||
| LABEL org.opencontainers.image.vendor="SUSE LLC" |  | ||||||
| LABEL org.opencontainers.image.created="%BUILDTIME%" |  | ||||||
| LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%nessie:%%nessie_version%%-%RELEASE%" |  | ||||||
| LABEL org.openbuildservice.disturl="%DISTURL%" |  | ||||||
| LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%" |  | ||||||
| LABEL com.suse.eula="SUSE Combined EULA February 2024" |  | ||||||
| LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle" |  | ||||||
| LABEL com.suse.image-type="application" |  | ||||||
| LABEL com.suse.release-stage="released" |  | ||||||
| # endlabelprefix |  | ||||||
|  |  | ||||||
| RUN zypper --non-interactive refresh && \ |  | ||||||
|     zypper --non-interactive install --no-recommends nessie && \ |  | ||||||
|     zypper clean |  | ||||||
|  |  | ||||||
| WORKDIR /tmp |  | ||||||
|  |  | ||||||
| ENTRYPOINT ["/usr/bin/nessie"] |  | ||||||
| @@ -1,19 +0,0 @@ | |||||||
| <services> |  | ||||||
|   <service mode="buildtime" name="kiwi_metainfo_helper"/> |  | ||||||
|   <service mode="buildtime" name="docker_label_helper"/> |  | ||||||
|   <service name="replace_using_package_version" mode="buildtime"> |  | ||||||
|     <param name="file">Dockerfile</param> |  | ||||||
|     <param name="regex">%%nessie_version%%</param> |  | ||||||
|     <param name="package">nessie</param> |  | ||||||
|     <param name="parse-version">patch</param> |  | ||||||
|   </service> |  | ||||||
|   <service name="replace_using_env" mode="buildtime"> |  | ||||||
|     <param name="file">Dockerfile</param> |  | ||||||
|     <param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param> |  | ||||||
|     <param name="var">IMG_PREFIX</param> |  | ||||||
|     <param name="eval">IMG_REPO=$(rpm --macros=/root/.rpmmacros -E %img_repo)</param> |  | ||||||
|     <param name="var">IMG_REPO</param> |  | ||||||
|     <param name="eval">SUPPORT_LEVEL=$(rpm --macros=/root/.rpmmacros -E %support_level)</param> |  | ||||||
|     <param name="var">SUPPORT_LEVEL</param> |  | ||||||
|   </service> |  | ||||||
| </services> |  | ||||||
| @@ -1,26 +0,0 @@ | |||||||
| <services> |  | ||||||
|   <service name="obs_scm"> |  | ||||||
|     <param name="url">https://github.com/suse-edge/support-tools</param> |  | ||||||
|     <param name="scm">git</param> |  | ||||||
|     <param name="revision">nessie-v1.0.0</param> |  | ||||||
|     <param name="version">_auto_</param> |  | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |  | ||||||
|     <param name="changesgenerate">enable</param> |  | ||||||
|     <param name="changesauthor">george.agriogiannis2@suse.com</param> |  | ||||||
|     <param name="match-tag">nessie-v*</param> |  | ||||||
|     <param name="versionrewrite-pattern">nessie-v(\d+\.\d+\.\d+)</param> |  | ||||||
|     <param name="versionrewrite-replacement">\1</param> |  | ||||||
|     <param name="subdir">nessie</param> |  | ||||||
|     <param name="exclude">.git</param> |  | ||||||
|     <param name="without-version">yes</param> |  | ||||||
|     <param name="filename">nessie</param> |  | ||||||
|   </service> |  | ||||||
|   <service mode="buildtime" name="tar"> |  | ||||||
|     <param name="obsinfo">nessie.obsinfo</param> |  | ||||||
|   </service> |  | ||||||
|   <service mode="buildtime" name="recompress"> |  | ||||||
|     <param name="file">*.tar</param> |  | ||||||
|     <param name="compression">gz</param> |  | ||||||
|   </service> |  | ||||||
|   <service mode="buildtime" name="set_version" /> |  | ||||||
| </services> |  | ||||||
| @@ -1,80 +0,0 @@ | |||||||
| # |  | ||||||
| # spec file for package nessie |  | ||||||
| # |  | ||||||
| # Copyright (c) 2024 SUSE LLC |  | ||||||
| # |  | ||||||
| # All modifications and additions to the file contributed by third parties |  | ||||||
| # remain the property of their copyright owners, unless otherwise agreed |  | ||||||
| # upon. The license for this file, and modifications and additions to the |  | ||||||
| # file, is the same license as for the pristine package itself (unless the |  | ||||||
| # license for the pristine package is not an Open Source License, in which |  | ||||||
| # case the license is the MIT License). An "Open Source License" is a |  | ||||||
| # license that conforms to the Open Source Definition (Version 1.9) |  | ||||||
| # published by the Open Source Initiative. |  | ||||||
|  |  | ||||||
| # Please submit bugfixes or comments via https://bugs.opensuse.org/ |  | ||||||
| # |  | ||||||
|  |  | ||||||
| Name:           nessie |  | ||||||
| # Version will be set automatically by factory's set_version service |  | ||||||
| Version:        1.0.0 |  | ||||||
| Release:        0 |  | ||||||
| Summary:        Node Environment Support Script for Inspection and Export |  | ||||||
| License:        Apache-2.0 |  | ||||||
| Group:          System/Management |  | ||||||
| URL:            https://github.com/suse-edge/support-tools/tree/main/nessie |  | ||||||
| Source0:        %{name}-%{version}.tar.gz |  | ||||||
| BuildArch:      noarch |  | ||||||
|  |  | ||||||
| # Build dependencies |  | ||||||
| BuildRequires:  python3-devel |  | ||||||
|  |  | ||||||
| # Runtime dependencies |  | ||||||
| Requires:       python3 |  | ||||||
| Requires:       python3-kubernetes |  | ||||||
| Requires:       python3-PyYAML |  | ||||||
| Requires:       helm |  | ||||||
| Requires:       systemd |  | ||||||
|  |  | ||||||
| # Optional dependencies for enhanced functionality |  | ||||||
| Recommends:     util-linux |  | ||||||
|  |  | ||||||
| %description |  | ||||||
| Nessie (Node Environment Support Script for Inspection and Export) is a |  | ||||||
| comprehensive diagnostic tool for SUSE Kubernetes environments. It collects |  | ||||||
| logs, configurations, and system information from Kubernetes clusters for |  | ||||||
| troubleshooting and support purposes. |  | ||||||
|  |  | ||||||
| Key features: |  | ||||||
| - Collects system service logs and Kubernetes pod logs |  | ||||||
| - Gathers cluster configurations and Helm releases |  | ||||||
| - Retrieves node metrics and component versions |  | ||||||
| - Supports RKE2 and K3s environments |  | ||||||
| - Fault-tolerant with configurable options |  | ||||||
| - Can be run directly or as a container |  | ||||||
|  |  | ||||||
| The tool is designed specifically for SUSE Edge environments and integrates |  | ||||||
| well with SUSE Linux Micro, RKE2, and K3s distributions. |  | ||||||
|  |  | ||||||
| %prep |  | ||||||
| %autosetup |  | ||||||
|  |  | ||||||
| %build |  | ||||||
| # Validate Python syntax |  | ||||||
| python3 -m py_compile nessie.py |  | ||||||
|  |  | ||||||
| %install |  | ||||||
| # Install the main script |  | ||||||
| install -D -m 0755 nessie.py %{buildroot}%{_bindir}/nessie |  | ||||||
|  |  | ||||||
| # Install documentation files |  | ||||||
| install -D -m 0644 README.md %{buildroot}%{_docdir}/%{name}/README.md |  | ||||||
| install -D -m 0644 LICENSE %{buildroot}%{_docdir}/%{name}/LICENSE |  | ||||||
|  |  | ||||||
| %files |  | ||||||
| %{_bindir}/nessie |  | ||||||
| %dir %{_docdir}/%{name} |  | ||||||
| %doc %{_docdir}/%{name}/README.md |  | ||||||
| %license %{_docdir}/%{name}/LICENSE |  | ||||||
|  |  | ||||||
| %changelog |  | ||||||
| @@ -1,34 +0,0 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 |  | ||||||
| #!BuildTag: %%IMG_PREFIX%%network-resources-injector:v%%network-resources-injector_version%% |  | ||||||
| #!BuildTag: %%IMG_PREFIX%%network-resources-injector:v%%network-resources-injector_version%%-%RELEASE% |  | ||||||
| ARG SLE_VERSION |  | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro |  | ||||||
|  |  | ||||||
| FROM registry.suse.com/bci/bci-base:$SLE_VERSION AS base |  | ||||||
| COPY --from=micro / /installroot/ |  | ||||||
| RUN zypper --installroot /installroot --non-interactive install --no-recommends network-resources-injector gawk which; \ |  | ||||||
|     zypper -n clean; \ |  | ||||||
|     rm -rf /var/log/* |  | ||||||
|  |  | ||||||
| FROM micro AS final |  | ||||||
| # Define labels according to https://en.opensuse.org/Building_derived_containers |  | ||||||
| # labelprefix=com.suse.application.network-resources-injector |  | ||||||
| LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)" |  | ||||||
| LABEL org.opencontainers.image.title="SLE network-resources-injector Container Image" |  | ||||||
| LABEL org.opencontainers.image.description="network-resources-injector based on the SLE Base Container Image." |  | ||||||
| LABEL org.opencontainers.image.version="%%network-resources-injector_version%%" |  | ||||||
| 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%%network-resources-injector:%%network-resources-injector_version%%-%RELEASE%" |  | ||||||
| LABEL org.openbuildservice.disturl="%DISTURL%" |  | ||||||
| LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%" |  | ||||||
| LABEL com.suse.eula="SUSE Combined EULA February 2024" |  | ||||||
| LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle" |  | ||||||
| LABEL com.suse.image-type="application" |  | ||||||
| LABEL com.suse.release-stage="released" |  | ||||||
| # endlabelprefix |  | ||||||
|  |  | ||||||
| USER 1001 |  | ||||||
| COPY --from=base /installroot / |  | ||||||
| CMD ["/usr/bin/webhook"] |  | ||||||
| @@ -1,19 +0,0 @@ | |||||||
| <services> |  | ||||||
|   <service name="kiwi_metainfo_helper" mode="buildtime"/> |  | ||||||
|   <service name="docker_label_helper" mode="buildtime"/> |  | ||||||
|   <service name="replace_using_package_version" mode="buildtime"> |  | ||||||
|     <param name="file">Dockerfile</param> |  | ||||||
|     <param name="regex">%%network-resources-injector_version%%</param> |  | ||||||
|     <param name="package">network-resources-injector</param> |  | ||||||
|     <param name="parse-version">patch</param> |  | ||||||
|   </service> |  | ||||||
|   <service name="replace_using_env" mode="buildtime"> |  | ||||||
|     <param name="file">Dockerfile</param> |  | ||||||
|     <param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param> |  | ||||||
|     <param name="var">IMG_PREFIX</param> |  | ||||||
|     <param name="eval">IMG_REPO=$(rpm --macros=/root/.rpmmacros -E %img_repo)</param> |  | ||||||
|     <param name="var">IMG_REPO</param> |  | ||||||
|     <param name="eval">SUPPORT_LEVEL=$(rpm --macros=/root/.rpmmacros -E %support_level)</param> |  | ||||||
|     <param name="var">SUPPORT_LEVEL</param> |  | ||||||
|   </service> |  | ||||||
| </services> |  | ||||||
| @@ -1,20 +0,0 @@ | |||||||
| <services> |  | ||||||
|  <service name="obs_scm"> |  | ||||||
|     <param name="url">https://github.com/k8snetworkplumbingwg/network-resources-injector</param> |  | ||||||
|     <param name="scm">git</param> |  | ||||||
|     <param name="revision">v1.7.1</param> |  | ||||||
|     <param name="version">_auto_</param> |  | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |  | ||||||
|     <param name="changesgenerate">enable</param> |  | ||||||
|     <param name="changesauthor">antonio.alarcon@suse.com</param> |  | ||||||
|     <param name="match-tag">v*</param> |  | ||||||
|     <param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param> |  | ||||||
|     <param name="without-version">yes</param> |  | ||||||
|     <param name="versionrewrite-replacement">\1</param> |  | ||||||
|   </service> |  | ||||||
|   <service mode="buildtime" name="tar"> |  | ||||||
|     <param name="obsinfo">network-resources-injector.obsinfo</param> |  | ||||||
|   </service> |  | ||||||
|   <service name="go_modules" /> |  | ||||||
|   <service mode="buildtime" name="set_version" /> |  | ||||||
| </services> |  | ||||||
| @@ -1,62 +0,0 @@ | |||||||
| # |  | ||||||
| # spec file for package network-resources-injector |  | ||||||
| # |  | ||||||
| # Copyright (c) 2025 SUSE LLC |  | ||||||
| # |  | ||||||
| # All modifications and additions to the file contributed by third parties |  | ||||||
| # remain the property of their copyright owners, unless otherwise agreed |  | ||||||
| # upon. The license for this file, and modifications and additions to the |  | ||||||
| # file, is the same license as for the pristine package itself (unless the |  | ||||||
| # license for the pristine package is not an Open Source License, in which |  | ||||||
| # case the license is the MIT License). An "Open Source License" is a |  | ||||||
| # license that conforms to the Open Source Definition (Version 1.9) |  | ||||||
| # published by the Open Source Initiative. |  | ||||||
|  |  | ||||||
| # Please submit bugfixes or comments via https://bugs.opensuse.org/ |  | ||||||
| # |  | ||||||
|  |  | ||||||
|  |  | ||||||
| Name:           network-resources-injector |  | ||||||
| Version:        0 |  | ||||||
| Release:        0 |  | ||||||
| Summary:        Kubernetes admission controller able to patch pod spec's requests and limits on custom network resources |  | ||||||
| License:        Apache-2.0 |  | ||||||
| URL:            https://github.com/k8snetworkplumbingwg/network-resources-injector |  | ||||||
| Source:         %{name}-%{version}.tar |  | ||||||
| Source1:        vendor.tar.gz |  | ||||||
| BuildRequires:  golang(API) = 1.21 |  | ||||||
| ExcludeArch:    s390 |  | ||||||
| ExcludeArch:    %{ix86} |  | ||||||
|  |  | ||||||
| %description |  | ||||||
| Network Resources Injector is a Kubernetes Dynamic Admission Controller application that provides functionality of |  | ||||||
| patching Kubernetes pod specifications with requests and limits of custom network resources (managed by device plugins |  | ||||||
| such as k8snetworkplumbingwg/sriov-network-device-plugin). Requires Multus Network-Attach-Definition (NAD) custom |  | ||||||
| objects to be created before creating the pod object referring/pointing to them; custom network resources' request and |  | ||||||
| limits to add to the pod spec are inferred from the pointed NAD/s. |  | ||||||
|  |  | ||||||
| %prep |  | ||||||
| %autosetup -a1 -n %{name}-%{version} -p1 |  | ||||||
|  |  | ||||||
| %build |  | ||||||
| # CGO is disabled by default in upstream Makefile |  | ||||||
| %define cgoenabled "0" |  | ||||||
| # go build constrain (aka tag) "no_openssl" is set by default in upstream Makefile |  | ||||||
| %define buildgotags "no_openssl" |  | ||||||
| %define buildldflags "-w -s" |  | ||||||
| CGO_ENABLED=%{cgoenabled} go build -mod=vendor -buildmode=pie -trimpath -ldflags %{buildldflags} -tags %{buildgotags} -o installer ./cmd/installer |  | ||||||
| CGO_ENABLED=%{cgoenabled} go build -mod=vendor -buildmode=pie -trimpath -ldflags %{buildldflags} -tags %{buildgotags} -o webhook ./cmd/webhook |  | ||||||
|  |  | ||||||
|  |  | ||||||
| %install |  | ||||||
| install -D -m0755 installer %{buildroot}%{_bindir}/installer |  | ||||||
| install -D -m0755 webhook %{buildroot}%{_bindir}/webhook |  | ||||||
|  |  | ||||||
|  |  | ||||||
| %files |  | ||||||
| %license LICENSE |  | ||||||
| %doc README.md |  | ||||||
| %{_bindir}/installer |  | ||||||
| %{_bindir}/webhook |  | ||||||
|  |  | ||||||
| %changelog |  | ||||||
| @@ -1,35 +0,0 @@ | |||||||
| # SPDX-License-Identifier: Apache-2.0 |  | ||||||
| #!BuildTag: %%IMG_PREFIX%%node-feature-discovery:v%%node-feature-discovery_version%% |  | ||||||
| #!BuildTag: %%IMG_PREFIX%%node-feature-discovery:v%%node-feature-discovery_version%%-%RELEASE% |  | ||||||
| ARG SLE_VERSION |  | ||||||
| FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro |  | ||||||
|  |  | ||||||
| FROM registry.suse.com/bci/bci-base:$SLE_VERSION AS base |  | ||||||
| COPY --from=micro / /installroot/ |  | ||||||
| RUN zypper --installroot /installroot --non-interactive install --no-recommends node-feature-discovery; \ |  | ||||||
|     zypper -n clean; \ |  | ||||||
|     rm -rf /var/log/* |  | ||||||
|  |  | ||||||
| FROM micro AS final |  | ||||||
| # Define labels according to https://en.opensuse.org/Building_derived_containers |  | ||||||
| # labelprefix=com.suse.application.node-feature-discovery |  | ||||||
| LABEL org.opencontainers.image.authors="SUSE LLC (https://www.suse.com/)" |  | ||||||
| LABEL org.opencontainers.image.title="SLE node-feature-discovery Container Image" |  | ||||||
| LABEL org.opencontainers.image.description="node-feature-discovery based on the SLE Base Container Image." |  | ||||||
| LABEL org.opencontainers.image.version="%%node-feature-discovery_version%%" |  | ||||||
| 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%%node-feature-discovery:%%node-feature-discovery_version%%-%RELEASE%" |  | ||||||
| LABEL org.openbuildservice.disturl="%DISTURL%" |  | ||||||
| LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%" |  | ||||||
| LABEL com.suse.eula="SUSE Combined EULA February 2024" |  | ||||||
| LABEL com.suse.lifecycle-url="https://www.suse.com/lifecycle" |  | ||||||
| LABEL com.suse.image-type="application" |  | ||||||
| LABEL com.suse.release-stage="released" |  | ||||||
| # endlabelprefix |  | ||||||
|  |  | ||||||
| USER 65534:65534 |  | ||||||
| COPY --from=base /installroot / |  | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -1,19 +0,0 @@ | |||||||
| <services> |  | ||||||
|   <service name="kiwi_metainfo_helper" mode="buildtime"/> |  | ||||||
|   <service name="docker_label_helper" mode="buildtime"/> |  | ||||||
|   <service name="replace_using_package_version" mode="buildtime"> |  | ||||||
|     <param name="file">Dockerfile</param> |  | ||||||
|     <param name="regex">%%node-feature-discovery_version%%</param> |  | ||||||
|     <param name="package">node-feature-discovery</param> |  | ||||||
|     <param name="parse-version">patch</param> |  | ||||||
|   </service> |  | ||||||
|   <service name="replace_using_env" mode="buildtime"> |  | ||||||
|     <param name="file">Dockerfile</param> |  | ||||||
|     <param name="eval">IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix})</param> |  | ||||||
|     <param name="var">IMG_PREFIX</param> |  | ||||||
|     <param name="eval">IMG_REPO=$(rpm --macros=/root/.rpmmacros -E %img_repo)</param> |  | ||||||
|     <param name="var">IMG_REPO</param> |  | ||||||
|     <param name="eval">SUPPORT_LEVEL=$(rpm --macros=/root/.rpmmacros -E %support_level)</param> |  | ||||||
|     <param name="var">SUPPORT_LEVEL</param> |  | ||||||
|   </service> |  | ||||||
| </services> |  | ||||||
| @@ -1,20 +0,0 @@ | |||||||
| <services> |  | ||||||
|  <service name="obs_scm"> |  | ||||||
|     <param name="url">https://github.com/kubernetes-sigs/node-feature-discovery</param> |  | ||||||
|     <param name="scm">git</param> |  | ||||||
|     <param name="revision">v0.15.7</param> |  | ||||||
|     <param name="version">_auto_</param> |  | ||||||
|     <param name="versionformat">@PARENT_TAG@</param> |  | ||||||
|     <param name="changesgenerate">enable</param> |  | ||||||
|     <param name="changesauthor">antonio.alarcon@suse.com</param> |  | ||||||
|     <param name="match-tag">v*</param> |  | ||||||
|     <param name="versionrewrite-pattern">v(\d+\.\d+\.\d+)</param> |  | ||||||
|     <param name="without-version">yes</param> |  | ||||||
|     <param name="versionrewrite-replacement">\1</param> |  | ||||||
|   </service> |  | ||||||
|   <service mode="buildtime" name="tar"> |  | ||||||
|     <param name="obsinfo">node-feature-discovery.obsinfo</param> |  | ||||||
|   </service> |  | ||||||
|   <service name="go_modules" /> |  | ||||||
|   <service mode="buildtime" name="set_version" /> |  | ||||||
| </services> |  | ||||||
| @@ -1,91 +0,0 @@ | |||||||
| # |  | ||||||
| # spec file for package node-feature-discovery |  | ||||||
| # |  | ||||||
| # Copyright (c) 2025 SUSE LLC |  | ||||||
| # |  | ||||||
| # All modifications and additions to the file contributed by third parties |  | ||||||
| # remain the property of their copyright owners, unless otherwise agreed |  | ||||||
| # upon. The license for this file, and modifications and additions to the |  | ||||||
| # file, is the same license as for the pristine package itself (unless the |  | ||||||
| # license for the pristine package is not an Open Source License, in which |  | ||||||
| # case the license is the MIT License). An "Open Source License" is a |  | ||||||
| # license that conforms to the Open Source Definition (Version 1.9) |  | ||||||
| # published by the Open Source Initiative. |  | ||||||
|  |  | ||||||
| # Please submit bugfixes or comments via https://bugs.opensuse.org/ |  | ||||||
| # |  | ||||||
|  |  | ||||||
|  |  | ||||||
| Name:           node-feature-discovery |  | ||||||
| Version:        0 |  | ||||||
| Release:        0 |  | ||||||
| Summary:        Advertises hardware features available on each Kubernetes node using node labels |  | ||||||
| License:        Apache-2.0 |  | ||||||
| URL:            https://github.com/kubernetes-sigs/node-feature-discovery |  | ||||||
| Source:         %{name}-%{version}.tar |  | ||||||
| Source1:        vendor.tar.gz |  | ||||||
| BuildRequires:  glibc-static |  | ||||||
| BuildRequires:  golang(API) = 1.21 |  | ||||||
| ExcludeArch:    s390 |  | ||||||
| ExcludeArch:    %{ix86} |  | ||||||
|  |  | ||||||
| %description |  | ||||||
| Node-Feature-Discovery (NFD) software enables node feature discovery for Kubernetes. It detects hardware features available on each node in a |  | ||||||
| Kubernetes cluster, and advertises those features using node labels and optionally node extended resources, annotations and node taints. |  | ||||||
| Node Feature Discovery is compatible with any recent version of Kubernetes (v1.21+). |  | ||||||
|  |  | ||||||
| NFD consists of four software components: |  | ||||||
| - nfd-master: |  | ||||||
|     daemon responsible for communication towards the Kubernetes API. That is, it receives labeling requests from the worker and modifies node |  | ||||||
|     objects accordingly. |  | ||||||
| - nfd-worker: |  | ||||||
|     daemon responsible for feature detection. It then communicates the information to nfd-master which does the actual node labeling. One instance |  | ||||||
|     of nfd-worker is supposed to be running on each node of the cluster. |  | ||||||
| - nfd-topology-updater: |  | ||||||
|     daemon responsible for examining allocated resources on a worker node to account for resources available to be allocated to new pod on a per-zone |  | ||||||
|     basis (where a zone can be a NUMA node). It then creates or updates a NodeResourceTopology custom resource object specific to this node. One instance |  | ||||||
|     of nfd-topology-updater is supposed to be running on each node of the cluster. |  | ||||||
| - nfd-gc: |  | ||||||
|     daemon responsible for cleaning obsolete NodeFeature and NodeResourceTopology objects. |  | ||||||
|     One instance of nfd-gc is supposed to be running in the cluster. |  | ||||||
|  |  | ||||||
| %prep |  | ||||||
| %autosetup -a1 -n %{name}-%{version} -p1 |  | ||||||
|  |  | ||||||
| %build |  | ||||||
| %define cgoenabled "1" |  | ||||||
| # Most of the following go-build settings, toghether the build requirement on glibc-static package (see above) come from the aim |  | ||||||
| # to get an statically linked binary (once CGO being enabled); they have been taken from upstream Makefile. |  | ||||||
| # |  | ||||||
| # Apart from that, the "host-" setting in "pathPrefix" variable in "sigs.k8s.io/node-feature-discovery/pkg/utils/hostpath" package |  | ||||||
| # (below) is required for alignment with the several mount paths set in the nfd chart's "worker" daemonset (yaml) template, for |  | ||||||
| # all the hostPath volumes defined there. |  | ||||||
| %define buildgotags "osusergo,netgo" |  | ||||||
| %define buildldflags "-linkmode=external -extldflags '-static -Wl,--fatal-warnings' -X sigs.k8s.io/node-feature-discovery/pkg/version.version=v%{version} -X sigs.k8s.io/node-feature-discovery/pkg/utils/hostpath.pathPrefix=/host- -s -w" |  | ||||||
| CGO_ENABLED=%{cgoenabled} go build -mod=vendor -trimpath -tags %{buildgotags} -ldflags %{buildldflags} -o kubectl-nfd ./cmd/kubectl-nfd |  | ||||||
| CGO_ENABLED=%{cgoenabled} go build -mod=vendor -trimpath -tags %{buildgotags} -ldflags %{buildldflags} -o nfd-gc      ./cmd/nfd-gc |  | ||||||
| CGO_ENABLED=%{cgoenabled} go build -mod=vendor -trimpath -tags %{buildgotags} -ldflags %{buildldflags} -o nfd-master  ./cmd/nfd-master |  | ||||||
| CGO_ENABLED=%{cgoenabled} go build -mod=vendor -trimpath -tags %{buildgotags} -ldflags %{buildldflags} -o nfd-worker  ./cmd/nfd-worker |  | ||||||
| CGO_ENABLED=%{cgoenabled} go build -mod=vendor -trimpath -tags %{buildgotags} -ldflags %{buildldflags} -o nfd-topology-updater ./cmd/nfd-topology-updater |  | ||||||
|  |  | ||||||
| %install |  | ||||||
| install -D -m0755 kubectl-nfd %{buildroot}%{_bindir}/kubectl-nfd |  | ||||||
| install -D -m0755 nfd-gc %{buildroot}%{_bindir}/nfd-gc |  | ||||||
| install -D -m0755 nfd-master %{buildroot}%{_bindir}/nfd-master |  | ||||||
| install -D -m0755 nfd-worker %{buildroot}%{_bindir}/nfd-worker |  | ||||||
| install -D -m0755 nfd-topology-updater %{buildroot}%{_bindir}/nfd-topology-updater |  | ||||||
| install -D -m0644 ./deployment/components/worker-config/nfd-worker.conf.example %{buildroot}%{_sysconfdir}/kubernetes/node-feature-discovery/nfd-worker.conf |  | ||||||
|  |  | ||||||
| %files |  | ||||||
| %license LICENSE |  | ||||||
| %doc README.md |  | ||||||
| %{_bindir}/kubectl-nfd |  | ||||||
| %{_bindir}/nfd-gc |  | ||||||
| %{_bindir}/nfd-master |  | ||||||
| %{_bindir}/nfd-worker |  | ||||||
| %{_bindir}/nfd-topology-updater |  | ||||||
| %dir %{_sysconfdir}/kubernetes |  | ||||||
| %dir %{_sysconfdir}/kubernetes/node-feature-discovery |  | ||||||
| %{_sysconfdir}/kubernetes/node-feature-discovery/nfd-worker.conf |  | ||||||
|  |  | ||||||
| %changelog |  | ||||||
 Submodule python-annotated-types deleted from ffc9e3fb44
									
								
							 Submodule python-executing deleted from ac466db0b5
									
								
							 Submodule python-flit-core deleted from 4362b05ea3
									
								
							 Submodule python-inline-snapshot deleted from 1e917444d7
									
								
							Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user