forked from suse-edge/Factory
Compare commits
21 Commits
Author | SHA256 | Date | |
---|---|---|---|
59fd3c1a8b | |||
|
5b167e10ab | ||
9cbf868ba7
|
|||
7e04a91e72
|
|||
e9554a4399 | |||
45cd7fbc36 | |||
05f49fec7b | |||
d1cb632801 | |||
a1ba635f5d | |||
0295819a86 | |||
6875eea67f | |||
3652c43179 | |||
8403958d39 | |||
b77a565a57 | |||
a0180aa25a | |||
2a852b4266 | |||
1b112a8727 | |||
411e9ab220 | |||
9227c1bbeb | |||
994273a2a3 | |||
ec829ba559 |
24
.gitmodules
vendored
24
.gitmodules
vendored
@@ -13,3 +13,27 @@
|
||||
[submodule "autoconf"]
|
||||
path = autoconf
|
||||
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:
|
||||
- id: check-manifest
|
||||
name: "Check release-manifest"
|
||||
entry: .obs/manifest-check.py
|
||||
entry: python3 .obs/manifest-check.py
|
||||
language: python
|
||||
additional_dependencies: ['ruamel.yaml']
|
||||
pass_filenames: false
|
||||
|
9
_config
9
_config
@@ -50,6 +50,15 @@ Macros:
|
||||
BuildFlags: excludebuild:autoconf:el
|
||||
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
|
||||
%if "%_repository" == "test_manifest_images"
|
||||
BuildFlags: onlybuild:edge-image-builder-image
|
||||
|
@@ -1,6 +1,6 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%baremetal-operator:%%baremetal-operator_version%%.1
|
||||
#!BuildTag: %%IMG_PREFIX%%baremetal-operator:%%baremetal-operator_version%%.1-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%baremetal-operator:%%baremetal-operator_version%%.0
|
||||
#!BuildTag: %%IMG_PREFIX%%baremetal-operator:%%baremetal-operator_version%%.0-%RELEASE%
|
||||
ARG SLE_VERSION
|
||||
FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro
|
||||
|
||||
@@ -18,7 +18,7 @@ LABEL org.opencontainers.image.version="%%baremetal-operator_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%%baremetal-operator:%%baremetal-operator_version%%.1-%RELEASE%"
|
||||
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%baremetal-operator:%%baremetal-operator_version%%.0-%RELEASE%"
|
||||
LABEL org.openbuildservice.disturl="%DISTURL%"
|
||||
LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%"
|
||||
LABEL com.suse.eula="SUSE Combined EULA February 2024"
|
||||
|
@@ -2,7 +2,7 @@
|
||||
<service name="obs_scm">
|
||||
<param name="url">https://github.com/metal3-io/baremetal-operator</param>
|
||||
<param name="scm">git</param>
|
||||
<param name="revision">v0.9.1</param>
|
||||
<param name="revision">v0.10.2</param>
|
||||
<param name="version">_auto_</param>
|
||||
<param name="versionformat">@PARENT_TAG@</param>
|
||||
<param name="changesgenerate">enable</param>
|
||||
|
@@ -17,14 +17,14 @@
|
||||
|
||||
|
||||
Name: baremetal-operator
|
||||
Version: 0.9.1
|
||||
Version: 0.10.2
|
||||
Release: 0
|
||||
Summary: Implements a Kubernetes API for managing bare metal hosts
|
||||
License: Apache-2.0
|
||||
URL: https://github.com/metal3-io/baremetal-operator
|
||||
Source: baremetal-operator-%{version}.tar
|
||||
Source1: vendor.tar.gz
|
||||
BuildRequires: golang(API) = 1.23
|
||||
BuildRequires: golang(API) = 1.24
|
||||
ExcludeArch: s390
|
||||
ExcludeArch: %{ix86}
|
||||
|
||||
|
@@ -1,9 +1,9 @@
|
||||
#!BuildTag: %%CHART_PREFIX%%cdi:%%CHART_MAJOR%%.0.0_up0.5.0
|
||||
#!BuildTag: %%CHART_PREFIX%%cdi:%%CHART_MAJOR%%.0.0_up0.5.0-%RELEASE%
|
||||
#!BuildTag: %%CHART_PREFIX%%cdi:%%CHART_MAJOR%%.0.1_up0.6.0
|
||||
#!BuildTag: %%CHART_PREFIX%%cdi:%%CHART_MAJOR%%.0.1_up0.6.0-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: 1.61.0
|
||||
appVersion: 1.62.0
|
||||
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
|
||||
name: cdi
|
||||
type: application
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.5.0"
|
||||
version: "%%CHART_MAJOR%%.0.1+up0.6.0"
|
||||
|
@@ -109,9 +109,9 @@ spec:
|
||||
description: CDIConfig at CDI level
|
||||
properties:
|
||||
dataVolumeTTLSeconds:
|
||||
description: DataVolumeTTLSeconds is the time in seconds after
|
||||
DataVolume completion it can be garbage collected. Disabled
|
||||
by default.
|
||||
description: |-
|
||||
DataVolumeTTLSeconds is the time in seconds after DataVolume completion it can be garbage collected. Disabled by default.
|
||||
Deprecated: Removed in v1.62.
|
||||
format: int32
|
||||
type: integer
|
||||
featureGates:
|
||||
@@ -2641,9 +2641,9 @@ spec:
|
||||
description: CDIConfig at CDI level
|
||||
properties:
|
||||
dataVolumeTTLSeconds:
|
||||
description: DataVolumeTTLSeconds is the time in seconds after
|
||||
DataVolume completion it can be garbage collected. Disabled
|
||||
by default.
|
||||
description: |-
|
||||
DataVolumeTTLSeconds is the time in seconds after DataVolume completion it can be garbage collected. Disabled by default.
|
||||
Deprecated: Removed in v1.62.
|
||||
format: int32
|
||||
type: integer
|
||||
featureGates:
|
||||
|
@@ -599,6 +599,8 @@ spec:
|
||||
strategy: {}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
openshift.io/required-scc: restricted-v2
|
||||
labels:
|
||||
cdi.kubevirt.io: cdi-operator
|
||||
name: cdi-operator
|
||||
|
@@ -19,3 +19,7 @@ spec:
|
||||
workload:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.cdi.customizeComponents }}
|
||||
customizeComponents:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
|
@@ -1,12 +1,12 @@
|
||||
deployment:
|
||||
version: 1.61.0-150600.3.12.1
|
||||
operatorImage: registry.suse.com/suse/sles/15.6/cdi-operator
|
||||
controllerImage: registry.suse.com/suse/sles/15.6/cdi-controller
|
||||
importerImage: registry.suse.com/suse/sles/15.6/cdi-importer
|
||||
clonerImage: registry.suse.com/suse/sles/15.6/cdi-cloner
|
||||
apiserverImage: registry.suse.com/suse/sles/15.6/cdi-apiserver
|
||||
uploadserverImage: registry.suse.com/suse/sles/15.6/cdi-uploadserver
|
||||
uploadproxyImage: registry.suse.com/suse/sles/15.6/cdi-uploadproxy
|
||||
version: 1.62.0-150700.9.3.1
|
||||
operatorImage: registry.suse.com/suse/sles/15.7/cdi-operator
|
||||
controllerImage: registry.suse.com/suse/sles/15.7/cdi-controller
|
||||
importerImage: registry.suse.com/suse/sles/15.7/cdi-importer
|
||||
clonerImage: registry.suse.com/suse/sles/15.7/cdi-cloner
|
||||
apiserverImage: registry.suse.com/suse/sles/15.7/cdi-apiserver
|
||||
uploadserverImage: registry.suse.com/suse/sles/15.7/cdi-uploadserver
|
||||
uploadproxyImage: registry.suse.com/suse/sles/15.7/cdi-uploadproxy
|
||||
pullPolicy: IfNotPresent
|
||||
affinity:
|
||||
podAffinity:
|
||||
@@ -30,6 +30,7 @@ cdi:
|
||||
featureGates:
|
||||
- HonorWaitForFirstConsumer
|
||||
imagePullPolicy: "IfNotPresent"
|
||||
customizeComponents: {}
|
||||
infra:
|
||||
nodeSelector:
|
||||
kubernetes.io/os: linux
|
||||
@@ -41,7 +42,7 @@ cdi:
|
||||
nodeSelector:
|
||||
kubernetes.io/os: linux
|
||||
|
||||
hookImage: registry.rancher.com/rancher/kubectl:v1.30.10
|
||||
hookImage: registry.rancher.com/rancher/kubectl:v1.33.1
|
||||
hookRestartPolicy: OnFailure
|
||||
hookSecurityContext:
|
||||
seccompProfile:
|
||||
|
@@ -10,6 +10,8 @@ kubernetes:
|
||||
k3s:
|
||||
selinuxPackage: k3s-selinux-1.6-1.slemicro.noarch
|
||||
selinuxRepository: https://rpm.rancher.io/k3s/stable/common/slemicro/noarch
|
||||
releaseURL: https://github.com/k3s-io/k3s/releases/download/
|
||||
rke2:
|
||||
selinuxPackage: rke2-selinux
|
||||
selinuxRepository: https://rpm.rancher.io/rke2/stable/common/slemicro/noarch
|
||||
releaseURL: https://github.com/rancher/rke2/releases/download/
|
||||
|
@@ -1,9 +1,9 @@
|
||||
#!BuildTag: %%CHART_PREFIX%%kubevirt:%%CHART_MAJOR%%.0.0_up0.5.0-%RELEASE%
|
||||
#!BuildTag: %%CHART_PREFIX%%kubevirt:%%CHART_MAJOR%%.0.0_up0.5.0
|
||||
#!BuildTag: %%CHART_PREFIX%%kubevirt:%%CHART_MAJOR%%.0.1_up0.6.0-%RELEASE%
|
||||
#!BuildTag: %%CHART_PREFIX%%kubevirt:%%CHART_MAJOR%%.0.1_up0.6.0
|
||||
apiVersion: v2
|
||||
appVersion: 1.4.0
|
||||
appVersion: 1.5.2
|
||||
description: A Helm chart for KubeVirt
|
||||
icon: https://raw.githubusercontent.com/cncf/artwork/main/projects/kubevirt/icon/color/kubevirt-icon-color.svg
|
||||
name: kubevirt
|
||||
type: application
|
||||
version: "%%CHART_MAJOR%%.0.0+up0.5.0"
|
||||
version: "%%CHART_MAJOR%%.0.1+up0.6.0"
|
||||
|
@@ -593,6 +593,13 @@ spec:
|
||||
If set to true, migrations will still start in pre-copy, but switch to post-copy when
|
||||
CompletionTimeoutPerGiB triggers. Defaults to false
|
||||
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:
|
||||
anyOf:
|
||||
- type: integer
|
||||
@@ -605,8 +612,8 @@ spec:
|
||||
completionTimeoutPerGiB:
|
||||
description: |-
|
||||
CompletionTimeoutPerGiB is the maximum number of seconds per GiB a migration is allowed to take.
|
||||
If a live-migration takes longer to migrate than this value multiplied by the size of the VMI,
|
||||
the migration will be cancelled, unless AllowPostCopy is true. Defaults to 150
|
||||
If the timeout is reached, the migration will be either paused, switched
|
||||
to post-copy or cancelled depending on other settings. Defaults to 150
|
||||
format: int64
|
||||
type: integer
|
||||
disableTLS:
|
||||
@@ -964,17 +971,17 @@ spec:
|
||||
type: object
|
||||
type: object
|
||||
vmRolloutStrategy:
|
||||
description: VMRolloutStrategy defines how changes to a VM object
|
||||
propagate to its VMI
|
||||
description: |-
|
||||
VMRolloutStrategy defines how live-updatable fields, like CPU sockets, memory,
|
||||
tolerations, and affinity, are propagated from a VM to its VMI.
|
||||
enum:
|
||||
- Stage
|
||||
- LiveUpdate
|
||||
nullable: true
|
||||
type: string
|
||||
vmStateStorageClass:
|
||||
description: |-
|
||||
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.
|
||||
description: VMStateStorageClass is the name of the storage class
|
||||
to use for the PVCs created to preserve VM state, like TPM.
|
||||
type: string
|
||||
webhookConfiguration:
|
||||
description: |-
|
||||
@@ -3850,6 +3857,13 @@ spec:
|
||||
If set to true, migrations will still start in pre-copy, but switch to post-copy when
|
||||
CompletionTimeoutPerGiB triggers. Defaults to false
|
||||
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:
|
||||
anyOf:
|
||||
- type: integer
|
||||
@@ -3862,8 +3876,8 @@ spec:
|
||||
completionTimeoutPerGiB:
|
||||
description: |-
|
||||
CompletionTimeoutPerGiB is the maximum number of seconds per GiB a migration is allowed to take.
|
||||
If a live-migration takes longer to migrate than this value multiplied by the size of the VMI,
|
||||
the migration will be cancelled, unless AllowPostCopy is true. Defaults to 150
|
||||
If the timeout is reached, the migration will be either paused, switched
|
||||
to post-copy or cancelled depending on other settings. Defaults to 150
|
||||
format: int64
|
||||
type: integer
|
||||
disableTLS:
|
||||
@@ -4221,17 +4235,17 @@ spec:
|
||||
type: object
|
||||
type: object
|
||||
vmRolloutStrategy:
|
||||
description: VMRolloutStrategy defines how changes to a VM object
|
||||
propagate to its VMI
|
||||
description: |-
|
||||
VMRolloutStrategy defines how live-updatable fields, like CPU sockets, memory,
|
||||
tolerations, and affinity, are propagated from a VM to its VMI.
|
||||
enum:
|
||||
- Stage
|
||||
- LiveUpdate
|
||||
nullable: true
|
||||
type: string
|
||||
vmStateStorageClass:
|
||||
description: |-
|
||||
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.
|
||||
description: VMStateStorageClass is the name of the storage class
|
||||
to use for the PVCs created to preserve VM state, like TPM.
|
||||
type: string
|
||||
webhookConfiguration:
|
||||
description: |-
|
||||
|
@@ -608,6 +608,7 @@ rules:
|
||||
resources:
|
||||
- virtualmachinesnapshots
|
||||
- virtualmachinesnapshots/status
|
||||
- virtualmachinesnapshots/finalizers
|
||||
- virtualmachinesnapshotcontents
|
||||
- virtualmachinesnapshotcontents/status
|
||||
- virtualmachinesnapshotcontents/finalizers
|
||||
@@ -660,15 +661,18 @@ rules:
|
||||
- kubevirt.io
|
||||
resources:
|
||||
- virtualmachines/finalizers
|
||||
- virtualmachineinstances/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- subresources.kubevirt.io
|
||||
resources:
|
||||
- virtualmachines/stop
|
||||
- virtualmachineinstances/addvolume
|
||||
- virtualmachineinstances/removevolume
|
||||
- virtualmachineinstances/freeze
|
||||
- virtualmachineinstances/unfreeze
|
||||
- virtualmachineinstances/reset
|
||||
- virtualmachineinstances/softreboot
|
||||
- virtualmachineinstances/sev/setupsession
|
||||
- virtualmachineinstances/sev/injectlaunchsecret
|
||||
@@ -772,6 +776,14 @@ rules:
|
||||
verbs:
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- batch
|
||||
resources:
|
||||
- jobs
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- delete
|
||||
- apiGroups:
|
||||
- kubevirt.io
|
||||
resources:
|
||||
@@ -883,6 +895,7 @@ rules:
|
||||
- virtualmachineinstances/freeze
|
||||
- virtualmachineinstances/unfreeze
|
||||
- virtualmachineinstances/softreboot
|
||||
- virtualmachineinstances/reset
|
||||
- virtualmachineinstances/sev/setupsession
|
||||
- virtualmachineinstances/sev/injectlaunchsecret
|
||||
verbs:
|
||||
@@ -902,7 +915,6 @@ rules:
|
||||
- virtualmachines/restart
|
||||
- virtualmachines/addvolume
|
||||
- virtualmachines/removevolume
|
||||
- virtualmachines/migrate
|
||||
- virtualmachines/memorydump
|
||||
verbs:
|
||||
- update
|
||||
@@ -919,7 +931,6 @@ rules:
|
||||
- virtualmachineinstances
|
||||
- virtualmachineinstancepresets
|
||||
- virtualmachineinstancereplicasets
|
||||
- virtualmachineinstancemigrations
|
||||
verbs:
|
||||
- get
|
||||
- delete
|
||||
@@ -929,6 +940,14 @@ rules:
|
||||
- list
|
||||
- watch
|
||||
- deletecollection
|
||||
- apiGroups:
|
||||
- kubevirt.io
|
||||
resources:
|
||||
- virtualmachineinstancemigrations
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- snapshot.kubevirt.io
|
||||
resources:
|
||||
@@ -1032,6 +1051,7 @@ rules:
|
||||
- virtualmachineinstances/freeze
|
||||
- virtualmachineinstances/unfreeze
|
||||
- virtualmachineinstances/softreboot
|
||||
- virtualmachineinstances/reset
|
||||
- virtualmachineinstances/sev/setupsession
|
||||
- virtualmachineinstances/sev/injectlaunchsecret
|
||||
verbs:
|
||||
@@ -1051,7 +1071,6 @@ rules:
|
||||
- virtualmachines/restart
|
||||
- virtualmachines/addvolume
|
||||
- virtualmachines/removevolume
|
||||
- virtualmachines/migrate
|
||||
- virtualmachines/memorydump
|
||||
verbs:
|
||||
- update
|
||||
@@ -1068,7 +1087,6 @@ rules:
|
||||
- virtualmachineinstances
|
||||
- virtualmachineinstancepresets
|
||||
- virtualmachineinstancereplicasets
|
||||
- virtualmachineinstancemigrations
|
||||
verbs:
|
||||
- get
|
||||
- delete
|
||||
@@ -1077,6 +1095,14 @@ rules:
|
||||
- patch
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- kubevirt.io
|
||||
resources:
|
||||
- virtualmachineinstancemigrations
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- snapshot.kubevirt.io
|
||||
resources:
|
||||
@@ -1255,6 +1281,25 @@ rules:
|
||||
- get
|
||||
- list
|
||||
- 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:
|
||||
- authentication.k8s.io
|
||||
resources:
|
||||
@@ -1300,6 +1345,8 @@ spec:
|
||||
type: RollingUpdate
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
openshift.io/required-scc: restricted-v2
|
||||
labels:
|
||||
kubevirt.io: virt-operator
|
||||
name: virt-operator
|
||||
|
@@ -1,6 +1,6 @@
|
||||
operator:
|
||||
image: registry.suse.com/suse/sles/15.6/virt-operator
|
||||
version: 1.4.0-150600.5.15.1
|
||||
image: registry.suse.com/suse/sles/15.7/virt-operator
|
||||
version: 1.5.2-150700.3.5.2
|
||||
replicas: 2
|
||||
pullPolicy: IfNotPresent
|
||||
affinity:
|
||||
@@ -40,7 +40,7 @@ kubevirt:
|
||||
monitorAccount: ""
|
||||
monitorNamespace: ""
|
||||
|
||||
hookImage: registry.rancher.com/rancher/kubectl:v1.30.10
|
||||
hookImage: registry.rancher.com/rancher/kubectl:v1.33.1
|
||||
hookRestartPolicy: OnFailure
|
||||
hookSecurityContext:
|
||||
seccompProfile:
|
||||
|
@@ -1,12 +1,12 @@
|
||||
#!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.12_up0.12.2
|
||||
#!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.12_up0.12.2-%RELEASE%
|
||||
#!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.14_up0.12.4
|
||||
#!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.14_up0.12.4-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: 0.12.2
|
||||
appVersion: 0.12.4
|
||||
dependencies:
|
||||
- alias: metal3-baremetal-operator
|
||||
name: baremetal-operator
|
||||
repository: file://./charts/baremetal-operator
|
||||
version: 0.9.4
|
||||
version: 0.10.3
|
||||
- alias: metal3-ironic
|
||||
name: ironic
|
||||
repository: file://./charts/ironic
|
||||
@@ -25,4 +25,4 @@ description: A Helm chart that installs all of the dependencies needed for Metal
|
||||
icon: https://github.com/cncf/artwork/raw/master/projects/metal3/icon/color/metal3-icon-color.svg
|
||||
name: metal3
|
||||
type: application
|
||||
version: "%%CHART_MAJOR%%.0.12+up0.12.2"
|
||||
version: "%%CHART_MAJOR%%.0.14+up0.12.4"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
appVersion: 0.9.1
|
||||
appVersion: 0.10.2
|
||||
description: A Helm chart for baremetal-operator, used by Metal3
|
||||
name: baremetal-operator
|
||||
type: application
|
||||
version: 0.9.4
|
||||
version: 0.10.3
|
||||
|
@@ -202,6 +202,11 @@ spec:
|
||||
description: Description is a human-entered text used to help identify
|
||||
the host.
|
||||
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:
|
||||
description: |-
|
||||
ExternallyProvisioned means something else has provisioned the
|
||||
|
@@ -24,6 +24,10 @@ data:
|
||||
DEPLOY_KERNEL_URL: "{{ $protocol }}://{{ $ironicBootHost }}/images/ironic-python-agent-{{ $deployArch }}.kernel"
|
||||
DEPLOY_RAMDISK_URL: "{{ $protocol }}://{{ $ironicBootHost }}/images/ironic-python-agent-{{ $deployArch }}.initramfs"
|
||||
DEPLOY_ARCHITECTURE: "{{ $deployArch }}"
|
||||
{{- if .Values.baremetaloperator.externalHttpIPv6 }}
|
||||
{{- $port := ternary .Values.global.vmediaTLSPort .Values.baremetaloperator.httpPort $enableVMediaTLS }}
|
||||
IRONIC_EXTERNAL_URL_V6: "{{ $protocol }}://[{{ .Values.baremetaloperator.externalHttpIPv6 }}]:{{ $port }}"
|
||||
{{- end }}
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: baremetal-operator-ironic
|
||||
|
@@ -28,7 +28,7 @@ images:
|
||||
baremetalOperator:
|
||||
repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/baremetal-operator
|
||||
pullPolicy: IfNotPresent
|
||||
tag: "0.9.1.1"
|
||||
tag: "0.10.2.0"
|
||||
|
||||
imagePullSecrets: []
|
||||
nameOverride: "manger"
|
||||
@@ -84,3 +84,8 @@ affinity: {}
|
||||
|
||||
baremetaloperator:
|
||||
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: ""
|
||||
|
31
nessie-image/Dockerfile
Normal file
31
nessie-image/Dockerfile
Normal file
@@ -0,0 +1,31 @@
|
||||
# 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"]
|
19
nessie-image/_service
Normal file
19
nessie-image/_service
Normal file
@@ -0,0 +1,19 @@
|
||||
<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>
|
26
nessie/_service
Normal file
26
nessie/_service
Normal file
@@ -0,0 +1,26 @@
|
||||
<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>
|
80
nessie/nessie.spec
Normal file
80
nessie/nessie.spec
Normal file
@@ -0,0 +1,80 @@
|
||||
#
|
||||
# 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
python-annotated-types
Submodule
1
python-annotated-types
Submodule
Submodule python-annotated-types added at ffc9e3fb44
1
python-executing
Submodule
1
python-executing
Submodule
Submodule python-executing added at ac466db0b5
1
python-flit-core
Submodule
1
python-flit-core
Submodule
Submodule python-flit-core added at 4362b05ea3
1
python-inline-snapshot
Submodule
1
python-inline-snapshot
Submodule
Submodule python-inline-snapshot added at 1e917444d7
1
python-pydantic
Submodule
1
python-pydantic
Submodule
Submodule python-pydantic added at f19a5a780f
1
python-pydantic-core
Submodule
1
python-pydantic-core
Submodule
Submodule python-pydantic-core added at 00355d0825
3
python-rich/_service
Normal file
3
python-rich/_service
Normal file
@@ -0,0 +1,3 @@
|
||||
<services>
|
||||
<service name="download_assets"></service>
|
||||
</services>
|
45
python-rich/pygments.patch
Normal file
45
python-rich/pygments.patch
Normal file
@@ -0,0 +1,45 @@
|
||||
From 08be21dadfd2ce9e96e41e366ab38bd8d7cd0e39 Mon Sep 17 00:00:00 2001
|
||||
From: Dan Lazin <dlazin@users.noreply.github.com>
|
||||
Date: Tue, 7 Jan 2025 16:04:56 -0500
|
||||
Subject: [PATCH] Fix test that changed with Pygments 2.19.
|
||||
|
||||
---
|
||||
tests/test_markdown.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
Index: rich-13.9.4/tests/test_markdown.py
|
||||
===================================================================
|
||||
--- rich-13.9.4.orig/tests/test_markdown.py
|
||||
+++ rich-13.9.4/tests/test_markdown.py
|
||||
@@ -110,7 +110,7 @@ def test_inline_code():
|
||||
inline_code_theme="emacs",
|
||||
)
|
||||
result = render(markdown)
|
||||
- expected = "inline \x1b[1;38;2;170;34;255;48;2;248;248;248mimport\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m \x1b[0m\x1b[1;38;2;0;0;255;48;2;248;248;248mthis\x1b[0m code \n"
|
||||
+ expected = "inline \x1b[1;38;2;170;34;255;48;2;248;248;248mimport\x1b[0m\x1b[38;2;187;187;187;48;2;248;248;248m \x1b[0m\x1b[1;38;2;0;0;255;48;2;248;248;248mthis\x1b[0m code \n"
|
||||
print(result)
|
||||
print(repr(result))
|
||||
assert result == expected
|
||||
Index: rich-13.9.4/tests/test_syntax.py
|
||||
===================================================================
|
||||
--- rich-13.9.4.orig/tests/test_syntax.py
|
||||
+++ rich-13.9.4/tests/test_syntax.py
|
||||
@@ -53,7 +53,7 @@ def test_blank_lines():
|
||||
print(repr(result))
|
||||
assert (
|
||||
result
|
||||
- == "\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m1 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m2 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m3 \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mimport\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m \x1b[0m\x1b[1;38;2;0;0;255;48;2;248;248;248mthis\x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m4 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m5 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n"
|
||||
+ == "\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m1 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m2 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m3 \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mimport\x1b[0m\x1b[38;2;187;187;187;48;2;248;248;248m \x1b[0m\x1b[1;38;2;0;0;255;48;2;248;248;248mthis\x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m4 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m5 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n"
|
||||
)
|
||||
|
||||
|
||||
@@ -119,7 +119,7 @@ def test_python_render_simple_indent_gui
|
||||
)
|
||||
rendered_syntax = render(syntax)
|
||||
print(repr(rendered_syntax))
|
||||
- expected = '\x1b[34mdef\x1b[0m \x1b[32mloop_first_last\x1b[0m(values: Iterable[T]) -> Iterable[Tuple[\x1b[36mb\x1b[0m\n\x1b[2;37m│ \x1b[0m\x1b[33m"""Iterate and generate a tuple with a flag for first an\x1b[0m\n\x1b[2m│ \x1b[0miter_values = \x1b[36miter\x1b[0m(values)\n\x1b[2m│ \x1b[0m\x1b[34mtry\x1b[0m:\n\x1b[2m│ │ \x1b[0mprevious_value = \x1b[36mnext\x1b[0m(iter_values)\n\x1b[2m│ \x1b[0m\x1b[34mexcept\x1b[0m \x1b[36mStopIteration\x1b[0m:\n\x1b[2m│ │ \x1b[0m\x1b[34mreturn\x1b[0m\n\x1b[2m│ \x1b[0mfirst = \x1b[34mTrue\x1b[0m\n\x1b[2m│ \x1b[0m\x1b[34mfor\x1b[0m value \x1b[35min\x1b[0m iter_values:\n\x1b[2m│ │ \x1b[0m\x1b[34myield\x1b[0m first, \x1b[34mFalse\x1b[0m, previous_value\n\x1b[2m│ │ \x1b[0mfirst = \x1b[34mFalse\x1b[0m\n\x1b[2m│ │ \x1b[0mprevious_value = value\n\x1b[2m│ \x1b[0m\x1b[34myield\x1b[0m first, \x1b[34mTrue\x1b[0m, previous_value\n'
|
||||
+ expected = '\x1b[34mdef\x1b[0m\x1b[37m \x1b[0m\x1b[32mloop_first_last\x1b[0m(values: Iterable[T]) -> Iterable[Tuple[\x1b[36mb\x1b[0m\n\x1b[2;37m│ \x1b[0m\x1b[33m"""Iterate and generate a tuple with a flag for first an\x1b[0m\n\x1b[2m│ \x1b[0miter_values = \x1b[36miter\x1b[0m(values)\n\x1b[2m│ \x1b[0m\x1b[34mtry\x1b[0m:\n\x1b[2m│ │ \x1b[0mprevious_value = \x1b[36mnext\x1b[0m(iter_values)\n\x1b[2m│ \x1b[0m\x1b[34mexcept\x1b[0m \x1b[36mStopIteration\x1b[0m:\n\x1b[2m│ │ \x1b[0m\x1b[34mreturn\x1b[0m\n\x1b[2m│ \x1b[0mfirst = \x1b[34mTrue\x1b[0m\n\x1b[2m│ \x1b[0m\x1b[34mfor\x1b[0m value \x1b[35min\x1b[0m iter_values:\n\x1b[2m│ │ \x1b[0m\x1b[34myield\x1b[0m first, \x1b[34mFalse\x1b[0m, previous_value\n\x1b[2m│ │ \x1b[0mfirst = \x1b[34mFalse\x1b[0m\n\x1b[2m│ │ \x1b[0mprevious_value = value\n\x1b[2m│ \x1b[0m\x1b[34myield\x1b[0m first, \x1b[34mTrue\x1b[0m, previous_value\n'
|
||||
assert rendered_syntax == expected
|
||||
|
||||
|
||||
|
66
python-rich/python-rich.spec
Normal file
66
python-rich/python-rich.spec
Normal file
@@ -0,0 +1,66 @@
|
||||
#
|
||||
# spec file for package python-rich
|
||||
#
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
# Copyright (c) 2020-2021, Martin Hauke <mardnh@gmx.de>
|
||||
#
|
||||
# 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/
|
||||
#
|
||||
|
||||
|
||||
%{?sle15_python_module_pythons}
|
||||
Name: python-rich
|
||||
Version: 14.0.0
|
||||
Release: 0
|
||||
Summary: A Python library for rich text and beautiful formatting in the terminal
|
||||
License: MIT
|
||||
URL: https://github.com/Textualize/rich
|
||||
#!RemoteAsset: https://github.com/Textualize/rich/archive/refs/tags/v%{version}.tar.gz rich-%{version}.tar.gz
|
||||
Source: rich-%{version}.tar.gz
|
||||
# PATCH-FIX-UPSTREAM https://github.com/Textualize/rich/pull/3604 Fix test that changed with Pygments 2.19.
|
||||
# and https://github.com/Textualize/rich/pull/3608 fix remaining tests with Pygments 2.19 #3604 did not fix
|
||||
Patch: pygments.patch
|
||||
BuildRequires: %{python_module base >= 3.8}
|
||||
BuildRequires: %{python_module markdown-it-py >= 2.2.0}
|
||||
BuildRequires: %{python_module pip}
|
||||
BuildRequires: %{python_module poetry-core}
|
||||
BuildRequires: %{python_module pygments >= 2.13.0}
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: python-rpm-macros
|
||||
Requires: python-markdown-it-py >= 2.2.0
|
||||
Requires: python-pygments >= 2.13.0
|
||||
Suggests: python-ipywidgets >= 7.5.1
|
||||
BuildArch: noarch
|
||||
# TODO(edu): Disabled all tests
|
||||
%python_subpackages
|
||||
|
||||
%description
|
||||
Render rich text, tables, progress bars, syntax highlighting,
|
||||
markdown and more to the terminal.
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n rich-%{version}
|
||||
|
||||
%build
|
||||
%pyproject_wheel
|
||||
|
||||
%install
|
||||
%pyproject_install
|
||||
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
||||
|
||||
%files %{python_files}
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{python_sitelib}/rich
|
||||
%{python_sitelib}/rich-%{version}.dist-info
|
||||
|
||||
%changelog
|
3
python-suse-edge-components-versions/_service
Normal file
3
python-suse-edge-components-versions/_service
Normal file
@@ -0,0 +1,3 @@
|
||||
<services>
|
||||
<service name="download_assets"></service>
|
||||
</services>
|
@@ -0,0 +1,98 @@
|
||||
#
|
||||
# spec file for package python-suse-edge-components-versions
|
||||
#
|
||||
# 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/
|
||||
|
||||
%global mod_name suse-edge-components-versions
|
||||
%global pythons %{primary_python}
|
||||
%if 0%{?suse_version} == 1500
|
||||
%sle15_python_module_pythons
|
||||
%endif
|
||||
|
||||
Name: python-suse-edge-components-versions
|
||||
Version: 0.1.0
|
||||
Release: 0%{?dist}
|
||||
Summary: A tool to gather and display component versions for SUSE Edge products.
|
||||
License: Apache-2.0
|
||||
URL: https://github.com/suse-edge/support-tools/tree/main/components-versions
|
||||
#!RemoteAsset: https://github.com/suse-edge/support-tools/archive/refs/tags/components-versions-v%{version}.tar.gz
|
||||
Source: components-versions-v0.1.0.tar.gz
|
||||
BuildArch: noarch
|
||||
|
||||
BuildRequires: python-rpm-macros
|
||||
BuildRequires: %{python_module pip}
|
||||
BuildRequires: %{python_module setuptools}
|
||||
BuildRequires: %{python_module setuptools_scm}
|
||||
BuildRequires: %{python_module wheel}
|
||||
|
||||
# Requires:
|
||||
Requires: %{python_module kubernetes}
|
||||
Requires: %{python_module pyhelm3}
|
||||
Requires: %{python_module tabulate}
|
||||
Requires: %{python_module pydantic >= 2.0}
|
||||
Requires: helm
|
||||
|
||||
# This macro automatically creates subpackages for each Python version
|
||||
# (e.g., python311-suse-edge-components-versions, python312-suse-edge-components-versions).
|
||||
%python_subpackages
|
||||
|
||||
%description
|
||||
This tool provides functionality to gather and display component versions
|
||||
for various SUSE Edge products. It helps in understanding the exact versions
|
||||
of software components used in different product releases and ensures
|
||||
consistency across deployments.
|
||||
|
||||
%prep
|
||||
# Unpack the source tarball.
|
||||
# The tarball extracts into 'support-tools-components-versions-v%{version}'.
|
||||
%setup -q -n support-tools-components-versions-v%{version}
|
||||
|
||||
%build
|
||||
|
||||
# The actual Python project (containing pyproject.toml and the source code)
|
||||
# is nested inside the 'components-versions' directory within the extracted tarball.
|
||||
# We need to change into this directory before building.
|
||||
cd components-versions
|
||||
%pyproject_wheel .
|
||||
cd ..
|
||||
|
||||
%install
|
||||
cd components-versions
|
||||
%pyproject_install
|
||||
# Rename the main executable from 'components-versions' to 'suse-edge-components-versions'
|
||||
mv %{buildroot}%{_bindir}/components-versions %{buildroot}%{_bindir}/suse-edge-components-versions
|
||||
%python_clone -a %{buildroot}%{_bindir}/suse-edge-components-versions
|
||||
cd ..
|
||||
# Move the json files to /usr/share/suse-edge-components-versions instead
|
||||
mkdir -p %{buildroot}/usr/share/suse-edge-components-versions/
|
||||
mv %{buildroot}%{python_sitelib}/components_versions/data/*.json %{buildroot}/usr/share/suse-edge-components-versions/
|
||||
rmdir %{buildroot}%{python_sitelib}/components_versions/data/
|
||||
|
||||
%post
|
||||
%python_install_alternative suse-edge-components-versions
|
||||
|
||||
%postun
|
||||
%python_uninstall_alternative suse-edge-components-versions
|
||||
|
||||
%files %{python_files}
|
||||
%license LICENSE
|
||||
%{python_sitelib}/components_versions
|
||||
# Include the Python package metadata (e.g., .dist-info or .egg-info).
|
||||
# The .dist-info name is based on the 'name' field in pyproject.toml.
|
||||
%{python_sitelib}/suse_edge_components_versions-%{version}*.dist-info
|
||||
# Include the main executable with its new name.
|
||||
%python_alternative %{_bindir}/suse-edge-components-versions
|
||||
# Include the json files
|
||||
/usr/share/suse-edge-components-versions/
|
||||
|
||||
%changelog
|
1
python-typing-inspection
Submodule
1
python-typing-inspection
Submodule
Submodule python-typing-inspection added at 9400618fae
1
python-typing_extensions
Submodule
1
python-typing_extensions
Submodule
Submodule python-typing_extensions added at 598c5a8313
@@ -89,20 +89,20 @@ spec:
|
||||
- prettyName: Rancher
|
||||
releaseName: rancher
|
||||
chart: rancher
|
||||
version: 2.12.1-alpha1
|
||||
repository: https://releases.rancher.com/server-charts/alpha
|
||||
version: 2.12.1
|
||||
repository: https://charts.rancher.com/server-charts/prime
|
||||
values:
|
||||
postDelete:
|
||||
enabled: false
|
||||
- prettyName: Longhorn
|
||||
releaseName: longhorn
|
||||
chart: longhorn
|
||||
version: 106.2.1+up1.8.2
|
||||
version: 107.0.0+up1.9.1
|
||||
repository: https://charts.rancher.io
|
||||
dependencyCharts:
|
||||
- releaseName: longhorn-crd
|
||||
chart: longhorn-crd
|
||||
version: 106.2.1+up1.8.2
|
||||
version: 107.0.0+up1.9.1
|
||||
repository: https://charts.rancher.io
|
||||
- prettyName: MetalLB
|
||||
releaseName: metallb
|
||||
@@ -111,11 +111,11 @@ spec:
|
||||
- prettyName: CDI
|
||||
releaseName: cdi
|
||||
chart: '%%CHART_REPO%%/%%CHART_PREFIX%%cdi'
|
||||
version: '%%CHART_MAJOR%%.0.0+up0.5.0'
|
||||
version: '%%CHART_MAJOR%%.0.1+up0.6.0'
|
||||
- prettyName: KubeVirt
|
||||
releaseName: kubevirt
|
||||
chart: '%%CHART_REPO%%/%%CHART_PREFIX%%kubevirt'
|
||||
version: '%%CHART_MAJOR%%.0.0+up0.5.0'
|
||||
version: '%%CHART_MAJOR%%.0.1+up0.6.0'
|
||||
addonCharts:
|
||||
- releaseName: kubevirt-dashboard-extension
|
||||
chart: '%%CHART_REPO%%/%%CHART_PREFIX%%kubevirt-dashboard-extension'
|
||||
@@ -171,7 +171,7 @@ spec:
|
||||
- prettyName: Metal3
|
||||
releaseName: metal3
|
||||
chart: '%%CHART_REPO%%/%%CHART_PREFIX%%metal3'
|
||||
version: '%%CHART_MAJOR%%.0.12+up0.12.2'
|
||||
version: '%%CHART_MAJOR%%.0.14+up0.12.4'
|
||||
- prettyName: RancherTurtles
|
||||
releaseName: rancher-turtles
|
||||
chart: '%%CHART_REPO%%/%%CHART_PREFIX%%rancher-turtles'
|
||||
|
52
suse-edge-components-versions-image/Dockerfile
Normal file
52
suse-edge-components-versions-image/Dockerfile
Normal file
@@ -0,0 +1,52 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#!BuildTag: %%IMG_PREFIX%%suse-edge-components-versions:0.1.0
|
||||
#!BuildTag: %%IMG_PREFIX%%suse-edge-components-versions:0.1.0-%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 sed -i -e 's%^# rpm.install.excludedocs = no.*%rpm.install.excludedocs = yes%g' /etc/zypp/zypp.conf
|
||||
RUN zypper --installroot /installroot --non-interactive install --no-recommends python311-suse-edge-components-versions
|
||||
|
||||
# https://opensource.suse.com/bci-docs/guides/adding-users/
|
||||
ARG USERNAME=suse
|
||||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
# Create the user
|
||||
RUN groupadd --gid $USER_GID $USERNAME \
|
||||
&& useradd --uid $USER_UID --gid $USER_GID -m $USERNAME
|
||||
|
||||
# build actual image
|
||||
FROM micro AS final
|
||||
|
||||
MAINTAINER SUSE LLC (https://www.suse.com/)
|
||||
# Define labels according to https://en.opensuse.org/Building_derived_containers
|
||||
LABEL org.opencontainers.image.title="SUSE Edge components-versions Container Image"
|
||||
LABEL org.opencontainers.image.description="Gather and display component versions for various SUSE Edge products"
|
||||
LABEL org.opencontainers.image.url="https://github.com/suse-edge/support-tools/tree/main/components-versions"
|
||||
LABEL org.opencontainers.image.created="%BUILDTIME%"
|
||||
LABEL org.opencontainers.image.vendor="SUSE LLC"
|
||||
LABEL org.opencontainers.image.version="0.1.0"
|
||||
LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%suse-edge-components-versions:0.1.0-%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 /
|
||||
|
||||
# https://opensource.suse.com/bci-docs/guides/adding-users/
|
||||
COPY --from=base /etc/passwd /etc/passwd
|
||||
COPY --from=base /etc/group /etc/group
|
||||
COPY --from=base /etc/shadow /etc/shadow
|
||||
COPY --from=base /home/$USERNAME /home/$USERNAME
|
||||
|
||||
USER ${USERNAME}
|
||||
|
||||
ENTRYPOINT ["/usr/bin/suse-edge-components-versions"]
|
12
suse-edge-components-versions-image/_service
Normal file
12
suse-edge-components-versions-image/_service
Normal file
@@ -0,0 +1,12 @@
|
||||
<services>
|
||||
<service mode="buildtime" name="kiwi_metainfo_helper"/>
|
||||
<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>
|
Reference in New Issue
Block a user